Prakash Prasad

Project Title

AI for Ludo


Ludo is a board game that allows up to 4 players which originates from the Indian game Pachisi. Ludo provides an interesting problem from an AI perspective in that while its mostly a min-maxing technique to move one’s pieces in the most optimal manner, the other players’ involvement may sometimes not give ideal results. Then the key question would be - are there techniques better suited than a simple min-max approach? Can a random approach do equally good? Such questions were analyzed during this project where some modern AI techniques were tested for their success rate at playing the game.

  • Trained neural network player - In this methodology, the AI player would find the action with the highest desirability value and carry it out. The neural network was pre-trained with certain datasets obtained from how a min-maxing strategy player would play it.
  • Player trained through Temporal Difference - Again, a neural network would analyze the desirability of any move possible and carry out the one it would think best. However each move’s success/failure would be used to train the network. For example - if the move meant that the player’s piece got to home, then program tells the network to give that kind of output. However, if it lead to the piece being intercepted by another player, then network should not give that result.
  • Player evolved via Genetic Algorithm - The game’s controlling neural network is put through a genetic algorithm to find the configuration with the best average result history.

Java, AI

Source Code

Github - AI for Ludo