Skip to content

This repo is all about implementing tic-tac-toe ai built using min-max algorithm.

Notifications You must be signed in to change notification settings

AnjaanKhadka/Tic-Tac-Toe-AI-using-MinMax

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

3 Commits
 
 
 
 
 
 
 
 

Repository files navigation

AI Tic-Tac-Toe using Min-Max Algorithm

Min-Max Algorithm

Min Max algorithm is simple algorithm used in decision making and game theory. This algorithm recursively checks all possible games possible from current state and moves where there is least risk. This algorithm assumes opponent will always move their best move. Even when opponent doesnot move best move, this algorithm works fine.

Wikipedia Image for min max algorithm

To know more about Min-Max algorithm, follow the link.

This algorithm fails to implement alpha-beta pruning. Alpha Beta pruning is technique to fasten the search process in the decision tree without loosing its efficiency.

Requirements

All requirements required are listed in requirements.txt file.

To Install those requirements, execute following code.

pip install -r reqirements.txt

Execution

This project compacts all functions / Methods into the same file.

Execute following code to test the AI.

python main.py

Results

Generally AI is fast enough to get unnoticed. But ocasionally it needs just more than 1 sec to get its first move. From the second move it always feels instantaneous.

This AI never loses in tic-tac-toe, but there will be some game player will loose. If the player also plays perfect game, no one wins no matter who starts the game

Game Board

Image of initial game screen

AI winning

Image of AI winning

Game resulting in tie

Image of a tie game

About

This repo is all about implementing tic-tac-toe ai built using min-max algorithm.

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Languages