SlideShare a Scribd company logo
1 of 18
Download to read offline
A Procedural Balanced Map Generator with Self-Adaptive
Complexity for the Real-Time Strategy Game Planet Wars
Ra´ul Lara-Cabrera,
Carlos Cotta,
Antonio J. Fern´andez-Leiva
Dept. Lenguajes y Ciencias de la
Computaci´on, University of M´alaga,
SPAIN
http://anyself.wordpress.com
http://dnemesis.lcc.uma.es
Introduction
Procedural Content Generation
Creating game content automatically, through algorithmic means.
Maps, levels, dialogues, characters, rule-sets, weapons...
Benefits
Reduced memory consumption
Saving in the expense of manually creating game content
Endless or infinite games
2 / 16
PCG in the game industry
Borderlands (Gearbox, 2009)
Uses a PCG system to create
weapons, enemies and items
with different properties.
Minecraft (Mojang, 2011)
Sandbox-building game with an
infinite map which is expanded
dynamically.
3 / 16
Planet Wars
Real-time strategy (RTS) game based on Galcon and used in the
Google AI Challenge 2010
Its objective is to take over all the planets on the map or eliminate
all of your opponents ships
4 / 16
Aims and Scope
1st Goal – Content Generation
Use an evolutionary algorithm to design maps for Planet Wars leading
to balanced games.
Balance is used here as a proxy for attractiveness. Balanced games:
are more interesting for all kind of players
increase the motivation of players
increase the duration of the game
2nd Goal – Self-Adaptation
Explore self-adaptation at different levels in this context.
5 / 16
Maps
Maps are plain text files
Each line represents a
planet
Planet’s attributes:
X and Y position
Size (growth rate)
Initial number of ships
Owner
6 / 16
Individuals
...
Planet
x (real)
y (real)
size (integer)
number of ships (integer)
x,y mutation steps (real)
size, ships mutation steps (real)
Array of planets (variable length)
7 / 16
Objective function
fitness =
1
Nm
Nm
i=1
Ki · ti
¯Pi + ¯Si + 1
2
8 / 16
Objective function
fitness =
1
Nm
Nm
i=1
Ki · ti
¯Pi + ¯Si + 1
2
Nm = number of matches
Ki = percentage of occupied planets
ti = number of turns
8 / 16
Objective function
fitness =
1
Nm
Nm
i=1
Ki · ti
¯Pi + ¯Si + 1
2
Nm = number of matches
Ki = percentage of occupied planets
ti = number of turns
¯Pi =
ti
j=1 P
(1)
ij − P
(2)
ij
ti
, (difference between number of planets)
¯Si =
ti
j=1 S
(1)
ij − S
(2)
ij
ti
, (difference between number of ships)
8 / 16
Breeding mechanism
Mutation
Gaussian perturbation (real)
σi = σi · eτ ·N(0,1)+τ·Ni (0,1)
xi = xi + σi · Ni (0, 1)
Geometrically distributed perturbation (integers)
ςi = max(1, ςi · eτ·N(0,1)+τ ·N(0,1)
)
ψi = 1 − (ςi /m)

1 + 1 +
ςi
m
2


−1
zi = zi +
ln(1 − U(0, 1))
ln(1 − ψi )
−
ln(1 − U(0, 1))
ln(1 − ψi )
9 / 16
Breeding mechanism
Recombination
“cut and splice”
Other parameters
(µ + λ) generational scheme with µ = 10 and λ = 100
Binary tournament selection
10 / 16
Experiments
Two experiments (10 executions each):
ES with self-adapting strategy for mutation steps and genome length
ES with self-adapting strategy for mutation steps and fixed genome
length (23 planets)
100 generations each execution
Maximum game length: 400 turns
Evaluation: three bots and three matches on each map
Google AI Challenge 2010 participants
Ranked in the top 100 out of 4600
Having their source code available
11 / 16
Results: fitness
0
50000
100000
150000
0 2500 5000 7500 10000
evaluations
fitness
12 / 16
Results: individual size
16
18
20
22
24
26
0 2500 5000 7500 10000
evaluations
bestindividualsize
13 / 16
Results: maps
14 / 16
Conclusions
We have introduced a simple procedural map generator for a RTS
game that is capable of generating balanced maps for two player
games
The algorithm with self-adapted number of planets has a better
performance than the algorithm with this value fixed
High balanced maps tend to have around 17 planets
Future work:
Interactivity
Pro-activity
Deal with other maps’ features, such as dynamism and aesthetics
15 / 16
Thanks for your attention!
AnySelf Project
Please find us in Facebook
http://facebook.com/AnySelfProject
and in Twitter
@anyselfproject
16 / 16

