SlideShare une entreprise Scribd logo
1  sur  21
Télécharger pour lire hors ligne
Designing and Evolving an
Unreal Tournament 2004
Expert Bot
A.M. Mora, F. Aisa, R. Caballero, P. García-Sánchez, J.J. Merelo, P.A. Castillo, R. Lara-Cabrera
International Work-Conference on Artificial Neural Networks
INDEX
• Unreal (game, environment)
• Pogamut tool
• Unreal Expert Bot (objectives, features)
• Evolutionary Algorithms
• Unreal Expert Bot Evolution (description,
approaches, results)
• E-BOT vs GE-BOT (results, demo)
• Conclusions
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 anything in
the game even the behaviour of the bots. It uses the language
UnrealScript.
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.
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
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.
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.
Bot performance
UNREAL EXPERT BOT
• Expert Bot (E-Bot) outperformed the standard bots in the game
(considering the number of frags), even in the maximum
difficulty level.
• This difficulty level is quite hard for a medium level
player.
• E-Bot is hard to beat for humans, even for the expert.
• Medium level players usually lose against it.
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
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
Approaches
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
• Chromosome 143
• Uniform Crossover
• Random mutation
• 4 Random individuals
• Chromosome 26
Approach 1: Chromosome 143 - Generic Fitness
EXPERT BOT EVOLUTION
• Generic Fitness
Just considers frags/deads
and damage produced/received
• Generational scheme
• 4-elitism
• Chromosome 143
• Uniform Crossover
• Random mutation
• 4 Random individuals
Approach 1. Results
EXPERT BOT EVOLUTION
• 30 generations
• 30 individuals
• 1 evaluation (left)
• 3 evaluations (right)
in order to avoid the
noisy nature of the
fitness function
• 15 minutes per
evaluation
• 10 days per run (left)
• One month (right)
• Lightly improvement
tendency
• Too many oscillations,
i.e. noise
• 143 genes are too much
EXPERT BOT EVOLUTION
• Generic Fitness
Just considers frags/deads
and damage produced/received
• Generational scheme
• 4-elitism
• Uniform Crossover
• Random mutation
• 4 Random individuals
• Chromosome 26
Approach 2: Chromosome 26 - Generic Fitness
Approach 2. Results
EXPERT BOT EVOLUTION
• 50 generations
• 30 individuals
• 5 minutes per
evaluation
• Results of 2 different
runs
• 5 days per run
• Again lightly
improvement tendency
• Too much noise
• Too much diversity
EXPERT BOT EVOLUTION
• 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
Approach 3: Chromosome 26 - Complex Fitness
Approach 3. Results
EXPERT BOT EVOLUTION
• 40 generations
• 30 individuals
• 5 minutes per
evaluation
• Stationary scheme to
increase the
exploitation factor
• Results of 2 different
runs
• 5 days per run
• Quite good fitness
tendency
• Noise still remains,
but in a lower factor
Numerical results
E-BOT vs GE-BOT
• Expert Bot (E-Bot) and the best Genetic Expert Bots (GE-BOT)
have been fighting in four battles (in two maps).
• The average results of these matches are:
• The approach with 143 genes per chromosome is defeated
• GE-Bot with 26 genes outperforms E-Bot.
• The approach with the complex fitness function gets the best
results. Due to its lower noisy factor, and the higher
exploitation component.
DEMO
E-BOT vs GE-BOT
http://www.youtube.com/watch?v=ktcXHZ-nAfw
CONCLUSIONS
• We have designed a human-like Expert Bot (E-Bot) which
outperforms the standard Unreal Tournament 2K4 bots in the
hardest difficulty.
• It is also a hard rival against human players.
• We have tested three different approaches for improving this
bot by means of Genetic Algorithms.
• Too long chromosomes population performs worse than small
length one.
• These algorithms are affected by a high noisy factor
regarding the generic (and easier) fitness function.
• We have defined a complex fitness function which performs
better, with a softer noisy effect.
• The bots obtained after evolution outperform the E-Bot.
END
THE
Questions?!?!
Contact: amorag@geneura.ugr.es
Source Code: https://github.com/franaisa/ExpertAgent

Contenu connexe

En vedette

FSM-Based Agents for Playing Super Mario Game
FSM-Based Agents for Playing Super Mario GameFSM-Based Agents for Playing Super Mario Game
FSM-Based Agents for Playing Super Mario GameAntonio Mora
 
