GP is an evolutionary algorithm inspired by biological evolution, where each individual is a computer program represented as a tree structure. These computer programs that solve a given problem are genetically bred. This breeding is done by using the genetic operations from Darwinian principle, such as selection, crossover, and mutation. The evolutionary process is repeated over many generations until the fittest individual computer program is found [40].