fmin_slsqp#
- scipy.optimize.fmin_slsqp(func, x0, eqcons=(), f_eqcons=None, ieqcons=(), f_ieqcons=None, bounds=(), fprime=None, fprime_eqcons=None, fprime_ieqcons=None, args=(), iter=100, acc=1e-06, iprint=1, disp=None, full_output=0, epsilon=np.float64(1.4901161193847656e-08), callback=None)[Quelle]#
Minimiert eine Funktion unter Verwendung von Sequential Least Squares Programming
Python-Schnittstellenfunktion für die SLSQP-Optimierungsroutine, ursprünglich von Dieter Kraft implementiert.
- Parameter:
- funccallable f(x,*args)
Zielfunktion. Muss einen Skalar zurückgeben.
- x01-D ndarray von float
Anfangsschätzung für die unabhängige Variable(n).
- eqconslist, optional
Eine Liste von Funktionen der Länge n, so dass eqcons[j](x,*args) == 0.0 in einem erfolgreich optimierten Problem.
- f_eqconscallable f(x,*args), optional
Gibt ein 1-D-Array zurück, bei dem jedes Element 0,0 in einem erfolgreich optimierten Problem sein muss. Wenn f_eqcons angegeben ist, wird eqcons ignoriert.
- ieqconslist, optional
Eine Liste von Funktionen der Länge n, so dass ieqcons[j](x,*args) >= 0.0 in einem erfolgreich optimierten Problem.
- f_ieqconscallable f(x,*args), optional
Gibt ein 1-D-ndarray zurück, bei dem jedes Element größer oder gleich 0,0 in einem erfolgreich optimierten Problem sein muss. Wenn f_ieqcons angegeben ist, wird ieqcons ignoriert.
- boundslist, optional
Eine Liste von Tupeln, die die untere und obere Schranke für jede unabhängige Variable angeben [(xl0, xu0),(xl1, xu1),…]. Unendliche Werte werden als große Gleitkommazahlen interpretiert.
- fprimecallable
f(x,*args), optional Eine Funktion, die die partiellen Ableitungen von func auswertet.
- fprime_eqconscallable
f(x,*args), optional Eine Funktion der Form
f(x, *args), die das m x n-Array von Gleichheitsnebenbedingungsnormale zurückgibt. Wenn nicht angegeben, werden die Normale approximiert. Das von fprime_eqcons zurückgegebene Array sollte die Größe (len(eqcons), len(x0)) haben.- fprime_ieqconscallable
f(x,*args), optional Eine Funktion der Form
f(x, *args), die das m x n-Array von Ungleichheitsnebenbedingungsnormale zurückgibt. Wenn nicht angegeben, werden die Normale approximiert. Das von fprime_ieqcons zurückgegebene Array sollte die Größe (len(ieqcons), len(x0)) haben.- argssequence, optional
Zusätzliche Argumente, die an func und fprime übergeben werden.
- iterint, optional
Die maximale Anzahl von Iterationen.
- accfloat, optional
Angeforderte Genauigkeit.
- iprintint, optional
Die Ausführlichkeit von fmin_slsqp
iprint <= 0 : Stiller Betrieb
iprint == 1 : Zusammenfassung nach Abschluss drucken (Standard)
iprint >= 2 : Status jeder Iteration und Zusammenfassung drucken
- dispint, optional
Überschreibt die iprint-Schnittstelle (bevorzugt).
- full_outputbool, optional
Wenn False, wird nur der Minimierer von func zurückgegeben (Standard). Andernfalls werden der endgültige Zielfunktionswert und Zusammenfassungsinformationen ausgegeben.
- epsilonfloat, optional
Die Schrittweite für endliche Differenzen-Ableitungsschätzungen.
- callbackcallable, optional
Wird nach jeder Iteration aufgerufen, als
callback(x), wobeixder aktuelle Parametervektor ist.
- Rückgabe:
- outndarray von float
Der endgültige Minimierer von func.
- fxndarray von float, wenn full_output true ist
Der endgültige Wert der Zielfunktion.
- itsint, wenn full_output true ist
Die Anzahl der Iterationen.
- imodeint, wenn full_output true ist
Der Austrittsmodus aus dem Optimierer (siehe unten).
- smodestring, wenn full_output true ist
Nachricht, die den Austrittsmodus aus dem Optimierer beschreibt.
Siehe auch
minimierenSchnittstelle zu Minimierungsalgorithmen für multivariate Funktionen. Siehe insbesondere die Methode 'SLSQP'.
Hinweise
Austrittsmodi sind wie folgt definiert
-1: Gradientenauswertung erforderlich (g & a)0: Optimierung erfolgreich abgeschlossen1: Funktionsauswertung erforderlich (f & c)2: Mehr Gleichheitsnebenbedingungen als unabhängige Variablen3: Mehr als 3*n Iterationen im LSQ-Unterproblem4: Ungleichheitsnebenbedingungen inkompatibel5: Singuläre Matrix E im LSQ-Unterproblem6: Singuläre Matrix C im LSQ-Unterproblem7: Rangdefizitäres Gleichheitsnebenbedingungs-Unterproblem HFTI8: Positive gerichtete Ableitung für Liniensuche9: Iterationslimit erreicht
Beispiele
Beispiele finden Sie im Tutorial.