Masterprojekt KI: Evolutionsinseln

Montag, September 28, 2020

Evolutionsinseln - Part 1

In diesem Teilprojekt geht es um die Simulation von Evolution in einem künstlichen ökologischen System. Das langfristige Ziel ist eine anschauliche Visualisierung verschiedener Evolutionsphänomene wie bspw. Gendrift, mehrkriterielle Optimierung, dynamische Fitnesslandschaften, Koevolution, konvergente Evolution und andere. Diese Effekte sind in der Natur wegen ihrer Verteiltheit und Langsamkeit schwer zu beobachten und sollen hier durch Individuen in einer 3D-Welt erlebbar werden. Es soll Spaß machen, den Experimenten wie einem spannenden Film zu folgen. Das Projekt orientiert sich an der 2D-Welt in [1].

Ergebnis: Schließen der Evolutionsschleife in einer einfachen Ökologie

  • Allan Fodi, Florian Spitz: Lauffähiger Prototyp mit Genotypen, Phänotypen, Bewegung, Mutation, Vererbung und Futter (UnrealEngine, C++ und Blueprint)
Das folgende Video vom Start einer Evolution zeigt einen glücklichen Zufall: Swimbot 0838957835290 bemerkt Futter (Anzeige mit Search: 'false') und bewegt sich zufällig ab der 60. Sekunde in die richtige Richtung. Seine Kopfachse ist mit rot eingezeichnet. Wenn der Winkel zwischen Kopfachse und Futterrichtung seinen persönlichen Schwellwert von 0.823333 (AbTorot) überschreitet, verfällt er kurz in eine zweite Bewegungsart mit anderen Parametern - so in der 82. Sekunde kurz vor dem Futter. Zufällig liegt er nun noch besser vor dem Futter, das er in der 85. Sekunde erreicht. Zu dem Zeitpunkt beträgt sein Energievorrat 20.4 - sehr knapp.
Die Futteraufnahme liefert 100 Energiepunkte, allerdings kann dieser Swimbot nur maximal 083 Energiepunkte speichern, erkennbar an den ersten drei Ziffern in seinem Genotyp. Mit 83 Energiepunkten hat er den Systemschwellwert von 70% Eigenenergie überschritten und reproduziert sich in einen neuen Swimbot. Elternteil und Nachkomme teilen sich genotypspezifisch die Energiepunkte des Elternteils auf, in diesem Fall sehr großzügig mit 44 zu 39 für das Kind. Der Genotyp des Kindes 0879564825886 ist eine Mutation, die dem Elter ähnelt und dennoch minimal andere Eigenschaften kodiert, bspw. kann er mehr Energie speichern.

Quelltext und Executable auf Anfrage an boersch@th-brandenburg.de

[1] Ventrella J. (2005) GenePool: Exploring the Interaction Between Natural Selection and Sexual Selection. In: Adamatzky A., Komosinski M. (eds) Artificial Life Models in Software. Springer, London. https://doi.org/10.1007/1-84628-214-4_4