Diplomarbeit
Unterstützung suboptimaler Regelkreise durch eine zentrale Korrektursteuerung
Zusammenfassung
Evolutionäre Algorithmen werden gerne für Optimierungsaufgaben mit sehr vielen Freiheitsgraden eingesetzt. Eine spezielle Konvergenzeigenschaft, daß nämlich der Rechenaufwand nur mit der Wurzel der Anzahl der Unbekannten steigt, prädestiniert sie dafür. Die evolutionären Algorithmen haben aber auch noch eine weitere interessante Eigenschaft: Von der Zielfunktion wird nur verlangt, daß sie monoton ist - nichts weiter. Speziell wird, im Gegensatz zu gradientenbasierten Verfahren, keinerlei Ableitung von der Zielfunktion benötigt. Dadurch können evolutionäre Algorithmen auch in solchen Fällen eingesetzt werden, in denen Ableitungen der Zielfunktion nicht oder nur schwierig zu beschaffen sind. Die evolutionären Algorithmen kommen deshalb mit so geringen Anforderungen an die Zielfunktion aus, weil nur absolute Bewertungen einzelner Punkte (hier Vektoren) im Lösungsraum durch die Zielfunktion vorgenommen werden. Dafür werden eine gewisse Anzahl Punkte gleichzeitig betrachtet. Im direkten Vergleich untereinander relativ günstig liegende Punkte werden für die weitere Rechnung übernommen, die anderen verworfen. Aus den Komponenten der übernommenen Punkte werden nun zufällig neue Punkte zusammengesetzt und ein wenig verschoben. Dann schließt sich der Kreis, indem diese neuen Punkte ebenfalls bewertet werden. Im Verlauf einer solchen Iteration konvergiert die Punktmenge in der Regel gegen ein Optimum. Oft kommt es gerade zu Beginn der Iteration zu schnellen Fortschritten. In dieser Arbeit wird ein Verfahren vorgestellt, bei dem mit Hilfe von evolutionären Algorithmen verbessernde Eingriffe in laufenden Echtzeitsystemen vorgenommen werden. Was gut oder schlecht ist, wird zu diesem Zweck über die Zielfunktion für die Optimierung definiert. Da von der Zielfunktion letztlich das Verhalten des Gesamtsystems abhängt, sollte sie sorgfältig ausgewählt werden. Die Eingriffe in das System sind zeitlich begrenzte Steuertrajektorien. Sie werden zusätzlich zur permanent wirkenden Regelung auf das System aufgebracht. Um die Anzahl der zu optimierenden Variablen in Grenzen zu halten, werden die Steuertrajektorien durch wenige Parameter repräsentiert. Da die Steuertrajektorien im voraus berechnet werden müssen, wird das Systemverhalten mittels eines Modells für eine gewisse, in der Zukunft liegende, Zeitspanne vorhergesagt. Wird die geforderte Qualität während dieser Zeitspanne unterschritten, kann so schon im Vorfeld ein Optimierungslauf des evolutionären Algorithmus durchgeführt werden. Allerdings ist die zur Verfügung stehende Rechenzeit von vornherein begrenzt. Daher ist es wesentlich, daß die mit evolutionären Algorithmen häufig assoziierte lange Rechenzeit nicht benötigt wird. Tatsächlich läßt sich unter Umständen mit wenig Rechenzeit auskommen. Erstens wird nur mit wenigen Variablen gerechnet, zweitens kommt es bei dem beschriebenen Verfahren - halbwegs gutmütige Systeme vorausgesetzt - gar nicht auf die letzte Nachkommastelle, sondern (ähnlich wie bei Sliding-Mode-Regelungen) mehr auf eine Tendenz an. Da evolutionäre Algorithmen aber gerade zu Beginn einer Iteration die größten Fortschritte in Richtung des Optimums machen, kann schon nach vergleichsweise wenigen Schritten eine deutliche Verbesserung der Gesamtsituation erreicht werden. Gerade um eine schnelle Konvergenz zu erreichen, sind die spezielle Ausprägung und die Parameter des evolutionären Algorithmus mit Bedacht zu wählen. Dafür werden im Rahmen der Arbeit einige Experimente durchgeführt. Anhand der Ergebnisse der Experimente können konkrete Empfehlungen für eine günstige Konfiguration des evolutionären Algorithmus gegeben werden. Um es vorwegzunehmen: Zuviel Aufwand beim evolutionären Algorithmus zu treiben, lohnt sich nicht. Schon mit einfachen Konfigurationen können gute Ergebnisse erzielt werden. Die einzige Maßnahme, die sich bei den Experimenten tatsächlich als vorteilhaft herausstellte, war die Aufteilung der Gesamtpopulation (betrachtete Punktmenge im Lösungsraum) in mehrere Subpopulationen. Schließlich wird noch ein Computerprogramm beschrieben, das die Arbeitsweise des vorgestellten Verfahrens am Bildschirm erlebbar macht. Die einzelnen Komponenten werden vom Programm während der Ausführung mit einigen wesentlichen Rechengrößen visualisiert. Der Betrachter erhält so einen besseren Eindruck vom Zusammenwirken der einzelnen Verfahrens-Teile.
Zitieren
@masterthesis{urn:nbn:de:hebis:34-200604038922,
author={Bretz, Steffen},
title={Unterstützung suboptimaler Regelkreise durch eine zentrale Korrektursteuerung},
school={Kassel, Universität, FB 15, Maschinenbau, Institut für Mess- und Automatisierungstechnik, Fachgebiet Systemtechnik und Mensch-Maschine-Systeme},
month={04},
year={2006}
}
0500 Oax 0501 Text $btxt$2rdacontent 0502 Computermedien $bc$2rdacarrier 1100 2006$n2006 1500 1/ger 2050 ##0##urn:nbn:de:hebis:34-200604038922 3000 Bretz, Steffen 4000 Unterstützung suboptimaler Regelkreise durch eine zentrale Korrektursteuerung / Bretz, Steffen 4030 4060 Online-Ressource 4085 ##0##=u http://nbn-resolving.de/urn:nbn:de:hebis:34-200604038922=x R 4204 \$dDiplomarbeit 4170 7136 ##0##urn:nbn:de:hebis:34-200604038922
2006-04-03T08:59:27Z 2006-04-03T08:59:27Z 2011-08-24T12:42:29Z 2006-04-03T08:59:27Z urn:nbn:de:hebis:34-200604038922 http://hdl.handle.net/123456789/200604038922 788871 bytes application/pdf ger Urheberrechtlich geschützt https://rightsstatements.org/page/InC/1.0/ Evolutionäre Optimierung Evolutionärer Algorithmus Doppelpendel Optimierung Regelung Steuerung Echtzeit 004 Unterstützung suboptimaler Regelkreise durch eine zentrale Korrektursteuerung Diplomarbeit Evolutionäre Algorithmen werden gerne für Optimierungsaufgaben mit sehr vielen Freiheitsgraden eingesetzt. Eine spezielle Konvergenzeigenschaft, daß nämlich der Rechenaufwand nur mit der Wurzel der Anzahl der Unbekannten steigt, prädestiniert sie dafür. Die evolutionären Algorithmen haben aber auch noch eine weitere interessante Eigenschaft: Von der Zielfunktion wird nur verlangt, daß sie monoton ist - nichts weiter. Speziell wird, im Gegensatz zu gradientenbasierten Verfahren, keinerlei Ableitung von der Zielfunktion benötigt. Dadurch können evolutionäre Algorithmen auch in solchen Fällen eingesetzt werden, in denen Ableitungen der Zielfunktion nicht oder nur schwierig zu beschaffen sind. Die evolutionären Algorithmen kommen deshalb mit so geringen Anforderungen an die Zielfunktion aus, weil nur absolute Bewertungen einzelner Punkte (hier Vektoren) im Lösungsraum durch die Zielfunktion vorgenommen werden. Dafür werden eine gewisse Anzahl Punkte gleichzeitig betrachtet. Im direkten Vergleich untereinander relativ günstig liegende Punkte werden für die weitere Rechnung übernommen, die anderen verworfen. Aus den Komponenten der übernommenen Punkte werden nun zufällig neue Punkte zusammengesetzt und ein wenig verschoben. Dann schließt sich der Kreis, indem diese neuen Punkte ebenfalls bewertet werden. Im Verlauf einer solchen Iteration konvergiert die Punktmenge in der Regel gegen ein Optimum. Oft kommt es gerade zu Beginn der Iteration zu schnellen Fortschritten. In dieser Arbeit wird ein Verfahren vorgestellt, bei dem mit Hilfe von evolutionären Algorithmen verbessernde Eingriffe in laufenden Echtzeitsystemen vorgenommen werden. Was gut oder schlecht ist, wird zu diesem Zweck über die Zielfunktion für die Optimierung definiert. Da von der Zielfunktion letztlich das Verhalten des Gesamtsystems abhängt, sollte sie sorgfältig ausgewählt werden. Die Eingriffe in das System sind zeitlich begrenzte Steuertrajektorien. Sie werden zusätzlich zur permanent wirkenden Regelung auf das System aufgebracht. Um die Anzahl der zu optimierenden Variablen in Grenzen zu halten, werden die Steuertrajektorien durch wenige Parameter repräsentiert. Da die Steuertrajektorien im voraus berechnet werden müssen, wird das Systemverhalten mittels eines Modells für eine gewisse, in der Zukunft liegende, Zeitspanne vorhergesagt. Wird die geforderte Qualität während dieser Zeitspanne unterschritten, kann so schon im Vorfeld ein Optimierungslauf des evolutionären Algorithmus durchgeführt werden. Allerdings ist die zur Verfügung stehende Rechenzeit von vornherein begrenzt. Daher ist es wesentlich, daß die mit evolutionären Algorithmen häufig assoziierte lange Rechenzeit nicht benötigt wird. Tatsächlich läßt sich unter Umständen mit wenig Rechenzeit auskommen. Erstens wird nur mit wenigen Variablen gerechnet, zweitens kommt es bei dem beschriebenen Verfahren - halbwegs gutmütige Systeme vorausgesetzt - gar nicht auf die letzte Nachkommastelle, sondern (ähnlich wie bei Sliding-Mode-Regelungen) mehr auf eine Tendenz an. Da evolutionäre Algorithmen aber gerade zu Beginn einer Iteration die größten Fortschritte in Richtung des Optimums machen, kann schon nach vergleichsweise wenigen Schritten eine deutliche Verbesserung der Gesamtsituation erreicht werden. Gerade um eine schnelle Konvergenz zu erreichen, sind die spezielle Ausprägung und die Parameter des evolutionären Algorithmus mit Bedacht zu wählen. Dafür werden im Rahmen der Arbeit einige Experimente durchgeführt. Anhand der Ergebnisse der Experimente können konkrete Empfehlungen für eine günstige Konfiguration des evolutionären Algorithmus gegeben werden. Um es vorwegzunehmen: Zuviel Aufwand beim evolutionären Algorithmus zu treiben, lohnt sich nicht. Schon mit einfachen Konfigurationen können gute Ergebnisse erzielt werden. Die einzige Maßnahme, die sich bei den Experimenten tatsächlich als vorteilhaft herausstellte, war die Aufteilung der Gesamtpopulation (betrachtete Punktmenge im Lösungsraum) in mehrere Subpopulationen. Schließlich wird noch ein Computerprogramm beschrieben, das die Arbeitsweise des vorgestellten Verfahrens am Bildschirm erlebbar macht. Die einzelnen Komponenten werden vom Programm während der Ausführung mit einigen wesentlichen Rechengrößen visualisiert. Der Betrachter erhält so einen besseren Eindruck vom Zusammenwirken der einzelnen Verfahrens-Teile. open access Bretz, Steffen Kassel, Universität, FB 15, Maschinenbau, Institut für Mess- und Automatisierungstechnik, Fachgebiet Systemtechnik und Mensch-Maschine-Systeme Diplomarbeit (2. Studienstufe) am Fachgebiet Systemtechnik und Mensch-Maschine-Systeme, Institut für Mess- und Automatisierungstechnik, Universität Kassel 68T05 68T20
Die folgenden Lizenzbestimmungen sind mit dieser Ressource verbunden: