Analyse und Entwicklung selbstlernender Bewegungsabläufe von Roboter-Skeletten
- Art: Diplomarbeit
- Autor: Stefan Fenn
- Abgabedatum: Juni 2004
- Umfang: 64 Seiten
- Dateigröße: 1,3 MB
- Note: 1,0
- Institution / Hochschule: Fachhochschule Augsburg Deutschland
- ISBN (eBook): 978-3-8324-8508-5
- ISBN (CD) :978-3-8324-8508-5 CD
- Sprache: Deutsch
- Prämierung:
- Arbeit zitieren: Fenn, Stefan Juni 2004: Analyse und Entwicklung selbstlernender Bewegungsabläufe von Roboter-Skeletten, Hamburg: Diplomica Verlag
- Schlagworte: evolutionäre Algorithmen, Gangart, Optimierung, Neurale Netze, Evolution
In den Warenkorb
74,00 €
Diplomarbeit von Stefan Fenn
Einleitung:
In den neunziger Jahren wuchs weltweit das wissenschaftliche und wirtschaftliche Interesse an laufenden Robotern. Die Realisierung solcher Roboter ist wesentlich schwieriger als z.B. die Fortbewegung mit Rädern. Eine grundlegende Frage ist, warum man versucht, laufende Roboter zu konstruieren. Ein wichtiger Grund dafür ist die Möglichkeit, sich in Terrains zu bewegen, in denen ein Fahrzeug mit Rädern nicht fahren kann. Die Fortbewegung auf Beinen ermöglicht das Überwinden von Hindernissen, das Treppensteigen und auch eine gleichmäßige Fortbewegung auf unebenem Gelände. Zum Beispiel sollen US-Soldaten in Zukunft einen Roboterhund als Unterstützung in ungangbarem Gelände erhalten.
Um laufende Roboter zu entwickeln, wird mit computerbasierten Modellierungen und Simulationen versucht, weitere Erkenntnisse zu gewinnen, die vielleicht eine Antwort auf viele ungelöste Probleme bei der Dynamik des Laufens finden.
Mit Framsticks und Breve hat man die Möglichkeit, Roboter-Skelette zu entwickeln, die sich in einem evolutionären Zyklus befinden. Durch eine festgelegte Zielfunktion wird versucht, ein Skelett zu erschaffen, das am besten in dieser simulierten Umwelt und ihren Nebenbedingungen überlebt. Die Verbesserung kann auf verschiedene Arten geschehen. Entweder verändert sich das Skelett einer Kreatur oder es ändern sich die Kontrollstrukturen, die den Bewegungsablauf steuern.
Durch diesen Ansatz hat man die Möglichkeit, lernfähige Roboter zu konstruieren, die sich in Zukunft besser auf unbekanntem Untergrund bewegen als bei den klassischen Methoden. Natürlich ist es bis dahin ein weiter Weg, jedoch ist die Idee, eine Robotersteuerung zu entwerfen, die sich ohne weiteres Wissen anpassen und lernen kann, ein interessanter Ansatz.
Zusammenfassung:
In dieser Diplomarbeit werden grundlegende Kenntnisse der simulierten Bewegung von Roboter-Skeletten erörtert. Dabei wird insbesondere auf die Techniken der evolutionären Algorithmen, wie auch auf die Simulatoren Framsticks und Breve eingegangen.
Es sind außerdem viele Simulationszustände in Breve und Programme für die Simulationsumgebung Breve enthalten. Des Weiteren können evolutionäre Algorithmen, neuronale Netze und ein Beispiel für eine Trägeroptimierung in Java (Source enthalten) interaktiv verfolgt werden.
Ferner wird auf die verschiedenen Lösungsarten als auch auf die Theorie der Evolution – aus der die evolutionären Algorithmen hervorgegangen sind – genauer eingegangen.
Dadurch wird es möglich Roboter-Skelette zu entwickeln, die selbstständig den aufrechten Gang erlernen.
Inhaltsverzeichnis:
| 1. | Ansätze in der Natur | 5 |
| 1.1 | Evolution | 5 |
| 1.1.1 | Anfang der Evolution | 5 |
| 1.1.2 | Arten und Rassen | 7 |
| 1.1.3 | Genetik | 8 |
| 1.1.4 | Auswirkungen auf die Evolution | 11 |
| 1.1.5 | Inzucht | 12 |
| 1.2 | Gangarten in der Natur | 12 |
| 1.2.1 | Schritt | 13 |
| 1.2.2 | Trab und Pass | 14 |
| 1.2.3 | Galopp | 14 |
| 1.2.4 | Gleichgewicht | 15 |
| 2. | Ansätze in der Informatik | 16 |
| 2.1 | Evolutionäre Algorithmen | 16 |
| 2.1.1 | Arten von Lösungen | 17 |
| 2.1.2 | Überblick | 24 |
| 2.1.3 | Initialisierung | 24 |
| 2.1.4 | Überprüfung der Abbruchbedingung | 25 |
| 2.1.5 | Bewertung | 25 |
| 2.1.6 | Fitness | 25 |
| 2.1.7 | Selektion | 26 |
| 2.1.8 | Rekombination | 28 |
| 2.1.9 | Mutation | 29 |
| 2.1.10 | Wiedereinfügen | 30 |
| 2.1.11 | Populationen | 31 |
| 2.2 | Neuronale Netze | 32 |
| 2.2.1 | Topologie | 35 |
| 2.2.2 | Lernverfahren | 35 |
| 2.2.3 | Optimierung | 35 |
| 3. | Simulation in Framsticks | 36 |
| 3.1 | Einleitung | 36 |
| 3.2 | Die Umgebung | 36 |
| 3.3 | Teile eines Roboter-Skeletts | 37 |
| 3.3.1 | Körperpunkt | 37 |
| 3.3.2 | Körperverbindungen | 37 |
| 3.3.3 | Neuronen | 38 |
| 3.3.4 | Verbindungen zwischen Neuronen | 38 |
| 3.3.5 | Neuronendefinitionen | 38 |
| 3.4 | Erzeugung des Skeletts | 40 |
| 3.4.1 | Formelsprache f0 | 40 |
| 3.4.2 | Formelsprache f1 | 41 |
| 3.4.3 | Formelsprache f4 | . 42 |
| 3.5 | Experimente | 42 |
| 3.5.1 | Dreibein | 42 |
| 3.5.2 | Einfaches Gelenk | 43 |
| 3.5.3 | Vierbeiner | 45 |
| 4. | Simulation in Breve | 48 |
| 4.1 | Einleitung | 48 |
| 4.2 | Umgebung | 48 |
| 4.3 | Scriptsprache Steve | 49 |
| 4.4 | Experimente | 49 |
| 4.4.1 | Vorbereitung | 49 |
| 4.4.2 | Erster Gehversuch | 50 |
| 4.4.3 | Erhöhte Bewegungsfreiheit | 50 |
| 4.4.4 | neuronales Netz | 51 |
| 4.4.5 | B-Spline Steuerung | 53 |
| 4.4.6 | Streckenzug | 54 |
| 4.4.7 | modifizierter Körperbau | 54 |
| A. | Arithmetische und geometrische Progression | 57 |
| B. | Trägeroptimierung | 58 |
Mutationen werden immer auf ein Individuum angewendet. Es sollen dadurch L¨suno gen gefunden werden, die man durch Rekombination nicht findet. Also ist der ganze Bereich, der durch Rekombination nicht abgedeckt wird, potentieller Kandidat f¨r u die Mutation. Dabei wird per Zufall und der aktuellen Position eine neue Position ermittelt. Oft ist es wichtig, den Mutationsbereich anzupassen, so dass die Zerstreuung der Population nicht zu groß wird. F¨r die Mutationsrate sind 1-5 Individuen pro Generation eine gute Wahl. Die veru schiedenen Mutationsarten k¨nnen auch miteinander kombiniert werden. Es werden o nun einige Mutationsarten aufgelistet, wobei nur auf den Mutationsbereich eingegangen wird. Man hat daneben auch die M¨glichkeit, wie dieser Bereich ausgen¨tzt o u werden soll (ob gleichverteilt oder normalverteilt). globale Mutation Es wird uber den ganzen Definitionsbereich per Zufall eine Position festgelegt. Die ¨ Chance einen guten Treffer zu machen ist zwar sehr gering, man hat jedoch daf¨r u die Garantie nach endlicher Zeit in einem diskreten Raum das globale Maximum zu finden. Genauso wie bei der zuf¨lligen Initialisierung k¨nnen hier neue Ansatzpunkte a o gefunden werden, die das Gesamtverhalten der Population ver¨ndern. a 29 [...]
Abbildung 2.17: Multi-point Crossover Crossover. Meistens wird ein Crossover mit zwei Eltern benutzt und oft haben auch die einzelnen Teile die gleiche Position. Gibt es nur einen Schnitt, so wird dies als Single-point Crossover bezeichnet. Crossover wird h¨ufig in Kodierungen mit festen Werten eingesetzt, wobei die L¨nge a a der Eltern immer gleich sein muss. Außerdem besteht eine erh¨hte Wahrscheinlicho keit, dass die Nachbarschaftsbeziehung erhalten bleibt, was f¨r viele Probleme von u Bedeutung ist, die bei g¨nstiger Elementanordnung positive Auswirkungen haben. u weitere Rekombinationen Es gibt eine Vielzahl von Rekombinationsarten, die versuchen bestimmte Eigenschaften bei der Rekombination zu erhalten, wie z. B. Rekombinationen, die die Nachbarschaftsbeziehungen bewahren (edge recombination) oder die so viele Kanten wie m¨glich unver¨ndert lassen. Beispiele sind EX, MPX, OX, EAX und PX o a (siehe [11] und [14]) [...]
Durch die Rekombination werden aus zwei oder mehreren Eltern die neuen Nachkommen gebildet. Meistens muss hier auf die Art der Codierung acht gegeben werden. So ist die Rekombination von festen Werten v¨llig anders als bei kontinuiero lichen Werten. Es kann auch bei speziellen Problemen von Vorteil sein, dass die Rekombination angepasst wird. Dadurch wird zwar das Verfahren spezieller, aber man hat unter Umst¨nden eine h¨here Konvergenz. Die Rekombination sollte die a o Eigenschaft haben, dass sie m¨glichst oft eine verbesserte Fusion zweier L¨sungen o o (Individuen) ist. Es muss auch bekannt sein, wieviele Individuen der Population rekombiniert werden sollen. Ich empfehle daf¨r als Startwert mit 40 % der Population zu beginnen. u Es gibt die unterschiedlichsten Rekombinationsarten. Einige sind sehr speziell und andere haben ein großes Anwendungsspektrum. Die Rekombinationsart h¨ngt auch a stark von der Kodierungsart (kontinuierlich oder feste Werte) ab. Diskrete Rekombination Hier werden die einzelnen Komponenten der Eltern nur getauscht. Dadurch k¨nnen o trotzdem neue Individuen entstehen, indem bei Elter A die erste Komponente und bei Elter B die zweite Komponente hergenommen wird. Es k¨nnen also wirklich neue o Individuen erschaffen werden, jedoch ist die Rekombinationsvielfalt eingeschr¨nkt. a Diese Rekombinationsart ist besonders f¨r Kodierungen mit festen Werten geeignet. u Intermedi¨re Rekombination a Diese Rekombination ermittelt aus jeder Komponente einen Wert, der in N¨he der a beiden Eltern liegt mit der Formel: Rekombinationx = a Elter1x + (1 − a) Elter2x , wobei x die jeweilige Komponente ist, a ∈ [−d, 1 + d] gleichverteilt und vorzugsweise d = 0, 25 In 2D-Evolution wird nach diesem Schema rekombiniert. Es kann nur f¨r kontiu nuierliche Kodierung verwendet werden. Der Vorteil besteht darin, dass ein Kind die M¨glichkeit hat, auch uber den Tellerrand“ zu schauen. Das heißt, ein Kind o ¨ ” kann auch außerhalb des Bereichs der beiden Eltern liegen. Linien-Rekombination Diese Rekombinationsart ist genauso wie die intermedi¨re Rekombination, nur wird a hier f¨r alle Komponenten das gleiche a verwendet. Dadurch wird die Rekombinau tionsvielfalt eingeschr¨nkt. a F¨r die beiden vorhergehenden Rekombinationen kann man auch nicht lineare Veru teilungsfunktionen, wie z.B. die Gaussverteilung ben¨tzen. u Crossover Bei jeder Art von Crossover werden alle Eltern an den gleichen Stellen getrennt und so an den Kindern angeordnet, dass sie die gleiche L¨nge wie die Eltern haben (siea he Abbildung 2.17). Gibt es mehrere Schnittstellen, so spricht man von Multi-point 28 [...]
In den Warenkorb
74,00 €
Link zur Arbeit:
http://www.diplom.de/ean/9783832485085
Arbeit zitieren:
Fenn, Stefan Juni 2004: Analyse und Entwicklung selbstlernender Bewegungsabläufe von Roboter-Skeletten, Hamburg: Diplomica Verlag
Schlagworte:
evolutionäre Algorithmen, Gangart, Optimierung, Neurale Netze, Evolution



