Metoda przeszukiwania wyczerpującego
Zastosowałeś funkcję celu i zwizualizowałeś wynik, ale optymalną wartość można było jedynie odczytać wzrokowo z wykresu. Dokładniejszą metodą wyznaczania tej wartości jest przeszukiwanie wyczerpujące.
Znowu pracujesz dla firmy medialnej zajmującej się wydawaniem i drukowaniem czasopism – tym razem sprawdzisz, jak zmaksymalizować zysk zamiast minimalizować koszty. Pamiętaj, że jednostki zysku i ilości są w tysiącach: q równe 1 oznacza 1000 egzemplarzy, a zysk 5 to 5000 dolarów.
Do dyspozycji masz tę samą tablicę quantity co w poprzednim ćwiczeniu oraz funkcję profit(), którą należy zoptymalizować.
Biblioteka numpy została już zaimportowana jako np.
To ćwiczenie jest częścią kursu
Wprowadzenie do optymalizacji w Pythonie
Instrukcje do ćwiczenia
- Oblicz zysk dla każdej wartości ilości, korzystając z dostarczonej funkcji
profit(), i zapisz wyniki do zmiennejprofits. - Znajdź maksymalny zysk za pomocą odpowiedniej metody tablicowej i zapisz go jako
max_profit. - Wyznacz optymalną ilość maksymalizującą zysk: zapisz indeks maksymalnego zysku jako
max_index, a następnie użyj go do pobrania odpowiedniej wartości z tablicyquantity. - Wyświetl wyniki, uzupełniając f-stringa – pamiętaj, aby pomnożyć zysk i ilość przez
1000.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
# Calculate the profit for every quantity
profits = ____
# Find the maximum profit
max_profit = ____
# Find the optimal quantity
max_profit_ind = ____
optimal_quantity = ____
# Print the results
print(f"You need to print {____} magazines to make the maximum profit of ${____}.")