WICHTIG: Der Betrieb von goMatlab.de wird privat finanziert fortgesetzt. - Mehr Infos...

Mein MATLAB Forum - goMatlab.de

Mein MATLAB Forum

 
Gast > Registrieren       Autologin?   

Partner:




Forum
      Option
[Erweitert]
  • Diese Seite per Mail weiterempfehlen
     


Gehe zu:  
Neues Thema eröffnen Neue Antwort erstellen

Optimierungsproblem

 

Matlabinator
Forum-Anfänger

Forum-Anfänger


Beiträge: 22
Anmeldedatum: 03.08.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.08.2012, 11:29     Titel: Optimierungsproblem
  Antworten mit Zitat      
Hallo zusammen,

ich habe ein System (bestehend aus Regler, Strecke und Rückführung), welches ich in MATLAB durch eine Übertragungsfunktion dargestellt habe. Davon habe ich die Sprungantwort erstellt und die Reglerabweichung in Abhängigkeit von der Zeit berechnet.

Ich habe also Folgendes:
Einen Vektor mit der Zeit und einen Vektor mit der zugehörigen Regelabweichung.

Die Übertragungsfunktion meines Systems enthält jetzt Parameter, welche ich verändern möchte, um damit die Regelabweichung zu optimieren.

Eigentlich bräuchte ich: Eine Funktion in Abhängigkeit von den Reglerparametern, bei der ich dann mit Hilfe von dem Gradienten und der Hessematrix das Minimum der Funktion bestimme und damit die optimalen Parameter erhalte.

Ich hoffe, dass ich mein Problem verständlich darstellen konnte und würde mich über eine Antwort sehr freuen!

Viele Grüße,
euer Matlabinator
Private Nachricht senden Benutzer-Profile anzeigen


MaFam
Forum-Meister

Forum-Meister


Beiträge: 799
Anmeldedatum: 02.05.12
Wohnort: ---
Version: R2009b
     Beitrag Verfasst am: 03.08.2012, 11:42     Titel:
  Antworten mit Zitat      
Hallo,

ich würde mir über das Optimierungsverfahren selbst keine Gedanken machen. Dazu kannst du einfach fminsearch() verwenden.
Die Herausforderung liegt dann im Aufstellen der Zielfunktion. Diese kannst du als Differenz von Soll und Ist darstellen und dann an fminsearch() übergeben.

Grüße, Marc
Private Nachricht senden Benutzer-Profile anzeigen
 
eey
Forum-Fortgeschrittener

Forum-Fortgeschrittener


Beiträge: 86
Anmeldedatum: 31.03.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 03.08.2012, 16:37     Titel:
  Antworten mit Zitat      
Was hat das System denn für eine Übertragungsfunktion?
Private Nachricht senden Benutzer-Profile anzeigen
 
Matlabinator
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 22
Anmeldedatum: 03.08.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2012, 10:05     Titel:
  Antworten mit Zitat      
Hallo,

also erstmal danke für eure Antworten. Ich hab das Problem mittlerweile gelöst, mit fminunc.
Private Nachricht senden Benutzer-Profile anzeigen
 
MaFam
Forum-Meister

Forum-Meister


Beiträge: 799
Anmeldedatum: 02.05.12
Wohnort: ---
Version: R2009b
     Beitrag Verfasst am: 08.08.2012, 10:10     Titel:
  Antworten mit Zitat      
Prima. Warum ausgerechnet fminunc? Ich lerne ja auch immer gerne noch dazu. Smile
Private Nachricht senden Benutzer-Profile anzeigen
 
Matlabinator
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 22
Anmeldedatum: 03.08.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2012, 10:54     Titel:
  Antworten mit Zitat      
Aus der Matlab-Seite:

Zitat:
fminsearch uses the simplex search method of [1]. This is a direct search method that does not use numerical or analytic gradients as in fminunc. The algorithm is described in detail in fminsearch Algorithm.

fminsearch is generally less efficient than fminunc for problems of order greater than two. However, when the problem is highly discontinuous, fminsearch might be more robust.


Also eigentlich geht denke ich beides gleich gut Smile Ich dachte Gradient geht vielleicht ein wenig besser, aber wahrscheinlich nicht mal bei einem Problem der Ordnung 2.
Private Nachricht senden Benutzer-Profile anzeigen
 
MaFam
Forum-Meister

Forum-Meister


Beiträge: 799
Anmeldedatum: 02.05.12
Wohnort: ---
Version: R2009b
     Beitrag Verfasst am: 08.08.2012, 11:05     Titel:
  Antworten mit Zitat      
Nun, das Verwenden von Gradientenverfahren wirkt sich positiv auf das Konvergenzverhalten aus. Leider funktionieren diese Verfahren nur, wenn die Zielfunktionen hinreichend glatt sind. Im Zweifel würde ich daher zu einem flexibleren Verfahren greifen und die Genauigkeit vorgeben.
Private Nachricht senden Benutzer-Profile anzeigen
 
Matlabinator
Themenstarter

Forum-Anfänger

Forum-Anfänger


Beiträge: 22
Anmeldedatum: 03.08.12
Wohnort: ---
Version: ---
     Beitrag Verfasst am: 08.08.2012, 11:15     Titel:
  Antworten mit Zitat      
OK, dann ändere ich das noch um Smile Danke noch mal.
Private Nachricht senden Benutzer-Profile anzeigen
 
Neues Thema eröffnen Neue Antwort erstellen



Einstellungen und Berechtigungen
Beiträge der letzten Zeit anzeigen:

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 | goMatlab RSS Button 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.