Simulação de Eventos Discretos em Python
Diogo Costa (PhD, MSc)
Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific
NOTA: Os termos "evento" e "processo" são usados como sinônimos.
O que é determinismo de evento (ou processo)?
Por que processos determinísticos são importantes?
Mundo natural
Dirigidos ou iniciados por humanos
Processos determinísticos
A duração do processo precisa entrar no tempo da simulação
# Processos determinísticos (tempo em horas) duration_process_1 = 10 duration_process_2 = 5while sim_time < total_sim_time:# Atualiza o tempo da simulação: Processo 1 sim_time += duration_process_1# Atualiza o tempo da simulação: Processo 2 sim_time += duration_process_2
Uma implementação em SimPy de eventos determinísticos:
.timeout() registra a duração do processo# Processos determinísticos
duration_process_1 = 10
duration_process_2 = 5
while True:
# Atualiza o tempo da simulação: Processo 1
yield env.timeout(duration_process_1)
# Atualiza o tempo da simulação: Processo 2
yield env.timeout(duration_process_2)
Simulação de Eventos Discretos em Python