86_sim_giovanapasa_2012abr16

Download Report

Transcript 86_sim_giovanapasa_2012abr16

MODELAGEM DE SISTEMAS
SIMULAÇÃO
Parte I
Profa. Giovana Pasa, Dra.
[email protected]
Universidade Federal do Rio Grande do Sul
Escola de Engenharia
Programa de Pós Graduação em Engenharia de Produção
Ponto de partida

I keep six honest serving-men
(They taught me all I knew);
Their names What and Why, When
And How and Where and Who”.
Rudyard Kipling apud Carnegie (1956)
2
What

O que precisamos fazer em nosso trabalho?
3
What





gerenciar
decidir
resolver problemas
aprender
domínio da situação
4
Why

Por que?
5
Why




sermos a referência
competitividade
melhores resultados
sobrevivência
benchmark*
marco geodésico,
referência de nível
* http://www.merriam-webster.com/dictionary/benchmark
6
When

Quando?
7
When
futuro
hoje
8
How

Como?

Simulando:

realidade existente: cenários, decisões

projetos futuros: alternativas, impacto

técnica de aprendizagem organizacional
9
Where (Onde) MANUFATURA
10
Where (Onde) MANUFATURA
11
Where (Onde) SERVIÇOS
12
Where

Onde?
Logística
13
14
Who

Quem?
 especialistas em modelagem
 usuários do sistema
 clientes do sistema
 especialistas em áreas complementares
 vocês
15
INICIANDO O ESTUDO

História:
 1908
 matemático A. K. Erlang
 central telefônica de Copenhagen
 objetivo: ligações prontamente atendidas
 problema: dimensionar para não haver
congestionamentos
 solução: MODELAGEM
16
Modelagem matemática de Erlang

Erlang desenvolveu um modelo para o sistema
da central telefônica





chamadas chegam aleatoriamente na central
produzem ou não conexão, dependendo da
disponibilidade de linhas
havendo linha, a ligação é imediata
não havendo, usuário recebe sinal de ocupado
e ligação é perdida
deverá tentar posteriormente
17
Modelagem matemática

Erlang desenvolveu um modelo para o sistema
SISTEMA:
“Conjunto de entidades que interagem com o objetivo de
atingir algum fim lógico.”
MODELO:
Para estudar um sistema é preciso estabelecer
pressupostos a respeito de seu funcionamento.
Esses tomam a forma de expressões matemáticas ou
lógicas que constituem o modelo.
18
TEORIA DAS FILAS

Erlang desenvolveu modelos matemáticos que oferecem
soluções analíticas
TEORIA DAS FILAS

Útil para: malhas de transportes, redes de
computadores, manufatura, serviços,…
19
Terminologia em TEORIA DAS FILAS
1 - Processo de chegada

processo de chegada
(arrival ou input
process)
Descreve a
forma como
os clientes
chegam no
sistema.
•um cliente por vez
•grupos
20
2 - Processo de atendimento


processo de
atendimento


descreve a forma como
os clientes são
atendidos
distribuição do tempo
de atendimento
um ou mais servidores
série ou paralelo
(service or output
process)
21
Para modelarmos os processos de
chegada e atendimento...
... podemos ter uma modelagem determinística (D)
ou podemos ter as distribuições de probabilidade
(ddp). Algumas delas são:
M – exponencial
U - Uniforme
G – geral ou arbitrária
Mais adiante serão estudadas em detalhe.
22
3 – Número de atendentes
um atendente
vários
23
4 - Regra ou disciplina da fila

descreve a ordem em que os clientes serão
atendidos

primeiro a chegar é o primeiro a ser atendido


último a chegar é o primeiro a ser atendido



FCFS – first come, first served
LCFS – last come, first served
aleatório em relação à chegada
prioridades por categorias
24
5 – Número máximo de clientes no sistema
limitado
infinito

25
6 - População


Fonte infinita –
chegadas independem do nro
de clientes no sistema
Fonte finita – dependem
- população
pequena
- desistem em
função do
tamanho da fila
26
FILAS: elementos básicos
Os elementos básicos das filas são os seis
apresentados, especialmente:
  - taxa de chegada
  - taxa de atendimento
A notação de Kendall- Lee organiza estes
elementos da seguinte forma:
27
Notação Kendall-Lee
1/2/3/4/5/6
1 – processo de chegada
2 – processo de atendimento
3 – número de atendentes
4 – regra da fila
5 – número máximo de clientes no sistema
6 – tamanho da população
28
exemplo:
M/M/1
1 – processo de chegada exponencial
2 – processo de atendimento exponencial
3 – número de atendentes = 1
4 – regra da fila: geral
5 – número máximo de clientes no sistema:
6 – tamanho da população: 

29
FILAS
CLIENTE NA FILA
CLIENTE SENDO ATENDIDO
SISTEMA
chegada
IC

fila
atendimento
TF NF
TA NA 
sistema
TS NS
saída
30
FILAS
 - taxa de chegada
 - taxa de
atendimento
chegada
IC

IC – tempo médio entre chegadas IC=1/ 
TF - tempo médio na fila
NF – número médio de clientes na fila
TA - tempo médio de atendimento TA=1/
NA – número médio de clientes em atendimento
TS - tempo médio no sistema
NS – número médio de clientes no sistema
fila
atendimento
TF NF
c TA NA 
sistema
TS NS
saída
31
Fórmulas básicas
NS = NF + NA
TS = TF + TA
NA = /  = TA/IC
NS = NF + NA = NF + (/ ) = NF + (TA/IC)
intensidade de tráfego  =  /
chegada
IC

fila
atendimento
TF NF
c TA NA 
sistema
TS NS
saída
32
Fórmulas de Little
Aplicáveis a sistemas estáveis:

intensidade de tráfego  < 1, ou seja,  < 

 - taxa média de chegada constante

 - taxa média de atendimento constante
NF =  . TF
NS =  . TS
NA =  . TA
33
Exemplo
1. Precisamos retirar dinheiro no quiosque de caixas automáticos.
Sabemos que:
 chegam  = 20 clientes por hora
 a taxa de atendimento é  = 25 clientes por hora
 o tempo médio que cada cliente gasta no sistema é TS = 0,3
horas (18 min.)

a) Qual a intensidade de tráfego ()?
b) Qual o tamanho médio da fila que vamos encontrar (NF)?
c) Qual o número médio de clientes no quiosque (NS)?
d) Qual o número médio de clientes sendo atendidos (NA)?
34



chegam  = 20 clientes por hora
a taxa de atendimento é  = 25 clientes por hora
o tempo que cada cliente gasta no sistema é TS = 0,3 horas (18 min.)

a) Qual a intensidade de tráfego ()?
 =  /
 =20/25=0,8

b) NF=?
NF = . TF = 20. TF
TS = TF + TA ou
TF = TS – TA
TA = 1/  = 1/25 = 0,04 h
Substituindo:
TF = 0,3 – 0,04 = 0,26 h
NF = . TF = 20. 0,26 = 5,2 clientes
35





chegam  = 20 clientes por hora
a taxa de atendimento é  = 25 clientes por hora
o tempo que cada cliente gasta no sistema é TS = 0,3 horas (18 min.)
c) NS = . TS
NS = 20. 0,3 = 6 clientes
d) NA = . TA
TA = 1/  = 1/25 = 0,04
NA = 20. 0,04 = 0,8 clientes
36
Ao chegar ao quiosque, o que veremos será:
37
atividade 1 - lancheria





A1. Na hora do intervalo, cada aluno desloca-se até o balcão de
lanches. Verificou-se que:

cada atendente é capaz de alcançar os lanches aos alunos a
uma taxa de =9 lanches/min);
 a taxa de chegada de alunos no balcão é de = 4 alunos/min.
a) Qual a intensidade de tráfego ?
b) Qual o tempo médio de atendimento (TA)?
c) Observando-se que a fila tem em média 10 alunos, determine o
tempo que o aluno permanece na fila (TF).
d) Considerando a informação do item c, calcule o tempo médio
de permanência de um aluno na lancheria (TS).
38
Teoria das Filas aplicada a sistemas M/M/1

Lembrando M/M/1:
1 – processo de chegada exponencial
2 – processo de atendimento exponencial
3 – número de atendentes = 1
4 – regra da fila: geral
5 – número máximo de clientes no sistema: infinito
6 – tamanho da população: infinito
Solução analítica:
fórmulas matemáticas
 usa o conhecimento sobre o
comportamento das distribuições
39
Propriedades de um sistema M/M/1/G/  / 
2
númeromédio de clientes na fila NF 
    
núm ero m édio de clientesno sistem a NS 
tem po m édio na fila TF 

   

    
tem po m édio no sistem a TS 
1
   
    
Pr obabilidad e de existirem n clientes no sistema Pn  1   
    
n
40
Modelagem
Distribuição de probabilidade - Exponencial
a(x)= . e -x

.
e -x

E(A)=1/ 
é a taxa de chegadas
é a média dos tempos
entre de chegadas
var(A)=1/ (2) é a variância dos tempos
entre de chegadas
63%
1/
x
41
Exemplo de um sistema M/M/1/G/  / 
A cabine telefônica:
 as chegadas ocorrem de acordo com uma
