Reinforcement Learning

Aus FernFH MediaWiki
Zur Navigation springen Zur Suche springen

Reinforcement Learning

Reinforcement Learning - RL (Bestärkendes Lernen oder Verstärkungslernen) ist ein agentenbasierter ML Ansatz. Ein Agent passt seine Aktionen iterativ entsprechend dem Feedback der Umgebung an, um sein Ziel zu erreichen. Dieser Mechanismus kommt in vielen biologischen Systemen vor und ist typisch für Kontrollaufgaben. Dieser auf iterativer Bewertung basierende Mechanismus findet jedoch auch bei vielen anderen Aufgaben aus anderen Anwendungsbereichen, da er ein Optimierungsproblem realisiert.

Kurze Beschreibung von Reinforcement Learning (RL)

Problemstellung

Die Zeit wird als diskrete Zeit modelliert, d. h. sie verläuft in Zeitschritten (time steps). Der RL-Agent befindet sich zum Zeitpunkt in einem Zustand , wobei . Der Agent führt eine Aktion , aus den erlaubten Aktionen im Zustand aus. Als Reaktion der Umgebung auf diese Aktion erhält der Agent eine Belohnung (reward) , und der Zustand des Agenten ändert sich im nächsten Zeitschritt zu . Der Begriff „Umgebung“ wird im weitesten Sinne verwendet, was bedeutet, dass die Umgebung alles sein kann, was auf die Aktionen eines Agenten reagiert. Das Ziel des RL-Agenten wird durch die Maximierung der akkumulierten (erwarteten) Belohnungen (accumulated expected reward) in der Zukunft modelliert, wobei der Wertverlust der Belohnungen (depreciation of rewards) im Laufe der Zeit berücksichtigt wird. Dies erfolgt auf die in der Wirtschaftswissenschaft übliche Methode durch die Anwendung von Abzinsungsfaktoren (discount factors). Auf diese Weise erreicht der RL-Agent sein Ziel, indem er durch iterative Auswertungen der Reaktionen der Umgebung auf seine Aktionen eine Folge von Aktionen festlegt.

Die Interaktion mit der Umgebung wird durch die Belohnungsfunktion und die Zustandsänderungen durch Zustandsübergangswahrscheinlichkeiten
beschrieben. Die RL-Literatur hinsichtlich des Zusammenhangs der unmittelbaren Belohnung zur Zeit oder nicht einheitlich ist. Während der gesamten Diskussion von RL übernehmen wir die Assoziation der unmittelbaren Belohnung zum Zeitschritt . Somit wird die diskontierte, akkumulierte Belohnung im Zeitschritt , durch

ausgedrückt, wobei der Abzinsungsfaktor ist. Das Verhalten des Agenten wird durch die Wahrscheinlichkeiten für und charakterisiert. Sie beschreiben, welche Aktion mit welcher Wahrscheinlichkeit in jedem Zustand durchgeführt wird. Dies bestimmt auch die vom Agenten befolgte Policy, für die die Notation verwendet wird. Dann das Ziel des Agenenten kann als ein Optimierungsproblem, wie folgt,

formuliert werden, wobei für die Erwartung steht. Die Erwartung bezieht im obigen Ausdruck auf alle zufälligen Komponenten der bedingten diskontierten, akkumulierten ermäßigten Belohnung, gegeben der Startzustand und die Policy. Basierend auf der obigen Optimierungsformulierung kann das Ziel des Agenten auch darin ausgedrückt werden, die optimale Policy zu finden, die zu der maximal erwarteten diskontierten, akkumulierten zukünftigen Belohnung führt.

Wir haben den RL Ansatz in diskreten Räumen (discrete spaces) erklärt, er kann aber auch auf kontinuierliche Zustands- und Aktionsräume (continuous state and action spaces) erweitert werden.

Elemente von RL

Die typischen Elemente eines RL Ansatzes sind:

  1. das Modell (model),
  2. die Strategy (policy),
  3. die Wertfunktion (value function) und
  4. die Aktionswertfunktion (action value function).

Das Modell beschreibt die Umgebungsdynamik und wird durch die Belohnungsfunktion und die Übergangswahrscheinlichkeiten der Zuständen
gegeben. Alternativ kann es in kompakter Form durch die Funktion angegeben werden.

Die Policy beschreibt das langfristige Verhalten, das der Agent während seiner Interaktion mit der Umgebung im Laufe der Zeit verfolgt. Im Allgemeinen ist die Policy eine Abbildung, die jedem Zustand die Wahrscheinlichkeitsverteilung , zuweist , d. h. die Policy wird durch die Aktionswahrscheinlichkeiten spezifiziert, die die Wahrscheinlichkeit des Ausführens einer Aktion in einem bestimmten Zustand charakterisieren. Im Falle einer deterministischen Policy wird jedem Zustand nur eine Aktion zugewiesen. Für diesen Fall verwenden wir die Funktionsnotation für und .

Wertfunktion

