Presentation is loading. Please wait.

Presentation is loading. Please wait.

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

Similar presentations


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

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

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

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

4 GATE-561 4 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

5 GATE-561 5 Entities Any kind of objects within an environment

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

7 GATE-561 7 Attributes Any kind of parameters describing properties of an entity

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

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

10 GATE-561 10 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

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

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

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

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

15 GATE-561 15 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

16 GATE-561 16 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

17 GATE-561 17 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

18 GATE-561 18 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 –....

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

20 GATE-561 20 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

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

22 GATE-561 22 States Standing Sitting Walking Running Jumping Talking Defending Attacking

23 GATE-561 23 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

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

25 GATE-561 25 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.

26 GATE-561 26 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

27 GATE-561 27 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

28 GATE-561 28 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

29 GATE-561 29 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

30 GATE-561 30 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.

31 GATE-561 31 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.

32 GATE-561 32 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.

33 GATE-561 33 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

34 GATE-561 34 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

35 GATE-561 35 A Sample Initial state Standing Sitting Walking Running Working

36 GATE-561 36 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.

37 GATE-561 37 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

38 GATE-561 38 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.

39 GATE-561 39 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

40 GATE-561 40 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


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

Similar presentations


Ads by Google