Znajdowanie maksimum
Optymalizacja bez ograniczeń polega na znajdowaniu maksimum lub minimum funkcji, w której zmienne wejściowe nie podlegają żadnym ograniczeniom.
Wyobraź sobie, że wprowadzasz nowy produkt w swojej firmie cukierniczej i chcesz zmaksymalizować przychód. Przychód można opisać następującą funkcją celu, gdzie R to przychód uzyskany przy cenie x.
R = -(x**2) + 3*x - 5
Rozwiąż ten problem maksymalizacji za pomocą funkcji minimize_scalar() z biblioteki SciPy, która została już wczytana.
To ćwiczenie jest częścią kursu
Wprowadzenie do optymalizacji w Pythonie
Instrukcje do ćwiczenia
- Zdefiniuj nową funkcję celu jako negację oryginalnej funkcji celu.
- Zmaksymalizuj zanegowaną funkcję.
- Wydrukuj wartość optymalną z dokładnością do dwóch miejsc po przecinku.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Define the new objective function
def negated_function(x):
____
# Maximize the negated function
result = ____
# Print the result
print(f"The maximum is {____} in two decimals")