

Beschreibung
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 Intelli...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
Vorwort
10 Klassiker von TicTacToe bis PacMan: KI als cleverer Gaming-Partner
Autorentext
Jens Gaulke ist Diplominformatiker, Experte für Informationssicherheit und Python mit einer Leidenschaft für Technologie und Bildung. Seine langjährige Lehrerfahrung am bib International College in Paderborn umfasst die Bereiche Programmierung, Game Development, Skriptsprachen, Netzwerke u. v. m. Derzeit als Information Security Officer tätig, ist er unter Anderem mit Cloud Computing, Künstlicher Intelligenz und der Weiterbildung von Mitarbeitern befasst.
Klappentext
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.
Aus dem Inhalt:
Zusammenfassung
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 PlatformernKI-Algorithmen spielerisch lernen: Minimax, Q-Learning, Constraint-Satisfaction-Probleme und prozeduralen WeltenSmarte Spiele, sauberer Code: Entwurfsmuster, Best Practices, 2D-Python-GUIs mit PygameAus dem Inhalt:Einen Chatbot mit GUI entwickelnEinführung in PygameQ-Learning am Beispiel von TicTacToeConstraint Satisfaction für eigene SudokusAustauschbare KIs für ReversiKI-Gegner in Maze Madness und Maze-ManLevel-Design für Maze- und Platformer-SpieleMaus, GamePad und Co. abfragenWichtige Entwurfsmuster und Best PracticesZustandsautomaten für komplexe GegnerDynamisch generierte SpielweltenExklusiv für das Buch entwickelte Spiele
Inhalt
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
6.3 ... Ich krieg Zustände ... ... 211
6.4 ... Eine Optimierung für die GUI-Komponenten ... 214
6.5 ... Ausblick ... 216
6.6 ... Literatur und Quellenangaben ... 216
7. Tic-Tac-Toe ... 217
7.1 ... Projektstruktur anlegen ... 218
7.2 ... Das Board und die Regeln ... 218
7.3 ... Die drei KIs ... 221
7.4 ... Die GUI erstellen ... 235
7.5 ... Die Control-Klasse ... 247
7.6 ... Ausblick ... 254
8. Tic-Tac-Q ... 255
8.1 ... …
