GATE-561 1 Common AI Architectures (GATE-561) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies Bilkent University, Computer.

Slides:



Advertisements
Similar presentations
Heuristic Search techniques
Advertisements

ARCHITECTURES FOR ARTIFICIAL INTELLIGENCE SYSTEMS
Lecture 8: Three-Level Architectures CS 344R: Robotics Benjamin Kuipers.
GATE Reactive Behavior Modeling Neural Networks (GATE-561) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies Bilkent.
Michael Zyda Finite State Machines Michael Zyda
Intelligent systems Lecture 6 Rules, Semantic nets.
GATE Artificial Intelligence in Games (GATE-561) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies Bilkent University,
NPC Interaction in Video Games Robert Higginbotham.
Finite State Machine for Games Fall 2012 Ref: Chenney, CS679 lectures AI Game Programming Wisdom 2.
Artificial Intelligence in Game Design Intelligent Decision Making and Decision Trees.
Artificial Intelligence in Game Design Introduction to Learning.
Artificial Intelligence in Game Design Hierarchical Finite State Machines.
GATE Reactive Behavior Modeling Fuzzy Logic (GATE-561) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies Bilkent University,
CS-378: Game Technology Lecture #16: AI Prof. Okan Arikan University of Texas, Austin Thanks to James O’Brien, Steve Chenney, Zoran Popovic, Jessica Hodgins.
1 Complexity of Network Synchronization Raeda Naamnieh.
GATE D Object Representations (GATE-540) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies & General Manager SimBT.
RED DEAD REVOLVER Artificial Intelligence Critique By Mitchell C. Dodes CIS 588.
10/30/2001CS 638, Fall 2001 Today AI –Overview –State Machines.
AI – Week 8 AI + 2 Player Games Lee McCluskey, room 3/10
Artificial Intelligence in Game Design Probabilistic Finite State Machines.
Autonomous Mobile Robots CPE 470/670 Lecture 8 Instructor: Monica Nicolescu.
CS Techniques Supporting Project Management (Part 4) Bilgisayar Mühendisliği Bölümü – Bilkent Üniversitesi – Fall 2009 Dr.Çağatay ÜNDEĞER Instructor.
Introduction to Artificial Intelligence (AI) (GATE-561)
Reactive Behavior Modeling Decision Trees (GATE-561)
THE OBJECT-ORIENTED DESIGN WORKFLOW Statechart Diagrams.
THE TRANSITION FROM ARITHMETIC TO ALGEBRA: WHAT WE KNOW AND WHAT WE DO NOT KNOW (Some ways of asking questions about this transition)‏
Raven Robin Burke GAM 376. Soccer standings Burke, 7 Ingebristen, 6 Buer, 6 Bukk, 6 Krishnaswamy, 4 Lobes, 3 Borys, 2 Rojas, 2 Bieneman, 2.
Artificial Intelligence in Game Design Problems and Goals.
Video Game AI. Classical Games – Focus on optimal players using computationally expensive search techniques Video Game AI – Refers to games such as First.
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 Game Design Behavior Trees.
Artificial Intelligence in Game Design
Object-Oriented Modeling Using UML CS 3331 Section 2.3 of Jia 2003.
School Bus Safety Policy for Podar Jumbo Kids BUS STUDENT TRAINING.
Project Management Components (Part 5)
Motion Planning in Games Mark Overmars Utrecht University.
Artificial Intelligence in Game Design N-Grams and Decision Tree Learning.
Sample Video Game & Sound. The Plan 1.Game Theme 2.Game Structure 3.Sprites 4.Trackers 5.Collisions 6.Score 7.Levels 8.Splash Screens 9.Design 10.Implementation.
University of Windsor School of Computer Science Topics in Artificial Intelligence Fall 2008 Sept 11, 2008.
Artificial Intelligence in Game Design Complex Steering Behaviors and Combining Behaviors.
Artificial Intelligence for Games Finite State Machines
Artificial Intelligence and Searching CPSC 315 – Programming Studio Spring 2013 Project 2, Lecture 1 Adapted from slides of Yoonsuck Choe.
Computer Simulation of Networks ECE/CSC 777: Telecommunications Network Design Fall, 2013, Rudra Dutta.
Sega 500 Scripted events and Sequences Jeff “Ezeikeil” Giles
Finite State Machines (FSM) OR Finite State Automation (FSA) - are models of the behaviors of a system or a complex object, with a limited number of defined.
Practical Object-Oriented Design with UML 2e Slide 1/1 ©The McGraw-Hill Companies, 2004 PRACTICAL OBJECT-ORIENTED DESIGN WITH UML 2e Chapter 10: Statecharts.
Artificial Intelligence in Game Design Lecture 8: Complex Steering Behaviors and Combining Behaviors.
Observation vs. Inference. What is an observation? When you observe, you become aware of something using one of your senses. Your five senses are smell,
Artificial Intelligence: Research and Collaborative Possibilities a presentation by: Dr. Ernest L. McDuffie, Assistant Professor Department of Computer.
ECE DIGITAL LOGIC LECTURE 21: FINITE STATE MACHINE Assistant Prof. Fareena Saqib Florida Institute of Technology Fall 2015, 11/24/2015.
Artificial Intelligence in Game Design Lecture 20: Hill Climbing and N-Grams.
Finite State Machines GAM 376 Robin Burke Fall 2006.
Finite State Machines Logical and Artificial Intelligence in Games Lecture 3a.
10/23/03CS679 - Fall Copyright Univ. of Wisconsin Last Time Terrain Generation We’re pretty much done with the graphics part of the course.
MNCPA Career Workshops presents …. Interviewing to Impress 1.Importance of First Impressions 2.The Interview  Definition  Goal 3.Preparation  Documented.
Lecture 6: Basic Entities TEALS MINECRAFT PROJECT.
The Game Development Process: Artificial Intelligence.
Decision Making: Decision Tree & State Machines Session 07
Advantages of FSM Their simplicity make it easy for inexperienced developers to implement with little to no extra knowledge (low entry level)
Enemy and Friendly AIs Richard Gesick.
STATE SPACE REPRESENTATION
CO Games Development 2 Week 19 Extensions to Finite State Machines
Computer Simulation of Networks
Artificial Intelligence and Searching
Learn… Create… Program
CIS 488/588 Bruce R. Maxim UM-Dearborn
Learn… Create… Program
Learn… Create… Program
Learn… Create… Program
Presentation transcript:

GATE Common AI Architectures (GATE-561) Dr.Çağatay ÜNDEĞER Instructor Middle East Technical University, GameTechnologies Bilkent University, Computer Engineering & General Manager SimBT Inc. Game Technologies Program – Middle East Technical University – Fall 2009

GATE Outline Introduction to AI Architectures Entities, Attributes and Relations Tasks, Actions, States and Events Finite-State Machines Hierarchical Finite-State-Machines

GATE AI Architecture A complete system architecture (AI engine) –That defines mechanizm of a percept- reasoning-action cycle For modeling autonomous entity behaviors

GATE An Example AI Architecture PerceptsActions Environment Seeing Hearing Smelling Tasting Touching Moving Talking Firing... Inference Interpretation Conflict resolution Planning... Situation Awareness Reactive Behaviours Delibrative Behaviours Action Selection Reasoning Short & Long Term Memory Learning Rule Matching... Known facts & Rules

GATE Entities Any kind of objects within an environment

GATE Entities Trees Bushes Rocks Cars Tanks Bridges Human beings Animals Houses

GATE Attributes Any kind of parameters describing properties of an entity

GATE Attributes Tank –Type –Coordinate –Orientation –Velocity –Damage –Gun 1 Loaded Number of munitions left –Gun 2 Loaded Number of munitions left

GATE Relations Any link between two entities, groups of entities or types of entities defining a fact

GATE Relations Ahmet is father of veli Suzan is mother of veli Mustafa, Kenan and Oya are friends Iraq forces is an opponent of US forces TSK and SSM are stakeholders X may have a relation with Y Strike is an eagle Eagle is a bird Bird is an animal

GATE Tasks Any piece of work, –Which has been undertaken or attempted –By someone –To reach a desired goal

GATE Tasks Playing backgammon Doing a project Going to school Performing surveillance Managing an accident Defending a town Attacking a town

GATE Sub-Tasks Smaller pieces of work to be done in order to perform and complete a task

GATE Playing Backgammon Determining the first player Doing your move Waiting opponent’s move Becoming happy Becoming sad

GATE Doing a Project Generating a list of candidate topics Selecting one of the topics Determining requirements Performing research on requirements Preparing a design Implementing Testing Documenting development Writing users-manuals

GATE Going to School Remembering the location of school Planing an initial path to school Going to school through the path –Replanning a path to school if required Entering the school Planing an initial path to the classroom Going to the classroom through the path –Replanning a path to classroom if required Entering the classroom

GATE Performing Surveillance Determining the surveillance start location Determining the surveillance path Going to surveillance start location –Replanning a path to location –Replanning a path to location if required Moving through surveillance path –Replanning a surveillance path if required Looking around to detect any suspicious activity Examining suspicious activity (detection) Reporting details of detection

