식단 문제 다시 보기
돼지 사육 농가의 재무를 검토하면서, 가능하다면 사료 비용을 줄일 수 있도록 식단 구성을 다시 살펴보려 합니다. 현재의 비용 최소화 식단은 수의사의 권장 사항인 단백질 최소 17%, 지방 2%, 총 사료 7lb을 기준으로 합니다.
| Food | Cost ($/lb) | Protein (%) | Fat (%) |
|---|---|---|---|
| corn | 0.11 | 10 | 2.5 |
| soybean | 0.28 | 40 | 1 |
여기서 7lb은 반올림된 수치로, 6.6lb까지 줄일 수 있다는 정보를 알고 있어요. 몸무게(총량) 제약과 지방 제약을 각각 한 번에 하나씩 변경했을 때 최소 비용이 어떻게 달라지는지 확인해 달라는 요청을 받았습니다. 원래 문제를 그대로 풀고, 슬랙(slack)과 그림자 가격(shadow price)을 확인해 보세요.
pulp는 이미 임포트되어 있고, model과 옥수수와 대두를 나타내는 변수 C, S도 정의되어 있어요.
이 연습은 강의의 일부입니다
Python으로 배우는 Optimization 입문
연습 안내
- Weight 제약의 슬랙을 출력하세요.
- 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')