Dopravní model: definice generátoru
Výborně – máš za sebou definici vstupů, výstupů i procesů modelu, které jsi popsal/a pomocí Pythonových metod. Teď je čas sestavit generátor, který všechny tyto procesy správně seřadí.
Toto cvičení je součástí kurzu
Diskrétní simulace událostí v Pythonu
Pokyny k cvičení
- Zavolej funkci
road_travel(), kterou jsi vytvořil/a dříve a která počítá dobu jízdy po silnici, a zaznamenej čas, který trvá její dokončení. - Zavolej funkci
wait_traffic_light(), kterou jsi vytvořil/a dříve a která počítá dobu čekání na semaforech, a zaznamenej čas, který trvá její dokončení.
Interaktivní cvičení na vyzkoušení si v praxi
Vyzkoušejte si toto cvičení dokončením tohoto ukázkového kódu.
def all_processes(env, inputs):
road_stretch, distance_total, traffic_light = 0, 0, 0
while True:
road_stretch += 1
# Call function calculates road travel time
distance, distance_total = ____(inputs, distance_total)
yield env.____(distance/inputs['Speed_limit_ms'])
print(f"> Road Stretch #{road_stretch} \nLength = {distance} m , Cumulative distance travelled = {distance_total} m , Total time elapsed = {env.now} sec")
traffic_light += 1
# Call function that calculates waiting time at a traffic light
waitTime_traffic_light_sec = ____(inputs, distance_total)
yield env.____(waitTime_traffic_light_sec)
print(f"> Traffic Light #{traffic_light} \nWait time = {waitTime_traffic_light_sec} sec, Time lapsed = {env.now} sec")