distribuição exponencial com taxa = 0,1
pessoas/min;
 a duração média dos telefonemas é de TA = 3
minutos e também segue uma distribuição
exponencial.
a) Qual a probabilidade de uma pessoa chegar à
cabine e não precisar esperar?
    
Pr obabilidad e de existirem n clientes no sistema Pn  1   
    
n
42
A cabine telefônica:
= 0,1 pessoas/min.
TA = 3 minutos ou =0,33 telefonemas/min.
a) Qual a probabilidade de uma pessoa chegar à cabine e não
precisar esperar?
0

   
0,1  0,1 

P0  1     1 

  1  0,3  0,7
   
0,33  0,33 


0
A probabilidade de encontrar a cabine disponível é de 70%.
43
A cabine telefônica:
= 0,1 pessoas/min.
TA = 3 minutos ou =0,33 telefonemas/min.
b) Qual o tempo médio na fila?

0,1
TF 

1,28
     1 / 31 / 3  0,1
O tempo médio na fila é de 1,28 min.
44
A cabine telefônica:
= 0,1 pessoas/min.
TA = 3 minutos ou =0,33 telefonemas/min.
c) Qual ritmo de chegada de pessoas determinaria um
tempo médio na fila de 3 minutos?
TF 

    
3 1 / 31 / 3     
3

1 / 31 / 3   
  1/ 6  0,16 clientes/ min
O tempo médio na fila seria de 3 min. se o ritmo de
chegada fosse de 0,16 clientes/minuto.
45
atividade 2 - ferramentaria
A2. Os operários da fábrica, para realizarem as atividades
diárias, precisam recorrer ao auxílio da ferramentaria.
Observou-se que o ritmo de chegada de solicitações à
ferramentaria segue uma distribuição exponencial com
ritmo de chegada de =1 solicitação/min. O ritmo de
atendimento da ferramentaria também segue uma
exponencial com =12 atendimentos/min.
46
atividade 2 - ferramentaria
ritmo de chegada de =1 solicitação/min.
ritmo de atendimento =12 atendimentos/min.
Pergunta-se:
a) Qual a probabilidade de um operário chegar à ferramentaria e
não precisar esperar?
b) Qual o tempo médio de espera do operário na fila (TF)?
c) Qual o tempo médio de atendimento do operário (TA)?
d) Qual o tempo médio do operário na ferramentaria (TS)?
e) Quantos operários em média estão na fila (NF)?
f) Quantos operários em média estão na ferramentaria (NS)?
47
atividade 3 – manutenção e ferramentaria
A3. O gerente geral recebeu uma solicitação de reduzir custos
com os setores de apoio à produção. Uma idéia testada em
outras filiais foi alocar a um mesmo setor as atividades de
ferramentaria e as atividades de manutenção básica.
Antes de estudar mais detalhadamente a proposta, o gerente
resolveu fazer uma análise dos impactos que esta mudança
provocaria.
Observou-se que o ritmo de chegada de solicitações
somando-se as demandas da ferramentaria e da manutenção
segue uma distribuição exponencial com ritmo de chegada
de =8 solicitações/min. O ritmo de atendimento do novo
setor ainda seguiria uma exponencial mas cairia para =10
atendimentos/min devido ao aumento da complexidade.
48
atividade 3 – manutenção e ferramentaria
ritmo de chegada de =8 solicitações/min.
ritmo de atendimento =10 atendimentos/min.
Pergunta-se:
a) Qual a probabilidade de um operário chegar à ferramentaria e
precisar esperar?
b) Qual o tempo médio de espera do operário na fila (TF)?
c) Qual o tempo médio de atendimento do operário (TA)?
d) Qual o tempo médio do operário no setor (TS)?
e) Quantos operários em média estarão na fila (NF)?
f) Quantos operários em média estarão no setor (NS)?
49
Dinâmica em grupo: Conservação dos fluxos
a.


b.

A

B

C

50
Conservação dos fluxos
c.
1
1
3
C
2
d.
3
A
3= 1+ 2
B
A
3
2
B
2
2= 1- 3
C
3
51
Modelagem de sistemas: SIMULAÇÃO
Parte II
Profa. Giovana Pasa, Dra.
[email protected]
Situação:
Agora, desejo modelar as filas com que me deparo ao longo
do dia...
53
Agenda



ACORDAR
CAFÉ
ABASTECER
CARRO
5:45
6:00
6:15
0:07
0:09
0:11
melhor
intermediário
pior
0:12
0:15
0:18
melhor
intermediário
pior
melhor
intermediário
pior
54
Agenda



IR ATÉ NOVO
HAMBURGO
REUNIÃO NA
EMPRESA A
REUNIÃO NA
EMPRESA B
0:30
0:35
0:50
0:55
1:10
1:15
melhor
intermediário
pior
1:00
1:30
1:40
melhor
intermediário
pior
melhor
intermediário
pior
55
Agenda


CAFÉ-Reunião
PALESTRA
VOLTAR A
PORTO ALEGRE

0:50
1:30
2:00
2:00
2:20
3:00
melhor
intermediário
pior
0:40
0:50
1:00
melhor
intermediário
pior
melhor
intermediário
pior
56

ACORDAR

CAFÉ

ABASTECER
CARRO


CAFÉ-Reunião
PALESTRA
VOLTAR A
PORTO ALEGRE

5:45
6:00
6:15
0:07
0:09
0:11
melhor
intermediário
pior
melhor
intermediário
pior
Agenda
0:12
0:15
0:18
melhor
intermediário
pior
melhor
0:50
1:30
2:00
2:00
2:20
3:00
melhor
intermediário
pior
0:40
0:50
1:00
melhor
intermediário
pior
melhor
intermediário
pior
intermediário
pior
ACORDAR
05:45
06:00
06:15
CAFÉ
00:07
00:09
00:11
ABASTECER
00:12
00:15
00:18
IR A NH
00:30
00:35
00:50
REUNIÃO A
00:55
01:10
01:15
REUNIÃO B
01:00
01:30
01:40
ALMOÇO
CAFÉ-Reunião
00:50
01:30
02:00
PALESTRA
02:00
02:20
03:00
VOLTAR
00:40
00:50
01:00
TOTAL
CHEGADA
06:14
11:59
08:19
14:19
10:14
16:29
Observe!
Agenda
melhor



Trabalhamos com os cenários ACORDAR
CAFÉ
MELHOR, PIOR e
ABASTECER
IR A NH
INTERMEDIÁRIO.
REUNIÃO A
Mas, qual a chance de cada um REUNIÃO B
ALMOÇO
CAFÉ-Reunião
deles ocorrer?
PALESTRA
VOLTAR
Quais as implicações de
TOTAL
CHEGADA
desconsiderarmos estas
“chances” ?
intermediário
pior
05:45
06:00
06:15
00:07
00:09
00:11
00:12
00:15
00:18
00:30
00:35
00:50
00:55
01:10
01:15
01:00
01:30
01:40
00:50
01:30
02:00
02:00
02:20
03:00
00:40
00:50
01:00
06:14
11:59
08:19
14:19
10:14
16:29
58
Fatos sobre teoria das filas:
Modelos analíticos:


simplificações nos pressupostos
implica em solução inadequada
Pressupostos – sistemas estáveis:



taxas estacionárias
passado não afeta o futuro
não há sobreposição de chegadas
Simulação
59
Definição de Simulação

São técnicas que usam computadores para
“imitar” ou simular diversos tipos de
operações ou processos do mundo real
(Law e Kelton, 1994).
60
A simulação…

É uma metadisciplina

Existe com a finalidade de auxiliar outras áreas

Instrumento
61
Por que usar simulação?
62
Objetivo: ....
MODELOS
pressupostos/
sofisticação
cenários
melhor
intermediário
pior
horizonte
longo
médio
curto
63
Fato: Existe um sistema real a ser estudado!
Sistema
Macro-sistema:
- Banco
micro sistema:
- Hospital
- atendimento nos caixas
- Montadora de automóveis
- emergência
- Universidade
- linha de pintura
- Restaurante
- processo de matrícula
- cozinha
64
Como posso estudar um sistema?
Sistema
65
Experimento com o sistema real
Sistema
Experimento
com o
sistema real
Fórmula I
zoologia
agricultura
66
Experimento com o sistema real
Sistema
Experimento
com o
sistema real
 destrutivo
Pode ser inviável:
 não existe (fase de projeto)