Evolving the Cooperative Behaviour in Unreal Bots
Evolving the Cooperative Behaviour in Unreal BotsEvolving the Cooperative Behaviour in Unreal Bots
Evolving the Cooperative Behaviour in Unreal BotsAntonio Mora
 
Super Mario (El Personaje y las Mario AI Competitions)
Super Mario (El Personaje y las Mario AI Competitions)Super Mario (El Personaje y las Mario AI Competitions)
Super Mario (El Personaje y las Mario AI Competitions)Antonio Mora
 
Evolving Bot AI in Unreal (Poster EVOGames 2010, in EVO* 2010)
Evolving Bot AI in Unreal (Poster EVOGames 2010, in EVO* 2010)Evolving Bot AI in Unreal (Poster EVOGames 2010, in EVO* 2010)
Evolving Bot AI in Unreal (Poster EVOGames 2010, in EVO* 2010)Antonio Mora
 
Ciencia y videojuegos
Ciencia y videojuegosCiencia y videojuegos
Ciencia y videojuegosAntonio Mora
 
TESIS: "Resolución de Problema Militar de Búsqueda de Camino Óptimo Multiobje...
TESIS: "Resolución de Problema Militar de Búsqueda de Camino Óptimo Multiobje...TESIS: "Resolución de Problema Militar de Búsqueda de Camino Óptimo Multiobje...
TESIS: "Resolución de Problema Militar de Búsqueda de Camino Óptimo Multiobje...Antonio Mora
 
Optimización basada en colonias de hormigas. Conceptos principales
Optimización basada en colonias de hormigas. Conceptos principalesOptimización basada en colonias de hormigas. Conceptos principales
Optimización basada en colonias de hormigas. Conceptos principalesAntonio Mora
 
CONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORM
CONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORMCONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORM
CONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORMPablo García Sánchez
 
Optimizing Strategy Parameters in a Game Bot
Optimizing Strategy Parameters in a Game BotOptimizing Strategy Parameters in a Game Bot
Optimizing Strategy Parameters in a Game BotPablo García Sánchez
 
Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...
Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...
Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...Antonio Mora
 
Adaptative bots for real time strategy game via map characterization
Adaptative bots for real time strategy game via map characterization Adaptative bots for real time strategy game via map characterization
Adaptative bots for real time strategy game via map characterization Antonio Fernández Ares
 
Usando bases de datos NoSQL para algoritmos evolutivos paralelos
Usando bases de datos NoSQL para algoritmos evolutivos paralelosUsando bases de datos NoSQL para algoritmos evolutivos paralelos
Usando bases de datos NoSQL para algoritmos evolutivos paralelosJuan J. Merelo
 
Estudio de un Operador de Mutación para Algoritmos Genéticos Basado en la Teo...
Estudio de un Operador de Mutación para Algoritmos Genéticos Basado en la Teo...Estudio de un Operador de Mutación para Algoritmos Genéticos Basado en la Teo...
Estudio de un Operador de Mutación para Algoritmos Genéticos Basado en la Teo...Juan J. Merelo
 

En vedette (18)

FSM-Based Agents for Playing Super Mario Game
FSM-Based Agents for Playing Super Mario GameFSM-Based Agents for Playing Super Mario Game
FSM-Based Agents for Playing Super Mario Game
 
Evolving the Cooperative Behaviour in Unreal Bots
Evolving the Cooperative Behaviour in Unreal BotsEvolving the Cooperative Behaviour in Unreal Bots
Evolving the Cooperative Behaviour in Unreal Bots
 
Super Mario (El Personaje y las Mario AI Competitions)
Super Mario (El Personaje y las Mario AI Competitions)Super Mario (El Personaje y las Mario AI Competitions)
Super Mario (El Personaje y las Mario AI Competitions)
 
Evolving Bot AI in Unreal (Poster EVOGames 2010, in EVO* 2010)
Evolving Bot AI in Unreal (Poster EVOGames 2010, in EVO* 2010)Evolving Bot AI in Unreal (Poster EVOGames 2010, in EVO* 2010)
Evolving Bot AI in Unreal (Poster EVOGames 2010, in EVO* 2010)
 
Ciencia y videojuegos
Ciencia y videojuegosCiencia y videojuegos
Ciencia y videojuegos
 
