Nitay Mayo Logo Image
Nitay Mayo

TicTacToe DL

an AI algorithm written in pure Python that can play tic-tac-toe and learn to become a proficient player.

Project Image

Project Overview

This is an AI algorithm written in pure Python that is capable of playing the game of tic-tac-toe and learning from its experiences to become a proficient player. The algorithm is built upon deep learning concepts, allowing it to train itself without any human intervention. Through repeated plays, the algorithm can learn from its mistakes and achievements, making better moves as it progresses. The algorithm is implemented using a constantly growing database, which is trained on the various board states and corresponding moves that lead to a win. The database, which functions as the player mind takes in the current board state and outputs the best move to make, based on the data it has been trained on.

The algorithm makes use of a technique called reinforcement learning, which is a subset of machine learning that involves training an AI agent to make decisions in an environment. In this case, the environment is the game of tic-tac-toe, and the AI agent is the algorithm I built. The algorithm is trained to maximize its chances of winning by receiving positive reinforcement for good moves and negative reinforcement for bad moves. As the algorithm continues to play, it learns to associate certain board states with better moves, eventually becoming a highly skilled tic-tac-toe player. Overall, this project was a great exercise in applying deep learning concepts to a real-world problem and creating an AI agent that can learn and improve over time.

Tools Used

Python
Reinforcement Learning
AI and DL
Unsupervised Learning
Game Theory
Object Oriented Algorithms
GIT