67
Experimentos com modelos físicos
Sistema
Experimento
com um modelo
do sistema
Maquetes arquitetônicas
Modelo
físico
Túnel de vento
68
Experimentos com modelos físicos
Dificuldade de construir
Sistema
Experimento
com um modelo
do sistema
Caro
Dificuldade de realizar
experimentos sem destruí-lo
Modelo
físico
69
Experimentos com modelos matemáticos
Sistema
Experimento
com um modelo
do sistema
Modelo
matemático
Funções matemáticas:
i=V/R
Funções lógicas:
Se A=B e B=C, então A=C
70
Modelo matemático com solução analítica
Sistema
Cálculos estequiométricos
Experimento
com um modelo
do sistema
Trajetória do robô
Modelo
matemático
Equações de MRUV
Solução
analítica
71
Modelo matemático com solução analítica
Terminal portuário
Sistema
Experimento
com um modelo
do sistema
Relação custo-benefício não
justifica o esforço
Modelo
matemático
clima
Solução analítica
é muito difícil ou
inexiste
Solução
analítica
Ex.:
Teoria das filas
72
Modelo matemático com simulação
Sistema
Experimento
com um modelo
do sistema
Modelo
matemático
Simulação
73
Sintetizando:
Sistema
Experimento
com o
sistema real
Experimento
com um modelo
do sistema
Modelo
físico
Modelo
matemático
Solução
analítica
Simulação
74
Razões para usar simulação - 1
Testar:
 configurações diferentes do sistema
• layout funcional, layout em linha
Funcional
A
A
C C
C
Linha
B
E
E
D
D
E
E
A
B
C
D
E
75
Razões para usar simulação - 1
Testar:
para uma configuração, condições alternativas
• capacidades de máquinas
A
B
D
D
C
E
E
C
A A
B
C C
C
E
E
D
D
E
E
•mix produtivos
30%
40%
20%
60%
50%
76
Razões para usar simulação - 1
Avaliar desempenho
• lead time ou tempo de atravessamento
108 min
95 min
A
C
C
B
D
D
E
E
A A
C C
C
B
E
E
D
D
E
E
•índice de retrabalho
25%
33%
77
Razões para usar simulação - 2
• controle das experiências antes
de alterar o sistema real
• estudar ao longo de um horizonte temporal extenso...
2007
2008
2009
2010
2011
78
Razões para usar simulação - 3

Ferramenta para tomada de decisão
Aprender sobre o processo
Testar modelos mentais
Senso de equipe/comando
Reações sob pressão
79
Razões para usar simulação - 4
• aproveita o conhecimento das pessoas
envolvidas rotineiramente no processo
• explicita
• permite compartilhamento
• consolida o conhecimento
80
Razões para usar simulação - 5
• recupera a visão sistêmica dos
processos
81
Razões para usar simulação - 6
• hardware:
• capacidade de processamento
• custo viável
• software:
• acessíveis
• amigáveis
82
Razões para usar simulação - 7
• Aprendizagem e inovação
• lápis e papel
Análises financeiras
• planilha eletrônica
Impacto gerencial
83
Razões para usar simulação - 8
• Cultura organizacional e comportamento
Perspectiva 1
84
85
86
87
88
89
O que foi possível aprender?
90
Razões para usar simulação - 8
Perspectiva 2
91
Razões para usar simulação - 8
• Cultura organizacional e comportamento
Perspectiva 2
92
Razões para usar simulação - 8
• Cultura organizacional e comportamento
Perspectiva 2
93
ONDE podemos usar simulação:
SERVIÇOS
94
Exemplo 1: Bancos
95
Simulação – bancos
 Nro de caixas automáticos
 Tipos de funcionalidades nos caixas automáticos
 Arranjo físico
 Alocação de funcionários por turno
 Horários de atendimento
 Tempos de espera na fila
96
Exemplo 2: Hospitais
97
Simulação - hospitais
 Nro de leitos por setor
 Nro de médicos por tipo de especialidade em
plantões de emergência
 Distribuição de medicamentos e material
 Alocação de leitos compartilhados por
hospitais de modo a reduzir transferências
98
Exemplo 3: Manufatura
99
Simulação da manufatura
 Lead time
 Layout
 Estoques intermediários
 Dimensionamento de
 Turnos de trabalho
capacidade
 Alocação de operadores
 Mix de produção
 Balanceamento da linha
 Substituição de
 Fluxo de pessoas
equipamentos
 Fluxo de materiais
 Manutenção
100
Exemplo 4: Logística
101
Simulação da logística
 Localização dos CDs
 Roteiros de coleta
 Tipos de veículos
 Alocação de cargas
 Lead times
 Composição das cargas
 Equipamentos de movimentação de cargas
102
Atividade 4
Aplicações
103
Modelagem de sistemas: SIMULAÇÃO
Conceitos básicos e Terminologia
Parte III
Terminologia em Simulação
Estado de um sistema
• conjunto de variáveis necessárias
para descrever o seu status em dado
momento no tempo
Ex.:
Em um banco, na medida em que os clientes chegam, são
atendidos ou partem o status do sistema muda.
105
Mudanças no Status
Para descrever cada mudança possível no estado
do sistema,
necessitamos de um conjunto de variáveis
chamadas de variáveis de estado.
Ex.:
 nº de atendentes ocupados
 nº de clientes no banco
 momento de chegada do próximo cliente
 momento de partida do cliente em atendimento
106
Num sistema
• objeto de interesse 
Entidade
• propriedades de uma entidade  Atributos
Ex.:
Banco
Entidade: cliente
Atributo: profissão
107
Modelos de simulação

ESTÁTICOS
Representam o sistema
num momento
particular do tempo
Monte Carlo

DINÂMICOS
Representam o sistema
modificando-se no
tempo.
108
Estáticos: Simulação de Monte Carlo




Law e Kelton (1991) definem:
 técnica que usa números aleatórios e variáveis
aleatórias para resolver problemas em que a
passagem do tempo não exerce um papel
significativo.
Então, geralmente trata-se de simulações estáticas.
Ex.: Resolver integrais e conjuntos de integrais não
passíveis de serem resolvidos analiticamente.
P.S. Há autores que usam a denominação Monte Carlo de
forma mais ampla, abrangendo qualquer simulação que
use números aleatórios.
109
Dinâmicos
Representam o sistema modificando-se no tempo.


simulação contínua
simulação discreta ou de eventos discretos
110
Simulação
Contínua
 Variáveis de
estado mudam
continuamente ao
longo do tempo
Discreta
 Variáveis de estado
mudam somente devido
à ocorrência de eventos
 mudam em pontos do
tempo discretos, ou seja,
aqueles pontos em que
ocorreu um evento
111
Simulação contínua
Processos químicos, biológicos
Usam equações diferenciais – resolvidas com técnicas
numéricas
112
Simulação discreta
Num banco:
Evento
 cliente tem o seu atendimento iniciado
 cliente tem o seu atendimento concluído
 variável de estado é atualizada
 Relógio ou clock é atualizado 10:00 10:15
113
Modelos de simulação

DETERMINÍSTICO


Valores exatos
Simplificação

ESTOCÁSTICO


Valores estimados
Variabilidade natural
do processo é
modelada
114
Modelagem ESTOCÁSTICA

lembrando:
 os tempos entre chegadas de clientes...
 os tempos entre chegadas de peças a serem
processadas...
 a duração dos atendimentos dos clientes...
 a duração dos processamentos nas máquinas...
 as tarefas feitas pelas pessoas...
... apresentam variabilidade natural!
Por isso usamos Distribuições de Probabilidade!
115
Os tempos de execução de uma atividade
apresentam variabilidade...
Tempo medido
116
Tempo medido
117
Tempo medido
118
Tempo medido
119
Tempo medido
120
Tempo medido
121
O que esta figura lembra?
Tempo medido
122
Distribuição de probabilidade normal
123
Simulação de eventos discretos
Estática
Dinâmica
Estuda sistemas
estocásticos que mudam
com o passar do tempo
Contínua
Discreta
As mudanças ocorrem
em momentos discretos
do tempo (eventos)
Determinística
Estocástica
O evento muda o
estado do sistema instantaneamente
(variáveis de
estado são atualizadas)! 124


Considere uma instalação com um único
servidor:
 atendente do banco
Você deseja estimar o tempo de espera na
fila (tempo desde que chegou à fila até
iniciar o atendimento)
125

Para estimar o tempo médio na fila, você precisa das
variáveis de estado:

status do servidor: ocupado ou ocioso

número de clientes na fila

instante de chegada de cada cliente na fila

O status do servidor é necessário para determinar se o
cliente que chegou vai ser atendido imediatamente ou vai
entrar na fila

O número de clientes na fila é necessário para saber se,
ao terminar o atendimento atual, o servidor ficará ocioso
ou ocupado com alguém que estava na fila

O instante de chegada é necessário para calcular o tempo
gasto na fila: = tempo de início do atendimento menos
instante de chegada
126
Eventos do exemplo:

1 - chegada de um cliente
 ou muda a variável de estado status do servidor de
ocioso para ocupado
 ou incrementa 1 na variável de estado número de
clientes na fila

2 - finalização de um atendimento
 ou muda a variável de estado status do servidor de
ocupado para ocioso
 ou decrementa 1 na variável de estado número de
clientes na fila
127
Mecanismos de avanço no tempo

simulation clock:
é a variável que fornece o valor atual do
tempo da simulação


