Computational Intelligence in Games: An Overview

runmidgeΤεχνίτη Νοημοσύνη και Ρομποτική

20 Οκτ 2013 (πριν από 3 χρόνια και 11 μήνες)

92 εμφανίσεις

Computational Intelligence in Games: An
Overview

Zahid Halim

Faculty of Computer Science and Engineering

Ghulam Ishaq Khan Institute of Engineering Sciences and Technology,
Topi
.

zahid.halim@giki.edu.pk

Layout


What is AI/CI and ML


Why Computer Games?


How CI helps computer Games?


Some Examples


Key venues to publish work


Future directions

12/19/2012

Computational Intelligence in Games: An Overview

2

AI vs. CI vs. ML



Artificial
Intelligence (Think like human, learn from experience, recognize patterns, make
complex decisions based on knowledge and reasoning)


Machine learning


Knowledge representation


Natural Language Processing


Planning Robotics
etc.



Machine
learning


Branch of AI


Construction
and study of systems that can learn from
data


Email
messages to learn to distinguish between spam and non
-
spam messages


There is difference between ML and Data Mining too



Computational Intelligence

(
www.ieee
-
cis.org
)


Integrating
the fields


Artificial
Neural
Networks


Evolutionary Computation


Fuzzy Logic

Computational Intelligence in Games: An Overview

3

12/19/2012

They are related… But they are all different…

I hope all of us understand difference between hard and soft computing








AI

CI

ML

Computational Intelligence in Games: An Overview

4

12/19/2012

Why Computer Games?

49% of
U.S. households own a dedicated game
console

Male

53%

Female

47%

The average game player age is:

30 years

Computational Intelligence in Games: An Overview

5

12/19/2012

32%

31%

37%

Under 18
18-32
36 or more
Why Computer Games?


42% of
game players believe that computer and video games give them the most value
for
their money
, compared with DVDs, music or going out to the
movies



Gamers
who are playing more video games than they did three years ago are
spending less
time
:


59% playing board games


50% going to the movies


47% watching TV


47% watching movies at home



62% of
gamers play games with others, either in
-
person or
online


78% of
gamers who play with others
do so
at least one hour per
week


Computational Intelligence in Games: An Overview

6

12/19/2012

Money Matters!


6

6.9

7

7.3

6.9

7.3

9.5

11.7

16

16.9

16.6

2001
2002
2003
2004
2005
2006
2007
2008
2009
2010
2011
Dollars (Billions)
11%

22%

67%

Consumer Spend on Games Industry
2011

Accessories
Hardware
Contents
Total:

$24.75

Billion

Computational Intelligence in Games: An Overview

7

12/19/2012

But its not every thing!

What can Computational Intelligence do?


Generate complete game


Creation of intelligent game characters


Creation of
entertaining

game characters


Generating tracks for racing games.


Adaptable player experience.


Levels for action games.


Generating maps for games.


Computational Intelligence in Games: An Overview

8

12/19/2012

Procedural Content Generation


Lindenmayer

system: A variant of a formal grammar, most famously used to model the
growth processes of plant.


Consists of:


An alphabet of symbols that can be used to make strings


A collection of production rules which expand each symbol into some larger string of
symbols


An initial "axiom" string from which to begin construction


A mechanism for translating the generated strings into geometric structures.


PCG can also generate weapons that player might require in a game


Search based PCG is different


Computational Intelligence in Games: An Overview

9

12/19/2012

Some of the PCG based Games

Game

Content

Year

ToeJam & Earl

The random levels were procedurally generated.

1991

The Elder Scrolls III: Morrowind

Water effects are generated on the fly."Water
Interaction" demo.

2002

RoboBlitz

XBox360 live arcade and PC

2006

Borderlands

Weapons were generated depending upon the levels

2009

Terraria

2D landscape was generated that a player can travel
around.

2011

Computational Intelligence in Games: An Overview

10

12/19/2012

Automated Game “entertaining” Generation


Search Space
Dimension

Possible Values

Select Values

Checkers

Chess

Play Area

Only black squares are
used

Both white & black
squares are used

Both white & black squares are
used

Types of Pieces

Initially 1, maximum 2

6

6

Number of
pieces/type

12, variable (but max.
12)

16

variable but at maximum 24

Initial position

Black squares of first 3
rows

Both white & black
squares of first 2 rows

Both white & black squares of
first 3 rows

Movement direction

Diagonal forward and
Diagonal, forward
backward

All directions, straight
forward, straight
forward and backward,
L shaped, diagonal
forward

All directions, straight forward,
straight forward and backward,
L shaped, diagonal forward

Step Size

