The repository contains a Tic-Tac-Toe game implementation made in Python.
Tic-Tac-Toe game state is defined as follows:
tile1 | tile2 | tile3
tile4 | tile5 | tile6
tile7 | tile8 | tile9
A player can belong to one of the following two categories:
- Naive: Player checks a tile randomly.
- Intelligent: Player follows some strategy to win a game. You shall define a strategy that an intelligent player can take. We will estimate probability of winning for a player for different scenarios.
Game1: A number of games are played between two naive players. Estimate probability of winning for player1. Assume player1 starts the game.
Game2: A number of games are played between a naive and intelligent player. Estimate probability of winning for player1. Assume player1 is naive and starts the game.
Game3: A number of games are played between two intelligent players. Estimate probability of winning for player1. Assume player1 starts the game.
Added optimality constraints