Aan de slagGa gratis aan de slag

Een auto‑productielijn modelleren: Python‑generators

Je bent gevraagd een discrete‑evenementenmodel te bouwen om een auto‑productielijn te optimaliseren. Om te beginnen moest je de belangrijkste groepen processen in de productielijn identificeren. Dat zijn (1) lassen en spuiten en (2) assemblage en testen. Natuurlijk bevatten deze groepen veel sub‑processen en taken, maar voor nu richt je je op het coderen van een eerste, globaal model.

Omdat je de kritieke procesgroepen al hebt bepaald, is het tijd om de gemiddelde doorlooptijd van elk proces vast te stellen. Je onderzoek leverde 15 uur op voor lassen en spuiten en 24 uur voor onderdelen assembleren en testen.

Het pakket simpy is al voor je geïmporteerd.

De tijd in het model is in uren.

Deze oefening maakt deel uit van de cursus

Discrete Event Simulation in Python

Cursus bekijken

Oefeninstructies

  • Definieer de Python‑generator met de naam car_production_line_gen.
  • Boek de benodigde tijd voor lassen en spuiten in op de productielijn.
  • Boek op dezelfde manier de tijd voor het voltooien van assemblage van onderdelen en testen.
  • Print de huidige simulatie‑tijd.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

# Defining a Generator that includes the processes
def  ____(env):
  car_number = 0
  while True:
    car_number += 1

    # Process 1: Clock the time requirement for welding and painting
    yield  env.____(____)
    print(f"Car {car_number}: Welding and painting (completed) => time = {env.now}")

    # Process 2: Clock in time for process 2 and yield it
    ____
    print(f"Car {car_number}: Assembly of parts and testing (completed) => time = {env.now}")

    # Print car ready for shipment
    print(f"Car {car_number}: Car ready for shipping! time = {env.____} hours")
Code bewerken en uitvoeren