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

บิสกิตแบบ Nonlinear Constrained

เยี่ยมมากเลย!

คราวนี้ลองแก้ปัญหาเดิมอีกครั้งโดยใช้ NonlinearConstraint กัน

จำกัดความว่า เงื่อนไขสำหรับโรงงานคือต้องผลิตให้ครบอย่างน้อย 140 ออร์เดอร์ที่สั่งล่วงหน้า และแต่ละโรงงานสามารถผลิตบิสกิตได้สูงสุด 100 ชิ้นต่อวัน

โหลด minimize, Bounds, และ NonlinearConstraint ให้แล้ว รวมถึงฟังก์ชันรายได้ R ฟังก์ชันต้นทุน C และฟังก์ชันกำไร profit

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

การหาค่าที่เหมาะสมที่สุดใน Python เบื้องต้น

ดูคอร์ส

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

  • กำหนดเงื่อนไขโดยใช้ฟังก์ชัน lambda ชื่อ q พร้อมระบุขอบเขตบนและขอบเขตล่าง
  • ทำการหาค่าเหมาะสมโดยเพิ่มฟังก์ชันออบเจกทีฟ ขอบเขต และเงื่อนไขลงใน minimize()

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

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

# Redefine the problem with NonlinearConstraint
constraints = NonlinearConstraint(lambda q: ____, ____, ___)

# Perform optimization
result = minimize(lambda q: ____, 
                  [50, 50], 
                  bounds=____,
                  constraints=____)

print(result.message)
print(f'The optimal number of biscuits to bake in bakery A is: {result.x[0]:.2f}')
print(f'The optimal number of biscuits to bake in bakery B is: {result.x[1]:.2f}')
print(f'The bakery company made: ${-result.fun:.2f}')
แก้ไขและรันโค้ด