SlideShare a Scribd company logo
1 of 48
Download to read offline
CARL
            Vorstellung des
      VON
OSSIETZKY
            Roboterfußball-Teams
            TORF

            Johannes Diemke

            Vortrag im Rahmen der Projektgruppe
            Oldenburger Robot Soccer Team
            im Wintersemester 2009/2010
¨
Ubersicht



1 Motivation


2 Grundlagen


3 Vorarbeiten der PG TORF


4 Fazit




    Johannes Diemke         Teamvorstellung TORF   10. November 2009   2/48
Motivation


Zielsetzung der PG
   Verbesserung des bestehenden Roboterfußball-Teams TORF
         Umfassende Vorarbeiten
         Auszeichnung Beste PG des Jahres“
                     ”
   Teilnahme an den RoboCup German Open 2010

Voraussetzung
   Kenntnisse unterschiedlicher KI-Techniken
   Verst¨ndnis der vorhandenen Architektur und Funktionsweise
        a
         F¨higkeiten und Restriktionen erkennen
          a
         Verbesserungspotential erkennen




   Johannes Diemke            Teamvorstellung TORF   10. November 2009   3/48
Motivation


PG TORF - Das alte Team




(Quelle: Projektgruppe TORF)
     Johannes Diemke           Teamvorstellung TORF   10. November 2009   4/48
Vom Computerschach zum Roboterfußball


1950
   Claude E. Shannon schl¨gt Automaten vor der Menschen im Schach
                         a
   schl¨gt
       a
   Fortan Pr¨fstein f¨r neu entwickelte Verfahren
            u        u
   Entstehung leistungsf¨higer Spielstrategien und Suchverfahren
                        a
1995
   Computerschach war bereits kein Pr¨fstein mehr f¨r KI
                                     u             u
   Roboterfußball wird das neue Standardproblem
1996
   Deep Blue gewinnt gegen den Schachweltmeister Garri Kasparov



   Johannes Diemke         Teamvorstellung TORF      10. November 2009   5/48
Vom Computerschach zum Roboterfußball


IBMs Deep Blue vs. Kasparov




