Threes! RaspAI (2014)

Threes! RaspAI is an expectimax AI distributed across a small Raspberry Pi cluster which plays Threes!. Having implemented the game logic and an expectimax algorithm in C++, I integrated multithreading into the application using the C++11 threading library. Having parallelized the application on a single computer, I decided to extend the application by implementing a sockets-based distribution system to parallelize the AI across a cluster of Raspberry Pis.

Past Game End State

Here is the highest-scoring final game state:

Last move (#1035): right

Final score: 248826 (Δ=+3)

Next tile: 2
12
96
6
192
1536
192
3072
3
24
96
384
12
1
1
6
24
  1. Threes! AI — Game Representation
  2. Threes! AI — A Simple Distribution Method