Дискретно-событийное моделирование на Python
Diogo Costa (PhD, MSc)
Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific
ПРИМЕЧАНИЕ: Термины «событие» и «процесс» используются как синонимы.
Что такое недетерминированность события (или процесса)?
Почему это важно?
Природный мир
Антропогенные процессы
Недетерминированные процессы
Статистика
Для этого удобен пакет random
Пример: random.randint(start, end)
import random
# Non-deterministic processes
process_1 = [5, 15]
while time < simulation_time:
# Update simulation time: process_1
time += random.randint(
process_1[0],
process_1[1])
Специальных методов для недетерминированных процессов нет
Вариативность длительности рассчитывается так же, как в моделях без SimPy
Передайте нужную статистику в .timeout()
import random
# Non-deterministic processes
process_1 = [5, 15]
while True:
# Update simulation time: process_1
yield env.timeout(random.randint(
process_1[0],
process_1[1]))
Дискретно-событийное моделирование на Python