開始使用免費開始

建立你的模型:建立環境與資源

你被指派協助最佳化一家飛機製造商的組裝產線。飛機的主要組件包括:(1)機身、(2)機翼、(3)尾翼(機尾部分)、(4)動力系統(引擎與螺旋槳),以及(5)起落架。

這些組件分別進入不同的組裝站,容量(slots)依序為 3、2、2、3。這表示一個步驟完成後,若下一站有空位就會前往下一步,否則就必須等待。組裝順序必須依照下圖所示的步驟 1–4 進行。模型時間單位為小時。

Airplane assembly sequence showing the different processes and limited shared resources.

建立一個離散事件模型來模擬這條組裝產線。

本練習屬於課程

Python 的離散事件模擬

檢視課程

練習說明

  • 補齊字典中的資源資訊;鍵為 step_1_fuselage、step_2_wings、step_3_power_plant、step_4_landing_gear,對應的值(製程時間)分別為 20、8、10、8 小時。
  • 建立 SimPy 環境,並將其儲存到名為 env 的變數。
  • 依照圖中所示為模型的資源設定各自的容量(slots),並將它們分別儲存到變數 step_1_fuselage、step_2_wings、step_3_power_plant、step_4_landing_gear 中。

動手互動練習

試著完成這個範例程式碼,體驗一下這個練習。

# 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()
編輯並執行程式碼