Bachelorarbeit von Mulham Alesali
Konzeption und Umsetzung eines Neuroevolutionären Algorithmus zur Steuerung eines Fahrzeugs in Unity
Genetische Algorithmen (GA) können zur Optimierung der Wichtungen künstlicher neuronaler Netze (kNN) verwendet werden. Die Lernaufgabe ist in diesem Fall das Finden einer Policy, die in der Lage ist, in einer einfachen simulierten Umgebung ein Fahrzeug zu steuern und gehört damit zum Reinforcement-Learning. Hierzu ist der GA zu implementieren und auf die Lernaufgabe anzuwenden. Die (physikbasierte) Simulation ist in geeigneter Weise in Unity zu entwickeln und soll Aspekte der Vermittlung von Konzepten berücksichtigen. Dies wäre denkbar durch die Visualisierung der Genotypen, der Fitnessverteilung oder der Fitnessentwicklung. Die besondere Schwierigkeit besteht in der Entwicklung einer Gesamtapplikation mit Simulation, Prozess-Steuerung, Visualisierung und KI-Komponente.
Im Ergebnis entstand eine anschauliche, motivierende Unity/C#-Applikation, die eine Population von neuronalen Netzen als Policy für die Steuerung der Fahrzeuge evolviert. Die Evolution kann mittels Fitnessverteilung und Fitnesskurven über die Generationen verfolgt werden. Die Verwandschaftsverhältnisse werden durch Farbcodes im Genotyp verdeutlicht. Trainierte Populationen können dann auf andere Strecken übertragen werden und zeigen dort eine ähnlich gute Leistung.
Kolloqium: 29.03.2021
Betreuer: Dipl.-Inform. Ingo Boersch, Prof. Dr. Jochen Heinsohn
Download: A1-Poster, Abschlussarbeit