Reinforcment learning



Ähnliche Dokumente
Übersicht. 20. Verstärkungslernen

Reinforcement Learning

Intelligente Agenten

geben. Die Wahrscheinlichkeit von 100% ist hier demnach nur der Gehen wir einmal davon aus, dass die von uns angenommenen

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Corporate Actions in epoca

Primzahlen und RSA-Verschlüsselung

Anmerkungen zur Übergangsprüfung

OECD Programme for International Student Assessment PISA Lösungen der Beispielaufgaben aus dem Mathematiktest. Deutschland

Aufabe 7: Baum-Welch Algorithmus

Informatik-Sommercamp Mastermind mit dem Android SDK

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Print2CAD 2017, 8th Generation. Netzwerkversionen

Das große ElterngeldPlus 1x1. Alles über das ElterngeldPlus. Wer kann ElterngeldPlus beantragen? ElterngeldPlus verstehen ein paar einleitende Fakten

Kapiteltests zum Leitprogramm Binäre Suchbäume

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Konzepte der Informatik

Monte Carlo Methoden

Guten Morgen und Willkommen zur Saalübung!

MORE Profile. Pass- und Lizenzverwaltungssystem. Stand: MORE Projects GmbH

Konfiguration des ewon GSM Modems Kurzbeschreibung zum Aufbau einer GSM Verbindung

Übungen zur Softwaretechnik

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Erweiterung der Aufgabe. Die Notenberechnung soll nicht nur für einen Schüler, sondern für bis zu 35 Schüler gehen:

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Orderarten im Wertpapierhandel

Grundlagen der Theoretischen Informatik, SoSe 2008

Seite 1 von 14. Cookie-Einstellungen verschiedener Browser

Welche Unterschiede gibt es zwischen einem CAPAund einem Audiometrie- Test?

R ist freie Software und kann von der Website.

Semestralklausur zur Vorlesung. Web Mining. Prof. J. Fürnkranz Technische Universität Darmstadt Sommersemester 2004 Termin:

QuickInfo Dienstplanerstellungund Dienstplanänderung. Erstellung eines Dienstplan bzw. Arbeitszeitmodell

Software-Engineering SS03. Zustandsautomat

Pflichtenheft Version 1.0. Mäxchen/Meiern iphone App

Unterrichtsmaterialien in digitaler und in gedruckter Form. Auszug aus: Übungsbuch für den Grundkurs mit Tipps und Lösungen: Analysis

Quadratische Gleichungen

Nicht über uns ohne uns

Überblick. Lineares Suchen

Agile Vorgehensmodelle in der Softwareentwicklung: Scrum

Lichtbrechung an Linsen

Programmierkurs Java

Professionelle Seminare im Bereich MS-Office

Abituraufgabe zur Stochastik, Hessen 2009, Grundkurs (TR)

Folgende Einstellungen sind notwendig, damit die Kommunikation zwischen Server und Client funktioniert:

Manager. von Peter Pfeifer, Waltraud Pfeifer, Burkhard Münchhagen. Spielanleitung

Ohne Fehler geht es nicht Doch wie viele Fehler sind erlaubt?


W-Rechnung und Statistik für Ingenieure Übung 11

How to do? Projekte - Zeiterfassung

Software Engineering. Sommersemester 2012, Dr. Andreas Metzger

Das RSA-Verschlüsselungsverfahren 1 Christian Vollmer

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Schritt für Schritt zur Krankenstandsstatistik

4. Lernen von Entscheidungsbäumen. Klassifikation mit Entscheidungsbäumen. Entscheidungsbaum

Repetitionsaufgaben Wurzelgleichungen

V 2 B, C, D Drinks. Möglicher Lösungsweg a) Gleichungssystem: 300x y = x + 500y = 597,5 2x3 Matrix: Energydrink 0,7 Mineralwasser 0,775,

Inventur. Bemerkung. / Inventur

Freigabemitteilung Nr. 39. Neue Funktionen adresse zurücksetzen / ändern Kennung ändern Anlegen von OCS (elektr. Postfach) Mailbenutzern

tentoinfinity Apps 1.0 EINFÜHRUNG

Zwischenablage (Bilder, Texte,...)

Eine Logikschaltung zur Addition zweier Zahlen

