Universität Bremen  
  FB3 DFKI Kontakt  
  AG BKB > Thomas Röfer > Kognitive Robotik I > Übungszettel > Deutsch
English
 

3. Übungszettel: Verhaltenbasierte Robotik

 

Ausgabe: 4. Dezember 2002
Abgabe: 18. Dezember 2002

Wenn ihr für die Programmieraufgaben auf diesem Übungszettel auch die Simulation einsetzen möchtet, solltet ihr folgende Dateien verwenden:

  • Den PSD-Patch (Ersatz für Src/Platform/Win32/SimRobot/OVirtualRobotComm.cpp)
  • Die Szene Labyrinth.scn
  • Die Registry-Ergänzung Labyrinth.reg, die ein geeignetes Fenster-Layout für die Szene enthält.

1. Folgt ihr unauffällig... (25%)

Implementiert folgende drei Verhalten:

Wandverfolgung links.
Der Roboter soll zu der Wand auf seiner linken Seite einen möglichst konstanten Abstand halten. Zweigt sie ab, z.B. an einer Kreuzung, soll er ihr auch dann folgen. Nutzt hierzu den PSD-Sensor.
Wandverfolgung rechts.
Verfolgen der rechten Wand, analog zur Wandverfolgung links.
Stop.
Hält den Roboter an.

Alle Verhalten sollen durch eine Funktion setBehavior(Behavior) gestartet werden, wobei der Parameter die drei Werte LEFTWALL, RIGHTWALL und STOP annehmen kann, die ihr per enum vereinbaren könnt.

2. Routiniertes Navigieren (30%)

Baut einen Testparcours aus "Wänden" (z.B. z.B. Pappkartons) auf, dem man nur durch eine Abfolge mehrerer Verhalten folgen kann (hierbei reicht es, wenn es im Praktikumsraum nur einen Parcours gibt). Überlegt euch eine Möglichkeit, Wegmarken, z.B. an den Wänden, zu platzieren, die mit der Kamera erkannt werden können. Diese sollen zum Umschalten zwischen den Verhalten genutzt werden, so dass der Roboter der Route folgen kann und am Ende anhält. Die Zuordnung von Wegmarken zu Verhaltenswechseln sollte z.B. in einem Array abgelegt werden, das von einer Funktion nach und nach ausgewertet wird, bis das Verhalten STOP erreicht wird.

3. Fragen über Fragen... (20%)

Diskutiert folgende Fragen:

  • Warum ist es ungünstig, nur einen Entfernungssensor für die Wandverfolgung zu verwenden? Was kann schief gehen?
  • Mit den implementierten Grundverhalten kann man noch keine Kreuzung überqueren. Warum nicht? Skizziert eine Lösung des Problems für den Aibo.
  • Welche Fehler können bei der in Aufgabe 2 implementierten Art der Navigation auftreten?

4. Untergeordnete Architektur (25%)

Teilaufgabe 1. Beschreibt die Subsumption Architecture:

  • Die Motivation
  • Den Aufbau
  • Welche Probleme gibt es?

Teilaufgabe 2. Erstellt ein Konzept für einen Roboter-Torschützen. Nutzt hierzu die Subsumption Architecture. Welche Module verwendet ihr, wie verbindet ihr sie? Stellt euer Konzept auch grafisch dar.

 
   
Autor: Dr. Thomas Röfer
 
  Kognitive Robotik I 
Zuletzt geändert am: 3. Dezember 2002   impressum