โมเดลการขนส่ง: การกำหนด generator
ยอดเยี่ยม คุณได้กำหนด input และ output ของโมเดล รวมถึงกระบวนการต่าง ๆ ที่อธิบายผ่านเมธอด Python แล้ว ถึงเวลาสร้าง generator เพื่อจัดลำดับกระบวนการทั้งหมดในโมเดล
แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร
การจำลองเหตุการณ์แบบไม่ต่อเนื่องด้วย Python
คำแนะนำการฝึกหัด
- เรียกใช้ฟังก์ชัน
road_travel()ที่สร้างไว้ก่อนหน้า ซึ่งคำนวณเวลาเดินทางบนถนน และบันทึกเวลาที่ใช้ไป - เรียกใช้ฟังก์ชัน
wait_traffic_light()ที่สร้างไว้ก่อนหน้า ซึ่งคำนวณเวลารอที่สัญญาณไฟจราจร และบันทึกเวลาที่ใช้ไป
แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ
ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์
def all_processes(env, inputs):
road_stretch, distance_total, traffic_light = 0, 0, 0
while True:
road_stretch += 1
# Call function calculates road travel time
distance, distance_total = ____(inputs, distance_total)
yield env.____(distance/inputs['Speed_limit_ms'])
print(f"> Road Stretch #{road_stretch} \nLength = {distance} m , Cumulative distance travelled = {distance_total} m , Total time elapsed = {env.now} sec")
traffic_light += 1
# Call function that calculates waiting time at a traffic light
waitTime_traffic_light_sec = ____(inputs, distance_total)
yield env.____(waitTime_traffic_light_sec)
print(f"> Traffic Light #{traffic_light} \nWait time = {waitTime_traffic_light_sec} sec, Time lapsed = {env.now} sec")