เริ่มต้นใช้งานเริ่มต้นใช้งานได้ฟรี

แบบฝึกหัดเงื่อนไขเชิงตรรกะ

ลูกค้าสั่งสินค้า 6 รายการให้จัดส่งภายในเดือนหน้า โดยต้องใช้รถบรรทุกหลายเที่ยวในการส่งสินค้าทั้งหมด รถบรรทุกมีน้ำหนักบรรทุกสูงสุด 25,000 ปอนด์ เพื่อเหตุผลด้านกระแสเงินสด จึงต้องการเลือกส่งสินค้าในชุดที่ทำกำไรได้มากที่สุดภายใต้ข้อจำกัดน้ำหนักดังกล่าว

ผลิตภัณฑ์ น้ำหนัก (ปอนด์) กำไร (USD)
A 12,583 102,564
B 9,204 130,043
C 12,611 127,648
D 12,131 155,058
E 12,889 238,846
F 11,529 197,030

ได้สร้าง Python dictionary สองตัวคือ weight และ prof รวมถึง list ชื่อ prod ไว้ให้แล้ว ซึ่งเก็บข้อมูลน้ำหนัก กำไร และชื่อของแต่ละผลิตภัณฑ์ สามารถสำรวจข้อมูลเหล่านี้ได้ใน console

แบบฝึกหัดนี้เป็นส่วนหนึ่งของหลักสูตร

Supply Chain Analytics ด้วย Python

ดูคอร์ส

คำแนะนำการฝึกหัด

  • เพิ่มเงื่อนไขเพื่อให้น้ำหนักรวมบนรถบรรทุกไม่เกิน 25,000 ปอนด์
  • เพิ่มเงื่อนไขเพื่อให้โมเดลเลือกผลิตภัณฑ์จาก D, E และ F ได้อย่างมากเพียง 1 รายการเท่านั้น

แบบฝึกหัดเชิงโต้ตอบแบบลงมือทำ

ลองทำแบบฝึกหัดนี้โดยเติมโค้ดตัวอย่างนี้ให้สมบูรณ์

# Initialized model, defined decision variables and objective
model = LpProblem("Loading Truck Problem", LpMaximize)
x = LpVariable.dicts('ship_', prod, cat='Binary')
model += lpSum([prof[i] * x[i] for i in prod])

# Define Constraint
model += lpSum([weight[i] * x[i] for i in prod]) ____ ____
model += ____

model.solve()
for i in prod:
    print("{} status {}".format(i, x[i].varValue))
แก้ไขและรันโค้ด