Software: FEMM - Stromfluss - OptiY-Workflow
Verfahren der numerischen Optimierung sind in der Lage, Extremwerte auf einer Zielfunktion zu finden. Kann man eine Zielfunktion für ein zu lösendes Problem zu definieren, so ist es möglich die Lösung dieser Problemstellung an ein Optimierungstool delegieren:
- Unser Problem ist sehr simpel - wir suchen die Schnittlänge Ls für die Erreichung eines vorgegebenen Widerstandswertes RN.
- Eine Zielfunktion sollte man als Distanz zur idealen Lösung definieren. D.h., der Zielfunktionswert Abweichung sollte im Beispiel Null werden, wenn 'R' den Sollwert 'RN' erreicht.
- Die "Fehlerquadrat-Summe" ist günstig (Positives Vorzeichen, Wichtung des Abstands und stetige Ableitung).
Wir nutzen als Optimierungstool OptiY, welches als Demoversion zum Download bereitgestellt wird. Im Rahmen der Übung wird die Konfiguration des erforderlichen Optimierungsexperiments für den Einsteiger beschrieben. Vorkenntnisse zum Programm OptiY sind also nicht erforderlich.
- Nach der wahrscheinlich problemlosen Installation unter Windows XP oder Vista kann das Programm OptiY gestartet werden:
- Mit dem Workflow-Editor (Menü Einfügen) von OptiY fügen wir unser LUA-Script des FEMM-Modells als Externes Script-Modell an zentraler Stelle in den Workflow des Experiments ein. Ein Doppelklick auf das platzierte Symbol öffnet den erforderlichen Konfigurationsdialog:
- Über das Script muss das FEMM-Programm gestartet werden, welches dann seinerseits das LUA-Script ausführt:
- Die Ausführung des LUA-Scripts im FEMM kann man über das vom FEMM-Programm bereitgestellte ActiveX-Interface veranlassen.
- Zur Aktivierung der Schnittstelle und Aufruf des FEMM-Programms nutzen wir VBScript als Scriptsprache:
Set femm = CreateObject("femm.ActiveFEMM") femm.call2femm ("dofile (""E:\\femm\\LaserTrimm_xx.LUA"")")
- Für das im Script-Editor von OptiY eingetragene Script generiert OptiY bei der Experiment-Durchführung eine Script-Datei und startet sie.
- Es ist möglich, im OptiY-Workflow die Verbindung mit allen Eingabe-Parametern des Modells herzustellen. Innerhalb dieser Übung beschränken wir uns aus Aufwandsgründen auf die zwei wesentlichen Parameter Schnittlänge Ls und Sollwert RN:
- Für jeden dieser Parameter ist im Workflow ein Nennwert einzufügen:
- Ein Doppelklick auf das generierte Symbol öffnet den Konfigurationsdialog für den Nennwert. Hier sollte man einen sinnvolle Namen und Kommentare vergeben. Der Name muss nicht, sollte aber mit dem Parameter-Namen im Modell übereinstimmen:
- Mit den noch fehlenden Verbindungen zwischen dem FEMM-Modell und den beiden im Workflow definierten Nennwerten beschäftigen wir uns später!
- Im OptiY-Workflow muss das Gütekriterium Abweichung als berechneter Wert der Zielfunktion zur Verfügung stehen (Einfügen: Gütekriterien):
- Den Wert dieses quadratischen Restfehlers könnten wir auf dem Niveau des Workflows noch nicht berechnen. Dort steht bisher nur der Wert des Sollwerts RN zur Verfügung.
- Im OptiY-Workflow müssen alle in den Modellen berechneten Ausgangsgrößen zur Verfügung gestellt werden, die man für die Berechnung der Gütekriterien benötigt (Einfügen: Ausgangsgrößen):
- Nun kann man die Abweichung aus RN und R_ist berechnen. Nach erneutem Doppelklick auf das Kriterium Abweichung aktiviert man mit Bearbeiten eine Art "Taschenrechner". Mit diesem klickt man die erforderliche Formel zusammen (Doppelklick zum Einfügen einer Workflow-Größe):
- Die Abhängigkeiten zwischen dem Gütekriterium und den zugrunde gelegten Größen widerspiegelt sich danach im Workflow:
- Achtung: Den aktuellen Zustand des OptiY-Versuchsstand speichern die Teilnehmer der Lehrveranstaltung als Datei LaserTrimm_xx.OPY mit xx=Teilnehmer-Nummer.
Nun fehlt nur noch die Ankopplung der Nennwerte und der Ausgangsgröße an das FEMM-Modell. Diesem Problem widmen wir uns auf der nächsten Seite. Dazu verlassen wir das OptiY und arbeiten wieder mit dem FEMM-Programm samt zugehörigem Script-Editor.