Presentation on theme: "Game AI Matthew Hsieh Meng Tran. Computer Games Many different genres Action Role Playing Adventure Strategy Simulation Sports Racing Each."— Presentation transcript:
Computer Games Many different genres Action Role Playing Adventure Strategy Simulation Sports Racing Each Genre has overlapping AI Roles We will talk mainly about Action games, First Person Shooters
First Person Shooters (Action) Games such as Half-Life 2, Quake, Doom 3, Unreal, Call of Duty, etc. Selling point of these games (besides graphics) is superior A.I. FPS needs to have enemies that are intelligent, have human-like behavior, and many other characteristics.
AI Characteristics for Tactical Enemies Interact with environment Fast response Realistic sensing Adapt to environment Adapt to human player Difficulty Strategy Interact with other AI’s Navigation Humanlike responses Reaction times Realistic movements Emotions Personalities Understand game flow Low computational overhead Low development overhead
So what can we use to successfully implement tactical enemy AI? We’ll find out shortly…
Soar Engine An engine that was developed for constructing generally intelligent systems Stood for State, Operator And Result (but no one says that anymore) How does it work? Soar takes in a state, goal state, an operator and other information. Using the information, Soar will decide the best operator to perform next to transform the current state to the next state. This is repeated over and over until the current state transforms into the goal state.
Current Applications of Soar Development of models for quantitatively predicting human performance at CMU. Robotic control architecture and DARPA Image Understanding Environment to process visual data at Pace University. Use Soar models to test theories of learning and improving human-computer interaction at Pennsylvania State University. Finally, what we want…Quakebot
Soar Quakebot Created by J. E. Laird and van Lent The Soar engine is programmable Rules – (If-then) parameters that fulfill an operator (Enemy within range, Have weapon) Operators - Rule-based decisions (Attack, Move) States – instance when an operator is applied The Soar Quakebot 100 operators 20 substates 715 rules Operators are chosen through a tree hierarchy
Tree Hierarchy Example Our decision tree shows some top level operators and the collect- powerups substate
Some Quakebot Parameters/Rules Decision Time – How fast the bot makes a decision used for realistic reactions 5 levels Aggressiveness – The probability the bot will attack and the range it attacks from 3 levels Complexity of Tactics – Strafing, Hopping 3 levels Level of Expertise (Aiming Skill) – The accuracy of each shot given the position of the player 3 levels
Soar Decision Cycle Sensing breaks down the data into rules or information Elaboration, Proposal, and Evaluation Run in parallel Elaboration creates the trees, Proposal chooses which operations are valid according to the rules and information given, Evaluation ranks these states (heuristics) The Operator Selection chooses the best operator for the current state.