22
Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Embed Size (px)

Citation preview

Page 1: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Simulação de Sistemas

Prof. MSc Sofia Mara de SouzaAULA6

Page 2: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Abordagens Para Modelagem Discreta Modelagem discreta pode seguir 3 formas

principais:– modelagem baseada em eventos– modelagem baseada em processos– modelagem baseada em atividades

Um sistema pode ser modelado utilizando qualquer abordagem.– uma abordagem pode ser mais conveniente que

outra dependendo do sistema a ser modelado.

Page 3: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Introdução

Uma implementação de simulação discreta apresenta, basicamente, 3 grandes blocos:– Decisão: controla execução da simulação.– Ferramentas Gerais: rotinas de suporte.– Lógica do Modelo: expressa as atividades

nas quais as entidades do sistema estão engajadas.

Cada abordagem diferente implica em blocos de Decisão e Lógica diferentes.

Page 4: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Introdução

Decisão-relógio-calendário de eventos-seqüenciamento de eventos

Ferramentas Gerais-entrada/saída-probabilidades-debug

Lógica do Modelo-escrita pelo analista-depende da aplicação

Page 5: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Abordagem por Eventos

Suportada pela linguagem de simulação SIMSCRIPT e GASP.

Lógica do Modelo– Processo de simulação baseado em Rotinas de

Eventos– Rotina de evento: conjunto de instruções, em

uma linguagem de programação, que modelam completamente as conseqüências da execução de um evento (mudanças de estado da simulação).

Page 6: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Exemplo: Problema Teatro

4 eventos:– Chegada: chegada de um cliente na

bilheteria– Chamada: chegada de uma chamada

telefônica– FimDeServiço: fim do atendimento de um

cliente na bilheteria– FimDeChamada: fim do atendimento de

uma chamada telefônica

Page 7: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

chegada

serviço

filarua

nada

telefonando

chamando

lugar espera

Page 8: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Rotinas de eventos:– FimDeServiço

libere Cliente

se (fila de clientes não vazia) então

retire próximo Cliente da fila

calcule TempoDeServiço

agende evento FimDeServiço para ocorrer após TempoDeServiço

senão se (fila de telefonemas não vazia) então

retire próximo Telefonema da fila

calcule TempoDeConversa

agende evento FimDeChamada para ocorrer após TempoDeConversa

senão libere Funcionário.

Page 9: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Exercício:

1) Especifique em pseudo-código as rotinas de evento para os demais eventos do problema do teatro (Chegada, Chamada, FimDeChamada).

Page 10: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

– Chegadacalcule TempoChegada do próximo Cliente

agende evento Chegada para ocorrer após TempoChegada

se (fila de clientes vazia) e (Funcionário livre) então

coloque Funcionário em serviço

calcule TempoDeServiço

agende evento FimDeServiço para ocorrer após TempoDeServiço

senão coloque Cliente na fila.

Page 11: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Módulo de Decisão:– Realiza o agendamento dos eventos e não

se preocupa com o seqüenciamento.– Seqüenciamento é tarefa das rotinas de

eventos.– Conseqüência para o processo de

simulação: lógica de modelo é mais complexa.

Page 12: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

O módulo de decisão divide-se em duas fases:– Examinar o calendário de eventos para

descobrir qual o próximo evento a ser processado e mover o relógio de simulação para o tempo do evento; mover todas as referências para as rotinas de evento associadas com este tempo para uma lista de eventos atuais.

– Mantendo o relógio constante, executar cada rotina de evento da lista de eventos atuais.

Page 13: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Iniciar

Examinar calendário

Compilar lista deeventos atuais

Executar eventos

Fim?

Parar

sim

não

Page 14: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Exercícios:2) Para o problema de modelagem das máquinas

em uma linha de produção, construa, em pseudo-código, o programa de simulação e as rotinas de evento. As tarefas chegam na máquina com um intervalo t1 e entram em uma fila de espera antes de serem executadas. A máquina demora um tempo t2 processando uma tarefa. Em um intervalo de tempo t4 chega um pedido de manutenção, ficando então a máquina bloqueada por um tempo t3.

Page 15: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6
Page 16: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Entidades permanentes: máquina Atributos de máquinas:

– tempo da primeira manutenção: constante– tempo entre manutenções: constante– tempo de manutenção: variável

estocástica– disponibilidade: ocupada, livre, em

manutenção– precisa manutenção: sim, não

Page 17: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Entidades temporárias: tarefas Atributos de tarefas:

– tempo entre tarefas: variável estocástica– tempo da tarefa: variável estocástica

Conjuntos: máquinas disponíveis, fila de tarefas

Atividades: tarefa em execução, máquina em manutenção

Page 18: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6

Eventos exógenos:– chegada de tarefa

Eventos endógenos:– início da execução de tarefa– fim de execução de tarefa– início de manutenção– fim de manutenção– chegou tempo de manutenção

Page 19: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6
Page 20: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6
Page 21: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6
Page 22: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA6