जूस के साथ शैडो प्राइस
एक फर्म दो मशीनें \(M_1\) और \(M_2\) का उपयोग ग्रेपफ्रूट जूस (\(g\)) और ऑरेंज जूस (\(o\)) की बॉटलिंग के लिए कर रही है. इसका लक्ष्य निम्नलिखित बाधाओं के अधीन लाभ को अधिकतम करना है:
M1: \(6g + 5.5o \leq 40\) और M2: \(3g + 2.5o \leq 20\)
ये बाधाएँ मशीनों की उत्पादकता और उपलब्धता को दर्शाती हैं. उदाहरण के लिए, M1 सप्ताह में 40 घंटे उपलब्ध है और 1 टन ग्रेपफ्रूट जूस की बॉटलिंग में 6 घंटे लगते हैं, तथा 1 टन ऑरेंज जूस के लिए 5.5 घंटे.
एक अतिरिक्त सप्लाई बाधा भी है: फर्म को सप्ताह में अधिकतम 6 टन ग्रेपफ्रूट और 12 टन संतरे मिलते हैं. ये अपर बाउंड्स हैं.
pulp आपके लिए इम्पोर्ट किया गया है और model परिभाषित है. वैरिएबल g और o क्रमशः ग्रेपफ्रूट और ऑरेंज जूस के लिए दिए गए हैं.
यह अभ्यास पाठ्यक्रम का हिस्सा है
Python में Optimization परिचय
अभ्यास निर्देश
- for-लूप को पूरा कीजिए ताकि यह जाँच सके कि शैडो प्राइस पॉज़िटिव है या नहीं.
- वह वैरिएबल दर्ज कीजिए जो दर्शाता है कि बाधा ढीली करने पर objective में सीमांत वृद्धि कितनी है.
- वह वैरिएबल दर्ज कीजिए जो मापता है कि बाधा कितनी टाइट है.
इंटरैक्टिव व्यावहारिक अभ्यास
इस अभ्यास को इस नमूना कोड को पूरा करके आज़माएँ।
print(LpStatus[model.status])
print(f'The optimal amount of {g.name} embottled is: {g.varValue:.2f} tons')
print(f'The optimal amount of {o.name} embottled is: {o.varValue:.2f} tons')
for name, c in model.constraints.items():
# Check if shadow value is positive
if c.____ > 0:
# Enter the variable that measures marginal increase in objective when constraint is relaxed
print(f"Increasing the capacity of {name} by one unit would increase profit by {c.____} units.")
else:
# Enter the variable that measures how tight the constraint is
print(f"{name} has {c.____} units of unused capacity.")