Beschreibung
Die Funktion besitzt folgende Argumente:
f | Funktion oder String |
z | Vektor, d.h. eindimensionales Array |
Ausgehend von der Startlösung
z wird die Zielfunktion
f unter Verwendung des Gradientenverfahrens minimiert. Dabei wird (ohne Prüfung) vorausgesetzt, dass die Zielfunktion differenzierbar ist. Alle notwendigen Gradienten werden numerisch bestimmt.
Falls das Verfahren gegen ein lokales Minimum konvergiert, so wird ein Array bestehend aus dem lokalen Minimum sowie dem zugehörigen Zielfunktionswert ausgegeben. Wird anderenfalls eine maximale Anzahl an Iterationen erreicht, ohne dass zuvor ein lokales Minimum gefunden wurde, so wird die bislang beste Lösung samt Zielfunktionswert ausgegeben. Ist das Problem umbeschränkt oder numerisch schlecht gestellt, so wird ein entsprechender String ausgegeben.
Die Zielfunktion
f kann dabei als Funktion mit einem Array als Argument oder aber als String mit
x1 bis
xn als Variablen übergeben werden. Falls
f als String gewählt wird, so stehen die Funktionen acos, asin, atan, cos, exp, log, sin, sqrt und tan sowie die Konstanten E und PI zur Verfügung. Die Startlösung
z ist stets als Array zu übergeben.