Show More


Computer Science Department

Tic Tac Toe with Learning Artificial Intelligence

Joseph Barana

This project is an implementation of tic tac toe. Tic Tac Toe is known across the globe by various names such as noughts and crosses in former British Commonwealth countries. It is designed as a two player game with each player represented by either an X or an O. The goal of the game is to create a chain of three with your symbol. The chain may be horizontal, vertical, or diagonal, but it must form a straight line. With such a finite amount of possibilities, the game is often regarded as a child’s game.

Since the game is a simple one, it lends itself well for the capacity of learning that a computer can handle. For this project, the definition of learning will be if the computer can decide the best option at any state using past experience and the current state of the board and if it decides incorrectly the computer should then adjust its strategy for the next time. In addition to having a competitive artificial intelligence, the tic tac toe program should also have an enhanced user interface to attract more people to play. The game’s target audience is children between the ages of 6 and 12. Therefore, the design goals for the project are to be "playful" and "simple" and maintain a level of customizability. In terms of customizing difficulty, the program will allow the user to adjust how smart it will be, or rather how "clumsy" the computer will be by adding a degree at which the computer does not choose its best option. For interface customizability, the program will include a few themes that the user may pick from to evoke a sense of ownership and give them a "custom" look.