entwicklung einer entropie-basierten ... · wird ein mikrocontroller mit einem 72 mhz arm cortex m3...

34
Freie Universität Berlin Fachbereich Mathematik und Informatik Lehrstuhl für Künstliche Intelligenz Bachelorarbeit der Informatik Entwicklung einer Entropie-basierten Blickrichtungssteuerung für autonome, humanoide Fussballroboter von Julius Auer Gutachter: Prof. Dr. Raúl Rojas Betreuer: Dipl.-Inf. Daniel Seifert 27. Januar 2015

Upload: phamkiet

Post on 18-Aug-2019

213 views

Category:

Documents


0 download

TRANSCRIPT

Freie Universität BerlinFachbereich Mathematik und Informatik

Lehrstuhl für Künstliche Intelligenz

Bachelorarbeit der Informatik

Entwicklung einer Entropie-basiertenBlickrichtungssteuerung für autonome,

humanoide Fussballroboter

von Julius Auer

Gutachter:Prof. Dr. Raúl Rojas

Betreuer:Dipl.-Inf. Daniel Seifert

27. Januar 2015

ZusammenfassungDie FUmanoids sind autonome, humanoide Fußballroboter der Freien UniversitätBerlin, die als primären Sensor zur Wahrnehmung ihrer Umgebung eine am Kopfmontierte Kamera verwenden. Um die Menge an nützlicher erfasster Informationüber diesen Sensor zu erhöhen, bietet es sich an, den Kopf zu bewegen, so dassnach Möglichkeit vor allem relevante Information mit der Kamera erfasst wird.Diese Arbeit beschreibt die Implementierung einer aktiven Kopf-Steuerung aufBasis einer Entropie-Karte, welche aus dem Weltmodell des Roboters konstruiertwird, mit dem Ziel, den erwarteten Informations-Gewinn bei einer Kopfbewegungzu maximieren und untersucht die Möglichkeiten und Probleme, die mit diesemAnsatz einhergehen.

Eidesstattliche ErklärungIch versichere, die Bachelorarbeit selbständig und lediglich unter Benutzung derangegebenen Quellen und Hilfsmittel verfasst zu haben. Ich erkläre weiterhin, dassdie vorliegende Arbeit noch nicht im Rahmen eines anderen Prüfungsverfahrenseingereicht wurde.

Berlin, den 27. Januar 2015Julius Auer

Inhaltsverzeichnis1 Einleitung 1

1.1 Zielsetzung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 RoboCup . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11.3 FUmanoid-Plattform . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.3.1 Hardware . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31.3.2 Sensoren . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3

1.4 Struktur der Arbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . 4

2 Verwandte Arbeiten 52.1 Blickrichtungssteuerung im RoboCup . . . . . . . . . . . . . . . . . 5

3 Grundlagen 83.1 Aktive Blickrichtungssteuerung . . . . . . . . . . . . . . . . . . . . 8

3.1.1 Passive Blickrichtungssteuerung . . . . . . . . . . . . . . . . 83.1.2 Blickrichtungssteuerung auf Basis auffälliger Merkmale . . . 83.1.3 Blickrichtungssteuerung auf Basis von Objekt-Verfolgung . . 93.1.4 Entropie-basierte Blickrichtungssteuerung . . . . . . . . . . 9

3.2 Informationstheorie nach Shannon . . . . . . . . . . . . . . . . . . . 93.3 Normalverteilung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 11

4 Umsetzung 124.1 Zustände . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 124.2 Statisches und dynamisches Wissen . . . . . . . . . . . . . . . . . . 134.3 Entropie-Karte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14

4.3.1 Verdeckte Bereiche . . . . . . . . . . . . . . . . . . . . . . . 154.4 Wahl einer neuen Blickrichtung . . . . . . . . . . . . . . . . . . . . 16

4.4.1 Heuristik für geeignete Kandidaten . . . . . . . . . . . . . . 164.4.2 Entropie eines Gesichtsfelds . . . . . . . . . . . . . . . . . . 17

4.5 Entropie-Karte im Roboter-Koordinatensystem . . . . . . . . . . . 194.6 Bewegungsunschärfe und Bewegungsgeschwindigkeit . . . . . . . . . 21

5 Ergebnisse 235.1 Effektivität des Algorithmus . . . . . . . . . . . . . . . . . . . . . . 235.2 Effizienz des Algorithmus . . . . . . . . . . . . . . . . . . . . . . . 25

6 Fazit 266.1 Zusammenfassung . . . . . . . . . . . . . . . . . . . . . . . . . . . . 266.2 Ausblick . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27

Abbildungsverzeichnis 28

Literaturverzeichnis 29

1 EINLEITUNG

1 Einleitung

1.1 Zielsetzung

Die bisher für die optische Sensorik bei den FUmanoids verwendete Kamera warmit einer Fischaugen-Linse ausgestattet. Diese Linse konnte mit einem Sichtbereichvon 180◦×90◦ große Teile des Spielfeldes erfassen, ohne dass der Kopf des Robotersbewegt werden musste. Eine Fischaugen-Linse weist jedoch Defizite bei der Erken-nung weit entfernter Objekte auf. Aufgrund des bei Fischaugen-Linsen systemim-manenten Verkleinerungsfaktors ist die Projektion der Koordinaten kleiner Objekte(zum Beispiel eines Balls) ungenau. Im schlimmsten Fall fällt die Erkennung einesderartig klein abgebildeten Objektes mit den Mitteln der Computer-Vision sogarfehl. Ferner muss das Bild für die Projektion von Koordinaten entzerrt werden, wasebenfalls zu ungenauen Messungen - insbesondere in den Randbereichen des Bildes- führen kann. Aus diesen Gründen wird stattdessen nun eine Kamera mit einemkleineren Öffnungswinkel für das visuelle System verwendet. Einen Eindruck derunterschiedlichen Wahrnehmung mit verschiedenen Linsentypen liefert Abbildung1. Auf den Bildern sind die von der Bildverarbeitung erkannten Feldlinien bereitsmarkiert - es ist hier deutlich zu erkennen, dass die Feldlinien mit der gnomoni-schen Linse bei gleicher Entfernung besser erkannt werden können als mit einerFischaugen-Linse, da diese größer abgebildet werden. Ebenfalls zu erkennen ist derdeutliche Größenunterschied des 3m entfernten Balls auf der Mittellinie.Die Einführung einer Kamera mit Normalobjektiv bringt nun jedoch die Notwen-digkeit mit sich, den Kopf zu bewegen, um nach wie vor große Teile des Spielfeldsobservieren zu können. Diese Arbeit beschäftigt sich mit einem konkreten An-satz, genau eine solche Kopfsteuerung zu entwickeln und auf ihre Effektivität zuuntersuchen.

1.2 RoboCup

Die 1997 gegründete RoboCup-Initiative verfolgt die Vision, bis zum Jahr 2050autonome, humanoide Roboter zu konstruieren, die in der Lage sein sollen, dendann amtierenden FIFA-Weltmeister in einem regulären Fussballspiel zu schlagen.Im Rahmen des RoboCups kooperieren und messen sich universitäre Forschungs-gruppen im Bau von Robotern in unterschiedlichen ”Ligen”. So gibt es unter demDach des RoboCup mittlerweile neben den klassischen Fussball-Ligen auch sol-che, die sich mit dem Bau von Haushalts- oder Rettungs-Robotern befassen, sowieSimulations-Ligen, in denen Methoden der künstlichen Intelligenz und taktischeElemente des Fussballs erforscht werden, ohne Roboter zu konstruieren.

1

1.2 RoboCup 1 EINLEITUNG

(a) Fischaugen Linse (b) Gnomonische Linse

Abbildung 1: ”Wahrnehmung” des Roboters durch unterschiedliche Linsen

