Description
Level-Up your Skills!
KI-Algorithmen verstehen, Python-Skills erweitern und Spiele programmieren - alles in einem Buch. Anhand von 10 Klassikern wie Eliza, TicTacToe und PacMan führt Python-Dozent Jens Gaulke Sie in die faszinierende Welt der Künstlichen Intelligenz ein. Lernen Sie, wie Sie 2D-Spiele mit Pygame entwickeln und implementieren Sie die KI für clevere Gegner direkt dort. Mit Q-Learning, Alpha-Beta-Pruning und Co. entwickeln Sie dabei Skills, die weit über Arcade-Spiele hinaus in der Business-Welt nützlich sind. Mit vielen Codebeispielen auch zum Herunterladen, Übungen und Vertiefungsideen ideal für alle, die einen Hands-on-Zugang lieben und Spiele mit KI entwickeln möchten.
- 10 Klassiker neu gedacht, vom Chatbot Eliza bis zu Sudokus und Platformern
- KI-Algorithmen spielerisch lernen: Minimax, Q-Learning, Constraint-Satisfaction-Probleme und prozeduralen Welten
- Smarte Spiele, sauberer Code: Entwurfsmuster, Best Practices, 2D-Python-GUIs mit Pygame
Aus dem Inhalt:
- Einen Chatbot mit GUI entwickeln
- Einführung in Pygame
- Q-Learning am Beispiel von TicTacToe
- Constraint Satisfaction für eigene Sudokus
- Austauschbare KIs für Reversi
- KI-Gegner in Maze Madness und Maze-Man
- Level-Design für Maze- und Platformer-Spiele
- Maus, GamePad und Co. abfragen
- Wichtige Entwurfsmuster und Best Practices
- Zustandsautomaten für komplexe Gegner
- Dynamisch generierte Spielwelten
- Exklusiv für das Buch entwickelte Spiele
Danksagung ... 19
Materialien zum Buch ... 21
1. Einleitung ... 23
1.1 ... Ich freue mich, dass Sie dabei sind ... 24
1.2 ... Was erwartet Sie in diesem Buch? ... 24
1.3 ... Abgrenzung zu modernen KI-Technologien ... 25
1.4 ... Was genau ist in diesem Buch zu finden? ... 27
1.5 ... Ist dieses Buch für Sie geeignet? ... 34
1.6 ... Das Ziel dieses Buches ... 37
1.7 ... Wenn ich weiter gesehen habe ... ... 38
2. Software ... 41
2.1 ... Alternative 1: Installation von Python ... 42
2.2 ... Alternative 2: Installation von Anaconda ... 44
2.3 ... Installation von Pygame ... 45
2.4 ... Installation von Visual Studio Code ... 46
2.5 ... Erste Schritte mit Visual Studio Code ... 48
2.6 ... Extensions installieren und nutzen ... 50
2.7 ... JupyterLab installieren ... 52
3. Hi! I'm Eliza ... 55
3.1 ... Was ist Eliza? ... 56
3.2 ... Was ist ein Turing-Test? ... 57
3.3 ... Woher kommt der Name Eliza? ... 59
3.4 ... Das MVC-Entwurfsmuster ... 60
3.5 ... Ablauflogik von Eliza ... 62
3.6 ... Implementierung von Eliza ... 64
3.7 ... Ausblick ... 94
3.8 ... Literatur und Quellenangaben ... 94
4. Eliza revamped ... 95
4.1 ... Was ist Pygame? ... 96
4.2 ... Pygame installieren ... 97
4.3 ... Architektur einer Pygame-Anwendung ... 98
4.4 ... Pygame trifft Eliza ... 105
4.5 ... Elizas Struktur ... 138
4.6 ... Zusammenfassung ... 140
4.7 ... Ausblick ... 141
4.8 ... Literatur- und Quellenangaben ... 141
5. Nim ... 143
5.1 ... Ordnerstrukturen für größere Projekte ... 144
5.2 ... Backtracking und Rekursion ... 146
5.3 ... Strategie und Mathematik hinter Nim ... 158
5.4 ... Der Minimax-Algorithmus ... 159
5.5 ... Implementierung von Minimax am Beispiel von Nim ... 166
5.6 ... Der komplette Quelltext ... 174
5.7 ... Ausblick ... 177
5.8 ... Literatur und Quellenangaben ... 178
6. Nim unleashed ... 179
6.1 ... Projektstruktur anlegen ... 180
6.2 ... Nim nach PyGame migrieren ... 184