TESIS: "Resolución de Problema Militar de Búsqueda de Camino Óptimo Multiobje...
TESIS: "Resolución de Problema Militar de Búsqueda de Camino Óptimo Multiobje...TESIS: "Resolución de Problema Militar de Búsqueda de Camino Óptimo Multiobje...
TESIS: "Resolución de Problema Militar de Búsqueda de Camino Óptimo Multiobje...
 
Optimización basada en colonias de hormigas. Conceptos principales
Optimización basada en colonias de hormigas. Conceptos principalesOptimización basada en colonias de hormigas. Conceptos principales
Optimización basada en colonias de hormigas. Conceptos principales
 
Sandpile evo star 2011
Sandpile evo star 2011Sandpile evo star 2011
Sandpile evo star 2011
 
Evopar12 Validating a P2P EA
Evopar12 Validating a P2P EAEvopar12 Validating a P2P EA
Evopar12 Validating a P2P EA
 
CONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORM
CONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORMCONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORM
CONTEXT-AWARENESS IN A SERVICE ORIENTED E-HEALTH PLATFORM
 
Optimizing Strategy Parameters in a Game Bot
Optimizing Strategy Parameters in a Game BotOptimizing Strategy Parameters in a Game Bot
Optimizing Strategy Parameters in a Game Bot
 
Sistemas clasificadores
Sistemas clasificadoresSistemas clasificadores
Sistemas clasificadores
 
Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...
Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...
Evolving Evil: Optimizing Flocking Strategies through Genetic Algorithms for ...
 
Adaptative bots for real time strategy game via map characterization
Adaptative bots for real time strategy game via map characterization Adaptative bots for real time strategy game via map characterization
Adaptative bots for real time strategy game via map characterization
 
Genebot maeb
Genebot maebGenebot maeb
Genebot maeb
 
Parameter Tuning
Parameter TuningParameter Tuning
Parameter Tuning
 
Usando bases de datos NoSQL para algoritmos evolutivos paralelos
Usando bases de datos NoSQL para algoritmos evolutivos paralelosUsando bases de datos NoSQL para algoritmos evolutivos paralelos
Usando bases de datos NoSQL para algoritmos evolutivos paralelos
 
Estudio de un Operador de Mutación para Algoritmos Genéticos Basado en la Teo...
Estudio de un Operador de Mutación para Algoritmos Genéticos Basado en la Teo...Estudio de un Operador de Mutación para Algoritmos Genéticos Basado en la Teo...
Estudio de un Operador de Mutación para Algoritmos Genéticos Basado en la Teo...
 

Similaire à Designing and Evolving an Unreal Tournament 2004 Expert Bot

Designing and Evolving an Unreal Tournament 2004 Expert Bot
 Designing and Evolving an Unreal Tournament 2004 Expert Bot Designing and Evolving an Unreal Tournament 2004 Expert Bot
Designing and Evolving an Unreal Tournament 2004 Expert Botkeldon_spain
 
Dmytro Panchenko "Cracking Kaggle: Human Protein Atlas"
Dmytro Panchenko "Cracking Kaggle: Human Protein Atlas"Dmytro Panchenko "Cracking Kaggle: Human Protein Atlas"
Dmytro Panchenko "Cracking Kaggle: Human Protein Atlas"Lviv Startup Club
 
The Power and Peril of PCG
The Power and Peril of PCGThe Power and Peril of PCG
The Power and Peril of PCGGillian Smith
 
infoShare 2013: Adam Frańczak - Techniki optymalizacyjne w UDK/ UE3
infoShare 2013: Adam Frańczak - Techniki optymalizacyjne w UDK/ UE3infoShare 2013: Adam Frańczak - Techniki optymalizacyjne w UDK/ UE3
infoShare 2013: Adam Frańczak - Techniki optymalizacyjne w UDK/ UE3Infoshare
 
Forts and Fights Scaling Performance on Unreal Engine*
Forts and Fights Scaling Performance on Unreal Engine*Forts and Fights Scaling Performance on Unreal Engine*
Forts and Fights Scaling Performance on Unreal Engine*Intel® Software
 
Requirement Engineering process on The Outer Worlds game
Requirement Engineering process on The Outer Worlds gameRequirement Engineering process on The Outer Worlds game
Requirement Engineering process on The Outer Worlds gameAmna Khalil
 
AlphaZero and beyond: Polygames
AlphaZero and beyond: PolygamesAlphaZero and beyond: Polygames
AlphaZero and beyond: PolygamesOlivier Teytaud
 
Killzone Shadow Fall: Threading the Entity Update on PS4
Killzone Shadow Fall: Threading the Entity Update on PS4Killzone Shadow Fall: Threading the Entity Update on PS4
Killzone Shadow Fall: Threading the Entity Update on PS4jrouwe
 
Next Gen Asteroids
Next Gen AsteroidsNext Gen Asteroids
Next Gen AsteroidsJustin Young
 
Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Unreal Engine
 
Making VR games and experiences in Unreal Engine
Making VR games and experiences in Unreal EngineMaking VR games and experiences in Unreal Engine
Making VR games and experiences in Unreal EngineLuis Cataldi
 
Evolving Custom Communication Protocols
Evolving Custom Communication ProtocolsEvolving Custom Communication Protocols
Evolving Custom Communication ProtocolsWesley Faler
 
How to Design Effective Learning Games: Sharon Boller and Karl Kapp
How to Design Effective Learning Games: Sharon Boller and Karl KappHow to Design Effective Learning Games: Sharon Boller and Karl Kapp
How to Design Effective Learning Games: Sharon Boller and Karl KappSharon Boller
 
Ndss 2016 game_bot_final_no_video
Ndss 2016 game_bot_final_no_videoNdss 2016 game_bot_final_no_video
Ndss 2016 game_bot_final_no_videoEun-Jo Lee
 
Games User Research is for Game Design!
Games User Research is for Game Design!Games User Research is for Game Design!
Games User Research is for Game Design!Marina Kobayashi
 
Ropossum: A Game That Generates Itself
Ropossum: A Game That Generates ItselfRopossum: A Game That Generates Itself
Ropossum: A Game That Generates ItselfMohammad Shaker
 

Similaire à Designing and Evolving an Unreal Tournament 2004 Expert Bot (20)

Designing and Evolving an Unreal Tournament 2004 Expert Bot
 Designing and Evolving an Unreal Tournament 2004 Expert Bot Designing and Evolving an Unreal Tournament 2004 Expert Bot
Designing and Evolving an Unreal Tournament 2004 Expert Bot
 
CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004
CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004
CoSECiVi'15 - Evolutionary interactive bot for the FPS Unreal Tournament 2004
 
Dmytro Panchenko "Cracking Kaggle: Human Protein Atlas"
Dmytro Panchenko "Cracking Kaggle: Human Protein Atlas"Dmytro Panchenko "Cracking Kaggle: Human Protein Atlas"
Dmytro Panchenko "Cracking Kaggle: Human Protein Atlas"
 
The Power and Peril of PCG
The Power and Peril of PCGThe Power and Peril of PCG
The Power and Peril of PCG
 
Endless runner
Endless runnerEndless runner
Endless runner
 
infoShare 2013: Adam Frańczak - Techniki optymalizacyjne w UDK/ UE3
infoShare 2013: Adam Frańczak - Techniki optymalizacyjne w UDK/ UE3infoShare 2013: Adam Frańczak - Techniki optymalizacyjne w UDK/ UE3
infoShare 2013: Adam Frańczak - Techniki optymalizacyjne w UDK/ UE3
 
God Of War : post mortem
God Of War : post mortemGod Of War : post mortem
God Of War : post mortem
 
Forts and Fights Scaling Performance on Unreal Engine*
Forts and Fights Scaling Performance on Unreal Engine*Forts and Fights Scaling Performance on Unreal Engine*
Forts and Fights Scaling Performance on Unreal Engine*
 
Requirement Engineering process on The Outer Worlds game
Requirement Engineering process on The Outer Worlds gameRequirement Engineering process on The Outer Worlds game
Requirement Engineering process on The Outer Worlds game
 
AlphaZero and beyond: Polygames
AlphaZero and beyond: PolygamesAlphaZero and beyond: Polygames
AlphaZero and beyond: Polygames
 
es_hardware_handout
es_hardware_handoutes_hardware_handout
es_hardware_handout
 
Killzone Shadow Fall: Threading the Entity Update on PS4
Killzone Shadow Fall: Threading the Entity Update on PS4Killzone Shadow Fall: Threading the Entity Update on PS4
Killzone Shadow Fall: Threading the Entity Update on PS4
 
Next Gen Asteroids
Next Gen AsteroidsNext Gen Asteroids
Next Gen Asteroids
 
Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4Making VR Games and Experiences in UE4
Making VR Games and Experiences in UE4
 
