Zacznij terazZacznij za darmo

Obsługa wielu elementów

Farmer chce przenieść poprzednią funkcję optymalizacyjną na bardziej złożone posiłki dla innych zwierząt na farmie.

Poprzedni kod został już dostarczony. Czy potrafisz go zmodyfikować, aby lepiej obsługiwał wiele zmiennych?

Biblioteka pulp została już zaimportowana.

To ćwiczenie jest częścią kursu

Wprowadzenie do optymalizacji w Pythonie

Zobacz kurs

Instrukcje do ćwiczenia

  • Zmień definicję zmiennych, używając LpVariable.dicts(), i zapisz je jako variables z nazwą "Food".
  • Zmień funkcję celu, używając lpSum().

Interaktywne ćwiczenie praktyczne

Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.

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}") 
Edytuj i uruchom kod