Master Mind Solver
The mastermind game is a board game which opposes a code maker and a code breaker. The code maker will have to come up with a random sequence of colors, and the codebreaker will have to try and find it. At every attempt, the code maker will have to give feedback to the codebreaker. My objective was to build an effective and non-time consuming solver. I have done so using a Genetic Algorithm coded in C++.
The algorithm learning function is a combination of two approaches. The first relies on a rigorous set of testing techniques that will come up with all the different possibilities left following Knuth algorithm. The second is a faster and more efficient method that will come up with a smaller set of possibilities left using a genetic algorithm.