Escolar Documentos
Profissional Documentos
Cultura Documentos
ii
c
Copyright2.003
por Mauricio Pereira dos Santos
Editorao: O autor, criando arquivo texto no format LaTex.
Compilador LaTex: Miktex
Compiladores dos programas: Turbo Pascal, Visual Basic e Delphi
Fluxos e figuras: Visio e SmartDraw, includos no texto como EPS (Encapsulated
Postscript File).
iii
Prefcio
O objetivo deste trabalho fornecer aos alunos da cadeira de Pesquisa Operacional
da UERJ um referencial que os auxilie no estudo e acompanhamento da matria.
Os tpicos bsicos da cadeira, contemplados neste trabalho, incluem o estudo dos
3 problemas clssicos de Redes quais sejam o do fluxo mximo possvel de ser levado entre 2 ns de uma rede, o de encontrar o menor caminho entre 2 ns de uma
rede e o de encontrar a rvore de tamanho mnimo em uma rede; a tcnica de controle de projetos, genericamente chamada de PERT/CPM, que apresentada em
seus conceitos bsicos; o estudo das filas de espera e de seus modelos bsicos, cuja
importncia nos dias de hoje marcante e fundamental e por fim mas no menos
importante, a Simulao e suas aplicaes nos problemas do dia a dia.
Agradecemos a todos aqueles que nos ajudaram nesta tarefa, especialmente os alunos que foram cobaias no uso dos rascunhos deste trabalho.
Um agradecimento especial ao ex-aluno do curso de Estatstica, Leonardo Barroso
Gonalves que, quando cursou a cadeira em 1993, resolveu, detalhadamente, todos
os exerccios do captulo de Filas. Incorporamos suas solues neste trabalho.
De antemo agradeo desde j a todos aqueles que puderem apontar imperfeies
e erros que possam ser corrigidos.
O Autor
iv
Contedo
1 Redes
1.1 O problema do Fluxo Mximo . . . . . . . . . . . . . . . . . . . . . . .
1.2 Formulao como um modelo clssico de P.Linear . . . . . . . . . . . .
1.3 Tcnica da Rotulao . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.4 Fluxo mximo em redes com arcos no direcionados . . . . . . . . . . .
1.4.1 Adaptao para uso da Tcnica de Rotulao . . . . . . . . . . .
1.5 O problema do caminho mnimo . . . . . . . . . . . . . . . . . . . . . .
1.5.1 Formulao como um modelo clssico de P.Linear . . . . . . . . .
1.6 Etapas do algortimo de Dijkstra . . . . . . . . . . . . . . . . . . . . .
1.7 rvore de Tamanho Mnimo . . . . . . . . . . . . . . . . . . . . . . . .
1.7.1 Etapas do algortimo para encontrar a rvore do tamanho mnimo
1.8 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
1.8.1 Respostas dos exerccios . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
1
1
2
3
12
12
13
14
14
20
21
27
33
2 PERT/CPM
2.1 Construo da Rede . . . . . . . . . . . . . . . . . . . . .
2.1.1 Representao grfica da Rede . . . . . . . . . . . .
2.1.2 Representao das Atividades . . . . . . . . . . . .
2.1.3 Complicao na Construo da Rede . . . . . . . . .
2.2 Determinao do Caminho Crtico . . . . . . . . . . . . . .
2.3 O Modelo PERT . . . . . . . . . . . . . . . . . . . . . . .
2.3.1 Problemas do modelo PERT . . . . . . . . . . . . .
2.4 O Modelo CPM . . . . . . . . . . . . . . . . . . . . . . . .
2.4.1 Relao entre Duraes/Custos Normal e Acelerado
2.4.2 Compresso da Rede . . . . . . . . . . . . . . . . .
2.4.3 Durao tima para o projeto . . . . . . . . . . . .
2.4.4 Resolvendo por Programao Linear . . . . . . . . .
2.5 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . .
2.5.1 Respostas dos exerccios . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
35
36
36
38
39
42
50
54
55
55
56
62
63
68
73
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
75
75
77
77
77
79
80
82
85
86
87
87
88
92
96
98
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
vi
CONTEDO
3.9
3.10
3.11
3.12
3.13
1)
. .
. .
. .
. .
. .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
101
103
107
109
111
118
4 Introduo Simulao
4.1 Vantagens e Desvantagens da Simulao . . . . . . . . . . . . . . .
4.2 reas de aplicao . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.3 Tipos de Modelos . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.4 Modelos Discretos e Contnuos . . . . . . . . . . . . . . . . . . . .
4.5 Exemplos de modelos de Simulao . . . . . . . . . . . . . . . . . .
4.5.1 Quebra de rolamentos . . . . . . . . . . . . . . . . . . . . .
4.5.2 Fila com uma estao de servio . . . . . . . . . . . . . . . .
4.6 A gerao de Nmeros Aleatrios . . . . . . . . . . . . . . . . . . .
4.6.1 Propriedades desejveis de um gerador de nmeros aleatrios
4.7 Mtodos para a gerao de nmeros aleatrios . . . . . . . . . . . .
4.7.1 Mtodo dos quadrados mdios . . . . . . . . . . . . . . . . .
4.7.2 Mtodos Congruentes . . . . . . . . . . . . . . . . . . . . . .
4.7.3 Eficincia computacional . . . . . . . . . . . . . . . . . . . .
4.7.4 Nmeros Aleatrios uniformemente distribudos em [0,1) . .
4.8 Geradores Congruentes . . . . . . . . . . . . . . . . . . . . . . . .
4.8.1 RANDU, RAND1 e RAND2 . . . . . . . . . . . . . . . . . . .
4.8.2 Mtodos com perodos maiores . . . . . . . . . . . . . . . . .
4.8.3 Geradores de nmeros aleatrios embutidos . . . . . . . . .
4.9 Nmeros aleatrios com outras distribuies uniformes . . . . . . .
4.9.1 Variveis aleatrias contnuas . . . . . . . . . . . . . . . . .
4.9.2 Variveis aleatrias discretas . . . . . . . . . . . . . . . . .
4.10 Testes estatsticos . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.11 Alguns modelos elementares de Simulao . . . . . . . . . . . . . .
4.11.1 Jogo de Dados (Craps Game) . . . . . . . . . . . . . . . . .
4.11.2 Avaliao de Integrais . . . . . . . . . . . . . . . . . . . . .
4.12 O Mtodo da Transformao Inversa . . . . . . . . . . . . . . . . .
4.12.1 A Distribuio Exponencial . . . . . . . . . . . . . . . . . .
4.12.2 A Distribuio Triangular . . . . . . . . . . . . . . . . . . .
4.12.3 A Distribuio de Weibull . . . . . . . . . . . . . . . . . . .
4.13 Simulao Direta . . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.13.1 A distribuio de Poisson . . . . . . . . . . . . . . . . . . . .
4.13.2 A distribuio Normal . . . . . . . . . . . . . . . . . . . . .
4.14 Um software para simular filas de espera . . . . . . . . . . . . . . .
4.14.1 Alguns exemplos usando o programa Simulao . . . . . . .
4.15 O software ARENA . . . . . . . . . . . . . . . . . . . . . . . . . . .
4.15.1 Simulao de um pequeno posto bancrio . . . . . . . . . . .
4.15.2 Simulao de um check-in . . . . . . . . . . . . . . . . . . .
4.15.3 Simulao de um processo de produo . . . . . . . . . . . .
4.15.4 Consideraes finais . . . . . . . . . . . . . . . . . . . . . .
4.16 Exerccios . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
.
141
141
142
144
144
145
145
150
153
153
154
154
154
155
156
156
156
161
164
165
165
165
166
166
166
169
172
173
175
178
180
180
184
188
188
193
194
203
210
218
220
A Tabela Normal
225
B Tabela do 2
227
229
Captulo 1
Redes
Grafo
Denomina-se grafo um conjunto de pontos, chamados ns, conectados entre si por
linhas chamadas arcos, como exemplificado no desenho abaixo:
2
Redes
4
8
1
2
5
9
8
3
5
3
Redes
0
0
0
0
0
2
6
0
0
0
0
3
8
2
0
0
0
4
0
4
5
4
0
5
0
1
3
0
6
0
0
0
8
9
Rtulos
Estgio
-
Na etapa 1 comeamos varrendo a linha correspondente ao n origem (1 no exemplo) procurando gij maiores que zero. Encontramos o n 2 com g12 = 6 e o n 3 com
g13 = 8. Na linha 2, correspondente ao n 2, fazemos 2 = 6 e 2 = 1. Gama ()
sempre indica de onde viemos para chegar aquele n. Na linha 3, correspondente
ao n 3, fazemos 3 = 8 e 3 = 1. Como varremos a linha 1 (n origem), estamos
no estgio 1. O nosso quadro, fica como:
1
2
3
4
5
6
0
0
0
0
0
2
6
0
0
0
0
3
8
2
0
0
0
4
0
4
5
4
0
5
0
1
3
0
6
0
0
0
8
9
Rtulos
6
1
8
1
Estgio
1
1
Devemos agora passar para o estgio i + 1 ou seja para o estgio 2. Neste estgio
vamos varrer todos os ns rotulados no estgio 1, ou seja as linhas 2 e 3 correspondentes aos ns 2 e 3.
Iniciando pela linha 2, podemos observar que pode-se passar fluxo para o n 3 pois
g23 = 2. No entanto o n 3 j est rotulado e no podemos rotul-lo novamente.
Pode-se tambm passar fluxo para o n 4 pois g24 = 4. Para rotular a linha (n)
4 temos: 4 = Min(g24 , 2 ) = Min(4, 6) = 4. O 4 2 (n de onde vim) e o
estgio igual a 2. Do n 2 podemos ainda rotular o n 5 pois g25 = 1. Temos
0
0
0
0
0
2
6
0
0
0
0
3
8
2
0
0
0
4
0
4
5
4
0
5
0
1
3
0
6
0
0
0
8
9
Rtulos
6
1
8
1
4
2
1
2
Estgio
1
1
2
2
0
0
0
0
0
2
6
0
0
0
0
3
8
2
0
0
0
4
0
4
5
4
0
5
0
1
3
0
6
0
0
0
8
9
Rtulos
6
1
8
1
4
2
1
2
4
4
Estgio
1
1
2
2
3
Como rotulamos o n destino (6), existe um caminho para passar uma quantidade
de fluxo. Que quantidade esta ? o valor do 6 , ou seja, do n destino .
Para encontrar este caminho vamos do n destino para trs usando os i para
encontrar os arcos do caminho. Assim se 6 igual a 4, significa que chegamos ao
n 6 vindo do n 4. Na matriz vamos subtrair 4 (= 6 ) do arco (4 6) e somar este
valor ao arco inverso (6 4).
Para chegar ao n 4, olhamos o 4 . Como ele igual a 2 significa que viemos do n
2. Subtramos ento 4 (= 6 ) do arco (2 4) e somamos no arco inverso (4 2).
Para chegar ao n 2 viemos do n 1 (veja o 2 ). Subtramos 4 (= 6 ) do arco (1 2)
e somamos este valor ao arco inverso (2 1).
Os valores que sofreram alterao esto marcados e os demais ficam inalterados.
Nosso quadro, pronto para comear a 2a iterao, fica como:
Redes
4
0
0
0
0
1
2
3
4
5
6
2
2
0
4
0
0
3
8
2
0
0
0
4
0
0
5
4
4
5
0
1
3
0
6
0
0
0
4
9
Rtulos
Estgio
-
4
0
0
0
0
2
2
0
4
0
0
3
8
2
0
0
0
4
0
0
5
4
4
5
0
1
3
0
6
0
0
0
4
9
Rtulos
2
1
8
1
Estgio
1
1
4
0
0
0
0
2
2
0
4
0
0
3
8
2
0
0
0
4
0
0
5
4
4
5
0
1
3
0
6
0
0
0
4
9
Rtulos
2
1
8
1
5
3
1
2
Estgio
1
1
2
2
4
0
0
0
0
2
2
0
4
0
0
3
8
2
0
0
0
4
0
0
5
4
4
5
0
1
3
0
6
0
0
0
4
9
Rtulos
2
1
8
1
5
3
1
2
4
4
Estgio
1
1
2
2
3
Temos que achar o caminho em que foi possvel passar 4 (= 6 ) de fluxo. Mais uma
vez, usando os i podemos encontrar este caminho.
Para chegar ao n 6 viemos do n 4 (= 6 ). Subtramos ento 4 (= 6 ) do arco
(4 6) e somamos no arco inverso (6 4).
Para chegar ao n 4 viemos do n 3 (= 4 ). Subtramos 4 (= 6 ) do arco (3 4) e
somamos no arco (4 3).
Para chegar ao n 3 viemos do n 1 (= 3 ). Subtramos 4 (= 6 ) do arco (1 3) e
somamos no arco (3 1).
Mantendo os demais valores inalterados temos o quadro pronto para comear a 3a
iterao:
1
2
3
4
5
6
4
4
0
0
0
2
2
0
4
0
0
3
4
2
4
0
0
4
0
0
1
4
8
5
0
1
3
0
6
0
0
0
0
9
Rtulos
Estgio
-
Redes
1
2
3
4
5
6
4
4
0
0
0
2
2
0
4
0
0
3
4
2
4
0
0
4
0
0
1
4
8
5
0
1
3
0
6
0
0
0
0
9
Rtulos
2
1
4
1
Estgio
1
1
4
4
0
0
0
2
2
0
4
0
0
3
4
2
4
0
0
4
0
0
1
4
8
5
0
1
3
0
6
0
0
0
0
9
Rtulos
2
1
4
1
1
3
1
2
Estgio
1
1
2
2
4
4
0
0
0
2
2
0
4
0
0
3
4
2
4
0
0
4
0
0
1
4
8
5
0
1
3
0
6
0
0
0
0
9
Rtulos
2
1
4
1
1
3
1
2
1
5
Estgio
1
1
2
2
3
1
2
3
4
5
6
5
4
0
0
0
2
1
0
4
1
0
3
4
2
4
0
0
4
0
0
1
4
8
5
0
0
3
0
6
0
0
0
0
8
Rtulos
Estgio
-
5
4
0
0
0
2
1
0
4
1
0
3
4
2
4
0
0
4
0
0
1
4
8
5
0
0
3
0
6
0
0
0
0
8
Rtulos
1
1
4
1
Estgio
1
1
5
4
0
0
0
2
1
0
4
1
0
3
4
2
4
0
0
4
0
0
1
4
8
5
0
0
3
0
6
0
0
0
0
8
Rtulos
1
1
4
1
1
3
3
3
Estgio
1
1
2
2
5
4
0
0
0
2
1
0
4
1
0
3
4
2
4
0
0
4
0
0
1
4
8
5
0
0
3
0
6
0
0
0
0
8
Rtulos
1
1
4
1
1
3
3
3
3
5
Estgio
1
1
2
2
3
10
Redes
5
7
0
0
0
2
1
0
4
1
0
3
1
2
4
3
0
4
0
0
1
4
8
5
0
0
0
0
6
0
0
0
0
5
Rtulos
Estgio
-
5
0
0
0
0
6
0
0
0
0
5
Rtulos
1
1
1
1
Estgio
1
1
No estgio 1 rotulamos os ns 2 e 3.
1
2
3
4
5
6
5
7
0
0
0
2
1
0
4
1
0
3
1
2
4
3
0
4
0
0
1
4
8
1
2
3
4
5
6
5
7
0
0
0
2
1
0
4
1
0
3
1
2
4
3
0
4
0
0
1
4
8
5
0
0
0
0
6
0
0
0
0
5
Rtulos
1
1
1
1
1
3
Estgio
1
1
2
No estgio 3, tenho o n 4 para varrer mas do n 4 no consigo rotular mais ningum. O algortimo chegou ao final pois no conseguimos em uma iterao (5a no
exemplo) rotular o n destino (n 6).
Qual o fluxo mximo que pode ser levado do n 1 ao n 6 ? a soma dos valores
que aparecem no ltimo quadro na linha do n 6, ou seja 8 + 4 = 12.
11
A resposta acima leva, imediatamente, a outra pergunta: Como este fluxo mximo
se distribui pelos arcos da rede ?
O fluxo que passa em cada arco igual a diferena entre o valor da capacidade
do arco (valor que aparece no quadro inicial) e o valor que aparece para o arco no
ltimo quadro do algortimo. Temos ento:
Arco
12
13
24
25
34
35
46
56
23
54
4
8
6
4
1
7
4
3
5
3
12
12
Redes
30
4
50
40
25
1
25
15
30
30
3
5
50
4
50
40
15
15
25
25
25
25
30
30
3
5
50
13
6
3
2
6
7
3
4
1
4
5
3
14
Redes
N Rotulado
15
1
0
2
3
3
7
4
4
N Rotulado
1
1
0
0
2
3
3
3
7
7
4
4
4
N Rotulado
1
2
Vamos comear a iterao 2 lembrando que o ltimo n rotulado de forma permanente foi o n 2 com rtulo igual a 3.
Vamos calcular o novo rtulo do n 3. Inicialmente devemos calcular a soma do
rtulo do n 2 (= 3) mais a distncia do n 2 ao n 3 que igual 2. Logo, 3 + 2 = 5.
O novo rtulo do n 3 ser o mnimo entre 5 e o rtulo anterior de 3 (=7). Assim o
novo rtulo de 3 ser igual a 5.
16
Redes
1
0
0
0
2
3
3
3
3
7
7
5
4
4
4
4
12
N Rotulado
1
2
4
Comeamos a iterao 3 recordando que o n 4 foi o ltimo a receber rtulo permanente e que seu rtulo 4.
Assim sendo, para o n 3 calculamos a soma entre o rtulo do n 4 (= 4) mais a
distncia do n 3 ao n 4 que igual a 1. Logo a soma d 4 + 1 = 5. O novo rtulo
do n 3 o mnimo entre o 5 e o rtulo anterior de 3 que tambm era 5. O rtulo
continua igual a 5.
Para o n 5 temos a soma do rtulo de 4 mais a distncia do n 4 ao n 5 que
igual a 3. Logo a soma d 4 + 3 = 7. O novo rtulo do n 5 ser o mnimo entre o
resultado da soma (7) e o rtulo anterior do n 5 (). Logo o novo rtulo ser igual
a 7.
Finalmente para o n 6 temos a soma do rtulo do n 4 mais a distncia do n 4 ao
n 6 dando 4 + = . O novo rtulo do n 6 o mnimo entre e o seu rtulo
anterior, ou seja 12.
Como o menor rtulo igual a 5, o n 3 recebe rtulo permanente e o quadro tem o
seguinte aspecto:
Iterao
0
1
2
3
4
5
1
0
0
0
0
2
3
3
3
3
3
7
7
5
5
4
4
4
4
4
12
12
N Rotulado
1
2
4
3
17
1
0
0
0
0
0
2
3
3
3
3
3
3
7
7
5
5
5
4
4
4
4
4
4
7
7
12
12
11
N Rotulado
1
2
4
3
5
1
0
0
0
0
0
0
2
3
3
3
3
3
3
3
7
7
5
5
5
5
4
4
4
4
4
4
4
7
7
7
12
12
11
10
N Rotulado
1
2
4
3
5
6
18
N 6
Arco
5 6
3 6
2 6
Redes
Diferena
10 7 = 3
10 5 = 5
10 3 = 7
Distncia
3
6
9
(5 6) um arco do caminho.
N 5
Arco Diferena Distncia
3 5 75=2
3
4 5 74=3
3
(4 5) um arco do caminho.
N 4
Arco Diferena Distncia
3 4 4 5 = 1
1
1 4
40=4
4
(1 4) um arco do caminho.
O caminho com comprimento igual a 10 (menor caminho da rede) :
(1 4), (4 5), (5 6).
Vamos ver um novo exemplo para ilustrar o caso onde existe mais de 1 caminho
mnimo na rede.
Seja o seguinte exemplo: Achar o menor caminho entre o n 1 e o n 6 na rede
abaixo:
6
8
9
12
1
3
4
3
4
5
3
19
1
0
0
0
0
0
0
2
8
8
8
8
8
8
3
1
1
1
1
1
1
4
4
4
4
4
4
4
9
7
7
7
13
13
10
10
N Rotulado
1
3
4
5
2
6
Diferena
71=6
74=3
Distncia
8
3
(4 5) um arco do caminho.
N 4
Arco Diferena
Distncia
3 4 41=3
3 1a opo
1 4 4 0 = 4 4 2a opo
(3 4) e (1 4) so arcos do caminho.
Temos 2 opes o que implica em termos, no mnimo, 2 caminhos timos. Temos
que prosseguir, em cada opo, at encontrar a n origem.
Pode ser visto acima que a 2a opo j atingiu o n origem. Temos que continuar
pela outra opo.
N 3
Arco Diferena Distncia
1 3
10=1
1
2 3 1 8 = 7
4
(1 3) um arco do caminho e chegamos ao n origem.
Temos 2 caminhos com comprimento 10:
(1 3) (3 4),(4 5), (5 6) e
(1 4), (4 5), (5 6).
Uma observao importante no algortimo que ele para quando o n destino
for rotulado permanentemente mesmo que algum outro n no tenha recebido
rtulo permanente.
20
Redes
Como podemos ver, dados por exemplo 4 ns, podemos construir vrias rvores,
cada uma delas com arcos diferentes.
O objetivo encontrar quela cujo comprimento total seja o menor possvel.
Podemos, por exemplo, querer encontrar a rvore de tamanho mnimo da rede a
seguir:
4
12
10
2
7
6
10
9
8
5
10
9
6
14
6
3
4
11
7
Como a rede possui 10 ns, qualquer rvore extrada dela tem que ter 9 arcos.
21
12
10
7
6
10
9
5
10
9
6
14
6
3
4
11
7
22
Redes
12
6
10
10
9
5
10
9
6
14
6
3
4
11
7
12
10
7
6
10
9
5
10
6
14
6
3
4
11
7
23
12
6
10
10
9
5
10
6
14
6
3
4
11
7
*
Temos agora um empate: os ns 3 e 9 esto a mesma distncia (= 6) de n ligado.
A escolha arbritria. Vamos escolher o n 3 para ficar ligado. Temos ento:
12
6
10
10
9
5
10
6
14
6
3
4
11
7
*
Agora o mais perto de um ligado o n 9 que est a distncia de 6 do n 5. Ligando
o n 9, temos:
24
Redes
12
6
10
10
9
5
10
6
14
6
3
11
7
*
Neste ponto temos novamente um empate. Os ns 4 e 10 esto a mesma distncia
(= 7) de ns ligados. Escolhemos, arbritariamente, o n 4 para ligar:
12
7
5
6
10
10
9
5
10
6
14
6
3
4
11
7
*
O no ligado mais perto de um ligado neste instante o n 10. Tornando ele ligado,
temos:
25
12
7
5
6
10
10
9
5
10
6
14
6
3
11
7
*
Finalmente o ltimo no ligado o n 8 que est mais perto do n 10 com distncia
igual a 6. Temos ento:
12
7
5
6
5
10
9
5
10
6
14
3
*
8
10
4
11
7
*
A rvore de tamanho mnimo, com seus 9 arcos, foi encontrada:
26
Redes
4
2
7
7
6
10
1
5
5
8
6
6
3
4
7
27
1.8 Exerccios
1.8 Exerccios
Para ajudar na resoluo dos exerccios a seguir, poder ser usado o programa PO
que pode ser encontrado na pgina www.mpsantos.com.br
Na prpria pgina podem ser encontradas as explicaes de como baixar e instalar o aplicativo. Ele para o ambiente Windows e roda em qualquer verso a partir
do Windows 95, inclusive.
Principalmente nos exerccios de fluxo mximo e caminho mnimo, a sada do programa permite a comparao com o que foi feito manualmente na aplicao dos
algortimos.
1) Qual o fluxo mximo que pode ser levado do n 1 ao n 7 na rede abaixo:
4
2
5
4
6
2
1
3
2
3
9
11
12
5
3
7
3
2
3
3
28
Redes
3) Um certo produto deve ser enviado de 3 depsitos para 4 lojas. As disponibilidades dos depsitos so 20, 20 e 100 unidades respectivamente. As necessidades
das lojas so 20, 20, 60 e 20 unidades respectivamente. A tabela abaixo d as
capacidades das rotas entre os depsitos e as lojas:
(Depsitos)
1
2
3
Lojas
2
3
10 0
0 10
10 40
1
30
0
20
4
40
50
5
Uma capacidade igual a zero indica que no existe rota entre o depsito e a loja.
O problema determinar se possvel atender a todas as necessidades das lojas
com o disponvel nos depsitos.
a) Mostre que o problema acima equivalente a achar o fluxo mximo de uma
fonte para um destino.
b) Qual a resposta para o problema ?
4) Qual o menor caminho entre os ns 1 e 7 na rede abaixo:
7
4
6
5
1
2
5
8
4
6
5
29
1.8 Exerccios
8
7
4
6
2
2
3
4
2
8
11
4
4
10
1
2
3
4
5
6
7
8
1,3
2,1
0,9
0,7
1,8
2,0
1,5
2
1,3
0,9
1,8
1,2
2,6
2,3
1,1
3
2,1
0,9
2,6
1,7
2,5
1,9
1,0
4
0,9
1,8
2,6
0,7
1,6
1,5
0,9
5
0,7
1,2
1,7
0,7
0,9
1,1
0,8
6
1,8
2,6
2,5
1,6
0,9
0,6
1,0
7
2,0
2,3
1,9
1,5
1,1
0,6
0,5
8
1,5
1,1
1,0
0,9
0,8
1,0
0,5
30
Redes
5
9
10
5
1
11
6
4
7
2
10) Usando a tcnica da rotulao determine o fluxo mximo que pode ser levado do
n 1 ao n 11 na rede abaixo:
6
9
7
11
6
4
5
8
7
5
7
9
10
15
4
4
31
1.8 Exerccios
5
7
2
12
10
6
1
13
11
3
4
200
800
5
600
8
11
100
2000
700
150
400
500
300
3
450
300
600
380
4
700
6
150
270
200
500
400
1500
8500
12
2000
10
6000
1000
32
Redes
13) A rede abaixo a representao de um conjunto de 11 prdios residenciais construdos em uma rea afastada da cidade. As linhas ligando os prdios so os
canos que foram instalados para a passagem de toda a fiao eltrica, telefnica, etc..., sendo tambm mostrado o comprimento destes encanamentos, em
metros. O esquema de segurana a ser colocado pelo condomnio implica na colocao de telefones interligando as portarias de todos os prdios. Como deve ser
instalada a fiao destes telefones de segurana de maneira que a quantidade
de fio gasto seja a mnima possvel ? Quantos metros de fio sero gastos ?
105
78
80
120
40
D
90
40
210
90
60
E
30
30
165
50
70
170
100
65
F
135
70
33
1.8 Exerccios
30
20
1
10
20
40
20
F
60
10
3
20
100
3
40
4) Z = 16
5) Z = 17
6) Z = 18
7) Z = 26
8) Z = 5, 2
9) Z = 18 litros/seg
11) Z = 7
12) Z = 1070
13) Z = 603
20
10
5
10) Z = 12
20
10
34
Redes
Captulo 2
PERT/CPM
No final da dcada de 50, um dos maiores projetos realizados foi o chamado projeto POLARIS. Este projeto, realizado pelos E.Unidos, consistia na fabricao do 1o
submarino com capacidade de lanar msseis estando submerso. Este projeto envolvia a participao de 250 grandes empresas e 9.000 empresas sub-contratadas
diferentes. Alm de milhares de peas comuns j usadas em outros projetos, nada
menos que 70.000 novos tipos de peas diferentes tinham que ser fabricadas.
Embora os problemas tcnicos fossem difceis, o maior de todos era controlar todo
o projeto, dado o gigantesco nmero de atividades a serem realizadas, principalmente porque havia grande presso de se fazer o projeto no menor tempo possvel.
Com a finalidade de controlar o projeto que, como vimos era o maior problema a
ser enfrentado, foi desenvolvido por uma equipe mista da Lockheed, Booz Allen e
Marinha dos E.Unidos um sistema para controle de projetos que recebeu o nome
de PERT (Program Evaluation and Review Technique). Poderamos traduzir por
Tcnica de Avaliao e Controle de Projetos. O projeto Polaris teve sua durao
reduzida dos 5 anos previstos para apenas 3. Grande parte desta reduo foi atribuda ao uso do PERT.
importante realar os pontos bsicos que serviram de base ao desenvolvimento
do PERT:
a) Projeto pioneiro com muitas atividades de durao real desconhecida.
b) Controlar a durao do Projeto era o objetivo principal.
Na mesma poca (1957) a Dupont apresentou um sistema de controle de Projetos,
similar ao PERT, mas tendo como enfoque principal o controle dos custos de um
projeto. O nome dado a este sistema era CPM (Critical Path Method) ou Mtodo
do Caminho Crtico em portugus.
O sucesso do PERT no projeto Polaris e do CPM na Dupont, provocaram a partir
de 1960, uma corrida ao uso destas ferramentas que passaram a ser conhecidas
pela sigla PERT/CPM. Com o passar dos anos o nome CPM deixou de ser usado e o
uso deste tipo de tcnica passou a ser conhecida como Rede PERT.
Pode-se dizer, sem medo de errar, que este tipo de ferramenta usada pela maioria
das empresas de mdio e grande porte.
36
PERT/CPM
Identificao da Atividade
Durao da Atividade
Evento
Final
Assistir aula de PO
1
2
1 hora
37
2. Mtodo Francs
2
Assistir aula
de PO
Intervalo
Atividade
Previso das unidades
a serem vendidas
Determinar o preo de
venda do produto
Levantar material necessrio na produo
Levantar custos
de produo
Fazer o
Oramento
Durao
em dias
14
Antecessoras
Imediatas
10
b, d
Para deixar claro o conceito, vemos que a atividade b tem como antecessora imediata a atividade a, ou seja ela s pode ser iniciada depois que a atividade a termine.
Da mesma forma, a atividade e s pode comear aps a concluso das atividades b
e d.
38
PERT/CPM
e
3
10
d
14
c
7
3
147
Inicio
7
c
10
FIM
4
d
39
Atividade
Previso das unidades
a serem vendidas
Estudar preo
dos concorrentes
Determinar o preo de
venda do produto
Levantar material necessrio na produo
Levantar custos
de produo
Fazer o
Oramento
Durao
em dias
14
Antecessoras
Imediatas
a, a
10
b, d
Opo 1
b
a
1
2
a
c
a
40
PERT/CPM
3
e
a'
3
10
a
14
c
7
A atividade b depende das atividades f e a. Mas como f depende de a, a interdependncia fica correta.
A atividade fantasma sempre representada por uma linha tracejada.
Uma das vantagens do mtodo francs o fato dele nunca precisar de atividades
fantasma, como podemos ver a seguir:
3
10
Incio
14
a
7
c
Fim
4
d
Temos agora a seguinte questo: Como reconhecer que o desenho da rede necessita
de atividades fantasma ?
H necessidade de atividades fantasma quando o projeto contm grupos de 2 ou
mais atividades que tem algumas, mas no todas, antecessoras imediatas comuns.
No nosso exemplo, b e c tem uma antecessora comum (a), mas no todas.
Exerccio: Construir a rede PERT para o projeto abaixo:
Atividade Antecessoras Imediatas
a
d
a, b
e
b, c
41
Mtodo americano
3
a
f1
5
f2
e
4
Mtodo francs
a
d
Incio
Fim
e
c
d
a, b
e
a, c
f
a, b, c
42
PERT/CPM
Mtodo americano
3
d
f4
b
f1
a
2
f2
f3
f5
e
Mtodo francs
Incio
Fim
43
Data de Incio do projeto: a data em que o projeto inicia. Como teremos que
fazer contas com datas, o que trabalhoso e enfadonho, vamos trabalhar com datas
absolutas. Desta forma, daqui para a frente, esta data ser sempre igual a 0.
Data mais cedo de incio de uma atividade: a data mais cedo possvel em
que uma atividade pode comear. Em ingls usada a sigla E.S, que a abreviao
de Early Start.
Data mais cedo de fim de uma atividade: a data mais cedo em que uma
atividade pode acabar. Em ingls usada a sigla E.F, que a abreviao de Early
Finish.
Vamos voltar ao nosso exemplo:
b
3
e
a'
3
10
a
14
2
c
7
Queremos encontrar a data mnima para o projeto estar pronto. Para isto necessrio achar o maior caminho da rede.
Vamos usar o chamado quadro PERT para determinar este caminho.
Atividade
12
14
24
23
45
35
56
Durao
14
3
0
7
3
4
10
Folga
Total
44
PERT/CPM
Atividade
12
14
24
23
45
35
56
Durao
14
3
0
7
3
4
10
Folga
Total
Durao
14
3
0
7
3
4
10
Folga
Total
Durao
14
3
0
7
3
4
10
Folga
Total
45
Durao
14
3
0
7
3
4
10
Folga
Total
A menor durao para o projeto a maior das datas mais cedo. Logo, a durao do
projeto ser de 35 dias.
Para preencher as demais colunas do quadro, vamos ver novas definies:
Data mais tarde de incio de uma atividade: a data mais tarde em que uma
atividade pode comear sem comprometer a durao do projeto. Em ingls usada
a sigla L.S, que a abreviao de Latest Start.
Data mais tarde de fim de uma atividade: a data mais tarde em que uma
atividade pode acabar sem comprometer a durao do projeto. Em ingls usada a
sigla L.F, que a abreviao de Latest Finish.
Comeamos agora das atividades terminais, ou seja sem sucessoras para trs. A
nica atividade terminal neste projeto (5 6), logo a data mais cedo de fim dela
a prpria durao do projeto, 35.
A sua data mais tarde de incio a diferena entre a data mais tarde de fim e a sua
durao. ou seja 35 10 = 25.
As atividades (3 5) e (4 5) tem como sucessora (5 6). Como a data mais
tarde que (5 6) pode comear 25, esta ser a data mais tarde que aquelas 2
atividades podero acabar. A data mais tarde de incio ser a diferena entre 25 e
as respectivas duraes.
O quadro, neste instante, estar como:
Atividade
12
14
24
23
45
35
56
Durao
14
3
0
7
3
4
10
22
21
25
25
25
35
Folga
Total
46
PERT/CPM
Durao
14
3
0
7
3
4
10
Folga
Total
22
22
21
25
25
35
Durao
14
3
0
7
3
4
10
Folga
Total
Para preencher a ltima coluna (Folga Total) vamos esclarecer que Folga Total
quanto uma atividade pode ser atrasada sem atrasar a data de fim do projeto.
Seu clculo pode ser feito usando-se:
Folga Total = Data mais tarde de fim Data mais cedo de fim
ou
Data mais tarde de incio Data mais cedo de incio.
Em ingls usada a sigla T.S, que a abreviao de Total Slack.
Fazendo-se as contas, temos o quadro completo:
47
Atividade
12
14
24
23
45
35
56
Durao
14
3
0
7
3
4
10
Folga
Total
0
19
8
0
8
0
0
48
PERT/CPM
Exemplo: Construir o quadro PERT para um projeto constitudo das seguintes atividades:
Atividade
12
23
25
24
45
35
56
36
Durao (dias)
3
4
3
2
4
3
2
6
Durao
3
4
3
2
4
3
2
6
Folga
Total
0
0
5
2
2
1
1
0
Durao
3
4
3
2
4
3
2
6
Folga
Total
3
3
2
1
1
2
2
3
49
Durao (dias)
2
3
5
4
2
3
1
3
3
2
2
5
Durao
2
3
5
4
2
3
1
3
3
2
2
5
Folga
Total
0
0
0
0
0
0
0
0
0
0
0
0
50
PERT/CPM
Dp Do 2
2
Varincia = =
6
Do + 4Dm + Dp
6
Para exemplificar, vamos usar o modelo PERT no projeto com as seguintes atividades:
Atividade
12
23
25
24
45
35
56
36
Durao (dias)
Do Dm
Dp
2
2,5
6
1
4
7
2
3
4
1
2
3
1
4
7
2
3
4
1
2
3
2
5
14
51
Durao (dias)
Do Dm
Dp
2
2,5
6
1
4
7
2
3
4
1
2
3
1
4
7
2
3
4
1
2
3
2
5
14
De
3
4
3
2
4
3
2
6
2
0,444
1
0,111
0,111
1
0,111
0,111
4
De
3
4
3
2
4
3
2
6
Folga
Total
0
0
5
2
2
1
1
0
52
PERT/CPM
No nosso exemplo, a durao do projeto uma varivel aleatria, normalmente distribuda, com:
= 13 e = 5, 444 = 2, 3333
Podemos ento responder ao seguinte tipo de perguntas:
a) Qual a probabilidade do projeto demorar mais de 14 dias ?
Trabalhando com a frmula da normal padronizada, temos:
X
14 13
Z=
=
= 0, 43
2, 333
P (Durao > 14) = 1 P (Durao 14)
P (Durao 14) = P (Z 0, 43) = 0, 6664
(tabela normal pg. 226)
P (Durao > 14) = 1 0, 6664 = 0, 3336 = 33, 36%
b) Qual deve ser a durao do projeto para que o risco de no cumprimento do
prazo seja de 5% ?
Queremos X de modo que P (Durao > X) = 5% = 0, 05
P (Durao X) = 1 0, 05 = 0, 95
Na tabela normal (pg. 226) procuramos o valor de Z que corresponde a 0, 95 1, 64.
X 13
1, 64 =
2, 333
X = 16, 97 dias.
Exemplo: Um pequeno projeto constitudo de 7 atividades cujas estimativas de
durao esto dadas abaixo:
Atividade
12
13
14
25
35
46
56
Durao (dias)
Do Dm
Dp
1
1
7
1
4
7
2
2
8
1
1
1
2
5
14
2
5
8
3
6
15
53
Durao (semanas)
Do Dm
Dp
1
1
7
1
4
7
2
2
8
1
1
1
2
5
14
2
5
8
3
6
15
De
2
4
3
1
6
5
7
2
1
1
1
0
4
1
4
De
2
4
3
1
6
5
7
Folga
Total
7
0
9
7
0
9
0
p2 = 1 + 4 + 4 = 9
= 9=3
a) Qual a probabilidade de que o projeto fique pronto em 14 ou menos semanas ?
14 17
= 1
Z=
3
P (Durao 14) = P (Z 1) = 0, 1586 = 15, 86%
b) Se a data contratada para o fim do projeto de 18 semanas, qual a probabilidade do projeto ultrapassar este prazo ?
P (Durao > 18) = 1 P (Durao 18)
18 17
= 0, 333
Z=
3
P (Durao 18) = P (Z 0, 333) = 0, 6293
P (Durao > 18) = 1 0, 6293 = 0, 3707 = 37, 07%
c) Qual data para o fim do projeto que tem 90% de probabilidade de ser cumprida ?
P (Durao X) = 0, 90 Z para 0, 90 1, 29
X 17
1, 29 =
3
X = 20, 87 semanas
54
PERT/CPM
55
Custo
$
6.000
k
4.000
Durao
(Dias)
56
PERT/CPM
Ca Cn
Dn Da
6000 4000
62
= 500
Durao (semanas)
Normal Acelerada
6
3
6
2
7
5
5
2
5
3
9
6
6
4
4
1
2
1
Custo ($)
Normal Acelerado
4.000
5.000
4.000
6.000
4.000
6.000
4.000
6.000
3.000
6.000
5.000
10.000
3.000
6.000
2.000
5.000
2.000
4.000
Custo Incremental
(Ca Cn )/(Da Dn )
333
500
1.000
667
1.500
1.667
1.500
1.000
2.000
57
Dur
6
6
7
5
5
9
6
4
2
Folga
Total
0
2
0
2
11
0
5
0
5
Durao = 26 semanas
Caminho Crtico: (1 2) (2 4) (4 5) (5 7)
Custo = do custo normal de todas as atividades do projeto = $31.000
O objetivo diminuir a durao do projeto minimizando o aumento no custo.
Para isto ser usada uma tcnica conhecida como Compresso da Rede.
No processo precisaremos das seguintes definies:
t = nmero de unidades de tempo que a atividade ainda pode ser reduzida.
Folga Mnima = a menor folga diferente de zero que aparece no quadro PERT.
Como a durao do projeto o comprimento do caminho crtico, para se reduzir a
sua durao temos que diminuir o caminho crtico, ou seja diminuir a durao de
uma das atividades que o compe.
Vamos examinar as opes que temos para reduzir o caminho crtico:
Atividade
1 2
2 4
4 5
5 7
Custo Incremental
333
1.000
1.667
1.000
t
3
Folga Mnima = 2
Como podemos observar, a atividade (1 2) a mais barata para ser acelerada.
Surge ento a pergunta: Quanto podemos acelerar (1 2) ? O mximo que pode
ser acelerado o mnimo entre o t da atividade e a Folga Mnima.
Logo o mximo que podemos acelerar (1 2) :
Min(t, Folga Mnima) = Min(3, 2) = 2 semanas.
58
PERT/CPM
Porque no podemos acelerar mais que a folga mnima? Porque estaramos correndo o risco de estar acelerando uma atividade e aumentando o custo
do projeto, sem garantir que estaramos diminuindo sua durao.
No exemplo, se acelerssemos a atividade (1 2) de 3 semanas poderamos estar acelerando 1 semana (a 3a) sem garantir que a reduo seria maior que 2
semanas. Como a Folga Mnima igual a 2 provvel que exista um caminho y
na rede com folga de 2, ou seja, comprimento igual a 24 . Logo se (1 2) fosse reduzida de 3 semanas (ficando o caminho crtico original com comprimento igual
a 23 semanas), o caminho y passaria a ser o crtico pois seu comprimento seria
igual a 24 semanas.
Calculando o quadro Pert com a nova durao de (1 2) temos:
Atividade
12
13
24
34
25
45
46
57
67
Dur
4
6
7
5
5
9
6
4
2
Folga
Total
0
0
0
0
11
0
5
0
5
Durao: 24 semanas
Caminhos Crticos: (1 2) (2 4) (4 5) (5 7)
(1 3) (3 4) (4 5) (5 7)
Custo = 31.000 + 2 333 = $31.666
Agora temos 2 caminhos crticos. Para diminuir a durao do projeto temos que
reduzir o comprimento dos 2 caminhos crticos. As opes so aquelas que reduzem
simultaneamente uma atividade do 1o caminho e uma do 2o.
Atividade
(1 2) (1 3)
(1 2) (3 4)
(2 4) (1 3)
(2 4) (3 4)
(4 5)
(5 7)
Custo Incremental
333 + 500 = 833
333 + 667 = 1.000
1.000 + 500 = 1.500
1.000 + 667 = 1.667
1.667
1.000
t
1e4
Folga Mnima = 5
A opo mais barata reduzir (1 2) e (1 3).
59
Dur
3
5
7
5
5
9
6
4
2
Folga
Total
0
0
0
0
11
0
5
0
5
Durao: 23 semanas
Caminhos Crticos: (1 2) (2 4) (4 5) (5 7)
(1 3) (3 4) (4 5) (5 7)
Custo = 31.666 + 1 833 = $32.500
Apesar dos caminhos crticos serem os mesmos do quadro anterior, as opes so
diferentes porque a atividade (1 2) j se encontra na sua durao acelerada, ou
seja, no pode ser mais comprimida. Assim as opes passam a ser:
Atividade
(2 4) (1 3)
(2 4) (3 4)
(4 5)
(5 7)
Custo Incremental
1.000 + 500 = 1.500
1.000 + 667 = 1.667
1.667
1.000
Folga Mnima = 5
60
PERT/CPM
Dur
3
5
7
5
5
9
6
1
2
Folga
Total
0
0
0
0
11
0
2
0
2
Durao: 20 semanas
Caminhos Crticos: (1 2) (2 4) (4 5) (5 7)
(1 3) (3 4) (4 5) (5 7)
Custo = 32.500 + 3 1.000 = $35.500
A atividade (5 7) tambm chegou na sua durao acelerada de maneira que
as opes para reduzir a durao do projeto passam a ser:
Atividade
(2 4) (1 3)
(2 4) (3 4)
(4 5)
Custo Incremental
1.000 + 500 = 1.500
1.000 + 667 = 1.667
1.667
t
2e3
Folga Mnima = 2
A melhor opo reduzir (2 4) e (1 3) de Min(2,3,2) = 2 semanas.
O novo quadro passa a ser:
Atividade
12
13
24
34
25
45
46
57
67
Dur
3
3
5
5
5
9
6
1
2
Folga
Total
0
0
0
0
9
0
2
0
2
61
Durao: 18 semanas
Caminhos Crticos: (1 2) (2 4) (4 5) (5 7)
(1 3) (3 4) (4 5) (5 7)
Custo = 35.500 + 2 1.500 = $38.500
Como as atividades (1 2), (2 4) e (5 7) j esto na durao acelerada, temos uma nica opo para reduzir os 2 caminhos:
Atividade
(4 5)
Custo Incremental
1.667
t
3
Folga Mnima = 2
Reduzimos ento (4 5) de Min(3,2) = 2 semanas, obtendo:
Atividade
12
13
24
34
25
45
46
57
67
Dur
3
3
5
5
5
7
6
1
2
Durao: 16 semanas
Caminhos Crticos: (1 2) (2
(1 2) (2
(1 3) (3
(1 3) (3
Custo = 38.500 + 2 1.667 =
4) (4 5) (5
4) (4 6) (6
4) (4 5) (5
4) (4 6) (6
$41.833
Folga
Total
0
0
0
0
7
0
0
0
0
7)
7)
7)
7)
Custo Incremental
1.667 + 1.500 = 3.167
1.667 + 2.000 = 3.667
t
1e2
Folga Mnima = 7
A melhor opo reduzir (4 5) e (4 6) de Min (1,2,7) = 1 semana.
O novo quadro passa a ser:
62
PERT/CPM
Atividade
12
13
24
34
25
45
46
57
67
Dur
3
3
5
5
5
6
5
1
2
Durao: 15 semanas
Caminhos Crticos: (1 2) (2
(1 2) (2
(1 3) (3
(1 3) (3
Custo = 41.833 + 1 3.167 =
4) (4 5) (5
4) (4 6) (6
4) (4 5) (5
4) (4 6) (6
$45.000
Folga
Total
0
0
0
0
6
0
0
0
0
7)
7)
7)
7)
Custos
Diretos Indiretos
31.000
52.000
31.666
48.000
32.500
46.000
35.500
40.000
38.500
36.000
41.833
32.000
45.000
30.000
Multa
12.000
8.000
6.000
Custo
total
95.000
87.666
84.500
75.500
74.500
73.833
75.000
63
73.833
16
t
(semanas)
64
PERT/CPM
Para apresentarmos como usar a P.Linear, vamos supor que temos, para um determinado projeto, os dados abaixo:
Atividade
1 2 (a)
1 3 (b)
2 5 (c)
2 4 (d)
3 4 (e)
4 5 (f)
5 6 (g)
Durao (semanas)
Normal Acelerada
14
6
12
8
18
14
6
4
4
2
8
6
12
8
Custo ($)
Normal Acelerado
1.400
3.200
1.000
4.000
1.600
3.000
800
4.000
400
500
400
900
800
2.500
6.400
Custo Incremental
225
750
350
1600
50
250
425
Aplicando a compresso na rede (deixado como exerccio) as duraes e custos, encontrados nos passos do algortimo so:
Durao
44 (Normal)
40
36
34
32
30
28
Custo
$6.400
$7.300
$8.200
$9.000
$9.850
$10.700
$11.900
A menor durao possvel para se fazer o projeto 28 semanas com o custo timo
igual a $11.900.
Para facilitar a compreenso do modelo de P.Linear, vamos ver o desenho da rede:
65
T2
T5
a
T1
f
b
T6
6
4
3
T4
T3
66
PERT/CPM
Na 2a (atividade e) temos:
T4 T3 + (4 ye ) ou
T4 T3 + ye 4
Restries semelhantes podemos construir para o evento 5:
T5 T2 + (18 yc ) ou
T5 T2 + yc 18 e,
T5 T4 + (8 yf ) ou
T5 T4 + yf 8
Finalmente temos a restrio para o evento 6:
T6 T5 + (12 yg ) ou
T6 T5 + yg 12
Vamos supor que queremos encontrar o melhor custo para fazer o projeto em 34
semanas. Devemos colocar a restrio T6 = 34.
A funo objetivo uma funo de minimizao pois queremos minimizar o valor
correspondente as aceleraes
que as atividades vo sofrer. Logo a funo objetivo
P
ser equivalente a
yi (Custo Incremental)i .
Podemos escrever o modelo completo:
(Min) Z = 225ya + 750yb + 350yc + 1600yd + 50ye + 250yf + 425yg
sujeito a
T2 + ya 14
T3 + yb 12
T4 T2 + y d 6
T4 T3 + y e 4
T5 T2 + yc 18
T5 T4 + yf 8
T6 T5 + yg 12
T6 = 34
ya 8
yb 4
yc 4
yd 2
ye 2
yf 2
yg 4
Ti , y i 0
Usando-se o mdulo de P.Linear, do software PO, para resolver o modelo, a seguinte
soluo tima encontrada:
T2 = 6 T3 = 12 T4 = 14 T5 = 22 T6 = 34
ya = 8 o que indica que a atividade a ou (1 2) foi acelerada de 8 semanas ficando
com a durao igual a 14 8 = 6 semanas.
yc = 2 ou seja a atividade c ou (2 5) ficou na durao 18 2 = 16 semanas.
ye = 2 indicando que a atividade e ou (3 4) ficou na durao 4 2 = 2 semanas.
Os valores timos dos demais yi ficaram igual a zero indicando que as respectivas
atividades ficaram na durao normal.
O valor timo da funo objetivo foi igual a $2.600, logo o menor custo para se fazer
o projeto em 34 semanas o somatrio do custo de se fazer todas as atividades na
durao normal ($6.400) mais os $2.600, ou seja $9.000.
67
Este resultado exatamente igual ao encontrado, para 34 semanas, quando usamos a tcnica de compresso da rede.
Um outro tipo de situao encontrada em projetos quando se tem uma certa quantia e se deseja conhecer qual o tempo mnimo para se fazer o projeto usando aquela
quantia.
Vamos supor, ainda no nosso exemplo, que se tem disponvel $9.850 para fazer o
projeto.
Este valor $3.450 acima dos $6.400 necessrios se usamos as duraes normais.
Podemos
P modificar o nosso modelo colocando no lugar da restrio T6 = 34 a restrio
yi (Custo Incremental)i = 3450 ou seja,
225ya + 750yb + 350yc + 1600yd + 50ye + 250yf + 425yg = 3450
O objetivo passa a ser minimizar T6 . Nosso modelo fica ento como:
(Min) Z = T6
sujeito a
225ya + 750yb + 350yc + 1600yd + 50ye + 250yf + 425yg = 3450
T2 + ya 14
T3 + yb 12
T4 T2 + yd 6
T4 T3 + y e 4
T5 T2 + yc 18
T5 T4 + y f 8
T6 T5 + yg 12
ya 8
yb 4
yc 4
yd 2
ye 2
yf 2
yg 4
Ti , yi 0
Mais uma vez usando-se o software PO para resolver o modelo, encontramos T6 =
32 semanas, ou seja o mesmo valor encontrado quando resolvemos usando a tcnica de compresso da rede.
A soluo tambm fornece os valores timos dos yi , o que permite, de forma anloga
a mostrada acima, se determinar as duraes das atividades para fazer o projeto
em 32 semanas.
68
PERT/CPM
2.5 Exerccios
Para ajudar na resoluo dos exerccios a seguir, poder ser usado o programa PO
que pode ser encontrado na pgina www.mpsantos.com.br
Na prpria pgina podem ser encontradas as explicaes de como baixar e instalar o aplicativo. Ele para o ambiente Windows e roda em qualquer verso a partir
do Windows 95, inclusive.
Nos exerccios, tanto de PERT como de CPM, a sada do programa permite a comparao com o que foi feito manualmente na aplicao dos algortimos.
1) Os dados abaixo referem-se a atividades de um determinado projeto:
Atividade
1 2
1 3
2 4
3 5
1 6
1 7
6 7
4 7
5 7
7 8
8 9
9 10
8 10
10 11
11 12
Durao (semanas)
Otimista Mais provvel Pessimista
10
15
20
3
5
10
20
25
40
50
60
80
2
3
10
6
10
20
0
0
0
20
30
35
25
30
35
30
40
50
4
8
10
0
0
0
2
3
5
26
35
45
3
5
10
Durao (semanas)
Normal Acelerada
3
1
2
1
5
3
3
1
6
3
2
1
2
1
8
6
Custo ($)
Normal Acelerado
3.000
10.000
1.000
2.000
9.000
18.000
1.000
5.000
20.000
50.000
1.000
3.000
4.000
9.000
10.000
15.000
69
2.5 Exerccios
Durao (semanas)
Normal Acelerada
4
3
7
5
3
2
5
3
2
2
10
8
7
5
2
1
Custo ($)
Normal Acelerado
100
200
280
520
50
100
200
360
160
160
230
350
200
480
100
200
Atividade
1 2
1 4
1 6
1 7
2 3
3 4
4 5
5 6
6 7
7 8
6 8
8 9
5 9
9 10
7 11
Durao (semanas)
Otimista Mais provvel Pessimista
0
1
8
5
7
27
0
3
6
1
1
1
3
6
15
1
3
5
0
6
6
1
2
15
2
4
6
0
0
0
2
3
4
3
5
13
3
3
3
1
8
9
2
3
10
70
PERT/CPM
Atividade
1 2
1 3
1 4
2 5
3 4
3 5
4 5
5 6
Durao (semanas)
Otimista Mais provvel Pessimista
4
8
12
8
10
12
8
14
24
5
8
10
2
5
8
2
4
8
6
10
14
1
3
6
Atividade
1 2
1 3
2 4
2 5
4 5
3 6
3 7
5 8
6 9
8 9
9 10
7 11
10 11
11 12
5 13
Durao (semanas)
Otimista Mais provvel Pessimista
2
2
2
1
3
7
3
7
7
4
7
8
0
0
0
2
6
9
5
9
11
3
6
8
2
6
9
0
0
0
1
3
4
4
8
11
0
0
0
2
5
7
3
5
8
71
2.5 Exerccios
Atividade
1 2
1 3
1 4
2 4
2 6
3 5
3 6
4 6
2 5
5 7
3 8
6 8
8 9
7 10
Custo ($)
Normal Acelerado
320
360
575
700
500
550
750
850
420
490
475
535
425
425
180
180
850
1060
650
750
675
735
650
750
525
575
280
335
2
5
7
2
10
5
1
7
1
3
3
4
1
8
1
72
PERT/CPM
6
5
4
2
5
8
4
6
5
Atividade
1 2
1 4
1 3
2 4
3 4
2 5
4 5
3 5
Durao (semanas)
Normal Acelerada
7
5
4
3
5
3
3
2
10
8
2
2
2
1
7
5
Custo ($)
Normal Acelerado
100
200
280
520
50
100
200
360
160
360
230
230
200
480
100
200
2.5 Exerccios
73
74
12)
PERT/CPM
(Min) Z = T5
sujeito a
50ya + 240yb + 25yc + 160yd + 100ye + 280yg + 50yh = 250
T2 + y a 7
T3 + y c 5
T4 T2 + yd 3
T4 T3 + ye 10
T5 T2 2
T5 T4 + y g 2
T5 T3 + yh 7
ya 2
yb 1
yc 2
yd 1
ye 2
yg 1
yh 2
Ti , y i 0
(*) $1570 - Custo na durao normal ($1320) = $250
Captulo 3
Teoria das Filas
Esperar em uma fila uma das ocorrncias mais comuns no nosso dia a dia. Ns
esperamos na fila para fazer matrcula, para pagar em um supermercado, para pagar uma conta no banco, para comer um hamburguer, para colocar gasolina, etc...
O pioneiro no estudo das filas de espera foi A.K.Erlang, um engenheiro dinamarqus,
que publicou, na dcada 1910-1920, vrios trabalhos sobre o assunto quando da implantao do servio telefnico em Copenhague.
Filas podem existir na forma de pessoas ou objetos esperando por algum tipo de
servio ou podem existir em um sentido abstrato, ou seja no to visvel, como por
exemplo uma fila de navios esperando para atracar em um porto.
76
O Custo da Fila o custo que a administrao do porto tem pelo pagamento das
indenizaes aos navios que esperam na fila.
Este custo inversamente proporcional ao custo do servio (nmero de beros). Se
temos poucos beros o custo do servio ser pequeno mas como a fila ser grande,
o custo da fila ser grande. J se tivermos muitos beros, o custo do servio ser
grande mas em compensao, como a fila ser pequena, o custo da fila ser pequeno.
Genericamente podemos definir:
Custo do Servio: o custo de construir e manter em funcionamento as estaes
que prestam determinado servio.
Custo da Fila: o custo que se incorre devido ao fato de usurios de um sistema
de fila terem que esperar na fila propriamente dita.
Custo Total: a soma do Custo da Fila mais o Custo do Servio.
A figura a seguir uma representao destes custos:
$
Custo Total
Custo do Servio
Custo daFila
Nvel timo
Nvel de Servio
O objetivo em qualquer sistema de filas achar o ponto timo que minimiza a funo do custo total, ou seja, achar o nvel de servio que minimiza o custo total.
Em quase todos os sistemas de filas relativamente fcil, embora possa ser trabalhoso, achar o custo do servio. Achar o custo da fila bem mais complexo. Qual
o custo da fila, por exemplo, em uma agncia bancria ? Temos pessoas na fila e
o custo da fila o equivalente monetrio do tempo que as pessoas ficam na fila.
A quantificao disto no simples at porque na fila de uma agncia bancria,
podemos ter pessoas com valor-hora bastante diferentes.
77
Populao
Fila(s)
Servio
Chegadas
Processo de
Chegada
Mundo
Externo
Disciplina
da Fila
Mecanismo
de Servio
3.2.1 A Populao
o conjunto de elementos pertencentes ao mundo externo, que, potencialmente,
podem entrar no sistema de fila. Assim no sistema de fila da agncia bancria da
UERJ, por exemplo, so todas as pessoas que podem eventualmente usar a agncia: funcionrios, professores, alunos, pessoas da vizinhana, etc...
Estatisticamente, a populao, em um sistema de filas, pode ser classificada como
infinita ou finita. Ela considerada ser infinita quando o nmero de elementos
tal que a presena de um ou mais elementos na fila no influi no comportamento do
sistema como um todo. Quando a presena no sistema de elementos da populao
potencial influi no comportamento do sistema, a fila dita ser finita.
Um exemplo de fila finita o caso da fila para conserto de mquinas (poucas) existentes em uma indstria.
78
Perodo
11:00 11:01
11:01 11:02
11:02 11:03
11:03 11:04
..
.
11:59 16:00
300 perodos
Instante da chegada
de cada usurio
Hr:min:seg
11:00:28 / 11:00:39
11:01:02/11:01:48/11:01:54
11:02:48
11:03:15 / 11:03:57
..
.
15:59:02 / 15:59:27
N de chegadas
no perodo
2
3
1
2
..
.
2
600 chegadas
Intervalo entre
chegadas (seg)
28 / 11
23 / 46 / 6
54
27 / 42
..
.
8 / 25
18.000 seg
No de Observaes
fi
41
81
81
54
27
11
3
2
Esta distribuio uma distribuio discreta pois os valores s podem ser inteiros,
ou seja, 0, 1, 2, etc...
Com os dados podemos
achar a mdia e a varincia (desvio padro):
P
xi fi
= 2 chegadas/minuto
Mdia = x = P
f
i
P
P 2
fi x2
x i f1
2
=
= 2, 02
= 2, 02 = 1, 42 chegadas/minuto
P
fi 1
79
No de Observaes
387
132
51
19
7
3
1
P x2i
x2 = 900
= 900 = 30 segundos
2 =
n
Veremos mais adiante que ser fundamental saber se estas distribuies se enquadram em alguma distribuio terica.
80
(A)
FILA
ESTAES DE SERVIO
(B)
FILA
ESTAES DE SERVIO
(C)
FILA
ESTAES DE SERVIO
(D)
FILA
81
Tambm como no processo de chegada, para se obter uma distribuio probabilstica que descreva o servio prestado, precisamos fazer uma amostragem no sistema
em questo. Neste caso no entanto, aps ter sido definido o tamanho da amostra,
temos um complicador: A distribuio probabilstica deve refletir a capacidade da
estao de servio e por isto no tem sentido incluir na amostra os perodos em que
a estao fica ociosa.
As maneiras usuais de se fazer isto so contar somente o tempo em que a estao
no fica ociosa ou, para garantir ocupao, gerar usurios artificiais para serem
servidos no sistema.
A 1a forma geralmente mais usada pois a 2a pode provocar distores por ser artificial.
Vamos supor, como exemplo, que estamos estudando um posto bancrio e para estudarmos o atendimento dado foi feita uma amostragem, em um nico dia, das
13:00 s 16:00 horas, ou seja durante 3 horas (180 minutos).
Foram coletados ento os seguintes dados:
Perodo
13:00 13:01
13:01 13:02
13:02 13:03
13:03 13:04
..
.
15:59 16:00
180 perodos
N de servios
prestados no perodo
2
3
1
0
..
.
2
540 servios
Durao do
servio (seg)
22 / 15
30 / 15 / 22
63
..
.
26 / 19
10.800 seg
Da mesma forma que fizemos no processo de chegada, registramos nesta amostragem tanto a durao de cada servio prestado (medida contnua pois se trata de
tempo) como o nmero de servios prestados por perodo (tambm 1 minuto neste
exemplo) que uma medida discreta pois s pode ser um valor inteiro. Tambm repetindo o citado no processo de chegada, bastava coletar apenas uma das medidas
pois as 2 esto relacionadas e claro que se a mdia for de 4 servios prestados por
minuto, a durao mdia da prestao de servio ser de 15 segundos.
Com os dados coletados na amostragem podemos construir 2 distribuies probabilsticas.
82
No de Observaes
8
28
40
40
31
18
9
4
2
No de Observaes
410
103
19
7
1
x = 20 segundos
= 20 segundos
Como no caso do processo de chegada, tambm estamos interessados em saber se
estas distribuies se enquadram em uma distribuio terica.
A tcnica estatstica que avalia se uma distribuio emprica se adequa a uma
distribuio terica chamada de Teste de Aderncia e o que veremos a seguir.
83
No de Observaes
39
91
67
59
28
10
4
2
300
Mdia = 2/min
O teste do 2 uma comparao entre a freqncia observada e a freqncia terica. Assim sendo, como j temos a freqncia observada na amostragem, temos
que calcular a freqncia terica usando a frmula da distribuio de Poisson:
e k
Probabilidade(no observaes= k)=
k!
Temos ento:
No de chegadas / min
0
1
2
3
4
5
6
7
P(no obs= k)
e2 20
= 0, 135
0!
e2 21
= 0, 270
1!
0,270
0,180
0,090
0,036
0,012
0,003
Freqncia Esperada
300 0, 135 = 40, 5
300 0, 270 = 81
81
54
27
10,8
3,6
0,9
84
Freq. Observada
480
33
19
7
1
540
P (x)
30
30,5
e
e
= 0, 7768
30,5
31
e
e
= 0, 1773
0,0386
0,0086
0,0019
Freq. Esperada
540 0, 7768 = 419, 47
540 0, 1773 = 93, 58
20,84
4,64
1,02
85
Lembrando que temos que juntar em nica categoria as 2 ltimas linhas da frequencia observada (7 e 1), podemos fazer ento:
(480 419, 47)2
(33 93, 58)2
(8 5, 66)2
2
calc =
+
+ +
= 49, 08
419, 47
93, 58
5, 66
= 4 1 1 = 2 (na Exponencial s a mdia estimada pela amostra)
Com = 0, 05 obtemos da tabela (pg. 227): 2tab = 5, 99.
Como o 2calc maior que o 2tab ns rejeitamos a hiptese de que a distribuio da
durao do atendimento siga uma exponencial.
86
87
88
Estado no
instante t
P0
k=0
P1
k=1
P2
k=2
..
.
..
.
Pn
k=n
Probabilidade
do evento
1 t
t
t
1 (t + t)
t
t
1 (t + t)
t
..
.
t
1 (t + t)
t
Estado no
instante t + t
k=0
k
k
k
k
k
k
k
=1
=0
=1
=2
=1
=2
=3
..
.
k =n1
k=n
k =n+1
Probabilidade
do estado
P0 (1 t)
P0 (t)
P1 (t)
P1 (1 t t)
P1 (t)
P2 (t)
P2 (1 t t)
P2 (t)
..
.
Pn (t)
Pn (1 t t)
Pn (t)
89
P1 = P0
(Eq. 4)
Pn+1 = Pn + Pn Pn1
Pn+1 = Pn 1 +
Pn1
Pn+1 = Pn
Pn1
Substituindo
n
por
1,
temos:
P2 = P1
P0
Tirando ovalor
de
P
da
equao
(4) temos:
1
P2 = P0
P0
90
= P0
= P0
= P0
P2 = P0
2 +
2
Se resolvermos
3 para P3 vamos obter:
P3 = P0
Por induo
que:
inferimos
n
Pn = P0
(Eq. 5)
P
Pn = 1
n=0
ou da equao
n (5):
P0
=1
n=0
1
P0 = n
P
ou
n=0
O denominador desta expresso uma srie geomtrica infinita que converge, se
1
.
for menor que 1, para
Temos ento:
1
P0 =
P0 = 1
(Eq. 6)
Das equaes
(5)e (6)
vem:
n
Eq. (7)
Pn = 1
P
A mdia de uma varivel x definida como
xPx , logo o nmero mdio de unidades no sistema (representado por L) dado por:
P
L=
nPn
n=0
91
Substituindo
pelo valor
de
Pn da equao (7) temos:
n
L=
n 1
n=0
n
P
= 1
n
n=0
O somatrio da equao acima uma srie geomtrica infinita que converge para:
2
1
Logo temos:
L= 1
Que se reduz a:
L=
(Eq. 8)
Logo uma vez que tenhamos obtido o valor de L da equao (8) podemos, da equao (9), tirar o valor de W :
L
1
W =
=
Wq = W =
=
( )
92
2
Lq = Wq =
=
( )
( )
As demais frmulas no s deste modelo como dos demais que veremos a seguir
so desenvolvidas de forma anloga ao que vimos at aqui, apesar de que para
algumas, a matemtica envolvida seja bem mais complexa.
P0 = 1
Probabilidade
nde existirem n unidades no sistema:
Pn = P0
L=
Wq =
( )
Fator de utilizao da estao de servio:
Lq = L = Wq
L = Lq + = W
1
Lq
Wq = W =
1
L
W = Wq + =
93
Exemplo 1
Clientes chegam a uma barbearia, de um nico barbeiro, com uma durao mdia
entre chegadas de 20 minutos. O barbeiro gasta em mdia 15 minutos com cada
cliente.
a) Qual a probabilidade de um cliente no ter que esperar para ser servido ?
b) Qual o no esperado de clientes no salo de barbeiro ? na fila ?
c) Quanto tempo, em mdia, um cliente permanece no salo ?
d) Quanto tempo, em mdia, um cliente espera na fila ?
e) Qual a probabilidade de que um cliente tenha que ficar mais de 30 minutos no
salo ?
f) O barbeiro est estudando a possibilidade de colocar outro barbeiro desde que o
tempo de permanncia mdio de cada cliente no salo passe a 1, 25 horas. Para
quanto deve aumentar a taxa de chegada de modo que este segundo barbeiro
fique justificado ?
Soluo
= 3/hr
= 4/hr
3
a) P0 = 1 = 1 = 0, 25 = 25%
3
b) L =
=
= 3 fregueses
43
2
= 2, 25 fregueses
Lq =
( )
d) Wq =
= 0, 75 horas
( )
3
e) P (T > 0, 5) = e(1)t = e4( 4 )0,5 = 0, 61 = 61%
f) Queremos de modo que W = 1, 25 horas
1
= 3, 2 fregueses/hora
1, 25 =
4
94
Exemplo 2
Pessoas chegam para comprar ingressos para um jogo taxa de uma por minuto.
Cada pessoa gasta em mdia 20 segundos para comprar um ingresso.
a) Se uma determinada pessoa chega 2 minutos antes do jogo comear e se ela
gasta exatamente 1,5 minutos para chegar ao seu lugar aps comprar o seu
ingresso, ela estar sentada antes do jogo comear ?
b) Qual a probabilidade da pessoa do tem a estar sentada antes do jogo comear ?
c) Com que antecedncia deve a pessoa chegar para ter 99% de certeza de estar
sentada antes do jogo comear ?
Soluo
= 1/min
= 3/min
1
= 0, 5 minutos
a) W =
Logo o tempo mdio para comprar o ingresso e achar o lugar 0, 5 + 1, 5 = 2 minutos, ou seja, a pessoa dever estar sentada antes do jogo comear.
b) igual a probabilidade do ingresso ser comprado em tempo menor ou igual a
0, 5 minutos.
1
P (T 0, 5) = 1 P (T > 0, 5) = 1 e(1)t = 1 e3(1 3 )0.5
P (T 0, 5) = 0, 63 = 63%
c) Queremos achar t de modo que:
P (T > t) = 0, 01
1
e(1)t = 0, 01 e3(1 3 )t
t = 2, 3 minutos
Logo: P (T > 2, 3) = 0, 01
P (T 2, 3) = 0, 99
Como a pessoa gasta 1, 5 minutos para achar seu lugar ela deve chegar 1, 5+2, 3 =
3, 8 minutos antes do jogo comear.
IMPORTANTE
Como j foi dito anteriormente, a taxa de ocupao (/), tem que ser sempre menor que 1 pois, em caso contrrio, a fila tende ao infinito. Vamos aproveitar este
exemplo para mostrar que, mesmo sendo menor que 1, se ela se aproxima de 1 a fila
j tende ao infinito. No quadro a seguir, para um fixo igual a 3/min, mostramos
os valores de L, Lq , W (em minutos) e Wq (em minutos) para valores crescentes de
, e conseqentemente de .
Podemos ver que, a medida que vai se aproximando de 1, a fila se torna invivel.
95
1,00
1,50
2,00
2,50
2,90
2,95
2,99
2,999
0,333
0,500
0,667
0,833
0,966
0,983
0,996
0,999
L
0,5
1
2
5
29
59
299
2999
Lq
0,167
0,500
1,333
4,667
28,03
58,01
298
2998
W
0,50
0,67
1
2
10
20
100
1000
Wq
0,167
0,333
0,667
1,667
9,667
19,667
99,667
999,667
Exemplo 3
Fregueses chegam aleatoriamente a uma padaria taxa mdia de 12/hora. O nico
empregado da padaria pode servir fregueses taxa mdia de 20/hora. O empregado
recebe $3/hora enquanto que o tempo que os fregueses perdem na padaria est
estimado em $8/hora. O dono da padaria est considerando a instalao de um
equipamento de auto-servio que far com que a taxa de atendimento aos fregueses passe para 42 fregueses/hora. O custo do equipamento de auto-servio de
$30/dia.
Considerando que a padaria funciona 12 horas/dia, justifique economicamente se o
equipamento de auto-servio deve ou no ser comprado ?
Soluo
= 12/hora
Situao Atual
= 20/hora
Custo do empregado = $3/hr 12 hr/dia = $36/dia Custo do servio
W = tempo mdio que um fregus permanece na padaria.
W = 0, 125 horas
Custo = 0, 125 horas 8/hr = $1
Custo da fila = $1 12 fregueses/hr 12 hr/dia = $144
Custo total = $36 + $144 = $180/dia
Situao Proposta
= 42/hora
W = 0, 0333 horas
Custo = 0, 0333 horas $8/hr = $0, 266
Custo da fila = $0, 266 12 fregueses/hr 12 hr/dia = $38, 40/dia
Custo do servio = $36 + $30 = $66/dia
Custo total = $66 + $38, 40 = $104, 40/dia
Resp: A situao proposta melhor.
96
(s > 1)
P0 = s1
P 1 n
n=0
n!
1
+
s!(1 )
n
1
P0
n!
n
Pn =
1
P0
s!sns
s+1
P0
Lq =
s s!(1 )2
L = Lq +
W =
Wq =
p/n = 1, 2, ..., s 1
p/n s
Lq
ts1
P
1
e
0
P (T > t) = e 1 +
s!(1 ) s 1
P0
t
P (T > t) = e
1+
t
s!(1 )
se
s1
se s 1
=0
6= 0
97
(s > 1)
Exemplo 1
Um escritrio tem 3 datilgrafas e cada uma pode datilografar, em mdia, 6 cartas
por hora. As cartas chegam para serem datilografadas a taxa mdia de 15 por hora.
a) Qual o no mdio de cartas esperando para serem datilografadas ?
b) Quanto tempo, em mdia, uma carta demora para ficar pronta ?
c) Qual a probabilidade de que uma carta demore mais de 20 minutos para ficar
pronta ?
d) Vamos supor que cada datilgrafa receba individualmente 5 cartas por hora, em
mdia, para datilografar. Quanto tempo em mdia uma carta demora para ficar
pronta ?
Soluo
Modelo M/M/3 com = 15/hr e = 6/hr
a) Lq ? P0 = 0, 0499 Lq = 3, 511 cartas
b) W = ?
L = 6, 011 cartas W = 0, 40 horas
c) P (T > 0, 333 hr) = 0, 461 = 46, 1%
d) Modelo I
= 5/hr W = 1 hora
Este exemplo serve para exemplificar a vantagem em se ter uma fila nica quando
temos vrias estaes de servio prestando o mesmo tipo de atendimento. Como
podemos ver, com uma nica fila, cada carta demora, em mdia, 0, 40 horas (24
minutos) para ficar pronta. Com fila individual demorar, em mdia, 1 hora.
Exemplo 2
Deseja-se determinar o no timo de caixas em uma agncia bancria. O tempo que
cada cliente perde dentro da agncia est estimado em $5/hora e o custo de funcionamento de uma caixa bancria de $4/hora.
Os clientes chegam a taxa mdia de 40 por hora e as caixas podem atender, em
mdia, 30 clientes por hora.
Soluo
= 40/hr = 30/hora
s = 1 = 1, 333 > 1, a fila tenderia ao infinito.
s
2
3
4
Custo da Fila/hr
$5..W
12,00
7,39
6,72
Custo do Servio/hr
4.s
8,00
12,00
16,00
Custo Total/hr
20,00
19,39
22,72
Para se resolver este tipo de problema tem que se ir por tentativa, incrementando
o nmero de estaes de servio de 1. Como j vimos, a curva de custo total vem
diminuindo, passa por um mnimo e volta a crescer.
No nosso exemplo o mnimo s = 3.
98
p/ 6=
M +1
P0 =
1
p/ =
M +1
n
P0
p/ 6=
Pn =
P
p/ =
0
L=
M +1
(M + 1)
M +1
p/ 6=
p/ =
Lq = L (1 P0 )
A taxa de chegada das unidades no sistema . No entanto algumas unidades
chegam e encontram a fila cheia, ou seja, vo embora. A taxa de chegada efetiva (ef ) d a taxa mdia das unidades que realmente permanecem no sistema,
ou seja (ef ) a taxa mdia de entrada de unidades no sistema.
ef = (1 P0 ) = (1 PM )
As demais frmulas ficam ento como:
L
W =
ef
Wq =
=
Lq
ef
ef
99
Exemplo 1
Uma barbearia com 1 barbeiro tem 6 cadeiras para acomodar fregueses esperando
atendimento. Os fregueses que chegam quando as 6 cadeiras esto cheias, vo
embora sem esperar. Os fregueses chegam a taxa mdia de 3/hr e ficam em mdia
15 minutos na cadeira do barbeiro.
a) Qual a probabilidade de um fregus chegar e ir direto para a cadeira do barbeiro ?
b) Qual o no mdio de fregueses esperando atendimento ?
c) Qual a taxa de chegada efetiva ?
d) Quanto tempo, em mdia, um fregus fica na barbearia ?
e) Que percentual dos fregueses potenciais vai embora sem esperar atendimento ?
Soluo
M =7
= 3/hr = 4/hr
a) P0 = 0, 2778 = 27, 78%
b) L = 2, 11 fregueses Lq = 1, 39 fregueses
c)ef = 2, 89 fregueses/hr
d) W = 0, 73 horas
ef
2, 89
e)
=
= 0, 963 Percentual de fregueses atendidos
3
Resp: 1 0, 963 = 0, 037 = 3, 7%
100
Exemplo 2
Em uma barbearia de um nico barbeiro a taxa mdia de chegadas de 3 fregueses por hora. A barbearia s tem lugar para acomodar 2 pessoas esperando e os
eventuais fregueses que chegam quando o salo est cheio, tem de ir embora. O
barbeiro capaz de atender em mdia 2 fregueses por hora e cobra $7 por cada
corte de cabelo. Como muitos fregueses esto indo embora sem poder serem atendidos, o barbeiro est pensando em mudar o seu mtodo de trabalho. Aps alguns
estudos ele identificou 2 alternativas:
a) Trabalhar um pouco mais rpido do que atualmente, diminuindo um pouco a
qualidade do corte de cabelo mas diminuindo o preo do corte para $6 para evitar
reclamaes. Com esta alternativa a sua taxa de servio mdia iria para 3 fregueses por hora.
b) Trabalhar bem mais rpido do que atualmente, cobrando somente $5 por corte
de cabelo pois haveria uma queda acentuada na qualidade. Neste caso sua taxa de
servio mdia passaria a 4 fregueses por hora.
O barbeiro deseja fazer uma avaliao econmica entre a situao atual e as 2 alternativas estudadas. O tempo perdido pelos fregueses na fila de espera est estimado
em $2/hora e como o servio feito pelo barbeiro muito cansativo, ao tempo que ele
pode descansar (por no ter nenhum fregus esperando) foi atribudo o valor de
$4/hora, ou seja, cada hora que ele descansa como se tivesse ganho $4.
Considerando que o dia tem 8 horas de trabalho, faa a anlise econmica para o
barbeiro.
Soluo
Situao atual
= 3/hr = 2/hr M = 3
Receita com os cortes = No mdio de fregueses atendidos/dia $7/corte
= ef 8hr/dia $7 = 98, 21/dia
$ Equivalente do tempo ocioso = P0 8hr/dia $4 = $3, 94/dia
$ Equivalente do tempo perdido = Wq ef 8hr/dia $2/hr = $17, 73
Rendimento lquido = $98, 21 + $3, 94 $17, 73 = $84, 42/dia
Alternativa a
= 3/hr = 3/hr M = 3
P0 = 0, 250
Wq = 0, 333 hr ef = 2, 25 fregueses/hr
Rendimento lquido = $104/dia
Alternativa b
= 3/hr = 4/hr M = 3
P0 = 0, 3657
Wq = 0, 20209 hr ef = 2, 537 fregueses/hr
Rendimento lquido = $104, 96/dia
A alternativa b a melhor soluo.
101
(s > 1)
(s > 1)
a=
c=
s
Temos ento:
1
P0 = s
P ns
P 1 n
1 s
a
+ a
c
s!
n=0 n!
n=s+1
1 n
a P0
p/ n s
n!
an P0
Pn =
p/ s < n M
S! S ns
0
p/ n > M
Lq =
P0 as c
s! (1 c)2
L = Lq + s
ef = s
Wq =
W =
=
s1
P
n=0
s1
P
n=0
1 cM s (M s) cM s (1 c)
(s n)Pn
(s n)Pn
Lq
ef
L
ef
ef
s
Exemplo 1
Uma barbearia com 2 barbeiros tem 5 cadeiras de espera. Os fregueses que chegam
quando as 5 cadeiras esto ocupadas, vo embora. Os fregueses chegam a uma taxa
mdia de 6/hora e ficam em mdia 15 minutos na cadeira de barbeiro.
a) Qual a probabilidade de um fregus chegar e ir direto para a cadeira de barbeiro ?
b) Qual o no mdio de fregueses esperando para serem atendidos ?
c) Qual a taxa de chegada efetiva ?
d) Quanto tempo, em mdia, um fregus fica na barbearia ?
e) Que percentual de fregueses vai embora ?
102
Soluo
M =7
= 6/hr
= 4/hr
a) P0 + P1 = 0, 4032 = 40, 32%
b) Lq = 1, 014 fregueses
c) ef = 5, 741 fregueses/hr
d) W = 0, 426 horas
ef
e) 1
= 0, 0431 = 4, 31%
s=2
Exemplo 2
Uma oficina mecnica tem 4 mecnicos sendo que cada carro necessitando conserto
atendido por um nico mecnico.
Alm dos carros sendo consertados s cabem mais 6 automveis no ptio da oficina
e quando ele est cheio os fregueses tem que procurar outra oficina. A taxa mdia
de chegadas de carros para conserto de 3 por dia. Cada mecnico conserta, em
mdia, 1 carro por dia.
a) Qual a probabilidade da oficina estar vazia ?
b) Qual o no mdio de carros esperando conserto ?
c) Qual o no mdio de carros na oficina ?
d) Dos automveis que procuram a oficina, quantos em mdia ficam ?
e) Quanto tempo em mdia um carro espera na fila ?
f) Quanto tempo em mdia um carro fica na oficina ?
g) Qual a probabilidade de um carro chegar e ter vaga na oficina ?
Soluo
M = 10
= 3/dia
= 1/dia
s=4
a) P0 = 0, 040 = 4%
b) Lq = 0, 91 carros
c) L = 3, 83 carros
d) ef = 2, 92 carros/dia
e) Wq = 0, 31 dias
f) W = 1, 31 dias
g) Pvaga = 1 P10 = 1 0, 02 = 0, 98 = 98%
103
X=
Fator de Servio
+
S no de estaes de servio.
M Tamanho da populao.
Da tabela obtemos a seguinte medida:
F Fator de Eficincia.
Temos ento:
104
Lq = M (1 F )
ef = M F X
1
W = Wq +
L = ef W
Wq =
=
Lq
ef
MF X
P0 =
s
s1
P
M!
n=0
(M n)! n!
1
M
P
M!
+
ns
n=s (M n)! s! s
n
M!
P0
p/ 1 n < s
(M n)! n!
n
M!
Pn =
P
p/ s n M
(M n)! s! sns
0
p/ n > M
Exemplo 1
Uma companhia pesqueira tem 2 estaleiros para conserto de seus barcos. Cada
barco quebra, em mdia, de 4 em 4 semanas. Cada estaleiro gasta, em mdia, 1
semana para consertar cada barco. A frota atual da companhia de 10 barcos.
a) Qual a probabilidade do estaleiro estar vazio ?
b) Em mdia quantos barcos quebrados ficam aguardando conserto ?
c) Em mdia quantos barcos esto parados no estaleiro ?
d) Qual a taxa de chegada de barcos no estaleiro ?
e) Quanto tempo, em mdia, um barco aguarda para comear a ser consertado ?
f) Quanto tempo, em mdia, um barco fica parado ?
Soluo
= 0, 25/semana
= 1/semana
0, 25
= 0, 2
X=
0, 25 + 1
F = 0, 854 (tabela pg. 232)
a) P0 = 0, 065 = 6, 5%
b) Lq = 1, 46 barcos
c) L = 3, 16 barcos
d) ef = 1, 708 barcos/semana
e) Wq = 0, 85 semanas
f) W = 1, 85 semanas
s=2
M = 10
105
Exemplo 2
Dois mecnicos tem a tarefa de consertar 5 mquinas. Cada mquina quebra a uma
taxa mdia de uma vez a cada hora. Cada mecnico pode reparar as mquinas a
taxa mdia de 4/hora.
a) Qual o no mdio de mquinas esperando reparo ?
b) Qual o no mdio de mquinas que esto fora do servio ?
c) Qual a taxa de chegada quando consideramos as 5 mquinas ?
d) Quanto tempo. em mdia, uma mquina quebrada espera na fila ?
e) E no sistema ?
Soluo
M =5
X=
= 1/hr
= 4/hr
s=2
= 0, 2
1+4
Da tabela (pg. 230):
F = 0, 976
a) Lq = 0, 12 mquinas
b) L = 1, 093 mquinas
c) ef = 3, 904 mquinas/hr
d) Wq = 0, 03 horas
e) W = 0, 28 horas
Exemplo 3
Uma empresa de frete areo tem 20 terminais (buferizados) em uma linha de comunicao. Os terminais so usados para entrada de dados no sistema central de
computao. O tempo mdio necessrio pra digitar uma entrada no buffer do terminal 80 segundos e este tempo de digitao exponencialmente distribudo.
Cada mensagem enviada de um terminal, consome, em mdia 2 segundos de CPU
(exponencial).
Calcule quantas requisies dos terminais so enviadas para a CPU e qual o tempo
de resposta mdio para cada requisio.
Soluo
M = 20
s=1
= 0, 75/min
= 30/min
0, 75
= 0, 0244 ' 0, 024
X=
0, 75 + 30
Da tabela F = 0, 982
Requisies enviadas para a CPU: (ef f )
ef f = M F X = (20)(0, 982)(0, 024)(30) = 14, 14/min
106
107
P0 = 1
Lq =
2 2 + 2
2(1 )
L = Lq +
Wq =
Lq
W = Wq +
2
Quando = 0, temos o chamado modelo com durao do servio constante.
Exemplo 1
Pessoas chegam a um pequeno posto do correio a taxa de 30 por hora. O servio
executado por apenas 1 funcionrio e o tempo de servio normalmente distribudo,
ou seja, segue um distribuio normal com mdia de 1 minuto e = 0, 30 minutos.
a) Quanto tempo, em mdia, uma pessoa espera na fila ?
b) Quanto tempo, em mdia, uma pessoa fica no posto do correio ?
c) Qual o no mdio de pessoas na fila ?
d) Qual o no mdio de pessoas no posto de servio ?
e) Qual a probabilidade do funcionrio estar ocioso ?
Soluo
= 0, 5/minuto
= 1/minuto
2 = (0, 30)2 = 0, 09
= 0, 5
P0 = 0, 5 = 50% (e)
Lq = 0, 2725 pessoas (c)
L = 0, 7725 pessoas (d)
Wq = 0, 545 minutos (a)
W = 1, 545 minutos (b)
108
Exemplo 2
Repetir o exemplo 1 supondo a durao do servio constante, ou seja, 2 = 0.
Soluo
= 0, 5
P0 = 0, 5 = 50% (e)
Lq = 0, 25 pessoas (c)
L = 0, 75 pessoas (d)
Wq = 0, 5 minutos (a)
W = 1, 5 minutos (b)
109
1 1
=
onde k 0 e inteiro
k
Pode-se ver que k o parmetro que especifica o grau de variabilidade das duraes
de servio em relao a mdia. Na verdade para cada k temos uma distribuio e
por isto podemos considerar a distribuio de Erlang como uma famlia de distribuies. Assim a constante ( = 0) e a exponencial ( = 1/) so elementos desta
famlia com k = e k = 1, respectivamente.
A distribuio de Erlang tambm muito importante em teoria das filas pela seguinte propriedade: Suponha que T1 ,T2 ,...,Tk so k variveis aleatrias independentes com uma distribuio exponencial idntica cuja mdia 1/k.
Ento a soma T = T1 + T2 + ... + Tk segue uma distribuio de Erlang com parmetros e k.
muito comum que o servio prestado a uma unidade em um sistema de filas seja
constitudo de k tarefas consecutivas onde a durao de cada uma delas segue a
mesma distribuio exponencial, com mdia 1/k. Ento a durao total (ou seja
a execuo das k tarefas) segue uma distribuio de Erlang com parametros k e .
Para este modelo temos:
(1 + k)2
Lq =
2k( )
Wq =
(1 + k)
2k( )
1
W = Wq +
L = W
110
Exemplo 1
Uma oficina de manuteno de uma linha area s tem meios para fazer a manuteno de um motor de cada vez. Por isso, para fazer com que os avies regressem
ao servio to logo seja possvel, a poltica adotada tem sido de alternar a manuteno dos 4 motores de cada avio ou seja s se faz a manuteno de 1 dos motores
cada vez que o avio vai para a oficina.
Sob esta poltica os avies tem chegado segundo um Processo de Poisson a taxa
mdia de 1 por dia. O tempo necessrio para reparar um motor (uma vez que se
tenha iniciado o trabalho) tem uma distribuio exponencial com mdia de 0,5 dia.
Existe uma proposio de se trocar a poltica de maneira que se reparem os 4 motores, consecutivamente, cada vez que o avio for a oficina. Embora isto quadruplicasse o tempo esperado de servio, a freqncia com que os avies necessitariam ir
a oficina seria 1/4 da atual. Deve-se implantar a nova proposta ?
Soluo
Situao atual
Modelo I: = 1/dia
= 2/dia
W = 1/( ) = 1 dia
Como temos 4 motores para cada avio temos: W = 4 1 = 4 dias
Situao proposta
Modelo VII: = 0, 25/dia
T = T1 + T2 + T3 + T4 Erlang com k = 4.
1/k = 0, 5
1/4 = 0, 5
= 0, 5/dia
Wq = 1, 25 dias
W = 3, 25 dias
A situao proposta melhor (3, 25 < 4).
Exemplo 2
Um alfaiate faz ternos sob medida. Cada terno, para ser feito, implica na execuo
de 4 tarefas distintas. O alfaiate faz as 4 tarefas de cada terno antes de comear
outro. O tempo para executar cada tarefa segue uma distribuio exponencial com
mdia de 2 horas. Os pedidos chegam a taxa mdia de 5,5 por semana (8 horas
por dia, 6 dias por semana). Quanto tempo em mdia um terno demora para ficar
pronto ?
Soluo
1
k=4
=2
k
1
=2
= 0, 125/hora
4
= 5, 5/semana= 0, 11458/hr
Wq = 55 horas
1
W = Wq + = 63 horas
3.13 Exerccios
111
3.13 Exerccios
1) Chegadas a uma oficina que conserta relgios so com uma taxa de 10 por cada 8
horas. O empregado que conserta tem um tempo mdio de servio de 30 minutos
por relgio.
a) Se ele conserta os relgios na ordem de chegada, quanto tempo, em mdia, o
empregado fica ocioso por dia ?
b) Quantos relgios, em mdia, estaro na frente de um relgio que acabou de
chegar ?
2) Chegadas a um centro de informaes que tem apenas um atendente so com
tempo mdio de 10 minutos entre uma chegada e a prxima (Poisson). O tempo
que as pessoas gastam recebendo informao de um tipo ou de outro suposto
como sendo de 3 minutos (Exponencial).
a) Qual a probabilidade de que uma pessoa chegando ao centro no tenha que
esperar ?
b) Qual a probabilidade de que a pessoa chegando ao centro tenha que esperar ?
c) Qual a probabilidade de termos 3 pessoas no sistema ?
d) O diretor da organizao ir contratar um outro atendente se ele se convencer
que uma pessoa tenha que esperar no mnimo 3 minutos. De quanto o fluxo
de chegadas deve aumentar de maneira a justificar o segundo atendente ?
3) O proprietrio de uma firma distribuidora de gs espera um cliente a cada 5
minutos. O servio de atendimento leva em mdia 4 minutos.
a) Qual a probabilidade de que um fregus no tenha que esperar ?
b) Qual a probabilidade de que se tenha uma fila de espera ?
c) O proprietrio ir contratar um atendente se ele verificar que um fregus
tenha que esperar, em mdia, 2 minutos ou mais para ser servido. A taxa de
chegada justifica tal contratao ?
d) Qual a probabilidade de termos 4 clientes no sistema ?
4) A taxa mdia de chegada de mquinas quebradas para uma oficina 80 por
semana e a sua capacidade de conserto de 120 por semana.
a) Que proporo de tempo a oficina fica ociosa ?
b) Qual a probabilidade de termos n mquinas na oficina para n = 0, 1, 2, 3 e 4 ?
c) Qual o nmero esperado de mquinas quebradas em um certo instante na
oficina ?
d) Qual o tempo mdio de espera de uma mquina que chega at ela comear a
ser atendida ?
e) Quanto tempo em mdia uma mquina fica na oficina ?
OBS. Adotar semana de 6 dias com 10 horas de trabalho por dia.
112
5) Em uma firma as mquinas quebram com uma taxa de 0,8 por hora e o custo de
cada mquina parada estimado em $25,00 a hora. Existem 2 oficinas, A e B,
que podem consertar as mquinas. A oficina A pede $25 por hora e informa que
pode consertar 1,5 mquinas por hora. A oficina B pede $20 por hora e informa
que pode consertar 1,4 mquinas por hora.
a) Sabendo-se que as informaes de A e B so verdadeiras, para qual oficina
deve-se mandar as mquinas ?
b) Qual a escolha se a oficina A pedir $15 por hora e a oficina B pedir $18 por
hora, mantidas as demais condies ?
6) Um mdico tem mais consultas do que capaz de dar conta. Ele programa
as chegadas dos pacientes a um ritmo mdio de uma de 15 em 15 minutos. O
modelo real de chegadas tende a seguir uma distribuio de Poisson. O atendimento real atual de um paciente de 10 em 10 minutos (exponencial). Uma proposta de re-instalao do consultrio, utilizando mais espao e tornando possvel
menor perda de tempo, permitiria ao mdico aumentar o ritmo de atendimento
para um paciente de 6 em 6 minutos. Se o lucro for de $22,50 por cliente e o
mdico no desejar aumentar o tempo mdio de espera dos clientes, qual ser a
alterao no lucro horrio ?
7) Os veculos chegam a uma estao de pedgio a razo de 10 por minuto de acordo
com uma distribuio de Poisson. O atendente pode atender (dar nota, troco,
etc...) a razo de 12 por minuto, numa distribuio que se aproxima da exponencial.
a) Qual o comprimento mdio da fila de espera ?
b) Qual , em mdia, o tempo que um veculo espera na estao de pedgio ?
c) Se o atendente fosse substitudo por uma mquina com um ritmo constante
de 12 por minuto, quais seriam as respostas dos itens a e b ?
8) Sabe-se que a taxa de quebras de certas mquinas = 0, 2 mquinas/hora
(Poisson). O tempo de reparo segue a lei exponencial com = 0, 5 mquinas/hora.
a) Suponha que existem 5 mquinas e apenas um tcnico para consertar. Qual
o nmero mdio de mquinas esperando serem reparadas ?
b) Suponha que existem 20 mquinas e 3 tcnicos para consertar (cada um com
= 5 mquinas/hora). Qual o nmero mdio de mquinas esperando
serem reparadas ?
c) Em qual das situaes a mquina espera mais para ser reparada ?
3.13 Exerccios
113
9) Uma firma txtil tem um grande nmero de mquinas idnticas cuja taxa de
falhas estimada em 60 por dia. Existem 3 estaes de reparo cada uma tendo
uma taxa de servio de 25 por dia.
a) Quantas horas, para uma jornada de 8 horas por dia, est uma estao de
servio ocupada ?
b) Qual a probabilidade que todas as estaes estejam ociosas em um certo instante ?
c) Qual o comprimento mdio da fila ?
d) Qual o numero mdio de mquinas no sistema de reparos ?
10) Ainda em relao ao problema no 9 responda as seguintes perguntas:
a) Qual a probabilidade de se ter somente uma estao ociosa ? somente duas
estaes ?
b) Qual o nmero esperado de estaes de reparo ociosas ?
c) Qual , em mdia, o tempo que uma mquina que chega no sistema tem de
esperar ?
d) Qual a perda diria, estimada, da companhia se cada mquina que no
trabalha d um prejuzo de $300 por dia ?
11) A taxa de chegada a uma oficina de reparos de 180 por dia. A oficina tem 3
setores de atendimento com uma taxa de 100 por dia. Qual a probabilidade de
que:
a) A oficina esteja sem clientes ?
b) Um fregus tenha que esperar ?
c) Somente 2 setores estejam ociosos ?
d) Somente um setor esteja ocioso ?
e) Que proporo mdia do tempo um setor est ocioso ?
f) Qual o tempo mdio de espera de um fregus que chega ?
g) Qual o comprimento mdio da linha de espera ?
12) Uma firma textil tem um grande nmero de mquinas idnticas cuja taxa de
falhas estimada em 50 por semana. Existem atualmente 3 setores de reparos,
cada um tendo uma taxa de servio de 20 mquinas por semana.
a) Qual a perda semanal, estimada, da companhia se cada mquina que no
trabalha d uma perda semanal de $10.000 ?
b) Qual a perda total do sistema se o custo semanal do sistema de atendimento
$6.000 ?
c) Vale a pena aumentar o nmero de setores de atendimento para 4 ?
114
16
12
17
8
18
9
19
7
20
5
21
4
22
3
23
1
24
1
25
1
3.13 Exerccios
115
16) Uma estao de servio espera um usurio a cada 4 minutos em mdia. O servio dura em mdia 3 minutos. Assumindo entrada Poisson e servio exponencial responda:
a) Qual o nmero mdio de usurios esperando servio ?
b) Quanto tempo um usurio esperar para ser servido ?
c) Qual a probabilidade de que um usurio fique menos de 15 minutos no sistema ?
d) Qual a probabilidade que um usurio fique mais de 10 minutos no sistema ?
17) Suponha que em mdia 9 usurios cheguem a cada 5 minutos (Poisson) e o mecanismo de servio pode servir usurios a uma taxa mdia de 10 usurios a cada
5 minutos. O tempo de servio exponencial.
a) Qual o no mdio de usurios esperando servio ?
b) Qual o tempo mdio de espera na fila ?
c) Como a) e b) so afetados se a taxa de servio dobrada ?
18) Se usurios chegam para servio de acordo com uma distribuio de Poisson a
taxa mdia de 5/dia, qual deve ser a taxa de servio em mdia (exponencial)
para que o nmero de usurios no sistema seja menor que 4 ?
19) Considere um sistemas de filas com entrada Poisson. A taxa mdia de chegadas
4/hr. O tempo mdio no sistema no deve exceder 1 hora. Qual deve ser a taxa
de servio mnima ?
20) Uma mquina Xerox operada por um funcionrio que ganha $3 por hora. O
tempo de execuo de cada tarefa varia de acordo com uma distribuio exponencial com mdia de 6 minutos. Assuma chegada Poisson com taxa mdia de 5
tarefas/hora. Se um dia de 8 horas usado determine:
a) A ociosidade (em %) da mquina.
b) O tempo mdio de espera de uma tarefa no sistema.
c) Se o funcionrio s ganhar por horas trabalhadas, qual o ganho mdio dirio
do funcionrio ?
21) Durante a estao de caa, caadores chegam a um posto de controle a taxa
mdia de 10/hr. Qual deve ser a taxa mnima de verificao para assegurar que
a espera do caador no ser maior que 20 minutos, quando a distribuio da
verificao :
a) Constante
b) Exponencial
As chegadas so Poisson.
116
3.13 Exerccios
117
28) Um posto de gasolina com uma nica bomba tem as seguintes informaes: A
taxa mdia de chegada de 1 fregus a cada 4 minutos. Um atendente pode
servir um fregus em 4 minutos. Dois atendentes na mesma bomba podem fornecer servio em 2,5 minutos. Cada fregus produz um lucro lquido de $0,70.
Chegadas e servio so Poisson e exponencial respectivamente. No mais que 2
fregueses esperaro na fila. O posto fica aberto 15 horas por dia.
Compare as alternativas: 1 bomba com um atendente, 1 bomba com 2 atendentes e 2 bombas cada uma com 1 atendente.
29) Durante as horas de pico, um barbeiro tem fregueses chegando aleatoriamente
taxa de um a cada 25 minutos. Ele tem registrado o tempo de servio para 100
fregueses. Em horas a mdia de 0,30 e o desvio padro 0,092.
a) Durante as horas de pico, qual o tamanho esperado da fila ?
b) Se o tempo de servio fosse de exatamente de 20 minutos, qual o tamanho
esperado da fila ?
30) Uma grande oficina de automveis tem uma sala com um balco onde os mecnicos vo apanhar as peas necessrias para consertar os carros. Os mecnicos chegam aleatoriamente para servio taxa de 10 por hora. Os mecnicos
so atendidos aleatoriamente taxa de 12 por hora. O tempo dos mecnicos
avaliado em $7 por hora. Como os mecnicos esto reclamando, a oficina est
pensando em contratar assistentes para o balco de peas. Um assistente deve
melhorar a taxa de servio em 50%. Um segundo assistente deve melhorar a
taxa de servio em 80%. Um assistente custa no entanto, $36 por dia.
Considerando o dia com 8 horas de trabalho, faa a justificativa econmica da
situao.
31) Um posto de gasolina com uma nica bomba recebe fregueses aleatoriamente
taxa de um cada 5 minutos. Um simples atendente pode prestar servio completo em 4 minutos. Cada fregus d em mdia um lucro de $1. Sabe-se que se
j existem 3 carros no sistema, os fregueses procuram outro posto. O posto est
aberto das 7:00 as 22:00 horas.
a) Considerando que as taxas de chegada e de servio so aplicveis para todas
as horas em que o posto est aberto, qual o lucro dirio esperado ?
b) Se os fregueses esperassem na fila, independente do seu tamanho, qual seria
o lucro dirio esperado ?
c) Se o posto contratasse um segundo atendente a taxa mdia de servio poderia
ser reduzida para 2,5 minutos. Se o atendente ganha $2,50 por hora deve-se
contrat-lo ? (mximo de 3 carros no sistema).
d) Se o posto oferecesse aos fregueses bombons, chaveiros, belas recepcionistas,
etc..., a taxa de chegada passaria a um a cada 3 minutos mas em compensao o lucro por fregus passaria a $0,30. Considerando 1 atendente, deve-se
implantar esta poltica ?
e) E com 2 atendentes ?
118
1, 25
= 0, 375 ou 37,5% do tempo
P0 = 1 = 1
2
Tempo esperado que o empregado fica ocioso por dia=0,375 8h = 3 horas
b) No de relgios que estaro, em mdia, na frente de um relgio que acabou de
chegar:
1, 25
=
= 1, 66667 relgios
L=
2 1, 25
Exerccio 2
Modelo M/M/1
Intervalo mdio entre chegadas = 10 min = 6/h
durao mdia do servio = 3 min = 20/h
a) Probabilidade de que uma pessoa chegando ao centro no tenha que esperar:
6
P0 = 1 = 1
= 0, 7 ou 70%
20
b) Probabilidade de que uma pessoa chegando ao centro tenha que esperar:
P (n > 0) = 1 P0 = 1 0, 7 = 0, 3 ou 30%
c) Probabilidade
3 de 3 pessoas
3 no sistema:
6
P3 = P0
= 0, 7
= 0, 0189 = 1, 89%
20
d) = ? = 20/h
Wq = 3 min = 0,05 h
Wq =
0, 05 =
= 10/h
( )
20(20 )
Como Wq 3 min, ento o fluxo de chegadas deve ser 10/h
Exerccio 3
Modelo M/M/1
1
=
= 12/h
5 min
Durao mdia do servio = 4 min = 15/h
a) Probabilidade de que um fregus no tenha que esperar
12
= 1 0, 8 = 0, 2 = 20%
P0 = 1 = 1
15
b) Probabilidade de que se tenha uma fila de espera
P (n > 0) = 1 P0 = 1 0, 2 = 0, 8 80%
119
3.13 Exerccios
c) Wq =
12
12 4
P4 = P0
= 0, 2
= 0, 08192 = 8, 192%
15
Exerccio 4
Semana = 6 dias Dia = 10 horas
Modelo M/M/1
= 80/semana = 120/semana
a) Proporo do tempo que a oficina fica ociosa
80
P0 = 1 = 1
= 0, 3333 = 33, 33%
60
b) Probabilidade de n mquinas na oficina
P0 = 0,
3333 =
33, 33%
1 80 n
Pn =
3 120
P1 = 0, 2222 = 22, 22% P2 = 0, 148148 = 14, 8148%
P3 = 0, 098765 = 9, 8765%
P4 = 0, 065584 = 6, 584%
o
c) N esperado de mquinas quebradas na oficina em um certo instante
80
L=
=
= 2 mquinas
120 80
d) Tempo mdio de espera de uma mquina que chega at ser atendida
80
Wq =
=
= 0, 016667
= 1 hora
( )
120(120 80)
1
1
= 0, 025 semanas = 1, 5 horas
e) W = Wq + = 0, 016667 +
120
Exerccio 5
Modelo M/M/1
= 0, 8/h Custo mquina parada = $25.00/h
a) Oficina A
= 1, 5/h
Custo do servio = $25/h
Tempo mdio que uma mquina fica parada:
1
1
=
= 1, 42857 horas
W =
1, 5 0, 8
Custo= 1.42857h $ 25/h= $35,71425
Custo da Fila = $35,71425 0,8/h = $ 28,5714/h
Custo total = $ 25+$ 28,5714 = $ 53,57/h
Oficina B
= 1/h
Custo do servio = $ 20/h
Tempo mdio que uma mquina fica parada:
120
W =
= 1, 666 horas
1, 4 0, 8
Custo = 1,666h $ 25/h = $ 41,66
Custo da fila = $41,66 0,8/h = $33,328/h
Custo total = $ 20+ $ 33,328 = $ 53,32/h
CTB < CTA Oficina B melhor
b) Oficina A
custo do servio = $30/h
custo total = $ 15 + $28,5714 = $43,57/h
Oficina B
custo do servio = $ 15/h
custo total = $ 18 + $ 33,328 = $ 51,32/h
CTA < CTB Neste caso a oficina A seria melhor
Exerccio 6
Modelo M/M/1
1
=
= 4/h
15 min
1
= 6/h
=
10 min
Lucro por cliente = $ 22,50
Proposta: = 1/6 min = 10/h
Tempo mdio de espera dos clientes inalterado Wq = Wq
Situao Atual
= 4/h
= 6/h
4
1
=
= 0, 3333 = h
Wq =
( )
6(6 4)
3
Lucro por cliente = $22,50
Lucro horrio = $ 22,50 4/h = $ 90/h
Situao Proposta
=?
= 10/h
Wq =
=
( )
10(10 )
1
100
100 10 =
= 7, 6923/h
Wq = Wq =
3
10(10 )
13
Lucro por cliente = $ 22,50
Lucro horrio = $22,50 7.6923/h=$ 173.08/h
Alterao no lucro horrio: 173, 08 90 = $83, 08
Exerccio 7
Modelo M/G/1
= 10/min
= 12/min
a) Comprimento mdio da fila de espera
121
3.13 Exerccios
102
= 4, 167 veculos
( )
12(12 10)
b) Tempo que um veculo espera na estao de pedgio
1
1
W =
=
= 0, 5 min
12 10
c) Mquina constante = 12/min 2 = 0
10
5
=
=
=
12
6
Comprimento mdio da fila de espera
2
5
2
10 0 +
2 2
2
+
6
Lq =
=
= 2, 083 veculos
5
2(1 )
2 1
6
Tempo que um veculo espera na estao de pedgio
Lq
1
2.083
1
+ =
+
= 0, 29 min
W =
10
12
Exerccio 8
= 0, 2/h
= 0, 5/h
a) Modelo M/M/1 populao finita
M = 5 mquinas
S=1
0, 2
X=
=
= 0, 286 (Fator de Servio) 0,290
+
0, 2 + 0, 5
Da tabela F = 0, 644
no mdio de mquinas esperando serem reparadas:
Lq = M (1 F ) = 5(1 0, 644) = 1, 78 mquinas
b) Modelo M/M/3 populao finita.
M= 20 mquinas
= 5/h
0, 2
X=
=
= 0, 038 (Fator de Servio)
+
0, 2 + 5
Da tabela F = 0, 999
Nmero de mquinas esperando serem reparadas:
Lq = N (1 F ) = 20(1 0, 999) = 0, 02 mquinas
c) Tempo mdio de espera de uma mquina para ser reparada:
ef = M F X
Lq
Wq =
ef
a) ef = 5(0, 644) 0, 286 0, 5 = 0, 46046 mq/h Wq = 1, 78/0, 46046 =
3, 8657 hr
b) ef = 20(0, 999) 0, 038 5 = 3, 7962 mq/h Wq = 0, 02/3, 7962 =
0, 00527 hr
Como Wqa > Wqb , temos que na situao A a mquina espera mais para ser reparada
Lq =
122
Exerccio 9
= 60/dia
= 25/dia
S=3
Modelo M/M/3
a) Proporo mdia do tempo que uma estao est ocupada:
60
=
=
= 0, 8 = 80%
S
3(25)
Nmero de horas por dia em que uma estao de servio est ocupada:
8 h/dia = 0, 8 8h/dia = 6, 4 h/dia
b) Probabilidade de que todas as estaes estejam ociosas em certo instante:
1
n
s
P0 = s1
P 1
1
s!(1 )
n=0 n!
1
P0 =
2
3 = 0, 05618 = 5, 618%
60
1 60
1
60
1+
+
+
25
2 25
6(1 0, 8) 25
c) Comprimento mdio da fila:
s+1
4
60
P0
0, 05618
25
=
= 2, 589 mquinas
Lq =
s s! (1 )2
3, 6 (1 0, 8)2
d) Nmero mdio de mquinas no sistema de reparos:
60
25
Exerccio 10
Modelo M/M/3
a) Probabilidade
de termos somente uma estao ociosa:
1 n
Pn =
P0
n!
1 60 2
P2 =
0, 05618 = 0, 1618 = 16, 18%
2 25
Probabilidade
de termos somente duas estaes ociosas:
60
P1 =
0, 05618 = 0, 134832 = 13, 4832%
25
b) Nmero esperado de estaes de reparo ociosas:
Seja k o nmero de estaes ociosas.
E(k) = 0 P(n 3) + 1 P(n = 2) + 2 P(n = 1) + 3 P(n = 0)
= 0 + P2 + 2P1 + 3P0 =0, 1618 + 2 0,134832 + 3 0, 05618 = 0, 6 estaes
ou E(k) = (1 ) 3
c) Tempo mdio que uma mquina que chega ao sistema tem que esperar:
2, 589
Lq
=
= 0, 04315 dias
Wq =
60
d) Mquina parada $300/dia
3.13 Exerccios
123
Lq +
Wq +
L
1
1
W =
=
=
= Wq + = 0, 04315 +
= 0, 08315 dias
25
Custo = 0.8315 dia $300/dia = $24,945
Custo da fila = $24.945 60/dia = $1496,70/dia
Perda diria estimada da companhia = $1496,70/dia
Exerccio 11
= 180/dia
= 100/dia
S=3
Modelo M/M/3
a) Probabilidade de que a oficina esteja sem clientes:
1
n
s
P0 = s1
P 1
1
s!(1 )
n=0 n!
180
=
= 1, 8
100
180
=
= 0, 6
=
S
300
1
P0 =
= 0, 145985 = 14, 5985%
2
1, 8
1
3
1 + 1, 8 +
+
1, 8
2
6(1 0, 6)
b) Probabilidade
de que um fregus tenha que esperar:
1 n
Pn =
P0
n
P1 = 1, 8(0, 145985) = 0, 262773
1, 82
(0, 145985) = 0, 236496
P2 =
2
P(n 3) = 1 P(n < 3) = 1 (P0 + P1 + P2 ) = 1 (0,145985 + 0,262773 + 0,236496)
= 0,354746 = 35,4746%
c) Probabilidade de que somente dois setores estejam ociosos:
P(2 setores ociosos) = P1 = 0,262773 = 26,2773%
d) Probabilidade de que somente um setor esteja ocioso:
P(1 setor ocioso) = P2 = 0,236496 = 23,6496%
e) Proporo mdia do tempo que um setor est ocioso = 1 = 1 0, 6 = 0, 4 =
40%
s+1
P0
1, 84 0, 145985
=
= 0, 53212 clientes
f) Lq =
s s! (1 )2
3, 6 (1 0, 6)2
Tempo mdio de espera de um fregus que chega:
Lq
0, 53212
Wq =
=
= 0, 002956 dias
180
124
s!(1 )
n=0 n!
50
=
= 2, 5
20
50
5
=
=
=
S
3(20)
6
1
P0 =
= 0, 044944
2, 52
1
3
1 + 2, 5 +
+ 2, 5
1
2
6
6
s+1
P0
2, 54 0, 044944
Lq =
=
2 = 3, 51125 mquinas
s s! (1 )2
1
36
6
= 2, 5
50
=
=
= 0, 625
S
4(20)
S=4
1
P0 =
= 0.07369
2
3
2, 5
2, 5
1
1 + 2, 5 +
+
+
2, 54
2
6
24(1 0, 625)
2, 52 0, 073695
= 0, 053309 mquinas
Lq =
4 24 (1 0, 625)2
3.13 Exerccios
125
50
Custo do servio = $ 8.000/semana
Custo das mquinas paradas = 0,606618 semanas $ 10.000/semana 50/semana = $ 30.330,90/semana
Custo total estimado = $ 8.000 + $ 30.330,90 = $ 38.330,90/semana
Perda total do sistema = $ 38.330,90/semana
Como com 4 setores a perda total diminui, ento vale a pena aumentar o nmero
de setores para 4.
Exerccio 13
S=4
60
= 10/h
=
6h
Modelo M/M/4
Durao do servio = 20 min = 3/h
a) Proporo mdia do tempo que um funcionrio est executando o seu servio.
10
=
=
= 0, 83333
S
4(3)
Nmero de horas por semana que um funcionrio est ocupado
= 0,83333 30h/semana = 25h/semana
1
n
s
b) P0 = s1
P 1
1
s!(1 )
n=0 n!
1
P0 =
2
3
4 = 0.0213
1 10
10
1 10
1
10
+
1+
+
+
3
2 3
6 3
24(1 0, 83333) 3
s+1
5
10
P0
0, 02131
3
Lq =
=
= 3, 28858 clientes
s s! (1 )2
4 24 (1 0, 83333)2
10
L = Lq + = 3, 28358 +
= 6, 621914 clientes
3
Tempo mdio que um cliente fica preso no sistema
W = L/ = 6, 621914/10 = 0, 66219 horas= 39, 7314 minutos
126
c) Probabilidade
n de que um funcionrio esteja esperando por um cliente (P )
1
Pn =
P0
n
10
P1 =
0, 02131 = 0, 071033
3 2
1 10
P2 =
0, 02131 = 0, 131543
2 3
1 10 3
P3 =
0, 02131 = 0, 131543
6 3
P = P(n < 4) = P0 + P1 + P2 + P3 = 0, 02131 + 0, 071083 + 0, 11832289 +
0, 131543 = 0, 342275 = 34, 2275%
d) Nmero esperado de funcionrios sem trabalhar num certo instante:
Seja k o nmero de funcionrios ociosos
Ek = 0P (n 4)+1P (n = 3)+2P (n = 2)+3P (n = 1)+4P (n = 0)
Ek = P3 + 2P2 + 3P1 + 4P0
Ek = 0, 131543 + 2(0, 1183889) + 3(0, 071033) + 4(0, 02131) = 0, 6667 funcionrios
e) Cada funcionrio = $5/h
Cliente esperando = $0,25/min = $15/h
S=3
Fila e Custo tendendo ao infinito pois > s.
S=4
Custo do servio = 4 $5/h = $20/h
Tempo mdio que um cliente fica esperando na fila:
3, 28858
Wq =
= 0, 328858 horas
10
Custo = 0, 328858h $15/h= $4, 9329
Custo da fila = $4, 9329 10/h = $49, 329/h
Custo total = $20 + $49, 329 = $69, 329/h
127
3.13 Exerccios
S=5
P0 =
1+
10
10
10
1
1
10
10
5 =
+
+
+
+
3
2 3
6 3
24 3
120(1 0, 6666) 3
0.03175
10 6
0, 0239338
3
= 0, 6533 clientes
Lq =
5 120 (1 0, 6666)2
Custo do servio = 5 $5/h = $25/h
Tempo mdio que um cliente fica esperando na fila:
0, 6533
Wq =
= 0, 06533 horas
10
Custo = 0, 06533h $15/h= $0, 97995
Custo da fila = $0, 97995 10/h= $9, 7995/h
Custo total = $25 + $9, 7995 = $34, 7995
Como o menor custo total foi para S = 5, o melhor aumentar o nmero de funcionrios para 5.
128
Exerccio 14
a) X nmero de chegadas a cada 10 minutos (xi )
fobs frequncia observada
xi
f obs xi f obs
5
1
5
6
0
0
7
1
7
8
2
16
9
1
9
10
3
30
11
5
55
12
6
72
13
9
117
14
10
140
15
11
165
16
12
192
17
8
136
18
9
162
19
7
133
20
5
100
21
4
84
22
3
66
23
1
23
24
1
24
25
1
25
= 100
1561
P
xi fobs
1561
Mdia = x
=
=
= 15, 61 por 10 minutos
P
fobs
100
b) Poisson com = 1, 6 chegadas/min = 16 chegadas/10 min
Seja k = no de observaes
A frequncia esperada terica) dada pela frmula:
e k
P (k) =
k!
129
3.13 Exerccios
P(k)
0
0
0,01
0,01
0,02
0,03
0,05
0,07
0,08
0,09
0,10
0,10
0,09
0,08
0,07
0,06
0,04
0,03
0,02
0,01
0,01
Fesp
0,1
0,3
0,6
1,2
2,1
3,4
5,0
6,6
8,1
9,3
9,9
9,9
9,3
8,3
7,0
5,6
4,3
3,10
2,20
1,40
0,90
=7,7
=11,9
Fobs
1
0
1
2
1
3
5
6
9
10
11
12
8
9
7
5
4
3
1
1
1
=8
0,011
0
0,06
0,10
0,05
0,12
0,45
0,18
0,06
0,00
0,06
=10
0.303
1, 394 = 2calc
130
Exerccio 15
Modelo M/M/2 Fila finita
M =3
S=2
= 1/min
Durao mdia do servio = 0, 5 min = 2/min
a) Probabilidade de uma chamada ser atendida por um funcionrio (P)
1
a=
= = 0, 5
1
c=
=
= 0, 25
S
2(2)
1
P0 =
= 0, 60377
1
1
2
2
1 + 0, 5 + (0, 5) + (0, 5) (0, 25)
2
2
1 n
Pn =
a P0
n!
P1 = 0, 5 0, 60377 = 0, 30188
P = P0 + P1 = 0, 60377 + 0, 301885 = 0, 905655 = 90, 5655%
b) Probabilidade da chamada ficar na linha de espera
1
P2 = (0, 5)2 (0, 60377) = 0, 075 = 7, 5%
2
c) Probabilidade da chamada receber sinal ocupado
an P0
Pn =
s! sns
(0, 5)3 (0, 60377)
P3 =
= 0, 01887 = 1, 887%
22
Exerccio 16
Modelo M/M/1
Intervalo entre as chegadas = 4 min = 15/h
Durao mdia do servio = 3 min = 20/h
a) Nmero mdio de usurios esperando o servio.
2
152
Lq =
=
= 2, 25 usurios
( )
20(20 15)
b) Tempo mdio de espera de um usurio para ser servido.
Lq
2, 25
Wq =
=
= 0, 15 horas = 9 minutos
15
c) Probabilidade de que um usurio fique menos de 15 min no sistema.
15 min = 0.25 h
=
= 0, 75
3.13 Exerccios
Exerccio 17
Modelo M/M/1
9
=
= 1, 8/ min
5 min
10
=
= 2/ min
5 min
a) Nmero mdio de usurios esperando o servio.
2
1, 82
Lq =
=
= 8, 1 usurios
( )
2(2 1, 8)
b) Tempo mdio de espera na fila.
8, 1
Lq
Wq =
=
= 4, 5 minutos
1, 8
0
c) = 4/ min
1, 82
0
Lq =
= 0, 368 usurios
4(4 1, 8)
0
0
Wq = Lq = 0, 368/1, 8 = 0, 20 minutos
Exerccio 18
Modelo M/M/1
= 4/ h
=?
5
L<4
< 4 5 < 4 20 4 > 25 > 6, 25/dia
5
Exerccio 19
Modelo M/M/1
= 4/ h
=?
1
1
W <1W =
<11<4<5h
4
Taxa de servio mnima = 5/h
Exerccio 20
= 5/ h
dia = 8 horas
Durao mdia do servio = 6 min = 10/h
a) Proporo mdia do tempo que a mquina fica ociosa.
5
= 0, 5 = 50%
P0 = 1 = 1
10
b) Tempo mdio de uma tarefa no sistema.
1
1
W =
=
= 0, 2h = 12 min
10 5
c) Fator de utilizao da estao de servio.
= 1 P0 = 0, 5
Ganho mdio dirio do funcionrio = $3/h 0.5 8h/dia = $12/dia
131
132
Exerccio 21
Modelo M/G/1
= 10/h = ?
Durao do servio constante 2 = 0
1
W 20 min W h
3
1
2 2 + 2
1
2 /2
100/2
Lq
1
1
+ =
+ =
+ =
W =
+ =
10
2(1 )
2 1
20 1
100
1
5
1
5 + 10
5
= 2
+ =
+ =
=
=
20 200
( 10)
( 10)
( 10)
5
1
5
1
3 15 ( 10)
=
=
=0
=0
( 10)
3
( 10)
3
3( 10)
3 15 2 + 10
=0
3( 10)
2 + 13 15
=0
3( 10)
Para dar zero o numerador tem que ser = 0, logo: 2 + 13 15 = 0
Resolvendo temos:
1 = 1, 28 a fila se tornaria infinita.
2 = 11, 72
Logo 11, 72
b) Modelo M/M/1
= 10/h
=?
1
W 20 min W h
3
1
1
1
1
W =
W
< 10 > 3 > 13/h
3
10
3
Exerccio 22
Frao do tempo que o posto est ocupado.
10
a) =
=
= 0, 8532 = 85, 32%
11, 72
10
=
= 0, 7692 = 76, 92%
b) =
13
Exerccio 23
Modelo M/M/4
s=4
Intervalo mdio entre chegadas = 10 min = 6/h
Durao mdia do servio = 20 min = 3/h
6
=
=2
3
6
=
= 0, 5
=
S
12
133
3.13 Exerccios
P0 = s1
P 1 n
n=0
P0 =
Pn =
n!
1+2+
2
1 n
22
1
+
1
6
s!(1 )
1
23
1
24(1 0, 5)
P0
n!
P1 = 2(0, 13043) = 0, 26086 = 26, 086%
1
P2 = 22 (0, 13043) = 0, 26086 = 26, 086%
2
1 3
P3 = 2 (0, 13043) = 0, 17391 = 17, 391%
6
S+1
P0
25 (0, 13043)
Lq =
=
= 0, 1739 fregueses
s s! (1 )2
4(24)(1 0, 5)2
L
W =
= 2, 1739/6 = 0, 3623 horas
Lq
0, 1739
Wq =
=
= 0, 02888 horas
6
Exerccio 24
Modelo M/M/1 Fila Finita
s=1
M =5
= 5/ h
= 4/ h
a) Percentagem
do
tempo que o barbeiro est ocioso.
P0 =
6=
M +1
1
5
1
4
P0 =
6 = 0, 0888 = 8, 88%
5
1
4
b) Taxa de chegada efetiva de fregueses.
ef = (1 P0 ) = 4(1 0, 0888) = 3, 6448 fregueses/hora
c) Frao de fregueses potenciais que vo embora.
ef
5 3, 6448
=
= 0, 27104 = 27, 104%
134
(M + 1)
L=
6=
M +1
1
6
5
6
5
4
L=
6 = 3, 13167 fregueses
54
5
1
4
Lq = L (1 P0 ) = 3, 13167 (1 0, 0888) = 2, 22047 fregueses
e) Tempo mdio que um fregus fica no barbeiro.
L
3, 13167
W =
=
= 0, 8592 horas= 51, 55 min
ef
3, 6448
Exerccio 25
Modelo M/G/1
s=1
= 10/ h
Tempo de servio: mdia = 3 min = 20/h
2 = 2 min = 0, 03333 horas
Probabilidade da linha estar ocupada em um dado instante
10
1 P0 = 1 = 1 = 1
= 0, 5 = 50%
20
Exerccio 26
Modelo M/E4 /1
k=4
T = T1 + T2 + T3 + T4
Intervalo mdio entre chegadas = 10 min = 6/h
1
1
1
1
= 2 min =
h
=
= 7, 5/h
k
30
4
30
a) Durao mdia de cada tarefa no sistema.
(1 + k)
5(6)
Wq =
=
= 0, 333 horas
2k( )
2(4)(7, 5)(7, 5 6)
1
1
W = Wq + = 0, 333 +
= 0, 46666 horas= 28 minutos
7, 5
b) Comprimento mdio da fila.
2
1+k
Lq =
= 2 tarefas
2k ( )
135
3.13 Exerccios
Exerccio 27
Modelo M/M/1 Populao Finita
= 4/ h
= 6/ h
s=1
M =5
4
X=
=
= 0, 4
+
4+6
Da tabela F = 0.493
a) Probabilidade da mquina estar ociosa.
sendo S = 1
MF X
=
= 5(0, 493)(0, 4) = 0, 986
S
P0 = 1 = 1 0, 986 = 0, 014 = 1, 4%
P0 =
S1
P
M!
(M n)! n!
M
P
M!
ou
n
(M n)! s! n!
1
P0 =
2
3
4
5
4
4
4
4
4
1+5
+ 5(4)
+ 5(4)(3)
+ (5)(4)(3)(2)
+ (5)(4)(3)(2)
6
6
6
6
6
n0
n=S
P0 = 0, 014 = 1, 4%
b) Prob. das 3 secretrias terem
nque utilizar a mquina ao mesmo tempo.
M!
Pn = P0
snM
ns
(M n)! s! s
n
M!
snM
Pn = P0
ns
(M n)! s! s
3
4
P3 = 0, 014183 3(4)(5)
= 0, 25214 = 25, 214%
6
c) Nmero mdio de secretrias usando a mquina.
Lq = M (1 F ) = 5(1 0, 493) = 2, 535
ef = M F X = 5(0, 493)(0, 4)6 = 5, 916
Lq
2, 535
= 0, 428499
Wq =
=
ef
5, 916
1
1
W = Wq + = 0, 42849 + = 0, 5951656
6
L = ef W = 5, 916 0, 5951656 = 3, 52 secretrias
Exerccio 28
Modelo M/M/1 Fila Finita
s=1
1
= 15/ h
=
4min
1 atendente durao mdia do servio = 4 min 1 = 15/h
2 atendentes durao mdia do servio = 2, 5 min 2 = 24/ h
Fregus Lucro $0.70
M 1=2M =3
Dia = 15/ h
136
Alternativa A
1 bomba com um atendente
1
P0 =
=
M +1
1
P0 =
= 0, 25
3+1
ef = (1 P0 = 15(1 0, 25) = 11, 25 fregueses/hora
Lucro = $0, 70/ fregus 11, 25 fregueses/h 15h/dia = $118, 13/dia
Alternativa B
1 bomba com2 atendentes
P0 =
6=
M +1
1
15
1
24
P0 =
4 = 0, 4425 = 44, 25%
15
1
24
ef = (1 P0 ) = 24(1 0, 4425) = 13, 38 fregueses/hora
Lucro = $0, 70/ fregus 13, 38 fregueses/hora 15h/dia = $140, 49/dia
Alternativa C
2 bombas, cada uma com 1 atendente
Modelo M/M/2
Fila Finita
1
P0 = s
M
P 1 n
P
1
cns
a + as
n!
s!
n=0
n=s+1
s=2
a=
= 15
=1
15
15
=
= 0, 5
c=
5
30
1 n
Pn =
a P0
P1 = P0 = 0, 36364
n!
s1
P
ef = s
(s n)Pn = 15 {2 (2)(0, 36364) + 0, 36364} = 13, 6362
n=0
fregueses/hora
Lucro = $0, 70/ fregus 13, 6362fregueses/h 15h/dia = $143, 18/dia
Melhor alternativa : C
3.13 Exerccios
137
Exerccio 29
Modelo M/G/1
1
=
= 2, 4/ h
25 min
1
10
= 0, 30h =
/h
= 0, 092 2 = 0, 00846
3
a) Tamanho esperado da fila.
(2, 4)2 (0, 008464) + 0, 722
2 2 + 2
=
= 1, 0128 fregueses
Lq =
2(1 )
2(1 0, 72)
24
=
= 0, 72
=
10
3
b) Tamanho esperado da fila.
2 = 0
Durao do servio = 20 min = 3/ h
24
=
=
= 0, 8
3
0, 82
= 1, 6 fregueses
Lq =
2(1 0, 8)
Exerccio 30
= 10/h
Tempo mecnico $7/h
= 12/h
Custo assistente $36/ dia
Dia = 8 horas
Situao atual
Modelo M/M/1
Tempo mdio que um mecnico gasta no sistema.
1
1
W =
=
= 0, 5 h
12 10
Custo da fila = 0.5 h $7/ h 10/h 8h/ dia = $280/dia = Custo total
Situao com 1 assistente
Modelo M/M/1
Nova taxa = 18/h
Custo do servio = $36/dia
1
Tempo mdio que um mecnico gasta no sistema W =
= 0, 15 horas
18 10
Custo da fila = 0.125 h $7/h 10/h 8h/dia = $70/dia
Custo total = $36 + $70 = $106/dia
Situao com 2 assistentes
Modelo M/M/1
Nova taxa = 21, 6/h
Custo do servio = 2 $36 = $72/dia
1
= 0, 0862
Tempo mdio que um mecnico gasta no sistema W =
21, 6 10
horas
Custo da fila = 0, 0862 h $7/h 10/h 8h/dia = $48, 27/dia
138
P0 =
6=
M +1
1
12
1
15
P0 =
4 = 0, 33875
12
1
15
ef = (1 P0 ) = 15(1 0, 33875) = 9, 91875 fregueses/hora
Lucro = $1/ fregus 9, 91875 fregueses/h 15h/dia = $148, 78/dia
b) Modelo M/M/1 (Fila Infinita)
Lucro = $1/fregus 12/h 15h/dia = $180/dia
c) Lucro dirio (2 atendentes - 1 bomba)
Modelo M/M/1 Fila Finita
M =3
1
Nova taxa =
= 24/h
2, 5 min
12
1
24
P0 =
4 = 0, 5333
12
1
24
ef = (1 P0 ) = 24(1 0, 5333) = 11, 2 fregueses/hora
Lucro bruto = $1/ fregus 11, 2 fregueses/h 15h/dia = $168/dia
Custo do segundo atendente = $2, 50/h 15h/dia = $37, 50/ dia
Lucro lquido = $168 $37, 50 = $130, 50/dia
No, pois o lucro diminuiu.
d) Lucro Dirio (Brindes - 1 atendente)
Modelo M/M/1
Fila Finita M = 3
1
= 20/h
Nova taxa =
3 min
= 15/h
3.13 Exerccios
139
140
Captulo 4
Introduo Simulao
142
Introduo Simulao
143
144
Introduo Simulao
145
Probabilidade
1.000
1.100
1.200
1.300
1.400
1.500
1.600
1.700
1.800
1.900
0.10
0.13
0.25
0.13
0.09
0.12
0.02
0.06
0.05
0.05
Probabilidade
5
10
15
0.60
0.30
0.10
146
Introduo Simulao
Soluo
Temos que comparar o custo da alternativa atual e da alternativa proposta. Precisamos estabelecer um horizonte de tempo para fazer esta comparao. Considerando que a menor vida til de um rolamento 1.000 horas (mais de 1 ms), vamos
estabelecer um horizonte de 20.000 horas (um pouco mais de 2 anos) para fazer a
comparao.
Como a vida til dos rolamentos e a espera pelo mecnico so variveis aleatrias
que seguem as distribuies vistas anteriormente, temos que relacionar quelas
distribuies com uma tabela de nmeros aleatrios.
Assim sendo, vamos imaginar que temos um gerador de nmeros aleatrios capaz
de gerar qualquer inteiro entre 0 e 99, ou seja 100 nmeros. Vamos atribuir a cada
durao de vida til uma faixa destes nmeros que me garanta que a distribuio
probabilstica seja mantida.
Como a 1a vida til (1.000 horas) tem 10% de probabilidade de ocorrer, vamos atribuir a esta durao a faixa de 0 a 9 inclusive, ou seja 10 nmeros (10% dos 100
nmeros). Para a 2a durao provvel (1.100 horas), com 13% de probabilidade de
ocorrncia, vamos atribuir a faixa de 10 a 22 inclusive, ou seja 13 nmeros. Podemos continuar para as demais duraes provveis dos rolamentos como pode ser
visto na tabela a seguir, ressaltando que a probabilidade acumulada d o limite das
faixas escolhidas.
Vida do
Rolamento (horas)
1.000
1.100
1.200
1.300
1.400
1.500
1.600
1.700
1.800
1.900
Probabilidade
Probabilidade
Acumulada
No Aleatrio
Atribudo
0.10
0.13
0.25
0.13
0.09
0.12
0.02
0.06
0.05
0.05
0.10
0.23
0.48
0.61
0.70
0.82
0.84
0.90
0.95
1.00
09
10 22
23 47
48 60
61 69
70 81
82 83
84 89
90 94
95 99
Tabela semelhante pode ser construda para a espera pela chegada do mecnico.
Tempo de
Espera (minutos)
5
10
15
Probabilidade
Probabilidade
Acumulada
No Aleatrio
Atribudo
0.60
0.30
0.10
0.60
0.90
1.00
00 59
60 89
90 99
147
Com os dados das tabelas acima, podemos fazer a simulao 1 , que apresentou os
seguintes resultados para o rolamento 1:
Sequencia
No Aleatrio
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
62
85
89
24
99
27
89
12
2
34
7
75
22
97
37
ROLAMENTO 1
Vida
Vida Acumulada
(Horas)
(Horas)
1.400
1.700
1.700
1.200
1.900
1.200
1.700
1.100
1.000
1.200
1.000
1.500
1.100
1.900
1.200
1.400
3.100
4.800
6.000
7.900
9.100
10.800
11.900
12.900
14.100
15.100
16.600
17.700
19.600
20.800
No Aleatrio
61
10
46
28
55
64
63
75
54
67
90
14
80
84
9
Espera
(Min)
10
5
5
5
5
10
10
10
5
10
15
5
10
10
5
P
=120
Podemos observar na planilha que para cada sequencia ou seja, rolamento novo,
gerado um nmero aleatrio que indica qual a vida til daquela rolamento. Tendo
quebrado, aps esta vida til, o mecnico chamado e um 2o nmero aleatrio
gerado para definir o tempo de espera at a troca do rolamento ser iniciada.
Quando a vida acumulada ultrapassa 20.000 horas, ou seja a durao da simulao,
paramos a execuo do processo.
Processos semelhantes foram executados para os outros 2 rolamentos, como visto a
seguir.
148
Introduo Simulao
Sequencia
N Aleatrio
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
89
47
60
3
40
64
9
30
32
8
94
66
53
17
72
0
Sequencia
N Aleatrio
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
49
26
2
83
21
20
60
34
63
69
44
76
55
85
21
5
ROLAMENTO 2
Vida
Vida Acumulada
(Horas)
(Horas)
1.700
1.200
1.300
1.000
1.200
1.400
1.000
1.200
1.200
1.000
1.800
1.400
1.300
1.100
1.500
1.000
N Aleatrio
1.700
2.900
4.200
5.200
6.400
7.800
8.800
10.000
11.200
12.200
14.000
15.400
16.700
17.800
19.300
20.300
ROLAMENTO 3
Vida
Vida Acumulada
(Horas)
(Horas)
1.300
1.200
1.000
1.600
1.100
1.100
1.300
1.200
1.400
1.400
1.200
1.500
1.300
1.700
1.100
1.000
1.300
2.500
3.500
5.100
6.200
7.300
8.600
9.800
11.200
12.600
13.800
15.300
16.600
18.300
19.400
20.400
58
88
20
98
26
97
41
79
0
3
58
84
61
43
15
97
N Aleatrio
44
45
72
87
19
81
56
74
93
36
71
97
59
81
21
1
Espera
(Min)
5
10
5
15
5
15
5
10
5
5
5
10
10
5
5
15
P
= 130
Espera
(Min)
5
5
10
10
5
10
5
10
15
5
10
15
5
10
5
5
P
=130
149
Seq.
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
ROL. 1
Vida
NA
hr
ROL. 2
Vida
NA (hr)
ROL. 3
Vida
NA (hr)
96
70
96
48
32
36
41
71
4
69
13
36
75
76
71
98
98
68
2
7
46
17
93
94
17
2
22
21
89
12
57
78
5
43
47
61
34
47
49
42
20
98
53
20
86
0
58
66
29
95
86
22
60
57
1.900
1.500
1.900
1.300
1.200
1.200
1.200
1.500
1.000
1.400
1.100
1.200
1.500
1.500
1.500
1.900
1.900
1.400
1.000
1.000
1.200
1.100
1.800
1.800
1.100
1.000
1.100
1.100
1.700
1.100
1.300
1.500
1.000
1.200
1.200
1.400
1.200
1.200
1.300
1.200
1.100
1.900
1.300
1.100
1.700
1.000
1.300
1.400
1.200
1.900
1.700
1.100
1.300
1.300
1a
Quebra
Vida
Acum.
ESPERA
NA
(Min)
1.000
1.000
1.200
1.100
1.100
1.200
1.100
1.000
1.000
1.000
1.100
1.100
1.200
1.500
1.000
1.100
1.200
1.300
1.000
2.000
3.200
4.300
5.400
6.600
7.700
8.700
9.700
10.700
11.800
12.900
14.100
15.600
16.600
17.700
18.900
20.200
21
36
21
7
58
83
14
75
5
65
15
12
32
2
31
51
20
35
5
5
5
5
5
10
5
10
5
10
5
5
5
5
5
5
5
5
P
=105
NA = No aleatrio
Feita a simulao da situao proposta, podemos calcular os custos:
Custo dos rolamentos = (18 3) $ 16 = $864
Custo da espera pelo mecnico = 105 $5 = $525
Custo da mquina parada = 18 40 $5 = $3.600
Custo do mecnico = 18 40 $0.20 = $144
Custo Total = 864 + 525 + 3.600 + 144 = $5.133
Assim a simulao 2 nos mostrou que a situao proposta bem melhor em termos
econmicos.
Para ser, estatisticamente confivel, as simulaes acima teriam que ser realizadas (replicadas)
muitas vezes e a avaliao econmica calculada com a mdia dos resultados.
150
Introduo Simulao
Probabilidade
1
2
3
4
5
6
7
8
0.125
0.125
0.125
0.125
0.125
0.125
0.125
0.125
Probabilidade
1
2
3
4
5
6
0.10
0.20
0.30
0.25
0.10
0.05
Como no exemplo anterior, temos que construir tabelas relacionando as probabilidades com nmeros aleatrios gerados:
Tempo entre
chegadas (min)
1
2
3
4
5
6
7
8
Probabilidade
Probabilidade
Acumulada
No Aleatrio
Atribudo
0.125
0.125
0.125
0.125
0.125
0.125
0.125
0.125
0.125
0.250
0.375
0.500
0.625
0.750
0.875
1.000
000 124
125 249
250 374
375 499
500 624
625 749
750 874
875 999
151
Durac,o do
servic,o (min)
1
2
3
4
5
6
Probabilidade
Probabilidade
Acumulada
No Aleatrio
Atribudo
0.10
0.20
0.30
0.25
0.10
0.05
0.10
0.30
0.60
0.85
0.95
1.00
09
10 29
30 59
60 84
85 94
95 99
913
727
15
948
309
922
753
235
302
109
93
607
738
359
888
108
212
493
535
0
8
14
15
23
26
34
41
43
46
47
48
53
59
62
70
71
73
77
82
=
84
10
74
53
17
79
91
67
89
38
32
94
79
5
79
84
52
55
30
50
4
1
4
3
2
4
5
4
5
3
3
5
4
1
5
4
3
3
2
3
68
0
8
14
18
23
26
34
41
45
50
53
56
61
65
66
71
75
78
81
83
0
0
0
3
0
0
0
0
2
4
6
8
8
6
4
1
4
5
4
1
56
4
9
18
21
25
30
39
45
50
53
56
61
65
66
71
75
78
81
83
86
4
1
4
6
2
4
5
4
7
7
9
13
12
7
9
5
7
8
6
4
124
0
4
5
0
2
1
4
2
0
0
0
0
0
0
0
0
0
0
0
0
18
A probabilidade de que um cliente tenha que esperar na fila 65%. Isto vem de:
Probabilidade(espera) =
=
152
Introduo Simulao
= 0.21
Este resultado pode ser comparado com o tempo de servio esperado achando-se a
mdia da distribuio do tempo de servio usando a equao:
E(s) =
sp(s)
s=0
Temos ento:
1(0.10) + 2(0.20) + 3(0.30) + 4(0.25) + 5(0.10) + 6(0.05) = 3.2 minutos
O resultado da simulao um pouco maior porque o tamanho da simulao foi
pequeno. Quanto maior a durao da simulao mais o resultado se aproximar de
3.2 minutos.
Algum que fosse tomar decises estaria interessado nos resultados obtidos acima.
Obviamente seria necessrio uma simulao mais demorada para se conseguir resultados mais precisos.
Entretanto, algumas inferncias podem ser obtidas: A maioria dos clientes tem que
esperar mas a espera no excessiva. O atendente no fica muito tempo ocioso.
O objetivo a ser alcanado vai depender do balano entre o custo de espera e o custo
de se colocar mais atendentes.
153
154
Introduo Simulao
mod m
155
156
Introduo Simulao
Todos os programas listados a seguir foram desenvolvidos com a finalidade exclusiva de ilustrar
a matria apresentada. No houve qualquer preocupao em otimiz-los ou usar as tcnicas mais
refinadas de programao.
Outro fator a ser considerado que certos comandos usados nos programas podem no funcionar,
dependendo do compilador que estiver sendo usado.
157
IX : Longint ;
Function RANDU(KX: Integer ) : Real ;
Var
IY : Longint ;
Begin
I f KX <> 0 Then IX : = KX;
IY : = 65539 IX ;
I f IY < 0 Then IY : = IY + 2147483647 + 1 ;
IX : = IY ;
RANDU : = IY / 2147483647;
End;
Obs. Como o programa fora overflow, a condio overflow checking deve estar
desligada quando da compilao/execuo.
A seguir um programa em Pascal que utiliza o gerador acima. O programa inicialmente inicializa o gerador e ento gera e imprime os 5 primeiros nmeros aleatrios.
{USO DA RANDU}
{$N+ }
{ $E+ }
Var
SEMENTE, I : Integer ;
ALEAT: Real ;
{ $I RANDU. PAS}
Begin
Writeln ( Qual a semente (1 - 32767) ? ) ;
Readln (SEMENTE) ;
ALEAT: = RANDU(SEMENTE) ;
SEMENTE : = 0 ;
For I :=1 to 5 do
Begin
ALEAT : = RANDU(SEMENTE) ;
Writeln (ALEAT ) ;
End;
End.
Para uma semente igual a 313, os nmeros impressos por este programa so:
0.0573133, 0.2579080, 0.0316280, 0.8685962 e 0.9269251.
Na dcada de 70 diversos trabalhos provaram que a rotina RANDU apresentava
resultados estatisticamente ruins.
Um dos problemas era a formao de trelias (lattice em ingls) quando se traava
grficos com sucessivos nmeros aleatrios gerados pela RANDU.
158
Introduo Simulao
Vamos imaginar um cubo com lados igual a 1, ou seja variando de 0 a 1. Vamos marcar pontos neste cubo com coordenadas (x1 , x2 , x3 ),(x2 , x3 , x4 ) , (x3 , x4 , x5 ), etc...,
onde xi um nmero gerado pela RANDU.
Vamos marcar 5.000 pontos. O que deveramos esperar ?
Que o cubo fosse preenchido uniformemente pelos pontos plotados. O que ocorre no
entanto que todos os pontos aparecem em 15 planos formando o que parece ser
uma trelia (da o nome). Nenhum ponto cai entre os planos, como podemos ver no
grfico abaixo:
Este aspecto, identificado claramente na RANDU, fez com que esta rotina fosse
abandonada como geradora de nmeros aleatrios.
A partir da apareceram diversas alternativas sendo que veremos a seguir duas
das mais usadas na atualidade.
A 1a est baseada na seguinte relao e atualmente usada pela IBM:
xi+1 = (16807 xi ) mod 2147483647
Rotulamos ela como RAND1 mas, exceto a RANDU, nenhum outro gerador tem
nome prprio.
159
IX : Longint ;
Function RAND1(KX: Integer ) : Real ;
Const
A = 16807;
B15 = 32768;
B16 = 65536;
P = 2147483647;
Var
XHI ,XALO,LEFTLO, FHI ,K: Longint ;
Begin
I f KX <> 0 Then IX : = KX;
XHI : = IX Div B16 ;
XALO : = ( IX XHI B16 ) A;
LEFTLO : = XALO Div B16 ;
FHI : = XHI A + LEFTLO;
K : = FHI Div B15 ;
IX : = ( ( ( XALOLEFTLOB16)P) + ( FHIKB15 ) B16)+K;
I f IX < 0 Then IX : = IX + P ;
RAND1 : = IX 4.656612875E10;
End;
{USO DA RAND1}
{$N+ }
{ $E+ }
Var
SEMENTE, I : Integer ;
ALEAT: Real ;
{ $I RAND1. PAS}
Begin
Writeln ( Qual a semente ? (1 - 32767) ) ;
Readln (SEMENTE) ;
ALEAT: = RAND1(SEMENTE) ;
SEMENTE : = 0 ;
For I :=1 to 5 do
Begin
ALEAT : = RAND1(SEMENTE) ;
Writeln (ALEAT ) ;
End;
End.
Para uma semente igual a 313 os 5 primeiros nmeros gerados so: 0.1713277,
0.5044658, 0.5574913, 0.7561453 e 0.5342253.
160
Introduo Simulao
161
{USO DA RAND2}
{$N+ }
{ $E+ }
Var
SERIE , I ,PARM1: Integer ;
ALEAT: Double ;
{ $I RAND2. PAS}
Begin
PARM1 : = 0 ;
Writeln ( Qual a serie ? (0 - 21473) ) ;
Readln (SERIE ) ;
ALEAT: = RAND2( SERIE ,PARM1) ;
PARM1 : = 1 ;
For I :=1 to 5 do
Begin
ALEAT : = RAND2( SERIE ,PARM1) ;
Writeln (ALEAT ) ;
End;
End.
162
Introduo Simulao
163
CM : = 16777213.0 / 16777216.0;
I97 : = 9 7 ;
J97 : = 3 3 ;
RAND3 : = UNI ;
Exit ;
End;
UNI : = U[ I97 ] U[ J97 ] ;
I f UNI < 0 . 0 Then UNI : = UNI + 1 . 0 ;
U[ I97 ] : = UNI;
I97 : = I97 1;
I f I97 = 0 Then I97 : = 9 7 ;
J97 : = J97 1;
I f J97 = 0 Then J97 : = 9 7 ;
C : = C CD;
I f C < 0 . 0 Then C : = C + CM;
UNI : = UNI C ;
I f UNI < 0 Then UNI : = UNI + 1 . 0 ;
RAND3 : = UNI;
End;
{USO DA RAND3}
{$N+ }
{ $E+ }
Var
SEMENTE1,SEMENTE2, PARAM : Longint ;
I : Integer ;
ALEAT : Double ;
{ $I RAND3. PAS}
Begin
PARAM : = 0 ;
Writeln ( Qual a 1a. SEMENTE ? (1 - 31328) ) ;
Readln (SEMENTE1) ;
Writeln ( Qual a 2a. SEMENTE ? (1 - 30081) ) ;
Readln (SEMENTE2) ;
ALEAT: = RAND3(SEMENTE1,SEMENTE2,PARAM) ;
PARAM : = 1 ;
For I :=1 to 5 do
Begin
ALEAT : = RAND3(SEMENTE1,SEMENTE2,PARAM) ;
Writeln (ALEAT ) ;
End;
End.
164
Introduo Simulao
Um outro gerador tem um perodo ainda maior que a RAND3. A sua descrio
pode ser vista no paper An object-oriented random-number package with many
long streams and substreams Pierre LEcuyer, Richard Simard, E.Jack Chen and
W. David Kelton - 2000. Vamos, para efeito de referncia futura, cham-lo de
RAND4.
Este gerador pertence a uma classe de geradores que nada mais so do que a combinao de 2 ou mais geradores congruentes, baseados na condio de que o perodo
de 2 geradores embaralhados maior do que de um gerador s. No caso deste
gerador, seu perodo de 3.1 1057 . As frmulas de gerao so:
Ai = (1403580 Ai2 810728 Ai3 )mod(232 209)
Bi = (527612 Bi1 1370589 Bi3 )mod(232 22853)
Yi = (Ai Bi )mod(232 209)
Yi
Ui = 32
2 208
O mtodo permite que sejam geradas 1019 sries diferentes, cada uma delas com
1038 nmeros aleatrios !!
So necessrias 6 sementes iniciais, no intervalo [1; 4294967087]. Por ser muito
grande, no colocamos aqui o programa.
O comando RANDOMIZE inicializa, com a semente, o gerador de nmeros aleatrios que um comando da prpria linguagem.
Executando-se este programa no QuickBasic com a semente 1813, obtemos os nmeros:
0.9601251, 0.4571911, 0.7457173, 0.9784663 e 0.6727366.
Obviamente, usando-se outro compilador BASIC, obteremos nmeros diferentes.
Os geradores embutidos, normalmente, no so muito confiveis e devem ser
usados com reservas.
165
X a
U 0
=
ba
10
ou
X = a + (b a) U
Assim muito simples gerar X de um dado U , conhecendo-se a e b.
Exemplo: Fazer um comando Pascal para gerar variveis aleatrias contnuas uniformemente distribudas no intervalo (1,4).
X := 1. + 3. * RAND(0);
Obs. (RAND pode ser a RAND1, RAND2, etc...)
166
Introduo Simulao
Exemplo: Fazer uma rotina Pascal que simule se jogar, simultaneamente, 2 dados.
Var
X, X1 , X2 : Integer ;
.................
X1 : = 1 + TRUNC( 6 . 0 RAND( 0 ) ) ;
X2 : = 1 + TRUNC( 6 . 0 RAND( 0 ) ) ;
X : = X1 + X2 ;
.................
167
INCIO
LER N
SOMA = 0
LAO
1 a
DE
N
CALL
SUB1
SOMA =
SOMA +
RESULTADO
FIM DO
LAO
IMPRIMIR
SOMA
SUB1
CALL SUB2
X = 7 ou
11?
SIM
RESULTADO=1
RETURN
SUB2
NO
X = 2,3
ou 12?
SIM
RESULTADO=0
RETURN
X1 = 1 +
INT(6*RAND)
NO
K = X
X2 = 1 +
INT(6*RAND)
CALL SUB2
X = K ?
SIM
RESULTADO=1
RETURN
RESULTADO=0
RETURN
X1 = X1 +
X2
NO
NO
X = 7 ?
SIM
RETURN
{CRAPS GAME}
{$N+ }
168
Introduo Simulao
{ $E+ }
Var
ISER ,N,PARAM, I ,JOGADA,GUARDA,RESULTADO: Integer ;
U: Double ;
SOMA: Real ;
{ $I RAND2. PAS}
{ }
Procedure SUB1 ( Var JOGADA: Integer ) ;
Begin
JOGADA : = TRUNC( ( 1 . 0 + 6 . 0 RAND2( ISER ,PARAM) ) ) +
TRUNC( ( 1 . 0 + 6 . 0 RAND2( ISER ,PARAM) ) ) ;
End;
{ }
PROCEDURE SUB2 ( Var RESULTADO: Integer ) ;
Begin
SUB1(JOGADA) ;
I f (JOGADA = 7 ) or (JOGADA = 11) then
Begin
RESULTADO : = 1 ;
EXIT ;
End;
I f (JOGADA = 2 ) or (JOGADA = 3 ) or (JOGADA = 12) then
Begin
RESULTADO : = 0 ;
EXIT ;
End;
GUARDA : = JOGADA;
RESULTADO : = 9;
Repeat
SUB1(JOGADA) ;
I f JOGADA = 7 then
Begin
RESULTADO : = 0 ;
EXIT ;
End;
I f JOGADA = GUARDA then
Begin
RESULTADO : = 1 ;
EXIT ;
End;
Until (RESULTADO = 0 ) or (RESULTADO = 1 ) ;
EXIT ;
End;
{ }
Begin
PARAM : = 0 ;
Writeln ( Qual a Serie (0 a 21473) ? ) ;
Readln ( ISER ) ;
U : = RAND2( ISER ,PARAM) ;
PARAM : = 1 ;
Writeln ( Quantos Jogos ? ) ;
Readln (N) ;
SOMA : = 0 . 0 ;
169
For I : = 1 to N do
Begin
SUB2(RESULTADO) ;
SOMA : = SOMA + RESULTADO;
End;
Writeln (SOMA / N) ;
End.
A execuo deste programa 5 vezes, com as sries, escolhidas ao acaso, 1234, 4561,
7893, 8750 e 15700 da RAND2, cada vez com 5.000 jogos, apresentou os seguintes
resultados:
Execuc,o
Ganho (%)
1
2
3
4
5
Mdia
48,62
49,90
48,00
49,76
50,16
49,29
170
Introduo Simulao
4. Comparar uy com f (ux ). Se uy no for maior que f (ux ) ento o ponto (ux ,
uy ) cair em cima ou abaixo da curva.
5. Repita n vezes as etapas de 1 a 4. Aps isto determine o percentual de pontos
caindo em cima ou abaixo da curva (P ERC), ou seja dentro da rea que a
prpria integral.
O valor da integral obtido por:
I = P ERC (b a) Fmax
O fluxograma a seguir ilustra o procedimento:
INCIO
LER N
PERC =
K / N
K = 0
I = PERC *
(B-A)*FMAX
LAO DE
1 a N
IMPRIMIR I
UX=A +
(B-A)*RAND
FIM
UY=FMAX *
RAND
UY <=
F(UX) ?
SIM
K = K + 1
NO
FIM DO
LAO
Exemplo:
Considere a integral abaixo:
Z 1p
1 x2 dx = 0, 785398
0
F(x)
1
f(ux )
uy
-1
ux
171
172
Introduo Simulao
O programa utiliza a RAND2 para a gerao dos nmeros aleatrios, enquanto que
na rotina VFUNCAO colocada a funo a ser integrada.
Executando-se este programa, com a srie 1234 da RAND2, e escolhendo-se 10.000
nmeros o valor da integral dado pelo programa como igual a 0.7828.
Como ilustrao do mtodo, a tabela abaixo mostra os primeiros 6 passos do processo:
N
ux
f (ux )
uy
uy f (ux ) ?
1
2
3
4
5
6
0.7054
0.5795
0.3019
0.0140
0.8144
0.0453
0.7086
0.8149
0.9533
0.9999
0.5801
0.9989
0.5334
0.2895
0.7747
0.7607
0.7090
0.4140
SIM
SIM
SIM
SIM
NO
SIM
1
2
3
4
4
5
Deve ter ficado claro que o mtodo de Monte Carlo no uma maneira eficiente de
se resolver integrais. Existem, no entanto, um conjunto de integrais extremamente
complexas que podem ser obtidas pelo mtodo.
A integral usada no ltimo exemplo apropriada para se reforar a regra bsica do uso da simulao: Problemas que tem soluo analtica nunca devem
ser resolvidos por meio da simulao. Solues analticas daro sempre respostas mais exatas que as respostas fornecidas pela simulao.
Quando, no entanto, no se tem soluo analtica, a simulao pode dar respostas bastante aproximadas.
173
claro que o mtodo no serve para qualquer distribuio porque para algumas,
como a normal por exemplo, impossvel se achar a inversa da distribuio acumulada.
F (x) = 1 ex
De modo a se fazer uso do mtodo da transformao inversa devemos resolver para
x. Assim temos:
x=
ln[1 F (x)]
Como a funo acumulada, F (x), uniformemente distribuda em [0, 1], a quantidade 1 F (x) tambm ser uniformemente distribuda em [0, 1]. Assim podemos
escrever
1
x=
ln(U )
onde x a varivel aleatria exponencialmente distribuda e U um nmero aleatrio uniformemente distribudo em [0, 1], gerado por um gerador bsico.
Suponha agora que x deve ser maior ou igual a um determinado valor positivo, x0 ,
isto 0 < x0 < x. A equao acima fica:
1
ln(U )
x = x0
1
( x0 )
174
Introduo Simulao
Calculando o valor de :
1
=
= 0.25
(6 2)
Podemos ento
calcular
as variveis da distribuio exponencial:
1
X1 = 2
ln(0.35) = 6.20
0.25
1
X2 = 2
ln(0.97) = 2.12
0.25
Os demais valores encontrados so:
i
1
2
3
4
5
6
Ui
0.35
0.97
0.22
0.15
0.60
0.43
Xi
6.20
2.12
8.06
9.59
4.04
5.38
O programa a seguir, escrito em Pascal, implementa a gerao de nmeros aleatrios que seguem a distribuio exponencial.
O programa permite que se informe quantos nmeros queremos gerar, o limite inferior da distribuio e a mdia.
Como sada ele imprime os 5 primeiros nmeros gerados e a mdia de todos os nmeros gerados.
O programa usa a RAND2 como o gerador bsico de nmeros aleatrios.
{EXPONENCIAL}
{$N+ }
{ $E+ }
Var
ISER ,N,PARAM, I ,NUMIMP: Integer ;
U,SOMA: Double ;
LIMINF,ALFA,MEDIA: Real ;
{ $I RAND2. PAS}
{ }
Function EXPONENCIAL (ALFA, LIMINF : Real ; U: Double ) : Double ;
Begin
EXPONENCIAL : = LIMINF ( 1 /ALFA) LN(U) ;
End;
{ }
Begin
PARAM : = 0 ;
Writeln ( Qual a Serie (0 a 21473) ? ) ;
Readln ( ISER ) ;
U : = RAND2( ISER ,PARAM) ;
PARAM : = 1 ;
Writeln ( Quantos Numeros ? ) ;
Readln (N) ;
Writeln ( Qual o LIMITE INFERIOR ? ) ;
Readln (LIMINF ) ;
175
Em uma execuo, usando-se a srie 1234 da RAND2, em que foram gerados 10.000
nmeros com limite inferior igual a 2 e mdia igual a 6, os seguintes resultados
foram apresentados:
Primeiros 5 nmeros gerados: 3.27141; 3.841; 7.65564; 3.50536 e 5.19165.
Mdia dos 10.000 nmeros gerados: 5.97737.
x
C
176
Introduo Simulao
2(x A)
para A x C
(C A)(B A)
2(B x)
para C x B
(B C)(B A)
Podemos usar o Mtodo da Transformao Inversa mas a descontinuidade da funo faz com que seja necessrio desenvolver 2 geradores separados: um para x C
e um para x C. Inicialmente vamos desenvolver um para x C.
A funo de distribuio acumulada F (x) igual a:
Z x
2(x A)
F (x) =
dx
A (C A)(B A)
x2 2Ax + A2
=
(C A)(B A)
Como F (x) e U (gerado por uma RAND), variam em [0 , 1], podemos escrever:
U =
x2 2Ax + A2
(C A)(B A)
(C A)
, pois a razo
(C A)
(B A)
(B A)
nal a rea sob o tringulo de x = A at x = C.
Para x C temos:
Z x
2(B x)
dx
F (x) = U =
C (B C)(B A)
x2 + 2Bx B 2
U =
+1
(B C)(B A)
Operando, para obter o valor de x, obtemos:
p
x = B (1 U )(B C)(B A)
Esta frmula deve ser usada quando U
(C A)
.
(B A)
A media e o desvio padro da Distribuio Triangular so:
x =
A+B+C
s
3
A2 + B 2 + C 2 AB AC BC
18
proporcio-
177
Exemplo: Gerar 3 variveis aleatrias seguindo a Distribuio Triangular com limite inferior (A) igual a 2, moda (C) igual a 4 e limite superior (B) igual a 8. Use
os seguintes nmeros aleatrios uniformemente distribudos em [0, 1]: 0.35, 0.97,
0.22.
(C A)
A frmula a ser usada depende se o valor de U maior ou menor que
ou
(B A)
(4 2)
seja
= 0.3333. Assim para o 1o U, 0.35 (maior que 0.33) temos:
(8 2)
p
X1 = 8 (1 0.35)(8 4)(8 2) = 4.050
Para 0.97 (maior)
temos:
p
X2 = 8 (1 0.97)(8 4)(8 2) = 7.151
Para 0.22 (menor)
temos:
p
X3 = 2 + 0.22(4 2)(8 2) = 3.624
O programa a seguir, escrito em Pascal, implementa a gerao de nmeros aleatrios que seguem a distribuio triangular.
O programa permite que se informe quantos nmeros queremos gerar e os 3 parmetros (A,B e C) da distribuio.
Como sada ele imprime os 5 primeiros nmeros gerados, a mdia e o desvio padro
dos nmeros gerados.
O programa usa a RAND2 como o gerador bsico de nmeros aleatrios.
{TRIANGULAR}
{$N+ }
{ $E+ }
Var
ISER ,N,PARAM, I ,NUMIMP: Integer ;
U,SOMA: Double ;
A, B, C,MEDIA, DESVIO, T : Real ;
{ $I RAND2. PAS}
{ }
Function TRIANGULAR (A, B, C : Real ;U : Double ) : Real ;
Begin
I f (U < ( ( CA ) / ( BA ) ) ) then
TRIANGULAR : = A + Sqrt (U (CA) ( BA ) )
Else TRIANGULAR : = B Sqrt ((1U) ( BC) ( BA ) ) ;
End;
{ }
BEGIN
PARAM : = 0 ;
Writeln ( Qual a Serie (0 a 21473) ? ) ;
Readln ( ISER ) ;
U : = RAND2( ISER ,PARAM) ;
PARAM : = 1 ;
Writeln ( Quantos Numeros ? ) ;
Readln (N) ;
Writeln ( Qual o limite inferior (A) ? ) ;
Readln (A ) ;
Writeln ( Qual o limite superior (B) ? ) ;
Readln (B ) ;
Writeln ( Qual a moda (C) ? ) ;
Readln (C ) ;
178
Introduo Simulao
SOMA : = 0 . 0 ;
DESVIO : = 0 . 0 ;
NUMIMP : = 0 ;
For I : = 1 to N do
Begin
U : = RAND2( ISER ,PARAM) ;
T : = TRIANGULAR(A, B, C,U) ;
NUMIMP : = NUMIMP + 1 ;
I f NUMIMP < 6 then Writeln ( T ) ;
SOMA : = SOMA + T ;
DESVIO : = DESVIO + T T ;
End;
Writeln ( MEDIA = ,SOMA / N) ;
Writeln ( DESVIO PADRAO = ,SQRT( ( DESVIO/N)(SOMA/N) (SOMA/N ) ) ) ;
END.
Em uma execuo, usando-se a srie 1234 da RAND2, em que foram gerados 10.000
nmeros com os parmetros A = 2, B = 8 e C = 4 da triangular, os seguintes
resultados foram obtidos:
Primeiros 5 nmeros gerados: 5.4436, 5.0246, 3.7082, 5.2564 e 4.3677.
A mdia dos 10.000 nmeros gerados foi igual a 4,66286. A mdia terica igual a
4,66666.
O desvio padro obtido foi igual a 1,239. O desvio padro terico igual a 1,247.
para x, , > 0
1
x =
+1
v "
u
2 #
u
2
1
+1
+1
= t 2
179
{WEIBULL}
{$N+ }
{ $E+ }
Var
ISER ,N,PARAM, I ,NUMIMP: Integer ;
U,SOMA: Double ;
ALFA,BETA,MEDIA,DESVIO: Real ;
{ $I RAND2. PAS}
{ }
Function WEIBULL (ALFA, BETA: Real ;U: Double ) : Real ;
Begin
WEIBULL : = ALFA EXP ( ( 1 /BETA) LN(LN(U ) ) ) ;
End;
{ }
Begin
PARAM : = 0 ;
Writeln ( Qual a Serie (0 a 21473) ? ) ;
Readln ( ISER ) ;
U : = RAND2( ISER ,PARAM) ;
PARAM : = 1 ;
Writeln ( Quantos Numeros ? ) ;
Readln (N) ;
Writeln ( Qual o valor de Alfa ? ) ;
Readln (ALFA) ;
Writeln ( Qual o valor de Beta ? ) ;
Readln (BETA ) ;
SOMA : = 0 . 0 ;
NUMIMP : = 0 ;
DESVIO : = 0 . 0 ;
180
Introduo Simulao
For I : = 1 to N do
Begin
U : = RAND2( ISER ,PARAM) ;
U : = WEIBULL(ALFA,BETA,U) ;
SOMA : = SOMA + U;
DESVIO : = DESVIO + U U;
NUMIMP : = NUMIMP + 1 ;
I f NUMIMP < 6 then Writeln (U) ;
End;
Writeln ( MEDIA = ,SOMA / N) ;
Writeln ( DESVIO PADRAO = ,SQRT( ( DESVIO/N)(SOMA/N) (SOMA/N ) ) ) ;
End.
Em uma execuo, usando-se a srie 1234 da RAND2, em que foram gerados 10.000
nmeros com os parmetros = 4 e = 1 da Weibull, os seguintes resultados
foram obtidos:
Primeiros 5 nmeros gerados: 1.2714, 1.8409, 5.6556, 1.5053 e 3.1916.
A mdia dos 10.000 nmeros gerados foi igual a 3,977. A mdia terica igual a 4.
O desvio padro obtido foi igual a 3,9212. O desvio padro terico igual a 4.
I
I
0
E1
I
x
E2
E3
I
x
E4
I
x
I
I
t
tempo
181
Fazendo Sk =
k
X
i=1
Ei
i=1
ou
k
X
1
ln Ui
t
i=1
que pode ser escrita como:
t
k
X
ln Ui
i=1
ou
t ln
k
Y
Ui
i=1
Ui e
i=1
Assim sendo, a varivel poisson o menor valor de k que garante a relao acima
ou (k 1) quando na execuo do produtrio, acontece:
k
Y
Ui > e
i=1
182
Introduo Simulao
POISSON
e -lambda
Gerar U
P=
Ui
No
<
Sim
POISSON=K
183
{POISSON}
{$N+ }
{ $E+ }
Var
ISER ,N,PARAM, I ,NUMIMP, J : Integer ;
U,SOMA: Double ;
LAMBDA,MEDIA, F : Real ;
{ $I RAND2. PAS}
{ }
Function POISSON ( F : Real ;U: Double ; ISER ,PARAM: Integer ) : Integer ;
Var
VMULT : Real ;
NUMPOISSON : Integer ;
Begin
NUMPOISSON : = 0 ;
VMULT : = 1 . 0 ;
While (VMULT > F ) do
Begin
U : = RAND2( ISER ,PARAM) ;
VMULT : = VMULT U;
NUMPOISSON : = NUMPOISSON + 1 ;
End;
POISSON : = NUMPOISSON 1 ;
End;
{ }
Begin
PARAM : = 0 ;
Writeln ( Qual a Serie (0 a 21473) ? ) ;
Readln ( ISER ) ;
U : = RAND2( ISER ,PARAM) ;
PARAM : = 1 ;
Writeln ( Quantos Numeros ? ) ;
Readln (N) ;
Writeln ( Qual o valor de Lambda ? ) ;
Readln (LAMBDA) ;
F : = EXP(LAMBDA) ;
SOMA : = 0 . 0 ;
NUMIMP : = 0 ;
For I : = 1 to N do
Begin
J : = POISSON( F ,U, ISER ,PARAM) ;
SOMA : = SOMA + J ;
NUMIMP : = NUMIMP + 1 ;
I f NUMIMP < 6 then Writeln ( J ) ;
End;
Writeln ( MEDIA = ,SOMA / N) ;
End.
Em uma execuo, usando-se a srie 1234 da RAND2, em que foram gerados 10.000
nmeros com = 1.5, os seguintes resultados foram obtidos:
Primeiros 5 nmeros gerados: 2, 2, 0, 3 e 1.
A mdia () dos 10.000 nmeros gerados foi igual a 1.5074.
184
Introduo Simulao
1 x
f (x) =
e 2
2
onde a mdia e o desvio padro. A funo de densidade normal no pode
ser integrada analticamente e desta forma no podemos usar o mtodo da transformao inversa. Podemos, entretanto, uma vez mais, gerar a varivel aleatria
desejada por simulao direta. Para fazer isto considere o caso especial onde = 1
(x )
eZ =
.
Temos ento:
Z2
1
f (Z) = e 2
2
Esta a funo de densidade probabilstica para a distribuio normal padronizada (standard).
Pelo teorema do limite central sabemos que a soma de N variveis aleatrias uniN
formemente distribudas em [0, 1] segue uma distribuio Normal com =
e
2
r
N
.
=
12
Podemos escrever:
N
P
N
Ui
2
Z = i=1 r
N
12
Como esta considerao vlida para N > 10, podemos fazer N = 12 para facilitar o procedimento computacional, obtendo ento:
Z=
12
X
Ui 6
i=1
Temos agora um procedimento simples para gerar uma varivel aleatria normalmente padronizada. Simplesmente somamos 12 nmeros aleatrios uniformemente distribudos em [0, 1] e ento subtramos 6, obtendo um valor para Z. Se desejarmos gerar uma varivel normal com mdia e desvio padro , geramos primeiro Z e ento calculamos a varivel aleatria desejada X usando: X = + Z.
185
Exemplo: Gerar uma varivel aleatria que siga a distribuio normal com mdia 5
e desvio padro 2. Use o seguinte conjunto de variveis aleatrias uniformemente
distribudas em [0, 1]: 0.35, 0.97, 0.22, 0.15, 0.60, 0.43, 0.79, 0.52, 0.81, 0.65, 0.20,
0.57.
A soma dos 12 nmeros d:
12
X
Ui = 0.35 + 0.97 + . . . + 0.57 = 6.26
i=1
186
Introduo Simulao
NUMIMP : = 0 ;
DESVIO : = 0 . 0 ;
For I : = 1 to N do
Begin
Z : = NORMAL(MU,DELTA,U, ISER ,PARAM) ;
SOMA : = SOMA + Z ;
DESVIO : = DESVIO + ( Z Z ) ;
NUMIMP : = NUMIMP + 1 ;
I f NUMIMP < 6 then Writeln ( Z ) ;
End;
Writeln ( MEDIA = ,SOMA / N) ;
DESVIO : = SQRT( ( DESVIO / N) (SOMA /N) (SOMA / N ) ) ;
Writeln ( DESVIO PADRAO = ,DESVIO ) ;
END.
Em uma execuo, usando-se a srie 1234 da RAND2, em que foram gerados 10.000
nmeros com = 5 e = 2, os seguintes resultados foram obtidos:
Primeiros 5 nmeros gerados: 5.60458, 4.2534, 4.63261, 3.92964 e 6.6514.
A mdia () dos 10.000 nmeros gerados foi igual a 4,994.
O desvio padro () foi igual a 1,998.
Um mtodo alternativo para gerar variveis aleatrias normalmente distribudas
usar uma das seguintes expresses:
p
Z = (2 ln U1 ) sin (2U2 )
ou
p
Z = (2 ln U1 ) cos (2U2 )
Ambas as expresses geram variveis aleatrias normais padronizadas.
Observe que o mtodo anterior necessita de 12 valores de Ui para cada valor de
Z enquanto que este ltimo s necessita de 2. Assim aparenta ser mais eficiente
do ponto de vista computacional mas o clculo de logartimo, raiz quadrada e seno
(ou coseno) muito mais demorado que uma soma. Na verdade os 2 mtodos se
equivalem em termos de tempo computacional.
Exemplo: Gere 2 nmeros aleatrios que sigam uma distribuio normal com mdia 5 e desvio padro 2. Use o seguinte conjunto de nmeros aleatrios uniformemente distribudos em [0, 1]: 0.35, 0.97, 0.22, 0.15.
Temospento:
Z1 = (2) ln (0.35) sin [(2)(0.97)] = 0.27
X1 = p
5 + (2)(0.27) = 4.46
Z1 = (2) ln (0.22) sin [(2)(0.15)] = 1.41
X2 = 5 + (2)(1.41) = 7.82
O programa a seguir, escrito em Pascal, implementa a gerao de nmeros aleatrios que seguem a distribuio Normal utilizando a frmula do seno.
O programa permite que se informe quantos nmeros queremos gerar, a mdia e
o desvio padro .
Como sada ele imprime os 6 primeiros nmeros gerados, a mdia de todos os nmeros gerados e o desvio padro.
O programa usa a RAND2 como o gerador bsico de nmeros aleatrios.
187
{NORMAL I I }
{$N+ }
{ $E+ }
Var
ISER ,N,PARAM, I ,NUMIMP: Integer ;
U,SOMA, Z ,DESVIO: Double ;
MU,DELTA: Real ;
{ $I RAND2. PAS}
{ }
Function NORMAL(MU,DELTA: Real ;U: Double ; ISER ,PARAM: Integer ) : Double ;
Begin
U : = SQRT(( 2.0 LN(RAND2( ISER ,PARAM) ) ) ) SIN ( 2 . 0 PI
RAND2( ISER ,PARAM) ) ;
NORMAL : = MU + DELTA U;
End;
{ }
Begin
PARAM : = 0 ;
Writeln ( Qual a Serie (0 a 21473) ? ) ;
Readln ( ISER ) ;
U : = RAND2( ISER ,PARAM) ;
PARAM : = 1 ;
Writeln ( Quantos Numeros ? ) ;
Readln (N) ;
Writeln ( Qual a media ? ) ;
Readln (MU) ;
Writeln ( Qual o desvio padrao ? ) ;
Readln (DELTA ) ;
SOMA : = 0 . 0 ;
NUMIMP : = 0 ;
DESVIO : = 0 . 0 ;
For I : = 1 to N do
Begin
Z : = NORMAL(MU,DELTA,U, ISER ,PARAM) ;
SOMA : = SOMA + Z ;
DESVIO : = DESVIO + ( Z Z ) ;
NUMIMP : = NUMIMP + 1 ;
I f NUMIMP < 6 then Writeln ( Z ) ;
End;
Writeln ( MEDIA = ,SOMA / N) ;
DESVIO : = SQRT( ( DESVIO / N) (SOMA /N) (SOMA / N ) ) ;
Writeln ( DESVIO PADRAO = ,DESVIO ) ;
End.
Em uma execuo, usando-se a srie 1234 da RAND2, em que foram gerados 10.000
nmeros com = 5 e = 2, os seguintes resultados foram obtidos:
Primeiros 5 nmeros gerados: 3.82918, 1.902, 6.83981, 4.57527 e 3.6889.
A mdia () dos 10.000 nmeros gerados foi igual a 5,01063.
O desvio padro () foi igual a 1,98415.
Vimos somente algumas funes de distribuio mas, hoje em dia, existem mtodos capazes de gerar variveis aleatrias para praticamente qualquer distribuio
terica conhecida.
188
Introduo Simulao
189
Caso se tenha uma impressora esta tela poder ser impressa. Clicando-se no boto
VOLTAR samos do programa, voltando-se para o software Po.
Como este modelo simulado um exemplo do modelo M/M/s, podemos comparar
os resultados obtidos na simulao com os resultados tericos obtidos das frmulas
analticas daquele modelo de filas:
Tempo mdio que um cliente permanece na fila (Wq ):
Simulao : 1,772 minutos
Terico : 1,776 minutos
Nmero Mdio de clientes na fila (Lq ):
Simulao : 0,887 clientes
Terico : 0,8889 clientes
Taxa de ocupao das estaes de servio (caixas):
Simulao : 66,65%
Terico : 66,7%
Podemos observar que a simulao deu resultados praticamente iguais aos tericos
o que demonstra a robustez da tcnicas de simulao alm de servir para demons-
190
Introduo Simulao
A sada, aps 100 replicaes, cada uma com 20.000 minutos de simulao, apresentou os seguintes resultados:
191
192
Introduo Simulao
193
A esquerda temos a rea dos painis (templates) como Create, Dispose, Process,
etc... Os modelos de simulao so construdos com estes painis, como veremos
mais adiante. Observe que o ttulo da rea de painis Basic Process, ou seja
estes so os blocos bsicos e poderemos acrescentar outros a medida que eles forem
sendo necessrios.
Na verdade, na sua forma mais simplificada, criamos modelos no ARENA construindo desenhos lgicos com os painis.
5
www.paragon.com.br/brhome.html
194
Introduo Simulao
Clientes
Chegam
Clientes so
Atendidos
Clientes vo
embora
Vamos agora para o Arena. O nosso 1o bloco, ou seja a chegada de clientes, tem que
ser criado. Clicando e segurando o mouse, arrastamos a caixa Create do lado esquerdo para a rea de trabalho, que a maior rea branca da tela inicial. Soltamos
o mouse e uma caixa Create1 aparece no espao em branco. A seguir, fazemos o
mesmo com a caixa Process, ou seja clicamos, seguramos o mouse e a arrastamos
para a direita da caixa Create 1. O ARENA conecta automaticamente as 2 caixas
(isto pode ser desligado). Vai ser criada uma caixa chamada Process 1. E, para
finalizar, fazemos o mesmo com a caixa Dispose e a colocamos a direita da Process 1.
A aparncia da nossa tela dever ser a seguinte:
195
Na parte abaixo da rea de trabalho aparece uma espcie de planilha com alguns
dados que ficaro mais claros a medida que formos avanando.
Dando um duplo click na caixa Create1, abre-se o seguinte quadro:
Podemos entrar com os dados da nossa aplicao. Na 1a linha, vamos trocar o nome
(Name) de Create 1 para Chegada de Clientes. O tipo da entidade (Entity Type) de
Entity 1 para Clientes.
A 2a linha trata da distribuio do intervalo entre chegadas (Time Between Arrivals). Em Type, vamos escolher Expression e em Value escolhemos EXPO(Mean),
ou seja estamos dizendo que o intervalo entre chegadas segue uma distribuio
exponencial. No exemplo que queremos simular, o intervalo entre chegadas tem
mdia igual a 2 minutos.
Antes de introduzirmos este valor, devemos saber que o ARENA usa a RAND4 (pg.
164) como gerador de nmeros aleatrios. Assim, alm da mdia, convm informar,
embora seja opcional, qual a srie que deve ser usada para gerar as chegadas de clientes. Em princpio no deve-se usar a srie 10 pois esta a srie que o Arena usa
quando no se informa nada. Vamos usar a srie 23. Colocamos ento no campo
Value a expresso EXPO(2,23), ou seja mdia igual a 2 usando-se na simulao, a
srie 23 da RAND4. A seguir devemos trocar o campo Units para minutos.
A 3a linha fica como est pois Entidades por Chegada (Entities per Arrival) igual
a 1, ou seja cada cliente chega sozinho. No existe limite para o nmero de clientes
que podem chegar, assim Max Arrivals igual a Infinito e o instante de criao
(First Creation) da 1a chegada o instante 0.0, ou seja o incio da simulao.
Nosso quadro fica ento desta forma:
196
Introduo Simulao
Mudamos o Name para Atendimento aos Clientes, o tipo fica Standard. No campo
Action, deve ser escolhida a opo Seize Delay Release, ou seja CapturaRetm por
algum tempoLibera, que o que um caixa faz com os clientes.
Ao se escolher a ao acima abre-se um novo campo Prioridade (Priority) que deve
197
ser deixado como Medium(2). Abre-se, tambm um novo quadro para a definio
dos recursos (resources) que, no nosso exemplo, um nico caixa.
Devemos clicar na opo Add para incluir o recurso (Caixa) no modelo, como mostrado a seguir:
198
Introduo Simulao
Como pode ser visto acima, escolhemos Resource (em Type), Caixa 1 (em Resource
name) e 1 (em quantity).
Precisamos informar agora o tipo de distribuio do atendimento feito pelo caixa
que, no nosso exemplo, segue uma distribuio exponencial com mdia de 1.5 minutos. Escolhemos ento: Expression (em Delay Type), Minutes (em Units), Value
Added (em Allocation) e EXPO(Mean) (em Expression). Devemos a seguir substituir o (Mean) por (1.5,7), pois vamos usar a srie 7 da RAND4 para a gerao
da durao do servio. Se no estiver marcado, devemos marcar o campo Report
Statistics. Finalmente clicamos em OK para confirmar nossos dados.
199
Mudamos o nome para Saida de Clientes, marcamos o campo Record Entity Statistics e clicamos em OK, obtendo-se o seguinte quadro.
200
Introduo Simulao
Podemos reparar que aparece uma linha em cima do bloco Atendimento aos Clientes. Esta linha representa a fila que se forma no caixa. Na parte de baixo, a
medida que se clica em um dos blocos, aparece uma planilha com as informaes
pertinentes a cada bloco. Podemos alterar, se for o caso, as informaes na planilha
que elas passaro a valer para o bloco.
Neste ponto, o modelo est construdo mas antes de executar a simulao, temos
que ajustar alguns parmetros. Assim, devemos clicar em Run Setup, no
menu. O quadro a seguir (j com as alteraes feitas), para Replication Parameters
aparecer:
201
Vamos fazer apenas uma simulao (1 replicao) com durao de 10.000 minutos.
Tambm no Run Setup, aba Project Parameters, podemos entrar com os
parmetros do projeto tais como nome do projeto, nome do analista, descrio do
projeto, etc...
Para finalizar clicamos em OK.
Para executar a simulao clicamos, no menu, em Run Go. Passamos a ver
ento a simulao dinamicamente acontecendo como no retrato a seguir (obtido
apertando-se, durante a simulao, a tecla <ESC>):
Neste ponto j tinham chegado 846 clientes, 841 j tinham sido atendidos, 4 estavam na fila e 1 estava sendo atendido.
Ao final da simulao, o ARENA emite dezenas de relatrios que podem ser acessados a partir da aba Reports que existe na parte esquerda da tela. Vamos mostrar
202
Introduo Simulao
O tempo de espera mdio na fila de 4,59 minutos. O terico (Wq ), modelo M/M/1,
4,50 minutos. O nmero mdio de clientes na fila 2,30 clientes. O terico (Lq )
igual a 2,25 clientes. O nmero mximo de clientes na fila foi 21.
O prximo relatrio que podemos examinar o de Resources que, no nosso exemplo
o caixa.
203
Como podemos observar, o Caixa ficou ocupado 75% do tempo. Este resultado
exatamente igual ao terico ( = 0.75).
Outro relatrio que pode ser visto o de Processes:
Ele mostra que a maior espera total de um cliente foi de 46.85 minutos, o atendimento mais demorado foi 14,71 minutos e a maior espera na fila foi de 44.59
minutos.
Como citamos anteriormente, vrios outros relatrios, com grficos inclusive, so
impressos e podem ser examinados.
204
Introduo Simulao
Chegada dos
Passageiros
Procura pelo
Check-in
Check-in
Sada para
embarque
O 2o bloco referente a procura pelo balco de check-in. A ao, neste caso s Delay porque s h um atraso, uniformemente distribudo, para chegar at o balco.
O quadro preenchido fica da seguinte forma:
205
206
Introduo Simulao
207
Para a fila, representada por uma linha contnua, vamos inicialmente aumentar
seu tamanho (clicando nela e puxando, com o mouse, as suas extremidades). A
seguir, vamos alterar a sua forma de linha para pontos. Dando um duplo click, o
seguinte quadro aparece:
Mudamos de Line para Point e depois clicando em Points.., vai abrir outro quadro
onde, clicando no boto Add, podemos ir colocando pontos ou seja lugares na fila
(at o mximo de 14). Neste exemplo colocamos 10 pontos. No final clica-se em OK.
208
Introduo Simulao
Para dar um toque mais realista a simulao, vamos acrescentar o balco do checkin e os 5 pontos de atendimento. Iniciamos clicando, na 2a barra de botes em cima,
em
que far com que a seguinte tela aparea:
Escolhendo Atendentes como Identif ier, podemos selecionar figuras para representar os atendentes ociosos (Idle) ou ocupados (Busy). importante notar que as
figuras que aparecem fazem parte da chamada biblioteca padro. Podemos (clicando no open deste quadro) abrir outras bibliotecas que possuem outras figuras.
Para escolher uma figura para Idle, por exemplo, clica-se em Idle, clica-se na figura
desejada e depois clica-se em
Antes de clicar em OK, devemos marcar Seize Area. Isto faz com que junto a figura
seja criada uma linha (semelhante a da fila) para identificar os pontos de atendimento. No nosso exemplo criamos 5 pontos (de maneira similar ao feito para a fila)
pois temos 5 atendentes.
Para finalizar, vamos colocar um relgio para melhor visualizao do andamento
(clock) e arrast-lo apara a
da simulao. Para tanto basta clicar no boto
rea de trabalho. Escolhemos 8:00 horas como a hora inicial marcada pelo relgio.
Nosso modelo est pronto e sua aparncia :
209
O relgio marca 01:37:54, ou seja j temos 5,5 horas de simulao sendo que 218
passageiros j chegaram, 208 j passaram pelo check-in sendo que os 5 atendentes
esto ocupados e 2 passageiros aguardam na fila. Temos tambm 3 passageiros
procurando pelo balco de check-in.
Dos relatrios emitidos ao final da simulao, podemos extrair, entre outros, os seguintes dados:
Passageiros atendidos pelo check-in das 8:00 s 22:00 : 524
Tempo total gasto, em mdia, por um passageiro, da entrada a sada : 13,19 minutos
Menor tempo gasto por um passageiro, da entrada a sada : 4,91 minutos
Maior tempo gasto por um passageiro, da entrada a sada : 29,35 minutos
210
Introduo Simulao
211
Escolhemos a srie 7 da RAND4 para a gerao das variveis aleatrias exponencialmente distribudas. Criamos de forma idntica um bloco Create para as chegadas das placas e embalagens do produto tipo B. Temos ento:
212
Introduo Simulao
Devemos notar que Entities per Arrival foi alterado para 4, pois as placas e embalagens de B chegam em lotes de 4. Usamos a srie 22 para a Rand4.
Neste ponto temos que nos preocupar com um ponto que no apareceu nos modelos
anteriores. Depois de chegar e ser preparado, os componentes do modelo A vo
para a seo de montagem. No entanto com o modelo tipo B ocorre a mesma coisa,
ou seja ambos usam a seo de montagem mas com tempos seguindo distribuies
diferentes. No podemos definir 2 distribuies para o mesmo processo nem definir
2 processos porque na verdade s existe uma seo de montagem. Para contornar isto, vamos definir um atributo Tempo de Montagem a quem atribuiremos o
tempo de montagem apropriado para cada tipo de produto. O bloco que faz estas
atribuies no Arena o Assign. Temos ento:
213
214
Introduo Simulao
Temos agora a Montagem onde devemos usar o atributo Tempo Montagem que
criamos anteriormente.
215
216
Introduo Simulao
Temos aps o conserto uma re-inspeo para verificar as que podem ser comercializadas. Temos ento mais um bloco de deciso. Podemos represent-lo usando o
bloco Decide. Temos ento:
Tendo definido todas as operaes, precisamos nos preocupar com a obteno das
informaes que queremos analisar.Lembre-se que, como parte da prpria simulao, ns obtemos estatsticas sobre a utilizao dos recursos, tamanho das filas e
espera em cada uma das filas. No entanto, queremos tambm informaes sobre a
durao do ciclo para os produtos que passam no controle de qualidade e para os
que no passam, queremos conhecer o ciclo dos que so consertados e dos que vo
para a sucata. O bloco Record permite que se tenha estes dados. Para os que vo
para a sucata, temos:
217
at irem para a sucata. Para os demais itens (comercializadas direto e comercializados aps reparo), o procedimento o mesmo.
Finalmente no podemos esquecer dos mdulos de sada, ou seja Dispose. Aps
coloc-los, nosso modelo tem a seguinte aparncia:
218
Introduo Simulao
Executando a simulao para um perodo de 32 horas, os seguintes resultados foram obtidos nos relatrios impressos pelo Arena:
Espera mdia na Fila (Wq )
Na prep A
Na prep B
Na montagem
No conserto
Tamanho mdio da Fila (Lq )
Na prep A
Na prep B
Na montagem
No conserto
Vendas
Direto
Consertados
Utilizao do Recurso ()
Prep A
Prep B
Montagem
Conserto
Minutos
1,65
5,78
12,11
421,96
0,33
0,90
4,31
13,27
Quantidade
610
33
%
54
35
88
93
219
220
Introduo Simulao
4.16 Exerccios
1) Usando o mtodo dos quadrados mdios, calcule os 12 primeiros nmeros gerados, com 4 dgitos, a partir de uma semente igual a 7308.
2) Use o mtodo congruente linear para gerar um seqencia de 3 nmeros aleatrios de 2 dgitos. Use x0 = 27, a = 8, c = 47 e m = 100.
3) Encontramos algum problema no exerccio anterior se x0 = 0 ?
4) Considere o mtodo congruente multiplicativo para os seguintes casos:
a) a = 11
m = 16
x0 = 7
b) a = 11
m = 16
x0 = 8
c) a = 7
m = 16
x0 = 7
d) a = 7
m = 16
x0 = 8
Gere, para cada caso, todo o perodo. O que podemos inferir dos resultados
encontrados ?
5) Construa, para a RAND2, um cubo idntico ao mostrado na pgina 158 para o
gerador RANDU.
6) Pesquise na internet para descobrir qual a frmula usada pela planilha Excel
no seu gerador de nmeros aleatrios padro.
7) Desenvolva um gerador de nmeros aleatrios, usando o mtodo da transformao inversa, para a seguinte distribuio probabilstica:
(
e2x ,
< x 0
f (x) =
2x
e
, 0<x<
8) Idem para:
,
0x2
3
1
f (x) =
, 2 < x 10
24
0,
x > 10
9) Com uma calculadora que tenha a funo para gerar nmeros aleatrios uniformemente distribudos em [0, 1], gere 10 nmeros seguindo a distribuio de
Poisson com mdia () igual a 2, 5.
221
4.16 Exerccios
1
2 2
f (x) =
e
2
2
Compare o valor obtido pela simulao com o valor obtido da tabela normal.
11) A gerente de uma loja de eletro-domsticos est desconfiada que o seu estoque
de foges est acima do que seria necessrio. Antes de modificar a poltica de
estoques, ela registrou o nmero de foges vendidos, diariamente, nos ltimos
25 dias. Os dados encontrados esto mostrados a seguir:
Foges vendidos
Nmero de dias
2
4
3
7
4
8
5
5
6
1
222
Introduo Simulao
incio da fila (assuma que, se j tem uma ou mais ambulncias no incio da fila,
esta nova chegada passa a ser a 1a da fila). Considere que no incio da simulao
(instante 0), o posto est vazio. Execute a simulao at que 500 carros, no total,
tenham sido atendidos. Estime o tempo de espera mdio na fila para os 2 tipos
de carro, o nmero mdio de carros na fila para os 2 tipos de carro e a taxa de
ocupao da bomba de gasolina.
15) Desenvolva um modelo para um sistema com 2 processos consecutivos (I e II).
Os tens chegam ao sistema com intervalo, mdio, entre chegadas de 10 minutos.
Assim que chegam, os tens so imediatamente enviados para o processo I que
tem uma fila ilimitada e um recurso simples com uma durao, mdia, do servio
de 9 minutos. Aps terminar o 1o processo, os tens so enviados para o processo
II que idntico ao processo I. Aps o servio do processo II ser completado,
os tens deixam o sistema. As medidas de interesse no sistema so o nmero
mdio de tens na fila, em cada processo, e o tempo total, mdio, que um tem
permanece no sistema. Usando 10.000 minutos como a durao a ser estudada,
faa as 4 simulaes a seguir e compare os resultados.
a) Intervalo entre chegadas exponencial e durao do servio exponencial.
b) Intervalo entre chegadas exponencial e durao do servio constante.
c) Intervalo entre chegadas constante e durao do servio exponencial.
d) Intervalo entre chegadas constante e durao do servio constante.
16) Peas chegam a uma estao de trabalho com um intervalo, mdio, entre chegadas de 21 segundos (exponencial). Aps a chegada, as peas so processadas.
O tempo de processamento segue uma distribuio triangular com parmetros
16, 19 e 22. Existem caractersticas visuais que determinam se uma pea tem
um eventual problema de qualidade. Esto peas, que so cerca de 10% do total,
so enviadas para outra estao onde sofrem uma rigorosa inspeo. As demais
(90%) so enviadas para a expedio e consideradas boas.
A distribuio do tempo de inspeo rigorosa , em mdia, igual a 95 segundos
mais uma varivel aleatria que segue uma distribuio de Weibull com parmetros iguais a 48,5 e 4,04. Em torno de 14% das peas que sofrem inspeo,
so reprovadas e viram sucata. As demais vo para a expedio.
Execute a simulao para 10.000 segundos para determinar o nmero de peas
boas, o nmero de peas sucateadas e o nmero de peas que so inspecionadas
parcialmente e rigorosamente.
17) Clientes chegam a uma caixa com um intervalo, mdio, entre chegadas igual
a 10 minutos (exponencial). Um nico funcionrio recebe o pagamento alm
de conferir o pedido. Ele demora, em mdia, entre 8 a 10 minutos para fazer
estas tarefas, variando a durao uniformemente naquele intervalo. Aps esta
atividade estar completada, o cliente , aleatoriamente, atribudo a um de 2
funcionrios do estoque que separam e embalam a mercadoria para entregar
ao cliente. O tempo desta atividade tambm uniformemente distribudo entre
4.16 Exerccios
223
224
Introduo Simulao
Apndice A
Tabela Normal
Parte I
Z
-2.9
-2.8
-2.7
-2.6
-2.5
-2.4
-2.3
-2.2
-2.1
-2.0
-1.9
-1.8
-1.7
-1.6
-1.5
-1.4
-1.3
-1.2
-1.1
-1.0
-0.9
-0.8
-0.7
-0.6
-0.5
-0.4
-0.3
-0.2
-0.1
-0.0
0
.00187
.00256
.00347
.00466
.00621
.00820
.01072
.01390
.01786
.02275
.02872
.03593
.04457
.05480
.06681
.08076
.09680
.11507
.13567
.15866
.18406
.21186
.24196
.27425
.30854
.34458
.38209
.42074
.46017
.50000
1
.00181
.00248
.00336
.00453
.00604
.00798
.01044
.01355
.01743
.02222
.02807
.03515
.04363
.05370
.06552
.07927
.09510
.11314
.13350
.15625
.18141
.20897
.23885
.27093
.30503
.34090
.37828
.41683
.45621
.49601
2
.00175
.00240
.00326
.00440
.00587
.00776
.01017
.01321
.01700
.02169
.02743
.03438
.04272
.05262
.06426
.07780
.09342
.11123
.13136
.15386
.17879
.20611
.23576
.26763
.30153
.33724
.37448
.41294
.45224
.49202
3
.00169
.00233
.00317
.00427
.00570
.00755
.00990
.01287
.01659
.02118
.02680
.03362
.04182
.05155
.06301
.07636
.09176
.10935
.12924
.15151
.17619
.20327
.23270
.26435
.29806
.33360
.37070
.40905
.44828
.48803
4
.00164
.00226
.00307
.00415
.00554
.00734
.00964
.01255
.01618
.02068
.02619
.03288
.04093
.05050
.06178
.07493
.09012
.10749
.12714
.14917
.17361
.20045
.22965
.26109
.29460
.32997
.36693
.40517
.44433
.48405
5
.00159
.00219
.00298
.00402
.00539
.00714
.00939
.01222
.01578
.02018
.02559
.03216
.04006
.04947
.06057
.07353
.08851
.10565
.12507
.14686
.17106
.19766
.22663
.25785
.29116
.32636
.36317
.40129
.44038
.48006
6
.00154
.00212
.00289
.00391
.00523
.00695
.00914
.01191
.01539
.01970
.02500
.03144
.03920
.04846
.05938
.07215
.08692
.10383
.12302
.14457
.16853
.19489
.22363
.25463
.28774
.32276
.35942
.39743
.43644
.47608
7
.00149
.00205
.00280
.00379
.00508
.00676
.00889
.01160
.01500
.01923
.02442
.03074
.03836
.04746
.05821
.07078
.08534
.10204
.12100
.14231
.16602
.19215
.22065
.25143
.28434
.31918
.35569
.39358
.43251
.47210
8
.00144
.00199
.00272
.00368
.00494
.00657
.00866
.01130
.01463
.01876
.02385
.03005
.03754
.04648
.05705
.06944
.08379
.10027
.11900
.14007
.16354
.18943
.21770
.24825
.28096
.31561
.35197
.38974
.42858
.46812
9
.00139
.00193
.00264
.00357
.00480
.00639
.00842
.01101
.01426
.01831
.02330
.02938
.03673
.04551
.05592
.06811
.08226
.09853
.11702
.13786
.16109
.18673
.21476
.24510
.27760
.31207
.34827
.38591
.42466
.46414
226
Tabela Normal
Parte II
Z
0.0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1.0
1.1
1.2
1.3
1.4
1.5
1.6
1.7
1.8
1.9
2.0
2.1
2.2
2.3
2.4
2.5
2.6
2.7
2.8
2.9
0
.50000
.53983
.57926
.61791
.65542
.69146
.72575
.75804
.78814
.81594
.84134
.86433
.88493
.90320
.91924
.93319
.94520
.95543
.96407
.97128
.97725
.98214
.98610
.98928
.99180
.99379
.99534
.99653
.99744
.99813
1
.50399
.54379
.58317
.62172
.65910
.69497
.72907
.76115
.79103
.81859
.84375
.86650
.88686
.90490
.92073
.93448
.94630
.95637
.96485
.97193
.97778
.98257
.98645
.98956
.99202
.99396
.99547
.99664
.99752
.99819
2
.50798
.54776
.58706
.62552
.66276
.69847
.73237
.76424
.79389
.82121
.84614
.86864
.88877
.90658
.92220
.93574
.94738
.95728
.96562
.97257
.97831
.98300
.98679
.98983
.99224
.99413
.99560
.99674
.99760
.99825
3
.51197
.55172
.59095
.62930
.66640
.70194
.73565
.76730
.79673
.82381
.84849
.87076
.89065
.90824
.92364
.93699
.94845
.95818
.96638
.97320
.97882
.98341
.98713
.99010
.99245
.99430
.99573
.99683
.99767
.99831
4
.51595
.55567
.59483
.63307
.67003
.70540
.73891
.77035
.79955
.82639
.85083
.87286
.89251
.90988
.92507
.93822
.94950
.95907
.96712
.97381
.97932
.98382
.98745
.99036
.99266
.99446
.99585
.99693
.99774
.99836
5
.51994
.55962
.59871
.63683
.67364
.70884
.74215
.77337
.80234
.82894
.85314
.87493
.89435
.91149
.92647
.93943
.95053
.95994
.96784
.97441
.97982
.98422
.98778
.99061
.99286
.99461
.99598
.99702
.99781
.99841
6
.52392
.56356
.60257
.64058
.67724
.71226
.74537
.77637
.80511
.83147
.85543
.87698
.89617
.91308
.92785
.94062
.95154
.96080
.96856
.97500
.98030
.98461
.98809
.99086
.99305
.99477
.99609
.99711
.99788
.99846
7
.52790
.56749
.60642
.64431
.68082
.71566
.74857
.77935
.80785
.83398
.85769
.87900
.89796
.91466
.92922
.94179
.95254
.96164
.96926
.97558
.98077
.98500
.98840
.99111
.99324
.99492
.99621
.99720
.99795
.99851
8
.53188
.57142
.61026
.64803
.68439
.71904
.75175
.78230
.81057
.83646
.85993
.88100
.89973
.91621
.93056
.94295
.95352
.96246
.96995
.97615
.98124
.98537
.98870
.99134
.99343
.99506
.99632
.99728
.99801
.99856
9
.53586
.57534
.61409
.65173
.68793
.72240
.75490
.78524
.81327
.83891
.86214
.88298
.90147
.91774
.93189
.94408
.95449
.96327
.97062
.97670
.98169
.98574
.98899
.99158
.99361
.99520
.99643
.99736
.99807
.99861
Apndice B
Tabela do 2
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
40
50
0,25
0,10
0,05
0,025
0,01
0,005
0,001
1,32
2,77
4,10
5,38
6,62
7,84
9,03
10,21
11,38
12,54
13,70
14,84
15,98
17,11
18,24
19,36
20,48
21,60
22,71
23,82
24,93
26,03
27,14
28,24
29,33
30,43
31,52
32,62
33,71
34,80
45,61
56,33
2,70
4,60
6,25
7,77
9,23
10,64
12,01
13,36
14,68
15,98
17,27
18,54
19,81
21,06
22,30
23,54
24,76
25,98
27,20
28,41
29,61
30,81
32,00
33,19
34,38
35,56
36,74
37,91
39,08
40,25
51,80
63,16
3,84
5,99
7,81
9,48
11,07
12,59
14,06
15,50
16,91
18,30
19,67
21,02
22,36
23,68
24,99
26,29
27,58
28,86
30,14
31,41
32,67
33,92
35,17
36,41
37,65
38,88
40,11
41,33
42,55
43,77
55,75
67,50
5,02
7,37
9,34
11,14
12,83
14,44
16,01
17,53
19,02
20,48
21,92
23,33
24,73
26,11
27,48
28,84
30,19
31,52
32,85
34,17
35,47
36,78
38,07
39,36
40,64
41,92
43,19
44,46
45,72
46,97
59,34
71,42
6,63
9,21
11,34
13,27
15,08
16,81
18,47
20,09
21,66
23,20
24,72
26,21
27,68
29,14
30,57
32,00
33,40
34,80
36,19
37,56
38,93
40,28
41,63
42,98
44,31
45,64
46,96
48,27
49,58
50,89
63,69
76,15
7,87
10,59
12,83
14,86
16,75
18,54
20,27
21,95
23,58
25,18
26,75
28,30
29,81
31,31
32,80
34,26
35,71
37,15
38,58
39,99
41,40
42,79
44,18
45,55
46,92
48,29
49,64
50,99
52,33
53,67
66,76
79,49
10,82
13,81
16,26
18,46
20,51
22,45
24,32
26,12
27,87
29,58
31,26
32,90
34,52
36,12
37,69
39,25
40,79
43,31
43,82
45,31
46,79
48,26
49,72
51,17
52,62
54,05
55,47
56,89
58,30
59,70
73,40
86,66
228
Tabela do 2
Apndice C
Tabelas para modelos com populao finita
As tabelas a seguir 1 tem como objetivo facilitar os clculos para modelos de filas
com populao de tamanho finito.
As tabelas aqui contidas, por problema de espao, s abrangem os modelos com
populao igual a 5, 10, 20 e 30 elementos. Sendo assim, os exerccios apresentados s tratam modelos com populaes de um daqueles tamanhos.
No acesso a tabela, deve-se observar que, em cada pgina, existem 3 colunas, cada
uma com 4 valores: X, S, D e F.
A sequencia dos valores por coluna. Sendo assim, iniciamos na 1a coluna, descemos at embaixo na pgina e, ao chegar ao final, subimos para a 2a coluna. Quando
esta acaba, embaixo na pgina, subimos para a 3a coluna e quando chegamos ao
final, mudamos para a prxima pgina onde a sequencia a mesma.
Na prpria tabela est impresso onde ela comea a valer para uma determinada
populao. Assim, aps encontrar impresso Populao 10, por exemplo, passam a
valer os valores para esta populao.
extrada de L.G.Peck and R.N.Hazelwood, Finite Queuing Tables, John Wiley & Sons, 1958
230
X
S
D
POPULAO 5
.012
.019
.025
.030
.034
1
1
1
1
1
.048
.076
.100
.120
.135
.999
.998
.997
.996
.995
.036
.040
.042
.044
.046
.050
1
1
1
1
1
1
.143
.159
.167
.175
.183
.198
.994
.993
.992
.991
.990
.989
.120
.052
.054
.056
1
1
2
1
2
1
2
1
.206
.214
.018
.222
.019
.229
.020
.237
.988
.987
.999
.985
.999
.984
.999
.983
.135
2
1
2
1
2
1
2
.022
.245
.023
.253
.024
.260
.026
.999
.982
.999
.981
.999
.979
.999
1
2
1
2
1
2
1
.268
.027
.275
.031
.294
.035
.313
.978
.999
.977
.999
.973
.998
.969
2
1
2
1
2
1
2
.040
.332
.044
.350
.049
.368
.054
.998
.965
.998
.960
.997
.955
.997
.058
.060
.062
.064
.066
.068
.070
.075
.080
.085
.090
.095
.100
X
.100
.105
.110
.115
.125
.130
.140
.145
.150
.155
.160
.165
.170
.180
.190
.200
S
1
2
1
2
1
2
1
D
.386
.059
.404
.065
.421
.071
.439
F
.950
.997
.945
.996
.939
.995
.933
2
1
2
1
2
1
.076
.456
.082
.473
.089
.489
.995
.927
.994
.920
.993
.914
2
1
2
1
3
2
1
3
.095
.505
.102
.521
.011
.109
.537
.012
.993
.907
.992
.900
.999
.991
.892
.999
2
1
3
2
1
3
2
.115
.553
.013
.123
.568
.015
.130
.990
.885
.999
.989
.877
.999
.988
1
3
2
1
3
2
1
.582
.016
.137
.597
.017
.145
.611
.869
.999
.987
.861
.999
.985
.853
3
2
1
3
2
1
3
.021
.161
.638
.024
.177
.665
.028
.999
.983
.836
.998
.980
.819
.998
X
.200
.210
.220
.230
.240
.250
.260
.270
.280
.290
.300
.310
.320
S
2
1
3
2
1
3
2
D
.194
.689
.032
.211
.713
.036
.229
F
.976
.801
.998
.973
.783
.997
.969
1
3
2
1
3
2
.735
.041
.247
.756
.046
.265
.765
.997
.965
.747
.996
.960
1
3
2
1
3
2
1
3
.775
.052
.284
.794
.058
.303
.811
.064
.730
.995
.955
.712
.994
.950
.695
.994
2
1
3
2
1
4
3
.323
.827
.071
.342
.842
.007
.079
.944
.677
.993
.938
.661
.999
.992
2
1
4
3
2
1
4
.362
.856
.008
.086
.382
.869
.009
.932
.644
.999
.990
.926
.628
.999
3
2
1
4
3
2
1
.094
.402
.881
.010
.103
.422
.892
.989
.919
.613
.999
.988
.912
.597
231
X
.330
.340
.360
.380
.400
.420
.420
.440
.460
.480
.500
.520
S
4
3
2
1
4
3
2
D
.012
.112
.442
.902
.013
.121
.462
F
.999
.986
.904
.583
.999
.985
.896
1
4
3
2
1
4
3
.911
.017
.141
.501
.927
.021
.163
.569
.998
.981
.880
.542
.998
.976
2
1
4
3
2
1
4
.540
.941
.026
.186
.579
.952
.031
.863
.516
.997
.972
.845
.493
.997
3
2
1
4
3
2
1
.211
.616
.961
.037
.238
.652
.969
.966
.826
.471
.996
.960
.807
.451
4
3
2
1
4
3
2
.045
.266
.686
.975
.053
.296
.719
.995
.953
.787
.432
.994
.945
.767
1
4
3
2
1
4
3
.980
.063
.327
.750
.985
.073
.359
.415
.992
.936
.748
.399
.991
.927
X
.520
.540
.560
.580
.600
.650
.700
.750
.800
.850
.900
.950
S
2
1
4
3
2
1
4
D
.779
.988
.085
.392
.806
.991
.098
F
.728
.384
.989
.917
.708
.370
.986
X
S
D
POPULAO 10
.016
.019
.021
.023
.025
1
1
1
1
1
.144
.170
.188
.206
.224
.997
.996
.995
.994
.993
3
2
1
4
3
2
1
.426
.831
.993
.113
.461
.854
.994
.906
.689
.357
.984
.895
.670
.345
.026
.028
.030
.032
1
1
1
2
1
2
1
.232
.250
.268
.033
.285
.037
.302
.992
.991
.990
.999
.988
.999
.986
4
3
2
1
4
3
2
.130
.497
.875
.996
.179
.588
.918
.981
.883
.652
.333
.972
.850
.608
.036
2
1
2
1
2
1
2
.041
.320
.046
.337
.050
.354
.055
.999
.984
.999
.982
.999
.980
.999
1
4
3
2
1
4
3
.998
.240
.678
.950
.999
.316
.763
.308
.960
.815
.568
.286
.944
.777
1
2
1
2
1
2
1
.371
.060
.388
.065
.404
.071
.421
.978
.998
.975
.998
.973
.998
.970
2
4
3
2
4
3
2
.972
.410
.841
.987
.522
.907
.995
.532
.924
.739
.500
.900
.702
.470
2
1
2
1
2
1
2
.076
.437
.082
.454
.088
.470
.094
.998
.967
.997
.963
.997
.960
.997
4
3
2
4
3
.656
.957
.998
.815
.989
.871
.666
.444
.838
.631
1
2
1
2
1
2
1
.486
.100
.501
.106
.517
.113
.532
.956
.996
.953
.996
.949
.996
.945
.034
.038
.040
.042
.044
.046
.048
.050
.052
.054
.056
.058
.060
.062
232
X
.064
.066
.068
.070
.075
.080
.085
.090
.090
.095
.100
.105
.110
.115
.120
.125
S
2
1
2
1
3
2
1
D
.119
.547
.126
.562
.020
.133
.577
F
.995
.940
.995
.936
.999
.994
.931
X
.125
3
2
1
3
2
1
3
.022
.140
.591
.026
.158
.627
.031
.999
.994
.926
.999
.992
.913
.999
.135
2
1
3
2
1
3
2
.177
.660
.037
.196
.692
.043
.216
.990
.899
.999
.988
.883
.998
.986
1
3
2
1
3
2
1
.722
.049
.237
.750
.056
.258
.776
.867
.998
.984
.850
.998
.981
.832
3
2
1
3
2
1
3
.064
.279
.800
.072
.301
.822
.081
.997
.978
.814
.997
.974
.795
.996
2
1
4
3
2
1
4
.324
.843
.016
.090
.346
.861
.019
.971
.776
.999
.995
.967
.756
.999
.130
.140
.145
.150
.155
.160
.165
.170
.180
S
3
2
1
4
3
2
1
D
.100
.369
.878
.022
.110
.392
.893
F
.994
.962
.737
.999
.994
.958
.718
4
3
2
1
4
3
2
.025
.121
.415
.907
.028
.132
.437
.999
.993
.952
.699
.999
.991
.947
1
4
3
2
1
4
3
.919
.032
.144
.460
.929
.036
.156
.680
.999
.990
.941
.662
.998
.989
2
1
4
3
2
1
4
.483
.939
.040
.169
.505
.947
.044
.935
.644
.998
.987
.928
.627
.998
3
2
1
4
3
2
1
.182
.528
.954
.049
.195
.550
.961
.986
.921
.610
.997
.984
.914
.594
4
3
2
1
5
4
3
.054
.209
.571
.966
.013
.066
.238
.997
.982
.906
.579
.999
.996
.978
X
.180
.190
.200
.210
.220
.230
.240
.250
.260
S
2
1
5
4
3
2
1
D
.614
.975
.016
.078
.269
.654
.982
F
.890
.549
.999
.995
.973
.873
.522
5
4
3
2
1
5
4
.020
.092
.300
.692
.987
.025
.108
.999
.994
.968
.854
.497
.999
.992
3
2
1
5
4
3
2
.333
.728
.990
.030
.124
.366
.761
.961
.835
.474
.998
.990
.954
.815
1
5
4
3
2
1
5
.993
.037
.142
.400
.791
.995
.044
.453
.998
.988
.947
.794
.434
.997
4
3
2
1
6
5
4
.162
.434
.819
.996
.010
.052
.183
.986
.938
.774
.416
.999
.997
.983
3
2
1
6
5
4
3
.469
.844
.997
.013
.060
.205
.503
.929
.753
.400
.999
.996
.980
.919
233
X
.260
.270
.280
.290
.300
.300
.310
.320
.330
.340
S
2
1
6
5
4
3
2
D
.866
.998
.015
.070
.228
.537
.886
F
.732
.384
.999
.995
.976
.908
.712
1
6
5
4
3
2
1
.999
.018
.081
.252
.571
.903
.999
.370
.999
.994
.972
.896
.692
.357
6
5
4
3
2
1
6
.022
.093
.278
.603
.918
.999
.026
.999
.993
.968
.884
.672
.345
.998
5
4
3
2
1
6
5
.106
.304
.635
.932
.999
.031
.120
.991
.963
.872
.653
.333
.998
.990
4
3
2
6
5
4
3
.331
.666
.943
.036
.135
.359
.695
.957
.858
.635
.998
.988
.952
.845
2
6
5
4
3
2
7
.952
.042
.151
.387
.723
.961
.010
.617
.997
.986
.945
.831
.600
.999
X
.340
.360
.380
.400
.420
.440
.460
S
6
5
4
3
2
7
6
D
.049
.168
.416
.750
.968
.014
.064
F
.997
.983
.938
.816
.584
.999
.995
X
.480
S
8
7
6
5
4
3
2
D
.015
.074
.230
.499
.791
.961
.998
F
.999
.994
.973
.916
.799
.621
.417
5
4
3
2
7
6
5
.205
.474
.798
.978
.019
.083
.247
.978
.923
.787
.553
.999
.993
.971
.500
8
7
6
5
4
3
2
.020
.093
.271
.553
.830
.972
.999
.999
.992
.966
.901
.775
.598
.400
4
3
2
7
6
5
4
.533
.840
.986
.026
.105
.292
.591
.906
.758
.525
.998
.991
.963
.887
.520
8
7
6
5
4
3
2
.026
.115
.316
.606
.864
.980
.999
.998
.989
.958
.884
.752
.575
.385
3
2
7
6
5
4
3
.875
.991
.034
.130
.341
.646
.905
.728
.499
.993
.987
.954
.866
.700
.540
8
7
6
5
4
3
8
.034
.141
.363
.658
.893
.986
.044
.997
.986
.949
.867
.729
.555
.996
2
7
6
5
4
3
2
.994
.045
.160
.392
.698
.928
.996
.476
.997
.984
.943
.845
.672
.454
7
6
5
4
3
8
7
.171
.413
.707
.917
.991
.057
.204
.982
.939
.848
.706
.535
.995
.977
8
7
6
5
4
3
2
.011
.058
.193
.445
.747
.947
.998
.999
.995
.979
.930
.822
.646
.435
6
5
4
3
9
8
7
.465
.753
.937
.994
.010
.072
.242
.927
.829
.684
.517
.999
.994
.972
.560
.580
.600
234
X
.600
.650
.700
.750
.750
.800
.850
.900
.950
S
6
5
4
3
9
8
7
D
.518
.795
.953
.996
.021
.123
.353
F
.915
.809
.663
.500
.999
.988
.954
X
S
D
POPULAO 20
X
.040
.005
.009
.011
.013
.014
1
1
1
1
1
.095
.171
.208
.246
.265
.999
.998
.997
.996
.995
.042
6
5
4
3
9
8
7
.651
.882
.980
.999
.040
.200
.484
.878
.759
.614
.461
.997
.979
.929
.015
.016
.017
.018
1
1
1
2
1
2
1
.283
.302
.321
.048
.339
.053
.358
.994
.993
.992
.999
.991
.999
.990
6
5
4
9
8
7
6
.772
.940
.992
.075
.307
.626
.870
.836
.711
.571
.994
.965
.897
.792
.020
2
1
2
1
2
1
2
.058
.376
.064
.394
.070
.412
.075
.999
.989
.999
.987
.999
.986
.999
5
4
9
8
7
6
5
.975
.998
.134
.446
.763
.939
.991
.666
.533
.988
.944
.859
.747
.625
1
2
1
2
1
2
1
.431
.082
.449
.088
.466
.094
.484
.984
.999
.982
.999
.980
.998
.978
4
9
8
7
6
5
9
.999
.232
.611
.879
.978
.998
.387
.500
.979
.916
.818
.705
.588
.963
2
1
2
1
2
1
2.
.108
.519
.122
.553
.137
.587
152
.998
.973
.998
.968
.997
.962
.996
8
7
6
9
8
7
.785
.957
.995
.630
.934
.994
.881
.777
.667
.938
.841
.737
1
2
1
3
2
1
3
.620
.168
.651
.036
.185
.682
.041
.955
.996
.947
.999
.995
.938
.999
.019
.021
.022
.023
.024
.025
.026
.028
.030
.032
.034
.036
.038
.040
.044
.046
.048
.050
.052
.054
.056
.058
.060
.062
.064
.066
S
2
1
3
2
1
3
2
D
.202
.712
.047
.219
.740
.053
.237
F
.994
.929
.999
.993
.918
.999
.992
1
3
2
1
3
2
1
.767
.059
.255
.792
.066
.274
.815
.906
.999
.991
.894
.999
.989
.881
3
2
1
3
2
1
3
.073
.293
.837
.080
.312
.858
.088
.998
.988
.866
.998
.986
.851
.998
2
1
3
2
1
3
2
.332
.876
.097
.352
.893
.105
.372
.984
.835
.997
.982
.819
.997
.980
1
4
3
2
1
4
3
.908
.026
.115
.392
.922
.029
.124
.802
.999
.997
.978
.785
.999
.996
2
1
4
3
2
1
4
.413
.934
.032
.134
.433
.944
.036
.975
.768
.999
.996
.972
.751
.999
235
X
.066
.068
.070
.075
.080
.080
.085
.090
.095
.100
.105
S
3
2
1
4
3
2
1
D
.144
.454
.953
.039
.155
.474
.961
F
.995
.969
.733
.999
.995
.966
.716
4
3
2
1
4
3
2
.043
.165
.495
.967
.054
.194
.545
.999
.994
.962
.699
.999
.992
.953
1
4
3
2
1
4
3
.980
.066
.225
.595
.988
.080
.257
.659
.998
.990
.941
.621
.997
.987
2
1
5
4
3
2
1
.643
.993
.025
.095
.291
.689
.996
.928
.586
.999
.997
.984
.913
.554
5
4
3
2
1
5
4
.031
.112
.326
.733
.998
.038
.131
.999
.996
.980
.896
.526
.999
.995
3
2
1
5
4
3
2
.363
.773
.999
.046
.151
.400
.809
.975
.878
.500
.999
.993
.970
.858
X
.105
.110
.115
.120
.125
.130
.135
.140
.145
.150
S
1
5
4
3
2
5
4
D
.999
.055
.172
.438
.842
.065
.195
F
.476
.998
.992
.964
.837
.998
.990
3
2
6
5
4
3
2
.476
.870
.022
.076
.219
.514
.895
.958
.816
.999
.997
.988
.950
.793
6
5
4
3
2
6
5
.026
.088
.245
.552
.916
.031
.101
.999
.997
.986
.942
.770
.999
.996
4
3
2
6
5
4
3
.271
.589
.934
.037
.116
.299
.626
.983
.933
.748
.999
.995
.980
.923
2
6
5
4
3
2
6
.948
.043
.131
.328
.661
.960
.051
.725
.998
.994
.976
.912
.703
.998
5
4.
3
2
7
6
5
.148
.358
.695
.969
.017
.059
.166
.993
.972
.900
.682
.999
.998
.991
X
.150
.155
.160
.165
.170
.180
.190
.200
S
4
3
2
7
6
5
4
D
.388
.728
.976
.021
.068
.185
.419
F
.968
.887
.661
.999
.997
.990
.963
3
2
7
6
5
4
3
.758
.982
.024
.077
.205
.450
.787
.874
.641
.999
.997
.988
.957
.860
2
7
6
5
4
3
2
.987
.029
.088
.226
.482
.813
.990
.622
.999
.996
.986
.951
.845
.604
7
6
5
4
3
2
7
.033
.099
.248
.513
.838
.993
.044
.999
.995
.983
.945
.830
.587
.998
6
5
4
3
2
8
7
.125
.295
.575
.879
.996
.018
.058
.994
.978
.930
.799
.555
.999
.998
6
5
4
3
2
8
7
.154
.345
.636
.913
.998
.025
.074
.991
.971
.914
.768
.526
.999
.997
236
X
.200
.210
.220
.230
.230
.240
.250
.260
S
6
5
4
3
2
8
7
D
.187
.397
.693
.938
.999
.033
.093
F
.988
.963
.895
.736
.500
.999
.995
6
5
4
3
2
8
7
.223
.451
.745
.958
.999
.043
.115
.985
.954
.874
.706
.476
.998
.994
6
5
4
3
9
8
7
.263
.505
.793
.971
.018
.054
.140
.980
.943
.852
.677
.999
.998
.992
6
5
4
3
9
8
7
.306
.560
.834
.981
.024
.068
.168
.975
.931
.828
.649
.999
.997
.989
6
5
4
3
9
8
7
.351
.613
.870
.988
.031
.085
.199
.969
.917
.804
.623
.999
.996
.986
6
5
4
3
9
8
7
.398
.664
.900
.992
.039
.104
.233
.961
.901
.780
.599
.998
.994
.983
X
.260
.270
.280
.290
.300
.310
S
6
5
4
3
10
9
8
D
.446
.712
.924
.995
.016
.049
.125
F
.953
.884
.755
.576
.999
.998
.992
7
6
5
4
3
10
9
.270
.495
.757
.943
.997
.021
.061
.978
.943
.867
.731
.555
.999
.997
8
7
6
5
4
3
10
.149
.309
.544
.797
.958
.998
.027
.990
.973
.932
.848
.708
.536
.999
9
8
7
6
5
4
3
.075
.176
.351
.592
.833
.970
.999
.996
.988
.967
.920
.828
.685
.517
10
9
8
7
6
5
4
.034
.091
.205
.394
.639
.865
.978
.998
.995
.985
.961
.907
.808
.664
3
11
10
9
8
7
6
.999
.014
.043
.110
.237
.438
.684
.500
.999
.998
.993
.981
.953
.893
X
.310
.320
.330
.340
.360
.380
S
5
4
11
10
9
8
7
D
.892
.985
.018
.053
.130
.272
.483
F
.788
.643
.999
.997
.992
.977
.944
6
5
4
11
10
9
8
.727
.915
.989
.023
.065
.154
.309
.878
.768
.624
.999
.997
.990
.973
7
6
5
4
11
10
9
.529
.766
.933
.993
.029
.079
.179
.935
.862
.748
.605
.999
.996
.987
8
7
6
5
4
12
11
.347
.573
.802
.949
.995
.015
.045
.967
.924
.846
.729
.588
.999
.998
10
9
8
7
6
5
4
.112
.237
.429
.660
.863
.971
.998
.993
.981
.954
.901
.812
.691
.555
12
11
10
9
8
7
6
.024
.067
.154
.305
.513
.739
.909
.999
.996
.989
.973
.938
.874
.777
237
X
.380
.400
.420
.440
.440
.460
.480
S
5
4
13
12
11
10
9
D
.984
.999
.012
.037
.095
.205
.379
F
.656
.526
.999
.998
.994
.984
.962
8
7
6
5
13
12
11
.598
.807
.942
.992
.019
.055
.131
.918
.845
.744
.624
.999
.997
.991
10
9
8
7
6
5
13
.265
.458
.678
.863
.965
.996
.029
.977
.949
.896
.815
.711
.595
.999
12
11
10
9
8
7
6
.078
.175
.333
.540
.751
.907
.980
.995
.987
.969
.933
.872
.785
.680
5
14
13
12
11
10
9
.998
.014
.043
.109
.228
.407
.620
.568
.999
.998
.993
.982
.958
.914
8
7
6
5
14
13
12
.815
.939
.989
.999
.022
.063
.147
.846
.755
.651
.543
.999
.996
.990
X
.480
.500
.520
.540
.560
S
11
10
9
8
7
6
14
D
.289
.484
.695
.867
.962
.994
.033
F
.974
.944
.893
.819
.726
.625
.998
13
12
11
10
9
8
7
.088
.194
.358
.563
.764
.908
.977
.995
.985
.965
.929
.870
.791
.698
6
15
14
13
12
11
10
.997
.015
.048
.120
.248
.432
.641
.600
.999
.997
.992
.979
.954
.911
9
8
7
6
15
14
13
.824
.939
.987
.998
.023
.069
.161
.846
.764
.672
.577
.999
.996
.988
12
11
10
9
8
7
6
.311
.509
.713
.873
.961
.993
.999
.972
.941
.891
.821
.738
.648
.556
15
14
13
12
11
10
9
.035
.095
.209
.381
.586
.778
.912
.998
.994
.984
.963
.926
.869
.796
X
.560
.580
.600
.650
.700
.750
S
8
7
16
15
14
13
12
D
.976
.996
.015
.051
.129
.266
.455
F
.713
.625
.999
.997
.991
.978
.952
11
10
9
8
7
16
15
.662
.835
.941
.986
.998
.023
.072
.908
.847
.772
.689
.603
.999
.996
14
13
12
11
10
9
8
.171
.331
.532
.732
.882
.962
.992
.988
.970
.938
.889
.824
.748
.666
7
17
16
15
14
13
12
.999
.017
.061
.156
.314
.518
.720
.583
.999
.997
.989
.973
.943
.898
11
10
9
8
17
16
15
.872
.957
.990
.998
.047
.137
.295
.837
.767
.692
.615
.998
.991
.976
14
13
12
11
10
9
18
.503
.710
.866
.953
.988
.998
.031
.948
.905
.849
.783
.714
.643
.999
238
X
.750
.800
.850
.850
.900
.950
S
17
16
15
14
13
12
11
D
.113
.272
.487
.703
.864
.952
.988
F
.993
.980
.954
.913
.859
.798
.733
X
S
D
POPULAO 30
X
.032
.004
.007
.009
.010
.011
1
1
1
1
1
.116
.203
.260
.289
.317
.999
.998
.997
.996
.995
.034
10
19
18
17
16
15
14
.998
.014
.084
.242
.470
.700
.867
.667
.999
.996
.984
.959
.920
.869
.012
.013
.014
1
1
2
1
2
1
2
.346
.374
.067
.403
.076
.431
.085
.994
.993
.999
.991
.999
.989
.999
13
12
11
19
18
17
16
.955
.989
.998
.046
.201
.451
.703
.811
.750
.687
.998
.988
.965
.927
1
2
1
2
1
2
1
.458
.095
.486
.105
.513
.116
.541
.987
.999
.985
.999
.983
.999
.980
15
14
13
12
19
18
17
.877
.962
.991
.998
.135
.425
.717
.878
.823
.765
.706
.994
.972
.935
.020
2
1
2
1
2
1
2
.127
.567
.139
.594
.151
.620
.163
.998
.976
.998
.973
.998
.969
.997
16
15
14
13
19
18
17
.898
.973
.995
.999
.377
.760
.939
.886
.833
.778
.722
.981
.943
.894
.023
.024
1
2
1
2
1
2
1
.645
.175
.670
.188
.694
.201
.718
.965
.997
.960
.996
.954
.996
.948
16
15
.989
.999
.842
.789
.028
3
2
1
3
2
1
3
.051
.229
.763
.060
.257
.805
.071
.999
.995
.935
.999
.994
.918
.999
.015
.016
.017
.018
.019
.021
.022
.023
.025
.026
.030
.032
.036
.038
.040
.042
.044
.046
.048
.050
.052
.054
.056
S
2
1
3
2
1
3
2
D
.286
.843
.083
.316
.876
.095
.347
F
.992
.899
.999
.990
.877
.998
.988
1
3
2
1
3
2
1
.905
.109
.378
.929
.123
.410
.948
.853
.998
.986
.827
.997
.983
.800
3
2
1
4
3
2
1
.138
.442
.963
.040
.154
.474
.974
.997
.980
.772
.999
.996
.977
.744
4
3
2
1
4
3
2
.046
.171
.506
.982
.053
.189
.539
.999
.996
.972
.716
.999
.995
.968
1
4
3
2
1
4
3
.988
.060
.208
.571
.992
.068
.227
.689
.999
.994
.963
.663
.999
.993
2
1
4
3
2
1
4
.603
.995
.077
.247
.634
.997
.086
.957
.639
.998
.992
.951
.616
.998
239
X
.056
.058
.060
.062
.064
.066
.068
.070
.075
.080
.085
S
3
2
1
4
3
2
1
D
.267
.665
.998
.096
.288
.695
.999
F
.991
.944
.595
.998
.989
.936
.574
5
4
3
2
1
5
4
.030
.106
.310
.723
.999
.034
.117
.999
.997
.987
.927
.555
.999
.997
3
2
5
4
3
2
5
.332
.751
.038
.128
.355
.777
.043
.986
.918
.999
.997
.984
.908
.999
4
3
2
5
4
3
2
.140
.378
.802
.048
.153
.402
.825
.996
.982
.897
.999
.995
.979
.885
5
4
3
2
5
4
3
.054
.166
.426
.847
.069
.201
.486
.999
.995
.976
.873
.998
.993
.969
2
6
5
4
3
2
6
.893
.027
.088
.240
.547
.929
.036
.840
.999
.998
.990
.959
.805
.999
X
.085
.090
.095
.100
.105
.110
.110
.115
.120
S
5
4
3
2
6
5
4
D
.108
.282
.607
.955
.046
.132
.326
F
.997
.987
.948
.768
.999
.996
.984
X
.120
.125
S
2
8
7
6
5
4
3
D
.999
.024
.069
.171
.367
.666
.940
F
.555
.999
.998
.993
.977
.927
.783
3
2
6
5
4
3
2
.665
.972
.057
.158
.372
.720
.984
.934
.732
.999
.994
.979
.918
.697
.130
8
7
6
5
4
3
8
.030
.083
.197
.409
.712
.957
.037
.999
.997
.991
.972
.914
.758
.999
6
5
4
3
2
7
6
.071
.187
.421
.771
.991
.030
.087
.998
.993
.973
.899
.664
.999
.997
7
6
5
4
3
8
7
.098
.226
.451
.754
.970
.045
.115
.997
.989
.966
.899
.734
.999
.996
5
4
3
2
7
6
5
.219
.470
.816
.995
.038
.105
.253
.991
.967
.879
.634
.999
.997
.988
6
5
4
3
8
7
6
.256
.494
.793
.979
.055
.134
.288
.987
.960
.884
.710
.998
.995
.984
4
3
2
7
6
5
4
.520
.856
.997
.047
.125
.289
.570
.959
.857
.605
.999
.996
.985
.950
.150
5
4
3
9
8
7
6
.537
.828
.986
.024
.065
.155
.322
.952
.867
.687
.999
.998
.993
.980
3
2
7
6
5
4
3
.890
.998
.057
.147
.327
.619
.918
.833
.579
.998
.994
.981
.939
.808
.155
5
4
3
9
8
7
6
.580
.860
.991
.029
.077
.177
.357
.944
.849
.665
.999
.997
.992
.976
.135
.140
.145
240
X
.155
S
5
4
3
9
8
7
6
D
.622
.887
.994
.036
.090
.201
.394
F
.935
.830
.644
.999
.997
.990
.972
.165
5
4
3
9
8
7
6
.663
.910
.996
.043
.105
.227
.431
.924
.811
.624
.999
.996
.988
.967
.170
5
4
3
10
9
8
7
.702
.930
.997
.019
.051
.121
.254
.913
.792
.606
.999
.998
.995
.986
6
5
4
3
10
9
8
.469
.739
.946
.998
.028
.070
.158
.961
.901
.773
.588
.999
.997
.993
7
6
5
4
3
10
9
.313
.546
.806
.969
.999
.039
.094
.980
.948
.874
.735
.555
.999
.996
8
7
6
5
4
11
10
.200
.378
.621
.862
.983
.021
.054
.990
.973
.932
.845
.699
.999
.998
.160
.160
.180
.190
.200
X
.200
.210
.220
.230
.230
.240
.250
S
9
8
7
6
5
4
11
D
.123
.249
.446
.693
.905
.991
.030
F
.995
.985
.963
.913
.814
.665
.999
X
.250
S
11
10
9
8
7
6
5
D
.095
.192
.345
.552
.773
.932
.992
F
.996
.989
.975
.944
.885
.789
.666
10
9
8
7
6
5
4
.073
.157
.303
.515
.758
.938
.995
.997
.992
.980
.952
.892
.782
.634
.260
13
12
11
10
9
8
7
.023
.056
.121
.233
.402
.616
.823
.999
.998
.994
.986
.967
.930
.864
11
10
9
8
7
6
5
.041
.095
.197
.361
.585
.816
.961
.999
.996
.989
.974
.938
.868
.751
6
5
13
12
11
10
9
.954
.995
.032
.073
.151
.279
.462
.763
.641
.999
.997
.992
.981
.959
4
12
11
10
9
8
7
.998
.023
.056
.123
.242
.423
.652
.606
.999
.998
.994
.985
.965
.923
8
7
6
5
14
13
12
.676
.866
.970
.997
.017
.042
.093
.915
.841
.737
.617
.999
.998
.996
6
5
4
12
11
10
9
.864
.976
.999
.031
.074
.155
.291
.842
.721
.580
.999
.997
.992
.981
11
10
9
8
7
6
5
.185
.329
.522
.733
.901
.981
.999
.989
.976
.949
.898
.818
.712
.595
8
7
6
5
4
13
12
.487
.715
.902
.986
.999
.017
.042
.955
.905
.816
.693
.556
.999
.998
14
13
12
11
10
9
8
.023
.055
.117
.223
.382
.582
.785
.999
.998
.994
.986
.969
.937
.880
.270
.280
.290
241
X
.290
.300
.300
.310
.320
.330
S
7
6
5
14
13
12
11
D
.929
.988
.999
.031
.071
.145
.266
F
.795
.688
.575
.999
.997
.992
.982
X
.340
10
9
8
7
6
15
14
.437
.641
.830
.950
.993
.017
.041
.962
.924
.861
.771
.666
.999
.998
13
12
11
10
9
8
7
.090
.177
.312
.494
.697
.869
.966
.996
.990
.977
.953
.909
.840
.749
6
15
14
13
12
11
10
.996
.023
.054
.113
.213
.362
.552
.645
.999
.998
.994
.987
.971
.943
.380
9
8
7
6
15
14
13
.748
.901
.977
.997
.030
.068
.139
.893
.820
.727
.625
.999
.997
.993
.380
12
11
10
9
8
7
6
.253
.414
.608
.795
.927
.985
.999
.983
.965
.931
.876
.799
.706
.606
.360
.400
S
16
15
14
13
12
11
10
D
.016
.040
.086
.169
.296
.468
.663
F
.999
.998
.996
.990
.979
.957
.918
9
8
7
6
16
15
14
.836
.947
.990
.999
.029
.065
.132
.858
.778
.685
.588
.999
.997
.993
13
12
11
10
9
8
7
.240
.392
.578
.762
.902
.974
.996
17
16
15
14
13
12
11
X
.420
S
18
17
16
15
14
13
12
D
.024
.056
.116
.212
.350
.521
.700
F
.999
.997
.994
.986
.972
.948
.910
11
10
9
8
19
18
17
.850
.945
.986
.998
.017
.041
.087
.856
.789
.713
.635
.999
.998
.996
.984
.967
.937
.889
.821
.738
.648
16
15
14
13
12
11
10
.167
.288
.446
.623
.787
.906
.970
.990
.979
.960
.929
.883
.824
.755
.020
.048
.101
.191
.324
.496
.682
.999
.998
.995
.988
.975
.952
.914
9
8
19
18
17
16
15
.994
.999
.028
.064
.129
.232
.375
.681
.606
.999
.997
.993
.985
.970
10
9
8
7
17
16
15
.843
.945
.988
.999
.035
.076
.150
.857
.784
.701
.614
.999
.996
.992
14
13
12
11
10
9
20
.545
.717
.857
.945
.985
.997
.019
.944
.906
.855
.793
.724
.652
.999
14
13
12
11
10
9
8
.264
.420
.601
.775
.903
.972
.995
.982
.964
.933
.886
.823
.748
.666
19
18
17
16
15
14
13
.046
.098
.184
.310
.470
.643
.799
.998
.995
.989
.977
.957
.926
.881
.440
.460
.480
242
X
.480
.500
.500
.520
.540
.560
.850
.900
S
12
11
10
9
20
19
18
D
.910
.970
.993
.999
.032
.072
.143
F
.826
.762
.694
.625
.999
.997
.992
17
16
15
14
13
12
11
.252
.398
.568
.733
.865
.947
.985
.983
.967
.941
.904
.854
.796
.732
10
21
20
19
18
17
16
.997
.021
.051
.108
.200
.331
.493
.667
.999
.998
.994
.988
.975
.954
15
14
13
12
11
10
21
.663
.811
.915
.971
.993
.999
.035
.923
.880
.827
.767
.705
.641
.999
20
19
18
17
16
15
14
.079
.155
.270
.421
.590
.750
.874
.996
.991
.981
.965
.938
.901
.854
13
12
11
10
22
21
20
.949
.985
.997
.999
.023
.056
.117
.799
.740
.679
.617
.999
.997
.994
22
21
20
19
29
28
27
.957
.987
.997
.999
.047
.200
.441
.862
.823
.784
.745
.999
.992
.977
X
.560
.580
.600
.600
.650
.900
.950
S
19
18
17
16
15
14
13
D
.215
.352
.516
.683
.824
.920
.972
F
.986
.973
.952
.920
.878
.828
.772
12
11
23
22
21
20
19
.993
.999
.014
.038
.085
.167
.288
.714
.655
.999
.998
.996
.990
.980
18
17
16
15
14
13
12
.443
.612
.766
.883
.953
.985
.997
.963
.936
.899
.854
.802
.746
.690
11
23
22
21
20
19
18
.999
.024
.059
.125
.230
.372
.538
.632
.999
.997
.993
.986
.972
.949
17
16
15
14
13
12
24
.702
.837
.927
.974
.993
.999
.031
.918
.877
.829
.776
.722
.667
.999
23
22
21
20
19
18
17
.076
.158
.281
.439
.610
.764
.879
.996
.991
.982
.965
.940
.906
.865
26
25
24
23
22
21
29
.683
.856
.947
.985
.996
.999
.226
.953
.923
.888
.852
.815
.778
.993
X
.650
.700
.750
.800
.850
.950
S
16
15
14
13
25
24
23
D
.949
.983
.996
.999
.039
.096
.196
F
.818
.769
.718
.667
.998
.995
.989
22
21
20
19
18
17
16
.339
.511
.681
.821
.916
.967
.990
.977
.958
.930
.894
.853
.808
.762
15
26
25
24
23
22
21
.997
.046
.118
.240
.405
.587
.752
.714
.998
.994
.986
.972
.950
.920
20
19
18
17
16
27
26
.873
.946
.981
.995
.999
.053
.143
.883
.842
.799
.755
.711
.998
.993
25
24
23
22
21
20
19
.292
.481
.670
.822
.919
.970
.991
.984
.966
.941
.909
.872
.832
.791
18
28
27
26
25
24
23
.998
.055
.171
.356
.571
.760
.888
.750
.998
.993
.981
.960
.932
.899
28
27
26
25
24
.574
.831
.951
.989
.998
.973
.945
.912
.877
.842
Bibliografia
[1]
Paul A. Jensen and J. Wesley Barnes, Network Flow Programming, John Wiley & Sons, 1980.
[2]
[3]
[4]
[5]
[6]
Mokhtar S. Bazaraa, John J. Jarvis and Hanif D. Sherali, Linear Programming and Network Flows, 2a Edtion, John Wiley & Sons, 1990.
[7]
Frederick S. Hillier and Gerald J. Lieberman, Introduction to Operations Research, 7a Edition, McGraw-Hill, 2001.
[8]
J Murdoch, Queueing Theory - Worked Examples and Problems, The MacMillan Press, 1978.
[9]
244
BIBLIOGRAFIA
[16] J.A. White, J.W. Schmidt and G.K. Bennett, Analysis of Queueing Systems,
Academic Press, 1975.
[17] W.J. Fabrycky, P.M. Ghare and P.E. Torgersen, Industrial Operations Research, Prentice-Hall, 1972.
[18] Elwood S. Buffa, Operations Management - Problems and Models, 3a Edition,
John Wiley & Sons, 1972.
[19] Laurence J. Moore, Sang M. Lee and Bernard W. Taylor, Management Science,
Allyn and Bacon, 1993.
[20] Joseph J. Moder and Cecil R. Phillips, Project Management with CPM and
PERT, 2a Edition, Van Nostrand, 1970.
[21] Arnold O. Allen, Probability, Statistics and Queueing Theory with Computer
Science Applications, 2a Edition, Academic Press, 1990.
[22] Averril M. Law and W.David Kelton, Simulation Modeling and Analysis, 3a
Edition, McGraw-Hill, 2000.
[23] W.David Kelton, Randall P. Sadowski and Deborah A. Sadowski, Simulation
with Arena, 2a Edition, McGraw-Hill, 2000.
[24] Paulo Jos de Freitas Filho, Introduo a Modelagem e Simulao de Sistemas, Visual Books, 2001.
[25] Kevin Watkins, Discret Event Simulation in C, McGraw-Hill, 1993.
[26] Jerry Banks, John S. Carson II and Barry L. Nelson, Discret-Event System
Simulation, 2a Edition, Prentice Hall, 1996.
[27] James R. Evans and David L. Olsen, Introduction to Simulation and Risk
Analysis, Prentice-Hall, 1998.