Simulazione a eventi discreti in Python
Diogo Costa (PhD, MSc)
Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific
Modelli continui
Avanzano a passi temporali fissi
Il tempo è una variabile fittizia
Uso di for-loop sul tempo
for t in range(time_range):
Modelli a eventi discreti
Avanzano a passi temporali variabili
Il tempo è una variabile di stato
Usano spesso while-loop
while (time < 365):
time += process_duration
Esempio: modello per una compagnia di taxi
while (time < 10):
# Process 1
time_duration_1 = manage_requests()
time += time_duration_1
# Process 2
time_duration_2 = dispatch_taxi()
time += time_duration_2
Condizione di termine
while (time < 10)
Esempio: modello per una compagnia di taxi
while (time < 10):
# Process 1
time_duration_1 = manage_requests()
time += time_duration_1
# Process 2
time_duration_2 = dispatch_taxi()
time += time_duration_2
Orologio
time += time_duration_1
time += time_duration_2
time traccia il tempo corrente della simulazioneEsempio: modello per una compagnia di taxi
while (time < 10):
# Process 1
time_duration_1 = manage_requests()
time += time_duration_1
# Process 2
time_duration_2 = dispatch_taxi()
time += time_duration_2
Variabile di stato
time
Riduci il tempo tra la chiamata e il rilascio del cliente
Variabili che descrivono output ed efficienza del sistema
Simulazione a eventi discreti in Python