Antrag auf Gewährung einer Sachbeihilfe - FU-Fighters

Werbung
Antrag auf Gewährung einer Sachbeihilfe
im Rahmen des DFG-SPPs
Kooperierende Teams mobiler Roboter in
dynamischen Umgebungen
Neuantrag
1.1
Antragsteller
Raúl Rojas, Dr. habil.
Univ.-Prof., C4
Deutsche und Mexikanische Staatsbürgerschaft
Freie Universität Berlin
Fachbereich Mathematik und Informatik
Institut für Informatik
Takustr. 9, 14195 Berlin
Tel: 030/838 75102/100
Fax: 030/838 75109
Email: [email protected]
Privatadresse:
Margaretenstr. 20
12203 Berlin
Tel: 030/8410134
1.2
Thema
Entwicklung von Verfahren zur Selbstlokalisation mittels Computervision, Sensorintegration, Spielerkooperation und Verstärkungslernen für autonome, mobile
Roboter in der Small-Size-Liga.
1.3
Kennwort
FU-Fighters
2
1.4
Fachgebiet und Arbeitsrichtung
Das Projekt wird am Institut für Informatik der FU Berlin in der Arbeitsgruppe
Künstliche Intelligenz durchgeführt.
1.5
Voraussichtliche Gesamtdauer
Sechs Jahre im Rahmen des DFG-Schwerpunktprogramms "Kooperierende Teams
mobiler Roboter in dynamischen Umgebungen".
1.6
Antragszeitraum
Hier 1. und 2. Jahr.
1.7
Bei Neuanträgen gewünschter Beginn der Förderung:
Januar 2001
3
1.8
Zusammenfassung
Wir entwickeln seit 1998 an der Freien Universität Berlin ein Team autonomer
mobiler Roboter (die "FU-Fighters"). Mit diesen Maschinen haben wir an den
RoboCup-Wettbewerben in der Small-Size-Liga (F180-Liga) teilgenommen und sind
in den Jahren 1999 (Stockholm) und 2000 (Melbourne) jeweils Vizeweltmeister in
dieser Kategorie geworden. Ferner haben wir im Mai 2000 die Europameisterschaft in
Amsterdam gewonnen.
Momentan dient eine zentrale Videokamera, die über dem Spielfeld hängt und an
einen PC angeschlossen ist, als Hauptsensor für die Verhaltenssteuerung. Unsere
mobilen Roboter sollen nun derart erweitert werden, daß ohne externe Videokamera
gespielt werden kann. In der erste Phase des Projektes wird jeder Roboter eine eigene
Videokamera tragen, welche die Videodaten an einen externen Computer funkt, in
dem diese Daten analysiert werden. Wir werden die notwendige Software entwickeln,
um die Roboter zu lokalisieren und den Ball zu finden. Diese Software soll dann in
der zweiten Phase auf einen kleinen Bildverarbeitungsrechner portiert werden, der in
die Roboter integriert wird. Ferner planen wir die Erweiterung der Sensoren
beispielsweise um einen Infrarotdetektor am Boden des Roboters, der mittels des
optischen Flusses die Bewegung des Roboters bestimmt.
Das Verhalten unserer Roboter wird durch eine reaktive hierarchische
Kontrollarchitektur bestimmt. Mit zunehmender Komplexität steigt die Anzahl der
Parameter dieses Systems, so daß eine automatische Anpassung durch Lernen
notwendig wird. Dazu wollen wir den Ansatz des „Reinforcement Learnings“
verwenden. Mit Hilfe eines Simulators werden wir Strategie und Taktik des Spiels
trainieren, während die Bewegungskontrolle anhand von realen Robotern trainiert
werden muß. Anders als in der RoboCup-Liga der großen Roboter ist in unserer Liga
eine gute Simulation des Roboterverhaltens möglich, weil wir die Antwort des
Systems (in diesem Fall des Teams) exakt bestimmen, aufzeichnen, messen und
analysieren können.
Unser Ziel ist es, innerhalb von 2 Jahren durch eine Kombination von lokaler
Computervision, zusätzlichen Sensoren und Lernstrategien auf einem großen
Spielfeld (9  5 Meter) mit elf Robotern zu spielen. Zur Koordination der elf Spieler
wollen wir Ansätze verwenden, die sich in der Simulationsliga bewährt haben.
4
2.
Stand der Forschung und eigene Vorarbeiten
2.1
Stand der Forschung
In den letzten Jahrzehnten sind Produktion und Entwicklung von Industrie-Robotern
zu einem wichtigen Wirtschaftszweig geworden. Roboter werden u.a. bei der
Montage und Lackierung von Fahrzeugen sowie anderen Produkten eingesetzt. Es
wird erwartet, daß im Jahre 2002 ca. 83000 neue Roboter in den USA, Japan,
Deutschland, Italien, Frankreich und Großbritannien installiert werden [UN 1999]. In
Deutschland wächst der Umsatz für Roboter um circa 10% jährlich, obwohl
hierzulande, im Gegensatz zu Japan und anderen Ländern, eine strengere Definition
des Begriffs „Roboter“ verwendet wird. Es wird erwartet, daß in Deutschland bis
2002 mehr als 100,000 Roboter im Einsatz sein werden. In bezug auf die Anzahl von
„Roboter pro Arbeitskraft“ belegt Deutschland in der Fertigungsindustrie mit einem
Roboter je 100 Arbeitsplätze einen Spitzenplatz. Geht man von der allgemeineren
Begriffsdefinition für Roboter aus, wird in Japan sogar schon ein Roboter je sechs
Arbeitskräfte eingesetzt [UN 1999].
Produktionsroboter sind also eine Realität in der heutigen Welt. Zum größten Teil
handelt es sich dabei um fest montierte Roboter und Handhabungsmaschinen. Die
nächste Robotergeneration wird jedoch aus mobilen und autonomen Robotern
bestehen. Bis heute sind sie in Fabriken selten zum Einsatz gekommen, weil die
Produktionswelt an die herkömmlichen Roboter angepaßt werden konnte. Die neue
Herausforderung besteht nun darin, Roboter für menschengerechte Umgebungen zu
bauen. Solche Roboter, die im Dienstleistungssektor eingesetzt werden könnten,
müssen eine Reihe von Problemen bewältigen, die von dem Erkennen der Umgebung,
der Steuerung, der Art der Bewegung (auf Rädern oder Beinen) und der
Fehlertoleranz bis zur Kommunikation reichen. Service-Roboter zu bauen ist um eine
Größenordnung schwieriger als Industrieroboter zum Einsatz zu bringen. Trotzdem
erwartet die International Federation of Robotics auch hier einen deutlichen Zuwachs
in Produktion und Vermarktung bis zum Jahr 2002. Die zunächst anvisierten
Anwendungen sind Reinigungsroboter (für Fenster und Böden), Kanalroboter (für
Inspektionen und Reparaturen), Chirurgieroboter, Dienstboten-Roboter, Roboter für
Inspektionen in gefährlichen Gebieten und Roboter für Behinderte (zum Beispiel
„intelligente“ Rollstühle [Lankenau, Röter 2000]).
Die RoboCup-Initiative hat mit ihrem jährlichen Wettbewerb einen Benchmark
definiert, bei dem die Fortschritte in der Forschung und Entwicklung von mobilen,
autonomen Robotern eingeschätzt werden können [Kitano et al. 1997]. Es handelt
sich natürlich um keinen absoluten Maßstab, und vieles, was für
Dienstleistungsroboter wichtig ist, wird nicht berücksichtigt. Es ist aber eine erste
Annäherung beim Vergleich der Fähigkeiten mobiler Roboter in einer hoch
dynamischen Umgebung. Roboterfußball bietet die Gelegenheit unterschiedliche
Ansätze für die Roboterlokalisation, Koordination und Steuerung zu testen und durch
den direkten Vergleich im Wettbewerb bis an das Maximum zu optimieren. Viele der
Schwierigkeiten, die bei Service-Robotern zu Tage treten, sind auch bei RoboCup in
5
einer einfacheren Form vorhanden, die aber auch skalierbare Lösungen zulassen. In
dem Maße, in dem bei RoboCup die Regeln geändert werden, so daß Roboter mehr
und mehr die sensorische Perspektive des Menschen berücksichtigen müssen, werden
auch Algorithmen und Methoden entwickelt, die in der Zukunft bei Service-Robotern
zum Einsatz kommen könnten. Aus diesem Grund ist Roboter-Fußball ein neues,
zentrales Problem der KI-Forschung geworden und hat heute den gleichen
Stellenwert, den Schach über Jahrzehnte besaß [Turing 1950]. Die neue KI setzt
außerdem den Akzent auf die Einbettung der KI in einen Körper ("Embodyment"),
d.h. Problemlösung in realen Umgebungen mit physikalischer Interaktion [Brooks
1991, Christaller 1999, Franklin 1997]. Forschung an solchen Leitproblemen führt zur
Bündelung der Kräfte und zu neuen Durchbrüchen in der KI.
In unserem Projekt wollen wir eine Reihe von wichtigen Problemen aus dem Bereich
autonomer mobiler Roboter bearbeiten und lösen, sowie unsere Ansätze bei einem
Team von Robotern für die RoboCup-Small-Size-Liga testen. Die Probleme, die uns
dabei interessieren, sind: a) Selbstlokalisation durch die Benutzung einer
Videokamera, die am Roboter installiert ist; b) Ankopplung von zusätzlichen
einfachen Sensoren, die zudem miniaturisiert werden können, insbesondere die
Navigation mittels Berechnung des optischen Flusses; c) Kollaboration von größeren
Roboterteams (bis zu elf Roboter auf einem größeren Feld) und Lernalgorithmen für
die Robotersteuerung. Zu jedem Aspekt dieses Arbeitsgebietes kommentieren wir nun
den Stand der Forschung.
2.1.1 Selbstlokalisation
In der F2000-RoboCup-Liga (Roboter mit max. 2000 cm2 Grundfläche) werden zwei
Hauptansätze für die Navigation verwendet: Lokalisation des Roboters durch Einsatz
eines Laserscanners (wie beim Team von der Universität Freiburg [Gutmann et al.
2000]) und Lokalisation durch Computervision [Enderle et al. 2000].
Mit dem Laserscanner kann die Entfernung von Objekten in einem 180°-Bereich
gemessen werden. Damit ist die Ortung der Spielfeldbegrenzung einfacher als mit
optischen Mitteln. Aus der Lage der Wände kann man dann die Koordinaten der
Roboter im Feld bestimmen. Da die Position der Roboter in Echtzeit vom On-BoardComputer verfolgt wird, ist es ohne weiteres möglich, Mehrdeutigkeiten aufzulösen,
die durch die Symmetrie des Spielfeldes entstehen. Der Nachteil eines Laserscanners
liegt jedoch im Preis und Gewicht der industriell verfügbaren Scanner, die eher für
große Roboter gedacht sind. Teams, die Laserscanner verwenden, können die Lage
der Wände durch eine Hough-Transformation berechnen. Es bleibt die Ermittlung der
Lage des Balls und der anderen Roboter. Wenn jeder Roboter in einem Team seine
Position selbst bestimmt und an den anderen Roboter per Funk überträgt, dann sind
alle übrigen Punktwolken in dem Laserscan notwendigerweise die Roboter des
gegnerischen Teams.
Eine interessante Fragestellung ist, wie solche Laserscanner miniaturisiert werden
können und wieviel Energie sie brauchen. Diese Frage ist für Roboter in der F180-
6
Liga relevant, weil dann die Navigation der Roboter ähnlich wie in der F2000-Liga
berechnet werden könnte. Der PLS-Laserscanner von der SICK AG, der von
mehreren deutschen Teams verwendet wird, hat ungefähr die Maße eines F180Roboters und verbraucht 17 W. Allein dieser hohe Energieverbrauch ist für die SmallSize-Liga inakzeptabel. Andere Laserscanner auf dem Markt sind etwas kleiner, aber
dennoch ungeeignet für den Einsatz in der F180-Liga.
Da in der näheren Zukunft geplant ist, die Feldwände der F180-Liga durch einfache
Begrenzungslinien zu ersetzen, wird der Einsatz von Laserscannern zusätzlich
unattraktiver.
In der F180-Liga muß also der Einsatz optischer Sensoren im Vordergrund stehen.
Bei der Navigation mit visuellen Reizen gibt es im wesentlichen zwei Methoden:
Benutzung einer unidirektionalen, frontalen Kamera oder einer omnidirektionalen
Kamera (herkömmliche Videokamera, die vertikal nach oben gerichtet ist und auf
einen gewölbten Spiegel schaut).
Bei dem Einsatz von frontalen Kameras werden bestimmte Merkmale des Spielfeldes
erkannt. Man kann z.B. die vertikalen Farbkontraste an den Toren und Ecken
bestimmen [Enderle et al. 2000], oder die Übergänge zwischen dem grünen Feld und
den weißen Wänden suchen [Marques 2000]. Die Lage der Wände wird dann durch
die Berechnung der Hough-Transformation bestimmt und Unsicherheiten werden mit
den Messungen zusätzlicher Sensoren aufgehoben (vor allem Odometrie). Dabei
können die Aberrationen der Linsen noch in der Software kompensiert oder
vernachlässigt werden.
Das Interesse der Industrie an omnidirektionaler Computervision ist in den letzten
Jahren stark gestiegen. Ein erster IEEE-Workshop über das Thema hat im Jahr 2000
stattgefunden [IEEE 2000]. Im Fall von omnidirektionalen Kameras ist das erste
Problem, die genaue Form des Spiegels zu finden [Baker, Nayar 2000]. Durch
numerische Berechnungen können Spiegel bearbeitet werden, die das quadratische
Spielfeld auch quadratisch auf die Kamera abbilden [Marchese, Sorrenti 2000]. Der
Nachteil solcher Spiegel ist jedoch, daß sie zu wenig Pixel für das Spielfeld
verwenden und zu viele für die Spielfeldumrandung. Eine häufige Alternative sind
hyperbolische Spiegel oder Spiegel mit drei verschiedenen Phasen: eine sphärische
Phase direkt vor der Kamera, eine konische Wand und schließlich eine horizontale
Spiegeloberfläche, wie in der Abbildung unten gezeigt.
Spiegel
Kamera
Abbildung 1: Omnidirektionaler Spiegel mit drei Phasen
7
Die Richtung eines Objektes in bezug auf die Kamera kann mit einem hyperbolischen
oder einem anderen rotationssymmetrischen Spiegel direkt abgelesen werden. Im Fall
der F180-Liga muß berücksichtigt werden, daß die zur Verfügung stehenden
Videokameras sehr klein sind und einen festen Öffnungswinkel haben. Der Spiegel
muß also an die Kamera angepaßt werden. Dies erfordert kostengünstige Alternativen.
Wir haben eine solche Alternative gefunden, wie weiter unten in Abschnitt 2.2
dargestellt wird.
2.1.2 Navigation mit zusätzlichen Sensoren
Üblicherweise wird sowohl in der F180 als auch in der F2000-Liga mit Odometrie
gearbeitet. Die Motoren liefern genug Pulse pro Sekunde, um die Information über die
Anzahl der Radumdrehungen zu erhalten und daraus die jeweils neue Position eines
Roboters zu bestimmen. Aber bereits nach wenigen Sekunden macht sich die
Abweichung der berechneten zur realen Position signifikant bemerkbar. Die Qualität
der Odometrie hängt u.a. von der Haftung der Räder auf dem Belag der Spielfläche
ab, die im voraus meistens unbekannt ist. Zudem können die Räder bei Kollisionen
überdrehen oder der Roboter kann durch einen anderen verschoben werden.
Deswegen wird Odometrie nur als ergänzendes Element für die Navigation
verwendet.
Wir werden in unserem Projekt eher die Aufmerksamkeit auf passive Sensoren
lenken, die durch optische Mittel Informationen aus der Umgebung extrahieren. Der
Vorteil von passiven gegenüber aktiven Sensoren ist, daß es einfacher ist,
Interferenzen zwischen Teammitgliedern zu vermeiden. In vielen Fällen müssen z.B.
aktive Ultraschallsensoren ausgeschaltet werden, da sie ungeeignet für die
dynamische RoboCup-Umgebung sind.
Für die Ermittlung der Ausrichtung der Roboter kann ein z.B. ein elektronischer
Kompaß verwendet werden. Verschiedene Teams in der F2000-Liga haben in der
Vergangenheit durch die Messung des Erdmagnetfelds versucht, die
Positionsbestimmung zu verbessern. Eine Schwierigkeit dabei sind magnetische
Felder, die durch die eigenen Motoren oder andere Roboter erzeugt werden. Sind die
Störungen sehr groß, wird der Kompaß unbrauchbar.
In bezug auf die Navigation ist ein gestiegenes Interesse an omnidirektionalen
Fahrwerken zu verzeichnen. Bei RoboCup 2000 verwendete jeweils ein
Endspielteilnehmerteam in der F2000 und
F180-Liga die omnidirektionale
Steuerung. Das italienische Team Golem hat rund um die omnidirektionale Kamera
einen symmetrischen Roboter gebaut, wodurch die Navigation vereinfacht wurde.
Computersehen und mechanischer Aufbau müssen fein abgestimmt werden [Bonarini
2000].
Omnidirektionale Fahrwerke sind insbesondere im Fall des Torwarts wichtig, weil sie
ihm größere Mobilität und Reichweite verleihen. Ein Überblick über die
verschiedenen beim RoboCup eingesetzten omnidirektionalen Fahrwerke findet man
in [Duhaut 2000].
8
2.1.3 Lernalgorithmen für die Steuerung von Robotern
In der Robotik hat Reinforcement Learning (RL) bereits seit Jahren eine
herausragende Stellung. RL besteht darin, eine Kosten- oder Erfolgsfunktion durch
Exploration des Aktionsraumes zu bestimmen [Sutton 1998]. Das klassische Beispiel
sind NeuroGammon und TD-Gammon, zwei mit Hilfe von neuronalen Netzen
trainierte Programme, die im Laufe von Spielen gegen sich selbst so gut werden, daß
sie danach besser als Menschen Backgammon spielen können [Tesauro 1990, 1995].
Es liegt nahe, auch diesen Ansatz im Bereich der automatischen Steuerung von
Robotern zu verwenden. Experimente mit einfachen Systemen wie z. B. Pendel oder
Greifer zeigen, daß RL gute Ergebnisse liefern kann.
Im Bereich autonomer Roboter sind auch Experimente durchgeführt worden, bei
denen der Aktionsraum stark begrenzt ist. Insbesondere zeigten Baltes und Lin [2000]
vor kurzem, daß es durch RL möglich ist, autonome Roboter Pfadplanung in einer
dynamischen Umgebung lernen zu lassen.
Wir verwenden für die Steuerung unserer Roboter einen reaktiven Ansatz, der von der
Subsumption-Architektur von Brooks [1999] und dem Dual-Dynamics-Ansatz von
Herber Jäger inspiriert wurde [Jäger 1996, Jäger et al. 1997]. In der SubsumptionArchitektur besteht der wesentliche Gedanke darin, die Steuerung in Schichten
steigender Komplexität zu teilen, so daß zuerst die elementaren Roboterreflexe
programmiert werden und darauf aufbauend die komplexeren Verhaltensebenen. Der
mehrschichtige Ansatz hat viele Nachahmer in der Robotik gefunden, da Experimente
in kurzer Zeit durchgeführt werden können und das fertige System nach und nach
entsteht. Der Dual-Dynamics-Ansatz besteht im wesentlichen darin, jede Ebene als
ein dynamisches System zu begreifen, bei dem die oberen Systeme
Steuerungsparameter für die unteren Ebenen setzen. Beide Ansätze, die SubsumptionArchitektur und den Dual-Dynamics-Ansatz haben wir in unseren eigenen Systemen
vereint und durch eine zusätzliche temporäre Hierarchie erweitert (mehr dazu weiter
unten).
Die Kombination des reaktiven Ansatzes mit Reinforcement Learning in der Robotik
scheint ein vielversprechender Weg. Elementare Roboteraktionen können durch
Lernen und nicht durch aufwendiges Programmieren implementiert werden.
Schwieriger ist es mit RL in den Bereich der Spielerkooperation vorzudringen. In der
Simulationsliga spielt Kooperation eine große Rolle. Bis 1999 war der hierfür
dominierende Ansatz, die Spielsituationen durch einen Entscheidungsbaum
abzuarbeiten. So wurde das Team der Carnegie Mellon Universität in jenem Jahr
Weltmeister. Seit diesem Jahr hat sich jedoch RL fest in der Simulationsliga etabliert.
Sowohl die Programmierer von CMU-99 als auch das Team aus Karlsruhe haben in
der Simulationsliga durch RL Teile der Aktionsauswahl trainiert [Stone et al. 2000,
Riedmiller et al. 2000]. Das Team aus Karlsruhe hat mit dieser Strategie beim
RoboCup 2000 den zweiten Platz belegt und sieht als die nächste Herausforderung,
RL-Methoden auch in komplexen Spielsituationen mit mehreren Spieler einzusetzen.
9
Die wesentliche Schwierigkeit ist dabei die enorme Vergrößerung des Suchraumes.
Stone et al. [2000] haben deswegen zuerst sehr spezielle Situationen untersucht und
konnten dabei gute Ergebnisse vorweisen.
Fazit
Zusammenfassend können wir festhalten, daß bei dem aktuellen Stand der Forschung
auf dem Gebiet mobiler Roboter in der dynamischen RoboCup-Umgebung noch viele
Probleme gelöst werden müssen. Obwohl die rein optische Navigation wesentliche
Fortschritte gemacht hat, arbeiten die meisten F2000-RoboCup-Teams mit niedrigen
Frameraten. Die Roboter sind auch langsamer als in der F180-Liga (relativ zum
Spielfeld), womit es eine echte Herausforderung ist, die lokale Computervision so
weit zu verbessern und zu miniaturisieren, daß sie auf einer kleinen Elektronik laufen
kann. Außerdem ist der Spielverlauf in der F180-Liga wesentlich schneller, d.h.
ausreichend hohe Frameraten sind dafür notwendig. Die zweite Herausforderung
besteht darin, Lernen in einer realen und nicht in einer simulierten Umgebung
einzusetzen. Hier bietet auch die F180-Liga eine wichtige Plattform, um die
Methoden des Reinforcement Learning zu verwenden.
Im folgendem Abschnitt besprechen wir, wie unser Projekt diese beide
Herausforderungen berücksichtigt.
Referenzen
Simon Baker and Shree K. Nayar, "A Tutorial on Catadioptric Image Formation", Department of Computer Science, Columbia University, New York, 2000.
[Baltes, Lin 2000] J. Baltes, Y. Lin, "Path Tracking Control of Non-holonomic Car-like
Robot with Reinforcement Learning", in M. Veloso, E. Pagello, H.
Kitano (Hrsg.), RoboCup-99: Robot Soccer World Cup III, SpringerVerlag, Berlin, 2000.
[Bonarini 2000]
Andrea Bonarini, "The Body, the Mind or the Eye, First?", in M.
Veloso, E. Pagello, H. Kitano (Hrsg.), RoboCup-99: Robot Soccer
World Cup III, Springer-Verlag, Berlin, 2000.
[Brooks 1999]
Rodney Brooks, Cambrian Intelligence, MIT Press, Cambridge,
1999.
[Brooks 1991]
Brooks, R.A.: “Intelligence without reason”. A.I. Memo 1293, MIT
AI Lab, 1991 (auch in Brooks 1999).
[Christaller 1999] Christaller, T.: “Cognitive Robotics: A New Approach to Artificial
Intelligence”. In: Artificial Life and Robotics, Springer-Verlag,
3/1999
[Duhaut 2000]
Dominique Duhaut, "Omnidirectional Model for F2000 and Locomotion for Legged", RoboCup 2000 Camp, Italien.
[Enderle et al.2000] S. Enderle, M. Ritter, D. Fox, S. Sablatnög, G. Kraetzschmar, G.
Palm, "Vision Based Localization in RoboCup Environments", in
[Baker, Nayar 2000]
10
Proceedings of the Fourth International RoboCup Workshop, Melbourne, September 2000, S. 232-237.
[Franklin 1997]
Stan Franklin, "Autonomous Agents as Embodied AI", Cybernetics
and Systems, Vol. 28, N. 6, 1997, S. 499-520.
[Gutmann et. al. 2000] J.-S. Gutmann, T. Weigel, B. Nebel, "Fast, Accurate, and Robust
Self-Localization in the RoboCup Environment", in M. Veloso, E.
Pagello, H. Kitano (Hrsg.), RoboCup-99: Robot Soccer World Cup
III, Springer-Verlag, Berlin, 2000.
[IEEE 2000]
IEEE Workshop on Omnidirectional Vision (Omnivis 2000), Juni
2000, South Carolina.
[Jäger 1996]
Jäger, H.: “The Dual Dynamics Design Scheme for Behavior-based
Robots: A Tutorial”. Arbeitspapiere der GMD 966 (1996)
[Jäger et al. 1997] Jäger, H., Christaller, T.: “Dual Dynamics: Designing Behavior Systems for Autonomous Robots”. In: Fujimura, S., Sugisaka, M. (eds:)
Proceedings International Symposium on Artificial Life and Robotics (AROB '97), Beppu, Japan, (1997) 76—79
[Kitano et al. 1997] H.Kitano, M. Asada, Y. Kuniyoshi, I. Noda, E. Osawa, H. Matsubara, "RoboCup: A Challenge Problem for AI", AI Magazine, Vol.
18, N. 1, 1997, S. 73-85.
[Lankenau, Röter 2000] A. Lankenau, Th. Röter, "Smart Wheelchairs - State of the Art in
en Emerging Market", KI-Zeitschrift, Heft 4, Oktober 2000.
[Marchese, Sorrenti 2000] Fabio Marchese, Domenico Sorrenti, "Omnidirectional vision
with a multi-part mirror", in Proceedings of the Fourth International
RoboCup Workshop, Melbourne, September 2000.
[Marques 2000]
Marques, A Localization Method for a Soccer Robot Using a Vision-Based Omni-Directional Sensor, in Proceedings of the Fourth
International RoboCup Workshop, Melbourne, September 2000.
[Riedmiller et al. 2000] M. Riedmiller, A. Merke, D. Meier, A. Hoffman, A. Sinner, O.
Thate, Ch. Kill, R. Ehrmann, "Karlsruhe Brainstormers - A Reinforcement Learning approach to robotic soccer", in Proceedings of
the Fourth International RoboCup Workshop, Melbourne, September 2000.
[Stone et al. 2000] Peter Stone, Richard Sutton, Satinder Singh, "Reinforcement Learning for 3 vs. 2 Keepaway", in Proceedings of the Fourth International RoboCup Workshop, Melbourne, September 2000.
[Sutton 1998]
R. Sutton, A. Barto, Reinforcement Learning: An Introduction, MIT
Press, Cambridge, 1998.
[Tesauro 1990]
G. Tesauro, "Neurogammon: A Neural-Network Backgammon Program", IJCNN 90 International Joint Conference on Neural Networks, vols.1-3. New York, IEEE, 1990. p. C33-40.
[Tesauro 1995]
G. Tesauro, "Temporal Difference Learning and TD-Gammon",
Communications of the ACM, March 1995 / Vol. 38, No. 3.
Alan Turing, “Computing Machinery and Intelligence”, Mind – A
Quarterly Review of Psychology and Philosophy, Vol. LIX, N. 236,
Oktober 1950.
UN, World Robotics 1999 - Statistics, Market Analysis, Forecasts,
Case Studies and Profitability of Robot Investment, IFR 1999.
[Turing 1950]
[UN 1999]
11
2.2
Eigene Vorarbeiten / Arbeitsbericht
Wir haben in Rahmen von Robotik-Seminaren an der Freien Universität Berlin ein
F180-Team von Robotern gebaut, mit dem wir an den Weltmeisterschaften 1999 und
2000, sowie an der Europameisterschaft 2000 teilgenommen haben [Rojas et al.
2000a]. Bis heute haben wir in jedem Semester eine RoboCup AG veranstaltet. Wir
befinden uns im dritten Jahr unserer Zusammenarbeit. Die spezielle Expertise unserer
Arbeitsgruppe liegt in dem Einsatz von konnektionistischen Methoden in der
Bildverarbeitung, in der Mustererkennung und in der reaktiven Robotik [Rojas 1995,
1996a, 1996b, Pfister et al. 1999].
Mechanik und Elektronik
Die von uns gebauten mobilen Roboter wurden nach den von der F180-Liga
auferlegten Restriktionen gebaut [Behnke et al. 2000b]. Unser Team besteht aus vier
Feldspielern und einem Torwart. Der Torwart hat, bedingt durch
die
unterschiedlichen Aufgaben, eine andere Mechanik als die Feldspieler. Aber auch die
Feldspieler unterscheiden sich zum Teil im Aufbau. Dies resultiert einerseits aus dem
jeweiligen Entwicklungsstadium, andererseits aber auch aus verschiedenen Ideen, die
experimentell in Hardware umgesetzt werden. So haben wir z. B. zwei Varianten der
Elektronik gebaut. Einige Grundprinzipien sind jedoch gleich geblieben.
Beispielsweise hat jeder Feldspieler nur zwei Räder, womit Drehungen auf der Stelle
sowie schnelle Beschleunigungen vorwärts und rückwärts möglich sind.
Abbildung 2 zeigt die Hauptkomponenten in unserem System [Ackers et al. 1999].
Die Videokamera bietet uns eine Gesamtansicht des Spielfeldes mit 30 Bildern pro
Sekunde im NTSC-Format, die im Zentralrechner durch einen Framegrabber
eingelesen werden. Der Zentralrechner verarbeitet jedes Videobild, findet den Ball
und alle Roboter (die farblich markiert sind), legt das Verhalten der Spieler fest und
funkt die notwendigen Steuerungsbefehle an jeden Roboter. Alle Roboter empfangen
dieselben Pakete, aber verarbeiten nur solche, die ihre eigene Identifikationsnummer
(ID) tragen. Der On-Board-Computer extrahiert dann die Information aus den Paketen
und steuert drei Motoren an: zwei für die Räder und einen für den Schußapparat, der
aus einer rotierenden Platte besteht.
Videokamera
Funk
Funk
On-BoardComputer
Abbildung 2: Aufbau des Systems
Zentralrechner
12
Die Roboter haben einen maximalen Durchmesser von 18 cm und weniger als 180
cm² Grundfläche (nach den Regeln für die F180-Liga). Das Spielfeld hat etwa die
Größe einer Tischtennisplatte, wie in der Abbildung 3 gezeigt.
Abbildung 3: Spielsituation, Europameisterschaft 2000. Rechts die FU-Fighters,
links das spanische Rogi-Team.
Die Mechanik der Roboter wurde von uns selbst entworfen. Die Werkstatt des
Fachbereiches Physik und das Fritz-Haber-Institut der Max-Planck-Gesellschaft in
Berlin haben die Fertigung der aufwendigeren Teile übernommen.
Das Chassis der Roboter wurde aus Aluminium gefertigt. Die Motoren von Faulhaber
erlauben eine Geschwindigkeit von 1-3 Meter pro Sekunde, je nachdem wie groß die
Räder der Roboter sind. Jeder Motor liefert 16 Impulse pro Umdrehung, die mit dem
On-Board-Computer gezählt werden können, um herauszufinden, ob der Roboter die
gewünschte Geschwindigkeit erreicht hat. Die Impulse werden 122 mal pro Sekunde
gezählt und die Differenz zum gewünschten Wert berechnet. Die Motoren werden
durch PWM-Signale (Pulsweitenmodulation) angesteuert. Durch die Anpassung der
Breite der Impulse kann die Geschwindigkeit der Motoren fein reguliert werden.
Wir haben beim RoboCup 1999 eine Innovation eingeführt: den Schußapparat. Es
handelt sich dabei, wie in Abbildung 4 gezeigt, um eine im Roboter eingebaute
rotierende Platte, mit der der Spielball stark beschleunigt werden kann. Der Motor,
der die rotierende Platte in Bewegung setzt, wird vor dem Schuß gestartet, die Platte
akkumuliert dadurch kinetische Energie und gibt sie zum Zeitpunkt des Schusses in
Sekundenbruchteilen an den Ball weiter. Mit diesem Schußapparat ist es sogar
möglich, den Ball über die Gegner zu schießen. Diese Innovation hat den Spielverlauf
in der F180-Liga revolutioniert und dazu geführt, daß die senkrechten Wände am
Rande des Spielfeldes durch kleine schräge Wände beim RoboCup 2000 ersetzt
wurden, um Schüsse über die Wand zu verhindern.
13
Abbildung 4: Schußapparat der FU-Fighters.
Mittlerweile haben wir bereits drei Robotergenerationen gebaut, die unterschiedliche
mechanische Charakteristiken aufweisen.
Die erste Robotergeneration wurde für den harten Schuß mit der rotierenden Platte
entwickelt. Die zweite Robotergeneration besteht aus kleineren, abgerundeten
Robotern mit größeren Rädern. Sie sind schneller als die erste Generation und wurden
darauf optimiert den Ball schnell zu führen und um die Gegner zu fahren. Die dritte
Robotergeneration ist kräftiger gebaut. Hier wurde der Schußapparat wie ein
rotierender Käfig um die inneren Teile des Roboters gebaut. Die Roboter sind sehr
schnell und deswegen besser für ein größeres Spielfeld geeignet: Mit dieser letzten
Robotergeneration sind wir, vom mechanischen Standpunkt aus gesehen, bereits in
der Lage in dem Spielfeld der F2000-Roboter (9 mal 5 Meter) zu spielen. Die
Abbildungen 5, 6 und 7 zeigen Ansichten des mechanischen Aufbaus unserer Roboter
[Rojas et al. 2000a].
Abbildung 5: Erste Robotergeneration
Man sieht in Abbildung 5 die benutzte On-Board-Elektronik und die Motoren
(Roboter rechts). Die ID der Roboter kann über DIP-Schalter eingestellt werden. Die
ganze Elektronik ist auf einer einzigen Platine untergebracht.
14
Abbildung 6: Die zweite Generation. Roboter für das Dribbeln
Die Roboter der zweiten Generation sind leicht, klein und wendig. Sie wurden so
entworfen, daß sie den Ball gut führen und aus voller Fahrt den Ball schießen können.
Dafür haben sie eine frontale Platte, die durch Hub-Magnete aktiviert wird
(Abbildung 6, rechts).
Abbildung 7 zeigt den Aufbau der Roboter der dritten Generation. Mit starken
Motoren und großen Rädern ausgestattet erreichen sie hohe Endgeschwindigkeiten.
Rechts im Bild sind die zwei runden Käfige des Torwarts zu sehen, die als
Schußapparat dienen. Die Feldspieler (links im Bild) besitzen nur je einen solchen
Käfig. Die Käfige drehen sich um Elektronik, Motoren und Akkus. Zwei Motoren
treiben den Schußapparat an. Die Roboter sind so kräftig gebaut, daß sie die
Grundlage für ein Team bilden können, das auf dem großen Spielfeld agiert. Beim
RoboCup 2000 in Melbourne konnten wir mit diesen Robotern per manueller
Fernsteuerung den F2000-Ball (oranger Junior-Winterfußball aus Leder) schieben.
Abbildung 7: Die dritte Generation. Größere, schnellere Roboter mit neuer Schußtechnik.
15
Schließlich zeigt Abbildung 8 einige spezielle Roboter, die als Zentralverteidiger bzw.
als Torwart eingesetzt werden können. Als Zentralverteidiger bewegen sie sich vor
dem Strafraum parallel zur Torlinie. Sie können sich schnell drehen und damit den
Ball wegschießen. Als Torwart eingesetzt verteidigen sie das Tor durch Bewegungen
auf einem Halbkreis. Der Torwart der dritten Generation (links) ist dabei etwas
schneller und drehfreudiger als der Torwart der zweiten Generation (rechts).
Außerdem gibt es beim Torwart der dritten Generation die Option, die beiden Käfige
aus Abbildung 7 einzubauen, so daß er zusätzlich über einen geraden Schuß nach
vorne verfügt. Roboter aller drei Generationen sind bereits bei Turnieren zum Einsatz
gekommen.
Abbildung 8: Torwarte der zweiten (rechts) und dritten (links) Generation
Eine interessante Variante ist es, mit Robotern aus unterschiedlichen Generationen ein
Team zu bilden. Jeder Roboter hat dann unterschiedliche Fähigkeiten, welche die
Kontrollsoftware individuell berücksichtigt. Einige Experimente mit solchen
gemischten Teams haben wir bereits im Labor und bei Turnieren durchgeführt.
Die On-Board-Elektronik hat sich zwischen den verschiedenen Robotergenerationen
nur im Layout verändert. Wir verwenden ein 8 MHz Microcontroller von Motorola
(MC68HC05) mit einem EEPROM, einer seriellen Schnittstelle und 16 digitalen Einund Ausgängen, 8 Analogeingängen und 2 Analogausgängen. Die Analogausgänge
können im PWM-Modus betrieben werden.
Der Microcontroller ist für das Interpretieren der vom Zentralrechner empfangenen
Befehle und für die Aktivierung der Motoren zuständig. Die Funkeinheit auf unseren
Robotern kann im Halb-Duplex-Modus mit einer Übertragungsrate von 9600 Baud
betrieben werden. Die Befehle werden vom Zentralrechner in 8 Byte großen Paketen
verschickt, die Drehrichtungen und Sollgeschwindigkeiten für die Motoren enthalten.
Der Microcontroller misst die Ist-Geschwindigkeit und regelt die Pulslängen so, daß
die Motoren möglichst schnell die Sollgeschwindigkeit erreichen. Wir haben bewußt
die On-Board-Elektronik minimal gehalten, weil wir bis heute mit der globalen
16
Kamera über dem Spielfeld gespielt haben. In Zukunft werden wir mit lokalen
Videokameras auf den Robotern spielen und notwendigerweise auf einen mächtigeren
Prozessor zurückgreifen müssen.
Bildanalyse
Eine der Stärken des jetzigen Systems ist die robuste Computervision-Software, die
der Verhaltenssteuerung den Zustand der Welt übermittelt [Simon et al. 2000]. Aus
einem Strom von Live-Videobildern werden 30 Mal in der Sekunde die Positionen
und Orientierungen der zehn Roboter, sowie die Position des Spielballs ermittelt. Dies
ist mit einer geringen Rechenlast möglich, da nicht immer das gesamte Bild analysiert
wird. Vielmehr werden die Positionen der interessanten Objekte für das nächste Bild
vorhergesagt und dann nur kleine Bildausschnitte um diese herum betrachtet.
Verschiedene Mechanismen sichern die Zuverlässigkeit des Systems auch dann, wenn
Objekte z.B. wegen Verdeckung nicht gefunden werden können.
Eine NTSC-Videokamera, die zentral über dem Spielfeld hängt, liefert die Bilder, die
von der Computervision-Software verarbeitet werden. Die Videodaten werden analog
mittels eines S-Video-Kabels zu einem PC übertragen, der neben dem Spielfeld steht.
Dieser beinhaltet eine PCI-Framegrabber-Karte, welche die Bilddaten mit 640480
Pixeln digitalisiert und im RGB-Format in den Hauptspeicher überträgt.
Abbildung 9: Markierung der Roboter: Farbpunkte dienen zur Bestimmung von Position
und Orientierung. Schwarz-weiße Markierungen werden zur Identifikation verwendet.
Die interessanten Objekte im Bild sind farbig markiert. Unsere Roboter tragen drei in
einer Linie angeordnete Farbpunkte. Roboter anderer Teams haben ebenfalls
mindestens einen Farbpunkt, die Teammarkierung, und häufig weitere farbige
Markierungen. Auch der orange Spielball erscheint im Bild als Farbpunkt.
Deshalb bildet die Methode zum Finden, Segmentieren und Verfolgen von kleinen
farbigen Objekten den Kern der Computervision-Software. Aus den letzten beiden
Positionen, an denen ein Farbpunkt gefunden wurde, wird vorhergesagt, wo er sich im
aktuellen Bild befinden müßte. Um diese Stelle herum wird nun ein Fenster variabler
Größe gelegt, in dem der Farbpunkt gesucht wird. Dazu wird im Suchfenster der
Bildpunkt mit der größten Ähnlichkeit zur Modellfarbe ermittelt. Zur Segmentierung
der zu einem Farbpunkt gehörenden Pixel wird ein kleines Fenster um diese Stelle in
den HSI-Farbraum konvertiert. Die Qualität des gefundenen Farbpunktes wird anhand
der Ähnlichkeit zu dessen Modell bewertet, das neben der Farbe auch die Größe und
die Position des Punktes beinhaltet. Ist die Qualität gut genug, so wird das Modell
angepaßt. Kann ein Farbpunkt nicht gefunden werden, so wird das Suchfenster
schrittweise vergrößert.
17
Abbildung 10: Vorhersage und variable Suchfenster (links). Segmentierung im HSI-Farbraum (rechts).
Die Roboter werden durch ein bis drei Farbpunkte modelliert. Falls nur zwei
Farbpunkte gefunden werden, ist es beim Drei-Ball-Modell möglich, die Position des
dritten Punktes zu berechnen, um zu überprüfen, ob dieser sich tatsächlich dort
befindet. Wenn alle drei Punkte gefunden sind, wird deren geometrische Anordnung
überprüft, um zu verhindern, daß Punkte benachbarter Roboter zusammengefaßt
werden. Wird der Roboter akzeptiert, so kann seine Orientierung aus der Linie durch
die drei Farbpunkte bestimmt werden.
Das Verfolgen der Roboter und des Spielballs arbeitet in normalen Spielsituationen
schnell und sicher. Während der Spielunterbrechungen können jedoch Menschen, die
die Roboter auf ihre Ausgangspositionen stellen, die Roboter verdecken. Auch
während des Spiels kann der Spielball von Robotern verdeckt werden. Deshalb wird
das Objekt-Verfolgungssystem von einem Modul zur globalen Suche ergänzt, das
Objekte wiederfindet, die verloren wurden. Diese globale Suche verwendet eine
Multiresolutionsstrategie, um die markantesten Farbpunkte einer bestimmten Farbe zu
finden. Diese werden dann entsprechend den geometrischen Nebenbedingungen zu
Robotern kombiniert.
Die Roboter unserer Mannschaft tragen identische Farbmarkierungen. Um sie
identifizieren zu können, benutzen wir zusätzlich drei schwarz-weiße Markierungen,
die neben den Farbpunkten angebracht sind. Sie codieren die Nummer des Roboters
und können automatisch gelesen werden. Zu Beginn des Spiels muß also nur eine
globale Suche mit anschließender Identifikation durchgeführt werden, um das System
zu initialisieren.
Damit wir das Bildanalyse-System auch in Umgebungen einsetzen können, in denen
das Spielfeld nicht gleichmäßig ausgeleuchtet ist, haben wir die Farbpunkte in
Abhängigkeit vom Ort als Farbkarten modelliert. Diese werden manuell initialisiert
und adaptieren sich während des Spiels an die gefundenen Farben und Größen der
Farbpunkte.
18
Abbildung 11: Farbkarte für den Spielball (oben)
und Koordinatentransformation (unten).
Da die Verhaltenssteuerung die Objekte in einem Standard-Koordinatensystem
erwartet, erfolgt als letzter Schritt der Bildauswertung eine Transformation der Bildin die Verhaltenskoordinaten. Diese Transformation berücksichtigt, daß die Kamera
nicht exakt achsenparallel mittig hängt, das Kameraobjektiv das Bild verzerrt und die
Objekte verschiedene Höhen haben.
Verhaltenssteuerung
Obwohl Mechanik und Elektronik sehr wichtig sind und Fehlertoleranz auf allen
Ebenen notwendig ist, besteht der eigentliche Kern unseres Systems aus der Software
für die Verhaltenssteuerung, welche uns von anderen Teams abhebt und unsere
Erfolge bei Wettbewerben erklärt [Behnke et al. 2000b]. Abbildung 12 zeigt die
Hauptkomponenten der Software. Eine Benutzerschnittstelle erlaubt es uns, auf die
drei Hauptmodule effizient zuzugreifen. Das Bildanalysemodul verarbeitet die Daten
aus der Kamera und liefert die Koordinaten des Balls und der Spieler. Die reaktive
Steuerung berechnet eine geeignete Aktion für jeden Roboter, während das
Funkmodul dies in Nachrichten an die Roboter umsetzt.
Benutzerschnittstelle
Bildanalyse
Reaktive
Steuerung
Abbildung 12: Aufbau der Software
Funksoftware
19
Für die Steuerung der Roboter verwenden wir einen hierarchischen Ansatz zur
reaktiven Verhaltenskontrolle. Das Verhalten des Gesamtsystems ergibt sich durch
die Interaktion von einfachen, reflexartigen Verhaltensweisen, die unterschiedlich
schnell arbeiten. Diese Verhalten wechselwirken miteinander und mit der Umwelt, so
daß eine komplexe Dynamik entsteht. In unserem Ansatz dient die Zeitkonstante als
Ordnungskriterium. Schnellere Verhalten sind auf niedrigeren Ebenen angesiedelt als
langsamere Verhaltensweisen. Die Zahl verschiedenartiger Verhalten nimmt mit
zunehmender Höhe in der Hierarchie zu [Behnke et al. 2000a].
Abbildung 13: Hierarchische reaktive Verhaltenskontrolle
In einer Ebene gibt es jeweils drei dynamische Systeme. Das sensorische System
aggregiert die Eingaben, die von physikalischen Sensoren kommen, sowie die
sensorischen Daten der nächsttieferen Ebene in der Zeit. Der Zustand der
sensorischen Dynamik bestimmt die Verhaltensdynamik. Diese entscheidet, welche
Verhalten gerade aktiv sind. Ein aktives Verhalten kann den Verlauf der
Aktuatordynamik beeinflussen. Der Zustand eines Aktuators kann dazu genutzt
werden, physikalische Aktuatoren der Roboter anzusteuern, aber auch Zielparameter
für die nächsttiefere Ebene setzen. So können die Verhalten einer Ebene von den
Verhalten der darüberliegenden Ebene konfiguriert werden. Dies ermöglicht, auf den
gleichen Reiz verschieden zu reagieren, abhängig von der Vorgeschichte, die im
Zustand der höheren Ebenen repräsentiert ist.
Die Steuerung unserer Roboter ist auf drei Ebenen verteilt, die mit 30, 15 und 7.5 Hz
ausgeführt werden. Die unterste Ebene bekommt die Positionen und Orientierungen
20
der Roboter und des Balls als Eingabe. Die Ausgaben dieser Ebene sind die SollGeschwindigkeiten für die Motoren der Roboter. Diese werden an die Roboter
gefunkt und von diesen umgesetzt. Die Computervision meldet dann die Bewegung
der Roboter zurück. Man kann dies als Regelkreis begreifen, der von der zweiten
Ebene konfigurierbar ist. Diese kann die Bewegung des Roboters durch verschiedene
Parameter beeinflussen. Der wichtigste Parameter ist die Zielposition. Diese versucht
das Verhalten "Steuern" durch Taxis zu erreichen, das auf der untersten Ebene aktiv
ist, falls kein Hindernis im Weg ist. Das Steuern wird durch weitere Parameter
beeinflußt, die beispielsweise die Maximalgeschwindigkeit festlegen, oder vorgeben,
ob der Roboter eher vorwärts oder eher rückwärts zu der Zielposition fahren soll.
Auf der untersten Ebene der Feldspieler gibt es ein weiteres Verhalten, das aktiv wird,
wenn eine Kollision mit einem Hindernis droht. Es entscheidet dann, in welcher
Richtung dem Hindernis ausgewichen werden soll und fährt anschließend auf einem
Kreisbogen an diesem vorbei.
Abbildung 14: Aufbau einer Ebene
Die Parameter, die das Verhalten der untersten Ebene konfigurieren, sind die
Aktuatoren der mittleren Ebene (siehe Abbildung 14). Auf dieser gibt es mehrere
Verhalten, die verschiedene Bewegungsmuster erzeugen, wie beispielsweise die
Annäherung an den Ball, das Dribbeln, den Torschuß, das Blocken des Balls in der
Abwehr, das Entfernen des Balls aus einer Spielfeldecke, usw. Diese Verhalten
werden durch Parameter wie Schußziel und dynamische Heimat-Position konfiguriert.
Letztere wird auch dazu benutzt, Gegner zu decken bzw. Roboter frei zu stellen.
Auf der oberen Roboterebene gibt es relativ langsame und komplexe Verhalten, wie
Anstoß, Abwehr und Angriff, die das taktische Verhalten der Roboter beeinflussen.
Diese obere Ebenen der einzelnen Spieler sind eng mit der untersten Teamebene
verknüpft.
21
Abbildung 15: Prinzip der Teamsteuerung
Das Teamverhalten wird genau wie das Verhalten der einzelnen Spieler erzeugt, nur
daß die Verhalten auf Teamebene langsamer und komplexer sind. Auf der untersten
Teamebene wird beispielweise bestimmt, welcher der Spieler die Initiative
übernehmen und aktiv zum Ball gehen soll und welche Roboter andere Aufgaben wie
Decken oder Freistellen bekommen. Die Rollenverteilung beim Angriff ist in
Abbildung 16 veranschaulicht. Das Team verwaltet auch eine Anzahl von Rollen, die
mit den einsatzfähigen Spielern besetzt werden. So kann beispielsweise der Ausfall
eines Roboters automatisch kompensiert werden.
Abbildung 16: Teamverhalten beim Angriff
Damit die reaktive Verhaltenssteuerung nicht nur der Realität hinterherläuft, gibt es in
der Hierarchie eine Vielzahl von Vorhersagen. Diese beziehen sich jeweils nur auf
wenige Zeitschritte. Die Steuerung erfolgt dann nicht mit den aktuellen, sondern mit
22
den vorhergesagten Sensorwerten. So wird beispielsweise die Position des Balls
vorhergesagt und der Feldspieler versucht nun, nicht direkt zum Ball zu fahren,
sondern zur günstigsten Position in Abhängigkeit von der Intention. In Abbildung 17
soll zum Beispiel ein Feldspieler ein Tor schießen und nimmt dazu Anlauf.
Abbildung 17: Ballvorhersage beim Anlauf
Das Design der Verhalten erfolgt von unten nach oben. Komplexe Verhalten können
so auf einfachen Verhalten aufbauen. Die Verhalten der Feldspieler und des Teams
laufen quasiparallel auf einem PC ab. So ist es möglich, alle internen Zustände in
Protokollen aufzuzeichnen und zu visualisieren.
Abbildung 18: Ballvorhersage beim Anlauf
23
Auf den Protokollen aufbauend wurde ein Simulator entwickelt, der die komplette
Wiederholung einer Spielszene zuläßt bei gleichzeitiger Betrachtung ausgewählter
interner Zustände. Dies hat sich als sehr wertvolle Hilfe erwiesen, wenn das Verhalten
der Roboter von außen nicht so aussieht, wie es die Intention der Verhaltensdesigner
war. Die internen Zustände können so in einem Debugging-Prozeß überprüft werden
und somit Fehler beim Verhaltensdesign relativ einfach gefunden werden.
Erste Schritte in Richtung lokaler Kamera
Abbildung 19 zeigt zwei Roboter mit Omni-Kameras auf der Basis von
Parabolspiegeln. Wir haben uns für einen Parabolspiegel entschieden, weil diese
Spiegelform günstig zu beziehen bzw. zu bauen ist. Unser Spiegel besitzt zwei
Phasen: eine ebene Phase für die Beobachtung des Feldes um den Roboter und die
Parabolphase, mit der das gesamte Spielfeld abgedeckt wird. Für den optimalen
Einsatz des neuen Spiegels werden wir den Robotern eine eher konische Form geben.
Diese wird Kamera und Spiegel schützen und die Umgebung des Roboters besser
sichtbar machen.
Abbildung 19: Die neuen FU-Fighters mit omnidirektionalen Kameras
Unsere ersten Erfahrungen mit omnidirektionalen Kameras waren vielversprechend.
Abbildung 20 zeigt eine Ansicht der Parabolphase des Spiegels, wenn der Roboter ins
Zentrum des Feldes gestellt wird. Aus der Verzerrung der Spielumrandung kann die
genaue Position des Roboters abgeschätzt werden. Der erste Schritt dafür besteht in
der Segmentierung des Bildes, um verschiedene Klassen von Pixeln zu unterscheiden:
weiße Wand, grüne Spielfläche, schwarze Roboter, oranger Ball, usw. Zum Lernen
der verschiedenen Farbklassen lassen wir den Roboter im Spielfeld umherfahren:
zuerst definiert der Operator einige Farben, dann wird automatisch weiter gelernt. So
kann sich der Roboter an jede Beleuchtungs- und Spielsituation anpassen. Aus der
24
gewonnenen Information wird in einem zweiten Schritt eine Segmentierungstabelle
aufgebaut, wodurch die Klasse einer Farbe effizient bestimmt werden kann.
Abbildung 20. Ansicht des Spielfeldes im Parabolspiegel
Da direkte Zugriffe auf alle Bildpixel zeitlich sehr teuer sind, klassifizieren wir das
Bild durch eine Abtast-Methode, die darin besteht, die Segmentierung des Spielfeldes
entlang bestimmter Richtungen durchzuführen. Abbildung 21 zeigt ein Beispiel dafür.
Abbildung 21: Abtasten des Spielfeldes
Mit den Informationen aus den Abtastrichtungen kann dann die Position des Roboters
bestimmt werden oder zumindest eine Hypothese darüber formuliert werden, die dann
mit zusätzlichen Sensorinformationen überprüft werden kann. Da wir die Roboter
permanent verfolgen und ihre genaue Position kennen, läßt sich ein großer Teil der
Mehrdeutigkeiten aufheben.
25
Für Training und Verbesserung der Lokalisationssoftware haben wir bereits einen 3DSimulator geschrieben, der das Spielfeld in das lokale parabolische Bild verwandelt.
Damit lassen sich künstliche Daten und Verdeckungssituationen mit wenig Aufwand
generieren, die dann mit unseren Algorithmen bearbeitet werden können.
Abbildung 22: Komplexe Spielfeldsituation aus Sicht einer lokalen Omni-Kamera
Wir haben auch schon angefangen, den neuen Bildsensor mit weiteren
Informationsquellen zu versorgen: Demnächst werden wir einen herkömmlichen
Kompaß mit Magnetnadel am Roboter befestigen, der über der ebenen Phase des
Spiegels sichtbar ist. Der Kompaß kann dann direkt abgelesen werden, um die
Orientierung des Roboters zu bestimmen. Da wir hauptsächlich durch Abtasten die
Orientierung und Position des Roboters bestimmen, bildet der Kompaß einen
zusätzlichen Sensor, dessen Information mit weiteren Quellen abgeglichen werden
muß.
Die Bildverarbeitung wird auch die Bewegung der Räder messen können, da diese
weiße Streifen haben werden. Insgesamt möchten wir den Stellenwert der lokalen
Bildverarbeitung stärken, so daß aus ihr so viel Information wie möglich gewonnen
werden kann.
Darüber hinaus kann durch Messung des optischen Flusses der ebenen Phase des
Spiegels die Geschwindigkeit des Roboters abgeschätzt werden. Diese Information
können wir mit den Odometrie-Daten kombinieren, um eine zuverlässigere
Geschwindigkeitsmessung zu erhalten.
Außerdem planen wir, einen zusätzlichen Bildsensor am Boden des Roboters
einzubauen, um durch Messung des optischen Flusses die relative Bewegung des
Roboters in bezug auf das Spielfeld zu bestimmen. Insgesamt bietet die Kombination
all dieser Verfahren eine Genauigkeit, die für die Navigation in der RoboCupUmgebung ausreichend ist. Die Vielzahl der Sensoren macht die Entwicklung einer
geeigneten Strategie für die Sensorintegration unerläßlich [Rojas 2000c].
26
Zusammenfassung
Unser Team verfügt trotz seines jungen Alters über vielfältige Erfahrungen beim Bau
von Robotern, beim Design von On-Board-Elektronik, bei der Bildverarbeitung in
Echtzeit und bei der reaktiven Steuerung von Multiagenten. Wir haben bereits
Vorarbeiten geleistet für die Entwicklung von lernenden Small-Size-Robotern mit
omnidirektionalen Kameras, die in großen Teams kooperieren.
Unten sind die Wettbewerbe und Auftritte aufgelistet, an denen wir seit 1999
teilgenommen haben.
Auftritte und Wettbewerbe der FU-Fighters (1999-2000)
August 1999
RoboCup 1999, im Rahmen der International Joint Conference
on Artificial Intelligence, Stockholm 1999 (2. Platz).
September 1999
Vorführung im Rahmen des Wissenschaftsfestivals in Bonn
Oktober 1999
Vorführung beim Workshop Kognition und Motorik in Como,
Italien
Dezember 1999
Teilnahme am Robot Soccer Cup des Westdeutschen
Rundfunks während der Computernacht in Paderborn (1. Platz).
Februar 2000
Vorführung bei der Berlinale 2000 im Rahmen der Sonderausstellung von Roboter-Filmen.
Februar 2000
Vorführung bei der CEBIT in der Forschungshalle
Mai 2000
Teilnahme an der RoboCup-Europameisterschaft (1. Platz)
August 2000
RoboCup 2000 in Melbourne (2. Platz)
November 2000
Vorführung bei der Ars Electronica 2000 in München
Eine Auflistung der über unser Team erschienenen Pressemeldungen kann auf unserer
Homepage http://www.fu-fighters.de/ gefunden werden. Dort findet man auch unsere
Publikationen und Vorträge, sowie Videoaufzeichnungen von einigen Spielen, an
denen wir beteiligt waren.
27
Literatur
[Ackers et al. 1999]
Peter Ackers, Sven Behnke, Bernhard Frötschl, Wolf Lindstrot,
Manuel de Melo, Mark Preier, Raul Rojas, Andreas Schebesch,
Mark Simon, Martin Sprengel, Oliver Tenchio, The Soul of a New
Machine: The Soccer Robot Team of the FU Berlin, Technical Report B-12/99, Department of Mathematics and Computer Science,
FU Berlin, 1999.
[Behnke et al. 2000a]
Sven Behnke, Raul Rojas, and Gerd Wagner, "A hierarchy of reactive behaviors handles complexity", Proceedings of: Balancing
Reactivity and Social Deliberation in Multi-Agent Systems, Workshop bei ECAI, 14th European Conference on Artificial Intelligence, Berlin, 2000.
[Behnke et al. 2000b]
S. Behnke, B. Frötschl, R. Rojas, P. Ackers, W. Lindstrot, M. de
Melo, M. Preier, A. Schebesch, M. Simon, M. Sprengel, and O.
Tenchio, "RoboCup-99 (F180) Team Description: FU-Fighters,"
Team Descriptions RoboCup'99 -Stockholm, 1999. revised Version
in RoboCup-99: Robot Soccer World Cup III, pp. 667-670, Springer, 2000.
[Behnke et al. 2000c]
S. Behnke, B. Frötschl, R. Rojas, P. Ackers, W. Lindstrot, M. de
Melo, M. Preier, A. Schebesch, M. Simon, M. Sprengel, and O.
Tenchio, "Using hierarchical dynamical systems to control reactive
behavior," Proceedings IJCAI'99 - International Joint Conference
on Artificial Intelligence, The Third International Workshop on
RoboCup - Stockholm, pp. 28-33, 1999. Neue Fassung in RoboCup-'99: Robot Soccer World Cup III, pp. 186-195, Springer,
2000.
[Rojas 1995]
R. Rojas, "A short proof of the posterior probability property of
classifier neural networks'', Journal of Neural Computation, Vol. 7,
N. 6, 1995, pp. 41-43.
[Rojas 1996a]
Raul Rojas, Neural Networks, Springer-Verlag, Berlin-New York,
1996.
[Rojas 1996b]
R. Rojas, "A graph labeling proof of the backpropagation
algorithm'', Communications of the ACM, December 1996, Vol. 39,
N. 12, 1996, pp. 202-206.
[Rojas et al. 2000]
Raul Rojas, Sven Behnke, Lars Knipping, Bernhard Frötschl,
"Team Description: FU-Fighters 2000", Peter Stone (Hrsg.), "Ro-
28
boCup-2000: Robot Soccer World Cup IV", Springer-Verlag (erscheint in 2001).
[Rojas et al. 2000]
R. Rojas, S. Behnke, Bernhard Frötschl, Lars Knipping, Kirill
Koulechov, Wolf Lindstrot, Mark Simon, Oliver Tenchio, Lars
Wolter "The Robotic Soccer Turing Test", Technical Report B-0014, FU Berlin, August 2000.
[Rojas 2000]
R. Rojas, "Soccer Without Reason - Sensor fusion in the FUFighters Team", Proceedings of the International Workshop Data
Fusion and Perception, Udine, Oktober 2000.
[Pfister et al. 1999]
M. Pfister, S. Behnke, R. Rojas, "Recognition of Handwitten ZIP
Codes in a Postal Sorting System", KI Zeitschrift, N. 2, 1999.
[Simon et al. 2000]
Mark Simon, Sven Behnke, and Raul Rojas, "Robust Real Time
Color Tracking", Peter Stone (Hrsg.), Proceedings of: The Fourth
International Workshop on RoboCup, Melbourne, Australia, 2000,
S. 62-71.
29
3.
Ziele und Arbeitsprogramm
3.1
Ziele
Unsere Ziele für die ersten zwei Jahre der Förderperiode sind:
-
-
-
-
Entwicklung eines Teams von völlig autonomen Robotern mit lokaler
Bildauswertung durch On-Board-Elektronik.
Entwicklung eines preisgünstigen omnidirektionalen Kamera-Systems für die
Bildanalyse.
Weiterentwicklung der Mechanik und Elektronik unserer Roboter, insbesondere in
bezug auf die Ballführung und Integration von zusätzlichen Sensoren.
Training der Steuerungssoftware mit Hilfe von Reinforcement Learning.
Wir wollen innerhalb von zwei Jahren in der Lage sein, auf dem F2000-Spielfeld mit
elf Robotern zu spielen.
Uns ist bewußt, daß einige Technologien eine deutliche Weiterentwicklung auf
diversen Feldern benötigen, um unsere Ziele zu erreichen. Darin liegt aber der Anreiz
dieser Forschung, die unter anderem auch eine wirtschaftliche Nutzung haben wird,
wie weiter unten präzisiert wird. Der Reiz des Vorhabens, mit elf Robotern auf dem
F2000-Spielfeld zu spielen, liegt aber insbesondere darin, daß wir damit die
charakteristischen Eigenschaften der F2000-Liga und der Simulationsliga vereinigen
können. Wenn zwei Teams von je elf Robotern auf einem Spielfeld von 9 mal 5
Metern aufeinander treffen, darf keiner der Roboter Individualist sein:
Mannschaftsspiel ist gefragt, um die Batterien zu schonen und schneller den Ball nach
vorne zu bewegen. Gerade dies ist der Kern der Simulationsliga. Wir sind in der
F180-Liga in der günstigen Situation, aus den anderen Ligen zu lernen und unser neu
gewonnenes Wissen auch direkt in das Verhalten der Roboter umzusetzen.
In unserem Vorhaben werden insbesondere folgende Hardware und SoftwareEinzelkomponenten entwickelt:
Mechanik
Wir brauchen größere Roboter, die sowohl für das Spiel auf dem F180 als auch auf
dem F2000-Spielfeld geeignet sind. Die Antriebsart mit zwei Rädern soll bei den
Feldspielern beibehalten werden, beim Torwart dagegen soll eventuell ein
omnidirektionales Fahrwerk eingebaut werden. Wir werden parabolische Kameras auf
die Roboter montieren, so daß schließlich die Form der Roboter eher konisch wird.
Es hat sich während des RoboCup-2000 herausgestellt, daß ein spezieller
Ballführungsmechanismus von Vorteil ist: Er besteht aus einer rotierenden Rolle, die
den Ball mit starkem Unterschnitt gegen den Roboter selbst dreht. Auch wenn sich
der Ball kurzzeitig entfernt, zum Beispiel durch den Stoß eines anderen Roboters, so
bewirkt der Rückwärtsdrall des Balles, daß der Roboter wieder in Ballbesitz kommt.
Der Ball bleibt also in fast ständigem Kontakt mit dem Roboter - und dies sogar,
wenn der Roboter rückwärts fährt.
30
Abbildung 23 zeigt zwei Diagramme. Das linke Diagramm zeigt die Form der
Roboter, die noch beim RoboCup-2001 mit einer globalen Kamera eingesetzt werden.
Wichtigste Neuerung ist der oben beschriebene Ballführungsmechanismus. Neben der
besseren Ballkontrolle ermöglicht er auch das Einschalten des Schußapparats während
des Ballführens. Bisher mußte vor dem Schießen der Schußapparat bereits drehen.
Der rotierende Schußapparat ist gestrichelt gezeichnet.
Wir haben bereits recht gute Vorstellungen über die Art der Roboter, die wir bauen
möchten. Das rechte Diagramm zeigt die Form der Roboter mit omnidirektionaler
Kamera. Die Roboter werden das Bild zuerst noch per Funk übertragen, aber bereits
im zweiten Jahr des Vorhabens wird die On-Board-Elektronik die Bilder verarbeiten.
Durch geschickte Verteilung des Gewichtes des Roboters kann der Schwerpunkt so
abgesenkt werden, daß der Roboter nicht umkippt. Der Roboter wird mit zwei
Ballführungen ausgestattet. Es ist auch möglich, einen Schußapparat gemäß der
Käfigkonstruktion unserer dritten Robotergeneration einzubauen.
Abbildung 23: Überlegungen zu Robotern der nächsten Generation
Die genaue Geometrie wird sich im Laufe des Projektes ergeben. Am Boden des
Roboters werden wir einen Sensor für die Messung des optischen Flusses einbauen.
Die omnidirektionale Kamera wird auch die Bewegung der eigenen Räder messen
können, da diese weiße Streifen haben werden. Insgesamt möchten wir den
Stellenwert der lokalen Bildverarbeitung stärken, so daß aus ihr so viel Information
wie möglich gewonnen werden kann.
Wir haben auch schon angefangen, den neuen Bildsensor mit weiteren
Informationsquellen zu versorgen: Demnächst werden wir einen herkömmlichen
Kompaß mit Magnetnadel am Roboter befestigen, der über die ebene Phase des
Spiegels sichtbar ist. Der Kompaß kann dann direkt abgelesen werden, um die
Orientierung des Roboters zu bestimmen. Da wir hauptsächlich durch Abtasten die
Orientierung und Position des Roboters bestimmen, bildet der Kompaß einen
zusätzlichen Sensor, dessen Information mit weiteren Quellen abgeglichen werden
muß.
Wir werden unserem Torwart ein neues mechanisches Design geben. Die wichtigste
Neuerung könnte sein, ihn mit einem omnidirektionalen Fahrwerk auszustatten. Wir
verwenden zur Zeit noch eine vierrädrige Konfiguration mit je zwei parallelen Rädern
und 2 diagonal gegenüberliegenden Antriebsrädern. Dieser Aufbau hat den Vorteil,
daß die Kräfte orthogonal wirken, erfordert jedoch eine sehr gute Abstimmung der
31
Ladungsverteilung, um eine gute Haftung zu ermöglichen. Wir werden uns für ein
System mit drei oder vier Rädern nach einigen Experimenten entscheiden.
Elektronik
Wir werden zwei Varianten der On-Board-Elektronik bauen. Bis Seattle 2001 (der
Austragungsort der nächsten RoboCup-Weltmeisterschaft) werden wir einen stärkeren
Prozessor einsetzen (Power-PC mit geringem Stromverbrauch). Wir erwarten, daß
Motorola uns im Rahmen einer Sachspende die Prozessoren zur Verfügung stellen
wird. Damit wird es uns möglich, Teile der Software Schritt für Schritt vom
Zentralrechner auf den lokalen Rechner zu übertragen. Wir möchten insbesondere die
Auswertung der Odometrie der Räder und die Auswertung des Optischen-FlussSensors am Boden des Roboters durch die lokale Elektronik bewerkstelligen.
Außerdem planen wir, wechselseitigen Informationsaustausch zwischen dem
Zentralrechner und den Robotern einzuführen, der nicht nur im Senden von
Sensordaten vom Roboter zum Zentralrechner und Senden von Steuerbefehlen vom
Zentralrechner zum Roboter besteht. Statt dessen sollen die Sensordaten zu einem
großen Teil lokal verarbeitet werden, nur Daten für die Teamsteuerung und zum
Reinforcement Learning sollen noch vom Zentralprozessor geschickt werden. Bis
heute arbeitet unser System nur in eine Richtung. Wir werden aber neue Funkmodule
einbauen, die bidirektionale Kommunikation erlauben. Dazu werden wir die
drahtlosen Datenübertragungstechniken DECT, WaveLAN und Bluetooth evaluieren.
Für die Auswertung der Bilder von der lokalen Videokamera werden wir bis Seattle
2001 externe Rechner verwenden. Wir können bereits jetzt gleichzeitig bis zu fünf
Videoströme im 2,4 GHz Band übertragen. Diese Übergangsstrategie wird uns
erlauben, die Software für die Bildauswertung und Navigation der Roboter
komfortabel auf einem externen PC zu entwickeln. Durch die Funkübertragung sind
wir aber in der Lage, unabhängig von der neuen Elektronik bereits 2001 lokale
Computervision im Spiel einzusetzen.
Wegen der großen anfallenden Datenmengen bei der Videoübertragung benötigen wir
5 externe Rechner für die Steuerung. Um den Platzverbrauch gering zu halten, werden
wir einen PC-Cluster in kleinem Format aufbauen, der dann mit nur einem Monitor
und gemeinsamer I/O arbeitet. Die Rechner werden auch für das Projekt verwendet,
wenn die On-Board-Elektronik weiterentwickelt ist: Viel Rechnerleistung wird in der
zweiten Phase des Projektes für das Reinforcement Learning benötigt.
Unsere zweite On-Board-Elektronik wird bereits in der Lage sein, die Bildauswertung
vollständig auf dem Roboter zu bewerkstelligen. Dafür werden wir die auf dem Markt
befindlichen Prozessoren auswerten, wobei wir zur Zeit eine Lösung mit einem PDAProzessor ins Auge gefaßt haben. Compaq bietet bereits einen PDA (iPaq) mit dem
206 MHz StrongARM-Prozessor an und auch Samsung plant die Markteinführung
eines PDAs (YoPY) mit diesem Prozessor, der auch über eine Videokamera verfügt.
Eine weitere Alternative wäre die Verwendung von DSPs. Verschiedene Hersteller
bieten neue Modelle an, die auf Stromverbrauch optimiert wurden. Dies bedeutet
allerdings, daß wir bis zur Portierung der Bildverarbeitungsalgorithmen auf die lokale
32
Elektronik diese so weit verfeinert und optimiert haben müssen, daß sie auch dort
laufen können.
Bildanalyse
Wir haben bereits einen ersten Prototyp der Bildauswertung für die Parabolkamera.
Wir sind in der Lage, Bilder zu empfangen, Regionen zu erkennen und die
segmentierten Bilder in jede gewünschte Richtung zu segmentieren.
Wir wollen im Laufe des Projektes die Bildauswertung so weit entwickeln, daß die
Lokalisation des Roboters allein aus den lokalen Sensoren möglich wird. Wir wissen
aus den Erfahrungen von Teams in der F2000-Liga, daß die auftretenden Probleme
keineswegs trivialer Natur sind. Deswegen werden wir auf Sensorintegration setzen:
unsere Bildanalyse wird um so einfacher, desto mehr wir über die Position des
Roboters wissen. Dafür haben wir zwei Ansätze:
Erstens haben wir bereits viel Erfahrung bei der Verfolgung unserer Roboter mit der
globalen Kamera gesammelt. Wir verwenden zunächst eine erste Hypothese über die
Lage des Roboters, die dann anhand weiterer Informationen überprüft wird. Wir
können zusätzlich die Sensoren über den optischen Fluß am Boden des Roboters
verwenden, die eine recht gute Abschätzung der Bewegung des Roboters innerhalb
der letzen Sekundenbruchteile ergeben kann. Dazu kommt noch die Information aus
der Odometrie. Mit dieser Information können gezielt Merkmale auf dem Spielfeld
gesucht werden, ähnlich wie wir es bereits mit der globalen Kamera tun. Unsere
Bildauswertung ist deswegen so erfolgreich (die besten Teams in der F180-Liga
arbeiten mit dedizierter Bildverarbeitungshardware, mit Ausnahme unseres Teams,
das nur Software verwendet), weil wir nie das gesamte Bild für das Verfolgen von
Objekten benötigen. Wir reduzieren das Problem auf die Verarbeitung von begrenzten
Gebieten im Bild. Ähnlich werden wir mit der Omni-Kamera verfahren. Die
Algorithmen dafür werden wir im Laufe des Projektes entwickeln.
Steuerung - Simulation
Falls dieses Projekt genehmigt wird, ist es unser Ziel, bereits beim RoboCup 2002 in
Japan mit einem Team aus elf Robotern auf dem großen Spielfeld der F2000-Liga
anzutreten. Dafür müssen wir aber bereits im ersten Jahr der Förderung die Weichen
stellen. Die entsprechenden Regeln wurden von der RoboCup-Organisation bereits
unter dem Namen "Full-Set Small-Size Robot League Regulations" verabschiedet,
allerdings wurden bisher in dieser Klasse noch keine Wettkämpfe ausgetragen.
Wegen der interessanten wissenschaftlichen Fragestellungen, die sich gerade in dieser
Liga ergeben, sind wir zuversichtlich, bald anspruchsvolle Konkurrenten zu
bekommen.
Wir möchten Reinforcement Learning auf verschiedenen Ebenen einsetzen. Das
Vorgehen dabei ist, daß man durch positive oder negative Belohnung die
Aktionsauswahl der Roboter beeinflußt. Am besten gelingt dies, wenn man das
Lernen in einem Simulator durchführt und erst später in die Hardware integriert.
33
Wir werden deswegen als erstes einen Simulator unseres Teams schreiben. Dabei sind
wir in einer privilegierten Situation gegenüber Teams aus der F2000-Liga, weil wir
über vollständige Aufzeichnungen von unseren Spielen verfügen. Über die globale
Kamera auf dem Spielfeld können wir die Position der Roboter aufzeichnen und
direkt vergleichen, welche Befehle an die Roboter verschickt wurden und welche
Dynamik sich daraus ergab. Wir brauchen kein analytisches Modell der Fahrdynamik
zu entwickeln, wir können einfach aus diesen Daten (und den Daten, die von unserer
Steuerungssoftware gespeichert werden) ein Modell mit Hilfe von neuronalen Netzen
erstellen und später im Simulator dieses Modell trainieren. Auf diesem Gebiet
verfügen wir über die notwendige Expertise [Rojas 1995, 1996a, 1996b].
Der Simulator wird also zuerst mit den Daten aus unseren Protokollen trainiert. Z.B.
kann das Verhalten des Balls beim Rollen auf Teppichboden präzis modelliert werden
(später wichtig für die Ballvorhersage). Die dynamische Antwort der Roboter
(Beschleunigung, Geschwindigkeit, Drehungen usw.) kann ebenfalls auf diese Art
gelernt werden. Der Simulator wird uns dann erlauben, hypothetische Spielsituationen
zu testen und die Antwort der Steuerungssoftware zu überprüfen.
Lernen durch Reinforcement
Wenn der Simulator geschrieben ist, wird in einem Wechselspiel zwischen Simulation
in Software und Test mit der Hardware die Steuerungssoftware verbessert. Als erstes
soll der Torwart auf verschiedene Spielsituationen trainiert werden. Falls unser neuer
Torwart einen omnidirektionalen Antrieb haben wird, gibt es mehrere Varianten im
Verhalten, die dann möglich sind. Der Torwart kann aktiv in das Spiel vor dem
Strafraum eingreifen, oder er kann sich zurückziehen und parallel zur Linie laufen.
Auch für den herkömmlichen Torwart gibt es schon eine relativ komplexe
Entscheidungsdynamik.
Das Training des Torwarts ist dennoch einfacher als das eines Feldspielers, da wir
auch beim Training mit dem Ball den Torwart belohnen oder bestrafen können. Dies
kann manuell durch einen Beobachter gemacht werden, der immer dann belohnt,
wenn der Torwart gut zum Ball steht, und der bestraft, wenn der Torwart falsch steht.
Es bietet sich hier eine Strategie an, die das Problem des Reinforcement Learning auf
eine handhabbare Größe reduziert: Durch die sequentielle Verbesserung des
Verhaltens vom Torwart über den Zentralverteidiger (der eine ähnliche Rolle wie der
Torwart spielt) bis zu den übrigen Spielern wird das Problem vereinfacht. Durch
Anwendung einer Spezialisierungsstrategie kann also der Trainingsaufwand reduziert
werden: Zuerst werden elementare Spielsituationen und dann komplexere trainiert.
Wir werden keineswegs versuchen, das gesamte Teamverhalten gleich von Anfang an
zu optimieren, sondern zuerst einzelne Spieler und ihre individuellen Aktionen
trainieren. Dies ist ein adäquater Ansatz für das kleine Spielfeld der F180-Liga, in
dem Kooperation schon ziemlich komplex ist. Erst beim großen Feld werden wir auf
zusätzlich koordiniertes Teamverhalten setzen.
34
Deliberative und reaktive Steuerung
Gegen Ende des zweiten Jahres unseres Projektes werden wir schließlich die
Koordination des Teams auf einem großen Spielfeld untersuchen. Hier werden wir auf
unsere Kooperation mit Teams aus der Simulationsliga setzen und viele ihrer
Erkenntnisse für unsere Roboter verwenden.
Wir sind überzeugt davon, daß unsere reaktive Architektur auch im Sinne einer
deliberativen Steuerung erweitert werden kann. In unserer Kontrollpyramide gibt es
eine Ebene auf der das Teamverhalten kontrolliert wird. Die Parameter aus dieser
Ebene fließen in die unteren Ebenen ein und werden dort weiterverarbeitet.
Zusammenfassung
Ich habe versucht deutlich zu machen, daß wir einen wohlüberlegten und fundierten
Aktionsplan für die nächsten zwei Jahre haben. Wir wissen, was wir brauchen, welche
Komponenten wir entwickeln müssen und an welcher Stelle zusätzliche
Überlegungen notwendig sind. Wir sind zuversichtlich, daß unser Vorhaben
realisierbar ist und daß genug interessante Probleme vorhanden sind, um die
Förderung zu begründen.
Allerdings ist dieses Projekt von einem solchen Umfang, daß die Bewilligung von
zwei Mitarbeiterstellen wichtig ist. Der erste Mitarbeiter soll sich primär mit der
lokalen Navigation und danach mit der Erstellung eines Rahmens für Reinforcement
Learning beschäftigen, der zweite Mitarbeiter mit dem Aufbau der Roboter, der
Portierung der Bildanalyse-Algorithmen auf die neue On-Board-Elektronik und später
mit der Portierung des Reinforcement Learnings.
Wir kennen bereits die Gruppen, die seit Jahren am RoboCup teilnehmen. Wir werden
uns mit ihnen im Rahmen des SPP abstimmen, um wichtige Bausteine und
Erfahrungen auszutauschen. Unser Projekt dient gewissermaßen als Integrator für
andere Vorhaben im Rahmen des SPPs, weil wir in den nächsten zwei Jahren die
Probleme der F2000 und der Simulationsliga in unserer eigenen Liga vorfinden
werden.
35
Arbeitsprogramm
Der Darstellung oben folgend, gliedert sich das Arbeitsprogramm in die folgenden
zwei Phasen:
-
-
In der ersten Phase steht die Autonomie der Roboter im Mittelpunkt, d.h. sie
sollten unabhängig von einer externen Kamera agieren können.
In der zweiten Phase liegt der Schwerpunkt auf Lernen und der Erweiterung des
Systems auf das Spiel elf gegen elf auf einem großen Feld.
Erste Phase (erstes Jahr)
1. Halbjahr
Erster wissenschaftlicher Mitarbeiter:
Entwicklung der Computervision-Software für eine omnidirektionale Videokamera
mit parabolischem Spiegel. Selbstlokalisation des Roboters anhand der Spielfeldbegrenzung, Lokalisation des Spielballs und anderer Roboter im Feld. Integration
mehrerer lokaler Weltsichten zu einer globalen Sicht. Einbettung in die vorhandene
Steuerungssoftware.
Zweiter wissenschaftlicher Mitarbeiter:
Entwicklung einer neuen Steuerungselektronik mit einem neuen Microcontroller.
Auswertung und Vergleich der Alternativen auf dem Markt, Layout und Bau. Design
einer neuen Mechanik des Roboters, insbesondere mit innovativen Mechanismen zur
kontrollierten Ballführung.
Integration:
Einsatz des neuen Systems beim RoboCup 2001 in Seattle in einem neuen Team "FUFighters Omni". Die Roboter sollen mit neuer Mechanik und Elektronik ausgestattet
sein und die mit der Omni-Kamera aufgenommenen Bilder per Funk an externe
Rechner übertragen werden, auf denen Computervision und Verhaltenssteuerung
realisiert sind.
2. Halbjahr
Erster wissenschaftlicher Mitarbeiter:
Entwicklung zusätzlicher Software für die Navigation mittels Pfadintegration. Dazu
soll sowohl mit der Omni-Kamera als auch mit einem Infrarotsensor am Boden des
Roboters der optische Fluß bestimmt werden. Weiterhin sollen die Impulsgeber der
Motoren und ein elektronischer Kompaß benutzt werden. Verbesserung der
Steuerungssoftware.
36
Zweiter wissenschaftlicher Mitarbeiter:
Auswahl eines kleinen und leistungsfähigen Rechners, der in der Lage ist, die
Videodaten lokal zu verarbeiten. Portierung der Bildanalyse-Software für die OmniKamera und der Software zur Verhaltenssteuerung auf diesem Rechner. Entwicklung
der Elektronik für den neuen Sensor am Boden des Roboters sowie für bidirektionale
Kommunikation.
Integration:
Ein Team von fünf autonomen Robotern, das ohne externe Kamera und ohne externe
Rechner spielt.
Zweite Phase (zweites Jahr)
1. Halbjahr
Erster wissenschaftlicher Mitarbeiter:
Erstellung eines realitätsnahen Simulators, mit dem Reinforcement Learning von
Strategie und Taktik anhand einer Spielsimulation durchgeführt werden kann. Die für
die Anpassung des Weltmodels notwendigen Daten werden aus Protokollen der
vorhandenen Spiele entnommen.
Zweiter wissenschaftlicher Mitarbeiter:
Design und Bau eines Teams aus elf autonomen Robotern, die Kamera, weitere
Sensoren, Bildverarbeitung und Verhaltenssteuerung beinhalten. Erweiterung des
Systems für das Spiel auf einer Fläche von 9 mal 5 Metern.
Integration:
Einsatz des neuen Systems beim RoboCup 2002 in Japan in einem Team "FUFighters Autonom" in der Small-Size-Liga, sowie Demonstrationsspiel mit elf
Spielern auf dem großen Spielfeld (Full-Set Small-Size).
2. Halbjahr
Erster wissenschaftlicher Mitarbeiter:
Koordination des Teams von elf Spielern durch Portierung von Erfahrungen und
Methoden aus der Simulationsliga in unsere Liga. Mit Hilfe des bereits vorhandenen
Simulators können Koordinationsstrategien getestet werden. Einbettung derselben in
unseren reaktiven Ansatz.
37
Zweiter wissenschaftlicher Mitarbeiter:
Reinforcement Learning von Parametern der Steuerungssoftware im Simulator.
Entwicklung von Reinforcement Learning der Bewegungskontrolle auf der realen
Hardware. Optimierung der Steuerungssoftware.
Integration:
Demonstration der Vorteile von Autonomie und Lernen im Spiel.
Studentische Hilfskräfte
Je eine studentische Hilfskraft wird jedem wissenschaftlichen Mitarbeiter zugeordnet.
Ihre Aufgabe ist die Durchführung praktischer Programmierarbeiten, sowie einfacher
elektronischer und mechanischer Arbeiten. Bei komplexeren Arbeiten werden wir
durch externe Werkstätten (Physik, MPG, usw.) unterstützt. Die Aufgabe der
studentischen Hilfskräfte hierbei ist Materialbeschaffung und Transport von
Werkstücken.
Wie bisher werden wir auch Diplom- und Studienarbeiten ausschreiben, um unser
Team zu verstärken.
3.2
Untersuchungen am Menschen
Entfällt
3.3
Tierversuche
Entfällt
3.4
Gentechnologische Experimente
Entfällt
38
4.
Beantragte Mittel
4.1
Personalbedarf
1 Wiss. Mitarbeiter Bat IIa für 24 Monate.
Aufgabenbereich: Bildanalyse und Reinforcement Learning
1 Wiss. Mitarbeiter Bat IIa für 24 Monate.
Aufgabenbereich: Elektronik, Mechanik und Mannschaftsspiel.
2 stud. Hilfskräfte, 19h/Woche, für 24 Monate zur Unterstützung der wiss. Mitarbeiter
4.2
Wissenschaftliche Geräte
Die beantragten Summen sind Erfahrungswerte aus unserer Teilnahme beim
RoboCup 1999 und 2000. Dabei haben wir bereits Sachspenden berücksichtigt, die
wir in der Vergangenheit erhalten haben.
Die fünf Computer für die Steuerung der Roboter sind notwendig, weil wir in Seattle
2001 die Bildverarbeitung noch mit externen Rechnern durchführen werden. In Japan
2002 werden wir die neue On-Board-Elektronik einsetzen, mit der On-BoardBildverarbeitung möglich wird.
Die Gesamtsumme für die zwei Jahre ist 97.000 DM.
Kleingeräte:
5 Personal Computer für die Steuerung der Roboter:
Mechanik und Elektronik für ein Team kleiner Roboter:
10.000 DM
15.000 DM
(einmal)
(pro Jahr)
Bildverarbeitungsrechner für ein Team kleiner Roboter:
15.000 DM
(einmal)
5.000 DM
2.000 DM
(einmal)
(einmal)
5.000 DM
(pro Jahr)
Videokameras und Funkgeräte:
Spielfeld (9 x 5 Meter) für ein Team kleiner Roboter:
4.3
Verbrauchsmaterial
Akkus und Ersatzteile:
39
4.4
Reisen
Reisekosten:
Teilnahme am RoboCup 2001 und RoboCup-Workshop (Seattle) 10.000 DM
Teilnahme am RoboCup 2002 und RoboCup-Workshop (Japan) 10.000 DM
Die Summen sind Erfahrungswerte aus unserer Teilnahme am RoboCup 1999 und
2000. Transport der Roboter und Computer plus Anmeldung beim Wettbewerb kosten
etwa 5000 DM. Die restlichen 5000 DM pro Wettbewerb sind dann eher ein Zuschuß
für die Teilnahmekosten des Teams, die deutlich höher sind.
4.5
Sonstige Kosten
Messeauftritte (CEBIT, Systems)
5,000 DM (einmal)
Im Jahr 2000 haben wir an der CEBIT teilgenommen. Zwei Messen innerhalb zwei
Jahren würden etwa 5000 DM für Transport und Übernachtungen kosten.
40
5.
Voraussetzungen für die Durchführung des Vorhabens
5.1
Zusammensetzung der Arbeitsgruppe
Die Arbeitsgruppe Künstliche Intelligenz existiert seit 1997 an der Freien Universität
Berlin. Unsere Schwerpunkte sind Theorie und Anwendungen von Neuronalen
Netzen, Mustererkennung, Handschrifterkennung und reaktive Robotik.
Leiter: Prof. Dr. Raúl Rojas
Landesstellen:
Dipl.-Inf.
Dipl.-Math.
Dipl.-Inf.
Dr.
Sven Behnke
Alexander Gloye
Lars Knipping
Achim Liers
Wiss. Mitarbeiter (KI)
Wiss. Mitarbeiter (KI)
Wiss. Mitarbeiter (KI)
Akademischer Rat (Hardwarelabor)
Drittmittelstelle:
Dipl.-Inf.
Bernhard Frötschl
Wiss. Mitarbeiter
Beteiligung der Studenten:
Unser Team, die FU-Fighters, wurde im Rahmen von Robotik-Seminaren an der FU
aufgebaut. Etwa 8 bis 10 Studenten arbeiten jedes Jahr in unserer RoboCup-AG. Wir
werden weiterhin unsere Aktivitäten in die Lehre einbetten und auf diese Weise
vielfältige Unterstützung für unser Vorhaben erhalten.
Abbildung 24: Mitarbeiter und Studenten des FU-Fighter-Teams 1999.
41
Abbildung 25: Mitarbeiter und Studenten des FU-Fighter-Teams 2000
5.2
Zusammenarbeit mit anderen Wissenschaftlern
Wir haben mit der Arbeitsgruppe von Prof. Dr. Wolfram Menzel und Dr. Martin
Riedmiller (Universität Karlsruhe) eine Zusammenarbeit bezüglich Reinforcement
Learning (RL) auf zwei Ebenen vereinbart: Zum einen möchten wir RL für die
Verbesserung der individuellen Steuerung unserer Roboter verwenden. Zum anderen
ist es sehr wichtig, auch Teamstrategien durch RL zu finden. Dies ist motiviert durch
folgende Überlegung: Wenn wir elf Roboter auf das große Spielfeld bringen, ergibt
sich
eine ähnliche Situation wie bei der Simulationsliga. Strategie und
Kombinationsspiel werden also einen höheren Stellenwert erhalten. Wir sind
deswegen sehr an der Zusammenarbeit mit diesen Kollegen interessiert. In ihrem
SPP-Antrag erwähnen Herr Riedmiller und Herr Menzel diese Kooperation.
Außerdem besteht seit Jahren ein sehr gutes Verhältnis zu den Kollegen von anderen
RoboCup-Teams. Mit der Humboldt Universität (Prof. Burkhardt) führen wir eine
rege Kommunikation und es findet ein regelmäßiger Informationsaustausch über
Seminare und Besuche statt. Wir können daher aus der Erfahrung der HU-Kollegen in
der Simulationsliga profitieren.
5.3
Arbeiten im Ausland und Kooperation mit ausländischen Partnern
Als Mitglied des RoboCup Executive Committee, das jedes Jahr den RoboCupWettbewerb organisiert, habe ich Kontakt zu vielen Kollegen im Ausland. Wir sind
eingeladen worden, über unser Team in Spanien, Frankreich und in den USA zu
berichten.
42
Ich bin Chairman des Organisationskomitees für die F180-Liga beim RoboCup 2001
in Seattle. Ich werde bereits in Seattle 2001 ein Demonstrationsspiel von unseren
Robotern gegen Menschen organisieren, wobei die Menschen Roboter per
Fernsteuerung führen werden. Ich habe dies den "Robot Soccer Turing Test" genannt,
und die FU-Fighters werden die ersten sein, die das Konzept bei einem öffentlichen
Wettbewerb zeigen werden.
5.4
Apparative Ausstattung
Das Institut für Informatik und unsere Arbeitsgruppe verfügen über die ComputerInfrastruktur, die auch an anderen Universitäten üblich ist. Jeder Mitarbeiter hat eine
Workstation und Netzanbindung.
Für die Erstellung der mechanischen Komponenten greifen wir auf die FeinmechanikWerkstatt des Fachbereichs Physik zurück. Wir haben eine gute Kooperation mit dem
Elektronik-Labor des Fritz-Haber-Instituts der Max-Planck-Gesellschaft.
5.5
Laufende Mittel für Sachausgaben
Bis jetzt ist unser RoboCup-Projekt durch Geld- und Sachspenden von Firmen wie
Dr. Fritz Faulhaber GmbH & Co KG, Conrad Electronic GmbH, Sony Deutschland
GmbH und Siemens ElectroCom Postautomation GmbH sowie durch meine
Berufungsmittel finanziert worden.
Es ist vorauszusehen, daß wir in Zukunft weiterhin Sachspenden von Firmen
bekommen werden. Dies haben wir bei der Berechnung der benötigten Mittel bereits
einkalkuliert.
5.6
Sonstige Voraussetzungen
Entfällt
6.
Wirtschaftliche Verwendung
Es ist sehr wichtig, an dieser Stelle zu unterstreichen, daß die Ergebnisse unseres
Projektes eine indirekte wirtschaftliche Verwendung finden können, indem die
Algorithmen, die für lokale Bildanalyse entwickelt werden, auch auf andere RobotikPlattformen portiert werden. Die besondere Herausforderung in unserem Fall ist, daß
wir robuste Verfahren für sehr kleine Rechner entwickeln müssen. Unsere
Algorithmen sollen in Computern von der Größenordnung von PDAs eingesetzt
werden.
43
Der Ansatz, durch die Messung des optischen Flusses direkt am Boden die Position
der Roboter zu verfolgen und bessere Ergebnisse als durch reine Odometrie zu
erzielen, ist ebenfalls neu und kann in kürzester Zeit auch auf andere Roboter
übertragen werden.
Eine direkte wirtschaftliche Verwendung stellt die Simulation von autonomen
mobilen Robotern für Fabrikanlagen dar. Z.B. sind automatische Transportsysteme
für Materialien nicht so flexibel, wie sie sein könnten. Wegen
Sicherheitsvorkehrungen sind sie in der Regel auf die Verfolgung von Linien auf den
Boden begrenzt (durch optische oder magnetische Messungen). Ihre Autonomie ist
begrenzt, da sie andere Roboter nicht überholen können und alternative Pfade zumeist
verboten sind.
In einem gemeinsamen Projekt mit der TU Berlin untersuchen wir die Simulation von
Transportsystemen in Fabrikanlagen mit Hilfe von Miniaturrobotern. Statt teurer
Roboter für die Entwicklung der Navigationssoftware zu verwenden, kann in der
ersten Phase eines Projektes, eine Simulation "in Miniatur" erfolgen. Die beteiligte
Arbeitsgruppe an der TU Berlin simuliert Produktionsanlagen rein durch Software
und erstellt einen ersten Prototyp der notwendigen Programme. Diese Methoden
können dann mit Hilfe der kleinen autonomen Roboter in einer Umgebung, die der
natürlichen näher kommt, weiter überprüft werden. Insbesondere kann die
Selbstlokalisation der Roboter durch Bildverarbeitung getestet werden. Auch die
Pfadplanung und die Anpassung an Hindernisse oder Blockaden des Pfades, sowie die
Erstellung von Karten durch Exploration kann getestet werden. Ein weiterer Aspekt,
der durch den Einsatz kleiner Roboter untersucht werden kann, ist die Koordination
und Kooperation derselben.
Nicht zuletzt ist die RoboCup-F180-Liga diejenige Klasse, aus der am einfachsten
kommerzielle
Edutainment-Produkte
entstehen
können.
Interaktive
Fußballsimulationsspiele gibt es bereits für viele Computer, so daß aus der
Simulationsliga nicht sehr viel Innovation für diesen Wirtschaftszweig zu erwarten
ist. Große F2000-Roboter werden für das breite Publikum noch lange unbezahlbar
bleiben. Dagegen werden kleine autonome Roboter mit ausgefeilter Sensorik bald
vielfältigen Einsatz in Bildung und Freizeit finden.
Wir haben auch in einem Technical Report [Rojas, et al., 2000] beschrieben, wie
Fußballspiele gegen Roboter interaktiv durchgeführt werden können, so daß auch
Menschen ins Spiel eingreifen können. Es ist denkbar, daß auch diese Art der
Interaktion zwischen Menschen und Robotern zum Einsatz in der Freizeitindustrie
kommen könnte.
44
7.
Erklärungen
7.1
Ein Antrag auf Finanzierung dieses Vorhabens wurde bei keiner anderen
Stelle eingereicht. Wenn ich einen solchen Antrag stelle, werde ich die
Deutsche Forschungsgemeinschaft unverzüglich benachrichtigen.
7.2
Der DFG-Vertrauensdozent der FU Berlin wurde von dem Antrag informiert.
8.
Unterschriften
Prof. Dr. Raúl Rojas
45
9.
Verzeichnis der Anlagen
Ausgewählte Veröffentlichungen
Faltblatt der "FU-Fighters"
CD mit dem Inhalt der FU-Fighters-Webseite (Dokumentation, Bilder und Videos)
Herunterladen