|
|
iteratives Lösen - Zielfunktion |
|
Coja |
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 15.10.2009, 19:10
Titel: iteratives Lösen - Zielfunktion
|
|
Hallo zusammen,
keine Ahnung ob ich in dieser Rubrik richtig bin, da ich leider noch nicht den Lösungsweg weis.
Ich würde gerne eine Gleichung iterativ lösen.
Ich hoffe mal ich konnte das Problem einigermaßen gut darstellen.
Wie löse ich dies nun in Matlab?
Hilft mir die Funktion
da weiter und wenn ja, wie läuft das mit den Function-Handle?
Vielen Dank im vorraus.
vg
Coja
|
|
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.452
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 15.10.2009, 21:41
Titel:
|
|
Hallo,
ich steige bei dem ganzen nicht so ganz durch.
Was haben denn xs, xm etc. mit x zu tun?
Wie ergibt sich x(n+1) aus x(n) bzw. woraus ergeben sie sich?
Grundsätzlich sind zum Minimieren Funktionen aus der Optimization Toolbox geeignet. Welche am besten ist, hängt von der genauen Problemstellung (Art der Zielfunktion und ggf. Nebenbedingungen) ab.
Grüße,
Harald
|
|
|
Coja |
Themenstarter
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.10.2009, 18:08
Titel:
|
|
Hallo,
ich hab es wirklich sehr unübersichtlich und konfus geschrieben, also vielleicht nochmal:
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.452
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 16.10.2009, 18:35
Titel:
|
|
Hallo,
das sieht mir so aus, als ob du eine Folge (x, dx) hast und nah aufeinander folgende Werte haben möchtest.
Das wichtigste bei Optimierung ist, WAS denn eigtl optimiert werden soll. Ist es das n? Oder die Startwerte (x_start, dx_start)?
Auf den ersten Blick würde ich sagen: die ersten 1000 Elemente der Folge ausrechnen, dann min(diff(...)).
Aber wie gesagt... sicher, was du willst, bin ich noch immer nicht.
Grüße,
Harald
|
|
|
Coja |
Themenstarter
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 16.10.2009, 23:24
Titel:
|
|
Hallo Harald.
Naja ich will das dx und das x_w ausrechnen wobei dx_start bzw x_w_start jeweils den ersten Wert darstellen. von diesm ausgehend sollen dx und x_w solange optimiert werden, bis der Wert der quadratischen Abweichung von einem Interationsschritt zum nächsten gleich null ist.
vg
Coja
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.452
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 17.10.2009, 18:10
Titel:
|
|
Hallo,
dann würde ich das so machen:
Grüße,
Harald
|
|
|
Coja |
Themenstarter
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 18.10.2009, 20:11
Titel:
|
|
Danke für die Kühe bisher.
Das Problem ist jedoch, dass die Weilschleife nur abbricht wenn beide (!) Toleranzen unterschritten werden. Außerdem wird ja nur in einer Richtung (also absteigend) gesucht. Die Schrittweite wird ja nicht verfeinert in der Formel sondern bleibt fix. Die Verwendung einer Optimerungsfunktion (aus Optimization TB) wäre mir daher lieber.
Grüße
Coja
|
|
|
Harald |
Forum-Meister
|
|
Beiträge: 24.452
|
|
|
|
Anmeldedatum: 26.03.09
|
|
|
|
Wohnort: Nähe München
|
|
|
|
Version: ab 2017b
|
|
|
|
|
|
Verfasst am: 18.10.2009, 21:11
Titel:
|
|
Wenn der Abbruch bei beiden Kriterien dein Problem ist, dann verwende eben || statt &&. Ich gehe aber schon davon aus, dass dx und x_w gleichzeitig optimiert werden sollen?
Es ist ja kein Problem, eine solche Funktion zu verwenden. Aber ich muss zugeben, ich habe wohl immer noch nicht verstanden, was du genau willst. Insbesondere habe ich den Eindruck, dass die x_w bzw. dx sich immer aus dem vorherigen Wert errechnen, was für eine Optimierung nicht der Fall sein sollte.
Wenn du eine Optimierungsfunktion verwenden willst, muss das Problem in dieser oder einer ähnlichen Form vorliegen:
Finde x, das f(x) ggf. unter Nebenbedingungen minimiert
Grüße,
Harald
|
|
|
Coja |
Themenstarter
Forum-Century
|
|
Beiträge: 166
|
|
|
|
Anmeldedatum: 20.06.09
|
|
|
|
Wohnort: ---
|
|
|
|
Version: ---
|
|
|
|
|
|
Verfasst am: 20.10.2009, 18:37
Titel:
|
|
Ja, ok hab ich verstanden. Ich hab die While-Schleife ein wenig verändert ... jetzt klappt es. Danke nochmal
|
|
|
|
|
Einstellungen und Berechtigungen
|
|
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
|
|
Impressum
| Nutzungsbedingungen
| Datenschutz
| FAQ
| RSS
Hosted by:
Copyright © 2007 - 2024
goMatlab.de | Dies ist keine offizielle Website der Firma The Mathworks
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.
|
|