next up previous contents
Next: Lernen mit Gütemaß Up: Regelung des Pendelsystems Previous: Regelung des Pendelsystems

Lernen mit Regler

Beim Lernen mit einem Regler nimmt man einen, wie in der Standardliteratur beschrieben konstruierten, Regler und identifiziert diesen mit dem Neuronalen Netz. Das bewirkt, daß das Neuronale Netz die Reaktionen des Reglers nachvollziehen kann und somit ebenso das doppeltinverse Pendel regeln kann. Für das Lernen stehen zwei Möglichkeiten zur Verfügung: Zum einen könnte man das Neuronale Netz parallel zum Regler Echtzeit lernen lassen, während der Regler das doppeltinverse Pendel regelt. Ein Echtzeitlernen ist hier nicht möglich gewesen.

Zum anderen ist eine einfachere Methode möglich, nämlich die des überwachten Lernens.

Beim überwachten Lernen sind bei jedem Trainingsmuster sowohl ein Eingangsmuster als auch das dazu gewünschte Ausgangsmuster vorzugeben. Der Trainingsprozeß verläuft als beaufsichtigtes ,,Lernen mit Lehrer``. Das zu lernende Eingangsmuster wird dem Netz präsentiert und ein Ausgangsmuster dazu berechnet. Aus der Differenz zwischen tatsächlicher und gewünschter Ausgabe wird der Fehler berechnet und damit das Netz gelernt. Dazu werden die Gewichtsfaktoren durch ein Lerngesetz, zum Beispiel Backpropagation, so adaptiert, bis das gewünschte Ausgangsmuster erreicht wird.

   figure346
Abbildung: Lernen mit Regler: Das Netz lernt das Verhalten des Reglers

Das größte Problem bei diesem Verfahren ist, daß der Regler das Pendel schon so gut reguliert, daß man Ein- und Ausgabewerte nur noch für den Bereich erhält, der sehr nahe am Systemminimum, also an der Senkrechten ist. Durch diesen Mißstand bedingt lernt das Neuronale Netz auch nur das Verhalten in diesem Bereich und extrapoliert somit alle Werte, die außerhalb davon liegen. Das hat zur Folge, daß das Netz das Verhalten des Reglers nur in diesem kleinen Bereich lernt, sich außerhalb davon aber völlig anders verhalten kann.

Anhand eines Simulationsmodells läßt sich dieses Problem umgehen, indem man zum Beispiel das System in zufälligen Positionen startet. Am Hardwaremodell ist das sehr schwer möglich, da man an der resultierenden Mustermenge nicht exakt erkennen kann, ab welchem Moment sich das System frei bewegt hat und der Regler die Steuerung übernommen hat. Überdies muß dann zuerst einmal gewährleistet sein, daß der herkömmliche Regler das Pendel aus dem Startzustand überhaupt regeln kann. Herkömmliche Regler werden meist mit Hilfe von Kleinwinkelnäherung und Parameterbestimmung für kleine Bereiche ermittelt. Dadurch bedingt kann ein herkömmlicher Regler nur in einem kleinen Bereich das Pendel stabil regeln.

Der erste Versuch wurde mit dem Lernen eines rekurrenten Netzes mittels eines Fuzzy-Reglers gestartet. Das Hardware-Pendel wurde durch den Regler gesteuert und die Ein- und Ausgabewerte aufgezeichnet. Mit dieser Mustermenge wurde das Netz mit dem Backpropagation-Algorithmus trainiert.

Das Ergebnis war im Kleinwinkelbereich des Pendelarms sehr zufriedenstellend. Das Netz regelte das Pendel hier stabiler als der Regler, dessen Verhalten es gelernt hatte. Doch schon bei kleinen Abweichungen des Pendelarmwinkelsgif übersteuerte das Netz zu stark. Die Erklärung hierfür liegt auf der Hand:

Der Regler hat den Pendelarm ziemlich senkrecht reguliert, nur der Motorarm schwankte leicht hin und her. Die vom Regler gewonnene Mustermenge war somit nur auf diesen relativ kleinen Zustandsraum beschränkt. Das Netz konnte also auch nur das Verhalten des Reglers in diesem Bereich erlernen. Somit hat das Netz alle Werte, die außerhalb dieses Bereiches liegen, mehr oder weniger gut extrapoliert.


next up previous contents
Next: Lernen mit Gütemaß Up: Regelung des Pendelsystems Previous: Regelung des Pendelsystems

Marius Heuler
Tue Jan 7 12:05:27 MET 1997