Software: SimX - Nadelantrieb - Wirkprinzip - Optimierungsverfahren: Unterschied zwischen den Versionen

Aus OptiYummy
Zur Navigation springenZur Suche springen
KKeine Bearbeitungszusammenfassung
KKeine Bearbeitungszusammenfassung
Zeile 2: Zeile 2:
<div align="center">'''Experiment: Optimierungsverfahren''' </div>
<div align="center">'''Experiment: Optimierungsverfahren''' </div>


[[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_standard.gif|right]]
[[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_standard.gif|right|.]]
Bisher haben wir unser Entwurfsproblem vor allem inhaltlich in eine Optimierungsaufgabe transformiert. Es fehlt nun noch die Konfiguration der "Numerik", d.h.: "Mit welchem Optimierungsverfahren soll die optimale Lösung gefunden werden?"  
Bisher haben wir unser Entwurfsproblem vor allem inhaltlich in eine Optimierungsaufgabe transformiert. Es fehlt nun noch die Konfiguration der "Numerik", d.h.: "Mit welchem Optimierungsverfahren soll die optimale Lösung gefunden werden?"  


Zeile 10: Zeile 10:
** Evolutionsstrategie bei K>1 oder P>9,
** Evolutionsstrategie bei K>1 oder P>9,
** Hook-Jeeves-Verfahren für K<2 und P<10
** Hook-Jeeves-Verfahren für K<2 und P<10
In unserem Beispiel würde also das Hook-Jeeves-Verfahren genutzt. Dieses tastet sich auf der Zielfunktion von der Ausgangslösung schrittweise in Richtung kleinerer Werte "bergab" und endet dort in der Talsohle - in der Hoffnung, dass dies das globale Optimum ist:[[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_step1000.gif|right]]  
In unserem Beispiel würde also das Hook-Jeeves-Verfahren genutzt. Dieses tastet sich auf der Zielfunktion von der Ausgangslösung schrittweise in Richtung kleinerer Werte "bergab" und endet dort in der Talsohle - in der Hoffnung, dass dies das globale Optimum ist:[[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_step1000.gif|right|.]]  
* Die Option "Automatischer Stop=True" soll die Suche beenden, wenn das Minimum erreicht wurde. Das dafür implementierte Kriterium funktioniert leider nicht immer zuverlässig!
* Die Option "Automatischer Stop=True" soll die Suche beenden, wenn das Minimum erreicht wurde. Das dafür implementierte Kriterium funktioniert leider nicht immer zuverlässig!
* Um das Optimum zu finden, sollte man "Automatischer Stop=False" setzen. Die Anzahl der Optimierungsschritte kann man auf einen großen Wert (z.B 1000) setzen. Man kann die Optimierung jederzeit manuell stoppen, wenn keine weitere Verbesserung der Lösung zu erwarten ist.
* Um das Optimum zu finden, sollte man "Automatischer Stop=False" setzen. Die Anzahl der Optimierungsschritte kann man auf einen großen Wert (z.B 1000) setzen. Man kann die Optimierung jederzeit manuell stoppen, wenn keine weitere Verbesserung der Lösung zu erwarten ist.
* Um an dieser Stelle zumindest einen Einblick in die Konfiguration eines Optimierungsverfahren zu erhalten, wählen wir das Hook-Jeeves-Verfahren:<div align="center"> [[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_hook_jeeves.gif| ]]</div>
* Um an dieser Stelle zumindest einen Einblick in die Konfiguration eines Optimierungsverfahren zu erhalten, wählen wir das Hook-Jeeves-Verfahren:<div align="center"> [[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_hook_jeeves.gif|.]]</div>
* [[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_startschrittweite.gif|right]]Die individuelle Abtast-Schrittweite für jeden Entwurfsparameter ist in der Standardeinstellung u.a. von deren vorgegebenem Variationsbereich [Untergrenze ,Obergrenze] abhängig. Da dies numerisch nicht immer günstig sein muss, sollte man sich den Zugriff auf diese Abtast-Schrittweite ermöglichen, indem man ''Startschrittweite=manuell'' setzt.
* [[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_startschrittweite.gif|right|.]]Die individuelle Abtast-Schrittweite für jeden Entwurfsparameter ist in der Standardeinstellung u.a. von deren vorgegebenem Variationsbereich [Untergrenze ,Obergrenze] abhängig. Da dies numerisch nicht immer günstig sein muss, sollte man sich den Zugriff auf diese Abtast-Schrittweite ermöglichen, indem man ''Startschrittweite=manuell'' setzt.
* Die Startschrittweite erscheint dann als zusätzliche Eigenschaft nach Wahl des jeweiligen Entwurfsparameters im OptiY-Explorer (Wert =1/100 des Startwert der Entwurfsgröße).
* Die Startschrittweite erscheint dann als zusätzliche Eigenschaft nach Wahl des jeweiligen Entwurfsparameters im OptiY-Explorer (Wert =1/100 des Startwert der Entwurfsgröße).
* Dieser Vorgabewert ist meist nutzbar. Ist der Betrag eines Grenzwertes im Vergleich zum Startwert für die Entwurfsgröße sehr groß, so sollte man die Startschrittweite jedoch auf mindestens 1/1000 dieses Grenzwertbetrages setzen.
* Dieser Vorgabewert ist meist nutzbar. Ist der Betrag eines Grenzwertes im Vergleich zum Startwert für die Entwurfsgröße sehr groß, so sollte man die Startschrittweite jedoch auf mindestens 1/1000 dieses Grenzwertbetrages setzen.
* Dieses Problem erkennt man bei der Rückholfeder, welche mit einem relativ kleinen Startwert beginnt:<div align="center">[[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_startschrittweite2.gif| ]]</div>
* Dieses Problem erkennt man bei der Rückholfeder, welche mit einem relativ kleinen Startwert beginnt:<div align="center">[[Bild:Software_SimX_-_Nadelantrieb_-_Wirkprinzip_-_optimierungsverfahren_startschrittweite2.gif|.]]</div>
* Hier sollte man die Startschrittweite auf z.B. 0.1&nbsp;N/mm erhöhen. Das entspricht 1/1000 von 100&nbsp;N/mm und wird trotz numerischer Ungenauigkeiten der Modellberechnung noch brauchbare Ergebnisse bei der Abtastung der Zielfunktion bei großen Werten der Federsteife garantieren.
* Hier sollte man die Startschrittweite auf z.B. 0.1&nbsp;N/mm erhöhen. Das entspricht 1/1000 von 100&nbsp;N/mm und wird trotz numerischer Ungenauigkeiten der Modellberechnung noch brauchbare Ergebnisse bei der Abtastung der Zielfunktion bei großen Werten der Federsteife garantieren.
<div align="center"> [[Software:_SimX_-_Nadelantrieb_-_Wirkprinzip_-_Kriterien|&larr;]] [[Software:_SimX_-_Nadelantrieb_-_Wirkprinzip_-_Visualisierung|&rarr;]] </div>
<div align="center"> [[Software:_SimX_-_Nadelantrieb_-_Wirkprinzip_-_Kriterien|&larr;]] [[Software:_SimX_-_Nadelantrieb_-_Wirkprinzip_-_Visualisierung|&rarr;]] </div>

Version vom 10. April 2015, 13:23 Uhr

Experiment: Optimierungsverfahren
.

Bisher haben wir unser Entwurfsproblem vor allem inhaltlich in eine Optimierungsaufgabe transformiert. Es fehlt nun noch die Konfiguration der "Numerik", d.h.: "Mit welchem Optimierungsverfahren soll die optimale Lösung gefunden werden?"


Leider ist das "optimale" Optimierungsverfahren und seine "optimale" Konfiguration abhängig von der Optimierungsaufgabe! Ausgehend von einer Standard-Konfiguration ist es meist günstig, einen gewissen Aufwand in den Abgleich des numerischen Verfahrens zu investieren. Das werden wir nun am Beispiel des Nadelantriebs üben:

  • OptiY bietet für den unerfahrenen Nutzer ein Standard-Verfahren an. Welches Verfahren sich dahinter verbirgt, ist abhängig von der Anzahl der Entwurfsparameter P und Gütekriterien K:
    • Evolutionsstrategie bei K>1 oder P>9,
    • Hook-Jeeves-Verfahren für K<2 und P<10

In unserem Beispiel würde also das Hook-Jeeves-Verfahren genutzt. Dieses tastet sich auf der Zielfunktion von der Ausgangslösung schrittweise in Richtung kleinerer Werte "bergab" und endet dort in der Talsohle - in der Hoffnung, dass dies das globale Optimum ist:

.
  • Die Option "Automatischer Stop=True" soll die Suche beenden, wenn das Minimum erreicht wurde. Das dafür implementierte Kriterium funktioniert leider nicht immer zuverlässig!
  • Um das Optimum zu finden, sollte man "Automatischer Stop=False" setzen. Die Anzahl der Optimierungsschritte kann man auf einen großen Wert (z.B 1000) setzen. Man kann die Optimierung jederzeit manuell stoppen, wenn keine weitere Verbesserung der Lösung zu erwarten ist.
  • Um an dieser Stelle zumindest einen Einblick in die Konfiguration eines Optimierungsverfahren zu erhalten, wählen wir das Hook-Jeeves-Verfahren:
    .
  • .
    Die individuelle Abtast-Schrittweite für jeden Entwurfsparameter ist in der Standardeinstellung u.a. von deren vorgegebenem Variationsbereich [Untergrenze ,Obergrenze] abhängig. Da dies numerisch nicht immer günstig sein muss, sollte man sich den Zugriff auf diese Abtast-Schrittweite ermöglichen, indem man Startschrittweite=manuell setzt.
  • Die Startschrittweite erscheint dann als zusätzliche Eigenschaft nach Wahl des jeweiligen Entwurfsparameters im OptiY-Explorer (Wert =1/100 des Startwert der Entwurfsgröße).
  • Dieser Vorgabewert ist meist nutzbar. Ist der Betrag eines Grenzwertes im Vergleich zum Startwert für die Entwurfsgröße sehr groß, so sollte man die Startschrittweite jedoch auf mindestens 1/1000 dieses Grenzwertbetrages setzen.
  • Dieses Problem erkennt man bei der Rückholfeder, welche mit einem relativ kleinen Startwert beginnt:
    .
  • Hier sollte man die Startschrittweite auf z.B. 0.1 N/mm erhöhen. Das entspricht 1/1000 von 100 N/mm und wird trotz numerischer Ungenauigkeiten der Modellberechnung noch brauchbare Ergebnisse bei der Abtastung der Zielfunktion bei großen Werten der Federsteife garantieren.