Zacznij terazZacznij za darmo

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

Zobacz kurs

Instrukcje do ćwiczenia

  • Ustaw wartości dolnego i górnego ograniczenia dla b[0] i b[1] jako bounds.
  • 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)
Edytuj i uruchom kod