Genetic Algorithm (GA)
Create random population of hypotheses
Measure fitness of each hypothesis
Loop:
Generate new population with crossover and mutation
Measure fitness of new hypotheses