SlideShare a Scribd company logo
1 of 30
Download to read offline
A.E. Vázquez-Núñez, A.J. Fernández-Leiva, P. García-Sánchez, A.M. Mora
The Leading European Event on Bio-Inspired Computation
15-17 April 2020
▪ General Game Playing
▪ The GVGAI competition
▪ Implemented algorithms (agents)
▪ Experiments and results
▪ Conclusions and future work
2
Introduction
Autonomous agents (bots):
▪ Usual approach
- Creating an agent specialized
on playing a specific game
- It is normally trained to
improve its performance
on that game
4
UnrealBot in Unreal game
A.M. Mora et al.: Evolving Bot AI in UnrealTM.
EvoApplications (1) 2010: 171-180
Autonomous agents (bots):
▪ GGP approach
- Creating an agent able
to play efficiently to several
(previously unknown) games
- Source code cannot be
changed and the agent is not
trained in advance
- It only knows the game rules
5
GarythegameBot
GGP aims to implement a human-like agent/bot, i.e. able
to learn (or to adapt its behaviour) to play different
games.
6
The testbed or problem to solve
Based on a Framework which uses:
▪ (Video) Game Description Language
- Proposed by the Stanford University (GGP project)
- Representation of games
- Each game is composed by a set of rules
- Tree structure
- Human readable
8
Files to define a game:
▪ Game description
- Types of sprites (objects)
- Types of elements in the
map
- Types of interactions
- Winning/Losing rules
9
Sokoban game
Files to define a game:
▪ Level definition
- 2D matrix of symbols
- Positions of elements
10
NES--still-the-best
w  wall
A  avatar
+  key
G  gate
1  enemy
Zelda game
http://www.gvgai.net/
▪ Unknown games
- Game description files are provided to the agent at runtime
- It must interpret them and make its decisions
▪ Objectives
- Expend as much 40 ms per decision of action
- Play until 2000 game ticks or win/loss
- Reach the highest score in every level of every game
11
Evolutionary Algorithms and MCTS
Very successful method in this domain
▪ Tree exploration technique, which analyses the most promising nodes
13
Selection is applied
recursively until a
leaf is reached
One or more
nodes are
created
One random
simulated game
is played
The result of the
game is
backpropagated
Repeat N times
Genetic Algorithm has been considered
▪ Algorithm inspired in the natural evolution of the species
Individuals  Solutions (vectors)
Evaluation  Fitness function (objective)
Selection  Parents to be combined.
Based on the fitness value.
Crossover  Recombination of parents.
Generate offspring.
Mutation  Random change on individuals.
Replacement  Which individuals survive.
14
Repeat N times
8 different agents/algorithms
15
Simple agents
Random
One Step
Ahead
MCTS
MCTS
UCT
MCTS
Greedy
GAs
AG_D7
AG_D10
MCTS
SEQ
MCTS
PAR
Hybrid
▪ Simple
- (Agent) Random  selects a random action from the available ones
- (Agent) One Step Ahead evaluate all available actions in the present
state and select the one with the best result
▪ MCTS
(A node in the tree is a state in the game – children of a node are resulting states
from applying an action – simulation until a certain depth – score for terminal
nodes is a large positive number if win and large negative number if loss)
- (Agent) Greedy  the score of a node is its cumulative score. The best
is chosen in the selection stage.
- (Agent) UCT  selection and propagation methods has been changed
to use Upper Confidence bounds for Trees.
16
▪ Genetic Algorithms
(Individual is a sequence of actions to a given depth from a state - initialized with
random actions - fitness is the score obtained after simulating the actions - binary
tournament selection - uniform crossover - mutation changes an action)
- (Agent) Depth 7 (AG_D7)  individuals are sets of actions up to depth 7
- (Agent) Depth 10 (AG_D10)  individuals are sets of actions up to depth 10
17
Population Crossover
…
…
…
…
1
2
…
N
1 2 … D
Mutation
▪ Hybrid (MCTS + GA)
- Collaborative (SEQ)  the algorithms are run alternatively (sequentially),
for every game step
- Competitive (PAR)  both algorithms are run for the same game step,
(having half time for decision). Best result is chosen
18
(Agent) MCTS_AG_SEQ
(Agent) MCTS_AG_PAR
Testing the agents 20 games
Parameter configuration:
MCTS GA
20
PARAMETER VALUE
Scanning Depth 10
Balancing constant in UCT 𝟐
PARAMETER VALUE
FITNESS_WEIGHT
Depth weighting constant
0.90
SIMULATION_DEPTH
Number of actions per Individuals
7 or 10
POPULATION_ACTION
Size of the population for every action
5
REP_PROBABILITY
Probability of replacing the winner of
a tournament by the offspring instead
of the loser
0.1
MUT_PROB
Mutation Probability
1
𝑆𝐼𝑀𝑈𝐿𝐴𝑇𝐼𝑂𝑁_𝐷𝐸𝑃𝑇𝐻
Simulation:
- 8 agents
- 10 games (CIG15 GVGAI Competition validation set)
- 40 ms per decision (running time for each algorithm)
- 10 matches per game
- GAMES:
(G1) Camel Race, (G2) Dig Dug, (G3) Firestorms,
(G4) Infection, (G5) Firecaster, (G6) Overload,
(G7) Pac-Man, (G8) Seaquest,
(G9) Whack A Mole, (G10) Eggomania
21
Results (average score):
- Hybrid approaches are the best
- MCTS_AG_PAR is the most robust in almost all the games
- AG agents also perform very well (better with smaller depth)22
Best score Second best
Ranking distribution (10 matches x 10 games):
- Hybrid approaches are the best
- MCTS_AG_PAR is the most robust in almost all the games
- AG agents also perform very well (better with higher depth)
23
Statistical tests(MCTS_AG_PAR as control method):
- No statistical difference between the best methods (p-value > 0.05).
24
i Algorithm
z =
(R0-Ri)/SE p-value
Holm/
Hochberg
/Hommel Holland Rom Finner Li
7 Random 3 0,000618 0.007142 0.007300 0.007512 0.007300 0.023529
6
One Step
Ahead 3,286335 0,001015 0.008333 0.008512 0.008764 0.014548 0.023529
5
MCTS
GREEDY 2,327820 0,019921 0.01 0.010206 0.010515 0.021742 0.023529
4 MCTS UCT 1,962672 0,049684 0.0125 0.012741 0.013109 0.028885 0.023529
3 AG_D10 1,962672 0,049684 0.016666 0.016952 0.016666 0.035975 0.023529
2 AG_D7 1,049801 0,293809 0.025 0.025320 0.025 0.043013 0.023529
1
MCTS_AG_
SEQ 0,593366 0,552936 0.05 0.050000 0.05 0.050000 0.05
Simulation:
- 8 agents
- 10 games (CIG14 GVGAI Competition validation set)
- 40 ms per decision (running time for each algorithm)
- 10 matches per game
- GAMES:
(G1) Alien, (G2) Boulder Dash, (G3) Butterflies,
(G4) Chase, (G5) Frogs, (G6) Missile Command,
(G7) Portals, (G8) Sokoban,
(G9) Survive Zombies, (G10) Zelda
25
Results (best score):
- More variability on the results
- Hybrid methods are still the best overall
- MCTS_AG_PAR seems a bit better
- AG agents still perform very well (better with smaller depth)26
Best score Second best
Random
One Step
Ahead
MCTS
UCT
MCTS
GREEDY
AG
D7
AG
D10
MCTS
AG SEQ
MCTS
AG PAR
G1 66 45 74 78 80 80 80 84
G2 3 2 22 6 7 5 26 22
G3 52 26 72 16 62 74 64 40
G4 7 1 7 3 7 7 7 7
G5 0.2 1 1 0.2 1 1 1 1
G6 0.1 0.3 2 2 8 5 2 5
G7 0 0 0 0 1 1 1 1
G8 0 0 0 0 1 0 0 1
G9 16 4 32 10 34 34 45 43
G10 7 1 4 6 8 8 8 8
Ranking distribution (10 matches x 10 games):
27
And Future Work
- 8 different GGP agents have been implemented
- 20 different games from GVGAI Competition have been used for
testing and comparing the agents
- Hybrid approaches (MCTS+GAs) have obtained the best results
- Robust results, however there is not an approach good for all the
games
▪ Future Work
- Try to improve MCST+GA agents (better operators in GA)
- Investigate other hybrid approaches with MCTS
- Compare with other agents from the state of the art
29
Questions?
30
eduardo.vazquezn@gmail.com
afdez@lcc.uma.es
pablo.garciasanchez@uca.es
amorag@ugr.es Template by
SlidesCarnivalpixfans.com

