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

Simulação de Sistemas

Prof. MSc Sofia Mara de SouzaAULA8

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

Abordagem por Processos

É o mais utilizado atualmente. Suportada pela linguagem SIMSCRIPT

II.5, SIMULA e GPSS. Lógica do Modelo

– Todo o ciclo de vida de uma entidade é tomado como base da simulação baseada em processos.

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

– Processo: seqüência de operações pela qual uma entidade deve passar durante seu ciclo de vida.

– Cada classe de entidades tem seu próprio processo.

– Cada entidade criada herda o processo de sua classe.

– A simulação consiste em um conjunto de processos, pelo menos um para cada classe de entidades.

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

O progresso de uma entidade por um processo é regulado por dois tipos de condições:– Bloqueio incondicional

• Também chamado de suspensão ativa.• Ocorre quando o progresso de uma entidade é

bloqueado por um certo período de tempo que, em princípio, pode ser determinado de antemão.

• Depois de decorrido o período de tempo indicado, a entidade é desbloqueada.

• Ex.: atendimento de um cliente

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

– Bloqueio condicional• Também chamada de suspensão passiva.• Ocorre quando o progresso de uma entidade é

bloqueado devido a condições específicas do modelo simulado.

• A entidade é desbloqueada no momento em que as condições são satisfeitas.

• Ex.: cliente permanece na fila até que chegue no topo da fila e o servidor esteja livre.

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

Exemplo: Problema Teatrochegada

serviço

filarua

nada

telefonando

chamando

lugar espera

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

Processos:– ClienteNaBilheteria

crie entidade Cliente

calcule TempoChegada do próximo Cliente

crie e bloqueie novo processo ClienteNaBilheteria por TempoChegada

espera até que (topo da fila) e (Funcionário livre)

coloque Funcionário em serviço

retire Cliente da fila

calcule TempoDeServiço

bloqueie processo por TempoDeServiço

libere Funcionário

libere Cliente.

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

Exercício:

1) Especifique em pseudo-código o processo para a entidade Telefonema.

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

Módulo de decisão– O módulo de decisão necessita saber

onde, em cada processo, uma entidade está (ou seja, o estado do processo) e necessita também ter a capacidade de parar e reiniciar o movimento de uma entidade pelo seu processo.

– Logo, deve manter, para cada entidade:• tempo de reativação (se conhecido)• ponto de reativação (isto é, a posição dentro do

processo)

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

– O módulo de decisão mantém duas listas com essas informações:

• lista de eventos futuros: calendário com as informações sobre entidades que sofreram bloqueio incondicional.

• lista de eventos atuais: contém as informações de dois tipos de entidades

– entidades bloqueadas incondicionalmente que atingiram o tempo de desbloqueio,

– entidades em bloqueio condicional.

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

O módulo de decisão divide-se em três fases:– A lista de eventos futuros é utilizada para se

determinar o próximo evento. O relógio de simulação é atualizado para o novo tempo.

– As entidades da lista de eventos futuros cujo tempo de reativação for igual ao relógio são movidas para a lista de eventos atuais.

– Cada entidade da lista de eventos atuais é movimentada pelo seu processo se as condições permitirem, até o ponto de terminar o processo ou serem bloqueadas novamente.

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

Iniciar

Examinar lista eventos futuros

Mover entre listas

Examinar lista deeventos atuais

Fim?

Parar

sim

não

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

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 os processos.

Page 15: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA8
Page 16: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA8
Page 17: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA8
Page 18: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA8
Page 19: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA8
Page 20: Simulação de Sistemas Prof. MSc Sofia Mara de Souza AULA8