An ever-so-slightly superhuman Mastermind player.
Each guess maximizes the expected number of potential secret codes to discard. Fully optimized to run in parallel on however many CPUs are available.
Rules to Mastermind: Wikipedia
To play a game of Mastermind, run
go build
./mastermind-aiTo run a performance evaluation on the AI, simply call the runEvaluation function. Recommended number of games is 20 - 100. (This happens after each game by default.)