More Related Content

Similar to A Procedural Balanced Map Generator with Self-Adaptive Complexity for the Real-Time Strategy Game Planet Wars

Evolving Balanced Maps for Planet Wars Using Self-Adaptive EAs
Evolving Balanced Maps for Planet Wars Using Self-Adaptive EAsEvolving Balanced Maps for Planet Wars Using Self-Adaptive EAs
Evolving Balanced Maps for Planet Wars Using Self-Adaptive EAsCarlos Cotta
 
Computational Information Geometry on Matrix Manifolds (ICTP 2013)
Computational Information Geometry on Matrix Manifolds (ICTP 2013)Computational Information Geometry on Matrix Manifolds (ICTP 2013)
Computational Information Geometry on Matrix Manifolds (ICTP 2013)Frank Nielsen
 
対応点を用いないローリングシャッタ歪み補正と映像安定化論文
対応点を用いないローリングシャッタ歪み補正と映像安定化論文対応点を用いないローリングシャッタ歪み補正と映像安定化論文
対応点を用いないローリングシャッタ歪み補正と映像安定化論文doboncho
 
Pattern learning and recognition on statistical manifolds: An information-geo...
Pattern learning and recognition on statistical manifolds: An information-geo...Pattern learning and recognition on statistical manifolds: An information-geo...
Pattern learning and recognition on statistical manifolds: An information-geo...Frank Nielsen
 
Generalization of Compositons of Cellular Automata on Groups
Generalization of Compositons of Cellular Automata on GroupsGeneralization of Compositons of Cellular Automata on Groups
Generalization of Compositons of Cellular Automata on GroupsYoshihiro Mizoguchi
 
H2O World - Generalized Low Rank Models - Madeleine Udell
H2O World - Generalized Low Rank Models - Madeleine UdellH2O World - Generalized Low Rank Models - Madeleine Udell
H2O World - Generalized Low Rank Models - Madeleine UdellSri Ambati
 

Similar to A Procedural Balanced Map Generator with Self-Adaptive Complexity for the Real-Time Strategy Game Planet Wars (9)

Evolving Balanced Maps for Planet Wars Using Self-Adaptive EAs
Evolving Balanced Maps for Planet Wars Using Self-Adaptive EAsEvolving Balanced Maps for Planet Wars Using Self-Adaptive EAs
Evolving Balanced Maps for Planet Wars Using Self-Adaptive EAs
 
Computational Information Geometry on Matrix Manifolds (ICTP 2013)
Computational Information Geometry on Matrix Manifolds (ICTP 2013)Computational Information Geometry on Matrix Manifolds (ICTP 2013)
Computational Information Geometry on Matrix Manifolds (ICTP 2013)
 
Smart Multitask Bregman Clustering
Smart Multitask Bregman ClusteringSmart Multitask Bregman Clustering
Smart Multitask Bregman Clustering
 
対応点を用いないローリングシャッタ歪み補正と映像安定化論文
対応点を用いないローリングシャッタ歪み補正と映像安定化論文対応点を用いないローリングシャッタ歪み補正と映像安定化論文
対応点を用いないローリングシャッタ歪み補正と映像安定化論文
 
Pattern learning and recognition on statistical manifolds: An information-geo...
Pattern learning and recognition on statistical manifolds: An information-geo...Pattern learning and recognition on statistical manifolds: An information-geo...
Pattern learning and recognition on statistical manifolds: An information-geo...
 
Generalization of Compositons of Cellular Automata on Groups
Generalization of Compositons of Cellular Automata on GroupsGeneralization of Compositons of Cellular Automata on Groups
Generalization of Compositons of Cellular Automata on Groups
 
H2O World - Generalized Low Rank Models - Madeleine Udell
H2O World - Generalized Low Rank Models - Madeleine UdellH2O World - Generalized Low Rank Models - Madeleine Udell
H2O World - Generalized Low Rank Models - Madeleine Udell
 
MUMS Opening Workshop - An Overview of Reduced-Order Models and Emulators (ED...
MUMS Opening Workshop - An Overview of Reduced-Order Models and Emulators (ED...MUMS Opening Workshop - An Overview of Reduced-Order Models and Emulators (ED...
MUMS Opening Workshop - An Overview of Reduced-Order Models and Emulators (ED...
 
MCQMC 2016 Tutorial
MCQMC 2016 TutorialMCQMC 2016 Tutorial
MCQMC 2016 Tutorial
 

More from keldon_spain

Generación automática de contenido para juegos de estrategia en tiempo real
Generación automática de contenido para juegos de estrategia en tiempo realGeneración automática de contenido para juegos de estrategia en tiempo real
Generación automática de contenido para juegos de estrategia en tiempo realkeldon_spain
 
Optimizacion en videojuegos: retos para la comunidad científica
Optimizacion en videojuegos: retos para la comunidad científicaOptimizacion en videojuegos: retos para la comunidad científica
Optimizacion en videojuegos: retos para la comunidad científicakeldon_spain
 
Generación automática de contenido en 5 minutos
Generación automática de contenido en 5 minutosGeneración automática de contenido en 5 minutos
Generación automática de contenido en 5 minutoskeldon_spain
 
Present car racing_setup
Present car racing_setupPresent car racing_setup
Present car racing_setupkeldon_spain
 
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
 
Procedural map generation for a RTS game
Procedural map generation for a RTS gameProcedural map generation for a RTS game
Procedural map generation for a RTS gamekeldon_spain
 

More from keldon_spain (6)

Generación automática de contenido para juegos de estrategia en tiempo real
Generación automática de contenido para juegos de estrategia en tiempo realGeneración automática de contenido para juegos de estrategia en tiempo real
Generación automática de contenido para juegos de estrategia en tiempo real
 
Optimizacion en videojuegos: retos para la comunidad científica
Optimizacion en videojuegos: retos para la comunidad científicaOptimizacion en videojuegos: retos para la comunidad científica
Optimizacion en videojuegos: retos para la comunidad científica
 
Generación automática de contenido en 5 minutos
Generación automática de contenido en 5 minutosGeneración automática de contenido en 5 minutos
Generación automática de contenido en 5 minutos
 
Present car racing_setup
Present car racing_setupPresent car racing_setup
Present car racing_setup
 
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
 
Procedural map generation for a RTS game
Procedural map generation for a RTS gameProcedural map generation for a RTS game
Procedural map generation for a RTS game
 

Recently uploaded

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhisoniya singh
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptxLBM Solutions
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Patryk Bandurski
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 3652toLead Limited
 
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
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024Scott Keck-Warren
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAndikSusilo4
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsMemoori
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...HostedbyConfluent
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationMichael W. Hawkins
 

Recently uploaded (20)

Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | DelhiFULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
FULL ENJOY 🔝 8264348440 🔝 Call Girls in Diplomatic Enclave | Delhi
 
Key Features Of Token Development (1).pptx
Key  Features Of Token  Development (1).pptxKey  Features Of Token  Development (1).pptx
Key Features Of Token Development (1).pptx
 
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
Integration and Automation in Practice: CI/CD in Mule Integration and Automat...
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
Tech-Forward - Achieving Business Readiness For Copilot in Microsoft 365
 
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
 
SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024SQL Database Design For Developers at php[tek] 2024
SQL Database Design For Developers at php[tek] 2024
 
Azure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & ApplicationAzure Monitor & Application Insight to monitor Infrastructure & Application
Azure Monitor & Application Insight to monitor Infrastructure & Application
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
AI as an Interface for Commercial Buildings
AI as an Interface for Commercial BuildingsAI as an Interface for Commercial Buildings
AI as an Interface for Commercial Buildings
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
Transforming Data Streams with Kafka Connect: An Introduction to Single Messa...
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Pigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food ManufacturingPigging Solutions in Pet Food Manufacturing
Pigging Solutions in Pet Food Manufacturing
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 

A Procedural Balanced Map Generator with Self-Adaptive Complexity for the Real-Time Strategy Game Planet Wars

  • 1. A Procedural Balanced Map Generator with Self-Adaptive Complexity for the Real-Time Strategy Game Planet Wars Ra´ul Lara-Cabrera, Carlos Cotta, Antonio J. Fern´andez-Leiva Dept. Lenguajes y Ciencias de la Computaci´on, University of M´alaga, SPAIN http://anyself.wordpress.com http://dnemesis.lcc.uma.es
  • 2. Introduction Procedural Content Generation Creating game content automatically, through algorithmic means. Maps, levels, dialogues, characters, rule-sets, weapons... Benefits Reduced memory consumption Saving in the expense of manually creating game content Endless or infinite games 2 / 16
  • 3. PCG in the game industry Borderlands (Gearbox, 2009) Uses a PCG system to create weapons, enemies and items with different properties. Minecraft (Mojang, 2011) Sandbox-building game with an infinite map which is expanded dynamically. 3 / 16
  • 4. Planet Wars Real-time strategy (RTS) game based on Galcon and used in the Google AI Challenge 2010 Its objective is to take over all the planets on the map or eliminate all of your opponents ships 4 / 16
  • 5. Aims and Scope 1st Goal – Content Generation Use an evolutionary algorithm to design maps for Planet Wars leading to balanced games. Balance is used here as a proxy for attractiveness. Balanced games: are more interesting for all kind of players increase the motivation of players increase the duration of the game 2nd Goal – Self-Adaptation Explore self-adaptation at different levels in this context. 5 / 16
  • 6. Maps Maps are plain text files Each line represents a planet Planet’s attributes: X and Y position Size (growth rate) Initial number of ships Owner 6 / 16
  • 7. Individuals ... Planet x (real) y (real) size (integer) number of ships (integer) x,y mutation steps (real) size, ships mutation steps (real) Array of planets (variable length) 7 / 16
  • 8. Objective function fitness = 1 Nm Nm i=1 Ki · ti ¯Pi + ¯Si + 1 2 8 / 16
  • 9. Objective function fitness = 1 Nm Nm i=1 Ki · ti ¯Pi + ¯Si + 1 2 Nm = number of matches Ki = percentage of occupied planets ti = number of turns 8 / 16
  • 10. Objective function fitness = 1 Nm Nm i=1 Ki · ti ¯Pi + ¯Si + 1 2 Nm = number of matches Ki = percentage of occupied planets ti = number of turns ¯Pi = ti j=1 P (1) ij − P (2) ij ti , (difference between number of planets) ¯Si = ti j=1 S (1) ij − S (2) ij ti , (difference between number of ships) 8 / 16
  • 11. Breeding mechanism Mutation Gaussian perturbation (real) σi = σi · eτ ·N(0,1)+τ·Ni (0,1) xi = xi + σi · Ni (0, 1) Geometrically distributed perturbation (integers) ςi = max(1, ςi · eτ·N(0,1)+τ ·N(0,1) ) ψi = 1 − (ςi /m)  1 + 1 + ςi m 2   −1 zi = zi + ln(1 − U(0, 1)) ln(1 − ψi ) − ln(1 − U(0, 1)) ln(1 − ψi ) 9 / 16
  • 12. Breeding mechanism Recombination “cut and splice” Other parameters (µ + λ) generational scheme with µ = 10 and λ = 100 Binary tournament selection 10 / 16
  • 13. Experiments Two experiments (10 executions each): ES with self-adapting strategy for mutation steps and genome length ES with self-adapting strategy for mutation steps and fixed genome length (23 planets) 100 generations each execution Maximum game length: 400 turns Evaluation: three bots and three matches on each map Google AI Challenge 2010 participants Ranked in the top 100 out of 4600 Having their source code available 11 / 16
  • 14. Results: fitness 0 50000 100000 150000 0 2500 5000 7500 10000 evaluations fitness 12 / 16
  • 15. Results: individual size 16 18 20 22 24 26 0 2500 5000 7500 10000 evaluations bestindividualsize 13 / 16
  • 17. Conclusions We have introduced a simple procedural map generator for a RTS game that is capable of generating balanced maps for two player games The algorithm with self-adapted number of planets has a better performance than the algorithm with this value fixed High balanced maps tend to have around 17 planets Future work: Interactivity Pro-activity Deal with other maps’ features, such as dynamism and aesthetics 15 / 16
  • 18. Thanks for your attention! AnySelf Project Please find us in Facebook http://facebook.com/AnySelfProject and in Twitter @anyselfproject 16 / 16