Checkers is driving me nuts. I thought maybe I should implement a different board game, just for variety. Chess and Othello seemed obvious, backgammon might be fun, but games from the Mancala family also seemed interesting. What’s more, you can even buy a cheap Chinese-made Mancala set at Target. Which I did. Apparently Awari has been solved completely, resulting in a complete 48 stone database which acts as an Oracle. I’m not sure that matters to me. Anyway, just thought I’d write this down, so when a year passes and I haven’t done anything, I’ll be nudged into thinking about it again.
It’s funny you mention this, I had never heard of Mancala until some friends at my rowing club brought it around and I played it. One of my first reactions was, “Oh, it would be interesting to write a program that plays this.” Because at first glance it seemed like you could give it a “state of the board” and it could figure out the winning move pretty easily. But I never bothered to try and write it.
It’s actually got a remarkably large state space (there are 48 stones, and twelve possible pits for stones, so the naive space is the set of all partitionings of these stones into the twelve pits). Computer scientists have solved Awari (a particular variant of the game) by creating just such a table, but it’s very large (3/4 of a terabyte, if memory serves).
There’s also other types of Mancala besides oware like kalah. You can also mix things up by changing the amount of stones each player starts with (6, or even 3, per pit is a totally different experience).