Die 2006 gegründeten FUmanoids der Freien Universität Berlin treten in der Hu-manoid KidSize-Liga an. Das Fussball-Szenario, das hier den Rahmen für For-schungsarbeiten an den Themen Robotik und künstliche Intelligenz vorgibt, seiim Folgenden kurz umschrieben: In einem 2 × 10 min. Fussball-Spiel treten zweiTeams aus jeweils drei Robotern gegeneinander an. Die Regeln des Spiels orientie-ren sich an den offiziellen Regeln der FIFA, enthalten aber zum Zeitpunkt dieserArbeit noch Modifikationen und zusätzliche Regeln, welche durch die (noch) sehrunterschiedliche Spielweise von Menschen und Robotern bedingt sind. Gespieltwird auf einem 4m× 6m großen Feld, mit einem orangefarbenem Ball, zwei farb-lich markierten Säulen an den Seiten der Mittellinie sowie zwei Toren, die farblichwohl unterschieden sind. Die Roboter haben eine maximale Höhe von 60cm, müs-sen menschenähnlich sein (das Regelwerk umfasst eine genaue Aufstellung vonProportionen, die bei der Konstruktion eingehalten werden müssen, erstellt ausden 2009 gemessenen Daten eines 3-jährigen Kindes [2]) und vollständig autonomagieren - eine Einflussnahme auf die Roboter ist nach dem Anpfiff nicht mehrgestattet.Ferner nicht gestattet ist aktive Sensorik - so ist es beispielsweise nicht erlaubt,die Umgebung mit einem Infrarotsensor abzutasten. Die Sensorik der Roboter istebenfalls an der des Menschen orientiert, was dazu führt, dass die meisten Teamsals primären Sensor zur Erfassung der Umgebung eines Roboters ein optischesSystem einsetzen, das ganz nach dem menschlichen Vorbild am ”Kopf” des Ro-boters montiert ist. Bislang wurde für die FUmanoids hierfür eine starr am Kopfbefestigte Weitwinkelkamera genutzt.

2

1.3 FUmanoid-Plattform 1 EINLEITUNG

Abbildung 2: Feld in der KidSize-Liga [2].

1.3 FUmanoid-Plattform

Eine ausführliche Beschreibung der Plattform wird in [13] gegeben. Es folgt einekurze Zusammenfassung der für diese Arbeit relevanten Details:

1.3.1 Hardware

Als Aktuatoren kommen 19 RX-28 und RX-64 Servomotoren der Firma RobotisInc. zum Einsatz. Für die Anordnung der Motoren und der daraus resultierendenFreiheitsgrade siehe Abbildung 3. Der Kopf kann mit diesen Motoren seinen Neig-winkel um ca. 90◦ und seinen Gierwinkel um ca. 180◦ verändern (tatsächlich ist dieBewegungsfreiheit durch hervorstehende Bauteile insbesondere an den Schulterndes Roboters etwas eingeschränkt). Alle Motoren verfügen über ein Potentiometer,um Position, Beschleunigung und Last auslesen zu können.Die Hauptrecheneinheit ist ein IGEPv2 Board mit einem 1 GHz DM3730 Prozes-sor. Zur Kommunikation mit der Hardware - also den Motoren und Sensoren -wird ein Mikrocontroller mit einem 72 MHz ARM Cortex M3 verwendet, der alsPreprocessing und stand-alone Motorsteuerungseinheit verwendet wird.

1.3.2 Sensoren

Das Regelwerk des RoboCups beschränkt die Sensorik der Roboter auf passive,menschenähnliche Sensoren. Somit dürfen keine Laserscanner, Ultraschallsensoren,o.ä. benutzt werden.

3

1.4 Struktur der Arbeit 1 EINLEITUNG

Abbildung 3: Anordnung der Servomotoren

Wichtigster Sensor der Roboter ist die Kamera. Bei der Kamera handelt es sichum eine Logitech HD Pro Webcam C910 mit einer Auflösung von 640×480 Pixeln.Zur Stabilisierung und Berechnung der Projektion der Kamerabilder wird eineRobotics UM6 IMU (Inertial Measurement Unit) verwendet, die je Achse ein Gy-roskop, ein Accelerometer und ein Magnetometer bereitstellt.

1.4 Struktur der Arbeit

In Kapitel 2 finden Arbeiten ähnlicher Art Erwähnung.Kapitel 3 behandelt für diese Arbeit relevante Grundlagen, wie die Blickrichtungs-steuerung beim Menschen und die Shannon-Entropie.Kapitel 4 behandelt, wie eine aktive Blickrichtungssteuerung auf der FUmanoids-Plattform implementiert wurde.Kapitel 5 behandelt die Ergebnisse der Evaluation des Systems bezüglich Qualität,Robustheit und Laufzeiteffizienz.Kapitel 6 liefert eine Zusammenfassung und einen Ausblick auf mögliche Verbes-serungen.

4

2 VERWANDTE ARBEITEN

2 Verwandte Arbeiten

Aktive Blickrichtungssteuerung oder ”intelligent perception” wird von Elfes in[3] vorgestellt. Hier werden stochastische Sensor-Modelle verwendet, um sinnvolleSensor-Aktionen und auf diesen lokale Extrema relevanter Observationen zu be-stimmen. Diese Modelle sind speziell für die Verwendung auf multisensorischenRobotern entwickelt.In [15] wird ein durch die Biologie angeregter Ansatz verfolgt: Partikel werdenhier als Eingabe für ein neuronales Netz verwendet, das nach einem ”winner takesall” Konzept interessante Objekte für die Ausrichtung der Sensoren bestimmt. Indieser Arbeit wird auch eine Technik zum Lösen des IOR-Problems entwickelt, diemit negativen Aktivierungs-Werten für gerade angesteuerte Objekte im neuronalenNetz arbeitet. IOR (Inhibition of Return) ist das Problem, bevorzugt zu Bereichenhoher Relevanz zurückzukehren, auch wenn diese gerade erst observiert wurden.In [16] wird ein Ansatz vorgestellt, der auf salienten Merkmalen arbeitet. SalienteMerkmale werden hier aus der Klassifizierung einfacher Beobachtungen gewonnen,wie Farben, Helligkeit oder der Orientierung von Pixeln. Über allen salienten Merk-malen wird eine Wahrscheinlichkeitsverteilung modelliert. Anschließend wird dieKullback-Leibler Divergenz betrachtet, um eine ”surprise-map” zu generieren. DieSensoraktivität wird durch das Merkmal mit der höchsten ”surprise” ausgelöst.Die Ergebnisse sind hier vielversprechend, es besteht aber das übliche Problemder Laufzeit-Effizienz, die eine Anwendung ohne Implementierung auf einer GPUunmöglich macht.Ein neuer Entropie-basierter Ansatz wird in [12] vorgestellt. Hier werden keine pro-babilistischen Modelle wie Kalman-Filter oder Markov-Modelle verwendet. Statt-dessen dient Unsicherheit über Objekte als Messgröße. Nach Shannons Informa-tionstheorie wird die Summe des Wissens über alle Objekte betrachtet, um einbestes für die Blickrichtung auszuwählen. Die Ergebnisse zeigen, dass ein nicht-probabilistischer Ansatz zufriedenstellende Ergebnisse für eine effektive Blickrich-tungssteuerung liefern kann.

2.1 Blickrichtungssteuerung im RoboCup

Aufgrund des hohen Rechenaufwandes werden aktive Blickrichtungssteuerungenin den Teams der RoboCup KidSize Liga selten verwendet. Die meisten Teamskonzentrieren sich auf die Kernthemen der Forschungsfrage: Verhaltenssteuerung,SLAM und Lokomotion. Häufig wird eine passive Steuerung verwendet (3.1.1),es finden sich jedoch durchaus auch Ansätze, die mit einer aktiven Steuerungarbeiten:

5

2.1 Blickrichtungssteuerung im RoboCup 2 VERWANDTE ARBEITEN

