16
Evolutionary Interactive Bot for the FPS Unreal Tournament 2004 José L. Jiménez, Antonio M. Mora, Antonio J. Fernández-Leiva Depto. Lenguajes y Ciencias de la Computación, Universidad de Málaga Depto. Arquitectura y Tecnología de Computadores, Universidad de Granada II CONGRESO DE LA SOCIEDAD ESPAÑOLA PARA LAS CIENCIAS DEL VIDEOJUEGO (CoSECiVi 2015) 24 Junio, Barcelona (España)

CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Embed Size (px)

Citation preview

Page 1: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Evolutionary Interactive Bot for the FPS Unreal

Tournament 2004

José L. Jiménez, Antonio M. Mora, Antonio J. Fernández-Leiva

Depto. Lenguajes y Ciencias de la Computación, Universidad de Málaga

Depto. Arquitectura y Tecnología de Computadores, Universidad de Granada

II CONGRESO DE LA SOCIEDAD ESPAÑOLA PARA LAS CIENCIAS DEL

VIDEOJUEGO (CoSECiVi 2015)

24 Junio, Barcelona (España)

Page 2: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

INDEX

• Unreal Game

• Pogamut

• Unreal Expert Bot

• Evolutionary Algorithms (EAs)

• Human Interaction in EA

• Results (2KBotPrize Competition)

• Conclusions and future work

CoSE

CiV

i 2015

Page 3: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Environment description

UNREAL

Unreal is a first person shooter (FPS).

Famous due to the excelent AI of the enemies (bots), which makes it an amazing multiplayer game. Unreal Tournament series is widely extended.

It offers an editor (UnrealEd) which lets us change almost everything in

the game, even the behaviour of the bots. It uses the language

UnrealScript.

CoSE

CiV

i 2015

Page 4: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

General description

POGAMUT

A java middleware for Unreal Tournament series games and

Defcon games.

The architecture is as follows:

It is possible to interact with the game from a java program,

getting higher independence (avoiding Unrealscript restrictions)

and increasing the possibilities (java libraries).

On the contrary, the structures, classes, functions and

workflows defined in the Unreal engine, cannot be accessed, nor

used.

CoSE

CiV

i 2015

Page 5: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Objectives

UNREAL EXPERT BOT

• Create an autonomous agent for playing Unreal Tournament deathmatch championship.

• Considering the constraints of this competition: - 1 vs 1 matches

- Small arenas

- Weapons are not respawned

- Some forbidden items (U-Damage, for instance)

- 15 minutes per match instead of a number of frags (kills)

• Human-like behaviour is desired.

• Modelling Expert player knowledge (and tricks). - High control in timing (items respawn time)

- Deep knowledge about weapons and their advantages and disadvantages

- Deep knowledge about items

CoSE

CiV

i 2015

Page 6: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Features

UNREAL EXPERT BOT

• Defined by means of a Finite State Machine based AI with two state levels.

• Translated into a set of rules which determine its behaviour.

• Database which models the bot’s memory, since it is uploaded with data about locations of items and weapons in the map.

CoSE

CiV

i 2015

Page 7: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Features

UNREAL EXPERT BOT

• Defined by means of a Finite State Machine based AI with two state levels.

• Translated into a set of rules which determine its behaviour.

• Database which models the bot’s memory, since it is uploaded with data about locations of items and weapons in the map.

CoSE

CiV

i 2015

Page 8: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Evolutionary Algorithms

EXPERT BOT EVOLUTION

by Johann Dréo

i -> initial population f -> evaluation function (fitness) ? -> stop condition Se -> selection Cr -> crossover Mu -> mutation Re -> replacement

CoSE

CiV

i 2015

Page 9: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Evolutionary process in Unreal game

EXPERT BOT EVOLUTION

GE-BOT

Expert Bot based in a

Genetic Algorithm

Evolutionary

process

population

FITNESS EVALUATION

• Analyze Expert bot’s FSM

• Identify parameters

• Optimize them

Expert

Bot’s

AI

CoSE

CiV

i 2015

Page 10: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Evolutionary approach

EXPERT BOT EVOLUTION

• Generic Fitness Just considers frags/deads and damage produced/received

• Generational scheme

• 4-elitism

• Complex Fitness - considers frags/deads

- damage produced/received

- time using the best or more versatile weapons: Lightning Gun and Shock Rifle

- getting the best items: Shield and Super Shield

• Stationary scheme • Uniform Crossover

• Random mutation

• 4 Random individuals

• Chromosome 26

CoSE

CiV

i 2015

Page 11: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Human Expert Interaction

EXPERT BOT EVOLUTION

by Johann Dréo

Expert Interaction

CoSE

CiV

i 2015

Page 12: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Human expert interaction

EXPERT BOT EVOLUTION

• He/She is an expert in the game.

• Will ‘guide’ the search in order to obtain human-like bots.

• He sees a bot in action and gives his/her opinion about its behaviour in a form. This influences the EA, blocking the good part of the chromosome.

CoSE

CiV

i 2015

Page 13: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

Influence of Interactions on the Evolution

RESULTS CoSE

CiV

i 2015

Page 14: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

2K BotPrize Competition

RESULTS

• International competition which aims for the best human-like bot for playing Unreal Tournament 2004.

• It should mislead a group of human judges.

• 2nd position!!!!

CoSE

CiV

i 2015

Page 15: CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004

and future work

CONCLUSIONS

• We have designed a human-like Bot starting from an Expert bot which outperformed the standard Unreal Tournament 2K4 bots in the hardest difficulty.

• It has been created with the help of human experts, who interact with the optimization method (the EA).

• The bot has been presented to the 2K BotPrize competition getting the second position.

• The interaction of experts also improves the obtained solutions regarding their quality (fitness).

FUTURE WORK:

• Consider more points of interaction.

• Change the fitness value accordig to the expert knowledge (add the humanness factor).

CoSE

CiV

i 2015