Capítulo 2 Conceitos Fundamentais de Simulação Frederico R. B. Cruz Departamento de Estatística - UFMG
Conceitos Fundamentais: Um Sistema Simplificado objetivo geral: - estimar a produção esperada;
- tempo na fila, tamanho da fila, proporção de tempo no qual a máquina está ocupada;
bom senso - seja consistente (partes de tempo);
- seja razoável (interpretação, arredondamentos).
Especificações do Modelo inicialmente (tempo 0), sistema vazio e desocupado; unidade de tempo: minutos; tempos de chegada: 0,00, 6,84, 9,24, 11,94, 14,53; - tempo entre chegadas: 6,84, 2,40, 2,70, 2,59, 0,73;
tempos de serviço: 4,58, 2,96, 5,86, 3,21, 3,11; parar após transcorridos 15 minutos de simulação.
Objetivos do Estudo: Medidas de Desempenho número total de partes produzidas P; tempo médio de espera das partes na fila: tempo máximo de espera das partes na fila:
Objetivos do Estudo: Medidas de Desempenho (cont.) número médio de partes na fila:
número máximo de partes na fila:
tempo médio e máximo de ciclo das partes (tempo no sistema)
Objetivos do Estudo: Medidas de Desempenho (cont.) utilização da máquina (proporção de tempo de ocupação): muitas outras possíveis (sobrecarga de informação?).
Opções de Análise palpite - tempo médio entre chegadas = 3,05 min
- tempo médio de serviço = 3,94 min
- tamanho da fila tende a explodir (talvez não em apenas 15 min);
- se o tempo médio entre chegadas fosse maior que o tempo médio de serviço e estes tivessem variância nula, nunca haveria filas;
- a realidade: entre estes dois extremos;
- palpite tem suas limitações!
Opções de Análise (cont.) teoria de filas - requer hipóteses adicionais a respeito do modelo;
- modelo popular e simples, a fila M/M/1
- tempo entre chegadas ~ exponencial
- tempo de serviço ~ exponencial e independente das chegadas
- E(serviço) < E(chegadas)
- regime permanente (tempo muito longo, eterno);
- resultados analíticos exatos, p.e., tempo médio de espera na fila:
- problemas: validade, estimativa das médias, janela de tempo;
- freqüentemente, útil, como primeira aproximação.
Simulação Mecânica operações (chegadas, tempos de serviço) individuais ocorrerão exatamente como na realidade; interação entre as diferentes partes; intalação de “observadores” para obtenção de medidas de desempenho; abordagem “força bruta”; nada de misterioso ou refinado - mas muitos detalhes e anotações;
- software para simulação pode fazê-lo para você.
Partes de Um Modelo de Simulação entidades - “agentes” que se movem, mudam de estado, afetam e são afetados por outras entidades;
- objetos dinâmicos—são criados, se movem, vão embora (talvez);
- usualmente, representam coisas “reais”:
- nosso modelo, entidades são partes;
- pode haver entidades “imaginárias” para modelagem de “travessuras”:
- demônios/anjos que surgem e danificam partes/deixam inoperantes;
- usualmente, apresentam múltiplas realizações;
- pode haver diferentes entidades concorrentes.
Partes de Um Modelo de Simulação (cont.) atributos - características de todas as entidades: descrevem, diferenciam;
- todas as entidades possuem atributos básicos, mas diferentes valores para diferentes atributos, p.e.:
- tempo de chegada;
- prazo para entrega;
- prioridade;
- cor;
- valores são característicos de uma entidade específica;
- semelhantes às variáveis locais;
- no Arena, algumas são automáticas, outras, você define.
Partes de Um Modelo de Simulação (cont.) variáveis (globais) - reflete a característica de um sistema, independente das entidades;
- cujo nome e valor só existe um para o modelo inteiro;
- não acopladas às entidades;
- podem ser acessadas e modificadas pelas entidades;
- tempo de viagem entre estações;
- número de partes no sistema;
- cronômetro da simulação;
- escritas nas “paredes” do sistema, não nas partes;
- algumas, próprias no Arena, mas outras podem ser definidas por você.
Partes de Um Modelo de Simulação (cont.) recursos - sobre o que as entidades competem:
- pessoal,
- equipamentos,
- espaço físico;
- as entidades tomam um recurso, utilizam-no e liberam-no;
- pense em um recurso como sendo atribuído a uma entidade, em lugar de uma entidade pertencendo a um recurso;
- “um” recurso pode ter diversas unidades de capacidade:
- assentos em uma mesa de restaurante;
- número de unidades de um recurso podem mudar ao longo da simulação.
Partes de Um Modelo de Simulação (cont.) filas - locais de espera das entidades, quando não podem se mover (possivelmente porque o recurso que pretendem tomar não está disponível);
- têm nomes, freqüentemente ligados ao recurso respectivo;
- podem ter capacidade finita para modelar limitação de espaço—tem que ser modelado o que fazer quando uma entidade surgir para entrar em uma fila que já estiver cheia;
- usualmente, monitora-se o seu tamanho e tempo de espera.
Partes de Um Modelo de Simulação (cont.) acumuladores de estatísticas - variáveis que “monitoram” o que está ocorrendo;
- dependentes das medidas de desempenho de interesse;
- “passivos” no modelo—não participam, apenas monitoram;
- muito, são automáticos no Arena, mas alguns precisam ser inicializados e manipulados por você durante a simulação;
- ao final da simulação, são utilizados para calcular as medidas de desempenho finais.
Partes de Um Modelo de Simulação (cont.) acumuladores de estatísticas para o sistema simplificado: - número de partes produzidas até então;
- total de tempos gastos na fila até então;
- número de partes que passaram pela fila;
- maior tempo na fila já visto;
- total de tempos no sistema;
- maior tempo no sistema já visto;
- área sob a curva de tamanho da fila Q(t) até então;
- maior Q(t) até então;
- área sob a curva de ocupação do servidor B(t) até então;
Eventos “algo” que acontece em um instante de tempo (simulado) e pode mudar: - atributos,
- variáveis,
- acumuladores de estatísticas;
Eventos para o Sistema Simplificado chegada de uma nova parte no sistema: - atualizar os acumuladores de estatísticas,
- área sob Q(t),
- máximo Q(t),
- área sob B(t);
- marcar a parte com o tempo corrente
- se a máquina está desocupada:
- iniciar processamento (programar partida), tornar a máquina ocupada, inicializar o tempo na fila (0);
- senão (máquina ocupada):
- colocar parte no final da fila, incrementar tamanho da fila;
- programar próximo evento de chegada.
Eventos para o Sistema Simplificado (cont.) partida (quando o serviço é completado): - incrementar o acumulador do unidades produzidas;
- calcular e acumular o tempo no sistema (agora - tempo de chegada);
- atualizar as estatísticas acumuladas;
- se a fila é não-vazia:
- senão (fila está vazia):
- faça a máquina desocupada (note que neste caso não haverá programação de evento de partida).
Eventos para o Sistema Simplificado (cont.) Final - atualize as estatísticas acumuladas (até o final da simulação);
- calcular as medidas de desempenho finais, utilizando as estatísticas acumuladas.
Especificações para o Sistema Simplificado relógio da simulação (interno ao Arena) calendário de eventos (lista de eventos): - [número da entidade, tempo do evento, tipo de evento];
- mantidos na ordem segundo a qual ocorrerão;
- próximo evento sempre no topo;
- inicialmente, programar a primeira chegada;
- final, corresponde à última partida;
variáveis de estado (descrevem o status atual): - status do servidor, B(t) = 1, se ocupado, 0, se livre;
- número de usuários na fila, Q(t);
- tempos de chegada de cada usuário (lista de tamanho aleatório).
Simulação Manual acompanhar manualmente as variáveis de estados e os acumuladores; utilizar os tempos de chegada e de serviço; acompanhar o calendário de eventos; adiantar o relógio de um evento ao próximo; por simplicidade, omitir cálculos dos tempos no sistema e valores máximos;
Simulação Manual: inicialização
Simulação Manual: inicialize em t = 0.00
Simulação Manual: chegada da parte 1 em t = 0.00
Simulação Manual: partida da parte 1 em t = 4.58
Simulação Manual: chegada da parte 2 em t = 6.84
Simulação Manual: chegada da parte 3 em t = 9.24
Simulação Manual: partida da parte 2 em t = 9.80
Simulação Manual: chegada da parte 4 em t = 11.94
Simulação Manual: chegada da parte 5 em t = 14.53
Simulação Manual: final em t = 15.00
Simulação Manual: Finalizações tempo médio na fila: tamanho médio da fila: utilização do servidor:
Registro Completo da Simulação Manual
Implementação Computacional da Simulação Orientada a Eventos claramente adequada; frequentemente utiliza bibliotecas para: - gerenciamento de listas;
- geração de números aleatórios;
- coleta de dados;
- gerência de lista de eventos e relógio;
- conclusões e saídas;
programa principal agrega bibliotecas e executa os eventos em ordem.
Variabilidade na Simulação simulação anterior é apenas uma replicação — amostra de tamanho unitário (pouco valor) cinco replicações: intervalos de confiança das esperanças - p.e., intervalo de 95% de confiança do E(tempo médio na fila):
Comparação de Alternativas Normalmente, simulação é utilizada para mais de uma simples configuração; freqüentemente, deseja-se comparar alternativas, selecionar ou procurar pela melhor (segundo algum critério); sistema simplificado: o quê aconteceria se a taxa de chegada dobrasse? - reduzir o tempo entre chegadas à metade;
- simular novamente o modelo;
- realizar cinco replicações.
Resultados: situação inicial versus dobro taxa chegada observar a variabilidade; risco em tomar decisões por apenas uma (primeira) replicação; difícil concluir que há realmente diferenças; é necessária análise estatística dos resultados.
Revisão do Estudo de Simulação entenda o sistema; formule um modelo de representação; traduza o modelo para um software de simulação; verifique o “programa”; valide o modelo; planeje os experimentos; faça simulações; analise, compreenda, documente os resultados.
Dostları ilə paylaş: |