530 likes | 692 Views
Computational Intelligence Seminar A. Hierarchical Reinforcement Learning Gerhard Neumann. Struktur des Vortrags. Kurze Wiederholung von MDP‘s und RI. Mathematisches Rahmenwerk Die Probleme von RI. Einführung in Hierarchisches Lernen Motivation Behandlung von SMDP‘s
E N D
Computational Intelligence Seminar A Hierarchical Reinforcement Learning Gerhard Neumann
Struktur des Vortrags • Kurze Wiederholung von MDP‘s und RI. • Mathematisches Rahmenwerk • Die Probleme von RI. • Einführung in Hierarchisches Lernen • Motivation • Behandlung von SMDP‘s • Verschiedene Einteilungen Seminar A, Neumann Gerhard
Stuktur des Vortrags, 2 • MaxQ Hierarchical Reinforcement Learning • Value Function Decomposition • MaxQ-Graph • MaxQ QLearning Algorithmus • State Abstractions • Non Hierachical Execution • Beispiel: Taxi Domain • Multi-Agent Learning with MaxQ • Unterschiede zur Single-Agent Architektur • Beispiel: AGV Task Seminar A, Neumann Gerhard
Wiederholung: Markov Decision Problem • MDP ist Definiert durch • S : Endliche Menge von Zuständen. • A : Endliche Menge von ausführbaren Aktionen, kann durchaus auch vom momentanen State s abhängen -> A(s) • T : Übergangswahrscheinlichkeiten des Environments, wichtig: • ->Markov Eigenschaft • R: Rewardfunktion Seminar A, Neumann Gerhard
Wiederholung: MDP‘s – wichtige Begriffe • Policies: für alle möglichen • Value Function • Berechnungschema: • Action-Value Function • Führe Aktion a aus, danach folge Policy pi. Seminar A, Neumann Gerhard
Wiederholung: MDP‘s – wichtige Begriffe • Bellman-Gleichung • Optimale V bzw. Q Funktion: Seminar A, Neumann Gerhard
Wiederholung: TD Learning • TemporalDifference-Learning: • Modellfreier Lernalgorithmen • Verwenden jeweils ein Sample für ein Update der Q-Function • Vertreter des TD-Learnings • Q-Learning • Sarsa-Learning Seminar A, Neumann Gerhard
Wiederholung: TD Learning Algorithmus • Updateschritt • Berechnung des dynamischen Mittelwerts der einzelnen Q Werte. • … Lernrate • a‘ wird folgendermassen festgelegt: • Q-Learning: … lerne Optimalen Q-Value • Sarsa-Learning: … lerne Q-Value der Policy Seminar A, Neumann Gerhard
Kritikpunkte an RL • Man benötigt viele Trainingsversuche • (> 100000 bei komplizierteren Aufgaben) • Abhilfen: • Model Based RL • Hierarchisches RL • Der Zustands Raum wächst exponentiell mit der Anzahl der Zustandsvariablen: • Schlechte Skalierbarkeit • Deswegen zum Beispiel normales Multi-Agent Reinforcement Learning kaum möglich Seminar A, Neumann Gerhard
Kritikpunkte an RI-Lernen • Gelerntes Wissen ist sehr schlecht auf ähnliche Aufgaben zu übertragen. • Transformation der Q-Function • Off-Policy Learning: Verwenden des schon Gelernten als Controller • Hierarchisches RL: Behaviors/Skills Seminar A, Neumann Gerhard
2.Teil • Einführung in Hierarchisches RI. Seminar A, Neumann Gerhard
Einführung in Hierarchisches RI. • Motivation: • Vereinfachung des Lern-Problems durch Vorgegebene Struktur. • Lösung muss nicht mehr optimal sein. • Verringerung des Zustandsraums • Für gewisse Sub-Tasks wird nur ein kleiner Teil des Zustandsraums benötigt. • Teilweise nur noch polynomielles Wachstum des Zustandsraums • Wiederverwendbarkeit von schon gelernten Skills • Bessere Skalierbarkeit des Problems Seminar A, Neumann Gerhard
Einteilung eines Tasks in Subtasks • Beispiel: Taxi Domain: • Taxi muss Passagier von beliebiger Location zur beliebiger Destination bringen • Zustandsraum: TaxiLocation * PassengersLocation * Destination = 25 * 5 * 4 = 500 • Aktionsraum: = {4 Richtungen, Pickup, Putdown} = 6 • State-Action Values: 3000 • Episodischer Task => Seminar A, Neumann Gerhard
Task Graph für Taxi Domain Navigate(t):… {Y,G,R,B}: praktisch ein eigener SMDP pro Parameter Seminar A, Neumann Gerhard
Taxi Domain mit flat RL • 2 verschiedene Situationen: • Location: Y, Destination: B • Location: Y, Destination: R • Gleiche V-Funktion um zu Y zu kommen, bis auf additive Konstante (3) Seminar A, Neumann Gerhard
Verschiedene Ansätze der Algorithmen • Spezifizierung der Sub-Taks • „Option“-Method (Sutton, 1998): Policies für die Subtasks werden ausprogrammiert. • Als nicht-deterministischer Finite State Controller (HAM, Parr and Russel, 1998): • Für jeden State („choice“ Point) nur eine, vom Programmierer eingeschränkte Menge an Aktionen verfügbar. Seminar A, Neumann Gerhard
Verschiedene Ansätze: Spezifizierung der Sub-Tasks • Mittels „End-Zustände“ und localer Rewardfunction für jeden Sub-Task • jeder Sub-Task ist ein eigener SMDP. • MAXQ Methode (Dietterich, 2000) Seminar A, Neumann Gerhard
Weitere Unterschiede der Algorithmen • State Abstraction für Sub-Tasks • Nur MAXQ • Non-Hierarchical Execution • Lässt sich aus der Hierarchischen Policy eine nicht hierarchische Policy konstruieren? • Optimalität der Policies: • Hierarchisch Optimal: Policy wählt Optimale Aktion aufgrund des gesamt-Contextes (d.h. der momentanen „Parent-Tasks“ • Recursiv Optimal: Policy wählt Aktoin nur aufgrund des Momentanen State des Subtasks (nur lokal Optimal) • Art des eingesetzen Lern-Algorithuses • Meist Q-Learning Seminar A, Neumann Gerhard
Unterschiede zu Flat-Learning: • Aktionen->Behaviors/Skills • Anstatt Primitiv Actions kann Agent auch Behaviors (Skills) verwenden. • Einzelne Behaviors benötigen Unterschiedliche Anzahl an primitiven Aktionen. • =>Neue Zufallsvariable: • N … Dauer des Behaviors Seminar A, Neumann Gerhard
Unterschiede zu Flat-Learning: • Semi-Markov Decision Processes (SMDP) • Neue V-Function • Bzw. Optimale V-Function Seminar A, Neumann Gerhard
Unterschiede: Policies • Hierarchische Policy • Beeinhaltet für jeden Subtask eine eigene Policy • Die Policy des Aktuellen Sub-Task wird ausgeführt. • Hierarchische V-Function • Hängt zusätzlich vom Sub-Task Stack K ab. • Anm: Bei rekursiv Optimalen V-Functions hängt sie nur vom momentan aktiven Sub-Task ab. Seminar A, Neumann Gerhard
3. Teil • MAXQ Learning Seminar A, Neumann Gerhard
MAXQ Lernen • Eigenschaften: • Definiert Sub-Tasks als eigenen SMDP mit „End-Zuständen“ und einer lokalen RewardFunktion, es werden alle Sub-Tasks gleichzeitig gelernt. • Findet nur eine Rekursiv Optimale Policy • Gelernte Sub-Tasks sind wiederverwendbar (d.H. nur rekursiv Optimal) • Liefert auch genaue Regeln für State-Abstraktion • Nachteil: Programmierer muss Struktur genau spezifizieren. Seminar A, Neumann Gerhard
Genaue Definition der SubTasks • MAXQ zerlegt einen MDP in eine Menge von Sub-Tasks {M0, M1, …Mn} (wobei M0 der „oberste SubTask“ = Wurzel • Jeder Sub-Task Mi ist definiert durch • Ti: Menge der Endzustände. Der Subtask wird sofort beendet, auch wenn er noch einen anderen Subtask ausführt • Ai: Menge der Verfügbaren Aktionen, kann primitve Aktionen aber auch andere Sub-Tasks beinhalten (einzige Einschränkung: kein Kreis im Graph) • Ri: Reward-Funktion des Sub-Tasks. • i: Pseudo-Reward Funktion; Gibt an wie wünschenswert die Endzustände sind, wird nur zum Lernen verwendet. Seminar A, Neumann Gerhard
MAXQ Value Funktion Zerlegung • MAX-Node: Repräsentiert die V-Funktion eines Sub-Tasks . • Q-Node: Repräsentiert den Q-Value einer Aktion eines Subtasks. Seminar A, Neumann Gerhard
MAXQ Value Funktion Zerlegung • Jeder Sub-Task Mi (Max Node) definiert einen SMDP mit Si Zustanden, Ai Aktionen, den Übertragungswahrscheinlichkeiten und der erwarteten Reward-Funktion • a. steht hier für einen Sub-Task=>V(s,a) ist Value Funktion des Sub-Tasks a. • Falls a eine primitive Aktion dann ist Seminar A, Neumann Gerhard
MAXQ Value Funktion Zerlegung • Action-Value Function Q(i,s,a) • i…Momentaner Subtask • a…Auszuführender Subtask • Neue Funktion: Completition Funktion C • Gibt den erwarteten Reward an, nachdem Sub-Task a ausgeführt wurde. Seminar A, Neumann Gerhard
V-Funktion Zerlegung • =>Zerlegung der V-Funktion in additive Blöcke • Beispiel: Taxi Domain Seminar A, Neumann Gerhard
V-Zerlegung für Taxi Domain • Taxi location: (2,2), Passenger: Y->B • V(root,s)=V(west,s)+C(N(Y),s,west)+C(Get,s,N(Y))+C(root,s,Get)=-1-3-1+12=7 Seminar A, Neumann Gerhard
Der MaxQ-0 Lernalgorithmus • Vernachlässigung der lokalen und der Pseudo Rewardfunktion->globale Rewardfunktion Seminar A, Neumann Gerhard
Der MaxQ-0 Lernalgorithmus • Update der C Funktion • Bzw. • Berechnung von : • Rechnerintensive Suche Seminar A, Neumann Gerhard
Der MaxQ-0 Lernalgorithmus • Falls exploration Policy zur Greedy-Policy Konvergiert, so konvergiert MAXQ-0 zu einer rekursiv optimalen Policy • Lernen findet auf jeder Stufe gleichzeitig statt, höhere Level müssen nicht warten, bis untere Level konvergieren Seminar A, Neumann Gerhard
Hierarchical vs. Rekursiv Optimal • Rekursiv Optimal: • V-Funktion ist nur für den Sub-Task (lokal) optimal, für die gesamte hierarschische Struktur kann es bessere Policies geben (hierarisch optimale) • Vorteil: Wiederverwendbarkeit der gelernten Skills • Beispiel: SubTask „Exit“: verlasse linken Raum • A={S,N,E} • R=-1pro Step 20 bei Goal Seminar A, Neumann Gerhard
Hierarchical vs. Rekursiv Optimal: Beispiel • Rekursiv Optimale Policy verhält sich suboptimal in der „grauen“ Zone • Was würde passieren wenn wir auch die Aktion „WEST“ zulassen würden?. • => Wir brauchen eine Pseudo-Reward Funktion, die uns die End-Zustände bewertet Seminar A, Neumann Gerhard
Der MAXQ-Q Algorithmus • Berücksichtigung der Pseudo-Reward Funktion • Kann auch für „normale“ States Rewards verteilen • Nachteil: Programmier muss Pseudo-Reward Funktion schätzen. • Vereinfachung: Einteilung in: • Goal States: R = 0 • Termination States: R = -100 Seminar A, Neumann Gerhard
MAXQ-Q: Pseudo-Rewards • Ursprünglicher MDP darf aber durch nicht verfälscht werden • =>Lernen von 2 Verschiedenen C-Funktionen • Interne C-Funktion : • wird miteinbezogen • wird für die Berechnung der lokalen Policy des SMDP‘s verwendet. • Externe C-Funktion C : • wird ohne berechnet • Wird für die Berechnung des Erwarteten Rewards des höheren Levels verwendet. Seminar A, Neumann Gerhard
MAXQ-Q:Updateregeln • Für • Q-Lernen • SARSA-Lernen • Berechnung der V-Values erfolgt jeweils mit der unverfälschten, externen C Funktion. Seminar A, Neumann Gerhard
Hierarchical Credit Assignment • Was für ein Sub-Task war „schuld“ an einem Reward? • Beispiel: Fuel-Task bei Taxi Domain • =>Einführung von lokalen Reward-Funktionen für jeden SMDP • Lokale Reward Funktion wird in interne und externe C-Funktion mit einbezogen • => für höhere Level setzt sich die Rewardfunktion als Summe aller „niedrigeren“ Rewardfunktionen zusammen. Seminar A, Neumann Gerhard
State Abstraction • Weniger State Action Values • Schnelleres Lernen (Generalisierung durch State Abstraction) • MAXQ definiert 3 verschiedene Arten von State Abstraction: • Irrelevante Zustandsvariablen • Funnel Abstractions: Zusammenlegung gleicher Zustände • Structural Contraints: C Werte müssen für Endzustände (und nicht erreichbare Zustände) nicht gespeichert werden. Seminar A, Neumann Gerhard
State Abstraction: Irrelevante Variablen • Eine Zustandsvariable y ist für einen Sub-Task Mi (Max-Node) genau dann irrelevant wenn • x und N müssen unabhängig von y sein • Für alle Paare s1 = (x, y1), s2 = (x,y2) gilt • Reward muss unabhängig von y sein Seminar A, Neumann Gerhard
State Abstraction:Funnel Abstraction • Die C(i,s,a) hängt eigentlich nur von den Endzuständen s‘ ab • Falls s1 und s2 die gleichen Übertragungsfunktionen besitzen, als • für alle s‘ und alle N, dann ist C(i,s1,a)=C(i,s2,a) • Nur für gut anwendbar, da hier N vernachlässigbar ist. Seminar A, Neumann Gerhard
State-Abstraction: Taxi Domain • State-Action für Flat MDP: • 3000 Values • State-Action Values ohne State Abstraction: • Level 1: 2 * 500=1000 • Level 2: 2 * 5 * 500=5000 • Level 3: 4 * 4 * 500=8000 • => 14000 Values • Mit State Abstraction: • 632 Values Seminar A, Neumann Gerhard
Non-Hierarchical Execution • Optimale hierarchische Policies sind nicht unbedingt optimal für den MDP. • Ausführung ohne Hierarchie (Beginne bei jedem Schritt wieder bei der Wurzel, kein Warten bis SubTask fertig ist) • Adaption des Lernalgorithmus: • L…Anzahl der Steps die hierarchisch ausgeführt werden. • L wird stetig verringert während dem Lernen (bis 1) Seminar A, Neumann Gerhard
Ergebnisse: Fickle Taxi Task • Fickle Taxi Task: • Nicht Deterministische Aktionen (80% Erfolgswahrscheinlichkeit) • Gast entscheidet sich zu 30 % nach dem 1.Schritt nach dem Einsteigen um. Seminar A, Neumann Gerhard
Ergebnisse: Fickle Taxi Task • MAXQ hat durch Struktur bessere Anfangsergebnisse • Ohne State-Abstraction sehr langsame Konvergenz. • Mit State-Abstraction konvergiert MAXQ-Q viel schneller als ein Flat-Lernalgorithmus, aber nur zu einer Hierarchisch Optimalen Policy • Mit Non-Hierarchical Execution konvergiert Algorithmus auch zur Optimalen Policy Seminar A, Neumann Gerhard
4. Teil • Hierarchical Multi-Agent Reinforcement Learning • (Mahedevan 2001) Seminar A, Neumann Gerhard
MA-Learning mit MAXQ • Koordination der Agenten meist nur auf den höheren Levels notwendig. • Erweiterung der C-Funktion um die Aktionen aller Agenten (gelten dann als zusätzliche States) Seminar A, Neumann Gerhard
Beispiel: AGV Scheduling Task • Automated Guided Vehicles für Lagerverwaltung • 4 Workstations • Verarbeiten 4 Verschiedene Materialien (Parts) in nicht-deterministischer Zeit • Müssen mit den entsprechenden Parts beliefert werden • Waren (Assemblies) müssen wieder abgeholt und dann ins Warehouse gebracht. • Warehouse • Materialen „erscheinen“ in nicht-determistischer Zeit • Materialen einladen, Waren ausladen Seminar A, Neumann Gerhard
MA-Lernen: AGV Scheduling Task • States: • Anzahl der Teile in Pickup und DropOff-Station (bis zu 4 Teile) • Enthält das Warehouse Teile jeder Art? (2^4) • 100 verschiedene Locations für AGV • 9 verschiedene Zustände des AGV‘s (trage part1, trage assembly1, … empty) • 100*4^8*9*2^4=2^30! Seminar A, Neumann Gerhard
AGV Scheduling Task: MaxQ Graph • State-Abstraction: • Für Höchstes Level: ca 2^13 States Seminar A, Neumann Gerhard