Applying Genetic Algorithms
Learn to solve a problem using genetic algorithms.
We'll cover the following...
It’s time to solve a problem with a genetic algorithm. Let’s start with something simple. At the end of this chapter, we’ll face more complex problems. But for now, we’re going to minimize the function .
Let’s remember the code template for genetic algorithms:
We need to implement the following methods:
-
mutation: Receives one solution and a probability and updates that solution with that probability.
-
crossover: Receives two solutions and a probability and creates a new solution with that probability.
-
score: Tells us how good a solution is. The bigger the score, the better the solution. The score should be always a positive number.
-
generate_initial_population: Generates an initial population with the specified size.
So, the very first thing we need to do is to define what a solution looks like. This time it is pretty simple: a solution is just a number. We want to find the number that minimizes . Defining what a solution looks like is not always that ...