Algorithmen und Datenstrukturen

STABILE UND ROBUSTE HANDELSSYSTEMENTWICKLUNG MIT METATRADER

Die Invaliden-Versicherung ändert sich

WinWerk. Prozess 6a Rabatt gemäss Vorjahresverbrauch. KMU Ratgeber AG. Inhaltsverzeichnis. Im Ifang Effretikon

Constraint-Algorithmen in Kürze - Mit der Lösung zur Path-Consistency-Aufgabe 9

Additional Cycle Index (ACIX) Thomas Theuerzeit

Berechnung der Erhöhung der Durchschnittsprämien

Übersicht U7-U10 Turniere in Fußball Online

Suchmaschinen. Universität Augsburg, Institut für Informatik SS 2014 Prof. Dr. W. Kießling 23. Mai 2014 Dr. M. Endres, F. Wenzel Lösungsblatt 6

Kleines Handbuch zur Fotogalerie der Pixel AG

XONTRO Newsletter. Makler. Nr. 16

Eine Bürokratiekostenfolgenabschätzung zum zweiten Gesetz für moderne Dienstleistungen am Arbeitsmarkt im Hinblick auf die Einführung einer Gleitzone

Anlegen eines DLRG Accounts

Leitfaden zur ersten Nutzung der R FOM Portable-Version für Windows (Version 1.0)

Zeichen bei Zahlen entschlüsseln

LU-Zerlegung. Zusätze zum Gelben Rechenbuch. Peter Furlan. Verlag Martina Furlan. Inhaltsverzeichnis. 1 Definitionen.

Benutzerhandbuch - Elterliche Kontrolle

Fibonacci Retracements und Extensions im Trading

Wasserzeichen mit Paint-Shop-Pro 9 (geht auch mit den anderen Versionen. Allerdings könnten die Bezeichnungen und Ansichten etwas anders sein)

Ordner Berechtigung vergeben Zugriffsrechte unter Windows einrichten

Informationsblatt Induktionsbeweis

Wichtig ist die Originalsatzung. Nur was in der Originalsatzung steht, gilt. Denn nur die Originalsatzung wurde vom Gericht geprüft.

Aufgabe 1 Berechne den Gesamtwiderstand dieses einfachen Netzwerkes. Lösung Innerhalb dieser Schaltung sind alle Widerstände in Reihe geschaltet.

CNAME-Record Verknüpfung einer Subdomain mit einer anderen Subdomain. Ein Alias für einen Domainnamen.

Lineare Gleichungssysteme

Angebote der Landesregierung zur großzügigen Bewilligung von Teilzeitbeschäftigung und Beurlaubung ohne Bezüge für die Landesbediensteten 3.

Netzwerkversion PVG.view

Ein neues System für die Allokation von Spenderlungen. LAS Information für Patienten in Deutschland

Clients in einer Windows Domäne für WSUS konfigurieren

Eva Douma: Die Vorteile und Nachteile der Ökonomisierung in der Sozialen Arbeit

Der große VideoClip- Wettbewerb von Media Markt.

Das Leitbild vom Verein WIR

1. Einführung. 2. Die Abschlagsdefinition

Anleitung zur Anmeldung beim EPA zur Nutzung von OPS 3.1

Thermodynamik. Basics. Dietmar Pflumm: KSR/MSE. April 2008

Zahlenwinkel: Forscherkarte 1. alleine. Zahlenwinkel: Forschertipp 1

(1) Problemstellung. (2) Kalman Filter

Transkript:

Author: Alexander Camek Betreuer: Prof. Kramer 03.02.2004

Learning Inhalt Einführung in den Bereich Learning Learning Einführung in Generalisierung in Militärische Anwendungen Roboterkontrolle Schach Backgammon

Learning Einführung in den Bereich Learning Was heißt eigentlich Learning? Was versteht man darunter? Definition Lernen bedeutet sich besser zu verhalten auf Grund von Erfahrungen Unterteilung: supervised learning reinforcment learning

Inhalt Einführung in den Bereich Learning Learning Einführung in Generalisierung in Militärische Anwendungen Roboterkontrolle Schach Backgammon Einführung in Generalisierung in

