Kom igångKom igång gratis

Bygg din modell: Skapa en miljö och resurser

Du har fått i uppdrag att hjälpa till att optimera monteringslinjen hos en flygplatstillverkare. Flygplanets huvudkomponenter är (1) flygkroppen, (2) vingarna, (3) stjärtpartiet, (4) drivenheten (motor och propeller) samt (5) landningsstället.

Varje komponent monteras i ett eget avsnitt med 3, 2, 2 respektive 3 platser. Det innebär att när ett steg är klart går komponenten vidare till nästa steg om en plats finns tillgänglig – annars får den vänta. Monteringssekvensen måste följa ordningen för steg 1–4 enligt diagrammet nedan. Modelltiden anges i timmar.

Flygplansmontagesekvens som visar de olika processerna och begränsade delade resurser.

Bygg en diskret händelsemodell för att simulera monteringslinjen.

Den här övningen är en del av kursen

Diskret händelsesimulering i Python

Visa kurs

Övningsinstruktioner

  • Fyll i ordboken med information om dina resurser. Nycklarna är step_1_fuselage, step_2_wings, step_3_power_plant och step_4_landing_gear, med följande värden (processvaraktigheter): 20, 8, 10 respektive 8 timmar.
  • Skapa SimPy-miljön och lagra den i en variabel med namnet env.
  • Fyll i modellens resurser med respektive kapacitet enligt diagrammet (dvs. antal platser), och lagra dem i variabler med namnen step_1_fuselage, step_2_wings, step_3_power_plant och step_4_landing_gear.

Interaktiv övning med praktiskt arbete

Testa den här övningen genom att slutföra den här exempelkoden.

# Define a dictionary with your processes
processing_time = {
  "____": 20,
  "____": 8,
  "step_3_power_plant": ____,
  "step_4_landing_gear": ____
}

# Create your SimPy Environment with the name env
env = simpy.____()

# Create resources for each assembly step
step_1_fuselage = simpy.____(env, capacity=____)
step_2_wings = simpy.____(env, capacity=2)
step_3_power_plant = simpy.____(env, capacity=2)
step_4_landing_gear = simpy.____(env, capacity=3)

env.process(order_aircraft(env, PLANE_ORDERS, step_1_fuselage, step_2_wings, step_3_power_plant, step_4_landing_gear))

env.run()
Redigera och kör kod