Bestärkendes Lernen

aus Wikipedia, der freien Enzyklopädie
Zur Navigation springen Zur Suche springen

Bestärkendes Lernen oder verstärkendes Lernen (englisch reinforcement learning) steht für eine Reihe von Methoden des maschinellen Lernens, bei denen ein Agent selbstständig eine Strategie erlernt, um erhaltene Belohnungen zu maximieren. Dabei wird dem Agenten nicht vorgezeigt, welche Aktion in welcher Situation die beste ist, sondern er erhält zu bestimmten Zeitpunkten eine Belohnung, die auch negativ sein kann. Anhand dieser Belohnungen approximiert er eine Nutzenfunktion, die beschreibt, welchen Wert ein bestimmter Zustand oder Aktion hat.

Der Begriff ist der Psychologie entlehnt und wurde bereits seit den Anfängen der Kybernetik verwendet. So benutzte schon Marvin Minsky den Begriff in seiner Dissertation von 1954.[1] Die Modelle des bestärkenden Lernens versuchen das Lernverhalten in der Natur nachzubilden.

Modell[Bearbeiten | Quelltext bearbeiten]

Die Methoden des bestärkenden Lernens betrachten die Interaktion eines lernenden Agenten mit seiner Umwelt. Letztere ist dabei als Markow-Entscheidungsproblem formuliert. So besitzt die Umwelt eine Menge von Zuständen . Der Agent kann situativ, , eine Aktion, , aus einer Menge von verfügbaren Aktionen wählen, wodurch er in einen Folgezustand gelangt und eine Belohnung erhält.

Ziel des Agenten ist es, den zukünftig erwarteten Gewinn

mit

zu maximieren. Der erwartete Gewinn ist also so etwas wie die erwartete Gesamtbelohnung. Dabei nennt man den Diskontierungsfaktor, der zukünftige Belohnungen gewichtet. Bei episodischen Problemen, d. h. die Welt geht nach einer endlichen Anzahl von Schritten in einen Endzustand über (wie z. B. eine Schachpartie), eignet sich der Diskontierungsfaktor . In diesem Fall wird jede Belohnung gleich gewertet. Bei kontinuierlichen Problemen () muss man ein wählen, damit die unendliche Reihe konvergiert. Für zählt nur die aktuelle Belohnung ; alle zukünftigen Belohnungen werden ignoriert. Geht gegen 1, wird der Agent weitsichtiger.

Zu diesem Zweck verfolgt der Agent eine Strategie (englisch policy), die er laufend verbessert. Üblicherweise wird die Strategie als eine Funktion betrachtet, die jedem Zustand eine Aktion zuweist. Jedoch sind auch nichtdeterministische Strategien (oder gemischte Strategien) möglich, sodass eine Aktion mit einer bestimmten Wahrscheinlichkeit ausgewählt wird. Im Allgemeinen wird eine Strategie demnach als bedingte Wahrscheinlichkeitsverteilung definiert: [2]

Lernverfahren[Bearbeiten | Quelltext bearbeiten]

Zum Erlernen der Strategie des Agenten gibt es verschiedene Algorithmen. Sehr erfolgreich dabei sind Monte-Carlo-Methoden und Temporal Difference Learning. Bei diesen handelt es sich um eine Reihe von Algorithmen, bei denen der Agent eine Nutzenfunktion besitzt, welche einen bestimmten Zustand oder eine bestimmte Aktion in einem Zustand bewertet.

Bei kleinen Zustands- oder Aktionsräumen kann dies eine Tabelle sein, deren Felder anhand der erhaltenen Belohnung aktualisiert werden. Bei großen Zustandsräumen muss die Funktion jedoch approximiert werden. Dazu eignet sich beispielsweise die Fourierreihe oder auch ein Neuronales Netz.

Soll mehr als ein Agent lernen, kann selbst bei kooperativen Agenten, außer in trivialen Fällen, die Konvergenz der Lernvorgänge (bislang) nicht mehr garantiert werden. Trotzdem kann unter Zuhilfenahme von Heuristiken oft ein in der Praxis nützliches Verhalten gelernt werden, da der worst case selten auftritt.[3]

Literatur[Bearbeiten | Quelltext bearbeiten]

  • Richard Sutton, Andrew Barto: Reinforcement Learning: An Introduction. MIT Press, Cambridge, MA, 1998.
  • Dimitri P. Bertsekas, John Tsitsiklis: Neuro-Dynamic Programming. Athena Scientific, Cambridge, MA, 1996.
  • Csaba Szepesvári, Algorithms for Reinforcement Learning, Morgan and Claypool, 2010 (ualberta.ca PDF).
  • Marc Patrick Deisenroth, Gerhard Neumann, Jan Peters: A Survey on Policy Search for Robotics. Foundations and Trends in Robotics, 21, S. 388–403, 2013 (ausy.tu-darmstadt.de PDF).
  • Jens Kober, Drew Bagnell, Jan Peters: Reinforcement Learning in Robotics: A Survey. International Journal of Robotics Research, 32, 11, S. 1238–1274, 2013 (ausy.tu-darmstadt.de PDF).
  • Uwe Lorenz: Reinforcement Learning: Aktuelle Ansätze verstehen – mit Beispielen in Java und Greenfoot. Springer Vieweg, 2020, ISBN 978-3-662-61651-2
  • Warren B. Powell: Approximate Dynamic Programming. John Wiley and Sons, 2011.
  • Stuart Russell, Peter Norvig: Künstliche Intelligenz: Ein moderner Ansatz. Pearson Studium, August 2004, ISBN 3-8273-7089-2 (deutsche Übersetzung der 2. Auflage) Kapitel 21.

Weblinks[Bearbeiten | Quelltext bearbeiten]

Einzelnachweise[Bearbeiten | Quelltext bearbeiten]

  1. Richard Sutton: Reinforcement Learning FAQ. (Nicht mehr online verfügbar.) 2. April 2004, archiviert vom Original am 28. August 2016; abgerufen am 21. April 2016 (englisch).
  2. Michel Tokic: Reinforcement Learning mit adaptiver Steuerung von Exploration und Exploitation. Ulm 2013, doi:10.18725/oparu-2517 (PhD thesis, Universität Ulm, Institut für Neuroinformatik).
  3. J. F. Knabe: Kooperatives Reinforcement Lernen in Multiagentensystemen. B. Sc. Thesis, Universität Osnabrück, 2005 (panmental.de PDF)