The Game Development Process: Artificial Intelligence.

Slides:



Advertisements
Similar presentations
Adversarial Search Chapter 6 Sections 1 – 4. Outline Optimal decisions α-β pruning Imperfect, real-time decisions.
Advertisements

Chapter 09 AI techniques in different game genres (Puzzle/Card/Shooting)
Heuristic Search techniques
Presentation on Artificial Intelligence
7.1. O SCARS & A RTIFICIAL I NTELLIGENCE Interim awards and introduction to game AI.
Adversarial Search Chapter 6 Section 1 – 4. Types of Games.
8.3. A GENT AND D ECISION M AKING AI Agent driven AI and associated decision making techniques.
Intelligent Agents Russell and Norvig: 2
Artificial Intelligence for Games Patrick Olivier & John Shearer
Problem Solving and Search Andrea Danyluk September 9, 2013.
While: Indefinite Loops Sec 8-14 Web Design. Objectives The student will: Understand what an Indefinite Loop is Understand how create an indefinite loop.
CS 4700: Foundations of Artificial Intelligence Bart Selman Reinforcement Learning R&N – Chapter 21 Note: in the next two parts of RL, some of the figure/section.
Artificial Intelligence CGDD Artificial Intelligence Human-level intelligence - an unsolved problem AI “describes the intelligence embodied in any.
Adversarial Search Chapter 5.
An Introduction to Artificial Intelligence Lecture VI: Adversarial Search (Games) Ramin Halavati In which we examine problems.
1 Adversarial Search Chapter 6 Section 1 – 4 The Master vs Machine: A Video.
Lecture 13 Last time: Games, minimax, alpha-beta Today: Finish off games, summary.
Artificial Intelligence in Game Design Introduction to Learning.
CS 4730 Game AI CS 4730 – Computer Game Design Some slides courtesy Tiffany Barnes, NCSU.
Games with Chance Other Search Algorithms CPSC 315 – Programming Studio Spring 2008 Project 2, Lecture 3 Adapted from slides of Yoonsuck Choe.
November 10, 2009Introduction to Cognitive Science Lecture 17: Game-Playing Algorithms 1 Decision Trees Many classes of problems can be formalized as search.
UNIVERSITY OF SOUTH CAROLINA Department of Computer Science and Engineering CSCE 580 Artificial Intelligence Ch.6: Adversarial Search Fall 2008 Marco Valtorta.
Shallow Blue Project 2 Due date: April 5 th. Introduction Second in series of three projects This project focuses on getting AI opponent Subsequent project.
What is AI  An attempt to imitate human reactions by scripting reactions to happen when a certain cause is brought about.
Artificial Intelligence in Game Design Problems and Goals.
Artificial Intelligence (AI) Can Machines Think?.
Video Game AI. Classical Games – Focus on optimal players using computationally expensive search techniques Video Game AI – Refers to games such as First.
Introduction GAM 376 Robin Burke Winter Outline Introductions Syllabus.
Survey of AI for games. AI vs. AI for games Traditional AI: – Made to handle unseen inputs, large state space – Too many options possible to compute an.
Artificial Intelligence in Gaming Riley Turben. Game AI  Differ from a “traditional” AI  Scope of knowledge  Varying complexity  A substitute for.
1 CO Games Development 1 Week 6 Introduction To Pathfinding + Crash and Turn + Breadth-first Search Gareth Bellaby.
Introduction to AI Engine & Common Used AI Techniques Created by: Abdelrahman Al-Ogail Under Supervision of: Dr. Ibrahim Fathy.
Artificial Intelligence Techniques Artificial Stupidity?
Adversarial Search Chapter 6 Section 1 – 4. Outline Optimal decisions α-β pruning Imperfect, real-time decisions.
Introduction to Artificial Intelligence CS 438 Spring 2008 Today –AIMA, Ch. 6 –Adversarial Search Thursday –AIMA, Ch. 6 –More Adversarial Search The “Luke.
AI and Computer Games (informational session) Lecture by: Dustin Dannenhauer Professor Héctor Muñoz-Avila Computer Science and Eng.
IMGD 1001: Programming Practices; Artificial Intelligence.
Machine Learning for an Artificial Intelligence Playing Tic-Tac-Toe Computer Systems Lab 2005 By Rachel Miller.
Artificial intelligence
Artificial Intelligence for Games Finite State Machines
DEEP RED An Intelligent Approach to Chinese Checkers.
Artificial Intelligence and Searching CPSC 315 – Programming Studio Spring 2013 Project 2, Lecture 1 Adapted from slides of Yoonsuck Choe.
Intelligent Database Systems Lab 國立雲林科技大學 National Yunlin University of Science and Technology 1 Evolving Reactive NPCs for the Real-Time Simulation Game.
Artificial Intelligence in Games
Learning to Play the Game of GO Lei Li Computer Science Department May 3, 2007.
1 CO Games Development 1 Week 3 Game Agents 2 Gareth Bellaby.
Explorations in Artificial Intelligence Prof. Carla P. Gomes Module 5 Adversarial Search (Thanks Meinolf Sellman!)
Designing Intelligence Logical and Artificial Intelligence in Games Lecture 2.
Finite State Machines Logical and Artificial Intelligence in Games Lecture 3a.
Adversarial Search Chapter 5 Sections 1 – 4. AI & Expert Systems© Dr. Khalid Kaabneh, AAU Outline Optimal decisions α-β pruning Imperfect, real-time decisions.
ADVERSARIAL SEARCH Chapter 6 Section 1 – 4. OUTLINE Optimal decisions α-β pruning Imperfect, real-time decisions.
Understanding AI of 2 Player Games. Motivation Not much experience in AI (first AI project) and no specific interests/passion that I wanted to explore.
Decision Trees Jennifer Tsay CS 157B February 4, 2010.
Game Playing Why do AI researchers study game playing?
Movement in a full and dynamic environment using a limited influence map Paulo Lafeta Ferreira Artificial Intelligence for Games – CS 580 Professor: Steve.
Enemy and Friendly AIs Richard Gesick.
Adversarial Search Chapter 5.
Games with Chance Other Search Algorithms
Adversarial Search.
Artificial Intelligence and Searching
Finite State Machines in Games
CIS 488/588 Bruce R. Maxim UM-Dearborn
Interaction with artificial intelligence in games
IMGD 1001: Programming Practices; Artificial Intelligence
Search.
Search.
Artificial Intelligence and Searching
Artificial Intelligence and Searching
Adversarial Search Chapter 6 Section 1 – 4.
Presentation transcript:

