also ich hab eine Aufgabe in der ich eine Funktion, nennen wir sie mal x3 minimieren muß. x3p (Punkt) lässt sich aus x1²+x2²+u² berechnen.
Wobei u meine Steuerung ist.
x1p (x eins punkt) = (1-x2²)x1-x2+u
x2p (x zwei punkt) = x1
Dann hab ich natürlich noch Beschränkungen:
x1(t)>=-0.4
-0.3<=u<=1
Startvektor ist x(0)=[0,1,0]
Ich habe das schon mit ode5 und einigen Schleifen selber gelöst, soll es aber mit Fmincon schaffen. Könnt ihr mir sagen wie ich das System da rein bekomm?
Dann versuch mal den ode5-Aufruf in die Funktion myfun zu packen, statt meiner (zugegeben nicht grad schönen) Gleichungen.
Ich hab quasi x1p als Gradient genommen - klarer Fall von nicht zu ende gedacht...
_________________
Warning: Large-scale (trust region) method does not currently solve this type of problem,
switching to medium-scale (line search).
> In fmincon at 260
In fmincontest at 6
Optimization terminated: Magnitude of directional derivative in search
direction less than 2*options.TolFun and maximum constraint violation
is less than options.TolCon.
No active inequalities
Nur das hilf mir nicht weiter ... weißt du was der will?
Aber so Optimiert er nur einmal u!
Aufgabe ist aber das das u dynamisch ist! Also zu jedem Zeitpunkt zwischen 0 und 5 ein optimales u gesucht wird! Kein statisches!
Du kannst Beiträge in dieses Forum schreiben. Du kannst auf Beiträge in diesem Forum antworten. Du kannst deine Beiträge in diesem Forum nicht bearbeiten. Du kannst deine Beiträge in diesem Forum nicht löschen. Du kannst an Umfragen in diesem Forum nicht mitmachen. Du kannst Dateien in diesem Forum posten Du kannst Dateien in diesem Forum herunterladen
MATLAB, Simulink, Stateflow, Handle Graphics, Real-Time Workshop, SimBiology, SimHydraulics, SimEvents, and xPC TargetBox are registered trademarks and The MathWorks, the L-shaped membrane logo, and Embedded MATLAB are trademarks of The MathWorks, Inc.