Checkers AI: Neural Network and Monte Carlo Simulation This project showcases an AI for playing checkers, leveraging both Neural Network and Monte Carlo Simulation techniques. The AI has been trained through hundreds of millions of games and consistently wins over 85% of matches against random movement engines, demonstrating its basic strategic capabilities.
This project also challenged multiple other skills, such as, trying to keep the model in a small size to fit in 200GB of ram, and a small file to store the model. Using multiple techniques for encryption of the Montecarlo model.
Neural Network: Trained using TensorFlow to predict optimal moves based on game state. Monte Carlo Tree Search: Efficiently evaluates potential moves and strategies. Adaptable reward systems to enhance learning efficiency. Async Save and Load: Ensures robust and fast training with safe, asynchronous model saving. The learning process is not interrupted by saving to a file, unless configured. Dynamic Learning: Adapts strategies over continuous gameplay to improve performance.
I was just curious to play with NN again and trying to keep refreshing some concepts, and learning a few new ones in the meantime.
The backup of the Montecarlo models and the NN are not included because they became huge after millions of iterations, but I used this project to train them, so it should be a matter of a few weeks running it continuously to get them. Also, it uses a lot of memory since my computer has a couple of hundred gigs of RAM, this might not run well on smaller computers.