CommencerCommencer gratuitement

Chaîne d’assemblage automobile : ajout d’événements non déterministes avec SimPy

Cet exercice porte sur les processus non déterministes avec SimPy.

Vous allez modifier la version SimPy de votre modèle de chaîne d’assemblage automobile, en ajoutant les mêmes événements déterministes à l’aide des méthodes de SimPy.

Rappelez-vous que « Welding and painting » prennent en moyenne 15 heures, mais que cette durée varie de cinq heures (en plus ou en moins). De son côté, « Assembly of parts and testing » prend en moyenne 24 heures, avec une variation de six heures (en plus ou en moins).

La bibliothèque SimPy a été importée pour vous.

Cet exercice fait partie du cours

Simulation d’événements discrets en Python

Afficher le cours

Instructions

  • Comptabilisez la durée du processus « Welding and painting », en tenant compte de sa variabilité à l’aide de la méthode random.randint().
  • Comptabilisez la durée du processus « Assembly of parts and testing », en tenant compte de sa variabilité à l’aide de la méthode random.randint().

Exercice interactif pratique

Essayez cet exercice en complétant cet exemple de code.

def car_production_line(env):
    car_number = 0
    while True:
        car_number += 1

        # Adding process 1: Clock-in time requirement for Welding and Painting
        yield env.____(random.____(10, 20))
        print(f"Time = {env.now:7.4f} | Car {car_number:02d} | Welding and Painting")

        # Adding process 2: Return/yield time after completing the process and print the current time
        yield env.____(random.____(18, 30))
        print(f"Time = {env.now:7.4f} | Car {car_number:02d} | Assembly of parts and Testing")
        print(f"Time = {env.now:7.4f} | Car {car_number:02d} | Car ready for shipping!")

env = simpy.Environment()
env.process(car_production_line(env))
env.run(until=SIMULATION_TIME)
Modifier et exécuter le code