More Related Content

Similar to The Leading European Event on Bio-Inspired Computation

Alpha go 16110226_김영우
Alpha go 16110226_김영우Alpha go 16110226_김영우
Alpha go 16110226_김영우영우 김
 
AlphaGo Zero: Mastering the Game of Go Without Human Knowledge
AlphaGo Zero: Mastering the Game of Go Without Human KnowledgeAlphaGo Zero: Mastering the Game of Go Without Human Knowledge
AlphaGo Zero: Mastering the Game of Go Without Human KnowledgeJoonhyung Lee
 
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
 
GAMING BOT USING REINFORCEMENT LEARNING
GAMING BOT USING REINFORCEMENT LEARNINGGAMING BOT USING REINFORCEMENT LEARNING
GAMING BOT USING REINFORCEMENT LEARNINGIRJET Journal
 
Chance detection in football broadcasts
Chance detection in football broadcastsChance detection in football broadcasts
Chance detection in football broadcastsAuke vanderSchaar
 
An analysis of minimax search and endgame databases in evolving awale game pl...
An analysis of minimax search and endgame databases in evolving awale game pl...An analysis of minimax search and endgame databases in evolving awale game pl...
An analysis of minimax search and endgame databases in evolving awale game pl...csandit
 
AN ANALYSIS OF MINIMAX SEARCH AND ENDGAME DATABASES IN EVOLVING AWALE GAME PL...
AN ANALYSIS OF MINIMAX SEARCH AND ENDGAME DATABASES IN EVOLVING AWALE GAME PL...AN ANALYSIS OF MINIMAX SEARCH AND ENDGAME DATABASES IN EVOLVING AWALE GAME PL...
AN ANALYSIS OF MINIMAX SEARCH AND ENDGAME DATABASES IN EVOLVING AWALE GAME PL...cscpconf
 
