Chaîne d'assemblage automobile : ajout d'événements déterministes
Cet exercice porte sur les processus déterministes sans utiliser SimPy. Dans le prochain exercice, nous nous concentrerons sur SimPy.
On vous a demandé de créer un modèle à événements discrets pour simuler une chaîne de production automobile. L'objectif du modèle est d'aider à augmenter la productivité, à repérer les goulots d'étranglement et à gérer les ressources. Pour commencer, vous avez d'abord identifié les grands groupes de processus de la chaîne de production : (1) soudage et peinture, et (2) assemblage et essais. Bien sûr, chacun de ces groupes comprend de nombreux sous‑processus et tâches, mais pour l'instant, vous vous concentrez sur le codage d'une première version de votre modèle à un niveau élevé.
Maintenant que vous avez cerné les groupes de processus critiques, il faut déterminer le temps moyen d'exécution de chacun. Après vos recherches, vous avez établi 15 heures pour le soudage et la peinture, et 24 heures pour l'assemblage des pièces et les essais. Représentons ces processus déterministes dans un modèle à événements discrets sans utiliser SimPy.
Cette activité fait partie du cours
Simulation d'événements discrets en Python
Instructions de l’exercice
- Inscrivez la durée du processus « Soudage et peinture ».
- Inscrivez la durée du processus « Assemblage et essais ».
Exercice interactif pratique
Essayez cet exercice en complétant ce code d’exemple.
def car_production_line(SIMULATION_TIME):
car_number, time = 0, 0
while time < SIMULATION_TIME:
car_number += 1
# Clock-in the time requirement for: Welding and Painting
time += ____
if time >= SIMULATION_TIME: break
print(f"Time = {time:7.4f} | Car {car_number:02d} | Welding and Painting")
# Clock-in the time requirement for: Assembly and testing
time += ____
if time >= SIMULATION_TIME: break
print(f"Time = {time:7.4f} | Car {car_number:02d} | Assembly of parts and Testing")
print(f"Time = {time:7.4f} | Car {car_number:02d} | Car ready for shipping!")
SIMULATION_TIME = 1000
car_production_line(SIMULATION_TIME)