This program includes four different AI's to play Tic Tac Toe: MENACE, Q-learning, minimax and negamax. MENACE stands for Matchbox Educable Noughts And Crosses Engine and is one of the firstly developed machine learning algorithms. Q-learning is a more modern algorithm. The game can also be played by humans and with a random player.
An extensive Javadoc documentation can be found here.
I also wrote a paper about this project which can be found here.
I used two scripts to generate plots for the paper from the results of multiple training sessions, see here.