Learning Einführung in Generalisierung in Grundidee ist die Belohnung oder Bestrafung für das erreichte Ziel. Egal, ob dies vom Lehrer oder vom Programm selbst kommt. Unterschied: Es gibt nur Belohnung oder Bestrafung Es wird NICHT gesagt, was schlecht war oder wie es besser gemacht werden könnte. Nachteil: Der Agent weiß nicht was er falsch gemacht hat!

Learning Einführung in Generalisierung in Folgende Aufgabenstellungen sind dabei zu beachten: Die Umgebung kann zugänglich oder unzugänglich sein: zugänglich: Zustände und Wahrnehmungen sind verknüpft unzugänglich: innere Zustände bilden Umgebung ab vorgegebenes Wissen über Umgebung und Ergebnisse oder Lernen eines Modells und zusätzlichem Wissen Belohnung für erreichte Ziele oder für irgendeinen Zustand Belohnungen: Teil der zu erfüllenden Aufgabe (z.b. Punkte im Tischtennis) Hilfestellungen für die Aufgabe (z.b. guter Zug ) Art des Lernens: passiv aktiv

Learning Einführung in Generalisierung in Der Agent lernt eine Nutzenfunktion von Zuständen. Benutzt diese, um mittels Aktionen seinen erwarteten Nutzen zu maximieren. Der Agent lernt eine action-value Funktion. Diese berechnet den erwarteten Nutzen einer Aktion in einem Zustand. (auch Q learning genannt) Vorteil: Nachteil: Kenntnisse nur über die erlaubten Bewegungen einfacheres Design nicht vorausschauend, Zielrichtung nicht bekannt Lernfähigkeit eingeschränkt

Einführung in Generalisierung in Geschieht durch das Generieren von Zustandsübergängen ähnlich wie beim Automaten. Modell: M ij, Wahrscheinlichkeit eines Zustandsübergangs von i nach j Ziel: Erhalt des erwarteten Nutzens in einem bestimmten Zustand Erhalt des Nutzen einer Trainingssequenz Definition: reward to go Die Summe der Belohnung von diesem Zustand bis zum Endzustand erwarteter Nutzen eines Zustandes = erwarteter reward to go dieses Zustandes

Einführung in Generalisierung in function PASSIVE-RL-AGENT(e) returns an action static: U, a table of utility estimates N, a table of frequencies for states M, a table of transition probabilities from state to state percepts, a percept sequence (initially empty) add e to percepts increment N[STATE[e]] U UPDATE(U, e, percepts, M, N) if TERMINAL?[e] then percepts the empty sequence return the action Observe

Einführung in Generalisierung in U UPDATE(U, e, percepts, M, N) Das Wichtigste bei ist der UPDATE Algorithmus 3 Mögliche Ansätze: Naiveransatz mittels LMS (least mean square) adaptive dynamic programming (ADP) temporal difference (TD)

Einführung in Generalisierung in Naiver Ansatz: Idee: beobachteter reward to go jedes Zustandes läßt sich auf den im Moment erwarteten reward to go direkt zurückschließen. Ziel: Ermittlung des beobachteten reward to go Ermittlung des geschätzten Nutzens LMS erzeugt einen Nutzenschätzer mit minimalen durchschnittlichen quadratischen Fehler in Bezug auf die beobachteten Daten. Reduzierung auf induktives Lernen

Einführung in Generalisierung in function LMS-UPDATE(U, e, percepts, M, N) returns an updated U if TERMINAL?[e] then reward-to-go 0 for each e i in percepts (starting at end) do reward-to-go reward-to-go + REWARD[e i] U[STATE[e i]] RUNNING-AVERAGE(U[STATE[e i]], reward-to-go, N[STATE[e i]]) end

Einführung in Generalisierung in Utility estimates 1 0.5 0-0.5-1 (4,3) (3,3) (2,3) (1,1) (3,1) (4,1) (4,2) 0 200 400 600 800 1000 Number of epochs RMS error in utility 0.6 0.5 0.4 0.3 0.2 0.1 0 0 200 400 600 800 1000 Number of epochs

Einführung in Generalisierung in Adaptive dynamic programming (ADP) Idee: Nutzen des Wissens über die Umgebung Nutzen eines Modells Unterschied: 1 p ~~ 0.9 NEW U =? OLD U 0.8 ~~ p ~~ 0.1 +1 bei LMS hätte NEW einen Nutzen von 1

