recap cse 348 ai game programming

15
RECAP CSE 348 AI Game Programming Héctor Muñoz-Avila

Upload: haile

Post on 23-Feb-2016

28 views

Category:

Documents


0 download

DESCRIPTION

RECAP CSE 348 AI Game Programming. Héctor Muñoz-Avila. C. A. B. C. A. B. C. B. A. B. A. C. AI research. “AI” as game practitioners implemented it. B. A. C. B. A. B. C. C. B. A. B. A. C. A. C. A. A. - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: RECAP CSE 348 AI Game Programming

RECAPCSE 348 AI Game Programming

Héctor Muñoz-Avila

Page 2: RECAP CSE 348 AI Game Programming

Course Goal

Our goal was to understand the connections and the misconceptions from both sides

AI research

AC

B A B C A CB

CBA

BA

C

BAC

B CA

CAB

ACB

BCA

A BC

AB

CABC

“AI”as game practitioners implemented it

projects

(me)

(you)

Page 3: RECAP CSE 348 AI Game Programming

Controlling the AI Opponent: FSMs• FSM: States, Events and Actions

• Stack Based FSM’s• Polymorphic FSM

• Multi-tier FSM

SpawnD

Wander~E,~S,~D

~E

D

AttackE,~D

~E

E

E

D

~S

ChaseS,~E,~D

E

S

S

D

Soldier

Rifleman Officer

British Soviet

AmericanGerman

Machine Gunner

British Soviet

AmericanGerman

British Soviet

AmericanGerman

Robocode

Plan

ning

Ope

rato

rs

• Patrol Preconditions:

No Monster Effects:

patrolled• Fight

Preconditions: Monster in sight

Effects: No Monster

Patrol Fight

Monster In Sight

No Monster

FSM:

A resulting plan:

Patrolpatrolled

Fight

No MonsterMonster in sight

