Umgang mit mehreren Elementen
Der Landwirt möchte die vorherige Optimierungsfunktion wiederverwenden, um kompliziertere Mahlzeiten für andere Tiere auf dem Hof zu planen.
Der vorherige Code wurde bereitgestellt. Kannst du den Code so anpassen, dass er besser mit mehreren Variablen umgehen kann?
pulp wurde bereits für dich importiert.
Diese Übung ist Teil des Kurses
Einführung in Optimierung mit Python
Anleitung zur Übung
- Passe die Variablendefinition an, um
LpVariable.dicts()zu verwenden, und speichere sie alsvariablesmit dem Namen"Food". - Passe die Zielfunktion an, um
lpSum()zu verwenden.
Interaktive Übung
Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.
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}")