Die (Zustands-)Wertfunktion gibt die erwartete diskontierte, akkumulierte zukünftige Belohnung unter Berücksichtigung des tatsächlichen Zustands und der Policy an. Aufgrund der Erwartung handelt es sich um eine Art Vorhersage der künftig angesammelten Belohnung. Die Wertfunktion hängt vom Ausgangszustand und der angewendeten Policy ab. Diese werden auch in seinen Notationen ausgedrückt: oder . Basierend auf der obigen Definition kann es formal durch

gegeben sein.

Aktionswertfunktion

In ähnlicher Weise gibt die Aktionswertfunktion die erwartete diskontierte, akkumulierte zukünftige Belohnung an, jedoch neben dem Anfangszustand und der Policy auch als Abhängigkeit von der Anfangsaktion. Es wird mit oder einfach bezeichnet und ist formal durch

gegeben.

Bellman-Gleichungen

Sowohl die Wertfunktion als auch die Aktionswertfunktion können rekursiv über die möglichen Zustandsübergänge ausgedrückt werden. Diese werden durch die Bellman-Gleichungen wie folgt angegeben

Diese rekursiven Gleichungen können als Zerlegungen (decompositions) betrachtet werden und als Grundlage für Lösungsalgorithmen für RL, wie dynamische Programmierung (dynamic programming) dienen.

Optimale Wertfunktion

Die optimale Wertfunktion ist der maximale Wert, der über alle mögliche Policy erreicht werden kann. Anders ausgedrückt:

Auch kann auf rekursive Weise ausgedrückt werden, was durch

gegeben werden kann.

Dies ist ebenfalls eine Bellman-Gleichung. Der Ausdruck von beinhaltet implizit, dass zunächst (im Zustand ) die beste Aktion ausgeführt wird. Dies liegt daran, dass die gewichtete Summe in mit Wahrscheinlichkeitsgewichten kann als Interpolation interpretiert werden, weil . Daher ist das Maximum der gewichteten Summe der höchste Wert in der Summe mit dem Wahrscheinlichkeitsgewicht . Dies bedeutet, dass das Ergreifen der besten Maßnahme zunächst impliziert, dass die resultierende optimale Policy deterministisch ist.

Optimale Aktionswertfunktion

Ebenso ist die optimale Aktionswertfunktion der maximale Aktionswert, der über alle mögliche Startegie erreicht werden kann. Somit ist es durch

gegeben.

Beobachte, dass der Wert ist, bei dem zunächst die beste Aktion durchgeführt wurde. Daraus folgt, dass mit als

in Beziehung gesetzt werden kann.

Die Bellman-Gleichung für kann wie folgt angegeben werden:

Auch hier wird zunächst die beste Aktion ausgeführt, jetzt im Zustand , da dies der erste Zustand ist, in dem eine Aktion ausgewählt werden muss (die Aktion im Zustand ist bereits gegeben).

Optimale Policy

Die optimale (deterministische) Policy kann aus der optimalen Aktionswertfunktion als

erhalten werden.

Die optimale Policy kann auch aus der optimalen Wertfunktion berechnet werden, indem zunächst die optimale Aktionswertfunktion aus der optimalen Wertfunktion berechnet wird. Dies führt zu

Methodentypen von RL

Es gibt zwei Arten von Methoden zur Lösung eines RL Problems:

  • Modellbasierte Methoden (model-based methods)
  • Modellfreie Methoden (model-free methods)

Modellbasierte Methoden

Wenn das RL Modell die Markov-Eigenschaft erfüllt, d. h. die zukünftige Entwicklung der Zustände und Aktionen nur vom tatsächlichen Zustand abhängt, kann das RL Problem als Markov Entscheidungsprozess (MDP) formuliert werden.

Wenn der Status des Prozesses nach jedem Intervall der Länge zurückgesetzt wird, dann ist das MDP episodisch mit einer Episode der Länge . Eine Trajectory (oder Rollout) ist eine Verwirklichung der Abfolge von Zuständen, Aktionen und Belohnungen in einer Episode. In diesem Fall wird die kumulierte ermäßigte Prämie

gegeben. Im nicht-episodischen MDP . In diesem Fall stellt die Einstellung die Endlichkeit der diskontierten, akkumulierten Belohnung sicher.

Wenn das Modell gegeben ist, sind die Belohnungsfunktion und die Übergangswahrscheinlichkeiten bekannt. Daher kann der rekursive Charakter der Bellman-Gleichungen genutzt werden. Dies ermöglicht die Erstellung von Algorithmen mithilfe dynamischer Programmierung. Die beiden wichtigsten modellbasierten Algorithmen sind

  • Value Iteration und
  • Policy Iteration.

Value iteration

Die Wertfunktion kann iterativ für alle Zustände aus der Bellman-Gleichung für , kombiniert mit der Beziehung zwischen und , berechnet werden. Dies ist die Basis für den Value Iteration Algorithmus. Der Pseudocode des Algorithmus wird in Algorithm  dargestellt.


