Gestire più elementi
L'allevatore vuole riprendere la funzione di ottimizzazione precedente per gestire pasti più complessi per altri animali della fattoria.
Il codice precedente è stato fornito. Riesci ad adattarlo per gestire meglio più variabili?
pulp è già stato importato per te.
Questo esercizio fa parte del corso
Introduzione all'ottimizzazione in Python
Istruzioni dell'esercizio
- Modifica la definizione delle variabili per usare
LpVariable.dicts(), salvandole comevariablescon il nome"Food". - Modifica la funzione obiettivo per usare
lpSum().
Esercizio pratico interattivo
Prova a risolvere questo esercizio completando il codice di esempio.
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}")