Online learning & adaptive game playing
Online learning & adaptive game playingOnline learning & adaptive game playing
Online learning & adaptive game playingSaeid Ghafouri
 
Mastering Multiplayer Stage3d and AIR game development for mobile devices
Mastering Multiplayer Stage3d and AIR game development for mobile devicesMastering Multiplayer Stage3d and AIR game development for mobile devices
Mastering Multiplayer Stage3d and AIR game development for mobile devicesJean-Philippe Doiron
 
Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Jun Okumura
 
Introduction to Genetic Algorithms 2014
Introduction to Genetic Algorithms 2014Introduction to Genetic Algorithms 2014
Introduction to Genetic Algorithms 2014Aleksander Stensby
 
2017 Fighting Game AI Competition
2017 Fighting Game AI Competition2017 Fighting Game AI Competition
2017 Fighting Game AI Competitionftgaic
 
04 2 machine evolution
04 2 machine evolution04 2 machine evolution
04 2 machine evolutionTianlu Wang
 
How to generate game character behaviors using AI and ML - Unite Copenhagen
How to generate game character behaviors using AI and ML - Unite CopenhagenHow to generate game character behaviors using AI and ML - Unite Copenhagen
How to generate game character behaviors using AI and ML - Unite CopenhagenUnity Technologies
 
Using Game Learning Analytics to Improve the Design, Evaluation and Deploymen...
Using Game Learning Analytics to Improve the Design, Evaluation and Deploymen...Using Game Learning Analytics to Improve the Design, Evaluation and Deploymen...
Using Game Learning Analytics to Improve the Design, Evaluation and Deploymen...Baltasar Fernández-Manjón
 
How DeepMind Mastered The Game Of Go
How DeepMind Mastered The Game Of GoHow DeepMind Mastered The Game Of Go
How DeepMind Mastered The Game Of GoTim Riser
 
An evolutionary tic tac toe player ccit2012
An evolutionary tic tac toe player ccit2012An evolutionary tic tac toe player ccit2012
An evolutionary tic tac toe player ccit2012Belal Al-Khateeb
 

Similar to The Leading European Event on Bio-Inspired Computation (20)

Alpha go 16110226_김영우
Alpha go 16110226_김영우Alpha go 16110226_김영우
Alpha go 16110226_김영우
 
AlphaGo Zero: Mastering the Game of Go Without Human Knowledge
AlphaGo Zero: Mastering the Game of Go Without Human KnowledgeAlphaGo Zero: Mastering the Game of Go Without Human Knowledge
AlphaGo Zero: Mastering the Game of Go Without Human Knowledge
 
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...
 
Ants iwann jcc
Ants iwann jccAnts iwann jcc
Ants iwann jcc
 
Evo 2015 - it's time to stop
Evo  2015 - it's time to stopEvo  2015 - it's time to stop
Evo 2015 - it's time to stop
 
GAMING BOT USING REINFORCEMENT LEARNING
GAMING BOT USING REINFORCEMENT LEARNINGGAMING BOT USING REINFORCEMENT LEARNING
GAMING BOT USING REINFORCEMENT LEARNING
 
Chance detection in football broadcasts
Chance detection in football broadcastsChance detection in football broadcasts
Chance detection in football broadcasts
 
An analysis of minimax search and endgame databases in evolving awale game pl...
An analysis of minimax search and endgame databases in evolving awale game pl...An analysis of minimax search and endgame databases in evolving awale game pl...
An analysis of minimax search and endgame databases in evolving awale game pl...
 
AN ANALYSIS OF MINIMAX SEARCH AND ENDGAME DATABASES IN EVOLVING AWALE GAME PL...
AN ANALYSIS OF MINIMAX SEARCH AND ENDGAME DATABASES IN EVOLVING AWALE GAME PL...AN ANALYSIS OF MINIMAX SEARCH AND ENDGAME DATABASES IN EVOLVING AWALE GAME PL...
AN ANALYSIS OF MINIMAX SEARCH AND ENDGAME DATABASES IN EVOLVING AWALE GAME PL...
 
Online learning & adaptive game playing
Online learning & adaptive game playingOnline learning & adaptive game playing
Online learning & adaptive game playing
 
Mastering Multiplayer Stage3d and AIR game development for mobile devices
Mastering Multiplayer Stage3d and AIR game development for mobile devicesMastering Multiplayer Stage3d and AIR game development for mobile devices
Mastering Multiplayer Stage3d and AIR game development for mobile devices
 
Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)Applying AI in Games (GDC2019)
Applying AI in Games (GDC2019)
 
Introduction to Genetic Algorithms 2014
Introduction to Genetic Algorithms 2014Introduction to Genetic Algorithms 2014
Introduction to Genetic Algorithms 2014
 
Genetic Programming in Python
Genetic Programming in PythonGenetic Programming in Python
Genetic Programming in Python
 
2017 Fighting Game AI Competition
2017 Fighting Game AI Competition2017 Fighting Game AI Competition
2017 Fighting Game AI Competition
 
04 2 machine evolution
04 2 machine evolution04 2 machine evolution
04 2 machine evolution
 
How to generate game character behaviors using AI and ML - Unite Copenhagen
How to generate game character behaviors using AI and ML - Unite CopenhagenHow to generate game character behaviors using AI and ML - Unite Copenhagen
How to generate game character behaviors using AI and ML - Unite Copenhagen
 
Using Game Learning Analytics to Improve the Design, Evaluation and Deploymen...
Using Game Learning Analytics to Improve the Design, Evaluation and Deploymen...Using Game Learning Analytics to Improve the Design, Evaluation and Deploymen...
Using Game Learning Analytics to Improve the Design, Evaluation and Deploymen...
 
How DeepMind Mastered The Game Of Go
How DeepMind Mastered The Game Of GoHow DeepMind Mastered The Game Of Go
How DeepMind Mastered The Game Of Go
 
An evolutionary tic tac toe player ccit2012
An evolutionary tic tac toe player ccit2012An evolutionary tic tac toe player ccit2012
An evolutionary tic tac toe player ccit2012
 

More from 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
 
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
 
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
 
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
 
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]Antonio Mora
 
Ciencia y Videojuegos (v2)
Ciencia y Videojuegos (v2)Ciencia y Videojuegos (v2)
Ciencia y Videojuegos (v2)Antonio Mora
 
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
 
MUSES: A Corporate User-Centric System which Applies Computational Intelligen...
MUSES: A Corporate User-Centric System which Applies Computational Intelligen...MUSES: A Corporate User-Centric System which Applies Computational Intelligen...
MUSES: A Corporate User-Centric System which Applies Computational Intelligen...Antonio Mora
 
Publicación de imágenes en la web
Publicación de imágenes en la webPublicación de imágenes en la web
Publicación de imágenes en la webAntonio Mora
 

More from Antonio Mora (20)

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
 
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
 
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)
 
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
 
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
Ciencia y videojuegos (versión Extracción de Información) [UCA 05/2015]
 
Ciencia y Videojuegos (v2)
Ciencia y Videojuegos (v2)Ciencia y Videojuegos (v2)
Ciencia y Videojuegos (v2)
 
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 ...
 
MUSES: A Corporate User-Centric System which Applies Computational Intelligen...
MUSES: A Corporate User-Centric System which Applies Computational Intelligen...MUSES: A Corporate User-Centric System which Applies Computational Intelligen...
MUSES: A Corporate User-Centric System which Applies Computational Intelligen...
 
Publicación de imágenes en la web
Publicación de imágenes en la webPublicación de imágenes en la web
Publicación de imágenes en la web
 

Recently uploaded

Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfPrecisely
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteDianaGray10
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clashcharlottematthew16
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024BookNet Canada
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024Lonnie McRorey
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .Alan Dix
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.Curtis Poe
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 3652toLead Limited
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii SoldatenkoFwdays
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupFlorian Wilhelm
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Manik S Magar
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brandgvaughan
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Scott Keck-Warren
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxhariprasad279825
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenHervé Boutemy
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionDilum Bandara
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity PlanDatabarracks
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024Stephanie Beckett
 

Recently uploaded (20)

Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdfHyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
Hyperautomation and AI/ML: A Strategy for Digital Transformation Success.pdf
 
Take control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test SuiteTake control of your SAP testing with UiPath Test Suite
Take control of your SAP testing with UiPath Test Suite
 
Powerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time ClashPowerpoint exploring the locations used in television show Time Clash
Powerpoint exploring the locations used in television show Time Clash
 
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
Transcript: New from BookNet Canada for 2024: BNC CataList - Tech Forum 2024
 
TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024TeamStation AI System Report LATAM IT Salaries 2024
TeamStation AI System Report LATAM IT Salaries 2024
 
From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .From Family Reminiscence to Scholarly Archive .
From Family Reminiscence to Scholarly Archive .
 
How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.How AI, OpenAI, and ChatGPT impact business and software.
How AI, OpenAI, and ChatGPT impact business and software.
 
Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365Ensuring Technical Readiness For Copilot in Microsoft 365
Ensuring Technical Readiness For Copilot in Microsoft 365
 
"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko"Debugging python applications inside k8s environment", Andrii Soldatenko
"Debugging python applications inside k8s environment", Andrii Soldatenko
 
Streamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project SetupStreamlining Python Development: A Guide to a Modern Project Setup
Streamlining Python Development: A Guide to a Modern Project Setup
 
Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!Anypoint Exchange: It’s Not Just a Repo!
Anypoint Exchange: It’s Not Just a Repo!
 
WordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your BrandWordPress Websites for Engineers: Elevate Your Brand
WordPress Websites for Engineers: Elevate Your Brand
 
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data PrivacyTrustArc Webinar - How to Build Consumer Trust Through Data Privacy
TrustArc Webinar - How to Build Consumer Trust Through Data Privacy
 
Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024Advanced Test Driven-Development @ php[tek] 2024
Advanced Test Driven-Development @ php[tek] 2024
 
Artificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptxArtificial intelligence in cctv survelliance.pptx
Artificial intelligence in cctv survelliance.pptx
 
DevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache MavenDevoxxFR 2024 Reproducible Builds with Apache Maven
DevoxxFR 2024 Reproducible Builds with Apache Maven
 
DMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special EditionDMCC Future of Trade Web3 - Special Edition
DMCC Future of Trade Web3 - Special Edition
 
Advanced Computer Architecture – An Introduction
Advanced Computer Architecture – An IntroductionAdvanced Computer Architecture – An Introduction
Advanced Computer Architecture – An Introduction
 
How to write a Business Continuity Plan
How to write a Business Continuity PlanHow to write a Business Continuity Plan
How to write a Business Continuity Plan
 
