To predict if the first player won in Tic-Tac-Toe



6 Submissions

This game brings nostalgia for so many of us! Tic-tac-toe (American English), noughts and crosses (British English), or Xs and Os is a paper-and-pencil game for two players, X and O, who take turns marking the spaces in a 3×3 grid. The player who succeeds in placing three of their marks in a horizontal, vertical, or diagonal row is the winner.


To find whether the first player won or lost i.e to determine the target variable result.

Evaluation Criteria

Submissions are evaluated using Accuracy Score. How do we do it? 

Once you generate and submit the target variable predictions on evaluation dataset, your submissions will be compared with the true values of the target variable. 

The True or Actual values of the target variable are hidden on the DPhi Practice platform so that we can evaluate your model's performance on unseen data. Finally, an Accuracy score for your model will be generated and displayed.

About the dataset

This database encodes the complete set of possible board configurations at the end of tic-tac-toe games, where "x" is assumed to have played first. The target concept is "win for x" (i.e., true when "x" has one of 8 possible ways to create a "three-in-a-row").

To load the dataset in your jupyter notebook, use the below command:

import pandas as pd
ttt_data = pd.read_csv('https://github.com/dphi-official/Datasets/blob/master/Tic-Tac-Toe/Training_set_ttt.csv')

Data Description
  • tls: top_left_square (x, o, b)
  • tms: top_middle_square (x, o, b)
  • trs: top_right_square (x, o, b)
  • mls: middle_left_square (x, o, b)
  • mms: middle_middle_square (x, o, b)
  • mrs: middle_right_square (x, o, b)
  • bls: bottom_left_square (x, o, b)
  • bms: bottom_middle_square (x, o, b)
  • brs: bottom_right_square (x, o, b)
  • result: Whether the first player won or lost (result = positive means won, result = negative means lost)

x = first player, o = second player, b = blank

Evalutaion Dataset

Load the evaluation data (name it as 'evaluation_data'). You can load the data using the below command.

evaluation_data = pd.read_csv('https://github.com/dphi-official/Datasets/blob/master/Tic-Tac-Toe/Testing_set_ttt.csv')


This dataset is downloaded from UCI Machine Learning Repository -




You need to choose a submission file.

File Format

Your submission should be in CSV format.


This file should have a header row called 'prediction'.
Please see the instructions to save a prediction file under the “Data” tab.

To participate in this challenge either you have to create a team of atleast members or join some team