One Step

One Step, Multiple
Steps

One Step, Multiple Steps

Capturing Logic

Step over

Step into

Step over, step into

Game ending logic

No moves possible for
a player

No moves possible for
the king

No moves possible for a player,
no moves possible for the king

Conversion Logic

Checkers into king

Soldiers into queen or
any piece of choice

Depends upon rules of the game

Mandatory to capture

Yes

No

Depends upon rules of the game

Turn passing allowed

No

No

No

Gene

Title

Value

1

Placement of gene of each type

0
-
6

:

24

25

Movement logic of each type

1
-
6

:

30

31
-
36

Step Size

0/1

37

Capturing logic move into cell or jump over 0/1

0/1

:

42

43

Piece of honour

0
-
6

44

Conversion Logic 0
-
6

0
-
6

:

49

50

Mandatory to capture or not

0/1

Computational Intelligence in Games: An Overview

11

12/19/2012

Objective Function

0
0.2
0.4
0.6
0.8
1
1.2
1
4
7
10
13
16
19
22
25
28
31
34
37
40
43
46
49
52
55
58
61
64
67
70
73
76
79
82
85
88
91
94
97
100
Scaled value of D

Duration of game (D)



1+1 Evolutionary Strategy (ES)


10 chromosomes are randomly initialized


The evolutionary algorithm is run for 100 iterations


Mutation only with probability of 30 percent


One parent produce one child


Fitness difference is calculated


If it is greater than 4 (at least half times better) child is promoted to the next population

Computational Intelligence in Games: An Overview

12

12/19/2012

Making Racing Fun Through Player Modelling and
Track Evolution


We have one or several car racing tracks with


Walls, Waypoints, Staring position of the car



Car consist of


Sensor model to sense the environment


Discrete set of control commands



Objective of the game is to pass as many waypoints in given
timesteps
.



Car has 6 sensors, Speed of the car and Angle to the next waypoint



Fully connected
feedforward

nets (
MLPs
) with the
tanh

transfer function.


Only the weights of the networks are changed by evolution or back propagation


Nine inputs (sensors and a bias input), Six hidden neurons


Two output neurons are used.


The First output is interpreted as driving command


Second as steering command.








Computational Intelligence in Games: An Overview

13

12/19/2012

Learning Behaviour: Backpropagation


Human player drove a number of laps around a track, while the inputs from sensors and
actions taken by the human were logged at each
timestep
.


This log was then used to train a neural network controller to associate sensor inputs with
actions using a standard
backpropagation

algorithm.


Several variations on this idea were tried with very little success.


Training often achieved low error rates (typically 0.05), none of the trained networks
managed to complete even half a lap.


A small amount of noise that is applied to sensors guarantees that the car does not simply
replay the human action.



Computational Intelligence in Games: An Overview

14

12/19/2012

Evolving Neural Network Agents in the NERO Video Game


real
-
time
NeuroEvolution

of Augmenting Topologies (
rt
-
NEAT) method for evolving
increasingly complex artificial neural networks in
real time, as a game is being
played.



rtNEAT

makes possible a new genre of video games in which the player
teaches a
team of agents through a series of customized
training exercises.



In NEAT, the population is replaced at each generation.


Everyone’s behaviour would change at once.


Behaviours would remain static during the large gaps between generations



In
rtNEAT
, a single individual is replaced very few game ticks



Computational Intelligence in Games: An Overview

15

12/19/2012

Conferences and Journals


IEEE Computational Intelligence and Games


IEEE Transactions on Computational Intelligence and AI in Games (IF 1.8)



International Journal of Computer Games Technology


International Conference on Computer Games (CGAMES)


CGamesUSA

International Conference on Computer Games


Computational Intelligence in Games: An Overview

16

12/19/2012

Where are the opportunities?


CIG for health care


CIG for education


Neuro

Computer interface for games


Physicological

study via games


Computational Intelligence in Games: An Overview

17

12/19/2012

Thanks for your patience

Presentation available at: http://ming.org.pk/zahid.htm

Bibliography


http://tim.hibal.org/blog/wp
-
content/uploads/2010/01/speciesChange.png


http://www.sennir.co.uk/Journal/178


ESA 2012 Sales, Demographic and Usage Data


Evolving Neural Network Agents in the NERO Video Game, Stanley et. al


Acquiring Visibly Intelligent Behavior with Example
-
Guided
Neuroevolution
, Bryant et. al.


Making Racing Fun Through Player Modeling,
Togelius

et. al.


Evolutionary Search for Entertainment in Games, Halim et. al.


12/19/2012

Computational Intelligence in Games: An Overview

19