Presentation is loading. Please wait.

Presentation is loading. Please wait.

Machine Learning in Computer Games Learning in Computer Games By: Marc Ponsen.

Similar presentations

Presentation on theme: "Machine Learning in Computer Games Learning in Computer Games By: Marc Ponsen."— Presentation transcript:

1 Machine Learning in Computer Games Learning in Computer Games By: Marc Ponsen

2 2 Game AI: The Last Frontier “Progress in graphics and sound has slowed in recent years… Now, more than ever, good game play is at the forefront and AI is one of the most critical components (Rabin 2004).” “… Interactive computer games provide a rich environment for incremental research on human- level AI… Populating games with realistic, human- level characters will lead to fun, challenging games with great game play (Laird 2000).”

3 3 Why Learning of Game AI? The process of learning in games generally implies the adaptation of behavior for opponent players in order to improve performance Self-correction  Automatically fixing exploits Creativity  Responding intelligently to new situations Scalability  Better entertainment for strong players  Better entertainment for weak players

4 4 Online – during gameplay  Adapt to player tactics  Avoid repetition of mistakes  Requirements: computationally cheap, effective, robust, fast learning (Spronck 2004) Offline - before the game is released  Devise new tactics  Discover exploits Offline vs. Online Learning

5 5 Some Machine Learning Techniques

6 6 Overview Reinforcement Learning (RL)  Introduction to RL  RL application: Dynamic Scripting  Demo Wargus Evolutionary Algorithms (EA)  Introduction to EA  EA application: EA in Stratagus/Wargus

7 7 Introduction to Reinforcement Learning Techniques Framework based on punishments and rewards Maximize the frequency of rewards Minimize the frequency of punishments RL is popular research area because:  RL can solve wide variety of complex problems  RL will find close to optimal solution  RL learns as it interacts with the environment

8 8 How to provide Punishments & Rewards Weight adaptation function based on fitness score(s) Lookup tables

9 9 When to provide Punishments & Rewards Reward when AI achieves objective or the opponent finds itself in a state where it can’t achieve its objective Reward when AI does something to increase the chance of achieving objective (guided rewards) Punish when AI does something to decrease the chance of achieving objective (guided negative rewards) Using both overall and guided (negative) rewards, speeds up the learning process

10 10 RL application: Dynamic Scripting Dynamic Scripting (DS) is an online learning technique inspired by RL Original implementation of DS (Spronck 2004) in the Computer RolePlaying Game NeverWinter Nights ©

11 11 Dynamic Scripting Rulebase A Rulebase B Script A Script B Combat generate script scripted control human control human control weight updates team controlled by human player team controlled by computer A B

12 12 Dynamic Scripting and Requirements Computationally Cheap - Script generation and weight updates once per encounter Effective - Rules are manually designed Robust - Reward/penalty system Fast Learning – Experiments showed that DS is able to adapt fast to an unchanging tactic

13 13 Wargus: A Real-Time Strategy Game Complex: large state and decision space!

14 14 Dynamic Scripting in Wargus Different rulebases for different game states State transition on constructing a building that allows new units or new research

15 15 Domain Knowledge in Wargus Abstraction of the state space States in Wargus are manually predefined and represent game phases that inform the AI on the possible tactics during a game The possible tactics during a game mainly depend on available units and technology The availability of units and technology depends on the buildings the player possesses Therefore, the utility of tactics depends on the available buildings

16 16 A library of tactics for each state Tactics are action sequences consisting of 1 or more game actions (e.g., building, combat, research etc.) Domain Knowledge in Wargus Abstraction of the decision space Construct City Center Train 4 workers Defend with 1 Soldier Construct Blacksmith Research better Weapons Attack with 2 Soldiers Construct Keep Train 30 workers Defend with 1 Knight - Attack with 10 Knights Research magic spell Defend with 2 Mages State 1 Knowledge base State n Knowledge base State 20 Knowledge base … … Construct Castle Train 30 workers Attack with 10 Knights Research magic spell Defend with 2 Mages Construct Guard tower

17 17 State abstraction Domain Knowledge in Wargus Decision abstraction Dynamic Scripting learns to win efficiently against static opponents! (Ponsen et al. 2004) complex

18 18 Rules in Rulebases 12 Build rules 9 Research rules 4 Economy rules 25 Combat rules AiNeed(AiBarracks) AiResearch(AiUpgradeArmor1) AiNeed(AiWorker) AiForce(1, {AiSoldier, 9}) AiWaitForce(1) AiAttackWithForce(1)

19 19 Tactics Two `balanced’ tactics  Small Balanced Land Attack (SBLA)  Large Balanced Land Attack (LBLA) Two `rush’ tactics  Soldier Rush (SR)  Knight Rush (KR)

20 20 Dynamic Scripting Test Dynamic player (using dynamic scripting) plays 100 consecutive games against static player Randomisation Turning Point (RTP): First game that dynamic player outperforms static player with 90% probability according to a randomisation test (Cohen, 1995)

21 21 Dynamic Scripting RTP Results TacticTestsLowHighAvg.Med.>100Won SBLA3118995039059.3 LBLA2119794947060.2 SR10 1.2 KR10 2.3 Dynamic Scripting WORKS! It adapts efficiently against SBLA and LBLA Dynamic Scripting is unable to adapt to the optimized tactics SR and KR

22 22 Wargus Demo

23 23 Conclusions Dynamic scripting can be successfully implemented in (commercial) CRPG & RTS games

24 24 References Marc J.V. Ponsen, Héctor Muñoz-Avila, Pieter Spronck and David W. Aha. Automatically Acquiring Domain Knowledge For Adaptive Game AI Using Evolutionary Learning. IAAI-05. Spronck, P., I. Sprinkhuizen-Kuyper, and E. Postma. 2004a. “Online Adaptation of Game Opponent AI with Dynamic Scripting.” Sweetser, P. (2002). Current AI in Games: A review Manslow. “Learning and Adaptation” & “Using reinforcement learning to Solve AI Control Problems” Laird, J.E. 2000. “Human-Level AI's Killer Application: Computer Game AI.” Ponsen, M. Spronck. P. 2004 “Improving Adaptive AI with Evolutionary Learning”

Download ppt "Machine Learning in Computer Games Learning in Computer Games By: Marc Ponsen."

Similar presentations

Ads by Google