Einführung in Generalisierung in Lösung: Speicherung der Übergangswahrscheinlichkeiten in Tabelle M ij Das Problem reduziert sich zu einem wohldefinierten sequentiellen Entscheidungsproblem, sobald alle Zustände und deren Belohnungen bekannt sind Nutzenberechnung: U(i) = R(i) + j M iju(j)

Einführung in Generalisierung in Temporal difference learning (TD) Idee: Lösung: U(i) = R(i) + j M iju(j) ohne dies für alle möglichen Zustände zu tun Nutzen der beobachteten Übergänge zur Wertanpassung der beobachteten Zustände Beipiel: Übergang i j U(i) = -0.5 und U(j) = +0.5 Verbesserung von U(i), so daß der Wert besser zum Nachfolger paßt U(i) U(i) + α(r(i) + U(j) U(i))

Einführung in Generalisierung in function TD-UPDATE(U, e, percepts, M, N) returns the utility table U if TERMINAL?[e] then U[STATE[e]] RUNNING-AVERAGE(U[STATE[e]], REWARD[e], N[STATE[e]]) else if percepts contains more than one element then e the penultimate element of percepts i, j STATE[e ], STATE[e] U[i] U[i] + (N[i])(REWARD[e ] + U[j] - U[i])

Einführung in Generalisierung in Utility estimates 1 0.5 0-0.5-1 (4,3) (3,3) (2,3) (1,1) (3,1) (4,1) (4,2) 0 200 400 600 800 1000 Number of epochs RMS error in utility 0.6 0.5 0.4 0.3 0.2 0.1 0 0 200 400 600 800 1000 Number of epochs

Einführung in Generalisierung in Unterschied: Modell wird angepaßt ADP-Ansatz funktioniert besser, da dieser auf dem gesamten Modellraum arbeitet Lösung für TD Nutzung: durchschnittliche Anpassung über eine große Menge von Zustandsübergängen, da Häufigkeiten jedes Nachfolgers nährungsweise proportional zu seiner Wahrscheinlichkeit ist Benutzung eines Umgebungsmodells zur Generierung von pseudo Experimenten TD ADP Nachteil: höherer Berechnungsaufwand

Einführung in Generalisierung in Anpassung des ADP Ansatzes: Approximation: Begrenzung der Anpassungsschritte Heuristic: prioritized sweeping prioritizied sweeping: Hinzufügen von Wissen über Vorgänger Priorisierung der wahrscheinlichsten Nachfolger Aktualisierung des Zustands mit höchster Priorität Ablauf: Step1 U old = U(i) Step2 U(i) = R(i) + j MijU(j) Step3 Zustandspriorität O Step4 = U old U(i) Step5 nutzen zur Prioritätsänderung bei Vorgänger approximierter ADP voller ADP Vorteil: keine aufwendigen Iterationen am Anfang

Einführung in Generalisierung in Unterschied: Welche Aktionen werden ausgeführt Was sind die Ergebnisse Wie wirkt das ganze auf die Belohnung Lösung zur Wandlung passiv in aktiv: Modell der Übergänge wird geändert. Zustand j wird aus i erreicht mittels Aktion a. kurz: M a ij Berücksichtigung der Wahlmöglichkeiten Ein rationaler Agent will grundsätzlich Nutzenmaximierung Deshalb: U(i) = R(i) + j M iju(j) U(i) = R(i) + max a j Ma ij U(j) Der Agent MUSZ in jedem Schritt eine Aktion ausführen

Einführung in Generalisierung in function ACTIVE-ADP-AGENT(e) returns an action static: U, a table of utility estimates M, a table of transition probabilities from state to state for each action R, a table of rewards for states percepts, a percept sequence (initially empty) last-action, the action just executed add e to percepts R[STATE[e]] REWARD[e] M UPDATE-ACTIVE-MODEL(M, percepts, last-action) U VALUE-ITERATION(U, M, R) if TERMINAL?[e] then percepts the empty sequence last-action PERFORMANCE-ELEMENT(e) return last-action