Making VR games and experiences in Unreal Engine
Making VR games and experiences in Unreal EngineMaking VR games and experiences in Unreal Engine
Making VR games and experiences in Unreal Engine
 
Evolving Custom Communication Protocols
Evolving Custom Communication ProtocolsEvolving Custom Communication Protocols
Evolving Custom Communication Protocols
 
How to Design Effective Learning Games: Sharon Boller and Karl Kapp
How to Design Effective Learning Games: Sharon Boller and Karl KappHow to Design Effective Learning Games: Sharon Boller and Karl Kapp
How to Design Effective Learning Games: Sharon Boller and Karl Kapp
 
Ndss 2016 game_bot_final_no_video
Ndss 2016 game_bot_final_no_videoNdss 2016 game_bot_final_no_video
Ndss 2016 game_bot_final_no_video
 
Games User Research is for Game Design!
Games User Research is for Game Design!Games User Research is for Game Design!
Games User Research is for Game Design!
 
Ropossum: A Game That Generates Itself
Ropossum: A Game That Generates ItselfRopossum: A Game That Generates Itself
Ropossum: A Game That Generates Itself
 

Plus de Antonio Mora

Study on Genetic Algorithm Approaches to Improve an Autonomous Agent for a Fi...
Study on Genetic Algorithm Approaches to Improve an Autonomous Agent for a Fi...Study on Genetic Algorithm Approaches to Improve an Autonomous Agent for a Fi...
Study on Genetic Algorithm Approaches to Improve an Autonomous Agent for a Fi...Antonio Mora
 
Optimización Adaptativa basada en Colonias de Hormigas para la Composición de...
Optimización Adaptativa basada en Colonias de Hormigas para la Composición de...Optimización Adaptativa basada en Colonias de Hormigas para la Composición de...
Optimización Adaptativa basada en Colonias de Hormigas para la Composición de...Antonio Mora
 
Adaptive Ant Colony Optimization for Service Function Chaining in a Dynamic 5...
Adaptive Ant Colony Optimization for Service Function Chaining in a Dynamic 5...Adaptive Ant Colony Optimization for Service Function Chaining in a Dynamic 5...
Adaptive Ant Colony Optimization for Service Function Chaining in a Dynamic 5...Antonio Mora
 
Research in Videogames. (Much) further than just AI
Research in Videogames. (Much) further than just AIResearch in Videogames. (Much) further than just AI
Research in Videogames. (Much) further than just AIAntonio Mora
 
GRETIVE: Un Bot Evolutivo para HearthStone basado en Perfiles
GRETIVE: Un Bot Evolutivo para HearthStone basado en PerfilesGRETIVE: Un Bot Evolutivo para HearthStone basado en Perfiles
GRETIVE: Un Bot Evolutivo para HearthStone basado en PerfilesAntonio Mora
 
Improving the Performance of MCTS-Based μRTS Agents Through Move Pruning
Improving the Performance of MCTS-Based μRTS Agents Through Move PruningImproving the Performance of MCTS-Based μRTS Agents Through Move Pruning
Improving the Performance of MCTS-Based μRTS Agents Through Move PruningAntonio Mora
 
Testing hybrid computational intelligence algorithms for general game playing...
Testing hybrid computational intelligence algorithms for general game playing...Testing hybrid computational intelligence algorithms for general game playing...
Testing hybrid computational intelligence algorithms for general game playing...Antonio Mora
 
Checking the difficulty of evolutionary-generated maps in a N-Body inspired m...
Checking the difficulty of evolutionary-generated maps in a N-Body inspired m...Checking the difficulty of evolutionary-generated maps in a N-Body inspired m...
Checking the difficulty of evolutionary-generated maps in a N-Body inspired m...Antonio Mora
 
Applying Ant Colony Optimization for Service Function Chaining in a 5G Networ...
Applying Ant Colony Optimization for Service Function Chaining in a 5G Networ...Applying Ant Colony Optimization for Service Function Chaining in a 5G Networ...
Applying Ant Colony Optimization for Service Function Chaining in a 5G Networ...Antonio Mora
 
Investigación en videojuegos. (mucho) Mas allá de la IA
Investigación en videojuegos. (mucho) Mas allá de la IAInvestigación en videojuegos. (mucho) Mas allá de la IA
Investigación en videojuegos. (mucho) Mas allá de la IAAntonio Mora
 
