Abstract. This paper presents an interactive genetic algorithm for generating a human-like autonomous player (bot) for the game Unreal Tournament 2004. It is based on a bot modelled from the knowledge of an expert human player. The algorithm provides two types of interaction:
by an expert in the game and by an expert in the algorithm. Each one affects different aspects of the evolution, directing it towards better results regarding the agent’s humanness (objective of this work). It has been conducted an analysis of the experts’ influence on the performance, showing much better results after these interactions that the non-interactive version.
The best bot were submitted to the BotPrize 2014 competition (which seeks for the best human-like bot), getting the second position.
CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004
1. 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)
2. INDEX
• Unreal Game
• Pogamut
• Unreal Expert Bot
• Evolutionary Algorithms (EAs)
• Human Interaction in EA
• Results (2KBotPrize Competition)
• Conclusions and future work
CoSECiVi2015
3. 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.
CoSECiVi2015
4. 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.
CoSECiVi2015
5. 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
CoSECiVi2015
6. 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.
CoSECiVi2015
7. 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.
CoSECiVi2015
8. 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
CoSECiVi2015
9. 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
CoSECiVi2015
10. 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
CoSECiVi2015
12. 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.
CoSECiVi2015
14. 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!!!!
CoSECiVi2015
15. 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).
CoSECiVi2015