SlideServe
Menu
Préférences
© SlideServe · v2026

Introduction to Artificial Intelligence in Game Programming

ronny avatar
16 diapositives · 275 Views · Jul 15, 2014

Learn the fundamentals of Artificial Intelligence in game programming, including systems that think and act like humans, rational thinking, and AI algorithms for pathfinding and obstacle evasion.

Introduction to Artificial Intelligence in Game Programming - slide 1
01 / 16Introduction to Artificial Intelligence in Game Programming
1 / 17

Télécharger la présentation

Introduction to Artificial Intelligence in Game Programming
Une image / un lien ci-dessous est fourni (tel quel) pour télécharger la présentation

Politique de téléchargement : le contenu du site vous est fourni TEL QUEL pour votre information et votre usage personnel ; il ne peut être vendu, concédé sous licence ni partagé sur d’autres sites sans l’accord de son auteur.Le contenu vous est fourni TEL QUEL, pour votre information et votre usage personnel uniquement. Téléchargez la présentation en cliquant sur ce lien. Lors du téléchargement, si vous ne parvenez pas à télécharger une présentation, l’éditeur a peut-être supprimé le fichier de son serveur.Pendant le téléchargement, si vous ne parvenez pas à obtenir une présentation, le fichier a peut-être été supprimé par l’éditeur.

F I N

Plus de contenu associé

Transcription de la présentation
  1. 240-492Games Programming with Java Montri Karnjanadecha Andrew Davison 240-492 Games Programming with Java ::: AI :::

  2. Chapter 2Introduction to Artificial Intelligence 240-492 Games Programming with Java ::: AI :::

  3. Outline • Definition of Artificial Intelligence • Uninformed Search Methods • Informed Search Methods • Game AI 240-492 Games Programming with Java ::: AI :::

  4. What is AI? • Systems that think like humans • “The exciting new effort to make computer think ….. machine with minds, in the full an literal sense” • “Activities that we associate with human thinking, activities such as decision-making, problem-solving, learning…” • Systems that think rationally • “The study of mental faculties through the use of computational models” • “The study of the computations that make it possible to perceive, reason, and act” 240-492 Games Programming with Java ::: AI :::

  5. That is AI? (cont’d) • Systems that act like humans • “The art of creating machines that perform functions that require intelligence when performed by people” • “The study of how to make computers do things at which, at the moment, people are better” • Systems that act rationally • “A field of study that seeks to explain and emulate intelligent behavior in terms of computational processes” • “The branch of computer science that is concerned with the automation of intelligent behavior” 240-492 Games Programming with Java ::: AI :::

  6. What is AI? (cont’d) To make the computer think 240-492 Games Programming with Java ::: AI :::

  7. Simple AI Stuff A board with tokens 240-492 Games Programming with Java ::: AI :::

  8. Closing the gap A board with tokens 240-492 Games Programming with Java ::: AI :::

  9. Chase Algorithm if (lx!=dx) // check for non-matching x { if (lx>dx) { lx--; // higher x, so decrease it } else { lx++; // lower x, so increase it } } if (ly!=dy) // check for non-matching y { if (ly>dy) { ly--; // higher y, so decrease it } else { ly++; // lower y, so increase it } } 240-492 Games Programming with Java ::: AI :::

  10. Evade Algorithm if (lx!=dx) // check for non-matching x { if (lx>dx) { lx++; // higher x, so increase it } else { lx--; // lower x, so decrease it } } if (ly!=dy) // check for non-matching y { if (ly>dy) { ly++; // higher y, so increase it } else { ly--; // lower y, so decrease it } } 240-492 Games Programming with Java ::: AI :::

  11. Chasing Struck The simple chase algorithm fails when unmovable blocks are presented 240-492 Games Programming with Java ::: AI :::

  12. Evading the Obstacle 240-492 Games Programming with Java ::: AI :::

  13. More Advanced Pathfinding • A* pathfinding algorithm 1. Create a 2-D integer array as large as the map size 2. Fill all cells with -1 (-1 means not tested yet) 3. For any “blocked” cell, put a large number (e.g. 255) 4. Place a 0 in the target cell 240-492 Games Programming with Java ::: AI :::

  14. A* pathfinding algorithm • Path finding 5. Start at the target cell (the known distance cell) 6. Determine valid adjacent cells 7. Give the adjacent cells a known distance value 8. Repeat step 5 Stop Citeria 1. No adjacent cells 2. The cell of origin gets filled in 240-492 Games Programming with Java ::: AI :::

  15. When It’s All Done • Path finding 5. Start at the target cell (the known distance cell) 6. Determine valid adjacent cells 7. Give the adjacent cells a known distance value 8. Repeat step 5 Stop Criteria 1. No adjacent cells 2. The cell of origin gets filled in 240-492 Games Programming with Java ::: AI :::

  16. Backtracking • In order for the red piece to capture the green piece, the red piece must move to lower-values cells-- from 7->6, 6-> 5, 5->4, 4->3, 3->2, 2->1 and 1->0 240-492 Games Programming with Java ::: AI :::