Algorithm  Value iteration
—————————————————————————————
Eingabe:
- die Belohnungsfunktion für und ,
- die Übergangswahrscheinlichkeiten für und .
Ausgabe: die optimale Wertfunktion für .
—————————————————————————————
1 Initialisierung von mit einer beliebigen nicht negativen Funktion
2 Wenn das Stoppkriterium NICHT erfüllt ist
3   for
4     for
5       
6     end
7     
8   end
9 end
—————————————————————————————
Es kann gezeigt werden, dass der Algorithmus immer gegen
([Bellman(1957)], [Bertsekas(1987)]) konvergiert. Die optimale Policy kann aus dem berechneten bestimmt werden. Dies ist ein Greedy Algorithmus, da in jeder Iteration basierend auf der besten Aktion in jedem Zustand bestimmt wird. Allgemeiner gesagt ist ein Algorithmus Greedy, wenn in jedem Iterationsschritt die Eingabe für die nächste Iteration als die (in gewisser Weise) beste Ausgabe des tatsächlichen Iterationsschritts bestimmt wird. Ein wirksames Stoppkriterium besteht darin, zu iterieren, bis die maximale Differenz zwischen zwei aufeinanderfolgenden Wertfunktionen kleiner als ein vorgeschriebener kleiner -Wert ist.

Die numerische Komplexität des Algorithmus beträgt , wobei die Anzahl der erforderlichen Iterationen ist.

Policy Iteration

Bei der Value Iteration wird die optimale Policy indirekt aus der optimalen Wertfunktion ermittelt. Im Policy Iteration Algorithmus wird die Policy direkt in jedem Iterationsschritt berechnet. Die iterative Berechnung der Policy kann direkt erfolgen, indem eine Gleichung verwendet wird, die wiederum aus der Kombination der Bellman-Gleichung für mit der Beziehung zwischen und erhalten wird. Dies führt zu

Die rekursive Berechnung der nächsten Policy basierend auf der obigen Gleichung erfordert die Berechnung von für jedes aus der tatsächlichen Policy . Dies kann erreicht werden, indem die Policy auf die Bellman-Gleichungen der Wertfunktion angewendet und für die Werte gelöst wird. Sie bilden ein lineares Gleichungssystem, da sie keine Maximaloperation beinhalten. Das Zusammenfügen all dieser Punkte ergibt den Policy Iteration Algorithmus. Der Pseudocode des Algorithmus wird in Algorithm  angezeigt.


Algorithm  Policy iteration
—————————————————————————————
Eingabe:
- die Belohnungsfunktion für und ,
- die Übergangswahrscheinlichkeiten für und .
Ausgabe: die optimale Policy für .
—————————————————————————————
1 Auswählen eine beliebige Policy und Einstellen
2 while
3
4 Berechnen aus der Policy , durch Lösung eines linearen Gleichungssystems lösen
  
5 Aktualisieren die Policy als
   for every
6 end
—————————————————————————————
Das Aktualisieren der Policy bedeutet, die beste erste Aktion anstelle der zuvor von der Policy verwendeten zu bestimmen. Wenn sie unterschiedlich sind, verbessert die Änderung der ersten Aktion strikt die Wertfunktion (der Wert mit der besten Aktion ist aufgrund von max besser als mit der vorherigen Aktion) und damit auch die Policy. Wenn in der Policy keine Aktion geändert werden, ist keine Verbesserung möglich und die Policy ist somit optimal. Die Anzahl der Iterationen ist mit höchstens exponentiell, da die Anzahl der verschiedenen Policy beträgt. Die Anzahl der Operationen ist jedoch pseudopolynomiell.

Modellfreie Methoden

Wenn kein MDP vorhanden ist, da die Zustände nicht vollständig beobachtbar (fully observable) sind, können in einigen Fällen andere Modelle etabliert werden. Bei MDP stellt die Markov-Eigenschaft sicher, dass die Zustände vollständig beobachtbar sind. Dies ist jedoch nicht immer realistisch. Wenn die Zustände nicht vollständig beobachtbar sind, dann können in einigen Fällen die teilweise beobachtbaren MDPs (partially observable MDPs - POMDPs) ermittelt werden, die die Verallgemeinerung der MDPs darstellen.

Wenn kein Modell vorhanden ist oder das Modell nicht bekannt ist, können modellfreie Methoden verwendet werden. Sie funktionieren auch, wenn es ein MDP-Modell oder ein anderes Modell als MDP, die teilweise beobachtbaren MDPs oder das Multiarmed-Bandit-Modell vorhanden ist.

Zu den wichtigsten modellfreien Algorithmen gehören:

  • Temporal Difference (TD) Learning + Bootstrapping
  • Q-Learning (einschließlich SARSA)
  • Function approximation (Funktionsnäherung)
  • Policy Based Methoden (Policy-basierte Methoden) oder Policy Optimization

Weitere Einzelheiten zu modellfreien RL-Methoden können in [Li(2018)] gefunden werden.