Praca z ograniczeniami przedziałowymi
W problemach z ograniczeniami przedziałowymi zmienne mogą przyjmować tylko wartości z określonego zakresu.
Prowadzisz kawiarnię i musisz złożyć zamówienie na dwa rodzaje ziaren kawy: b[0] i b[1]. Chcesz zminimalizować koszty. Dostawca wymaga minimalnego zamówienia wynoszącego 2 jednostki dla każdego rodzaju ziaren, a twój budżet pozwala na maksymalnie 100 jednostek na rodzaj.
Funkcje minimize i Bounds z biblioteki scipy.optimize są już załadowane, a funkcja celu jest dostępna.
To ćwiczenie jest częścią kursu
Wprowadzenie do optymalizacji w Pythonie
Instrukcje do ćwiczenia
- Ustaw wartości dolnego i górnego ograniczenia dla
b[0]ib[1]jakobounds. - Użyj
scipy, aby znaleźć minimum.
Interaktywne ćwiczenie praktyczne
Spróbuj tego ćwiczenia, uzupełniając ten przykładowy kod.
def objective_function(b):
return (b[0] - 6)**2 + (b[1] - 8)**2 + 3
# Set the bounds of your problem
bounds = ____
x0 = [10, 5]
# Find the minimum
result = ____(____)
print(result.x)