incremento fixo
avanço no próximo evento
128
Avanço no próximo evento
e2 e3
e0
e1
0
t2
t1
A1
A2
ts1
e4
e5
t3
ts2
tempo
A3
S1
ei – instante de ocorrência do evento i
ti – instante de chegada do cliente i
S2
Ai – tempo entre chegada dos
clientes i-1 e i
tfi – tempo que o cliente i fica na fila
Ai = ti – ti-1
tsi – instante em que o cliente i tem seu
Si – tempo gasto atendendo o cliente i
atendimento concluído e sai
tsi = ti + tfi + Si
129
e0
e1
e2
e3
e4
e5
0
t1
t2
ts1
t3
ts2
A1
A2
A3
S1




S2
tempo
e0=0
Relógio é inicializado em zero: e0=0
Status do servidor: ocioso
Usamos distribuição de probabilidade (ddp) para
gerar o valor de A1 (tempo entre chegadas)
Então, primeiro cliente chegará em t1 = 0 + A1
130
e0
e1
e2
e3
e4
e5
0
t1
t2
ts1
t3
ts2
A1
A2
A3
S1






S2
tempo
e1 = t1
Avançamos o relógio para: e1= t1
O cliente 1 que chegou em t1 encontrou o servidor ocioso
O seu atendimento iniciou sem que ele ficasse em fila: tf1 = 0
Status do servidor passou a ocupado
Usamos ddp para gerar o valor de S1 (tempo de atendimento
do cliente 1)
Então, o primeiro cliente sairá em ts1 = t1 + tf1 + S1
131
e0
e1
e2
e3
e4
e5
0
t1
t2
ts1
t3
ts2
A1
A2
A3
S1


S2
tempo
e1 = t1
Usamos ddp para gerar o valor de A2 (tempo entre chegadas
para cliente 2)
Então, segundo cliente chegará em t2 = t1 + A2

Como t2 < ts1 , o cliente 2 chega enquanto o cliente 1 ainda
está sendo atendido e o relógio é avançado para e2= t2

(Se t2 ≥ ts1 , o relógio avançaria para e2= ts1)
132
e0
e1
e2
e3
e4
e5
0
t1
t2
ts1
t3
ts2
A1
A2
A3
S1





S2
tempo
e2 = t2
O cliente 2 encontrou o servidor ocupado, então vai para a
fila
A variável nro de clientes na fila é incrementada de 1 e
anotamos o instante de entrada na fila
Usamos ddp para gerar o valor de A3 (tempo entre chegadas
para cliente 3)
Então, cliente 3 chegará em t3 = t2 + A3
Como ts1 < t3 , o relógio é avançado para e3= ts1 e o cliente 1
sai
133
e0
e1
e2
e3
e4
e5
0
t1
t2
ts1
t3
ts2
A1
A2
A3
S1
S2
tempo
e3= ts1

O cliente 2 que estava na fila tem seu atendimento iniciado
O tempo de fila é calculado: tf2 = ts1 - t2
A variável nro de clientes na fila é decrementada de 1
Usamos ddp para gerar o valor de S2 (tempo atendimento do
cliente 2)
Então, cliente 2 sairá em ts2 = ts1 + S2

Como t3 < ts2 , o relógio é avançado para e4= t3 , etc.

Precisamos criar um critério de finalização 




134
Sintetizando:
Componentes e organização do modelo




Estado do sistema: conjunto de variáveis para
descrever o sistema em dado instante
Relógio ou clock: variável que fornece o valor
atual do tempo de simulação
Lista de eventos: registra o próximo instante em
que cada tipo de evento irá ocorrer
Contadores estatísticos: armazenam indicadores
de desempenho do sistema simulado
135
Componentes e organização do modelo




Rotina de inicialização: subprograma que inicializa o
sistema no instante zero
Rotina de timing: subprograma que determina qual o
próximo evento da lista e atualiza o relógio para o
instante de ocorrência deste evento
Rotina de evento: subprograma que atualiza o estado do
sistema quando um determinado tipo de evento ocorreu
(cada tipo de evento tem sua própria rotina)
Biblioteca de rotinas: conjunto de subprogramas para
gerar valores a partir das ddp
136
Componentes e organização do modelo


Gerador de relatório: subprograma que calcula as
estimativas dos indicadores de desempenho do modelo
Programa principal: controla o fluxo das ações
 chama rotina de timing para determinar próximo
evento
 transfere controle para rotina de evento atualizar
variáveis de estado
 verifica finalização
 chama gerador de relatório.
137
FLUXO DE CONTROLE
Rotina inicialização
1. Relógio é
zerado
2. Inicializa
estado do sistema
e contadores
3. Inicializa lista
de eventos
início
Rotina timing
Programa principal
0
0. Chama rotina inicialização
1
1. Chama rotina timing
2. Chama rotina evento i Repetidamente
i
2
Rotina evento i
Biblioteca de rotinas
1. Atualiza o estado do sistema
2. Atualiza os contadores estatísticos
3. Gera eventos futuros e adiciona à lista
de eventos
Simulação
concluída ?
sim
Gerador relatórios
1. Calcula estimativas
2. Gera relatórios
Fim
1. Determina o
tipo do próximo
evento i
2. Avança relógio
não
Gerador de
variáveis
aleatórias
ATIVIDADE DE FIXAÇÃO

Objetivo da simulação:


Quais entidades devem ser consideradas?


dimensionar o setor de manutenção com relação ao
número de funcionários para reduzir o tempo médio de
atendimento das solicitações de serviço de manutenção.
solicitação de serviço de manutenção.
Há a necessidade de diferenciar as entidades
através de atributos?

sim
139
manutenção


Entidade: solicitação de serviço de
manutenção
Atributo: tipo de manutenção



corretiva
preventiva
Preciso de outro atributo para distinguir as
solicitações de serviço?
140
manutenção

SIM, o tipo de máquina que vai sofrer manutenção

MAS: Haverá diversos tipos de máquinas! Será que preciso
criar tantos valores para o atributo máquina?!

Faça rapidamente um pareto ou use o seu conhecimento e
escolha os 3 tipos de máquinas que ocupam o maior
percentual de tempo do setor de manutenção. Inicie criando
estes 3 possíveis valores para o atributo “máquina que vai
sofrer manutenção”.
141
Como ficou até aqui:

Entidade: solicitação de serviço



Atributo 1: tipo de manutenção
 corretiva Att1=1
 preventiva Att1=2
Atributo: máquina que vai sofrer manutenção
 m1 Att2=1
 m2 Att2=2
 m3 Att2=3
Os atributos auxiliam a distinguir. Isto permite
saber que ação tomar em relação àquela entidade
específica.
142
Quais os recursos utilizados na manutenção?

Precisamos listar todos os recursos a serem
utilizados na manutenção?
Inicialmente, liste os recursos mais nobres (gargalos):
 Funcionários

Quais os locais envolvidos na modelagem?



chegada de solicitações de manutenção
setor de manutenção
saída
143
continuação:

Como é o processo de chegada?
Neste ponto, precisamos obter dados para as freqüências de
chegadas de solicitações de serviço dos tipos corretiva e
preventiva para as máquinas m1, m2 e m3.
Att1
Corretiva
1
40%
m1
m2 m3
1
2
3
Preventiva
2
60%
m1
m2
m3
1
2
3
8%
24% 24% 12%
Att2
Nro de
16% 16%
solicit.
144
continuação:

Como é o tempo de atendimento?
Neste ponto, precisamos obter dados para os tempos de
atendimento em cada serviço dos tipos corretiva e
preventiva para as máquinas m1, m2 e m3. Vamos
iniciar com valores determinísticos para obtermos
domínio sobre o modelo.
Corretiva
Preventiva
Att1
1
2
Att2
Tempo
de
atend.
m1
1
m2
2
m3
3
m1
1
m2
2
m3
3
10
20
50
60
70
80
145
continuação:

Quais eventos precisam ser modelados?
 1 - chegada de uma solicitação de serviço
 2 - finalização de uma manutenção

Quais as variáveis de estado necessárias para
descrever os possíveis estados desencadeados pelos
eventos?

status do funcionário: ocupado ou ocioso

número de solicitações na fila

instante de chegada de cada solicitação na fila
146
Status

1 - chegada de uma solicitação de serviço
 ou muda a variável de estado status do funcionário de
ocioso para ocupado
 ou incrementa 1 na variável de estado número de
solicitações na fila

2 - finalização de uma manutenção
 ou muda a variável de estado status do funcionário de
ocupado para ocioso
 ou decrementa 1 na variável de estado número de
solicitações na fila
147
medições

Quais as variáveis nos auxiliarão a determinar se estamos
nos aproximando do objetivo da simulação?
 tempo de fila
 tempo de atendimento
 tempo no sistema (=tempo fila+tempo atendimento)
 nível de ocupação dos funcionários
148
medições incrementando variáveis

As variáveis (tempo de fila, tempo de atendimento,
tempo no sistema, nível de ocupação dos
funcionários) que nos auxiliarão a determinar se
estamos nos aproximando do objetivo da simulação
serão incrementadas ou decrementadas na medida
em que os eventos ocorrerem.
149
pressupostos

Quais pressupostos assumimos
inicialmente?




modelagem das manutenções de maior
impacto na ocupação do setor
simplificação nos locais
simplificação na qualificação dos
funcionários
Regime: permanente
150
Atividade 5
151
Modelagem de sistemas: SIMULAÇÃO
Etapas da simulação
Parte IV
Passos de uma simulação:

Objetivos do estudo



1. Formular o problema
e planejar o estudo
determinar o impacto do tempo de atendimento do
caixa sobre o tamanho da fila
Aspectos específicos de interesse

tempo de atendimento

tempo de espera na fila

tamanho da fila
Foco/detalhamento

exploratório – clientes em geral; caixa multifuncional
153
1.

Formular o problema
e planejar o estudo
Havendo sistemas alternativos a serem estudados
 critérios para avaliar alternativas
Ex.: Alternativa A: atendente usa software de apoio
Alternativa B: atendente usa somente calculadora
 critério: relação entre a redução do tempo de fila e o
investimento feito; relação entre redução do tempo de
fila e perda de flexibilidade

Recursos:
 pessoas envolvidas
 custo
 tempo
 restrições
154
Passos de uma simulação:
1.
Formular o problema
e planejar o estudo
2.
Coletar dados e
definir um modelo
155
2.

Coletar dados e
definir um modelo
Obter dados e informações existentes
 Procedimentos operacionais
 Tempos de atendimento
 Tempos entre chegadas
 Tempos de espera em filas

Distribuições de probabilidade
156
2.
Coletar dados e
definir um modelo
DICA:
Na definição do modelo:
 Comece com um modelo moderadamente detalhado


Aumente a sofisticação do modelo somente se
necessário
157
2.
Coletar dados e
definir um modelo
M/M/1
chegada
IC

fila
atendimento
TF NF
TA NA 
saída
sistema
TS NS
158
Como modelar os tempos entre
chegadas?

Qual a distribuição de probabilidade adequada para
representar os tempos entre chegadas?
159
Modelagem de tempos entre chegadas (T)
t1=3s
t2=8s
A1=5s
t3=15s
A2=7s
Usamos a variável aleatória A para representar os tempos entre chegadas
160
Modelagem de tempos entre chegadas
Distribuição de probabilidade - Exponencial
a(x)= . e -x

. e -x

E(A)=1/ 
é a taxa de chegadas
é a média dos tempos
entre de chegadas
var(A)=1/ (2) é a variância dos tempos
entre de chegadas
x
161
Tempo de atendimento

O tempo de atendimento também pode ser modelado
como uma exponencial.

Outras distribuições de probabilidade:



Law e Kelton (1991)
Prado (2004)
Harrel et al. (2002)
162
2.
Coletar dados e
definir um modelo
M/M/1
Chegada:
exponencial
com IC = 1min
Atendimento:
c=1 atendente
exponencial
NA=1
com TA = 0,5 min
e  =2 atendimentos /min
e =1chegada /min
IC

fila
atendimento
TF NF
c TA NA 
sistema
TS NS
saída
163
Passos de uma simulação:
1.
Formular o problema
e planejar o estudo
2.
Coletar dados e
definir um modelo
3.
O modelo é
válido?
não
sim
164
3.
O modelo é
válido?
Determinar o quanto o
modelo conceitual é uma
representação razoável
do sistema real que está
sendo modelado
165
O modelo é
válido?
3.
Antes de expor
o modelo,
o analista
deve se
perguntar:
O modelo é:

correto?

completo?

consistente?
166
Na seqüência, perguntar: o modelo parece razoável
àqueles que lidam com o sistema?

Envolver pessoas familiarizadas com a
operação

Interagir com os futuros usuários
167
O modelo parece razoável àqueles que lidam
com o sistema?


conversar com os “experts” no sistema
 gerentes de planta
 operadores de máquina
 vendedores
 engenheiros
além das informações objetivas:
 motivação e comprometimento
168
Outras fontes:

analisar teorias existentes
 literatura, artigos, dissertações, etc

resultados de estudos similares
 outras empresas da corporação
169
Experiência e intuição:
revalidar os objetivos!
realimentação!
continuamente!
Um excelente modelo
com objetivos mal
definidos
não terá nenhum uso!
Estudar o tamanho da fila (espaço) ou o tempo na
fila (satisfação do cliente)?
Manter indicadores de requisitos mínimos, se for o
caso!
170
3.

O modelo é
válido?
Testar distribuições de probabilidade
TESTAR OS PRESSUPOSTOS NA PRÁTICA!

Análise de sensibilidade a:
 parâmetro de entrada
 distribuição de probabilidade
 nível de detalhamento
171
Passos de uma simulação:
1.
Formular o problema
e planejar o estudo
2.
Coletar dados e
definir um modelo
3.
O modelo é
válido?
4.
Construir um
programa
computacional e
verificar
não
sim
172
4.
Construir um programa
computacional e verificar

Codificação ou programação do modelo

Transcrição: modelo comunicativo para
programa escrito em linguagem de programação

O programa deve ser testado; depuração do
código do programa
173
4.
Construir um programa
computacional e verificar
Tipos de linguagens
174
Linguagens de programação em geral

FORTRAN, C, PASCAL



esforço para
construção de
modelos
conhecimentos
profundos de
programação
maior flexibilidade
175
Linguagens específicas de simulação

GPSS, SIMSCRIPT, SIMAN, SLAM



facilitam a tarefa do desenvolvedor
rotinas de simulação prontas
blocos de código são similares a comandos
 facilmente reutilizáveis
 programas menores de forma rápida
176
Softwares de simulação específicos

ARENA, AUTOMOD, PROMODEL
 construção de modelos através de uma forma
gráfica e de fácil manuseio
 menor flexibilidade do que as linguagens de
programação
177
Características desejáveis num software:

Gerais:

Flexibilidade


Fácil desenvolvimento do modelo




ex.: tipos de atributos aplicáveis às
entidades
verificação de consistência e avisos
ajuda on line
sugestões de alterações
Rápida execução
178
Características desejáveis num software:

Gerais:
 Máximo tamanho e complexidade
 nro de entidades, nro de
atributos, relacionamentos, etc.
 Compatibilidade com vários tipos de
hardware
 Capacidade de “conversar” com
outros softwares
179
Animação:



Compreensão visual
Conhecimentos compartilhados
Treinamentos
180
Capacidade Estatística:

variedade de distribuições probabilísticas
 Exponencial, Normal, Triangular, etc

Gerador de números aleatórios
Replicações usando diferentes números
aleatórios
Determinação de tempo de warm up


181
Relatórios de saída - documentação:




pacote com indicadores estatísticos
comumente usados: utilizacão, tempo de fila,
etc
possibilidade de personalizar e ampliar os
relatórios
visualizações gráficas
exportar dados
182
Passos de uma simulação:
1.
2.
Formular o problema
e planejar o estudo
Coletar dados e
definir um modelo
4.
Construir um programa
computacional e verificar
5.
Rodar simulações piloto
6.
Modelo
é válido?
sim
3.
O modelo é
válido?
sim
não
não
5.
Rodar simulações piloto
6.
Modelo
é válido?
não
sim

Esta segunda etapa de validação vem testar
quantitativamente os pressupostos assumidos

1. ANÁLISE DE SENSIBILIDADE
Variar parâmetro de entrada
Observar a saída
184
5.
Rodar simulações piloto
6.
Modelo
é válido?
não
sim

2. REPRESENTATIVIDADE
Saída esperada do processo real
Observar a saída simulada
Sobreposição:
Modelo 1 – processo existente – validação
Sobrepõe-se a modificação
Modelo 2 – processo a ser simulado
185
5.
Rodar simulações piloto
6.
Modelo
é válido?
não
sim

3. TESTE Turing
Saída esperada do processo real
Saída simulada
Especialistas conseguem diferenciar?
186
5.
Rodar simulações piloto
6.
Modelo
é válido?
não
sim

4. TESTES de CAMPO
Modelo de simulação
Testes de campo/
cenários específicos
Há convergência?
187
Passos de uma simulação:
1.
2.
Formular o problema
e planejar o estudo
Coletar dados e
definir um modelo
4.
Construir um programa
computacional e verificar
5.
Rodar simulações piloto
6.
Modelo
é válido?
não
sim
3.
O modelo é
válido?
não
7.
Projetos de Experimentos
8.
Rodar as simulações
9.
Analisar saídas
10.
Documentar/ apresentar
resultados
sim
7.
Projetos de Experimentos
É uma técnica desenvolvida para auxiliar no planejamento de
experimentos, que apóia-se fortemente na teoria
estatística.
Os experimentos tradicionais, quando querem investigar o
efeito de um fator (temperatura, pressão, tipo de
material) sobre uma determinada resposta (resistência da
barra):
- variam um fator por vez (temperatura), mantendo os
demais fixos (pressão e tipo de material);
- medem as mudanças na resposta (resistência).
189
7.
Projetos de Experimentos
Os Projetos de Experimentos conseguem, variando mais de
um fator por vez, medir os seus efeitos sobre a resposta.
Vantagens em relação aos experimentos tradicionais:
- menor número de ensaios
- confiança estatística determinada
- identificação de interações entre os efeitos!
Em simulação, ainda auxilia a economizar tempo
computacional. Então, permitem comparar cenários
diferentes com economia!
190
7.

