CommencezCommencez gratuitement

Le problème du régime alimentaire, revisité

Vous examinez les états financiers d'un agriculteur qui vous a demandé de revoir l'alimentation de ses porcs et de réduire les coûts si possible. Le régime actuel, qui minimise les coûts, est basé sur la recommandation du vétérinaire d'au moins 17 % de protéines, 2 % de matières grasses et 7 lb de nourriture, selon les spécifications

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

Vous avez l'information que les 7 lb étaient une valeur arrondie et pourraient diminuer à 6,6 lb. On vous demande d'évaluer comment la modification, une à la fois, de la contrainte sur le poids ou sur les matières grasses affecte le coût minimal. Vous résoudrez le problème original tel quel et examinerez l'écart (slack) et le prix d'ombre.

pulp a été importé pour vous et model a été défini, de même que les variables C et S pour le maïs et le soya.

Cette activité fait partie du cours

Introduction à l'optimisation en Python

Voir le cours

Instructions de l’exercice

  • Affichez l'écart (slack) de la contrainte Weight.
  • Vérifiez si le prix d'ombre (shadow price) de la contrainte Weight est supérieur à 0.

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

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')
Modifier et exécuter le code