Einführung in Generalisierung in Änderungen in den bisherigen Algorithmen: ADP: Änderung des M ij -Modells zum Mij a-modell Hinzufügen einer dritten Dimension Änderung auch bei der UPDATE-Funktion TD: Das Modell ist dasselbe wie beim ADP UPDATE-Funktion muß NICHT geändert werden TD ADP, wenn die Anzahl der Trainingssäzte gegen gehen

Learning Einführung in Generalisierung in last action PRFORMANCE ELEMENT(e) Frage: Was soll als Ergebnis zurückgeliefert werden? Klar: Der Agent sollte die höchst nützlichste Aktion auswählen Aber: Was ist mit dem Lernen? Gedanken: Erhalt der Belohnung für den aktuellen Trainingssatz Ermöglichen des Lernens für den Erhalt zukünftiger Belohnungen Problem: Zwiespalt zwischen sofortigem Gewinn und dem Lernen Deshalb: Finden einse Mittelweges

Learning Einführung in Generalisierung in greedy Ansatz: Optimierung durch Auswahl von Aktionen mit nicht starkem negativen Einfluß wacky Ansatz: z.b. Boltzmann exploration Treffen der Auswahl mittels Zufall ER(a) = erwartete Belohnung bei Ausführung von Aktion a P(a) = Idee: eer(a)/t á A eer(á)/t Kombination aus beidem Änderung der Nutzenfunktion unerkundeter Zustand = hoher Nutzen