Projetos de Experimentos
Exemplo: Desejamos investigar o efeito do tipo de fila e
do gênero de atendente sobre o tempo médio de
atendimento.
fator B
Gênero do atendente
homem
mulher
fator A
tipo de
Fila
única
múltipla
191
Como funcionam os Projetos de
Experimentos?
1. Ao medir os tempos de atendimento para cada uma das
combinações, observo os seguintes valores:
fator B
Gênero do atendente
homem
mulher
fator A
tipo de
Fila
única
20 min.
30 min.
múltipla
40 min.
52 min.
192
fator B
Gênero do atendente
Estudo os efeitos:
homem
mulher
fator A
tipo de
Fila
única
20 min.
30 min.
múltipla
40 min.
52 min.
Observando o efeito do tipo de fila:
t múltipla – t única =
40  52 20  30

2
2
= 21 min.
Observando o efeito do gênero do atendente:
t mulher – t homem =
30  52 20  40

2
2
= 11 min.
193
E posso descobrir interações!

VEJAMOS OUTRO EXEMPLO: Desejamos investigar
o efeito da idade e do gênero do atendente sobre o tempo
médio de atendimento.
fator B
gênero do atendente
homem
fator A
idade do
atendente
mulher
adulto
jovem
20
40
terceira
idade
50
12
194
fator B
gênero do atendente
Interações:
homem
fator A
idade do
atendente
mulher
adulto
jovem
20
40
terceira
idade
50
12
terceira idade - adulto jovem = 50  12  20  40 1 min .
2
2
mulher - homem =
40  12 20  50

  9 min .
2
2
Porém:
195
fator B
gênero do atendente
Interações:
homem
fator A
idade do
atendente
mulher
adulto
jovem
20
40
terceira
idade
50
12
terceira idade - adulto jovem = 50  12  20  40 1 min .
2
2
mulher - homem =
40  12 20  50

  9 min .
2
2
Poderia parecer que a idade não afeta o tempo de atendimento.
Porém, o que acontece é que a idade tem efeitos fortes MAS diferentes
para homens e mulheres.
196
fator B
gênero do atendente
Interações:
homem
fator A
idade do
atendente
mulher
adulto
jovem
20
40
terceira
idade
50
12
Observe:
Para mulheres:
terceira idade – adulto jovem = 12 – 40 = -28 min.
Para homens:
terceira idade – adulto jovem = 50 - 20 = 30 min.
Isso significa que há uma interação entre idade e gênero; ou seja, o
efeito da idade sobre o tempo atendimento é diferente para os
197
diferentes gêneros.
Lembre:


PARÂMETROS DO PROCESSO: aqueles que podemos
variar no processo

FATORES CONTROLÁVEIS: aqueles que vamos variar e
cujos efeitos vamos estudar

FATORES FIXOS – aqueles que manteremos constantes
RUÍDOS – não temos domínio; apenas registramos
198
Exemplos de fatores cujos efeitos costumamos
estudar:

Na linha de produção:
Fatores
Número de máquinas (capacidade)
Disciplina da fila
Tamanho dos estoques intermediários
Posição dos estoques intermediários
Velocidade das esteiras
Regras de priorização de peças/clientes

Respostas
Ritmo de produção
Tempo de atravessamento
Utilização dos recursos
Percentual de refugos
Estrutura de hardware:
Fatores
Número de terminais
Capacidade dos discos rígidos
Velocidade da CPU
Velocidade dos drives de acesso
Respostas
Tempo de resposta aos usuários
Utilização da CPU
Utilização do disco
Confiabilidade do sistema (tempos entre falhas)
199
Aspectos a considerar:

1. ORTOGONALIDADE

2. SIMETRIA

3. TESTAR EXTREMOS

4. VARIABILIDADE NATURAL DO PROCESSO

5. VARIÁVEIS DE RESPOSTA DE INTERESSE e

6. MONITORAMENTO DE VARIÁVEIS DE RESPOSTA
REQUERIDAS
200
ATIVIDADE 6:
Esboçando o seu Projeto de experimento:
Escolher o processo.
Listar possibilidades de:
 Parâmetros de processo:


Fatores controláveis:
Fatores constantes ou fixos:

Ruídos:

Faça um esboço de experimento similar àquele dos
exemplos, para o seu caso. Determinar níveis a ser
ensaiados.
201
Passos de uma simulação:
1.
2.
Formular o problema
e planejar o estudo
Coletar dados e
definir um modelo
4.
Construir um programa
computacional e verificar
5.
Rodar simulações piloto
6.
Modelo
é válido?
não
sim
3.
O modelo é
válido?
não
7.
Projetos de Experimentos
8.
Rodar as simulações
9.
Analisar saídas
10.
Documentar/ apresentar
resultados
sim
202
Ainda é preciso definir:

As condições iniciais da simulação:



São os valores das variáveis de estado e dos
medidores estatísticos no início da simulação.
Elas geram impactos sobre o resultado final.
Veja o caso:

Desejamos estimar o tempo médio de espera
dos clientes num banco, no horário do meiodia às 13h.
203
Condições iniciais da simulação:

O que ocorre se???
 Damos a partida nesta simulação considerando
que a variável “número de clientes no sistema”
está zerada e...

definimos como hora de início da simulação
“meio-dia”?
As nossas estimativas serão tendenciosas para
menos!
204
O que fazer então?

Abordagem 1  Damos a partida na simulação considerando que
a variável “número de clientes no sistema” está
zerada, mas iniciamos a simulação com o relógio
marcando 9h da manhã (abertura do banco).

Como estamos interessados nos tempos de
espera somente entre meio-dia e 13h, somente as
esperas dos clientes atendidos neste período
serão contabilizadas.
205
Desvantagem da abordagem 1:



Estaremos rodando a simulação durante 4 horas
(tempo computacional proporcional)
Mas, somente uma hora servirá para estimarmos os
atrasos
Usaremos 3 horas de simulação somente para o
“warm up” do sistema
Desperdício de tempo computacional!
206
Abordagem 2:




Coletar dados sobre o número de clientes
presentes no banco ao meio-dia (durante vários
dias)
Será modelada a distribuição de probabilidade
Assume-se que os clientes presentes no banco
iniciaram seu atendimento ao meio-dia
Embora alguns já houvessem iniciado o seu
atendimento, o erro ficará diluído ao longo de
uma hora de simulação e será desprezível.
207
Como definir o tempo de warm up:

Técnicas e algoritmos
Graficamente
Através do acompanhamento numérico da estabilização
das estimativas
Através da observação de um comportamento conhecido

Regras:




capaz de abranger, por várias vezes, a ocorrência dos tipos de
variações que ocorrerão no ambiente (ex.: quebra de máquina)
208
Número de rodadas
Rodadas são necessárias para capturar a aleatoriedade
Decisão em função da variabilidade presente na modelagem
do fenômeno
Validação através de comportamentos conhecidos
209
Duração de cada rodada

A duração de cada rodada deve ser
suficientemente grande para que, mesmo os
fenômenos com menor probabilidade (nas
distribuições) tenham chance de ocorrer.
210
ATIVIDADE 7 -

Para o seu experimento, analise:

Qual o tempo de warm up?

Qual a duração de cada rodada?
211
8.
Rodar as simulações
9.
Analisar saídas
10.
Documentar/ apresentar
resultados
 As simulações geram os dados de desempenho
do sistema
 Técnicas estatísticas são utilizadas para analisar
os dados de saída
 Documentar as premissas do modelo e da
programação computacional pois haverá mais de
uma simulação
212
Aspectos da simulação que requerem cuidados!
Desenvolver modelos para
sistemas complexos:
Caro
Demorado
213
Armadilhas a evitar em simulação:

Utilizar a simulação
quando outra técnica é a
mais adequada

Definir pouco claramente os objetivos no início do
estudo
Nível de detalhamento do modelo inadequado

214
Armadilhas a evitar em simulação:
• falhas de comunicação com
os gestores durante o estudo
• má compreensão da
simulação por parte dos
gestores
215
Armadilhas a evitar em simulação:
• Olhar o estudo de simulação
como um exercício de utilização
de software em computador
• Não incluir na equipe pessoas com
conhecimento de estatística e metodologia da
simulação
216
Armadilhas a evitar em simulação:
• adotar software
• usar inadvertidamente um
de simulação
inadequado
software dada a facilidade
de interação e por não
requerer programação
• não recolher dados de
boa qualidade no sistema
real
217
Armadilhas a evitar em simulação:
• não incorporar
corretamente as fontes de
aleatoriedade do sistema
real
• escolher arbitrariamente
distribuições de probabilidade para
os dados
218
Atenção!
Modelo não validado
Resultados conduzem a erros !
219
Aspectos da aleatoridade que requerem
atenção !
Cada rodada de um modelo estocástico
de simulação produz apenas
estimativas
São necessárias várias rodadas para
gerar estimativas razoáveis!!
220
Atenção!
Relatórios com resultados numéricos
Modelo animado
Confiar
incondicionalmente
???!
221
Atividade 8
222
Modelagem de sistemas: SIMULAÇÃO
Construindo modelos
Parte V
Mapeamento da produção
foco 1 da produção – O QUE É FEITO
foco 2 da produção – QUEM FAZ
Melhoria com foco 1 - O QUE É FEITO - conduz a melhores
resultados!
Porque:
- está diretamente associada ao objetivo da produção
- está associada ao fluxo da produção
lead time
tempo de resposta
identificação dos gargalos
224
Em serviços:
Atenção!!!
 Em serviços, o foco 1 da produção – O QUE É FEITO é um ser humano.
 O ser humano “sofre” processamentos.
 Foco principal, em serviços, é a pessoa que está sendo
