Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA3 Simulação de Sistemas Discretos Entidades – objetos de interesse em um sistema. – Permanentes: existem durante todo o experimento. • caixas de supermercado, processadores – Temporárias: criadas e destruídas durante o experimento. • clientes, processos Simulação de Sistemas Discretos Atributos – denotam propriedades das entidades. • clientes do supermercado: n° de itens comprados, forma de pagamento, etc. • caixas do supermercado: tempo gasto para atendimento, ocupação (livre/ocupado), etc. Conjuntos – grupos de entidades que compartilham propriedades ou se relacionam. • clientes do supermercado em uma mesma fila Simulação de Sistemas Discretos Estado do sistema é definido por: – conjunto de entidades existentes – valores atuais dos atributos das entidades – composição atual dos conjuntos. Evento – alteração instantânea no estado do sistema. Simulação de Sistemas Discretos Tempo real – tempo no sistema real, na natureza, medido com um relógio real. Tempo do modelo – tempo medido com um relógio “modelado” pela simulação. – controlado por uma variável do programa de simulação. Tipos de Eventos Eventos que alteram valores de atributos de entidades. – mudança de sinal em um semáforo Eventos que iniciam ou terminam atividades. – cliente começa a ser atendido pelo caixa Eventos que criam ou destróem uma entidade temporária. – cliente chega ao supermercado – cliente deixa o supermercado Tipos de Eventos Eventos que adicionam ou removem entidades de conjuntos. – cliente entra na fila do caixa – cliente sai da fila do caixa Obs.: um evento pode ser de vários tipos ao mesmo tempo. Sistema e Ambiente Sistema fechado – modelo engloba o sistema e o ambiente. – modelo explica todo o universo de interesse. – logo, eventos são conseqüências de eventos anteriores produzidos pelo próprio modelo. – ambiente é menos detalhado que o sistema. Sistema e Ambiente Sistema aberto – modelo não explica o que ocorre no ambiente. – ambiente se reflete no sistema através de eventos exógenos. Sistema e Ambiente Eventos exógenos – modelam atividades não controladas pelo modelo. • cliente entra no supermercado Eventos endógenos – definidos internamente pelo modelo como conseqüência de eventos anteriores. • entrada de cliente na fila do caixa, saída de cliente do supermercado Geração de Eventos Exógenos – Geração prévia à experimentação. • eventos são definidos durante a coleta de dados. • armazenamento de um volume muito grande de informações. • programa de simulação acessa os dados à medida que o tempo do modelo é incrementado. • utilizado quando eventos não seguem alguma regra ou em simulação determinística. – benchmarks, chegada de instruções de uma máquina Geração de Eventos – Geração iterativa • eventos gerados durante a simulação. • cada evento prepara a geração do evento seguinte. • utilizado quando eventos seguem uma regra conhecida, ou seguem uma distribuição de probabilidade, simulação estocástica. • eventos não são armazenados previamente. – simulação do supermercado, eventos são chegadas de clientes, tempo entre clientes segue distribuição de probabilidade, cada evento calcula o intervalo de tempo até o evento seguinte. Algoritmo de Simulação Implementação do Modelo Estruturas de dados para representar as entidades. Programar algoritmo de simulação e geração de relatórios. – o algoritmo pode ser independente do modelo. Programar rotinas que correspondem às ações a serem executadas em cada evento. – as rotinas são dependentes do modelo. Implementação do Modelo Rotinas: – processamento do evento • atualização do estado • geração de eventos endógenos – geração de eventos exógenos – coleta de estatísticas e geração de relatórios específicos – inicialização do modelo • criar entidades e inicializar valores • geração do primeiro evento exógeno • inicializar tempo do modelo Implementação do Modelo Comparação entre linguagens – Linguagens de programação de propósito geral. • é necessário programar o algoritmo de simulação. • lógica do algoritmo de simulação e ações específicas do modelo se misturam. Implementação do Modelo – Linguagens de simulação. • • • • • algoritmo de simulação está pronto. geração de relatórios genérica está pronta. distribuições de probabilidade embutidas. suporte à coleta de dados e análise estatística. suporte a diferentes abordagens de modelagem.