LoslegenKostenlos loslegen

Nichtlineare, beschränkte Kekse

Das war wirklich großartig gebacken!

Kannst du dasselbe Problem jetzt mit NonlinearConstraint lösen?

Zur Erinnerung: Die Auflage für die Bäckereien ist, mindestens 140 Vorbestellungen zu erfüllen, und jede Fabrik kann täglich 100 Kekse produzieren.

minimize, Bounds und NonlinearConstraint sind bereits für dich geladen, ebenso die Erlösfunktion R, die Kostenfunktion C und die Gewinnfunktion profit.

Diese Übung ist Teil des Kurses

Einführung in Optimierung mit Python

Kurs anzeigen

Anleitung zur Übung

  • Definiere die Nebenbedingungen mit der lambda-Funktion q und setze Unter- und Obergrenzen.
  • Führe die Optimierung durch, indem du die Zielfunktion, die Grenzen und die Nebenbedingungen an miminize() übergibst.

Interaktive Übung

Vervollständige den Beispielcode, um diese Übung erfolgreich abzuschließen.

# 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}')
Code bearbeiten und ausführen