|
|
| MenschMeier |

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 22.09.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 31.10.2011, 12:08
Titel: Abbruchkriterium GA
|
 |
Hallo zusammen,
ich versuche gerade herauszufinden, was genau das Abbruchkriterium 1 bedeutet. Ich hab zwar eine Idee, brauche aber Sicherheit.
Englische Beschreibung von Matlab:
Average change in value of the fitness function over options.StallGenLimit generations less than options.TolFun and constraint violation less than options.TolCon.
Bedeutung?!
Die Änderung der Fitnesswert-Verbesserung verändert sich über eine bestimmte Anzahl (StallGenLimit) nicht (bzw. ist kleiner als die Variable TolFun) -> Abbruch!
Der Zweite Satzteil ist für mich uninteressant, da ich keine Nebenbedingungen habe.
Ist das so korrekt?
Danke vielmals
|
|
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 31.10.2011, 12:27
Titel: Re: Abbruchkriterium GA
|
 |
Hallo MenschMeier,
Die mittlere Änderung der Fitnesswert-Verbesserung verändert sich über eine bestimmte Anzahl (StallGenLimit) weniger als TolFun -> Abbruch
Gruß, Jan
|
|
|
|
| MenschMeier |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 22.09.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 31.10.2011, 12:35
Titel:
|
 |
Hallo Jan,
dann war meine Übersetzung ja garnicht so falsch
Danke dir
|
|
|
|
| MenschMeier |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 22.09.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 31.10.2011, 20:24
Titel:
|
 |
Jetzt bin ich etwas verwirrt, ich habe einen Funktion, die nach 62 Generationen abbricht. Im Anhang ist der Plot, den ich habe ausgeben lassen. Da steht ja sinngemäß, dass das StallGenLimit nicht erreicht wurde (50%) und trotzdem bekomme ich den Exitflag 1 (Optimization terminated: average change in the fitness value less than options.TolFun.)
Zweite Frage: Ist es möglich, aus einer geploteten Funktion die Y und X Werte zu extrahieren, also z.B. in eine Variable zu speichern?
| Beschreibung: |
|
 Download |
| Dateiname: |
Plot.png |
| Dateigröße: |
120.97 KB |
| Heruntergeladen: |
415 mal |
| Beschreibung: |
|
 Download |
| Dateiname: |
diagnose_display.png |
| Dateigröße: |
54.33 KB |
| Heruntergeladen: |
405 mal |
|
|
|
|
| MenschMeier |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 22.09.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.11.2011, 10:37
Titel:
|
 |
Ich habe nochmal aus einem zweiten Durchlauf die Plotwerte als Variable gespeichert. Hier sieht man nochmal ziemlich deutlich, dass die letzten 10 (StallGenLimit habe ich auf 10 gesetzt) Ergebnisse größere Verbesserungen als 1e-6 aufweisen. Trotzdem das Abbruchskriterium 1 ... Wieso? Außerdem hat es keine Veränderung hervorgebracht, als ich das StallGenLimit von 50 auf 10 reduziert habe, immer noch etwa 50-55 Generationen bis zum Abbruch.
Vielleicht kann sich ja einer von euch einen Reim darauf machen.
lg und danke
| Beschreibung: |
|
 Download |
| Dateiname: |
Plotdaten.zip |
| Dateigröße: |
1.01 KB |
| Heruntergeladen: |
278 mal |
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 01.11.2011, 13:49
Titel:
|
 |
Hallo MenschMeier,
Vielleicht habe ich es nur überlesen, aber ich finde keinen Hinweis darauf, mit welcher Funktion Du überhaupt arbeitest. Es steht zwar "GA" im Titel und auch einige andere Ausdrücke weisen auf genetische Optimierung hin. Aber es gibt einige Dutzend Implementierungen.
Ich rate aber, dass Du einfach mit dem Debugger überprüfen kannst, wieso die Funktion sich entscheidet, dass das Abbruchkriterium erreicht wird. Stöbere einfach etwas im Source-Code und setze an strategischen Stellen ein paar Breakpoints.
Gruß, Jan
|
|
|
|
| MenschMeier |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 22.09.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 01.11.2011, 14:45
Titel:
|
 |
Ich nutze den Matlab GA einfach über ga( ...)
Wie kann ich den in dessen Source Code hineinschauen? Gibt es da eine M-File in Matlab Verzeichnis zu?! Ich werde mich mal auf die Suche machen.
Mich wurndert es, dass ich so einen "Aufwand" betreiben muss, ist der Exitflag nicht genau dafür da?
lg
|
|
|
|
| Jan S |

Moderator
|
 |
Beiträge: 11.057
|
 |
|
 |
Anmeldedatum: 08.07.10
|
 |
|
 |
Wohnort: Heidelberg
|
 |
|
 |
Version: 2009a, 2016b
|
 |
|
|
 |
|
Verfasst am: 02.11.2011, 10:58
Titel:
|
 |
Hallo MenschMeier,
Versuche doch einfach mal "edit ga".
Ich vermute auch, dass der Exit-Flag genau dafür gedacht ist. Aber offenbar gibt es ein Problem. Ich kann es nicht versuchen, weil ich weder Deine Daten noch die GA-Toolbox habe. Du solltest aber den Grund für den erhaltenen Wert des Exit-Flag herausfinden können. Es könnte ja auch ein Bug in der Software sein. Das Debuggen zählt leider zu dem zu erwartenden Aufwand, wenn man programmiert.
Gruß, Jan
|
|
|
|
| MenschMeier |
Themenstarter

Forum-Anfänger
|
 |
Beiträge: 43
|
 |
|
 |
Anmeldedatum: 22.09.11
|
 |
|
 |
Wohnort: ---
|
 |
|
 |
Version: ---
|
 |
|
|
 |
|
Verfasst am: 02.11.2011, 11:51
Titel:
|
 |
Hey Jan,
ich habe die M-File für den Funktionsaufruf gefunden und suche mich da jetzt durch. Danke für den Tipp mit "edit GA" das kannte ich so nicht
lg
|
|
|
|
|
|
|
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 - 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.
|
|