Rodrigo Canaan

Twitter: @rocanaan


About me

I am interested in studying and building Artificial Intelligence (AI) systems that can seamlessly cooperate with humans in a variety of tasks. This AI should be able to deal with complex and changing environments and use effective models of its partners to correctly interpret and predict their actions, taking into account hidden information.

I often use games (both tabletop and digital) as testbed for this research. Games can challenge AI agents to cooperate with humans both as a player within the game and as a partner in a co-creative task, such as designing content and rules for a game.

I am an Assistant Professor of Computer Science at Cal Poly and have a PhD in computer science from New York University. You can see my dissertation below:

Dissertation: Diversity and Adaptation of Cooperative Agents

Hanabi AI


Hanabi is a cooperative card game made by Antoine Bauza, where players attempt to play cards in the correct order according to their values and color.

The catch: players don't see their own hand and can only communicate through a limited number of hints by telling other players about their cards. For this reason, Hanabi has been proposed as an AI benchmark for agents that reason about other player's beliefs and intentions.

In my own work, I have used MAP-Elites to generate a portfolio of diverse agents for Ad-Hoc gameplay evaluations, and a genetic algorithm to search for a good set of heuristics for playing the game


Hearthstone AI

Hearthstone is an online card game developed by Blizzard, with milions of players and over 2500 unique cards. As an incredibly complex game, it presents multiple challenges for AI research, such as game-playing agents, deck-building systems, procedural content generation (PCG), player modeling and automated playtesting.

In this paper, we explore how AI could help with balancing the game. We represent balance changes as a set of changes to cards attributes (Mana Cost, Attack, Health) and use a multi-objective optimization algorithm to search for changes that minimize the disparity in win-rates for three existing decks while changing as few card attributes as possible.

Paper: Evolving the Hearthstone Meta (2019)

Generative Design in Minecraft Competition

Do you like Minecraft and procedural content generation ? Have you ever thought about writing algorithms that can generate settlements which would rival those made by humans within the game? Then this competition is for you!

In the GDMC competition, the challenge is to design an algorithm that takes in a never-seen-before Minecraft level and creates a settlement on it. The settlement should be adaptive with regards to the provided map and evoke an interesting narrative, while also satisfying a range of functional and aesthetic criteria.


Competition website:

Publication List