von Michel Jakel, IT-Consultant + Ann-Marie Keller, k+k Akademie

TEIL 2 von Dumm stirbt, schlau gewinnt: Warum KI „Tierversuche“ braucht?

Neuronale Netze anhand von Flappy Bird verstehen

Wie versprochen: Die „Tierversuche“ gehen weiter. Im ersten Teil unserer Flappy-Blogserie haben wir das Experiment erläutert und erklärt, wie das neuronale „Gehirn“ von Flappy funktioniert. Währenddessen haben wir die Versuche weiterlaufen lassen. Jetzt wollen wir sehen, wie sich die Lernkurve der Flappys weiterentwickelt hat. Wie schon angekündigt, geben wir Flappy eine weitere Entscheidungsmöglichkeit und schauen was passiert.

Flappy lernt weiter oder doch nicht?

Im letzten Artikel ging es nur um die ersten beiden Flappy-Generationen. Mittlerweile haben sich die Flappys über mehrere Generationen hinweg weiterentwickelt und das Ergebnis kann sich sehen lassen.

Die Grafik zeigt, dass es unter den Flappys immer wieder „Ausreißer“ gibt, dennoch ist in Generation ~ 45 eine Rekombination entstanden, die 100% der Herausforderungen gemeistert hat. Allerdings fällt die Lernkurve danach wieder rapide nach unten.

Wie kann so etwas passieren, wenn man davon ausgeht, dass immer die „DNA“ der beiden besten Flappys weitergegeben wird? Die Erklärung ist recht simpel. Die „Evolution“, die das Lernverhalten der Flappys vorantreibt, wendet, wie bereits in Teil 1 erwähnt, drei Algorithmen an:

Selektion, Kreuzung und Mutation.

Durch die Mutation kann es tatsächlich passieren, dass sich die „DNA“ zufällig und dauerhaft auch zum „Negativen“ verändert.

Flappy 2.0: das Gehirn wird komplexer

Was passiert nun, wenn wir Flappys Gehirn erweitern und ihm die Fähigkeit geben, noch eine zusätzliche Entscheidung zu treffen? Gefragt — getan. Flappy 2.0 hat nicht nur die Möglichkeit zu entscheiden, wann es mit den Flügeln schlägt, sondern auch mit welcher Geschwindigkeit es fliegt.

Dafür haben wir festgelegt, dass Flappy bei einem Output von 1 Vollgas nach vorne gibt, bei 0 stehen bleibt und bei -1 mit Vollgas zurückfliegt. Im neuronalen Netz ist daher jetzt der Input (Entfernung, oben, unten), die Handlungsmöglichkeiten (Geschwindigkeit & Flügelschlag) und das Ziel (so weit wie möglich zu kommen) definiert.

Jetzt wird es spannend …

Wir haben keine Ahnung, wie Flappy jetzt mit der neuen Möglichkeit sein Ziel erreicht. In den folgenden Videos sehen wir, wie das Verhalten sich verändert hat. Zur Erinnerung: Die „Anfangspopulation“ besteht aus Flappys mit „zufälligen neuronalen Netzen“.

Generation 2 zeigt, dass die Flappys viele verschiedene Verhaltensmuster umsetzen. Über mehrere Generationen hinweg hat sich ein Muster erfolgreich durchgesetzt: Die Flappys fliegen zunächst an die Säule, bremsen ab, verändern die Höhe und geben dann wieder Gas. Dieses Muster nennen wir „Kolibri-Verhalten“.

Soweit so gut. Was passiert jetzt aber, wenn wir zum Beispiel mit einer doppelt so großen Population starten wie zuvor und anstatt 4 Neuronen 6 Neuronen hinzufügen, also deutlich mehr neuronale Verbindungen haben?

To be continued: Flappy braucht Futter!

Am besten wir finden das gemeinsam heraus. Welches Experiment bietet sich noch an? Was kann man hinzufügen oder verändern? Wir freuen uns auf die Vorschläge und weitere „Flappy-Experimente“ mit Euch!

Mehr Blogpost zum Thema Künstliche Intelligenz:

Sprechen Sie Algorithmus?

KI-Landschaft Baden-Württemberg

Was ist eigetnliche Machine Learning?

Dumm stirbt, schlau gewinnt: Warum KI „Tierversuche“ braucht?

Künstliche Intelligenz: Sie sind längst unter uns

Zurück

Einen Kommentar schreiben

Kommentar von Laura |

Wie wäre es, wenn man bestimmt, dass die Flappys nur paarweise, als Team durch die Säulen fliegen dürfen?

Kommentar von Antonia |

Ich fände es lustig, wenn die Flappys sich nur per Looping durch die Säulen bewegen dürften oder was passiert, wenn das Ziel ist, dass der Langsamste gewinnt