Beating uncertainty in racing bot evolution through enhanced exploration and ...
Beating uncertainty in racing bot evolution through enhanced exploration and ...Beating uncertainty in racing bot evolution through enhanced exploration and ...
Beating uncertainty in racing bot evolution through enhanced exploration and ...Antonio Mora
 
Inteligencia Computacional en Videojuegos (Meetup GranadAI 2019)
Inteligencia Computacional en Videojuegos (Meetup GranadAI 2019)Inteligencia Computacional en Videojuegos (Meetup GranadAI 2019)
Inteligencia Computacional en Videojuegos (Meetup GranadAI 2019)Antonio Mora
 
Free Form Evolution for Angry Birds Level Generation
Free Form Evolution for Angry Birds Level GenerationFree Form Evolution for Angry Birds Level Generation
Free Form Evolution for Angry Birds Level GenerationAntonio Mora
 
Ciencia y Videojuegos (ULP 2019)
Ciencia y Videojuegos (ULP 2019)Ciencia y Videojuegos (ULP 2019)
Ciencia y Videojuegos (ULP 2019)Antonio Mora
 
The Evolutionary Race: Improving the Process of Evaluating Car Controllers in...
The Evolutionary Race: Improving the Process of Evaluating Car Controllers in...The Evolutionary Race: Improving the Process of Evaluating Car Controllers in...
The Evolutionary Race: Improving the Process of Evaluating Car Controllers in...Antonio Mora
 
Predicción de Quiebra Financiera de Empresas Mediante Equilibrado de Datos y ...
Predicción de Quiebra Financiera de Empresas Mediante Equilibrado de Datos y ...Predicción de Quiebra Financiera de Empresas Mediante Equilibrado de Datos y ...
Predicción de Quiebra Financiera de Empresas Mediante Equilibrado de Datos y ...Antonio Mora
 
Driving in TORCS using modular fuzzy controllers - Poster - EvoGAMES 2017
Driving in TORCS using modular fuzzy controllers - Poster - EvoGAMES 2017Driving in TORCS using modular fuzzy controllers - Poster - EvoGAMES 2017
Driving in TORCS using modular fuzzy controllers - Poster - EvoGAMES 2017Antonio Mora
 
Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia
Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivenciaSólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia
Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivenciaAntonio Mora
 
Living-UGR: Una aventura gráfica geolocalizada para difundir el patrimonio de...
Living-UGR: Una aventura gráfica geolocalizada para difundir el patrimonio de...Living-UGR: Una aventura gráfica geolocalizada para difundir el patrimonio de...
Living-UGR: Una aventura gráfica geolocalizada para difundir el patrimonio de...Antonio Mora
 
Gamification in Teaching - How to motivate students through games
Gamification in Teaching - How to motivate students through gamesGamification in Teaching - How to motivate students through games
Gamification in Teaching - How to motivate students through gamesAntonio Mora
 

Plus de Antonio Mora (20)

Study on Genetic Algorithm Approaches to Improve an Autonomous Agent for a Fi...
Study on Genetic Algorithm Approaches to Improve an Autonomous Agent for a Fi...Study on Genetic Algorithm Approaches to Improve an Autonomous Agent for a Fi...
Study on Genetic Algorithm Approaches to Improve an Autonomous Agent for a Fi...
 
Optimización Adaptativa basada en Colonias de Hormigas para la Composición de...
Optimización Adaptativa basada en Colonias de Hormigas para la Composición de...Optimización Adaptativa basada en Colonias de Hormigas para la Composición de...
Optimización Adaptativa basada en Colonias de Hormigas para la Composición de...
 
Adaptive Ant Colony Optimization for Service Function Chaining in a Dynamic 5...
Adaptive Ant Colony Optimization for Service Function Chaining in a Dynamic 5...Adaptive Ant Colony Optimization for Service Function Chaining in a Dynamic 5...
Adaptive Ant Colony Optimization for Service Function Chaining in a Dynamic 5...
 
Research in Videogames. (Much) further than just AI
Research in Videogames. (Much) further than just AIResearch in Videogames. (Much) further than just AI
Research in Videogames. (Much) further than just AI
 
GRETIVE: Un Bot Evolutivo para HearthStone basado en Perfiles
GRETIVE: Un Bot Evolutivo para HearthStone basado en PerfilesGRETIVE: Un Bot Evolutivo para HearthStone basado en Perfiles
GRETIVE: Un Bot Evolutivo para HearthStone basado en Perfiles
 
Improving the Performance of MCTS-Based μRTS Agents Through Move Pruning
Improving the Performance of MCTS-Based μRTS Agents Through Move PruningImproving the Performance of MCTS-Based μRTS Agents Through Move Pruning
Improving the Performance of MCTS-Based μRTS Agents Through Move Pruning
 
Testing hybrid computational intelligence algorithms for general game playing...
Testing hybrid computational intelligence algorithms for general game playing...Testing hybrid computational intelligence algorithms for general game playing...
Testing hybrid computational intelligence algorithms for general game playing...
 
Checking the difficulty of evolutionary-generated maps in a N-Body inspired m...
Checking the difficulty of evolutionary-generated maps in a N-Body inspired m...Checking the difficulty of evolutionary-generated maps in a N-Body inspired m...
Checking the difficulty of evolutionary-generated maps in a N-Body inspired m...
 
Applying Ant Colony Optimization for Service Function Chaining in a 5G Networ...
Applying Ant Colony Optimization for Service Function Chaining in a 5G Networ...Applying Ant Colony Optimization for Service Function Chaining in a 5G Networ...
Applying Ant Colony Optimization for Service Function Chaining in a 5G Networ...
 
Investigación en videojuegos. (mucho) Mas allá de la IA
Investigación en videojuegos. (mucho) Mas allá de la IAInvestigación en videojuegos. (mucho) Mas allá de la IA
Investigación en videojuegos. (mucho) Mas allá de la IA
 
Beating uncertainty in racing bot evolution through enhanced exploration and ...
Beating uncertainty in racing bot evolution through enhanced exploration and ...Beating uncertainty in racing bot evolution through enhanced exploration and ...
Beating uncertainty in racing bot evolution through enhanced exploration and ...
 
Inteligencia Computacional en Videojuegos (Meetup GranadAI 2019)
Inteligencia Computacional en Videojuegos (Meetup GranadAI 2019)Inteligencia Computacional en Videojuegos (Meetup GranadAI 2019)
Inteligencia Computacional en Videojuegos (Meetup GranadAI 2019)
 
Free Form Evolution for Angry Birds Level Generation
Free Form Evolution for Angry Birds Level GenerationFree Form Evolution for Angry Birds Level Generation
Free Form Evolution for Angry Birds Level Generation
 
Ciencia y Videojuegos (ULP 2019)
Ciencia y Videojuegos (ULP 2019)Ciencia y Videojuegos (ULP 2019)
Ciencia y Videojuegos (ULP 2019)
 
The Evolutionary Race: Improving the Process of Evaluating Car Controllers in...
The Evolutionary Race: Improving the Process of Evaluating Car Controllers in...The Evolutionary Race: Improving the Process of Evaluating Car Controllers in...
The Evolutionary Race: Improving the Process of Evaluating Car Controllers in...
 
Predicción de Quiebra Financiera de Empresas Mediante Equilibrado de Datos y ...
Predicción de Quiebra Financiera de Empresas Mediante Equilibrado de Datos y ...Predicción de Quiebra Financiera de Empresas Mediante Equilibrado de Datos y ...
Predicción de Quiebra Financiera de Empresas Mediante Equilibrado de Datos y ...
 
Driving in TORCS using modular fuzzy controllers - Poster - EvoGAMES 2017
Driving in TORCS using modular fuzzy controllers - Poster - EvoGAMES 2017Driving in TORCS using modular fuzzy controllers - Poster - EvoGAMES 2017
Driving in TORCS using modular fuzzy controllers - Poster - EvoGAMES 2017
 
Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia
Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivenciaSólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia
Sólo puede quedar uno: Evolución de Bots para RTS basada en supervivencia
 
Living-UGR: Una aventura gráfica geolocalizada para difundir el patrimonio de...
Living-UGR: Una aventura gráfica geolocalizada para difundir el patrimonio de...Living-UGR: Una aventura gráfica geolocalizada para difundir el patrimonio de...
Living-UGR: Una aventura gráfica geolocalizada para difundir el patrimonio de...
 
Gamification in Teaching - How to motivate students through games
Gamification in Teaching - How to motivate students through gamesGamification in Teaching - How to motivate students through games
Gamification in Teaching - How to motivate students through games
 

