1
© UNESP 6 Agosto 2008
Autor: Anibal Tavares de Azevedo
Limeira, 26 de Setembro 2013
MODELOS E SIMULAÇÃO DE SISTEMAS
AULA 7
2
© UNESP 6 Agosto 2008
Teoria de Filas - Resumo
Chegada A
A Supõe a chegada de apenas um usuário por instante. O tempo para ocorrer uma chegada é função de prob.
Atendimento C1
C Pode ter servidores em paralelo (C2) ou em série (C1). O tempo de serviço é associado a função de distrib.
C2
C Fila
B
3
© UNESP 6 Agosto 2008
Teoria de Filas - Resumo
1 / 2 / 3 / 4 / 5 / 6
1 2 3 4 5 6
1 Natureza do processo de chegada. Ex.: M – variáveis aleatórias iid como função de distribuição exponencial. 2 Natureza do processo de serviço. Ex.: M – variáveisaleatórias iid como função de distribuição exponencial.
Notação de Kendall- Lee
3 Número de servidores em paralelo.
4 Organização da fila: FCFS – Primeiro a entrar, primeiro a sair (First come, first served), p. ex. 5 Número máximo de clientes no sistema (totalizando clientes na fila e em atendimento). 6 Tamanho da população de clientes.
4
© UNESP 6 Agosto 2008
Teoria de Filas - Resumo
1 / 2 / 3 / 4 / 5 / 6
1 2 3 4 5 6
1 Natureza do processo de chegada. Ex.: M – variáveis aleatórias iid como função de distribuição exponencial. Notação de Kendall- Lee
Seja tio tempo que o i-ésimo cliente chega e Ti= ti+1– ti o i-ésimo intervalo entre chegadas tal como abaixo:
5
© UNESP 6 Agosto 2008
Na maioria das aplicações uma questão importante é Escolher A de modo a refletir a realidade, mas ainda ser
Computacional tratável. A escolha mais comum para A é a função de distribuição exponencial, ou seja:
Teoria de Filas - Resumo
Onde: λλλλ- é a taxa de chegada (no. chegadas/hora, p.ex.).
0 1 2 3 4 5 6 7 8 9 10
0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5
a
(t
)=λ
e
-λ
t
t
Gráfico de a(t)=λe-λt para λ = 0.5
O principal motivo para escolha da exponencial é devido a propriedade de que ela não tem memória. Ou seja:
P(A > t + h | A ≥≥≥≥t) = P (A > h)
6
© UNESP 6 Agosto 2008
Teoria de Filas - Resumo
P(A > t + h | A ≥≥≥≥t) = P (A > h)
(A ≥≥≥≥t) – Não ocorreu nenhuma chegada até o tempo t.
2 1
1
(A > t + h) – Não ocorrerá nenhuma chegada nas próximas h horas.
2
(A > h) – Tempo até ocorrer a próxima chegada. 3
3
7
© UNESP 6 Agosto 2008
Teoria de Filas - Resumo
A maioria dos sistemas de filas com tempos exponenciais de intervalos de chegadas e tempos de serviço podem ser
modelados por processo de nascimento e morte.
A propriedade de ausência de memória da exponencial garante que a probabilidade de ocorrer uma chegada no intervalo [t, t+∆∆∆∆t] não depende de há quanto tempo o sistema
está no estado j e só depende da taxa λλλλ. Idem p/ serviço.
8
© UNESP 6 Agosto 2008
Processos de Nascimento-Morte:
Para problemas de filas ππππj pode ser entendido como:
TEORIA DE FILAS
(1)A probabilidade de que existam j clientes no sistema.
Tempo t = 0 i
Tempo t j
Pij(n) = ππππj
9
© UNESP 6 Agosto 2008
(2)A fração de tempo na qual j clientes estão no sistema.
Fração ππππi i
Fração ππππj j
TEORIA DE FILAS
T sistema
10
© UNESP 6 Agosto 2008
Teoria de Filas - Resumo
A partir das considerações anteriores é possível construir as equações de balanço do processo de morte e nascimento e a partir delas derivar as probabilidades de regime
permanente e assim obter:
L Número médio de clientes presentes no sistema. Lq Número médio de clientes esperando na fila. Ls Número médio de clientes em serviço.
11
© UNESP 6 Agosto 2008
Teoria de Filas - Resumo
Para o Sistema de Filas M/M/1/GD/∞∞∞∞/∞∞∞∞
L = λλλλ/(µµµµ-λλλλ) Lq = λλλλ2/µµµµ(µµµµ-λλλλ)
Ls = ρρρρ2/(1 -ρρρρ), onde: ρρρρ= λλλλ/µµµµ
12
© UNESP 6 Agosto 2008
Teoria de Filas - Resumo
Exemplo 1: Drive-in Banking. Uma média de 10 carros por hora chegam a um drive-in tipo servidor simples. Assumir que o tempo médio de serviço para cada cliente é de 4 minutos e tanto os tempos entre as chegadas e o tempos de serviço são exponenciais. Responder as perguntas:
(1) Qual a média de número de carros esperando na fila? (um carro em atendimento não é considerado na fila)
Lq = λλλλ2/µµµµ(µµµµ-λλλλ) = (100)/(15(15-10)) = 4/3 clientes Por hipótese, a taxa de chegada λλλλ= 10 e a taxa de atendimento é de µµµµ= 60/4 = 15.
13
© UNESP 6 Agosto 2008
Modelo de Fila M/M/1/GD/∞∞∞∞/∞∞∞∞:
2 1 0 λλλλ µµµµ λλλλ µµµµ ••• ••• ••• ••• λλλλ µµµµ
Modelo de Fila M/M/1/GD/c/∞∞∞∞:
2 1 0 λλλλ µµµµ λλλλ µµµµ c c-1 λλλλ µµµµ λλλλ µµµµ ••• ••• ••• ••• λλλλ µµµµ
Teoria de Filas - Resumo
14
© UNESP 6 Agosto 2008
Modelo de Fila M/M/s/GD/∞∞∞∞/∞∞∞∞:
2 1 0 λλλλ 2µµµµ λλλλ µµµµ s+1 s λλλλ sµµµµ λλλλ sµµµµ ••• ••• ••• •••
Caso 1 Caso 2
••• •••••• •••
Modelo de Fila M/M/R/GD/K/K:
2 1 0 2µµµµ 5λλλλ µµµµ 4 3 2µµµµ 2µµµµ 5 2µµµµ
4λλλλ 3λλλλ 2λλλλ λλλλ
Caso 1 Caso 2
15
© UNESP 6 Agosto 2008
Fila x Simulação Discreta por Evento
Chegada
A Atendimento
C1 C
Teoria de Filas
Função de distribuição de probabilidade Exponencial
012345678910 0 0.05 0. 1 0.15 0. 2 0.25 0. 3 0.35 0. 4 0.45 0. 5 a(t)= λ e-λ t t
Gráfico de a(t )=λe-λt para λ = 0.5
012345678910 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 a(t)= λ e-λ t t
Gráfico de a(t)=λe-λt para λ = 0.5
Modelos M/M/1
16
© UNESP 6 Agosto 2008
Filas x Simulação Discreta por Evento
Chegada
A Atendimento
C1 C
Teoria de Filas
Função de distribuição de probabilidade empírica !!!
012345678910 0 0.05 0.1 0.15 0.2 0.25 0.3 0.35 0.4 0.45 0.5 a(t)= λ e-λ t t
Gráfico de a(t)=λe-λt para λ = 0.5
Modelos M/M/1
17
© UNESP 6 Agosto 2008
Ferramenta de Simulação
Duas mulheres operando o ENIAC (fotografia pertencente ao Exército
dos Estados Unidos (U.S. Army) em Fevereiro de 1946.
Alguns dados:
•Peso de cerca de 30 toneladas
•Ocupava 270m2
•Capacidade de processamento:
5x103FLOPS/s
Alguns dados de um Laptop:
•Peso de cerca de 3 quilos
•Ocupa 30 cm2
•Capacidade de processamento:
8x109FLOPS/s
18
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Eventos (mudam o estado) do Sistema – 1 servidor
Chegada Saída
Lista de Eventos
Evento | Tempo
Tempo em que cada evento ocorre
Variável Tempo do
19
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
t = 0
Chegada
Tempo da simulação
Usar fluxograma 1
Chegada
Estado servidor Cliente entra
em serviço
Cliente entra na fila
Vazio Cheio
Fluxograma 1
20
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
t = T1 Saída
Tempo da simulação
Usar fluxograma 2
Partida
Fila Vazia? Remover cliente da fila
e começar serviço
Mudar estado p/ servidor ocioso
Não Sim
Fluxograma 2
21
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Lista de Eventos
Evento | Tempo
Chegada
Tempo Saída= Tempo relógio + tempo gerado serviço Saída
Tempo Chegada= Tempo relógio + tempo gerado chegada
Mecanismo de avanço do tempo por próximo evento !!!
22
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Mecanismo de avanço do tempo via próximo evento
Método de incremento fixo do tempo
No primeiro método o relógio do processo de simulação Avança até o tempo em que deverá ocorrer o próximo evento da lista de eventos. Esta abordagem é justificada,
23
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Inicializar as variáveis de estado 1
< ? 2
Processar uma chegada.
Sim 3
Processar uma saída.
4
Tempo atual < Tempo Total?
Não
Sim
Imprima resultados e pare.
Não
5
24
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Atualizar relógio para o horário da próxima chegada (TM=AT);
Se o servidor está ocioso (SS = = 0)
Então
Marcar o servidor como ocupado (SS=1);
Gerar o tempo de serviço (ST);
Agendar a próxima saída (DT = TM + ST);
Senão
Atualizar o tamanho da fila (WL = WL + 1);
Fim se
Gerar o tamanho do intervalo da próxima chegada (IT);
Agendar a próxima chegada (AT = TM + IT); Processar uma chegada.
25
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Atualizar relógio para o horário da próxima saída (TM=DT);
Se o tamanho da fila é maior que zero (WL > 0)
Então
Atualizar o tamanho da fila (WL = WL-1);
Gerar o tempo de serviço (ST);
Agendar a próxima saída (DT = TM + ST);
Senão
Atualizar o estado do servidor (SS = 0);
Agendar uma saída fictícia (DT = 9999)
Fim se
Processar uma saída.
4
26
© UNESP 6 Agosto 2008
Exemplo de Simulação
Tempo entre chegadas (min)
Probabilidade
1 0.20
2 0.30
3 0.35
4 0.15
Tempo de serviço (min)
Probabilidade
1 0.35
2 0.40
3 0.25
Cliente Tempo entre
chegadas (min)
Tempo de serviço
(min)
1 - 3
2 2 3
3 2 2
4 3 1
5 4 1
6 2 2
7 1 1
8 3 2
9 3
27
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Tempo entre
chegadas (min)
Tempo de serviço
(min)
1 - 3
2 2 3
3 2 2
0 A1
1 2
A2
3
D1
4 A3
...
Usa-se a tabela de tempo entre as chegadas e tempo de serviço para se obter a linha do tempo dos eventos.
28
© UNESP 6 Agosto 2008
Exemplo de Simulação
TM – Tempo da simulação (minutos). SS – servidor está ocioso (0) ou ocupado (1). WL – Tamanho da fila.
AT – Tempo agendado para a próxima chegada (minutos). DT – Tempo agendado para a próxima saída (minutos).
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
29
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 4 3
Saída 1 3 1 0 4 6
Chegada 3 4 1 1 7 6
0 A1
1 2
A2
3
D1
4 A3
...
30
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Exercício 1: Usar as informações anteriores de chegadas e processamento, o fluxograma dado abaixo e a linha de tempo para preencher o com os valores das variáveis do
31
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Inicializar as variáveis de estado 1
≤ ?
2
Processar uma chegada.
Sim 3
Processar uma saída.
4
Tempo atual < Tempo Total?
Não
Sim
Imprima resultados e pare.
Não
5
32
© UNESP 6 Agosto 2008
Exemplo de Simulação
0 1 2
3
4
...
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada
Chegada
Saída
33
© UNESP 6 Agosto 2008
Exemplo de Simulação
0 1 2
3
4
...
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada
Chegada
Saída
Chegada
34
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Inicializar as variáveis de estado 1
≤ ?
2
Processar uma chegada.
Sim 3
Processar uma saída.
4
Tempo atual < Tempo Total?
Não
Sim
Imprima resultados e pare.
Não
35
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Atualizar relógio para o horário da próxima chegada (TM=AT);
Se o servidor está ocioso (SS = = 0)
Então
Marcar o servidor como ocupado (SS=1);
Gerar o tempo de serviço (ST);
Agendar a próxima saída (DT = TM + ST);
Senão
Atualizar o tamanho da fila (WL = WL + 1);
Fim se
Gerar o tamanho do intervalo da próxima chegada (IT);
Agendar a próxima chegada (AT = TM + IT); Processar uma chegada.
3
36
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0
Chegada
Saída
Chegada
0 A1
1 2
3
4
37
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Atualizar relógio para o horário da próxima chegada (TM=AT);
Se o servidor está ocioso (SS = = 0)
Então
Marcar o servidor como ocupado (SS=1);
Gerar o tempo de serviço (ST);
Agendar a próxima saída (DT = TM + ST);
Senão
Atualizar o tamanho da fila (WL = WL + 1);
Fim se
Gerar o tamanho do intervalo da próxima chegada (IT);
Agendar a próxima chegada (AT = TM + IT); Processar uma chegada.
3
38
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Tempo entre
chegadas (min)
Tempo de serviço
(min)
1 - 3
2 2 3
3 2 2
0 A1
1 2
3
D1
4
...
39
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 3
Chegada
Saída
Chegada
0 A1
1 2
3
4
...
D1
40
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Atualizar relógio para o horário da próxima chegada (TM=AT);
Se o servidor está ocioso (SS = = 0)
Então
Marcar o servidor como ocupado (SS=1);
Gerar o tempo de serviço (ST);
Agendar a próxima saída (DT = TM + ST);
Senão
Atualizar o tamanho da fila (WL = WL + 1);
Fim se
Gerar o tamanho do intervalo da próxima chegada (IT);
Agendar a próxima chegada (AT = TM + IT); Processar uma chegada.
41
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Tempo entre
chegadas (min)
Tempo de serviço
(min)
1 - 3
2 2 3
3 2 2
0 A1
1 2
A2
3
D1
4 A3
...
Usa-se a tabela de tempo entre as chegadas e tempo de serviço para se obter a linha do tempo dos eventos.
42
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada
Saída
Chegada
0 A1
1 2
3
4
...
A2
43
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada
Saída
Chegada
0 A1
1 2
3
4
...
A2
D1
44
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Inicializar as variáveis de estado 1
≤ ?
2
Processar uma chegada.
Sim 3
Processar uma saída.
4
Tempo atual < Tempo Total?
Não
Sim
Imprima resultados e pare.
Não
45
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2
Saída
Chegada
0 A1
1 2
3
4
...
A2
D1
46
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Inicializar as variáveis de estado 1
≤ ?
2
Processar uma chegada.
Sim 3
Processar uma saída.
4
Tempo atual < Tempo Total?
Não
Sim
Imprima resultados e pare.
Não
47
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Atualizar relógio para o horário da próxima chegada (TM=AT);
Se o servidor está ocioso (SS = = 0)
Então
Marcar o servidor como ocupado (SS=1);
Gerar o tempo de serviço (ST);
Agendar a próxima saída (DT = TM + ST);
Senão
Atualizar o tamanho da fila (WL = WL + 1);
Fim se
Gerar o tamanho do intervalo da próxima chegada (IT);
Agendar a próxima chegada (AT = TM + IT); Processar uma chegada.
3
48
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 3
Saída
Chegada
0 A1
1 2
A2
3
D1
4
49
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Atualizar relógio para o horário da próxima chegada (TM=AT);
Se o servidor está ocioso (SS = = 0)
Então
Marcar o servidor como ocupado (SS=1);
Gerar o tempo de serviço (ST);
Agendar a próxima saída (DT = TM + ST);
Senão
Atualizar o tamanho da fila (WL = WL + 1);
Fim se
Gerar o tamanho do intervalo da próxima chegada (IT);
Agendar a próxima chegada (AT = TM + IT); Processar uma chegada.
3
50
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Tempo entre
chegadas (min)
Tempo de serviço
(min)
1 - 3
2 2 3
3 2 2
0 A1
1 2
3
D1
4
...
Usa-se a tabela de tempo entre as chegadas e tempo de serviço para se obter a linha do tempo dos eventos.
51
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 4 3
Saída
Chegada
0 A1
1 2
A2
3
D1
4 A3
...
52
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 4 3
Saída
Chegada
0 A1
1 2
A2
3
D1
4 A3
53
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Inicializar as variáveis de estado 1
≤ ?
2
Processar uma chegada.
Sim 3
Processar uma saída.
4
Tempo atual < Tempo Total?
Não
Sim
Imprima resultados e pare.
Não
5
54
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 4 3
Saída 1 3
Chegada
0 A1
1 2
A2
3
D1
4 A3
55
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Inicializar as variáveis de estado 1
≤ ?
2
Processar uma chegada.
Sim 3
Processar uma saída.
4
Tempo atual < Tempo Total?
Não
Sim
Imprima resultados e pare.
Não
5
56
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Atualizar relógio para o horário da próxima saída (TM=DT);
Se o tamanho da fila é maior que zero (WL > 0)
Então
Atualizar o tamanho da fila (WL = WL-1);
Gerar o tempo de serviço (ST);
Agendar a próxima saída (DT = TM + ST);
Senão
Atualizar o estado do servidor (SS = 0);
Agendar uma saída fictícia (DT = 9999)
Fim se
Processar uma saída.
57
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 4 3
Saída 1 3 0
Chegada
0 A1
1 2
A2
3
D1
4 A3
...
58
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Atualizar relógio para o horário da próxima saída (TM=DT);
Se o tamanho da fila é maior que zero (WL > 0)
Então
Atualizar o tamanho da fila (WL = WL-1);
Gerar o tempo de serviço (ST);
Agendar a próxima saída (DT = TM + ST);
Senão
Atualizar o estado do servidor (SS = 0);
Agendar uma saída fictícia (DT = 9999)
Fim se
Processar uma saída.
59
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Tempo entre
chegadas (min)
Tempo de serviço
(min)
1 - 3
2 2 3
3 2 2
0 A1
1 2
3
D1
4
...
Usa-se a tabela de tempo entre as chegadas e tempo de serviço para se obter a linha do tempo dos eventos.
A2 A3
60
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 4 3
Saída 1 3 1 0 4 6
0 A1
1 2
A2
3
D1
4 A3
61
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 4 3
Saída 1 3 1 0 4 6
0 A1
1 2
A2
3
D1
4 A3
...
62
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Inicializar as variáveis de estado 1
≤ ?
2
Processar uma chegada.
Sim 3
Processar uma saída.
4
Tempo atual < Tempo Total?
Não
Sim
Imprima resultados e pare.
Não
63
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 4 3
Saída 1 3 1 0 4 6
Chegada 3 4
0 A1
1 2
A2
3
D1
4 A3
...
64
© UNESP 6 Agosto 2008
Simulação Discreta por Evento
Inicializar as variáveis de estado 1
≤ ?
2
Processar uma chegada.
Sim 3
Processar uma saída.
4
Tempo atual < Tempo Total?
Não
Sim
Imprima resultados e pare.
Não
65
© UNESP 6 Agosto 2008
Exemplo de Simulação
Cliente Variáveis do Sistema Lista de Eventos
Evento Cliente TM SS WL AT DT
Inicia. - 0 0 0 0 9999
Chegada 1 0 1 0 2 3
Chegada 2 2 1 1 4 3
Saída 1 3 1 0 4 6
Chegada 3 4 1 1 7 6
0 A1
1 2
A2
3
D1
4 A3
...
66
© UNESP 6 Agosto 2008
67
© UNESP 6 Agosto 2008