Game AI research

Rolling Horizon Evolutionary Algorithms

A research programme developing and evaluating Rolling Horizon Evolutionary Algorithms (RHEA) for agents that plan in games, including general video-game environments.

Candidate action paths evolving through a game state
Project illustration.

Why this project is interesting

Agents for unfamiliar games cannot depend on a hand-written strategy for each title. RHEA offers a way to search action sequences online using a forward model and a limited decision-time budget.

The problem

Game-playing agents must choose useful actions with incomplete knowledge of future states and often under tight runtime limits. The RHEA research asks how evolutionary search, population management, seeding, self-adaptation and parameter choices affect performance across different games.

Approach

RHEA evolves candidate sequences of future actions, evaluates them through game simulation and executes the first action of the selected sequence before planning again. The research compares algorithm variants and parameter settings across game environments, including work on automatic configuration and online adaptation.

My contribution

I have led this line of research, including algorithm and experimental design, software implementation, evaluation and analysis. I have communicated the research through publications, conference presentations and workshops, ultimately leading to my PhD thesis. I have collaborated with many researchers and students, including supervising MSc and PhD projects that have contributed to the RHEA research.

Outcomes and evidence

  • Published work studies population seeding, algorithm enhancements, self-adaptation, hybrid methods and parameter optimization.
  • The 2017 seeding study reports improvements over baseline RHEA and results comparable to Monte Carlo Tree Search (MCTS) in its tested settings.
  • The 2020 parameter-optimization paper reports configurations that outperform prior results on several tested games; results vary by game and settings.

Skills and methods

  • Java
  • Python
  • Benchmarking
  • Evolutionary algorithms
  • Planning and search
  • Game AI
  • Experimental evaluation
  • Gameplay analytics
  • Statistical analysis
  • Algorithm design and implementation
  • General Game Playing
  • Optimisation
  • MCTS
  • Machine Learning

Related work and links

Back to all projects