Learning Einführung in Generalisierung in U + (i) = optimisticher Schätzer N(a, i) = Anzahl, wie oft a in i ausgeführt wurde ( ) ADP mit Wertiteration: U + (i) R(i) + max a f j Ma ij U+ (j), N(a, i) f (u, n) = sfunktion, { R +, n < N e z.b. f (u, n) = U, sonst R + = optimistischer Schätzer für bestmöglichen Gewinn N e = fest, Grenze wie oft Aktions Zustandspaar ausprobiert wird.

Learning Einführung in Generalisierung in Utility estimates 2 1.5 1 0.5 (4,3) (3,3) 0 (2,3) (1,1) (3,1) -0.5 (4,1) (4,2) -1 0 20 40 60 80 100 Number of iterations RMS error, policy loss (exploratory policy) 1.4 1.2 1 0.8 0.6 0.4 0.2 RMS error Policy loss 0 0 20 40 60 80 100 Number of epochs

Einführung in Generalisierung in Definition: action value function Ordnet einem erwarteten Nutzen eine Durchführung von einer Aktion in einem Zustand zu. Q values, kurz: Q(a, i) Q values sind direkt mit Nutzenwerte verbunden: U(i) = max a Q(a, i) Wichtig: Genügen für Entscheidung ohne Modell Lernbar durch Belohnungsfeedback Bei Korrektheit muß folgendes gelten: Q(a, i) = r(i) + j Ma ij max á Q(á, i) Dies kann als Updatefunktion beim ADP benutzt werden.

Einführung in Generalisierung in Beim TD Q-learning gilt: Q(a, i) Q(a, i) + α(r(i) + maxá Q(á, j) Q(a, i)) SARSA Methode: Q(a, i) Q(a, i) + α(r(i) + Q(á, j) Q(a, i)) Unterschied: SARSA versucht den besten Q Value zu finden Q-learning lernt einen deterministischen optimalen Q Value

Einführung in Generalisierung in function Q-LEARNING-AGENT(e) returns an action static: Q, a table of action values N, a table of state-action frequencies a, the last action taken i, the previous state visited r, the reward received in state i j STATE[e] if i is non-null then N[a, i] N[a, i] + 1 Q[a, i] Q[a, i] + (r + max a Q[a, j] Q[a, i]) if TERMINAL?[e] then i null else i j r REWARD[e] a arg max a f (Q[a, j], N[a, j]) return a

Einführung in Generalisierung in Utility estimates 1 0.5 0-0.5-1 (4,3) (3,3) (2,3) (1,1) (3,1) (4,1) (4,2) 0 20 40 60 80 100 Number of iterations RMS error, policy loss (TD Q-learning) 1.4 1.2 1 0.8 0.6 0.4 0.2 RMS error Policy loss 0 0 20 40 60 80 100 Number of epochs

Einführung in Generalisierung in Generalisierung in Stand: Agent(U, M, R, Q) Nachteil: interne Darstellung mittels Tabellen explizite Darstellung einer Ausgabe für jedes Eingabetupel bei großen Zustandsmengen steigt die Zeit für die Konvergenz und der Iteration rapide Beispiel: Schach oder Backgammon besitzt 10 50 bis 10 120 Zustände

Einführung in Generalisierung in Generalisierung in implizite Darstellung Erlaubt die Berechnung der Ausgabe pro Eingabe Vorteil: z.b. Brettspiel: U(i) = w 1 f 1 (i) + w 2 f 2 (i) +... + w n f n (i) Reduzierung von 10 120 Werte auf n Gewichte (bei Schach 10 Gewichte) Kompression Rückschluß von besuchten Zuständen auf nicht besuchte Zustände input generalization Nachteil: Keine Funktion findbar, die der Nutzenfunktion ähnlich ist Größe des Suchraums = Lernzeit der Funktion

Einführung in Generalisierung in Generalisierung in Auswirkung auf die bisherigen Funktionen LMS: Ende jeder Trainingssquenz wird ein reward to go mit jedem besuchten Zustand verknüpft < Zustand, Belohnung > Verwendung des Paares als benanntes Beispiel für einen induktiven Lernalgorithmus Ergebniss ist eine Nutzenfunktion: U(i)

Einführung in Generalisierung in Generalisierung in TD: U- und/oder Q-Tabelle ersetzen durch implizite Darstellung Rückgabewert der Updatefunktion ist Beipiel für Lernalgorithmus gelernte Funktion wird beim nächsten Updatedurchlauf benutzt Lernalgorithmus ist inkrementell Lernfunktion nutzt einen Gewichtsvektor w Gewichte werden angepaßt, so daß zeitlicher Abstand zwischen Zustand und Nachfolger verringert wird neue Update Regel: w w + α[r + U w (i)] wu w (i) U w (i) = Nutzenfunktion ähnliche Funktion kann beim Q learning angewandt werden

Militärische Anwendungen Roboterkontrolle Schach Backgammon Inhalt Einführung in den Bereich Learning Learning Einführung in Generalisierung in Militärische Anwendungen Roboterkontrolle Schach Backgammon

Militärische Anwendungen Roboterkontrolle Schach Backgammon Militärbereich Simulation (z.b. Flugsimulationen) logistischen Planung Resourcenplanung Zeitplanung autonoumen Entscheidungen Zielsuche gegen reagierende Ziele Trajectionsoptimierung in wechselnden Umgebungen Sensorkontrolle und dynamische Resourcenbelegung automatische Entscheidungen schnelle Reaktion (z.b. elektronische Kriegsführung) low level Kontrolle (z.b. Kontrolle für Roboter mit Füssen)

Militärische Anwendungen Roboterkontrolle Schach Backgammon Roboterbereich Lernen des Balanzierens und der Koordination beim Laufen oder Jonglieren Roboterfußball (z.b. Clockwork Orange Team) Kartierung von Innenräumen und der Lokalisation

Militärische Anwendungen Roboterkontrolle Schach Backgammon Schach Die erste Anwendung von war das Schachprogramm von Arthur Samuel (1959;1967) Bestandteile des Programms: weighted linear function zur Positionsevaluierung Gewichte wurden angepaßt bis zu 16 Terme genutzt Unterschied: Anpassung der Gewichte mittels Unterschied zwischen aktuellem und gemerkten Wert Vorausschau im Suchbaum keine Benutzung von ermittelten Belohnungen (Aber: Voraussetzung, daß Gewichte immer positiv)

Militärische Anwendungen Roboterkontrolle Schach Backgammon Backgammon Neurogammon (Tesauro und Sejnowski, 1989) Neuronalesnetzwerk mit Q(a,i) Vorkenntnisse im Backgammonspiel mit bewerteten Zügen Gewann die Backgammon Olympiade 1989 Nachteil: sehr gute Spieler konnten es besiegen

Militärische Anwendungen Roboterkontrolle Schach Backgammon Backgammon TD Gammon (Tesauro, 1992) Algorithmus: Kombination aus TD(λ) und nichtlinearer Funktionsapproximation Problem: 30 Spielsteine und 24 Positionen (26 mit Rahmen und dem Außenbereich) 20 verschiedene Wege je nach Wurf Reaktion auf Gegner Spielbaum hat über 400 Verzweigungen und zu viele Zustände

Militärische Anwendungen Roboterkontrolle Schach Backgammon Backgammon Design: Belohnung nur am Ende des Spiels Neuronalesnetzwerk mit 198 Eingabeknoten und 40 80 versteckten Knoten Eingabe: Backgammonposition Ausgabe: Einschätzung der Position Jeder Punkt im Spielfeld wird dargestellt mittels 4 Eingabeknoten pro Farbe. kein Stein: alle 4 Knoten sind 0 ein Stein: 1.Knoten ist 1 zwei Steine: 1. und 2.Knoten ist 1 drei Steine: 1., 2. und 3.Knoten ist 1 vier Steine: 4.Knoten ist (n 3) 2 (if n > 3) mit n = Anzahl der Steine auf dem Punkt.

Militärische Anwendungen Roboterkontrolle Schach Backgammon Backgammon 4 weiße Knoten + 4 schwarze Knoten für 24 Positionen 192 Knoten + 2 Knoten für die Anzahl der Spielsteine auf dem Spielfeldrand (Knotenwert = n 2 ) + 2 Knoten für die Anzahl der entfernten Spielsteine (Knotenwert = n 15 ) + 2 Knoten für die Anzeige des aktuellen Zuges 198 Knoten

Militärische Anwendungen Roboterkontrolle Schach Backgammon Backgammon Berechnung im Neuronalen Netz: Zuerst werden die Eingaben mit ihren Gewichten multipliziert und dann bei den verdeckten Knoten aufsummiert. Ausgabe des verdeckten Knoten j h(j) ist eine nichtlinear Sigmoid Funktion: ) h(j) = σ( i w ijφ(i) = 1 1+e i w ij φ(i) mit φ(i) = Wert des i.eingabeknotens und w ij = Gewicht von Eingabe- zum verdeckten Knoten. Der Ausgabeknoten generiert die gewichtete Summe und schickt diese durch die selbe sigmoid Funktion. Einschätzung der Position

Militärische Anwendungen Roboterkontrolle Schach Backgammon Backgammon Lernen: Update Regel: θ = θ [ ] + α r + U(j) U(i) e e = λ e + θ U(i) θ = Vektor der Gewichte (zu Beginn randomisiert) e = Vector der Auswahlspuren für jede Komponente von θ TD Gammon lernte durch spielen mit sich selbst. Dabei wählte es Züge indem jeder der 20 Wege pro Wurf und die Ergebnisspositionen brücksichtigt wurden. Danach wurde der Zug mit dem höchsten Nutzen ausgewählt.

Militärische Anwendungen Roboterkontrolle Schach Backgammon Backgammon Netzgewichte wurden am Anfang zufällig gewählt. erste Spiele dauerten hunderte bis tausende Züge bis eine Seite durch Zufall gewann. Nach einem dutzend Spiele stieg die Performance rapide. TD Gammon besiegt somit Neurogammon. Spätere Versionen hatten eine zwei/drei schichtige Suchprozedur. Auswahl eines Zuges erfolgt durch Überlegung, welchen Zug Gegner spielen könnte.

Wegen seinem Potential zur Eleminierung von menschlichem Code bei Kontrollstrategien ist eine der wichtigsten Gebiete der machine learning Forschung. Starke Einsetzung im Bereich der autonomen Roboter. Problem: Erweiterung dieser Methoden unzugänglichen Umgebungen

Vielen Dank für Ihre Aufmerksamkeit!

Literaturhinweise Literaturhinweise Artificial Intelligence A Modern Approach Stuart Russel und Peter Norvig Sutton und Baro A Survey Kaelbling, Littman und Moore Online Fitted Geoffrey Gordon

Literaturhinweise Literaturhinweise with Perceptual Aliasing Loonie Chrisman Packet Routing in Dynamically Changing Networks Boyan und Littman Methods for Military Applications Malcom Strens A distributed dynamic world model for Robot soccer Frans Groen, Jeroen Roodhart und Joost Vunderink