|
Einleitung | Teilnehmer | Ergebnisse | Dokumentation | Download | Links |
ErgebnisseHier finden sich die verschiedenen Ergebnisse, die im Rahmen der Projektgruppe erzielt wurden. Dazu gehört natürlich das Programm selbst, die Ergebnisse von Evolutionsläufen die mit diesem Programm erzielt wurden, aber auch die beiden Berichte, die während des einen Jahres entstanden sind. Das ProgrammEines der Hauptergebnis der Projektgruppe ist natürlich das Programm selbst. Um eine Parallelisierung der Evolution zu ermöglichen, wurde das Programm in zwei Teile geteilt. Einer davon ist der sogenannte Master, der andere ist der Slave. Der MasterDer Master ist quasi die zentrale Verwaltung für Experimente. Ein Experiment beinhaltet alles, was für die Evolution eines Robotersteuerungsprogramm für eine bestimmte Architektur benötigt wird. Dazu gehören im groben ein Modell des Roboters, mehrere Robotersteuerungsprogramme (Individuen) und verschiedene Parameter, die für die Simulation bzw. für die Evolution der Individuen selbst benötigt werden. Die Gesamtheit aller Individuen wird Pool genannt und die Verwaltung dieses Pools ist ebenfalls die Aufgabe des Masters. Der Master ermöglicht jedoch nicht nur die Verwaltung eines Experimentes, sondern kann auch mehrere Experimente gleichzeitig verwalten. Die verschiedenen Optionen eines Experimentes können alle grafisch eingestellt werden. Dazu zählen unter anderem:
Der Slave
Der Slave wird benutzt, um den Lauf eines Roboterprogramms zu simulieren. Er kann dabei für zwei unterschiedliche Zwecke benutzt werden. Während einer laufenden Evolution wird der Slave benutzt, um die Fitnesswerte der einzelnen Individuen zu berechnen. Weiterhin kann der Slave benutzt werden, um den Lauf eines Individuums zu visualisieren. Wird der Slave benutzt um Fitnesswerte zu berechnen, wird aus Gründen der Effizienz nicht visualisiert. ParallelisierungDer Vorteil dieser Teilung des Programms in zwei Teile ist, dass die Evolution parallelisiert werden kann. Auf dem Master werden alle Einstellungen gemacht und der Pool verwaltet. Die Slaves werden nur noch benutzt, um die Fitnesswerte zu berechnen. Der Master schickt je ein Individuum mit den Parametern des Experimentes zu einem Slave. Jeder Slave schickt den von ihm berechneten Fitnesswert zurück zum Master. Das Programm findet sich im Download-Bereich als Source zum selber kompilieren, sowie als Binary-Version für Solaris als auch Linux. EvolutionsergebnisseHier finden sich die Ergebnisse einiger Evolutionsläufe. Es wird jeweils eine Grafik der verwendeten Roboterarchitektur angezeigt, sowie ein Plot des Evolutionsverlaufes. Desweiteren können das verwendete Experiment, sowie das verwendete Robotermodell runtergeladen werden. Ist zu einem Experiment ein Film vorhanden, so wird auch auf diesen verlinkt. Zu jedem der Ergebnisse findet sich auch ein kleiner Kommentar.Hammer (Nice walking fitness function)
Der Hammer war der der ersten Roboter, der richtig im Simulator lief. Von ihm gibt es noch eine Variante: den Short Hammer. Short Hammer (Nice walking fitness function)
Der Short Hammer ist eine Variation des Hammers. Die Motivation für die Konstruktion dieses Roboters war es, zu testen, ob der Hammer auch mit weniger Gliedern auskommt. Octopus (Nice walking fitness function)
In diesem Experiment wurde der Octopus mit Hilfe der "Nice Walking"-Fitnessfunktion evolviert. Im Gegensatz zur Evolution des Octopus mit der "Simple"-Fitnessfunktion zeigt dieser Roboter auch eher das Verhalten, welches man als geordnetes Gehen bezeichnen würde. Octopus (Simple fitness function)
Dieser Octopus wurde mit der "Simple"-Fitnessfunktion evolviert, d.h. es wurde ihm erlaubt mit dem Torso den Boden zu berühren. Das Laufen sieht in diesem Falle zwar nicht sehr elegant aus, ist jedoch effektiver als das Laufen mit der "Nice Walking"-Fitnessfunktion. Insect (Nice walking fitness function)
Das Insect ist ein symmetrischer sechsbeiniger Roboter. Im Gegensatz zum Walker ist er jedoch nicht achsensymmetrisch. Walker (Nice walking fitness function)
Der Walker ist ein achsensymmetrischer sechsbeiniger Roboter. Runner (Nice walking fitness function)
Der Runner ist ein zweibeiniger Roboter, der in diesem Experiment mit Hilfe der "Nice Walking"-Fitnessfunktion dazu gebracht werden sollte, zu laufen ohne umzukippen. Runner (Simple fitness function)
In diesem Experiment wurde es dem Runner gestattet umzufallen, was dieser auch prompt nutzte. Two Bases 1 (Simple fitness function)
Diese Architektur ist mit eine der einfachsten, die im Rahmen der Projektgruppe entstanden ist. Two Bases 2 (Simple fitness function)
Two Bases (mit reduziertem Instruktions-Set)
Eine Evolution mit einem reduzierten Instruktions-Set. Two Bases (mit kaum reduziertem Instruktions-Set)
Bei diesem Experiment wurde ein kaum reduziertes Instruktions-Set benutzt. Two Bases (mit hoher Crossover-Rate)
Bei diesem Experiment wurde die Crossover-Rate sehr hoch gestellt. Two Bases (mit hoher Mutations-Rate)
Bei diesem Experiment wurde die Mutations-Rate sehr hoch gestellt. Berichte
|