Dernier

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonAnna Loughnan Colquhoun
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxMalak Abu Hammad
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slidevu2urc
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processorsdebabhi2
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 

Dernier (20)

Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
The Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptxThe Codex of Business Writing Software for Real-World Solutions 2.pptx
The Codex of Business Writing Software for Real-World Solutions 2.pptx
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024Tata AIG General Insurance Company - Insurer Innovation Award 2024
Tata AIG General Insurance Company - Insurer Innovation Award 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 

Designing and Evolving an Unreal Tournament 2004 Expert Bot

  • 1. Designing and Evolving an Unreal Tournament 2004 Expert Bot A.M. Mora, F. Aisa, R. Caballero, P. García-Sánchez, J.J. Merelo, P.A. Castillo, R. Lara-Cabrera International Work-Conference on Artificial Neural Networks
  • 2. INDEX • Unreal (game, environment) • Pogamut tool • Unreal Expert Bot (objectives, features) • Evolutionary Algorithms • Unreal Expert Bot Evolution (description, approaches, results) • E-BOT vs GE-BOT (results, demo) • Conclusions
  • 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 anything in the game even the behaviour of the bots. It uses the language UnrealScript.
  • 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.
  • 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
  • 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.
  • 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.
  • 8. Bot performance UNREAL EXPERT BOT • Expert Bot (E-Bot) outperformed the standard bots in the game (considering the number of frags), even in the maximum difficulty level. • This difficulty level is quite hard for a medium level player. • E-Bot is hard to beat for humans, even for the expert. • Medium level players usually lose against it.
  • 9. 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
  • 10. 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
  • 11. Approaches 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 • Chromosome 143 • Uniform Crossover • Random mutation • 4 Random individuals • Chromosome 26
  • 12. Approach 1: Chromosome 143 - Generic Fitness EXPERT BOT EVOLUTION • Generic Fitness Just considers frags/deads and damage produced/received • Generational scheme • 4-elitism • Chromosome 143 • Uniform Crossover • Random mutation • 4 Random individuals
  • 13. Approach 1. Results EXPERT BOT EVOLUTION • 30 generations • 30 individuals • 1 evaluation (left) • 3 evaluations (right) in order to avoid the noisy nature of the fitness function • 15 minutes per evaluation • 10 days per run (left) • One month (right) • Lightly improvement tendency • Too many oscillations, i.e. noise • 143 genes are too much
  • 14. EXPERT BOT EVOLUTION • Generic Fitness Just considers frags/deads and damage produced/received • Generational scheme • 4-elitism • Uniform Crossover • Random mutation • 4 Random individuals • Chromosome 26 Approach 2: Chromosome 26 - Generic Fitness
  • 15. Approach 2. Results EXPERT BOT EVOLUTION • 50 generations • 30 individuals • 5 minutes per evaluation • Results of 2 different runs • 5 days per run • Again lightly improvement tendency • Too much noise • Too much diversity
  • 16. EXPERT BOT EVOLUTION • 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 Approach 3: Chromosome 26 - Complex Fitness
  • 17. Approach 3. Results EXPERT BOT EVOLUTION • 40 generations • 30 individuals • 5 minutes per evaluation • Stationary scheme to increase the exploitation factor • Results of 2 different runs • 5 days per run • Quite good fitness tendency • Noise still remains, but in a lower factor
  • 18. Numerical results E-BOT vs GE-BOT • Expert Bot (E-Bot) and the best Genetic Expert Bots (GE-BOT) have been fighting in four battles (in two maps). • The average results of these matches are: • The approach with 143 genes per chromosome is defeated • GE-Bot with 26 genes outperforms E-Bot. • The approach with the complex fitness function gets the best results. Due to its lower noisy factor, and the higher exploitation component.
  • 20. CONCLUSIONS • We have designed a human-like Expert Bot (E-Bot) which outperforms the standard Unreal Tournament 2K4 bots in the hardest difficulty. • It is also a hard rival against human players. • We have tested three different approaches for improving this bot by means of Genetic Algorithms. • Too long chromosomes population performs worse than small length one. • These algorithms are affected by a high noisy factor regarding the generic (and easier) fitness function. • We have defined a complex fitness function which performs better, with a softer noisy effect. • The bots obtained after evolution outperform the E-Bot.
  • 21. END THE Questions?!?! Contact: amorag@geneura.ugr.es Source Code: https://github.com/franaisa/ExpertAgent