(Finite State Machines in Games

Page 4: RECAP CSE 348 AI Game Programming

Controlling the AI Opponent: Hierarchical Planning

UT task: Domination

Strategy: secure most locations

UT action: move Bot1 to location B

Hierarchical planning

StartTurn Right

Go-throughDoor

Pick-upPowerup

Wander Attack

Chase

Spawn

~E

E ~S

S

D

~E

Hierarchical FSM

Page 5: RECAP CSE 348 AI Game Programming

Controlling NPCsIndividual

• Animation Controller approach

• Layers categorized by regions of body that they affect

• Reputations: Create global reputations based on average of other’s opinions

• Autonomous behavior by establishing ownership of the objects

(Elizabeth Carter)

Squad Tactics

decentralized centralized

Commander

Captain

Sergeant

Soldier

Orders Information

(danny powell, andrew pro, Kofi White)

Special Forces

Page 6: RECAP CSE 348 AI Game Programming

Depth(Breadth First)

Nodes Time Memory

2 1100 1 sec 1MiB4 111,100 11 sec 106 MiB6 107 19

minutes10 GiB

8 109 31 hours 1 TiB10 1011 129 days 101 TiB12 1013 35 years 10 PiB 14 1015 3,523

years1 EiB

Path-FindingNavigationNavigation set hierarchy

• Interface tables• Reduction memory• Increase performance

A*

Page 7: RECAP CSE 348 AI Game Programming

Controlling AI Opponent: LearningInduction of Decision Trees

DOM

Reinforcement Learning

7

Training script 1

Training script 2

….

Training script n

Counter Strategy 1

Counter Strategy 2

….Counter Strategy n

Evolutionary Algorithm

Evolve Domain Knowledge

Knowledge Base Revision

Manually Extract Tactics from Evolved Counter Strategies

Combat

team controlled by human player team controlled by computer

A

B

If owning locations 1 and 2, and 3 then defend locations 1, 2, and 3

induction

Decision Tree

Page 8: RECAP CSE 348 AI Game Programming

Game GenresFirst-Person Shooters

• A lot of path finding issues

• Assigning values to locations

• and to paths

(Constantin Savtchenko , Zubair R. Chaudary, Kenneth H. Rentschler)

Racing games (Emily Cohen)

Racing vehicle control• Multi-layer system• Each layer defines behavior

Optimal racing line

(Jim Pratt, Qihan Long, Austin Borden)

Page 9: RECAP CSE 348 AI Game Programming

Game GenresRTS

• RTS Game ComponentsCivilizationBuildUnitResourceResearchCombat

Wargus Role Playing Games

• Level of Detail

• Reputation system

(Anthony Scimeca, Mike Rowan)(Xu Lu)

Page 10: RECAP CSE 348 AI Game Programming

Game GenresSport Games

• Dead Reckoning Military originsUse in Sport Games

• Possible transitions for modeling behaviors

(Dylan Evans, Matt Kenig

Robocode

Turn and Go

Go Tag Up

Freeze Slide

Turn and Look Go

BackGo

Halfway

Page 11: RECAP CSE 348 AI Game Programming

Other Crucial TopicsPlayer Modeling

•Hierarchical model of what a player can do

•Heuristic values for preference of states determine player strategy

• Taxonomy of storylines

(Mike Pollock, Kipp W. Hickman, Chirs Boston)

Story line, drama

•Propp’s approach: lineal story•Barthes: allow ramifications

•Dialog managers using finite state machinesplanning

• Fractions versus behavior

(Mike Chu, Joey Blekicki, Stephen Kish )

Page 12: RECAP CSE 348 AI Game Programming

Other Game AI TopicsGame Trees

(Mike Pollock, Kipp W. Hickman, Chirs Boston)

Used to determine game difficulty

With appropriate evaluation functions avoid needing to construct the whole tree

EF(state) = w1f1(state) + w2f2(state) + … + wnfn(state)

Programming Projects• Finite State Machines

• RTS

• Team-based simulation

• Simulate some of the real game developing conditions:

Working with someone else’s code

tight deadlines need lots of trial and error to

tune the AI

Page 13: RECAP CSE 348 AI Game Programming

2010 Hall of FameProject # 1. Robocode.

Tournament winner: Chris Boston, Kipp Hickmann, Michael Pollock "The Enraged Armored Mob" (TEAM).

Innovation winner: Elizabeth Carter (Reinforcement Learning)Project # 2. DOM.

Tournament winner: Chris Boston, Kipp Hickmann, Michael Pollock "Tactical Efficient Anti-social Macabre" (TEAM)Innovation winner: TEAM Project # 3. Special Forces Tournament winner: Chris Boston, Kipp Hickmann, Michael Pollock Target Extermination Aiming Maneuvering (TEAM).Innovation winner: Mike Rowan, Anthony Scimeca. The Cover Up. Project # 4: Wargus Tournament winners:

• Constantin Savtchenko , Zubair R. Chaudary, Kenneth H. Rentschler. Segfault• Jim Pratt, Qihan Long, Austin Borden

Almost all beat default connected map Most beat default connected map variant Only the two above beat disconnected map

Page 14: RECAP CSE 348 AI Game Programming

Acknowledgements

• All of you:– Presentations were geneally very good– Projects were worked well (despite difficulties)– All master groups made their projects work– Changes for future iterations of this course:

• Adjust Wargus, Balance Special Forces

Page 15: RECAP CSE 348 AI Game Programming

Final Summary

AI research

AC

B A B C A CB

CBA

BA

C

BAC

B CA

CAB

ACB

BCA

A BC

AB

CABC

“AI”as game practitioners implemented it

• A*• AI Planning

HTN Planning• Heuristic evaluation • Machine learning

Decision TreesReinforcement learning

Dynamic scripting• Game trees

Programming• Finite State Machines• RTS• Team-based simulation• Last project: AI that

works in any map

Genres• First-person shooter• Real-time strategy• Racing games• Team sports• Role-playing games

Path finding• Look-up tables• Waypoints

Other crucial topics• Player modeling• Story line, drama• NPC behavior

• Individual• Team