Ein einfacher Ansatz ist, die Positionen bekannter Objekte zu überwachen (sie-he auch 3.1.3). Die Blickrichtungssteuerung berechnet hierbei die Trajektorie fürdie Kopfmotoren anhand der vermuteten Positionen bekannter Objekte, in derHoffnung, diese erneut observieren zu können. Saffiotti et al. beschreiben einenderartigen Ansatz in [11] zur Verwendung mit einem Sony AIBO für die SonyFour-Legged League.Ein weiterer üblicher Ansatz ist es, saliente Merkmale direkt aus den Kamerabil-dern zu extrahieren und die Kamera auf einen Bereich mit vielen salienten Merk-malen zu richten, um die so neue Information zu erhalten oder alte zu aktualisieren([5]).Eine Entropie-basierte Blickrichtungssteuerung wird in [8] vorgestellt. Die wich-tigste Zusicherung ist hier die Möglichkeit der Berechnung in Echtzeit auf ressourcen-kritischen Systemen. Das System verwendet Partikel-Filter für die Selbstlokalisa-tion und Ball-Modellierung. Das Vertrauen in die Position des Balls wird durcheinen Satz an Messungen ausgedrückt, die eine Dichtefunktion über alle Parti-kel beschreiben. Da die Entropie nicht direkt über alle Partikel berechnet werdenkann, wird eine einfache Histogramm basierte Berechnung der Entropie durch-geführt, die ein Gitter approximiert. Aus diesem kann die nächste Blickrichtungabgeleitet werden. Um die Kosten zu reduzieren, wird für die Vorhersage ein Feed-Forward Netzwerk mit Backpropagation benutzt und jeweils nur der unmittelbarnächste Schritt vorhergesagt. Ferner werden die Partikelgewichte sowie die loga-rithmischen Funktionen der Entropie-Berechnung über eine vorverarbeitete Tabel-le bereitgestellt. Mit diesen Optimierungen ist es gelungen, den mittleren Fehler inder Selbstlokalisierung um 20% und den mittleren Fehler im Ballmodell um 44%zu reduzieren.Ein ähnlicher Ansatz wird von den Nao Devils Dortmund verwendet. Dieser basiertauf der Arbeit von Thrun ([4]) und nutzt ebenfalls Partikelfilter und ein diskre-tes Gitter für Lokalisierung und Modellierung. Die Blickrichtungssteuerung wirdbenutzt, um die erwartete Entropie zu minimieren und den Fehler der Selbstlokali-sierung zu reduzieren. Die Berechnung der Entropie hängt hier also ausschließlichvon den Berechnungen der Selbstlokalisierung ab. In dieser Arbeit werden auchLookup-Tabellen für die möglichen Observationen abhängig von der gegenwärti-gen Roboter-Pose eingeführt.Eine weitere Entropie-basierte Blickrichtungssteuerung wird aktuell von den Darm-stadt Dribblers in der KidSize-League verwendet ([9]). Hier wird, ähnlich dem An-satz dieser Arbeit, eine Entropie-Karte verwendet, die unmittelbar aus den Objekt-Modellen und dem Weltmodell generiert wird. Neue Blickrichtungen ergeben sichaus der Optimierungsfunktion des erwarteten Entropie-Anstiegs. Ferner wird dieEntropie-Karte zusätzlich für das Modellieren von Hindernissen verwendet. Der

6

2.1 Blickrichtungssteuerung im RoboCup 2 VERWANDTE ARBEITEN

generalisierte Ansatz, eine Zelle der Karte als ”belegt” oder ”frei” zu kennzeich-nen (auch unter Berücksichtigung von durch Hindernisse verdeckten Bereichen),vereinigt so die Modellierung von Hindernissen mit der regelmäßigen Beobachtunginteressanter Spielfeld-Bereiche.

7

3 GRUNDLAGEN

3 Grundlagen

3.1 Aktive Blickrichtungssteuerung

In der Psychologie wird im Allgemeinen fokussierte von fluktuierender Aufmerk-samkeit unterschieden. Fokussierte Aufmerksamkeit beschreibt die Handlung, sichaktiv einem Punkt von Interesse zuzuwenden und diesen zu fokussieren. Fluk-tuierende Aufmerksamkeit bezeichnet das Richten der Aufmerksamkeit auf eineRegion mit einem hohen Stimulus (ggf. auch ohne sich physikalisch zu bewegen).Im vorliegenden Fall ergibt sich die Ausrichtung der fokussierten Aufmerksamkeitmeist direkt aus den Absichten und der Bewegungsrichtung des Roboters. Umfluktuierende Aufmerksamkeit zu erreichen, ist es üblich, den visuellen Sensor aufAktuatoren zu befestigen - im Fall der FUmanoids stehen dem visuellen Sensorhierfür zwei Freiheitsgrade zur Verfügung (siehe auch Kapitel 1.3). Um die Umge-bung optimal erkunden zu können, muss nun die Frage beantwortet werden, wohinder Roboter als nächstes ”gucken” soll - worauf also die fluktuierende Aufmerk-samkeit gerichtet werden soll. Um dieses Entscheidungsproblem zu lösen, mussauf verfügbare Stimuli adäquat reagiert werden. Hierfür seien im Folgenden vierverbreitete Ansätze beschrieben:

3.1.1 Passive Blickrichtungssteuerung

Eine passive Blickrichtungssteuerung bewegt den optischen Sensor auf einer defi-nierten Bahn. Hierbei wird der maximale vom Regelwerk vorgesehene Blickwinkelausgenutzt. Ziel ist hierbei, in regelmäßigen Zeitabständen jeden Bereich des Spiel-feldes zu observieren. Die Steuerung ist allerdings weder reaktiv - sie reagiert alsonicht auf sich verändernde Spielsituationen - , noch verhindert sie, dass viel Zeitdamit verbracht wird, Gebiete zu explorieren, die keinen relevanten Informations-gehalt haben (zum Beispiel Bereiche außerhalb des Spielfeldes).

3.1.2 Blickrichtungssteuerung auf Basis auffälliger Merkmale

Es existieren Ansätze, die sich vornehmlich aus der menschlichen Physiologie ab-leiten, auffällige Merkmale direkt aus dem Kamera-Bild zu extrahieren, auf welchedann die Aufmerksamkeit gerichtet werden kann. In [15] und [16] werden solcheMerkmale in einer Karte gesammelt, um akute Blickrichtungen von Interesse zuidentifizieren. Dies ist ein reaktiver Ansatz, der vor allem das Problem löst, dieAnzahl an Bildern zu minimieren, auf denen nur Teilobjekte zu sehen sind, was

8

3.2 Informationstheorie nach Shannon 3 GRUNDLAGEN

üblicherweise zu Problemen bei der Erkennung von Objekten führt - auffällige Ob-jekte auf einem Bild werden umgehend fokussiert. Die Methode hat jedoch denNachteil, dass sie Gebiete, die nicht aktuell von der visuellen Sensorik erfasst wer-den, nicht (ausreichend) beachtet.

3.1.3 Blickrichtungssteuerung auf Basis von Objekt-Verfolgung

Eine einfache wie effektive Methode ist das Verfolgen bekannter Objekte. Hier-für wird eine Liste der letzten bekannten Aufenthaltsorte aller Objekte verwaltet,welche zyklisch überprüft werden. Auch hier liegt die Problematik in der Unmög-lichkeit, unbekannte Objekte zu entdecken und unbekannte Gebiete zu explorieren,was besonders für bewegte Objekte (z.B. Bälle oder andere Roboter) ein Problemdarstellt. Im Vergleich zu 3.1.2 ist ein solches Verfahren außerdem weniger reaktiv.

3.1.4 Entropie-basierte Blickrichtungssteuerung

Entropie-basierte Blickrichtungssteuerung versucht, den Informationsgewinn beider Wahl einer neuen Blickrichtung zu maximieren, indem versucht wird, für mög-liche Blickrichtungen zukünftige Messungen vorherzusagen. Hierfür wird für jedemögliche Blickrichtung betrachtet, welche Information in dieser Richtung erwartetwird und wie plausibel diese Erwartung ist, um eine Vorhersage für den Infor-mationsgewinn bei Einschlagen dieser Blickrichtung zu berechnen. Üblicherweisesind derartige Vorhersagen hochdimensional, was die Berechnung in Echtzeit aufRessourcen-kritischen Systemen (wie einem kleinen Roboter) problematisch macht.In [8], [12], [7] wurden bereits Versuche unternommen, diese Probleme zu lösen, dieauch in dieser Arbeit aufgegriffen werden. Entropie-basierte Blickrichtungssteue-rung vereint die Vorzüge der oben genannten Ansätze:

• Reaktivität• Observieren aller Bereiche auf dem Spielfeld• aber Konzentration auf diejenigen, in denen wertvolle Information vermutet

wird

3.2 Informationstheorie nach Shannon

In [14] führt Shannon eine Theorie ein, um den mittleren Informationsgehalt(Shannon-Entropie) einer Nachricht zu messen. Eine Nachricht besteht üblicher-weise aus Bits. Gemessen wird der Informationsgehalt der Nachricht auf Basis der

