Nieliniowe optymalizowanie produkcji herbatników z ograniczeniami
Świetna robota!
Czy potrafisz rozwiązać ten sam problem, korzystając tym razem z NonlinearConstraint?
Przypominamy: piekarnie muszą zrealizować minimum 140 przedsprzedaży, a każda fabryka może wyprodukować 100 herbatników dziennie.
Funkcje minimize, Bounds i NonlinearConstraint zostały już załadowane, podobnie jak funkcja przychodu R, funkcja kosztu C oraz funkcja zysku profit.
To ćwiczenie jest częścią kursu
Wprowadzenie do optymalizacji w Pythonie
Instrukcje do ćwiczenia
- Zdefiniuj ograniczenia, używając funkcji
lambdaqi ustawiając dolne oraz górne granice. - Przeprowadź optymalizację, przekazując do
minimize()funkcję optymalizacji, ograniczenia brzegowe oraz ograniczenia nieliniowe.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Redefine the problem with NonlinearConstraint
constraints = NonlinearConstraint(lambda q: ____, ____, ___)
# Perform optimization
result = minimize(lambda q: ____,
[50, 50],
bounds=____,
constraints=____)
print(result.message)
print(f'The optimal number of biscuits to bake in bakery A is: {result.x[0]:.2f}')
print(f'The optimal number of biscuits to bake in bakery B is: {result.x[1]:.2f}')
print(f'The bakery company made: ${-result.fun:.2f}')