atendida.
225
Fluxograma de processo
Categoria
Símbolo
Descrição
Processamento
o produto sofre modificação: usinagem, furação, solda, etc
Contato com o
Uma ocasião de interação entre o servidor e o cliente
cliente
Transporte
Os produtos ou serviços ou informações percorrem uma distância
Espera do processo
o lote inteiro espera para ser processado
ou entre processos
Espera pelo
enquanto uma peça do lote de 100 está sendo processada, as 99 demais
tamanho do lote
Inspeção
esperam
Inspeção
226
M/M/1:
Distância
Tempo
em
em
metros
minutos
6
Descrição do Processo
0,4
Cliente vai até a fila
17
Cliente espera na fila
0,1
Cliente vai até o caixa
14
Cliente é atendido
10
0,5
Cliente sai
20
32
4
Totais
Símbolos gráficos
1
3
1
44 % do tempo foi gasto em atendimento
56 % do tempo foi gasto em espera e deslocamentos
227
Outras representações:
Davis, Chase e Aquilano
Atividades
ou operações
A
pesar
empacotar
espera
Filas ou
esperas
Qualidade A ou B?
fritar
salgar
pesar
empacotar
B
Nó de decisão
Fluxo de
materiais/cliente
228

Quanto às representações:

mostram o fluxo da produção





incluem as esperas
omitem as esperas
relacionam ao layout e aos deslocamentos
não relacionam ao layout e aos deslocamentos
Quanto aos elementos que fluem:




unidades
lotes
sofrem agrupamento
sofrem desagrupamento
229

Quanto aos recursos:





capacidades
utilizações (quebras, tempos de manutenção, etc)
aplicabilidade e prioridades de uso, se houver
requisitos de operação (equipamentos e pessoas que provém
assistência)
Quanto aos tempos:




há facilidade de observação e coleta?
a variabilidade precisa ser modelada ou posso usar médias?
turnos de trabalho?
dias úteis?
230










_______________________________________
_______________________________________
_______________________________________
_______________________________________
_______________________________________
_______________________________________
_______________________________________
_______________________________________
_______________________________________
_______________________________________
231
Atividade 9
232
Modelagem de sistemas: SIMULAÇÃO


Usando um software
Elementos básicos
Parte VI
233
Promodel – Elementos básicos

Usaremos o software Promodel exclusivamente
com o intuito de ilustrar e exercitar a aplicação
dos conceitos teóricos apresentados

Lembre: os conceitos são aplicáveis utilizando-se
qualquer recurso de simulação
234
MÓDULO 1 – M1_FILA
1. Precisamos retirar dinheiro no quiosque de caixas automáticos.
Sabemos que:

chegam  = 20 clientes por hora

a taxa de atendimento é  = 25 clientes por hora (TA=2,4 min)

o tempo médio que cada cliente gasta no sistema é TS = 0,3 horas
(18 min.)

a) Qual a intensidade de tráfego ()?  = 0,8
b) Qual o tamanho médio da fila que vamos encontrar (NF)? NF = 5,2
clientes
c) Qual o número médio de clientes no quiosque (NS)? NS = 6 clientes
d) Qual o número médio de clientes sendo atendidos (NA)? NA = 0,8 clientes
235
1. Criando um novo arquivo:


Selecionar File
Selecionar New



Abre-se a janela
General
Information
Em Title, digite o
nome do arquivo:
M1_FILA
OK
236
2. Construindo os LOCAIS ou LOCATIONS


Locais ou locations representam os
lugares para onde as entidades são
encaminhadas para serem
processadas ou armazenadas (ou
outras atividades, tomadas de
decisão).
Ex.: locais de entrega, locais para
armazenagem, locais de
processamento
237
O editor de LOCAIS consiste de 3 janelas


Janela Graphics

Tabela Edit
Janela de layout
238
Observe que:

Quando selecionado insere novos locais
Desmarcado acrescenta uma associação destes
objetos aos locais selecionados

Count - contador

Gauge/Tank - Medidor ou reservatório

Conveyor/Queue - Fila ou esteira transp.

Label - Rótulo

Status light – muda de cor confome status

Entity Spot – plataforma

Region -região

Criando LOCAIS




Na janela Graphics, clicar com o botão da
esquerda do mouse no ícone desejado
A seguir, clicar com o mesmo botão na
janela Layout
Automaticamente surgirá um registro na
tabela Edit
Obs.: Posso usar o botão EDIT na janela
Graphics para modificar o ícone
240
Criando o LOCAL de chegada
Botão da
esquerda
do mouse
241
LOCAIS






Icon –ícone gráfico
Name – nome do local
Cap – representa o número de entidades que o local é capaz de processar
por vez
Unit – um local pode ser do tipo multi-local, ou seja, vários locais com as
mesmas características
Dts – define tempos de paradas, setup, etc
Stats – especifica o tipo de estatística que será coletado para o local





None - nenhuma
Basic – apenas tempo médio no local e utilização
Time series – coleta estatísticas básicas e, também, rastreamento dos dados
coletados no local ao longo do tempo
Regras – define: a) de que modo o local selecionará a próxima entidade a
entrar; b) como múltiplas entidades se enfileiram para sair; c) como uma
entidade entrante escolhe entre multi-locais.
Notes - comentários.
242
Criando uma FILA
•Botão da esquerda
do mouse em
Graphics e depois
em Layout
•Arrasta do ponto
de início até o
ponto de fim da
fila e então duplo
click
243
Criando uma FILA
Com o mouse
sobre a fila,
clicar no botão
da direita, e
abre a janela a
seguir...
244
Criando uma FILA
• Com o mouse sobre a
fila, clicar no botão da
direita, e abre a janela
a seguir...
• Selecionar Queue e
OK
245
Criando o LOCAL mesa (para o atendente)
246
3. Construindo ENTIDADES ou ENTITIES



Tudo o que é processado no
modelo é chamado de
ENTIDADE
Ex.: pessoas sendo atendidas,
chamados telefônicos, peças, etc.
Em nosso exemplo da fila, os
clientes são entidades.
247
3. Construindo a ENTIDADE cliente



Clicar (na janela Entity
Graphics) sobre o ícone
desejado
O ícone vai aparecer
pequeno
Arraste a barra para
cima e ele será
ampliado
248
Editando a ENTIDADE cliente

Você arrastou a
barra para cima e
o ícone foi
ampliado

Agora clicar em
EDIT para
modificar o ícone
249
Editando a ENTIDADE cliente

Ao clicar em EDIT para
modificar o ícone, abriu a janela
Library Graphic

Clicar em girar para fazer o
cliente olhar na direção da mesa

Clicar em OK

A ENTIDADE cliente somente
irá aparecer na janela Layout ao
rodar a simulação
250
5. Criando RECURSOS

Um RECURSO pode ser uma
pessoa, um equipamento ou qualquer
outro dispositivo usado para uma ou
mais das seguintes funções:




trasnportar entidades
auxiliar na realização de operações
sobre as entidades num dado local
realizar manutenções em outros
recursos
Podem ser estáticos ou dinâmicos
251
5. Criando RECURSOS



Selecione um
ÍCONE na
janela Resource
Graphics
Amplie e edite
do mesmo
modo que fez
com a entidade
Em seguida
clique em ADD
e clique na
janela Layout
6. Criando PROCESSAMENTOS


Os PROCESSAMENTOS definem o
roteamento das entidades através do sistema
e as operações que sofrerão em cada local.
Uma vez que as entidades são introduzidas
no sistema pelas CHEGADAS
(ARRIVALS), tudo o que irá acontecer a
elas enquanto existirem será especificado no
PROCESSAMENTO (PROCESSING)
253
Quatro janelas serão usadas para criar PROCESSAMENTOS:
Process, Routing, Tools e Layout

Primeiro passo: vamos ligar a chegada à fila; com a caixa New
Process selecionada, clicamos na chegada e arrastamos até a fila.
A janela Process define o que será feito:

A entidade cliente que está no Local Chegada não sofrerá nenhuma
operação neste local
255
A janela Routing define o que deve ser atendido para que o
cliente se mova da chegada para a fila:




A entidade cliente saiu (do Local Chegada).
O seu destino é o Local fila.
Aparece a regra default de escolha de rota: FIRST 1. Esta regra
seria necessária se houvesse mais de um local para onde a entidade
pudesse ser destinada.
Move Logic: MOVE FOR 0 (apenas para ele não gastar tempo no
deslocamento); (obs.: neste caso ele faria automaticamente);
Na fila:
257
Da fila para a mesa:
Para que o cliente passe da fila para a mesa, a condição é que o
atendente esteja ocioso:
Move logic: IF atendente = 0 THEN {MOVE FOR 0}
258
Da mesa para a saída!