GATE Managing an Accident Waiting a call Answering a call Getting accident information on call Finding nearest hospital Calling nearest hospital for an ambulance Getting an ambulance aircraft if required –Calling Turkish General Staff –Requesting an ambulance aircraft approval –Waiting for approval –Getting approval / reject –Organizing an ambulance aircraft –....

GATE Actions A primitive (may be un-interruptable) work to be done in order to perform a task

GATE Actions Do a chess move Do a forward step Change direction Hang up a phone Send a fax Say a statement to someone Talk to someone Engage a target Fire a target Throw a bomb Give an order

GATE States A position in time. A specific situation/case/condition –Among a set of all possible situations a system may be in.

GATE States Standing Sitting Walking Running Jumping Talking Defending Attacking

GATE Events Something that happens in time. An action, occurrence or a condition that causes a state transition Thus in addition to actions, –An external or internal event may cause a transition

GATE Events Getting dress Going to school Going to classroom Sleeping States Clock rang Events Dressing completed School reached and Door open

GATE Attributes vs States Attributes of an entity can be considered as a part of its state information as below. Tank –Coordinate –Orientation –Velocity –Damage –Gun 1 Loaded Number of munitions left –Gun 2 Loaded Number of munitions left But usually they are not used that way.

GATE Tasks vs States Meanwhile performing a task; –A system may be in one state (may have sub-states) and –May transite from one state to another. In a time instant, a system may: –Be in one state or –Be in more than one sub-states in a set of parallel tasks: –Moving somewhere –Talking at the same time –Looking around at the same time

GATE Tasks vs States 1.Remembering the location of school 2.Planing an initial path to school 3.Going to school through the path 4.Entering the school 5.Planing an initial path to the classroom 6.Going to the classroom through the path 7.Entering the classroom Staying Walking Running Opening Door Sitting Task: Going to schoolStates Sub-Tasks

GATE Actions vs States An action may move a system from one state to another state From “Waiting a call” to “Talking on phone” –By a “Hang up phone” action From “Moving randomly” to “Attacking someone” –By an “Engage an enemy” action

GATE Actions vs States Staying Walking Running Opening Door Sitting States Stand up Actions Go to location slowly Go to location fast Open door Stop Sit down Actions

GATE Actions vs States It is also possible and common to model actions as states. In that condition; –A state will either: Perform some action or Be idle. –Only events will cause transitions.

GATE Finite-State Machines (FSMs) Defined by a set of states and transitions between them. Transition from a state to another state is triggered by a change (event or action) in the environment.

GATE Finite-State Machines (FSMs) FSMs are used broadly in the video game industry. –Quake and Quake 2: a simple FSM system. –Warcraft III: a complex FSM system FSMs also have a large role outside of the video game industry. –For example, cars, airplanes, and robotics have complex FSMs.

GATE Finite-State Machines (FSMs) Also called “State Transition Networks/Diagrams” Wander Attack Enemy Search Enemy Spawn see enemy initial state not see enemy hear sound not hear sound see enemy dead reborn dead

GATE Finite-State Machines (FSMs) An FSM has an entry (initial) state for starting the execution. After execution starts, events and/or actions cause state transitions. Each state may execute a code while; –Entering a state –Maintaining a state in every step and/or –Leaving a state

GATE A Sample Initial state Standing Sitting Walking Running Working

GATE Hierarchical Finite-State Machines When the number of states increases, –It becomes very complicated to define the FSMs and –High probable to have some bugs ! A solution is to ddefine some higher level states, and Refine the details of states hierarchically.

GATE A Sample Start Load weapon Point at enemy Fire weapon loaded weapon unloaded weapon unloaded weapon loaded enemy engaged weapon loaded Sub-finite state machine Wander Attack Enemy Search Enemy Spawn see enemy not see enemy hear sound not hear sound see enemy dead reborn dead

GATE Advantages Very fast to execute. Expressive enough for simple behaviors. Can create tools for non-programmers to build behaviors. Probabilistic transitions can be introduced to make unpredictable transitions/behaviors.

GATE Disadvantages Number of states and arcs can grow very fast. Easy to do errors in complex FSMs. Difficult to; –Put propositional representations such as: Pick up the best weapon Attack the closest enemy –Count such as: Wait until the third time I see the enemy, then attack –Perform actions in parallel

GATE Disadvantages But they are still prefered in many games, and They can be improved with some special additions such as: –Parallel finite-state machines –Higher level scripts to perform complex transitions