What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024What's New in Teams Calling, Meetings and Devices March 2024
What's New in Teams Calling, Meetings and Devices March 2024
 

The Leading European Event on Bio-Inspired Computation

  • 1. A.E. Vázquez-Núñez, A.J. Fernández-Leiva, P. García-Sánchez, A.M. Mora The Leading European Event on Bio-Inspired Computation 15-17 April 2020
  • 2. ▪ General Game Playing ▪ The GVGAI competition ▪ Implemented algorithms (agents) ▪ Experiments and results ▪ Conclusions and future work 2
  • 4. Autonomous agents (bots): ▪ Usual approach - Creating an agent specialized on playing a specific game - It is normally trained to improve its performance on that game 4 UnrealBot in Unreal game A.M. Mora et al.: Evolving Bot AI in UnrealTM. EvoApplications (1) 2010: 171-180
  • 5. Autonomous agents (bots): ▪ GGP approach - Creating an agent able to play efficiently to several (previously unknown) games - Source code cannot be changed and the agent is not trained in advance - It only knows the game rules 5 GarythegameBot
  • 6. GGP aims to implement a human-like agent/bot, i.e. able to learn (or to adapt its behaviour) to play different games. 6
  • 7. The testbed or problem to solve
  • 8. Based on a Framework which uses: ▪ (Video) Game Description Language - Proposed by the Stanford University (GGP project) - Representation of games - Each game is composed by a set of rules - Tree structure - Human readable 8
  • 9. Files to define a game: ▪ Game description - Types of sprites (objects) - Types of elements in the map - Types of interactions - Winning/Losing rules 9 Sokoban game
  • 10. Files to define a game: ▪ Level definition - 2D matrix of symbols - Positions of elements 10 NES--still-the-best w  wall A  avatar +  key G  gate 1  enemy Zelda game
  • 11. http://www.gvgai.net/ ▪ Unknown games - Game description files are provided to the agent at runtime - It must interpret them and make its decisions ▪ Objectives - Expend as much 40 ms per decision of action - Play until 2000 game ticks or win/loss - Reach the highest score in every level of every game 11
  • 13. Very successful method in this domain ▪ Tree exploration technique, which analyses the most promising nodes 13 Selection is applied recursively until a leaf is reached One or more nodes are created One random simulated game is played The result of the game is backpropagated Repeat N times
  • 14. Genetic Algorithm has been considered ▪ Algorithm inspired in the natural evolution of the species Individuals  Solutions (vectors) Evaluation  Fitness function (objective) Selection  Parents to be combined. Based on the fitness value. Crossover  Recombination of parents. Generate offspring. Mutation  Random change on individuals. Replacement  Which individuals survive. 14 Repeat N times
  • 15. 8 different agents/algorithms 15 Simple agents Random One Step Ahead MCTS MCTS UCT MCTS Greedy GAs AG_D7 AG_D10 MCTS SEQ MCTS PAR Hybrid
  • 16. ▪ Simple - (Agent) Random  selects a random action from the available ones - (Agent) One Step Ahead evaluate all available actions in the present state and select the one with the best result ▪ MCTS (A node in the tree is a state in the game – children of a node are resulting states from applying an action – simulation until a certain depth – score for terminal nodes is a large positive number if win and large negative number if loss) - (Agent) Greedy  the score of a node is its cumulative score. The best is chosen in the selection stage. - (Agent) UCT  selection and propagation methods has been changed to use Upper Confidence bounds for Trees. 16
  • 17. ▪ Genetic Algorithms (Individual is a sequence of actions to a given depth from a state - initialized with random actions - fitness is the score obtained after simulating the actions - binary tournament selection - uniform crossover - mutation changes an action) - (Agent) Depth 7 (AG_D7)  individuals are sets of actions up to depth 7 - (Agent) Depth 10 (AG_D10)  individuals are sets of actions up to depth 10 17 Population Crossover … … … … 1 2 … N 1 2 … D Mutation
  • 18. ▪ Hybrid (MCTS + GA) - Collaborative (SEQ)  the algorithms are run alternatively (sequentially), for every game step - Competitive (PAR)  both algorithms are run for the same game step, (having half time for decision). Best result is chosen 18 (Agent) MCTS_AG_SEQ (Agent) MCTS_AG_PAR
  • 19. Testing the agents 20 games
  • 20. Parameter configuration: MCTS GA 20 PARAMETER VALUE Scanning Depth 10 Balancing constant in UCT 𝟐 PARAMETER VALUE FITNESS_WEIGHT Depth weighting constant 0.90 SIMULATION_DEPTH Number of actions per Individuals 7 or 10 POPULATION_ACTION Size of the population for every action 5 REP_PROBABILITY Probability of replacing the winner of a tournament by the offspring instead of the loser 0.1 MUT_PROB Mutation Probability 1 𝑆𝐼𝑀𝑈𝐿𝐴𝑇𝐼𝑂𝑁_𝐷𝐸𝑃𝑇𝐻
  • 21. Simulation: - 8 agents - 10 games (CIG15 GVGAI Competition validation set) - 40 ms per decision (running time for each algorithm) - 10 matches per game - GAMES: (G1) Camel Race, (G2) Dig Dug, (G3) Firestorms, (G4) Infection, (G5) Firecaster, (G6) Overload, (G7) Pac-Man, (G8) Seaquest, (G9) Whack A Mole, (G10) Eggomania 21
  • 22. Results (average score): - Hybrid approaches are the best - MCTS_AG_PAR is the most robust in almost all the games - AG agents also perform very well (better with smaller depth)22 Best score Second best
  • 23. Ranking distribution (10 matches x 10 games): - Hybrid approaches are the best - MCTS_AG_PAR is the most robust in almost all the games - AG agents also perform very well (better with higher depth) 23
  • 24. Statistical tests(MCTS_AG_PAR as control method): - No statistical difference between the best methods (p-value > 0.05). 24 i Algorithm z = (R0-Ri)/SE p-value Holm/ Hochberg /Hommel Holland Rom Finner Li 7 Random 3 0,000618 0.007142 0.007300 0.007512 0.007300 0.023529 6 One Step Ahead 3,286335 0,001015 0.008333 0.008512 0.008764 0.014548 0.023529 5 MCTS GREEDY 2,327820 0,019921 0.01 0.010206 0.010515 0.021742 0.023529 4 MCTS UCT 1,962672 0,049684 0.0125 0.012741 0.013109 0.028885 0.023529 3 AG_D10 1,962672 0,049684 0.016666 0.016952 0.016666 0.035975 0.023529 2 AG_D7 1,049801 0,293809 0.025 0.025320 0.025 0.043013 0.023529 1 MCTS_AG_ SEQ 0,593366 0,552936 0.05 0.050000 0.05 0.050000 0.05
  • 25. Simulation: - 8 agents - 10 games (CIG14 GVGAI Competition validation set) - 40 ms per decision (running time for each algorithm) - 10 matches per game - GAMES: (G1) Alien, (G2) Boulder Dash, (G3) Butterflies, (G4) Chase, (G5) Frogs, (G6) Missile Command, (G7) Portals, (G8) Sokoban, (G9) Survive Zombies, (G10) Zelda 25
  • 26. Results (best score): - More variability on the results - Hybrid methods are still the best overall - MCTS_AG_PAR seems a bit better - AG agents still perform very well (better with smaller depth)26 Best score Second best Random One Step Ahead MCTS UCT MCTS GREEDY AG D7 AG D10 MCTS AG SEQ MCTS AG PAR G1 66 45 74 78 80 80 80 84 G2 3 2 22 6 7 5 26 22 G3 52 26 72 16 62 74 64 40 G4 7 1 7 3 7 7 7 7 G5 0.2 1 1 0.2 1 1 1 1 G6 0.1 0.3 2 2 8 5 2 5 G7 0 0 0 0 1 1 1 1 G8 0 0 0 0 1 0 0 1 G9 16 4 32 10 34 34 45 43 G10 7 1 4 6 8 8 8 8
  • 27. Ranking distribution (10 matches x 10 games): 27
  • 29. - 8 different GGP agents have been implemented - 20 different games from GVGAI Competition have been used for testing and comparing the agents - Hybrid approaches (MCTS+GAs) have obtained the best results - Robust results, however there is not an approach good for all the games ▪ Future Work - Try to improve MCST+GA agents (better operators in GA) - Investigate other hybrid approaches with MCTS - Compare with other agents from the state of the art 29