การจำลองเหตุการณ์แบบไม่ต่อเนื่องด้วย Python
Dr Diogo Costa
Adjunct Professor, University of Saskatchewan, Canada & CEO of ImpactBLUE-Scientific
ทำความเข้าใจระบบไดนามิก
กำหนดวัตถุประสงค์ของโมเดล discrete-event
ระบุกระบวนการ:
ระบุ SimPy resource ที่เหมาะสม (resource, container, store)
กำหนดสถาปัตยกรรมของโมเดล:
ทำความเข้าใจระบบไดนามิก
วัตถุประสงค์ของโมเดล
ต้องการปรับปรุงด้านใดบ้าง?
ตัวแปรสถานะที่ใช้ติดตามวัตถุประสงค์เหล่านี้
Shared Resources
simpy.Resource(env, capacity=4)
ตัวอย่าง
Containers
simpy.Container(env, capacity,
init=initial_capacity)
ทรัพยากรที่ทำงานเหมือนถังหรือตะกร้า
เพิ่มและลดปริมาณได้ด้วย:
.put() และ .get()
ตัวอย่าง
Store
simpy.Store(env, capacity=4)
ทรัพยากรที่ทำงานเหมือนคลังสินค้าที่มีหลายรายการ
ความจุไม่จำกัด (ค่าเริ่มต้น)
ช่องเก็บข้อมูลสำหรับออบเจกต์ใดก็ได้
เพิ่มและลบรายการได้ด้วย:
.put() และ .get()
ตัวอย่าง
SimPy ใช้ bitwise operator เพื่อเชื่อมสองเหตุการณ์เข้าด้วยกัน
ประเภทของ operator ใน Python
Bitwise operator
a & b, a >> b, a ^ bใน SimPy
Bitwise operator ที่เกี่ยวข้องสำหรับ SimPy
__and__() หรือ &__or__() หรือ |การจำลองเหตุการณ์แบบไม่ต่อเนื่องด้วย Python