Evolving strategies for playing Galcon

14
1 Optimizing player behavior in a real-time strategy game using evolutionary algorithms A. Fernández-Ares, A.M. Mora, J.J. Merelo, P. García-Sánchez and C. Fernandes GeNeura group: http://geneura.wordpress.com http://twitter.com/geneura Departamento de Arquitectura y Tecnología de Computadores University of Granada (Spain)

description

Optimizing player behavior in a real-time strategygame using evolutionary algorithmsA. Fernández-Ares, A.M. Mora, J.J. Merelo, P. Garcí́a-Sánchez and C. Fernandes

Transcript of Evolving strategies for playing Galcon

Page 1: Evolving strategies for playing Galcon

1

Optimizing player behavior in a real-time strategy game using

evolutionary algorithms

A. Fernández-Ares, A.M. Mora, J.J. Merelo, P. García-Sánchez and C. Fernandes

GeNeura group: http://geneura.wordpress.com http://twitter.com/geneura

Departamento de Arquitectura y Tecnología de Computadores

University of Granada (Spain)

Page 2: Evolving strategies for playing Galcon

2

Galcon

Page 3: Evolving strategies for playing Galcon

3

Google AI Challenge

Page 4: Evolving strategies for playing Galcon

4

Game conditions

Decision time restricted to 1 second

Impossible to keep state from one step to tne next

Full knowledge of own and other's state

And Physics of the game

Swiss-style tournament

Page 5: Evolving strategies for playing Galcon

5

Baseline: GoogleBot

Planet with most ships chosen as base for attack

Planet to attack chosen according to growth rate and difference

Only one attack at the time

Page 6: Evolving strategies for playing Galcon

6

Aresbot

Hand-designed to beat GoogleBot

Similar, but

Colonies send ships to base (tithe)

If they are close to attack planet, they send attack directly

Same planet can't be attacked twice

Page 7: Evolving strategies for playing Galcon

7

But we can do better!

Page 8: Evolving strategies for playing Galcon

8

GeneBot

Let an evolutionary algorithm evolve constant and probabilities for AresBot

Use standard GA

1-elitism

BLX-α crossover

Page 9: Evolving strategies for playing Galcon

9

Several maps used to train bot

Chosen for representing different characteristics

Base planet relative position

Excentricity

If a bot is able to beat GoogleBot there, it will probably always will

Page 10: Evolving strategies for playing Galcon

10

Designing a fitness function

Important factors: number of victories and turns needed to win them

Victories are rather a constraint, so it's not multiobjective

Page 11: Evolving strategies for playing Galcon

11

Results

Genebot is able to defeat GoogleBot in the 100 maps provided by Google

Strategy completely different from AresBot

Tithe and support attack less likely, but with more ships

Growth rate fo target ship becomes more important

Many more ships sent to target planet

Beats GoogleBot in 30% less time than AresBot

Page 12: Evolving strategies for playing Galcon

12

Comparing bots

Page 13: Evolving strategies for playing Galcon

13

Did we win?

20% best: position 1454

Not bad, not great

Evolved strategy can go only as far as the underlying one.

Genetic algorithm was not really optimized

Future work.

Forget contest restrictions

Leave strategy more open

Be more “genetic”

Page 14: Evolving strategies for playing Galcon

14

Thanks for your attention - Questions?

[email protected]://twitter.com/jjmerelo