I developed a program to play Mancala using artificial intelligence techniques such as heuristics and alpha beta pruning.
I wrote my program in Python and used artificial intelligence (AI) techniques. I would ask friends to play the game against my program to make sure it played well. This testing was very helpful to make my program better and more "intelligent."
This project was an assignment for my EECS 348 class. The goal of the assignment was to create the best AI Mancala Player I could. Specifically, I had to use a game board evaluator and alpha-beta pruning in conjunction with search. Click here to learn the rules of Mancala.
How can I make the best AI Mancala Player possible?
The basic concept of the AI Mancala program is that it would search through a tree of different game board states of players' moves and pick the one that would give the highest chance of winning.
While a computer program can "look ahead" to later board states, I still needed to make it smart, so that it could correctly evaluate winning boards. I used the following criteria to evaluate a game board state:
Alpha-Beta Pruning is a search and game theory technique to prune the search tree based off min and max values of states. This technique prevents suboptimal moves from being searched, which increases the efficiency of the program to find the optimal moves.