|
Einleitung | Teilnehmer | Ergebnisse | Dokumentation | Download | Links |
EinleitungAufgabe der PG368-SIGEL war es, das Problem der Programmierung von Steuerungsprogrammen für beliebige Laufroboter-Architekturen zu lösen. Dies sollte durch die Anwendung des Prinzips der Gentischen Programmierung, welches sich an der Entwicklungsstrategie der natürlichen Evolution orientiert und ein Konzept der automatischen Programmierung darstellt, erfolgen. Dazu musste zuerst ein Genetisches Programmiersystem erstellt werden. Ein solches System arbeitet wie ein Suchverfahren, welches anhand einer Problembeschreibung, den Lösungsraum nach einer guten Lösung durchsucht. Es besteht aus einer Verwaltung, dem sogenannten Pool, der momentan betrachteten Lösungen, die in diesem Zusammenhang Individuen genannt werden, und Strategien, die zum Herausstellen der Güte einer Lösung und zur Verbesserung dieser benutzt werden. Diese Strategien sind der natürlichen Evolution entlehnt. Gute Lösungen werden durch Selektion von schlechten Lösungen getrennt. Diese Selektion orientiert sich daran, wie gut ein Programm eine Lösung für das gesuchte Problem darstellt. Kopien guter Lösungen sollen schlechte Lösungen ersetzen, nachdem sie durch Genetische Operationen, wie Mutation, Crossover und Reproduktion, verändert wurden. Wie gut ein Laufrobotersteuerungsprogramm ist, kann nur durch seinen Einsatz mit dem Roboter überprüft werden. Solch ein Test mit einer realen Roboterarchitektur durchzuführen, kann aber für diese sehr gefährlich werden, weil Programmfehler zu irreparabelen Schäden an der Hardware führen können. Deshalb musste, neben dem GP-System, auch ein Simulator für beliebige Laufroboter-Architekturen realisiert werden. Der Simulator sollte hierbei die grundlegenden physikalischen Gegebenheiten der natürlichen Umwelt möglichst genau nachbilden. Natürlich wurde auch eine Beschreibungssprache für Roboterarchitekturen, sowie eine Visualisierung der Simulation zur Überprüfung dieser, dafür benötigt. Der Vorteil des SIGEL-Systems liegt in der Beliebigkeit der zu betrachtenden Roboterarchitekturen und der Automatisierung der Programmierung der Laufrobotersteuerungsprogramme begründet. So kann auch auf eine Veränderung einer realen Roboterhardware, durch die erneute Evolvierung der Steuerungsprogramme, reagiert werden, ohne den Roboter durch Tests zu gefährden. Die Visualisierung der Simulation stellt dabei die Möglichkeit zur Überprüfung der Evolutionsergebnisse dar, die im Idealfall sich nicht von dem Verhalten des realen Roboters unterscheiden. |