(Quellen: http://www.ibm.com/ & http://www.theinsider.com/)
     Johannes Diemke             Teamvorstellung TORF         10. November 2009   6/48
Roboterfußball


Besonderheiten des Roboterfußballs
   Herausforderung f¨r Robotik und KI
                    u
   V¨llig andere Aspekte als beim Computerschach
    o
          Dynamische Umgebung
          Unvollst¨ndige Informationen
                  a
          Echtzeitanforderungen
          Unvorhersehbare Ereignisse
          ...




    Johannes Diemke            Teamvorstellung TORF   10. November 2009   7/48
Roboterfußball


Weitere Vorteile des Roboterfußballs
   Popul¨re Sportart
        a
   Einfaches und bekanntes Regelwerk
   Leistungsf¨higkeit von Verfahren l¨sst sich einfach messen:
             a                       a
          Erzielte Tore
          Platzierung
   Evolution der Verfahren durch Wettk¨mpfe
                                      a
          RoboCup
          Federation of International Robot-Soccer Association (FIRA)




    Johannes Diemke            Teamvorstellung TORF        10. November 2009   8/48
RoboCup


Die internationale RoboCup-Initiative
   Veranstaltet seit 1997 den RoboCup
   Roboterfußball Weltmeisterschaft
   RoboCup German Open in Deutschland
   Verschiedene Ligen:
          2D Simulation / 3D Simulation
          Small Size
          Four Legged (Aibo) / Standard Platform League (Nao)
          Humanoid
          ...




    Johannes Diemke           Teamvorstellung TORF      10. November 2009   9/48
RoboCup


Zielsetzung der RoboCup-Initiative
     Bis zum Jahr 2050 den amtierenden menschlichen Weltmeister in
     einem gew¨hnlichen Fußballspiel besiegen
              o




(Quelle: http://www.welt.de/)
     Johannes Diemke            Teamvorstellung TORF   10. November 2009   10/48
RoboCup


Die 2D-Simulationsliga
    Gespielt wird auf RoboCup Soccer Simulator Server
          Spieler verbinden sich als Client
          ¨
          Ubernimmt vollst¨ndige Simulation
                           a
    Zwei Teams aus je 11 autonomen Spielern + Coach
    Jeder Spieler ist ein autonomer Software-Agent

Agenten nach Russell & Norvig
Definition
Als Agent kann alles angesehen werden, was seine Umwelt durch
Sensoren wahrnimmt und durch Effektoren beeinflusst.



    Johannes Diemke           Teamvorstellung TORF   10. November 2009   11/48
RoboCup


RoboCup Soccer Simulator
   Simulator ist gem¨ß Client-Server-Architektur ein Server
                    a
   Angebotener Dienst ist die Simulation:
         Verwaltung der Spieler und des Balls
         Simulation einfacher Physik
         Visuelle und auditive Wahrnehmung
         Simulation von Beschr¨nkungen (Verrauschen, partielle
                               a
         Beobachtbarkeit)
   Spieler, Coach und Trainer melden sich an
   Kommunikation uber S-Expressions
                  ¨
   Verwendet wird das UDP/IP-Protokoll




   Johannes Diemke            Teamvorstellung TORF       10. November 2009   12/48
Arbeitsumgebung


Klassifikation der Arbeitsumgebung
       Erfolgt nach PEAS-Beschreibung (Russell & Norvig)
       Akronym f¨r Performance, Environment, Actuators, Sensors
                 u
       Besteht aus:
             Beschreibung der Arbeitsumgebung
             Umgebungsklassifikation

Ziel
       Dient Ableitung erster Anforderungen an einen Software-Agenten




       Johannes Diemke           Teamvorstellung TORF   10. November 2009   13/48
Arbeitsumgebung


Beschreibung der Arbeitsumgebung

 Agententyp             Leistungsbe-       Umgebung              Aktuatoren            Sensoren
                        wertung
 Spieler                Stabilit¨t, Ge-
                                a          RoboCup               Spielerkom-           Sehen und
                        schwindigkeit,     Soccer Server         mandos (dash,         H¨ren
                                                                                        o
                        kongruentes                              turn, say, . . . )
                        Verhalten
 Trainer                Stabilit¨t, Ge-
                                a          RoboCup               change mode,          Spielfeld¨ber-
                                                                                                u
                        schwindigkeit      Soccer Server         move, start,          sicht
                                           (im Trainings-        say, . . .
                                           modus)
 Coach                  Stabilit¨t, Ge-
                                a          RoboCup               say, look, eyes,      Spielfeld¨ber-
                                                                                                u
                        schwindigkeit      Soccer Server         team names,           sicht
                                                                 ...



(Quelle: Abschlußbericht PG TORF)
      Johannes Diemke                     Teamvorstellung TORF                  10. November 2009       14/48
Arbeitsumgebung


Umgebungsklassifikation
   Anhand folgender Eigenschaften:
         Vollst¨ndig vs. teilweise beobachtbar
               a
         Deterministisch vs. stochastisch
         Episodisch vs. sequentiell
         Statisch vs. dynamisch
         Diskret vs. stetig
         Einzelagenten vs. Multiagenten-Umgebung

   Erste Schl¨sse bzgl. der Anforderungen
             u
         Verwaltung eines inneren Zustandes (Weltmodell)
         Keine absoluten Aussagen uber Folgezust¨nde (Wahrscheinlichkeiten)
                                   ¨            a
         Vorausdenken
         Ver¨nderung der Umgebung w¨hrend der Entscheidungsfindung
            a                         a


   Johannes Diemke            Teamvorstellung TORF      10. November 2009   15/48
Agenten


Spieler als modellbasierter Reflex-Agent
      Teilweise Beobachtbarkeit macht Verwaltung eines Zustandes
      notwendig




(Quelle: Russell & Norvig)
      Johannes Diemke        Teamvorstellung TORF    10. November 2009   16/48
Vorarbeiten der PG TORF


Komponentenmodell des Spieler-Agenten




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   17/48
Vorarbeiten der PG TORF


Das Weltmodell




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   18/48
Das Weltmodell


Zweck
   Grundlage des Entscheidungsprozesses
   Besitzt Ist-Zustand und Dynamikwissen
   M¨glichst korrekte Abbildung der Arbeitsumgebung
    o
   Umgang mit verrauschten Daten
   Erfassung von:
         Objekten (Spieler, Ball, Flaggen, . . . )
         Punktestand und Spielphase




   Johannes Diemke               Teamvorstellung TORF   10. November 2009   19/48
Das Weltmodell


Bestimmung der eigenen Position
     Durch Winkel und Entfernungen der Flaggen
     Unterscheidung zweier F¨lle (a) und (b)
                            a




                  (a) Zwei Flaggen.                     (b) Eine Flagge.


(Quelle: Abschlußbericht PG TORF)


     Johannes Diemke                  Teamvorstellung TORF             10. November 2009   20/48
Das Weltmodell


Bestimmung der eigenen Position (Forts.)
     Berechnete Positionen sind verf¨lscht
                                    a
     Sensordaten werden k¨nstlich verrauscht
                          u




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   21/48
Das Weltmodell


Bestimmung der eigenen Position (Forts.)
   Verringerung der Verf¨lschung:
                        a
          Bildung von Flaggenpaaren
          Sch¨tzung durch das [sic] Kalman-Filter
              a
   Sind keine Flaggen sichtbar:
          Bestimmung uber Dynamik des Kalman-Filters
                     ¨




    Johannes Diemke            Teamvorstellung TORF    10. November 2009   22/48
Das Weltmodell


Grafische Darstellung des Weltmodells




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   23/48
Vorarbeiten der PG TORF


Der Planer




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   24/48
Der Planer


Zweck
   Umsetzung des Entscheidungsprozesses
   Festlegen der Strategie und das Starten der Skills
   Hierarchischer Planer
   Ben¨tigt Planerdatenbank mit Dom¨nenwissen
      o                            a
   Zugriff auf das Weltmodell uber Literale
                             ¨
   Unterst¨tzung von Team-Skills
          u




   Johannes Diemke          Teamvorstellung TORF        10. November 2009   25/48
Der Planer


Die Planer-Architektur
            Messages
                                   Com

            start Skill                                     state (via literals)
                               Planner
                                                                                   Worldmodel
                                           push /
                          status                             select method
                                           pop

                                                                                               play soccer



                               free kick                                                                     offensiv


                                                                                   defensive                       normal play



                              set piece
                                                                                    Database
                              offensiv

                             play soccer            Stack



(Quelle: Abschlußbericht PG TORF)

     Johannes Diemke                            Teamvorstellung TORF               10. November 2009                             26/48
Der Planer


Auschnitt der Planerdatenbank

                                                   BallPossessionHandling


                                                    NearestToBall           Negation of (NearestToBall)



                kick2GoalComplex           NearestToBall     Do Positioning, Offensive        lookAround        Negation of (NearestToBall)
                                                              DoPositioningSkillParam    LookAroundSkillParam

                           NearestToBall


          intercept             kickToGoal            NearestToBall
     InterceptSkillParam   Kick2PosSkillParam




(Quelle: Abschlußbericht PG TORF)

     Johannes Diemke                                        Teamvorstellung TORF                                10. November 2009             27/48
Vorarbeiten der PG TORF


Skills




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   28/48
Skills


Zweck
   Realisierung grundlegender Fertigkeiten
   Verwaltung durch Skill-Manager
   Unterscheidung von zwei Arten
          Primitive Skills (kapseln S-Expressions)
          Komplexe Skills
   H¨ndische Implementierung nicht trivial
    a
   Einsatz von Lernverfahren bietet sich an




    Johannes Diemke             Teamvorstellung TORF   10. November 2009   29/48
Skills


Hierarchische Struktur der Skills
                 package Data[     PlayerSkills]


                   Player
                   Skills

                       receivePass            dribble            doPass              doPositioning
                                                                                                                          doKickOffFormatio




                                                           CatchComplex
                                                                                           findObjec
                                 kick2Pos




                       stopBall                                           ProbabilisticGoalie
                                                                                                             TurnHeadComplex
                                                   intercept




                                                      go2Pos
                                                                                                     lookAround




                                                           followPath      goalie



                                                                                                                           teleport2Pos




                         say        kick            dash       catch      turnBody         changeView         turnHead         move




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                                               Teamvorstellung TORF                                               10. November 2009   30/48
Skills


Aktivit¨tsdiagramm f¨r den Go2Pos-Skill
       a            u




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   31/48
Vorarbeiten der PG TORF


Kommunikation




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   32/48
Kommunikation


Zweck
   Absprachen zwischen Spieler-Agenten (Taktiken auf Teamebene)
   Beispiel: Passspiel
   Spieler-Agent empf¨ngt nicht jede Nachricht:
                       a
         Maximale Entfernung
         eingeschr¨nkte Nachrichtenl¨nge
                  a                  a
         Vorgegebenes Alphabet Σ
         Erste Nachricht je Simulations-Zyklus




   Johannes Diemke            Teamvorstellung TORF   10. November 2009   33/48
Kommunikation


Implementiertes Verfahren
   Einteilung in Cluster mit je einem Router
   Verwendung von Zeitmultiplexing (Vermeiden von Kollisionen)

Problem
   Derzeit nicht vollst¨ndig funktionsf¨hig
                       a               a

Aufgabe
   Protokoll auf Korrektheit pr¨fen
                               u
   Gegebenenfalls Alternativen entwerfen




   Johannes Diemke          Teamvorstellung TORF   10. November 2009   34/48
Trainer- und Coach-Framework


Aufbau
   Trainer und Coach sind eine Applikation
   Gemeinsamkeiten:
          Message-Broker
          Weltmodell
          Controller
Trainer
   Nach Sternarchitektur aufgebaut
   Trainiert Spieler
   Austauschbare Lerntechniken (KI-Module)
   Laden von Spielsituationen im XML-Format



    Johannes Diemke        Teamvorstellung TORF   10. November 2009   35/48
Trainer- und Coach-Framework


Sternarchitektur des Trainers




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   36/48
Trainer- und Coach-Framework


Gemeinsame Architektur von Trainer und Coach
                                          Architektur des Trainer-Agenten
                                                                           BasicCoach

                          RCSS-Server                        WorldModel
                                                                                        Controller
                                                               Message-
                                                                Broker



                                             Trainer-Agent                                          Coach-Agent

                                   Learning-
                                                         XML-Situation                  Player-Types                   …
                                   Technique




                                             Spieler-Agent
                                                Trainee/LT                                                        Datenfluss
                                                                                                                  Vererbung
(Quelle: Abschlußbericht PG TORF)
                -- Projektgruppe TORF – Universität Oldenburg • Fakultät II • Department für Informatik • Abteilung LLS     /

          Johannes Diemke                                       Teamvorstellung TORF                                   10. November 2009    37/48
Trainer- und Coach-Framework
            activity Trainer[   Trainer ]


Ablauf einer Trainingssession und des Trainings
                                                                                                                           Bei LT
                                 MB verbinden               WM verbinden              LT laden          init LT
                                                                                                                         registrieren


                             Clients                  Training        Genug Clients                     Client           Auf Clients
                         verabschieden               durchführen                                      aufnehmen           lauschen




                         Lernergebnisse                                                    zu wenig Clients
                           speichern




                          LT abmelden


                           aufräumen


     activity Trainer[      Training durchführen ]




                                 Lerntechnik                Instruktionen                   Spieler                Ergebnisse von
                                   starten                an Spieler senden               beobachten              Spieler empfangen


                                                         Training nicht beendet


                                  Training beendet                                                                   Ergebnisse
                                                                                                                     auswerten
(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                                           Teamvorstellung TORF                                   10. November 2009   38/48
Trainer- und Coach-Framework


Coach
   Vergibt momentan nur Spielertypen
         18 zuf¨llig generierte Spielertypen
               a
         Werden nach Zufallsprinzip vom RCSS zugewiesen
         Coach kann diese neu zuweisen
         Data-Mining f¨r optimale Heuristik (LogfileAnalysis)
                        u




   Johannes Diemke            Teamvorstellung TORF       10. November 2009   39/48
Hilfsprogramme


TORF Strategy Tool
   Manuelle Erstellung der Planderdatenbank zu aufw¨ndig
                                                   a
          Boost-Serialisierung (Metadaten)
   Umfang des Dom¨nenwissens entscheidend
                 a

Intention
   Komfortable Erstellung von Planerdatenbanken
   Visuelle Darstellung der Daten
   Schnelle Entwicklung mittels der NetBeans Platform 6.1
          Anbindung an Planer uber das JNI mittels SWIG
                              ¨




    Johannes Diemke            Teamvorstellung TORF       10. November 2009   40/48
Hilfsprogramme


Hauptfenster des TORF Strategy Tool




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   41/48
Hilfsprogramme


Probleme
   Interoperabilit¨t zwischen Java und C++
                  a
   Aus der Verwendung von SWIG resultieren einige Probleme:
         Verlust von Polymorphie
         Speicherverwaltung (keine Destruktion auf C++-Seite)
         ...

M¨gliche Probleml¨sung
 o               o
   Entwurfsentscheidungen uberdenken
                          ¨




   Johannes Diemke            Teamvorstellung TORF      10. November 2009   42/48
Hilfsprogramme


LogfileAnalysis
   Sammlung von Python-Skripten
   Auswertung von Logdateien
          Enthalten kompletten Spielverlauf
   Offizielle Spiele ab dem Jahr 1997 verf¨gbar
                                        u
   Pr¨destiniert f¨r Analysezwecke mittels Data-Mining
     a            u




    Johannes Diemke            Teamvorstellung TORF   10. November 2009   43/48
Hilfsprogramme


Feldabdeckungsanalyse




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   44/48
Hilfsprogramme


Torschussanalyse




(Quelle: Abschlußbericht PG TORF)
     Johannes Diemke                Teamvorstellung TORF   10. November 2009   45/48
Vorarbeiten der PG TORF


Fazit
    Umfangreiche Vorarbeiten der PG TORF
    Handlungsumgebung sehr komplex
    Grobarchitektur ist gute Grundlage f¨r Erweiterungen
                                        u
    Leistungspotential des Planers besser aussch¨pfen
                                                o
          Fehlendes Dom¨nenwissen
                       a




    Johannes Diemke          Teamvorstellung TORF    10. November 2009   46/48
Vorarbeiten der PG TORF


Fazit (Forts.)
    Weitere Skills implementieren
          Nutzen von Lernverfahren
    Fertigstellung der Kommunikations-Komponente
    Erweitern des Trainer und Coach-Frameworks:
          KI-Module
          Umfangreichere Unterst¨tzung durch den Coach
                                u
    TORF Strategy Tool
          Entwurfsentscheidungen uberdenken
                                 ¨
          Probleme beseitigen




    Johannes Diemke           Teamvorstellung TORF       10. November 2009   47/48
Literatur


 Universit¨t Oldenburg, Projektgruppe TORF
          a
 Team Oldenburger Robo-Fußball – Abschlussbericht
 https://torf.uni-oldenburg.de/
 The RoboCup Federation
 RoboCup
 http://www.robocup.org/
 Stuart Russell und Peter Norvig
 K¨nstliche Intelligenz: Ein moderner Ansatz
  u
 http://aima.cs.berkeley.edu/
 IBM Corporation
 Deep Blue
 http://www.ibm.com/

   Johannes Diemke          Teamvorstellung TORF   10. November 2009   48/48

More Related Content

More from Johannes Diemke

2010-JOGL-08-Torus-Knoten
2010-JOGL-08-Torus-Knoten2010-JOGL-08-Torus-Knoten
2010-JOGL-08-Torus-KnotenJohannes Diemke
 
2010-JOGL-07-Hinweise-Uebungsblatt05
2010-JOGL-07-Hinweise-Uebungsblatt052010-JOGL-07-Hinweise-Uebungsblatt05
2010-JOGL-07-Hinweise-Uebungsblatt05Johannes Diemke
 
2010-JOGL-06-Licht-und-Material
2010-JOGL-06-Licht-und-Material2010-JOGL-06-Licht-und-Material
2010-JOGL-06-Licht-und-MaterialJohannes Diemke
 
2010-JOGL-05-Transformationen
2010-JOGL-05-Transformationen2010-JOGL-05-Transformationen
2010-JOGL-05-TransformationenJohannes Diemke
 
2010-JOGL-04-Geometrische-Primitive-und-Hidden-Surface-Removal
2010-JOGL-04-Geometrische-Primitive-und-Hidden-Surface-Removal2010-JOGL-04-Geometrische-Primitive-und-Hidden-Surface-Removal
2010-JOGL-04-Geometrische-Primitive-und-Hidden-Surface-RemovalJohannes Diemke
 
2010-JOGL-02-Einfuehrung
2010-JOGL-02-Einfuehrung2010-JOGL-02-Einfuehrung
2010-JOGL-02-EinfuehrungJohannes Diemke
 
2010-JOGL-01-Organisation
2010-JOGL-01-Organisation2010-JOGL-01-Organisation
2010-JOGL-01-OrganisationJohannes Diemke
 
Einführung in minimale Spannbäume und deren Berechnung (Vortrag)
Einführung in minimale Spannbäume und deren Berechnung (Vortrag)Einführung in minimale Spannbäume und deren Berechnung (Vortrag)
Einführung in minimale Spannbäume und deren Berechnung (Vortrag)Johannes Diemke
 
Einführung in minimale Spannbäume und deren Berechnung (Ausarbeitung)
Einführung in minimale Spannbäume und deren Berechnung (Ausarbeitung)Einführung in minimale Spannbäume und deren Berechnung (Ausarbeitung)
Einführung in minimale Spannbäume und deren Berechnung (Ausarbeitung)Johannes Diemke
 
Software Produktlinien: Einführung und Überblick (Vortrag)
Software Produktlinien: Einführung und Überblick (Vortrag)Software Produktlinien: Einführung und Überblick (Vortrag)
Software Produktlinien: Einführung und Überblick (Vortrag)Johannes Diemke
 
Theory Exploration (Ausarbeitung)
Theory Exploration (Ausarbeitung)Theory Exploration (Ausarbeitung)
Theory Exploration (Ausarbeitung)Johannes Diemke
 
Theory Exploration (Vortrag)
Theory Exploration (Vortrag)Theory Exploration (Vortrag)
Theory Exploration (Vortrag)Johannes Diemke
 
Domainvergabe durch die DENIC (Vortrag)
Domainvergabe durch die DENIC (Vortrag)Domainvergabe durch die DENIC (Vortrag)
Domainvergabe durch die DENIC (Vortrag)Johannes Diemke
 
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010
Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010Johannes Diemke
 
Vorstellung des Roboterfußball-Teams TORF (Ausarbeitung)
Vorstellung des Roboterfußball-Teams TORF (Ausarbeitung)Vorstellung des Roboterfußball-Teams TORF (Ausarbeitung)
Vorstellung des Roboterfußball-Teams TORF (Ausarbeitung)Johannes Diemke
 

More from Johannes Diemke (16)

2010-JOGL-08-Torus-Knoten
2010-JOGL-08-Torus-Knoten2010-JOGL-08-Torus-Knoten
2010-JOGL-08-Torus-Knoten
 
2010-JOGL-07-Hinweise-Uebungsblatt05
2010-JOGL-07-Hinweise-Uebungsblatt052010-JOGL-07-Hinweise-Uebungsblatt05
2010-JOGL-07-Hinweise-Uebungsblatt05
 
2010-JOGL-06-Licht-und-Material
2010-JOGL-06-Licht-und-Material2010-JOGL-06-Licht-und-Material
2010-JOGL-06-Licht-und-Material
 
2010-JOGL-05-Transformationen
2010-JOGL-05-Transformationen2010-JOGL-05-Transformationen
2010-JOGL-05-Transformationen
 
2010-JOGL-04-Geometrische-Primitive-und-Hidden-Surface-Removal
2010-JOGL-04-Geometrische-Primitive-und-Hidden-Surface-Removal2010-JOGL-04-Geometrische-Primitive-und-Hidden-Surface-Removal
2010-JOGL-04-Geometrische-Primitive-und-Hidden-Surface-Removal
 
2010-JOGL-02-Einfuehrung
2010-JOGL-02-Einfuehrung2010-JOGL-02-Einfuehrung
2010-JOGL-02-Einfuehrung
 
2010-JOGL-01-Organisation
2010-JOGL-01-Organisation2010-JOGL-01-Organisation
2010-JOGL-01-Organisation
 
Boost C++ Libraries
Boost C++ LibrariesBoost C++ Libraries
Boost C++ Libraries
 
Einführung in minimale Spannbäume und deren Berechnung (Vortrag)
Einführung in minimale Spannbäume und deren Berechnung (Vortrag)Einführung in minimale Spannbäume und deren Berechnung (Vortrag)
Einführung in minimale Spannbäume und deren Berechnung (Vortrag)
 
Einführung in minimale Spannbäume und deren Berechnung (Ausarbeitung)
Einführung in minimale Spannbäume und deren Berechnung (Ausarbeitung)Einführung in minimale Spannbäume und deren Berechnung (Ausarbeitung)
Einführung in minimale Spannbäume und deren Berechnung (Ausarbeitung)
 
Software Produktlinien: Einführung und Überblick (Vortrag)
Software Produktlinien: Einführung und Überblick (Vortrag)Software Produktlinien: Einführung und Überblick (Vortrag)
Software Produktlinien: Einführung und Überblick (Vortrag)
 
Theory Exploration (Ausarbeitung)
Theory Exploration (Ausarbeitung)Theory Exploration (Ausarbeitung)
Theory Exploration (Ausarbeitung)
 
Theory Exploration (Vortrag)
Theory Exploration (Vortrag)Theory Exploration (Vortrag)
Theory Exploration (Vortrag)
 
Domainvergabe durch die DENIC (Vortrag)
Domainvergabe durch die DENIC (Vortrag)Domainvergabe durch die DENIC (Vortrag)
Domainvergabe durch die DENIC (Vortrag)
 
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010
Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010Team Oldenburger Robo-Fußball – Abschlussbericht  der Projektgruppe  2010
Team Oldenburger Robo-Fußball – Abschlussbericht der Projektgruppe 2010
 
Vorstellung des Roboterfußball-Teams TORF (Ausarbeitung)
Vorstellung des Roboterfußball-Teams TORF (Ausarbeitung)Vorstellung des Roboterfußball-Teams TORF (Ausarbeitung)
Vorstellung des Roboterfußball-Teams TORF (Ausarbeitung)
 

Vorstellung des Roboterfußball-Teams TORF (Vortrag)

  • 1. CARL Vorstellung des VON OSSIETZKY Roboterfußball-Teams TORF Johannes Diemke Vortrag im Rahmen der Projektgruppe Oldenburger Robot Soccer Team im Wintersemester 2009/2010
  • 2. ¨ Ubersicht 1 Motivation 2 Grundlagen 3 Vorarbeiten der PG TORF 4 Fazit Johannes Diemke Teamvorstellung TORF 10. November 2009 2/48
  • 3. Motivation Zielsetzung der PG Verbesserung des bestehenden Roboterfußball-Teams TORF Umfassende Vorarbeiten Auszeichnung Beste PG des Jahres“ ” Teilnahme an den RoboCup German Open 2010 Voraussetzung Kenntnisse unterschiedlicher KI-Techniken Verst¨ndnis der vorhandenen Architektur und Funktionsweise a F¨higkeiten und Restriktionen erkennen a Verbesserungspotential erkennen Johannes Diemke Teamvorstellung TORF 10. November 2009 3/48
  • 4. Motivation PG TORF - Das alte Team (Quelle: Projektgruppe TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 4/48
  • 5. Vom Computerschach zum Roboterfußball 1950 Claude E. Shannon schl¨gt Automaten vor der Menschen im Schach a schl¨gt a Fortan Pr¨fstein f¨r neu entwickelte Verfahren u u Entstehung leistungsf¨higer Spielstrategien und Suchverfahren a 1995 Computerschach war bereits kein Pr¨fstein mehr f¨r KI u u Roboterfußball wird das neue Standardproblem 1996 Deep Blue gewinnt gegen den Schachweltmeister Garri Kasparov Johannes Diemke Teamvorstellung TORF 10. November 2009 5/48
  • 6. Vom Computerschach zum Roboterfußball IBMs Deep Blue vs. Kasparov (Quellen: http://www.ibm.com/ & http://www.theinsider.com/) Johannes Diemke Teamvorstellung TORF 10. November 2009 6/48
  • 7. Roboterfußball Besonderheiten des Roboterfußballs Herausforderung f¨r Robotik und KI u V¨llig andere Aspekte als beim Computerschach o Dynamische Umgebung Unvollst¨ndige Informationen a Echtzeitanforderungen Unvorhersehbare Ereignisse ... Johannes Diemke Teamvorstellung TORF 10. November 2009 7/48
  • 8. Roboterfußball Weitere Vorteile des Roboterfußballs Popul¨re Sportart a Einfaches und bekanntes Regelwerk Leistungsf¨higkeit von Verfahren l¨sst sich einfach messen: a a Erzielte Tore Platzierung Evolution der Verfahren durch Wettk¨mpfe a RoboCup Federation of International Robot-Soccer Association (FIRA) Johannes Diemke Teamvorstellung TORF 10. November 2009 8/48
  • 9. RoboCup Die internationale RoboCup-Initiative Veranstaltet seit 1997 den RoboCup Roboterfußball Weltmeisterschaft RoboCup German Open in Deutschland Verschiedene Ligen: 2D Simulation / 3D Simulation Small Size Four Legged (Aibo) / Standard Platform League (Nao) Humanoid ... Johannes Diemke Teamvorstellung TORF 10. November 2009 9/48
  • 10. RoboCup Zielsetzung der RoboCup-Initiative Bis zum Jahr 2050 den amtierenden menschlichen Weltmeister in einem gew¨hnlichen Fußballspiel besiegen o (Quelle: http://www.welt.de/) Johannes Diemke Teamvorstellung TORF 10. November 2009 10/48
  • 11. RoboCup Die 2D-Simulationsliga Gespielt wird auf RoboCup Soccer Simulator Server Spieler verbinden sich als Client ¨ Ubernimmt vollst¨ndige Simulation a Zwei Teams aus je 11 autonomen Spielern + Coach Jeder Spieler ist ein autonomer Software-Agent Agenten nach Russell & Norvig Definition Als Agent kann alles angesehen werden, was seine Umwelt durch Sensoren wahrnimmt und durch Effektoren beeinflusst. Johannes Diemke Teamvorstellung TORF 10. November 2009 11/48
  • 12. RoboCup RoboCup Soccer Simulator Simulator ist gem¨ß Client-Server-Architektur ein Server a Angebotener Dienst ist die Simulation: Verwaltung der Spieler und des Balls Simulation einfacher Physik Visuelle und auditive Wahrnehmung Simulation von Beschr¨nkungen (Verrauschen, partielle a Beobachtbarkeit) Spieler, Coach und Trainer melden sich an Kommunikation uber S-Expressions ¨ Verwendet wird das UDP/IP-Protokoll Johannes Diemke Teamvorstellung TORF 10. November 2009 12/48
  • 13. Arbeitsumgebung Klassifikation der Arbeitsumgebung Erfolgt nach PEAS-Beschreibung (Russell & Norvig) Akronym f¨r Performance, Environment, Actuators, Sensors u Besteht aus: Beschreibung der Arbeitsumgebung Umgebungsklassifikation Ziel Dient Ableitung erster Anforderungen an einen Software-Agenten Johannes Diemke Teamvorstellung TORF 10. November 2009 13/48
  • 14. Arbeitsumgebung Beschreibung der Arbeitsumgebung Agententyp Leistungsbe- Umgebung Aktuatoren Sensoren wertung Spieler Stabilit¨t, Ge- a RoboCup Spielerkom- Sehen und schwindigkeit, Soccer Server mandos (dash, H¨ren o kongruentes turn, say, . . . ) Verhalten Trainer Stabilit¨t, Ge- a RoboCup change mode, Spielfeld¨ber- u schwindigkeit Soccer Server move, start, sicht (im Trainings- say, . . . modus) Coach Stabilit¨t, Ge- a RoboCup say, look, eyes, Spielfeld¨ber- u schwindigkeit Soccer Server team names, sicht ... (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 14/48
  • 15. Arbeitsumgebung Umgebungsklassifikation Anhand folgender Eigenschaften: Vollst¨ndig vs. teilweise beobachtbar a Deterministisch vs. stochastisch Episodisch vs. sequentiell Statisch vs. dynamisch Diskret vs. stetig Einzelagenten vs. Multiagenten-Umgebung Erste Schl¨sse bzgl. der Anforderungen u Verwaltung eines inneren Zustandes (Weltmodell) Keine absoluten Aussagen uber Folgezust¨nde (Wahrscheinlichkeiten) ¨ a Vorausdenken Ver¨nderung der Umgebung w¨hrend der Entscheidungsfindung a a Johannes Diemke Teamvorstellung TORF 10. November 2009 15/48
  • 16. Agenten Spieler als modellbasierter Reflex-Agent Teilweise Beobachtbarkeit macht Verwaltung eines Zustandes notwendig (Quelle: Russell & Norvig) Johannes Diemke Teamvorstellung TORF 10. November 2009 16/48
  • 17. Vorarbeiten der PG TORF Komponentenmodell des Spieler-Agenten (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 17/48
  • 18. Vorarbeiten der PG TORF Das Weltmodell (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 18/48
  • 19. Das Weltmodell Zweck Grundlage des Entscheidungsprozesses Besitzt Ist-Zustand und Dynamikwissen M¨glichst korrekte Abbildung der Arbeitsumgebung o Umgang mit verrauschten Daten Erfassung von: Objekten (Spieler, Ball, Flaggen, . . . ) Punktestand und Spielphase Johannes Diemke Teamvorstellung TORF 10. November 2009 19/48
  • 20. Das Weltmodell Bestimmung der eigenen Position Durch Winkel und Entfernungen der Flaggen Unterscheidung zweier F¨lle (a) und (b) a (a) Zwei Flaggen. (b) Eine Flagge. (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 20/48
  • 21. Das Weltmodell Bestimmung der eigenen Position (Forts.) Berechnete Positionen sind verf¨lscht a Sensordaten werden k¨nstlich verrauscht u (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 21/48
  • 22. Das Weltmodell Bestimmung der eigenen Position (Forts.) Verringerung der Verf¨lschung: a Bildung von Flaggenpaaren Sch¨tzung durch das [sic] Kalman-Filter a Sind keine Flaggen sichtbar: Bestimmung uber Dynamik des Kalman-Filters ¨ Johannes Diemke Teamvorstellung TORF 10. November 2009 22/48
  • 23. Das Weltmodell Grafische Darstellung des Weltmodells (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 23/48
  • 24. Vorarbeiten der PG TORF Der Planer (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 24/48
  • 25. Der Planer Zweck Umsetzung des Entscheidungsprozesses Festlegen der Strategie und das Starten der Skills Hierarchischer Planer Ben¨tigt Planerdatenbank mit Dom¨nenwissen o a Zugriff auf das Weltmodell uber Literale ¨ Unterst¨tzung von Team-Skills u Johannes Diemke Teamvorstellung TORF 10. November 2009 25/48
  • 26. Der Planer Die Planer-Architektur Messages Com start Skill state (via literals) Planner Worldmodel push / status select method pop play soccer free kick offensiv defensive normal play set piece Database offensiv play soccer Stack (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 26/48
  • 27. Der Planer Auschnitt der Planerdatenbank BallPossessionHandling NearestToBall Negation of (NearestToBall) kick2GoalComplex NearestToBall Do Positioning, Offensive lookAround Negation of (NearestToBall) DoPositioningSkillParam LookAroundSkillParam NearestToBall intercept kickToGoal NearestToBall InterceptSkillParam Kick2PosSkillParam (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 27/48
  • 28. Vorarbeiten der PG TORF Skills (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 28/48
  • 29. Skills Zweck Realisierung grundlegender Fertigkeiten Verwaltung durch Skill-Manager Unterscheidung von zwei Arten Primitive Skills (kapseln S-Expressions) Komplexe Skills H¨ndische Implementierung nicht trivial a Einsatz von Lernverfahren bietet sich an Johannes Diemke Teamvorstellung TORF 10. November 2009 29/48
  • 30. Skills Hierarchische Struktur der Skills package Data[ PlayerSkills] Player Skills receivePass dribble doPass doPositioning doKickOffFormatio CatchComplex findObjec kick2Pos stopBall ProbabilisticGoalie TurnHeadComplex intercept go2Pos lookAround followPath goalie teleport2Pos say kick dash catch turnBody changeView turnHead move (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 30/48
  • 31. Skills Aktivit¨tsdiagramm f¨r den Go2Pos-Skill a u (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 31/48
  • 32. Vorarbeiten der PG TORF Kommunikation (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 32/48
  • 33. Kommunikation Zweck Absprachen zwischen Spieler-Agenten (Taktiken auf Teamebene) Beispiel: Passspiel Spieler-Agent empf¨ngt nicht jede Nachricht: a Maximale Entfernung eingeschr¨nkte Nachrichtenl¨nge a a Vorgegebenes Alphabet Σ Erste Nachricht je Simulations-Zyklus Johannes Diemke Teamvorstellung TORF 10. November 2009 33/48
  • 34. Kommunikation Implementiertes Verfahren Einteilung in Cluster mit je einem Router Verwendung von Zeitmultiplexing (Vermeiden von Kollisionen) Problem Derzeit nicht vollst¨ndig funktionsf¨hig a a Aufgabe Protokoll auf Korrektheit pr¨fen u Gegebenenfalls Alternativen entwerfen Johannes Diemke Teamvorstellung TORF 10. November 2009 34/48
  • 35. Trainer- und Coach-Framework Aufbau Trainer und Coach sind eine Applikation Gemeinsamkeiten: Message-Broker Weltmodell Controller Trainer Nach Sternarchitektur aufgebaut Trainiert Spieler Austauschbare Lerntechniken (KI-Module) Laden von Spielsituationen im XML-Format Johannes Diemke Teamvorstellung TORF 10. November 2009 35/48
  • 36. Trainer- und Coach-Framework Sternarchitektur des Trainers (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 36/48
  • 37. Trainer- und Coach-Framework Gemeinsame Architektur von Trainer und Coach Architektur des Trainer-Agenten BasicCoach RCSS-Server WorldModel Controller Message- Broker Trainer-Agent Coach-Agent Learning- XML-Situation Player-Types … Technique Spieler-Agent Trainee/LT Datenfluss Vererbung (Quelle: Abschlußbericht PG TORF) -- Projektgruppe TORF – Universität Oldenburg • Fakultät II • Department für Informatik • Abteilung LLS  / Johannes Diemke Teamvorstellung TORF 10. November 2009 37/48
  • 38. Trainer- und Coach-Framework activity Trainer[ Trainer ] Ablauf einer Trainingssession und des Trainings Bei LT MB verbinden WM verbinden LT laden init LT registrieren Clients Training Genug Clients Client Auf Clients verabschieden durchführen aufnehmen lauschen Lernergebnisse zu wenig Clients speichern LT abmelden aufräumen activity Trainer[ Training durchführen ] Lerntechnik Instruktionen Spieler Ergebnisse von starten an Spieler senden beobachten Spieler empfangen Training nicht beendet Training beendet Ergebnisse auswerten (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 38/48
  • 39. Trainer- und Coach-Framework Coach Vergibt momentan nur Spielertypen 18 zuf¨llig generierte Spielertypen a Werden nach Zufallsprinzip vom RCSS zugewiesen Coach kann diese neu zuweisen Data-Mining f¨r optimale Heuristik (LogfileAnalysis) u Johannes Diemke Teamvorstellung TORF 10. November 2009 39/48
  • 40. Hilfsprogramme TORF Strategy Tool Manuelle Erstellung der Planderdatenbank zu aufw¨ndig a Boost-Serialisierung (Metadaten) Umfang des Dom¨nenwissens entscheidend a Intention Komfortable Erstellung von Planerdatenbanken Visuelle Darstellung der Daten Schnelle Entwicklung mittels der NetBeans Platform 6.1 Anbindung an Planer uber das JNI mittels SWIG ¨ Johannes Diemke Teamvorstellung TORF 10. November 2009 40/48
  • 41. Hilfsprogramme Hauptfenster des TORF Strategy Tool (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 41/48
  • 42. Hilfsprogramme Probleme Interoperabilit¨t zwischen Java und C++ a Aus der Verwendung von SWIG resultieren einige Probleme: Verlust von Polymorphie Speicherverwaltung (keine Destruktion auf C++-Seite) ... M¨gliche Probleml¨sung o o Entwurfsentscheidungen uberdenken ¨ Johannes Diemke Teamvorstellung TORF 10. November 2009 42/48
  • 43. Hilfsprogramme LogfileAnalysis Sammlung von Python-Skripten Auswertung von Logdateien Enthalten kompletten Spielverlauf Offizielle Spiele ab dem Jahr 1997 verf¨gbar u Pr¨destiniert f¨r Analysezwecke mittels Data-Mining a u Johannes Diemke Teamvorstellung TORF 10. November 2009 43/48
  • 44. Hilfsprogramme Feldabdeckungsanalyse (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 44/48
  • 45. Hilfsprogramme Torschussanalyse (Quelle: Abschlußbericht PG TORF) Johannes Diemke Teamvorstellung TORF 10. November 2009 45/48
  • 46. Vorarbeiten der PG TORF Fazit Umfangreiche Vorarbeiten der PG TORF Handlungsumgebung sehr komplex Grobarchitektur ist gute Grundlage f¨r Erweiterungen u Leistungspotential des Planers besser aussch¨pfen o Fehlendes Dom¨nenwissen a Johannes Diemke Teamvorstellung TORF 10. November 2009 46/48
  • 47. Vorarbeiten der PG TORF Fazit (Forts.) Weitere Skills implementieren Nutzen von Lernverfahren Fertigstellung der Kommunikations-Komponente Erweitern des Trainer und Coach-Frameworks: KI-Module Umfangreichere Unterst¨tzung durch den Coach u TORF Strategy Tool Entwurfsentscheidungen uberdenken ¨ Probleme beseitigen Johannes Diemke Teamvorstellung TORF 10. November 2009 47/48
  • 48. Literatur Universit¨t Oldenburg, Projektgruppe TORF a Team Oldenburger Robo-Fußball – Abschlussbericht https://torf.uni-oldenburg.de/ The RoboCup Federation RoboCup http://www.robocup.org/ Stuart Russell und Peter Norvig K¨nstliche Intelligenz: Ein moderner Ansatz u http://aima.cs.berkeley.edu/ IBM Corporation Deep Blue http://www.ibm.com/ Johannes Diemke Teamvorstellung TORF 10. November 2009 48/48