9

3.2 Informationstheorie nach Shannon 3 GRUNDLAGEN

Wahrscheinlichkeiten, mit der ein Bit einen diskreten Wert annimmt. Shannon-Entropie ist gegeben durch:

H(X) =n∑

i=1

p(xi) · logb(p(xi)) (1)

wobei n die Länge der Nachricht ist und b die Anzahl möglicher Zustände für eineEinheit (also ”2” für Bits). Der Informationsgehalt einer Koordinate mx,y auf demSpielfeld unter der Wahrscheinlichkeit p(mx,y), dass sich dort ein relevantes Objektbefindet oder nicht befindet, ergibt sich zu:

H(mx,y) = −((1− p(mx,y)) · log2(1− p(mx,y)) + p(mx,y) · log2(p(mx,y))) (2)

Der entstehende Graph (Abbildung 4) kennzeichnet die niedrigste Entropie (al-so den maximal zu erwartenden Informationsgewinn) genau dort, wo die Wahr-scheinlichkeit für ein relevantes Objekt genau ”0” oder ”1” ist. Ist der Roboter also”sicher”, dass sich an einer Position ein Objekt befindet oder nicht befindet, istder erwartete Informationsgewinn dort gering (und die Entropie klein). Ist er sich”unsicher”, ist der erwartete Informationsgewinn (und die Entropie) groß.

Abbildung 4: Entropie-Kurve für Existenz-Wahrscheinlichkeiten

10

3.3 Normalverteilung 3 GRUNDLAGEN

3.3 Normalverteilung

Bei einer Normalverteilung handelt es sich um eine kontinuierliche Wahrschein-lichkeitsverteilung um einen Mittelwert µ mit einer Breite von σ2 (Varianz). Im1-dimensionalen ist die Wahrscheinlichkeit für das Auftreten eines diskreten, nor-malverteilten Wertes x gegeben durch:

p(x) =1√

2 · π · σ2· e−

(x−µ)2

2·σ2 (3)

Im RoboCup-Szenario ist es hinderlich, Bilder mit Teilinformationen von Objektenaufzunehmen - sieht der Roboter beispielsweise nur den oberen Teil eines Torpfos-tens, ist es unmöglich zu projizieren, wo der Pfosten im Welt-Koordinatensystemseinen Ursprung hat. Es wird deshalb bei der Auswahl einer Blickrichtung be-vorzugt direkt auf Objekte geschaut, um das Aufnehmen von Teilinformationenzu vermeiden. Dies wird gewährleistet, indem bei der Berechnung einer Entropiepotentieller zukünftiger Gesichtsfelder die Entropie-Werte einzelner Koordinatenanhand einer Normalverteilung über das gesamte Gesichtsfeld gewichtet werden.Hierfür wird eine Normalverteilung im 2-dimensionalen Raum benötigt (siehe auchAbbildung 5):

p(x, y) =1

2 · π · σx · σy ·√1− ρ2

· e− 1

2·(1−ρ2)·(

(x−µx)2

σ2x

+(y−µy)2

σ2y

− 2·ρ·(x−µx)·(y−µy)

σx·σy

)(4)

mit: µ =

(µx

µy

),Σ =

(σ2x ρ · σx · σy

ρ · σx · σy σ2y

)(5)

Wobei ρ die Korrelation zwischen den Mengen X und Y beschreibt, die über dieKovarianzmatrix Σ gegeben ist:

ρ =Σ(X, Y )

σx · σy

(6)

Für eine gegebene Kovarianzmatrix kann die Wahrscheinlichkeit für jeden Punktberechnet werden, indem die statistische Entfernung zum Mittelpunkt der Ver-teilung betrachtet wird. Diese Entfernung im multidimensionalen Raum ist dieMahalanobis-Entfernung und ist definiert als:

δ(x, y) =√

(x− y)T · Σ−1 · (x− y) (7)

11

4 UMSETZUNG

Abbildung 5: Exemplarische Normalverteilung im 2-dimensionalen 1

4 Umsetzung

Es folgt eine ausführliche Beschreibung, wie eine aktive Blickrichtungssteuerungauf dem System der FUmanoids implementiert wurde. Durch die aktive Steuerungdes Kopfes soll eine Abdeckung des Spielfeldes erreicht werden, die der Abde-ckung unter Verwendung einer Fischaugen-Linse so nah wie möglich kommt. DieBelastung der Rechenkapazitäten dieser Implementierung soll sich im optimalenFall in einem vernachlässigbar kleinen Bereich bewegen. Ferner soll Feedback ausder Welt- und Objekt-Modellierung berücksichtigt werden und sinnvoll mit unge-wünschten Seiteneffekten, wie durch die Bewegung des Kopfes induzierter Bewe-gungsunschärfe, umgegangen werden.

4.1 Zustände

Möglichst viele relevante Objekte zu observieren und einen Überblick über dasSpielfeld zu behalten ist für einen Fussballroboter ein erstrebenswertes Ziel - es tre-ten jedoch auch Situationen auf, in denen eine einfachere Blickrichtungssteuerungals die im Kern dieser Arbeit beschriebene angemessen erscheint. Insbesondere sindhier zwei außerordentliche Verhaltensweisen der Roboter zu berücksichtigen, in de-nen eine Entropie-basierte Blickrichtungssteuerung als nicht geeignet angenommenwird:

1http://en.wikipedia.org/wiki/Multivariate normal distribution

12

4.2 Statisches und dynamisches Wissen 4 UMSETZUNG

• Der Roboter möchte den Ball nicht aus den Augen verlieren (z.B. beim Drib-beln, oder in der Rolle des Torwarts)

• Der Roboter möchte den Kopf nicht bewegen (z.B. bei einer Einwurf-Bewegung,oder einem Sturz)

Um den unterschiedlichen Anforderungen, die in einem Fussballspiel auftreten, ge-recht werden zu können, umfasst die Blickrichtungssteuerung mehrere Modi Ope-randi, die nach Bedarf von der Verhaltenssteuerung aktiviert werden können. EineÜbersicht der unterschiedlichen Modi liefert Tabelle 1.

Modus Verhaltengaze stare Der Kopf wird nicht bewegt.gaze ball Es wird stets der Ball verfolgt. Alle paar Sekunden wird

ein Blick auf das gegnerische Tor geworfen. Sind Balloder Tor nicht am vermuteten Ort, wird automatisch zugaze active gewechselt, bis die Positionen von Ball undTor wieder bekannt sind.

gaze active Es werden Blickrichtungen gewählt, so dass der Informa-tionsgewinn über Objekte auf dem Spielfeld maximiertwird, wie in dieser Arbeit beschrieben.

gaze landmarks Wie gaze active, jedoch wird statisches Wissen (siehe4.2) stärker gewichtet.

Tabelle 1: Modi Operandi

4.2 Statisches und dynamisches Wissen

Um günstige zukünftige Blickrichtungen vorherzusagen, wird auf Informationenaus der Selbstlokalisierung, der Hindernis- und der Ball-Modellierung zurückge-griffen. Informationen über Objekte und Landmarken auf dem Spielfeld werdenim Folgenden als ”Wissen” bezeichnet. Wissen kann zu einem lokalen Anstieg derEntropie führen.Die Relevanz von Objekten kann gewichtet werden, so dass beispielsweise für denTorwart der Ball eine größere Relevanz hat als ein Torpfosten. Diese Gewichtungkann auch zur Laufzeit von der Verhaltensteuerung manipuliert werden, wenn einRoboter in unterschiedlichen Rollen agiert.Statisches Wissen bezeichnet Wissen über unbewegliche Objekte auf dem Spielfeld.Die Validität ihrer Position im Roboter-Koordinatensystem beruht ausschließlich

13

4.3 Entropie-Karte 4 UMSETZUNG

auf der Güte der von der Selbstlokalisierung berechneten Roboterpose. Dynami-sches Wissen bezeichnet das Wissen über die Positionen anderer Roboter und demBall. Es ist sinnvoll, statisches von dynamischem Wissen zu trennen, da bei ei-nem Update der Entropie-Karte lediglich dynamisches Wissen und die Positiondes Roboters aktualisiert werden müssen, während statisches Wissen konstant ist(außer es wird von der Verhaltenssteuerung eine Änderung der Gewichte vorge-nommen). Abbildung 6 zeigt statisches und dynamisches Wissen in einer exempla-rischen Spielsituation.

