Creating an intelligent agent for StarCraft: Brood War University - - PowerPoint PPT Presentation

creating an intelligent agent for
SMART_READER_LITE
LIVE PREVIEW

Creating an intelligent agent for StarCraft: Brood War University - - PowerPoint PPT Presentation

Creating an intelligent agent for StarCraft: Brood War University of Lige Faculty of Applied Sciences 2009 2010 Firas Safadi Master in Computer Science Professional Focus Introduction Computers Why artificial intelligence (AI)? Video


slide-1
SLIDE 1

Creating an intelligent agent for StarCraft: Brood War

University of Liège Faculty of Applied Sciences 2009 – 2010 Firas Safadi Master in Computer Science Professional Focus

slide-2
SLIDE 2

Computers

Why artificial intelligence (AI)?

Video games

Why real-time strategy (RTS) games?

Introduction

slide-3
SLIDE 3

StarCraft: Brood War

Chapter I

slide-4
SLIDE 4

Developed by Blizzard Entertainment, Inc. and released in 1998 Proved successful as it continues to drive popular video game leagues even 10 years after its release, especially in South Korea

History

slide-5
SLIDE 5

3 races (Terran, Zerg and Protoss) different (but balanced!) with unique abilities and characterized by a distinct play style

Rich resource mechanics

minerals, gas, supplies (reclaimable)

Lots of units with many attributes

Features

slide-6
SLIDE 6

Resource panel (overlay) [1] Command panel [2] Portrait [3] Unit information [4] Mini-map [5]

Interface

slide-7
SLIDE 7
slide-8
SLIDE 8

Agent Design

Chapter II

slide-9
SLIDE 9

Orders travel from the strategy manager down to individual

  • units. They start as abstract
  • rders and are processed by the

intermediate managers, eventually translating into concrete unit commands.

Design Overview

Operational Tactical Strategic

Strategy Manager Production Manager Work Squads Combat Manager Military Squads

slide-10
SLIDE 10
  • Simplified game state
  • Trigger-based decisions

Strategy Manager

Operational Tactical Strategic

Strategy Manager Production Manager Work Squads Combat Manager Military Squads

slide-11
SLIDE 11
  • Build order management
  • Worker assignment

Production Manager

Operational Tactical Strategic

Strategy Manager Production Manager Work Squads Combat Manager Military Squads

slide-12
SLIDE 12
  • Combat flags
  • Military unit assignment
  • Squad deployment

Combat Manager

Operational Tactical Strategic

Strategy Manager Production Manager Work Squads Combat Manager Military Squads

slide-13
SLIDE 13
  • Target selection
  • Formation and behavior

Military Squads

Operational Tactical Strategic

Strategy Manager Production Manager Work Squads Combat Manager Military Squads

slide-14
SLIDE 14
  • Resource gathering
  • Building construction

Work Squads

Operational Tactical Strategic

Strategy Manager Production Manager Work Squads Combat Manager Military Squads

slide-15
SLIDE 15

Order Processing

Production Order

Train 8 marines Build barracks Acquire resources Gather minerals

Combat Order

Attack Create 2 squads Destroy outpost Kill a patrol unit

slide-16
SLIDE 16

Implementation

Chapter III

slide-17
SLIDE 17

StarCraft is not open source!

The Brood War Application Programming Interface (BWAPI) is an open source C++ “hacker” framework and provides hooks to access the game state and issue commands. BWAPI add-ons: BWSAL, BWTA, etc. BWAPI is not perfect!

Framework

slide-18
SLIDE 18

How does it work?

Normal flow

Take user commands Compute next frame Draw screen

Altered flow

Agent processing Take agent commands Compute next frame Draw screen

slide-19
SLIDE 19

Results

Chapter IV

slide-20
SLIDE 20

20 40 60 80 100 120 Units produced Units killed Units lost

Game Statistics

slide-21
SLIDE 21

The project was successful!

Primary objective met Very useful for the years to come

Final Words

slide-22
SLIDE 22

The End

Thanks for listening!