The Game Development Process: Artificial Intelligence

2 Introduction to AI  Opponents that are challenging, or allies that are helpful Unit that is credited with acting on own  Human-level intelligence too hard But under narrow circumstances can do pretty well Ex: chess and Deep Blue  Artificial Intelligence Around in CS for some time Based on Chapter 5.3, Introduction to Game Development

3 AI for CS different than AI for Games  Must be smart, but purposely flawed Lose in a fun, challenging way  No unintended weaknesses No "golden path" to defeat Must not look dumb  Must perform in real time (CPU)  Configurable by designers Not hard coded by programmer  "Amount" and type of AI for game can vary RTS needs global strategy, FPS needs modeling of individual units at "footstep" level RTS most demanding: 3 full-time AI programmers Puzzle, street fighting: 1 part-time AI programmer Based on Chapter 5.3, Introduction to Game Development

4 AI for Games: Mini Outline  Introduction(done)  Agents(next)  Finite State Machines

5 Game Agents (1 of 3)  Most AI focuses around game agent Think of agent as NPC, enemy, ally or neutral  Loops through: sense-think-act cycle Acting is event specific, so talk about sense+think Based on Chapter 5.3, Introduction to Game Development

6 Game Agents (2 of 3)  Sensing Gather current world state: barriers, opponents, objects Need limitations: avoid "cheat" of looking at game data Typically, same constraints as player (vision, hearing range)  Often done simply by distance direction (not computed as per actual vision) Model communication (data to other agents) and reaction times (can build in delay)

7 Game Agents (3 of 3)  Thinking Evaluate information and make a decision As simple or elaborate as required Two ways:  Pre-coded expert knowledge, typically hand- crafted if-then rules + randomness to make unpredictable  Search algorithm for best (optimal) solution Based on Chapter 5.3, Introduction to Game Development

8 Game Agents: Thinking (1 of 3)  Expert Knowledge Finite state machines, decision trees, … (FSM most popular, details next) Appealing since simple, natural, embodies common sense  Ex: if you see enemy weaker than you, attack. If you see enemy stronger, then flee! Often quite adequate for many AI tasks Trouble is, often does not scale  Complex situations have many factors  Add more rules  Becomes brittle Based on Chapter 5.3, Introduction to Game Development

9 Game Agents: Thinking (2 of 3)  Search Look ahead and see what move to do next Ex: piece on game board, pathfinding  Machine learning Evaluate past actions, use for future Techniques show promise, but typically too slow Need to learn and remember Based on Chapter 5.3, Introduction to Game Development

10 Game Agents: Thinking (3 of 3)  Making agents stupid Many cases, easy to make agents dominate  Ex: bot always gets head-shot Dumb down by giving "human" conditions, longer reaction times, make unnecessarily vulnerable  Agent cheating Ideally, don't have unfair advantage (such as more attributes or more knowledge) But sometimes might, to make a challenge  Remember, that's the goal, AI lose in challenging way Best to let player know how agent is doing Based on Chapter 5.3, Introduction to Game Development

11 AI for Games: Mini Outline  Introduction(done)  Agents(done)  Finite State Machines(next)

12 Group Exercise  Consider game where hero is in a pyramid full of mummies. Mummy wanders around maze When hero gets close, can “sense” and moves quicker When mummy sees hero and rushes to attack If mummy wounded, it flees  What “states” can you see? What are the transitions? Can you suggest appropriate code?

13 Finite State Machines (1 of 2)  Abstract model of computation  Formally: Set of states A starting state An input vocabulary A transition function that maps inputs and the current state to a next state Based on Chapter 5.3, Introduction to Game Development

14 Finite State Machines (2 of 2)  Most common game AI software pattern Natural correspondence between states and behaviors Easy to understand Easy to diagram Easy to program Easy to debug Completely general to any problem  Problems Explosion of states Often created with ad-hoc structure Based on Chapter 5.3, Introduction to Game Development