CommencezCommencez gratuitement

Modèle de transport : définir le générateur

Bravo ! Vous avez défini les entrées et sorties de votre modèle ainsi que les processus du modèle que vous avez caractérisés à l'aide de méthodes Python. Il est maintenant temps de mettre en place un générateur qui enchaînera tous vos processus de modèle.

Cette activité fait partie du cours

Simulation d'événements discrets en Python

Voir le cours

Instructions de l’exercice

  • Appelez la fonction road_travel() créée plus tôt, qui calcule le temps de trajet par la route, et comptabilisez le temps nécessaire pour l'effectuer.
  • Appelez la fonction wait_traffic_light() créée plus tôt, qui calcule le temps d'attente aux feux de circulation, et comptabilisez le temps nécessaire pour l'effectuer.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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")
Modifier et exécuter le code