Aan de slagGa gratis aan de slag

Het dieetprobleem opnieuw bekeken

Je beoordeelt de financiën van een boer die je vroeg om het dieet van zijn varkens opnieuw te bekijken en, waar mogelijk, de kosten te verlagen. Het huidige kostenminimalisatiedieet is gebaseerd op het advies van de dierenarts: minimaal 17% eiwit, 2% vet en 7 lb voer volgens de specificaties

Food Cost ($/lb) Protein (%) Fat (%)
corn 0.11 10 2.5
soybean 0.28 40 1

Je weet dat de 7 lb een afgerond getal was en kan worden verlaagd naar 6,6 lb. Je moet onderzoeken hoe het wijzigen van de gewicht- of vetbeperkingen, één tegelijk, de minimale kosten beïnvloedt. Je lost eerst het oorspronkelijke probleem op zoals het is en bekijkt de slack en schaduwprijs.

pulp is voor je geïmporteerd en model is gedefinieerd, net als de variabelen C en S voor corn en soybean.

Deze oefening maakt deel uit van de cursus

Introductie tot optimalisatie in Python

Cursus bekijken

Oefeninstructies

  • Print de slack van de Weight-constraint.
  • Controleer of de schaduwprijs van de Weight-constraint groter is dan 0.

Praktische interactieve oefening

Probeer deze oefening eens door deze voorbeeldcode in te vullen.

model.constraints['Weight'] = C + S >= 7  

model.solve() 
print(f"Status: {LpStatus[model.status]}\n") 

# Print the slack of the weight constraint
print("The slack of the Weight constraint is {}", 
      ____.constraints['Weight'].____)

# Check if the shadow price is greater than 0
if ____.constraints['Weight'].____ > 0:
	print('Tightening the constraint will increase minimum cost')
Code bewerken en uitvoeren