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

fminsearch current point/function value

 

Winkow
Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 14.09.2015, 12:17     Titel: fminsearch current point/function value
  Antworten mit Zitat      
hallo leute. ich hab mal eine frage zu fminsearch .
mit fminsearch versuche ich etwas zu optimieren, was ist ja erstmal nebensache. ich benutze dazu optimtool ich lasse mir immer current function value und current point ausgeben und speichere letzteres auch zwischen. wenn ich jetzt die optimierung beende und von vorne anfange mit dem letzten current point als startpunkt bekomme ich im 0. schritt nicht den current function value den ich vorher hatte. kann mir jemand sagen woran das liegt? oder sollte das eigentlich nicht so sein und ich muss irgendwo mal fehlersuche betreiben?
grüße winkow
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen


Winkow
Themenstarter

Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 14.09.2015, 16:19     Titel:
  Antworten mit Zitat      
ok ich glaube das passiert nur wenn der optimierer durch einen cash abbricht.
bei meiner optimierung greife ich auf ein externes programm zu und das crasht manchmal weswegen ich die current points durhc die output function immer speichere weil cih dachte ich kann dann wenigstens da weitermachen wo er letztes mal gecrasht ist. ich hab als output fun das folgende
Code:
function stop = outfun(x, optimValues, state)
%UNTITLED3 Summary of this function goes here
%   Detailed explanation goes here
stop = false;
switch state
case 'iter'
    assignin('base', 'params',x)
disp(x)
end
end
 

grüße
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Themenstarter

Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 14.09.2015, 16:31     Titel:
  Antworten mit Zitat      
ok ich hatte anscheinend die falsche vorstellung von den parametern
der current point ist nicht der beste point und der current value gehört somit nicht zum current point aus der output fun
ich konnte das ganze so lösen
Code:
function stop = outfun(x, optimValues, state)
persistent fminval
if isempty(fminval)
    fminval=optimValues.fval;
    assignin('base', 'params',x)
end
if fminval>optimValues.fval
    fminval=optimValues.fval;
    assignin('base', 'params',x)
    disp(x)
end
stop = false;
end

grüße
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Themenstarter

Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 14.09.2015, 19:14     Titel:
  Antworten mit Zitat      
kommando zurück. hat doch nicht geklappt.
_________________

richtig Fragen
Private Nachricht senden Benutzer-Profile anzeigen
 
Harald
Forum-Meister

Forum-Meister


Beiträge: 24.501
Anmeldedatum: 26.03.09
Wohnort: Nähe München
Version: ab 2017b
     Beitrag Verfasst am: 14.09.2015, 19:38     Titel:
  Antworten mit Zitat      
Hallo,

kannst du ein Beispiel posten, in dem man das Problem reproduzieren kann? Das kann gerne eine Funktion beinhalten, die zufällig einen Fehler erzeugt.

Insbesondere interessant: Beinhaltet die Funktionsauswertung an sich zufällige Elemente oder ist sie deterministisch?

Die andere Frage wäre natürlich, ob sich nicht das zugrundeliegende Problem beheben lässt. Crasht das externe Programm bei fehlerhaften Eingabeparametern? Crasht es bei mehrfachem Ausführen mit ansonsten unveränderter Ausgangslage an der selben Stelle? Oder crasht es etwa (scheinbar) zufällig?

Grüße,
Harald
Private Nachricht senden Benutzer-Profile anzeigen
 
Winkow
Themenstarter

Moderator

Moderator



Beiträge: 3.842
Anmeldedatum: 04.11.11
Wohnort: Dresden
Version: R2014a 2015a
     Beitrag Verfasst am: 14.09.2015, 20:51     Titel:
  Antworten mit Zitat      
Zitat:
kannst du ein Beispiel posten, in dem man das Problem reproduzieren kann?
bei mir gibt es auch den fehler wenn ich zb einfach str c benutze und die optimierung abbreche.
Zitat:
Beinhaltet die Funktionsauswertung an sich zufällige Elemente oder ist sie deterministisch?
das ist eine gute frage aber ich würde von letzterem ausgehen. ich habe die funktionsaufwertung 10 mal mit den selben eingangsparametern aufgerufen und immer wieder den selben ausgang bekommen.
Zitat:
Crasht das externe Programm bei fehlerhaften Eingabeparametern?
auch aber das ist hier nicht der grund. das externe programm crasht einfach zufällig nach ca 40 min da dann angeblich keine ressourcen mehr frei sind. den fehler kann ich zum jetzigen zeitpunkt nicht beheben. darum wollte ich halt einen workarround bei dem ich trotzdem auf meine itterationen komme selbst wenn das programm immer nach ca 150 itterationen crasht und nur ein neustart des externen programms das ganze behebt. vielleicht stelle ich auch einfach maxiter auf 150 oder so und lasse mir dann den point ausgeben. wobei manchmal halt auch 200 itterationen durchlaufen darum wollte ich den work arround. und außerdem wurmt mich das jetzt das das nicht so geht wie ich mir das vorstelle und ich nicht verstehe warum Smile
grüße
_________________

richtig Fragen
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 - 2025 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.