(a) Statisches Wissen (b) Dynamisches Wissen

Abbildung 6: Statisches und dynamisches Wissen

4.3 Entropie-Karte

Die Entropie-Karte ist ein zweidimensionales Array und teilt das Spielfeld in eineMenge M diskreter Zellen mx,y. Für jede Zelle wird die Zeit tx,y gespeichert, zu derdie Zelle das letzte Mal observiert wurde. Außerdem werden Werte für das an dieserStelle vermutete statische und dynamische Wissen ks

x,y, kdx,y ∈ [0, 1] gespeichert.

Grundsätzlich handelt es sich bei der Blickrichtungssteuerung um ein ”grobes”Verfahren - auch die periphere Wahrnehmung von Objekten kann noch wertvolleInformation liefern. Es soll zwar - wie oben bereits erwähnt - vermieden werden,Teilinformationen von Objekten aufzunehmen; ob ein Objekt jedoch eher links oderrechts auf dem Kamerabild zu finden ist, hat auf die Qualität der Objekterkennungkeine Auswirkung. Die Größe der Zellen kann deswegen tendenziell größer gewähltwerden, um bei Aktualisierungen der Karte einen weniger großen Rechenaufwandzu verursachen. Eine obere Schranke für die Größe der Zellen ist durch den Ab-stand der Füße des Roboters zu dem Punkt gegeben, an dem der Blickpunkt (siehe

14

4.3 Entropie-Karte 4 UMSETZUNG

4.4) liegt, der bei maximalem Neigwinkel des Kopfes von den Motoren angefah-ren werden kann. Im Experiment wurde als Größe für die Zellen anhand dieserSchranke ein Bereich von 20× 20 cm festgelegt.Bei einem Update der Entropie-Karte wird zur Berechnung der Entropie einer Zelledie Unsicherheit rx,y über das Wissen dieser Zelle berechnet, welche sich aus derZeit ergibt, die diese Zelle nicht observiert wurde. Hierfür wird eine Zeitdifferenztmax definiert, welche die maximale Zeitspanne beschreibt, ab der eine maximaleUnsicherheit der Daten angenommen wird. Die Unsicherheit zu einem Zeitpunkttcur wird definiert als

rx,y = 1−min

(1,

tcur − tx,ytmax

)(8)

Die Entropie ex,y einer Zelle ergibt sich aus dieser Unsicherheit zu

ex,y =

