ПочатиПочніть безкоштовно

Повертаємось до задачі про дієту

Ви переглядаєте фінансові показники фермера, який попросив вас знову оцінити дієту його свиней і, за можливості, зменшити витрати. Поточна дієта з мінімізацією вартості базується на рекомендаціях ветеринара: щонайменше 17% білка, 2% жиру, 7 lb корму згідно зі специфікаціями

Корм Вартість ($/lb) Білок (%) Жир (%)
кукурудза 0.11 10 2.5
соєвий шрот 0.28 40 1

Вам відомо, що 7 lb — округлене значення, і його можна зменшити до 6.6 lb. Вас просять перевірити, як зміна обмеження на вагу або жир по одному впливає на мінімальну вартість. Ви розв'яжете початкову задачу як є та проаналізуєте запас (slack) і тіньову ціну.

pulp уже імпортовано, а model визначено, так само як змінні C і S для кукурудзи та соєвого шроту.

Ця вправа є частиною курсу

Вступ до оптимізації в Python

Переглянути курс

Інструкції до вправи

  • Виведіть запас (slack) для обмеження Weight.
  • Перевірте, чи тіньова ціна (shadow price) обмеження Weight більша за 0.

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

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')
Редагувати та запускати код