# FlappiBird AI — HasiKe

> FlappiBird AI — Neural Network + Genetic Algorithm lernen Flappy Bird zu spielen.

Quelle: https://hasike.de/projects/FlappiBird-AI/

## Wie's *funktioniert*.

### 300 *Vögel*

Jede Generation startet mit 300 unabhängigen Vögeln. Jeder hat sein eigenes neuronales Netz
 mit zufälligen Anfangsgewichten. Manche werden sehr schnell sterben — manche überraschend gut.

### Survival of the *Fittest*

Die besten Vögel (= die, die am weitesten kommen) werden ausgewählt. Ihr neuronales Netz
 wird als „Eltern-Genom" verwendet — schlechte Vögel werden aussortiert.

### *Vererbung* + Mutation

Die neue Generation übernimmt die Gewichte der besten Eltern, mit kleinen zufälligen Mutationen
 (~1 %). So entstehen Variationen, von denen einige besser sind als die Eltern.

## Die *Architektur*.

### 4 → 4 → 3 → 1 *Layers*.

Jeder Vogel hat ein winziges neuronales Netz: vier Eingänge, zwei kleine Hidden-Layers
 und genau einen Output — springen oder nicht.

Klein genug, dass 300 Vögel parallel rechnen können. Groß genug, um wirklich was zu lernen.

#### Inputs des Netzwerks

- Position des Vogels (Y)
- Aktuelle Geschwindigkeit
- Distanz zur nächsten Röhre
- Höhe der nächsten Lücke

## FAQ.

### Wie viele Vögel spielen pro Generation?

300 unabhängige Vögel, jeder mit eigenem neuronalen Netz und zufälligen Anfangsgewichten. Die besten überleben, ihre Gewichte werden als Basis für die nächste Generation genutzt.

### Welche Netzwerk-Architektur nutzen die Vögel?

4-4-3-1: vier Inputs (Y-Position des Vogels, Geschwindigkeit, Distanz zur nächsten Röhre, Höhe der Lücke), zwei Hidden Layers mit 4 und 3 Neuronen, ein Output-Neuron für „Springen oder nicht".

### Wie funktioniert die Vererbung zwischen Generationen?

Die neue Generation übernimmt die Gewichte der besten Eltern-Vögel, mit kleinen zufälligen Mutationen von ca. 1%. So entstehen Variationen, von denen manche besser sind als ihre Eltern — klassischer genetischer Algorithmus.

## Bereit zum *Spielen*?

Drück `→` für mehr Speed, `←` für weniger. Schau zu, wie die AI sich selbst beibringt zu fliegen.