{0 , falls rx,y = 1

wx,y ·H(rx,y) , sonst (9)

wobei wx,y das Gewicht der in dieser Zelle vermuteten Objekte ist, mit

wx,y = min(1, ksx,y + kd

x,y) (10)

Zusammengefasst: Maximale Entropie wird erreicht, wenn die Informationen übereine Zelle sehr alt sind. Wie schnell die Entropie einer Zelle wächst, ist abhängig vonden Gewichten der Objekte, die an diesem Ort vermutet werden. Eine vollständigeEntropie-Karte zeigt Abbildung 7. Der schwarze Kreis kennzeichnet die Positiondes Roboters und der Pfeil darin die Orientierung des Körpers des Roboters. Dierote Raute beschreibt das aktuelle Gesichtsfeld. Je dunkler eine Zelle dargestelltist, desto höher ist dort die Entropie.

4.3.1 Verdeckte Bereiche

Bereiche auf dem Spielfeld können von anderen Robotern verdeckt sein. In die-sem Fall sollte die Entropie-Karte solche verdeckten Zellen nicht als ”gesehen”kennzeichnen. Um zu berechnen, welche Zellen von einem Objekt verdeckt wer-den, eignet sich der Bresenham Algorithmus ([1]). Der Algorithmus ”läuft” über

15

4.4 Wahl einer neuen Blickrichtung 4 UMSETZUNG

Abbildung 7: Entropie-Karte

Gitterzellen und kann die Zellen berechnen, die auf Geraden liegen, die von demUrsprung des Roboter-Koordinatensystems und der Position eines Hindernissesbeschrieben werden. Bei großen Gesichtsfeldern muss der Algorithmus jedoch fürso viele solcher Geraden angewendet werden, dass die für die Berechnung benötigteZeit als kritisch für die Performanz des Systems zu bewerten ist: je nach Größe desGesichtsfeldes benötigte die Anwendung des Bresenham Algorithmus bis zu 10msRechenzeit auf dem einzigen verfügbaren Prozessor. Das Filtern von verdecktenZellen wurde deshalb in realen Spielsituationen nicht verwendet.

4.4 Wahl einer neuen Blickrichtung

4.4.1 Heuristik für geeignete Kandidaten

Im Gesichtsfeld eines Roboters liegen meist mehr als eine Zelle der Entropie-Karte- zur Ermittlung eines Entropie-Werts für eine Blickrichtung müssen folglich dieWerte aller Zellen im Gesichtsfeld des Roboters berücksichtigt werden. Auf ei-nem Ressourcen-kritischen System wie den FUmanoids ist das hochdimensionaleProblem, für alle möglichen Blickrichtungen (die sich aus der großen Menge allermöglicher Kombinationen von Nick- und Gier-Winkeln der Kopfmotoren ergeben)die Entropiewerte für die korrespondierenden Gesichtsfelder zu berechnen, mitvertretbarem Rechenaufwand jedoch nicht lösbar. Um aus allen möglichen Blick-richtungen eine optimale auszuwählen, wird deshalb folgende Heuristik verwendet,

16

4.4 Wahl einer neuen Blickrichtung 4 UMSETZUNG

die von Kohlbrecher, et al. in [6] vorgestellt wird:Üblicherweise lässt das Observieren lediglich peripher wahrgenommener Objekteam Rand eines aufgenommenen Bildes keine Projektion des Objektes in Weltko-ordinaten zu, da hierfür stets der Kontaktpunkt des Objektes mit dem Bodendeutlich zu erkennen sein muss. Ferner ist die Ungenauigkeit bei der Projektionvon Objekten größer, die sich am Rand des Bildes befinden. Um dieses sowie dasProblem der Hochdimensionalität gleichermaßen zu lösen, werden als Kandidatenfür eine neue Blickrichtung nur solche Blickrichtungen betrachtet, deren Mittel-punkt eine Zelle mit einer ”hohen” Entropie ist - also meist eine Zelle, in der einObjekt vermutet wird. Der Mittelpunkt einer Blickrichtung sei hierbei der Schnitt-punkt der optischen Achse mit dem Spielfeld. Es wird so stets direkt auf ein Objektgeschaut und die Auswahl für mögliche Kandidaten ist stark eingegrenzt. Eine sol-che Zelle, die das Zentrum eines potentiellen neuen Gesichtsfelds darstellt, wirdim Folgenden als ”Blickpunkt” bezeichnet. Jeder Blickpunkt kann ein Kandidatfür die nächste Blickrichtung sein. In Abbildung 8 sind vier Kandidaten für dienächste Blickrichtung als blaue Rauten eingezeichnet.

Abbildung 8: Kandidaten für eine neue Blickrichtung

4.4.2 Entropie eines Gesichtsfelds

Wie bereits erwähnt, müssen zur Ermittlung eines Entropie-Werts für eine neueBlickrichtung die Werte aller Zellen im korrespondierenden Gesichtsfeld des Ro-boters berücksichtigt werden. Da die Mess-Genauigkeit für observierte Objekte

17

4.4 Wahl einer neuen Blickrichtung 4 UMSETZUNG

besser ist, je näher sie sind und je zentraler sie auf einem Bild erscheinen, bietet essich an, die Entropie der Zellen normalverteilt in die Entropie eines Gesichtsfeldseinfließen zu lassen (siehe auch Abbildung 9). Dies löst auch das Problem, großeGesichtsfelder bei der Wahl eines Kandidaten nicht gegenüber kleineren zu bevor-zugen (was dazu führt, dass der Roboter nicht mehr nach unten guckt). Für jedeZelle in einem Gesichtsfeld G ⊂ M ergibt sich somit eine Gewichtung nx,y mit

nx,y =1

2 · π · σx · σy

· exp− 1

2·(

(x−µx)2

σ2x

+(y−µy)2

σ2y

)(11)

wobei (µx, µy) die Koordinaten des Blickpunkts sind. σx, σy entsprechen der mini-malen Entfernung vom Blickpunkt zu einem Punkt auf dem größtmöglichen Recht-eck, das in das Gesichtsfeld eingepasst werden kann.

Abbildung 9: Zellen-Gewichtung anhand einer Normalverteilung in einemGesichtsfeld

Ferner wird jedes Gesichtsfeld anhand der Änderung der Kopfwinkel gewichtet,die erforderlich sind, um den neuen Blickpunkt zu erreichen. Eine kleine Änderungder Winkel wird hierbei bevorzugt, um die Reaktivität des Systems zu erhöhen.Es existieren hierfür Gewichte wp / wy für die erforderlichen Winkeländerungen∆p / ∆y auf der Neig- / Gier-Achse bei einem gegebenen Blickpunkt.Die Gesamt-Entropie für ein Gesichtsfeld eG ergibt sich nun aus den gewichteten,normalisierten Entropie-Werten der Zellen im Gesichtsfeld zu

18

4.5 Entropie-Karte im Roboter-Koordinatensystem 4 UMSETZUNG

eG =wp ·∆p · wy ·∆y

|G| · nµx,µy

·∑

mx,y∈G

nx,y · ex,y (12)

4.5 Entropie-Karte im Roboter-Koordinatensystem

Entropie basierte Blickrichtungssteuerung löst im Vergleich zu einer passiven oderrein reaktiven Blickrichtungssteuerung das Problem, Bereiche auf dem Spielfeldhäufig zu observieren, in denen jedoch nur wenig Information vermutet wird (wirdden vorhandenen Modellen vertraut). Dies bedeutet zwangsläufig, dass Bereiche,in denen wenig Information vermutet wird, seltener observiert werden. Zum Zeit-punkt dieser Arbeit lieferte die Selbstlokalisierung der FUmanoids allerdings teil-weise unzuverlässige Ergebnisse, die in schlimmen Fällen zu Rotations-Fehlern zwi-schen Roboter- und Welt-Koordinatensystem von bis zu 180° führten. Bei einemFehler dieser Größenordung observiert die Blickrichtungssteuerung gegebenenfallsdas Spielfeld überhaupt nicht mehr, da dieses als ”außerhalb des Spielfelds” an-genommen wird - es entsteht ein ”Teufelskreis”, da hierdurch auch keine Objektemehr perzeptioniert werden, die den Fehler der Lokalisierung korrigieren könn-ten. Erschwerend kommt hinzu, dass das System zu diesem Zeitpunkt keinen Wertfür die Verlässlichkeit der ermittelten Roboterpose zur Verfügung stellte. Für dieBlickrichtungssteuerung bedeutet dies, dass de facto keine Bereiche (z.B. außer-halb des Spielfelds) bei der Observation ausgespart werden können, und das Systemder Blickrichtungssteuerung zu einem allgemeineren Ansatz hin modifiziert werdenmuss.Um die Fehleranfälligkeit durch eine schlechte Selbstlokalisation zu umgehen, wur-de die Entropie basierte Blickrichtungssteuerung auf das Roboterkoordinatensys-tem übertragen. Hierbei werden die Daten der Selbstlokalisierung überhaupt nichtmehr verwendet (auch die Grenzen des Spielfelds werden so ignoriert) - stattdessenwird ausschließlich auf die Modelle von bereits gesehenen Objekten zurückgegriffen.Die Entropiekarte umfasst hierbei Zellen-Koordinaten im Koordinatensystem desRoboters. Die Berechnungen zur Ermittlung eines neuen Blickpunkts verbleibenwie oben beschrieben. Abbildung 10 zeigt eine Entropiekarte im Roboterkoordi-natensystem.An dieser Stelle ist anzumerken, dass beim Arbeiten im Roboter-KoordinatensystemRechenaufwand eingespart werden kann, wenn für die Größe der Zellen der Entropie-Karte ein logarithmisches Maß verwendet wird, das abhängig von der Entfernungzum Roboter ist (siehe Abbildung 11). Ein solches Maß spiegelt den Informati-onsgehalt großer Gebiete gut wieder und senkt den Rechenaufwand für Aktuali-sierungen der Entropie-Karte aufgrund der deutlich geringeren Anzahl von Zellen

19

4.6 Bewegungsunschärfe und Bewegungsgeschwindigkeit 4 UMSETZUNG

Abbildung 10: Lokale Entropie-Karte im Roboterkoordinatensystem

signifikant. Gegebenenfalls ist unter Verwendung eines solchen Maßes sogar einGroßteil der Entropie-Berechnungen über Gesichtsfelder mit aufwendigen Gewich-tungen anhand einer Normalverteilung hinfällig. Da die Verwendung einer lokalenKarte im Rahmen dieser Arbeit nur als Variation des implementierten Algorithmusbetrachtet wurde, wurde ein derartiger Ansatz jedoch nicht mehr implementiertund evaluiert.

4.6 Bewegungsunschärfe und Bewegungsgeschwindigkeit

Bewegungsunschärfe - also das ”Verschwimmen” von Bildern durch schnelle Bewe-gungen - spielt für die Blickrichtungssteuerung eine signifikante Rolle und nimmtEinfluss auf die Geschwindigkeit, mit welcher der Kopf bewegt werden kann. Je-den Bereich des Spielfeldes möglichst häufig zu observieren ist grundsätzlich einschnelleres Bewegungstempo offensichtlich vorteilhaft. Können während der Be-wegungsphasen jedoch keine Bilder ausreichender Qualität aufgenommen werden,muss an dieser Stelle ein Kompromiss zwischen Bewegungstempo und Bildqualitätgefunden werden.Im Experiment wurde deshalb ermittelt, mit welcher Geschwindigkeit der Kopfbewegt werden kann, ohne dass die Bewegungsunschärfe die Qualität der aufge-nommenen Bilder signifikant beeinträchtigt. Da von den verbauten Dynamixel Ser-vo Motoren leider keine diskreten Geschwindigkeits-Angaben bekannt sind, lässt

20

4.6 Bewegungsunschärfe und Bewegungsgeschwindigkeit 4 UMSETZUNG

Abbildung 11: Gitter einer lokalen Entropie-Karte mit logarithmischemAbstandsmaß

sich hier nur festhalten, dass der Grenzwert für eine hinsichtlich der Bildqualitätakzeptablen Bewegungsgeschwindigkeit bei etwa 20% der maximalen Geschwin-digkeit der Motoren liegt. Diese Bewegungsgeschwindigkeit ist als ”langsam” zubewerten: es dauert mit dieser Geschwindigkeit etwa 5 Sekunden, um den Gier-Winkel des Kopfes um 180◦ zu verändern.Sobald die Kopfmotoren mit einer Geschwindigkeit bewegt werden, die intuitivals akzeptabel bewertet werden kann, muss deshalb angenommen werden, dassObjekte, die während der Bewegungsphase perzeptioniert werden, nicht erkanntwerden können. Dies betrifft insbesondere Objekte, bei denen die Form eine Rollespielt - bei der Ballerkennung werden beispielsweise Ansätze verfolgt, bei deneneine runde Anordnung von Kanten auf dem Bild gesucht wird, die durch eine durchBewegungsunschärfe induzierte Verzerrung gestört werden können. Für die aktiveBlickrichtungssteuerung hat dies mehrere Auswirkungen:

• Wenn ein Blickpunkt angefahren wurde, stoppen die Motoren kurz, um beiminimaler Bewegungsunschärfe einige Bilder guter Qualität aufnehmen zukönnen.

• Zellen der Entropie-Karte, die ausschließlich zwischen dem Anfahren vonzwei Blickpunkten gesehen wurden, werden nicht als ”gesehen” gekennzeich-

21

4.6 Bewegungsunschärfe und Bewegungsgeschwindigkeit 4 UMSETZUNG

net. Wird dort ein interessantes Objekt vermutet, muss der Bereich zu einemspäteren Zeitpunkt erneut angefahren werden.

• Da die Qualität der Bilder zwischen dem Anfahren von zwei Blickpunktenohnehin als gering bewertet wird, kann das Bewegungstempo der Kopfmo-toren hoch gewählt werden, um die Zeit, die für das Anfahren des neuenBlickpunktes benötigt wird, zu minimieren.

In unmittelbarer Konsequenz bedeutet dies auch, dass in den Bewegungsphasen derKopfmotoren die Entropie-Karte nicht aktualisiert werden muss - was die Perform-anz des Algorithmus erheblich verbessert. Allerdings sinkt aufgrund dieser durchBewegungsunschärfe induzierten Effekte auch die Reaktivität des Algorithmus -eine begonnene Bewegung wird stets zu Ende ausgeführt. Wie in Kapitel 4.4.2beschrieben werden allerdings ohnehin bevorzugt kleine Bewegungen ausgeführt.

22

5 ERGEBNISSE

5 Ergebnisse

5.1 Effektivität des Algorithmus

Um die Effektivität des Algorithmus einschätzen zu können, wäre der direkte Ein-fluss auf die Qualität der Daten der Selbstlokalisierung und der Objekt-Modelleinteressant gewesen. Belastbare Messungen über die Qualität der Selbstlokalisie-rung konnten auf dem bestehenden System allerdings nicht durchgeführt werden,da zum Zeitpunkt dieser Arbeit keine Möglichkeit bestand, zuverlässig die tat-sächliche Position des Roboters auf dem Spielfeld in Echtzeit zu ermitteln. Die In-stallation eines Ground-Truth Systems wurde zwar angestrebt, jedoch noch nichtvollendet. Somit fehlte die Möglichkeit, den Fehler zwischen der berechneten undder tatsächlichen Position des Roboters zu berechnen. Auch mit dem SimulatorSIM* der FUmanoids konnten keine belastbaren Daten aufgenommen werden, dader Simulator ein gleichzeitiges Bewegen des Kopfes und des Roboters auf demSpielfeld nicht unterstützte. Ohne erheblichen Aufwand kann eine solche Funktio-nalität offenbar nicht hergestellt werden.Um dennoch eine ungefähre Einschätzung der Effektivität vornehmen zu können,werden im folgenden vier als relevant eingeschätzte Kenngrößen betrachtet, welchedie Häufigkeit der Observationen einzelner Objekte messen:

• field observed: Der prozentuale Anteil an Zellen der Entropie-Karte, derenletzte Observation nicht länger als 5 Sekunden zurückliegt

• ball seen: Die Zeit (prozentual), in welcher der Ball gesehen wurde• ball not seen: Die längste Zeitspanne, in welcher der Ball nicht gesehen wurde• objects seen: Die mittlere Anzahl an Objekten, die auf einem aufgenommenen

Bild erkannt wurde (aus allen aufgenommenen Bildern)Im Experiment steht der Roboter an willkürlich ausgewählten Positionen mit Blickin das Spielfeld und beobachtet den zufällig platzierten Ball und ein zufällig plat-ziertes Hindernis. Das Experiment wurde in einer kontrollierten Laborsituation50 Mal wiederholt. Aufgrund des großen Zustandsraumes ist dieses Experimentals nicht repräsentativ anzusehen. Es werden die genannten Kenngrößen über ei-nen Zeitraum von einigen Minuten erfasst. Exemplarische Versuchsaufbauten zeigtAbbildung 12Verglichen werden in diesem Szenario die aktive Blickrichtungssteuerung auf einerlokalen Entropie-Karte, eine passive Blickrichtungssteuerung, die den Kopf aufeiner vorgegebenen Trajektorie bewegt, und der Modus ”Ball-Verfolgung” (wie inKapitel 4.1 beschrieben). Eine Übersicht der Ergebnisse ist in Tabelle 2 zu sehen.

23

5.1 Effektivität des Algorithmus 5 ERGEBNISSE

(a) Versuchsaufbau 1 (b) Versuchsaufbau 2

Abbildung 12: Exemplarische Versuchsaufbauten

ballfield observed (%) objects seen (#)

seen (%) not seen (sec)max avg σ avg σ

track ball 77.76 0.46 0.00 0.00 57.25 2.26 0.96active 26.49 2.91 1.79 0.61 78.71 1.22 1.11passive 23.84 5.67 3.26 1.36 74.94 1.09 1.01

Tabelle 2: Messungen für unterschiedliche Blickrichtungssteuerungen im Vergleich

Die Messungen zeigen, wie mit einer passiven Steuerung die gesamte Umgebungregelmäßig observiert wird, wohingegen bei der Ball-Verfolgung der Ball und dasgegnerische Tor besonders häufig observiert werden. Diese Ergebnisse sind nichtüberraschend, liefern aber einen Richtwert dafür, was für diese Verhaltensweisen ingünstigen Fällen erreichbar ist. Die aktive Blickrichtungssteuerung realisiert einenKompromiss zwischen diesen Verhaltensweisen.Es ist zu vermuten, dass bei Verwendung einer Entropie-Karte im Weltkoordina-tensystem der Unterschied zwischen passiver und aktiver Blickrichtungssteuerungdeutlicher ausfällt, da unter Berücksichtigung der Selbstlokalisierung große Be-reiche außerhalb des Spielfelds seltener observiert werden. In Ermangelung einerhinreichend zuverlässigen Selbstlokalisierung oder alternativ eines Simulators, vondem Kopfbewegungen unterstützt werden, konnte diese Vermutung jedoch nichtnäher untersucht werden.

24

5.2 Effizienz des Algorithmus 5 ERGEBNISSE

5.2 Effizienz des Algorithmus

Im Experiment wurde die benötigte Zeit, um eine Aktualisierung der Entropie-Karte vorzunehmen, über längere Zeiträume in Spielsituationen beobachtet. Füreine Aktualisierung werden zwischen 5ms und 20ms benötigt, je nach Größe desGesichtsfeldes der in Frage kommenden Kandidaten-Blickpunkte.Wie in Kapitel 4.6 bereits beschrieben, erfolgt eine Aktualisierung der Entropie-Karte nur, wenn das Anfahren einer Kopfposition beendet wurde, da die Quali-tät der Bilder, die während einer mit annehmbarer Geschwindigkeit ausgeführtenKopfbewegung aufgenommen werden, als unzureichend angenommen wird. Je nachEntfernung zwischen zwei Blickpunkten benötigt das Anfahren einer Position ca.1-2 Sekunden. Die oben veranschlagte Rechenzeit von 5-20ms wird folglich nichtin jedem Frame, sondern nur alle 1-2 Sekunden benötigt, was als unproblematischbezüglich der verfügbaren System-Ressourcen beurteilt wird.

25

6 FAZIT

6 Fazit

6.1 Zusammenfassung

Es wurde im Rahmen dieser Arbeit eine aktive Blickrichtungssteuerung auf Basiseiner Entropie-Karte in das System der FUmanoids implementiert. Hierfür wirdeine Karte des Spielfeldes aus diskreten Zellen verwendet, für welche in ihnengesehene Objekte gespeichert werden, sowie die Zeit der letzten Observierung.Aus diesen Daten wird ein Wert für die Entropie einer solchen Zelle berechnet,so dass bei der Wahl einer neuen Blickrichtung die Gesamt-Entropie der Karteminimiert werden kann.Der Algorithmus wurde sowohl für eine Entropie-Karte im Weltkoordinaten- alsauch für eine Karte im Roboterkoordinatensystem implementiert. Während dasArbeiten in Weltkoordinaten ermöglicht, Bereiche außerhalb des Spielfeldes zuvernachlässigen, betrachtet der lokale Ansatz Daten aus der Selbstlokalisierung,die zum Zeitpunkt dieser Arbeit sehr unzuverlässig waren, nicht. Der lokale Ansatzist somit robuster, schmälert allerdings die Vorzüge einer aktiven Blickrichtungs-steuerung im Vergleich zu einer passiven.Der aktive Ansatz wurde mit empirischen Mitteln mit einem passiven Ansatz, beidem mit den Kopfmotoren eine vorgegebene Trajektorie abgefahren wird, sowiemit einem weiteren Ansatz verglichen, bei dem ausschließlich der Ball und dasgegnerische Tor verfolgt werden. Liegen nur wenige Daten über bekannte Objektevor, erreicht der aktive Ansatz die Qualität des passiven. Je eher Daten vorhan-den sind, desto öfter werden bekannte Objekte observiert, was einen Kompromisszwischen dem Observieren aller sichtbaren Bereiche auf dem Spielfeld und demValidieren der Positionen bekannter Objekte darstellt.Die implementierte aktive Blickrichtungssteuerung wurde von den FUmanoids beider Deutschen- sowie der Weltmeisterschaft 2012 verwendet und lieferte dort dieerwarteten Ergebnisse. Das Verfahren zeigte sich jedoch gelegentlich als nicht hin-reichend robust, insbesondere wenn Projektionsfehler die Berechnung aktueller undzukünftiger Gesichtsfelder beeinträchtigten. Ferner hat sich gezeigt, dass die Vorzü-ge gegenüber weniger ambitionierten (dafür aber robusteren Verfahren) nur geringausfallen, solange einer der wesentlichen Vorzüge des Verfahrens - nicht aus demSpielfeld heraus zu schauen - nicht verwendet werden kann. Dies würde die Ver-wendung einer Selbstlokalisierung erfordern, die entweder hinreichend robust ist,oder zumindest eine Bewertung der eigenen Zuverlässigkeit bereitstellen kann.

26

6.2 Ausblick 6 FAZIT

6.2 Ausblick

Zur Weltmeisterschaft 2012 wurde ein lokaler, auf Roboterkoordinaten arbeiten-der Ansatz für die Blicksteuerung verwendet, der - wie oben beschrieben - gewis-se Vorzüge des Verfahrens nicht voll ausschöpfen kann. Es ist zu erwarten, dassdas Arbeiten in Weltkoordinaten hier bessere Ergebnisse liefert. Es sei an dieserStelle angemerkt, dass auch vergleichbaren Systeme anderer Forschungsgruppen(siehe [10], [8]) auf Weltkoordinaten arbeiten. Sobald die Selbstlokalisierung derFUmanoids hinreichend robust ist, oder zumindest eine Bewertung der eigenen Zu-verlässigkeit bereitstellen kann, kann dieser Ansatz erneut in Erwägung gezogenwerden.Bei Verwendung eines lokalen Koordinatensystems wiederum ist zu prüfen, ob dieVerwendung eines logarithmischen Maßes für die Zellen-Größe (wie in Abschnitt4.5 beschrieben) eine signifikante Vereinfachung des Algorithmus darstellt. Es istzu vermuten, dass neben der Performanz hiermit sogar die Robustheit des Verfah-rens verbessert werden kann.Das Berechnen von durch Hindernisse verdeckten Bereichen wurde zwar exempla-risch implementiert, aus Gründen der Performanz jedoch wieder verworfen. Beigegebenenfalls erhöhter Rechenleistung zukünftiger Robotergenerationen könnteerneut untersucht werden, ob die Vorteile einer solchen Berechnung den höherenRechenaufwand rechtfertigt.Bislang überhaupt nicht berücksichtigt wurde Feedback der Objektmodelle sowieder Selbstlokalisierung an die Blickrichtungssteuerung: da die Blickrichtungssteue-rung selbst keine Annahmen über die Qualität aufgenommener Bilder trifft, wäreein Feedback der modellierenden Module denkbar, die bei einer hohen Unsicherheitüber die Qualität der Daten die Blickrichtungssteuerung dazu bewegen, bestimm-te Objekte präferiert erneut zu observieren. Die Blickrichtungssteuerung könntesomit nicht nur die Regelmäßigkeit von Observationen garantieren, sondern auchauf potentielle Unsicherheit der Daten reagieren.

27

Abbildungsverzeichnis Abbildungsverzeichnis

Abbildungsverzeichnis1 ”Wahrnehmung” des Roboters durch unterschiedliche Linsen . . . . 22 Feld in der KidSize-Liga [2]. . . . . . . . . . . . . . . . . . . . . . . 33 Anordnung der Servomotoren . . . . . . . . . . . . . . . . . . . . . 44 Entropie-Kurve für Existenz-Wahrscheinlichkeiten . . . . . . . . . . 105 Exemplarische Normalverteilung im 2-dimensionalen 2 . . . . . . . 126 Statisches und dynamisches Wissen . . . . . . . . . . . . . . . . . . 147 Entropie-Karte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 168 Kandidaten für eine neue Blickrichtung . . . . . . . . . . . . . . . . 179 Zellen-Gewichtung anhand einer Normalverteilung in einem Ge-

sichtsfeld . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1810 Lokale Entropie-Karte im Roboterkoordinatensystem . . . . . . . . 2011 Gitter einer lokalen Entropie-Karte mit logarithmischem Abstands-

maß . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2112 Exemplarische Versuchsaufbauten . . . . . . . . . . . . . . . . . . . 24

28

Literatur Literatur

Literatur

[1] J. E. Bresenham. Algorithm for computer control of a digital plotter. IBMSystems Journal 4, page 25–30, 1965.

[2] RoboCup Humanoid League Technical Committee. Robocup soccer humanoidleague rules and setup, 2010.

[3] A. Elfes. Dynamic control of robot perception using stochastic spatial models.International Workshop on Information Processing in Mobile Robots, 1991.

[4] D. Fox, W. Burgard, and S. Thrun. Active markov localization for mobilerobots. Robotics and Autonomous Systems, page 195–207, 1998.

[5] Brad Hall, Brock White, Benjamin Vance, Claude Sammut, David Claridge,Hung Nguyen, Jayen Ashar, Maurice Pagnucco, Stuart Robinson, Yanjin Zhu,Adrian Ratter, and Bernhard Hengst. runswift team report 2010, 2010.

[6] Stefan Kohlbrecher, Alexander Stumpf, and Oskar von Stryk. Grid-basedoccupancy mapping and automatic gaze control for soccer playing humanoidrobots. The 6th Workshop on Humanoid Socer Robots @ Humanoids Confe-rence, Bled, (Slovenia), 2001.

[7] Michael Kruse, Stefan Czarnetzki, and Soren Kerner. Real-time active visi-on by entropy minimization applied to localization. RoboCup InternationalSymposium 2010, 2010.

[8] Tim Laue, Andreas Seekircher, and Thomas Rofer. Entropy-based activevision for a humanoid soccer robot. RoboCup International Symposium 2010,2010.

[9] Tobias Ludwig. Hindernis- und spielererkennung fur humanoidroboter beimrobocup. Master’s thesis, TU Darmstadt, FB Informatik, 2006.

[10] T. Rofer, T. Laue, J. Muller, O. Bosche, A. Burchardt, E. Damrose, K. Gill-mann, C. Graf, T. Haas, A. Hartl, A. Rieskamp, A. Schreck, I. Sieverdingbeck,and J.-H. Worch. B-human team report and code release 2009. Technical re-port, Bremen, 2009. Only available online: http://www.b-human.de/file_download/26/bhuman09_coderelease.pdf.

[11] A. Saffiotti and K. LeBlanc. Active perceptual anchoring of robot behaviorin a dynamic environment. IEEE Intl. Conf. on Robotics and Automation(ICRA), page 3796–3802, 2000.

[12] JF Seara, O. Lorch, and G. Schmidt. Gaze control for goal-oriented huma-noid walking. Proceedings of the IEEE/RAS International Conference onHumanoid Robots (Humanoids), Tokio, Japan, page 187–195, 2001.

29

Literatur Literatur

[13] Daniel Seifert, Stefan Otte, Johannes Kulick, Naja von Schmude, Lisa Dohr-mann, Steffen Heinrich, Hamid Moballegh, Sebastian Mielke, Lutz Freitag,Simon Hohberg, Julius Auer, Max Losch, and Raúl Rojas. Berlin United- FUmanoids Team Description Paper 2012. RoboCup 2012: Robot SoccerWorld Cup XV Preproceedings, January 2012.

[14] C. E. Shannon. A mathematical theory of communication. Bell System Tech-nical Journal 27, page 379–423, 1948.

[15] S. Vijayakumar, J. Conradt, T. Shibata, and S. Schaal. Overt visual attentionfor a humanoid robot. Proc. of IEEE/RSJ Intl. Conf. on Intelligent Robotsand Systems, 4:2332–2337, 2001.

[16] T. Xu, Q. Muhlbauer, S. Sosnowski, K. Kuhnlenz, and M. Buss. Looking atthe surprise: Bottom- up attentional control of an active camera system. 10thInternational Conference on Control, Automation, Robotics and Vision, page637–642, 2008.

30