Computational intelligence seminar a
Download
1 / 53

Computational Intelligence Seminar A - PowerPoint PPT Presentation


  • 117 Views
  • Uploaded on

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

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Computational Intelligence Seminar A' - butch


An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
Computational intelligence seminar a

Computational Intelligence Seminar A

Hierarchical Reinforcement Learning

Gerhard Neumann


Struktur des vortrags
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
    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
    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
    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 begriffe1
    Wiederholung: MDP‘s – wichtige Begriffe

    • Bellman-Gleichung

      • Optimale V bzw. Q Funktion:

    Seminar A, Neumann Gerhard


    Wiederholung td learning
    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
    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
    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
    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
    2.Teil

    • Einführung in Hierarchisches RI.

    Seminar A, Neumann Gerhard


    Einf hrung in hierarchisches ri
    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
    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
    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
    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
    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
    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
    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
    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 learning1
    Unterschiede zu Flat-Learning:

    • Semi-Markov Decision Processes (SMDP)

      • Neue V-Function

      • Bzw. Optimale V-Function

    Seminar A, Neumann Gerhard


    Unterschiede policies
    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
    3. Teil

    • MAXQ Learning

    Seminar A, Neumann Gerhard


    Maxq lernen
    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
    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
    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 zerlegung1
    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 zerlegung2
    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
    V-Funktion Zerlegung

    • =>Zerlegung der V-Funktion in additive Blöcke

    • Beispiel: Taxi Domain

    Seminar A, Neumann Gerhard


    V zerlegung f r taxi domain
    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
    Der MaxQ-0 Lernalgorithmus

    • Vernachlässigung der lokalen und der Pseudo Rewardfunktion->globale Rewardfunktion

    Seminar A, Neumann Gerhard


    Der maxq 0 lernalgorithmus1
    Der MaxQ-0 Lernalgorithmus

    • Update der C Funktion

      • Bzw.

  • Berechnung von :

    • Rechnerintensive Suche

  • Seminar A, Neumann Gerhard


    Der maxq 0 lernalgorithmus2
    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
    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
    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
    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
    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
    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
    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
    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
    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
    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-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
    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
    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 task1
    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
    4. Teil

    • Hierarchical Multi-Agent Reinforcement Learning

      • (Mahedevan 2001)

    Seminar A, Neumann Gerhard


    Ma learning mit maxq
    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
    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
    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
    AGV Scheduling Task: MaxQ Graph

    • State-Abstraction:

      • Für Höchstes Level: ca 2^13 States

    Seminar A, Neumann Gerhard


    Agv task ergebnisse
    AGV Task: Ergebnisse

    • Vergleich zu Single-Agent / Selfish Agents

    Seminar A, Neumann Gerhard


    Agv task ergebnisse1
    AGV Task: Ergebnisse

    • Vergleich zu weit gängigen Policies

    Seminar A, Neumann Gerhard


    Agv task ergebnisse2
    AGV Task: Ergebnisse

    • Koordination in den 2 höchsten Levels

    Seminar A, Neumann Gerhard