Game
Parameters
greedy epsilon:
discount factor gamma:
learning rate alpha:
experience interval:
experience size:
learning steps:
tderror clamp:
game speed:
Statistics

What ?

Its tic-tac-toe ! Kind of boring...but add some machine learning and things start to get interesting. You are seeing two players the red one is making his choice by random. The blue one makes his choice based on machine learning when you want to be more specific its reinforcement-learning or q-learning. Just hit the start button and you can see the AI player improve over time. With the default settings it takes about 100000 games for the AI player to become quite good. Watch the machine rising :)

How ?

To be honest there is no real reason for using javscript in machine learning but its fun to play with. The library i used is called reinforcejs by Andrey Karpathy. Have a look at his puckworld demo for a nice introduction of Deep Q Learning and he will tell you someting about all the parameters you can use to modify while the machine learns to play.