CommencezCommencez gratuitement

Gérer plusieurs éléments

L'agriculteur souhaite reprendre la fonction d'optimisation précédente pour traiter des repas plus complexes pour d'autres animaux de la ferme.

Le code précédent vous est fourni. Pouvez-vous l'adapter pour mieux gérer plusieurs variables ?

pulp a été importé pour vous.

Cette activité fait partie du cours

Introduction à l'optimisation en Python

Voir le cours

Instructions de l’exercice

  • Modifiez la définition des variables pour utiliser LpVariable.dicts(), et enregistrez-les dans variables avec le nom "Food".
  • Adaptez la fonction objectif pour utiliser lpSum().

Exercice interactif pratique

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

model = LpProblem("MinCost", LpMinimize) 

# Adjust the variable definition
C = LpVariable("C", lowBound=0)
S = LpVariable("S", lowBound=0) 

# Adjust the objective function
cost = {'C': 0.11, 'S': 0.28}
model += 0.28*S + 0.11*C

model += 40*variables['S'] + 10*variables['C'] >= 17*(variables['C']+variables['S']), "M_protein"
model += variables['S'] + 2.5*variables['C'] >= 2*(variables['C']+variables['S']), "M_fat"
model += variables['C'] + variables['S'] >= 7, "M_weight"

model.solve()
print(f"Cost = {value(model.objective):.2f}")
print(f"Pounds of soybean = {variables['S'].varValue:.2f}, pounds of corn = {variables['C'].varValue:.2f}") 
Modifier et exécuter le code