Clicar sobre a mesa e arrastar até ROUTE TO EXIT
259
Processamento na mesa: USE atendente FOR 2.4
Para rotear o cliente para a saída: MOVE FOR 0
cliente
260
7. Criar CHEGADAS ou ARRIVALS

Especificam como as entidades
entram no sistema
261
7. Criar CHEGADAS ou ARRIVALS
Entity: cliente
Location: chegada
Qty Each: nro de entidades que entram por vez
First time: instante da primeira chegada
Ocurrences: total de chegadas
Frequency: intervalo entre chegadas
Logic: serve para diferenciar as entidades por
atributos quando for o caso
Disable: serve para desabilitar a entrada, simulando a
interrupção da chegada de clientes
262
8. Rodando a simulação


Menu: Simulation
Selecione: Options






Selecione: Time Only
Determine a precisão
Não selecione warm up
Marque 1 hora de
simulação
Escolha 1 replicação
Run
263
Observe:

Arrastando esta
barra você consegue
acelerar ou retardar
a velocidade da
simulação

O relógio da
simulação é
visível

Selecione Yes
para ver os
resultados
Resultados: sem warm up – 1h simulação – 1 rodada



Locations:
mostra
estatísticas
sobre os
locais
Compare com
os resultados
analíticos
General: mostra data em
que foi rodada a
simulação, nome do
modelo e nome do
arquivo
265
Resultados: com warm up=1h
1h simulação – 1 rodada
Resultados: com warm up=1h - 4h simulação – 1 rodada
266
Resultados: com warm up=1h
50 h simulação – 1 rodada
Resultados: com warm up=1h - 100 h simulação – 1 rodada
267
MÓDULO 2 – M2_TELEFONE
Exemplo de um sistema M/M/1/G/  / 
A cabine telefônica:
 as chegadas ocorrem de acordo com uma distribuição
exponencial com taxa = 0,1 pessoas/min;
 a duração média dos telefonemas é de TA = 3
minutos e também segue uma distribuição
exponencial.
Qual a probabilidade de uma pessoa chegar à cabine
e não precisar esperar? 70%
b) Qual o tempo médio na fila? 1,28 min
c) Qual seria o tempo médio na fila se a taxa de
chegadas fosse = 0,16 pessoas/min?
Aproximadamente 3 min.
a)
268
MÓDULO 2 – M2_TELEFONE
Exemplo de um sistema M/M/1/G/ /

d) Calcule o nro médio de clientes na fila (formulário
p.34) e compare com o resultado encontrado. Quanto
tempo de simulação foi necessário para convergirem
os valores?
e) Faça o mesmo para o tempo médio no sistema.
269
SIMULAÇÃO:
Distribuições de Probabilidade
Profa. Giovana Pasa, Dra.
[email protected]
Abordagem 1: Ajustar uma distribuição teórica

É a abordagem mais favorável:
 distribuições conhecidas
 bem comportadas
 permite gerar estimativas (estender um pouco
além dos dados originais)
 suaviza os ruídos
 sustentada por conhecimento do fenômeno
físico
 sintetiza a informação vinda dos dados
271
Distribuições

Parâmetros:

de localização ()
1
2
272
Distribuições

Parâmetros:

de escala ()
1
2
273
Distribuições

Parâmetros:

de forma ()
Weibull
=0,5
=1
Weibull
=1
=1
Weibull
=2
=1
274
Distribuições úteis nas modelagens

Uniforme:

usada para gerar outras distribuições
f(x)
1/(b-a)
a
b
275
Distribuições úteis para modelagem:

Exponencial ():
 tempos entre chegadas
de clientes num
sistema (quando estas
ocorrem em uma taxa
constante)
f(x)
=1
x
276
Gama (, )

tempo para completar
uma tarefa
(atendimento de um
cliente; reparo de uma
máquina)
f(x)
=2
=1
x
277
Weibull (, )


tempo para completar
uma tarefa;
tempo até a falha de
um equipamento
f(x)
=2
=1
x
278
Normal (,)


erros de vários tipos,
por exemplo, na
execução de uma peça
com dadas
especificações
dimensionais;
quantidades que
resultam da soma de
outras quantidades
(teorema do limite
central); distribuição de
médias
f(x)
x
279
Lognormal (,2)


tempo para completar
uma tarefa;
quantidades que são o
produto de um grande
número de outras
quantidades
f(x)
x
280
Outras distribuições contínuas:



Beta (1, 2):
 usada como aproximação inicial na ausência de
dados;
 proporção de itens defeituosos num embarque;
 tempo para completar uma tarefa
Pearson tipo V (, ):
 tempo para completar uma tarefa
Pearson tipo VI (1, 2, ):
 tempo para completar uma tarefa
281
Outras distribuições contínuas:

Triangular (a, b, c):
 usada como aproximação inicial na ausência de
dados
f(x)
2/(b-a)
a
c
b
x
282
Distribuições discretas:


Bernoulli (p):
 Ocorrência aleatória com duas saídas possíveis
 p(x) = 1-p se x=0
 p(x) = p
se x=1
 p(x) = 0
em qualquer outra situação
Binomial (t,p)
 número de itens defeituosos em um lote de tamanho t
 número de itens que compõem lotes de tamanhos
aleatórios (tamanhos dos grupos de pessoas num evento)
 número de itens demandados de um estoque
283
Distribuições discretas:


Geométrica (p):
 Número de itens inspecionados antes de encontrar
o primeiro defeituoso
 Número de itens que compõem lotes de tamanhos
aleatórios
 número de itens demandados de um estoque
Binomial negativa (s,p)
 número de itens bons inspecionados antes de
encontrar o s-ésimo item defeituoso
 número de itens que compõem lotes de tamanhos
aleatórios
 número de itens demandados de um estoque
284
Poisson com parâmetro t

Modelagem do número de chegadas Nt

é a taxa de chegadas
E(Nt)=t
é a média do número de chegadas no intervalo t
var(Nt)= t
é a variância do número de chegadas no intervalo t
P ( N t  n) 
e
 t
 t 
n!
n
(n=0,1,2,…)
285
Abordagem 2: Ajustar uma distribuição
empírica

Aplicação:
 Há situações para as quais nenhuma distribuição
teórica se ajusta bem!!!

Aspectos críticos a considerar:
 apresenta irregularidades de comportamento,
associadas principalmente a situações em que
dispomos de poucos dados
 não permitem extrapolar os limites da observação;
isto é crítico, pois estimativas em simulação
dependem também da chance de ocorrência de
eventos extremos
286
Bibliografia





Law, Averill e Kelton, W. Simulation modeling and
analysis. New York: MacGraw Hill, 1991.
Winston, Wayne. Introduction to probability models.
Belmont: Thomson, 2004.
Winston, Wayne. Operations research. Belmont:
Thomson, 1994.
Harrel, Charles R. Simulação: otimizando os sitemas.
São Paulo: IMAM, 2002.
Prado, Darci. Teoria das filas e da simulação. BH:
INDG, 2004.
287
AVALIAÇÃO
288
Aplicação
1) Delimite a extensão do sistema que você vai estudar.
2) Descreva o sistema (como ele ocorre na empresa).
3) Enuncie o objetivo prático da simulação.
4) Cite os eventos que você irá considerar na modelagem e o grau de detalhamento.
5) Explicite os pressupostos da sua modelagem.
6) Liste todos os elementos que você irá considerar no modelo (locais, entidades,
recursos, atributos, processamentos) e descreva a modelagem de cada um. Faça
considerações sobre as simplificações e pressupostos sobre cada um deles.
7) Sobre a coleta de dados:
i)
Quais as fontes usadas?
ii)
Qual o horizonte de tempo que você considerou na coleta? Ele é suficiente?
Contempla mesmo os eventos mais raros?
iii)
De quanto em quanto tempo ocorrem estes eventos mais raros? Quais são eles?
8) Sobre a validação?
i)
Descreva, passo a passo, o que você fez para validar o seu modelo.
ii)
Quem foi consultado?
289
9) Qual o tempo que você propõe para as rodadas? Por que?
10) Qual o tempo de warm up? Por que?
11) Observar a variabilidade natural do seu sistema. Fale a respeito dela em
relação a cada um dos elementos que você usou no sistema.
12) Quais medidores estatísticos você vai usar? Por que? De que modo eles
contribuem para alcançar o objetivo proposto.
13) Foi necessário reavaliar o objetivo da simulação, ao longo do caminho?
Sim? Não? Por que? O que foi modificado.
14) Você aprendeu algo a respeito do seu sistema, ao longo do esforço de
modelagem? Caso sim, o que aprendeu e em que passo(s) da simulação
isso ocorreu.
15) Faça um exercício de criatividade e imagine um ponto do seu sistema
onde você muda drasticamente uma característica (velocidade, tempo de
execução, tempo de atendimento, capacidade do recurso, número de
recursos, taxa de chegadas, etc). Proponha algo que seja impossível hoje,
tecnologicamente. Analise os resultados. O que você observou?
290
291