Sakarah / GeneTipe

OCaml Genetic Algorithm student project for French TIPE
GNU General Public License v3.0
5 stars 2 forks source link

The algorithm gets lost in deep functions #7

Closed Sakarah closed 7 years ago

Sakarah commented 8 years ago

Often when you test the program with the standard depth, it does not converge toward a solution because the population quickly get too much complex before having an approximate solution. How could we solve that ?

Gabzcr commented 7 years ago

We could create another way of evaluating fitness which would slightly decrease the fitness of deep functions so that the algorithm would choose the simplest solution between two identical ones (considering fitness). Also depending on how we penalize deep functions, this could filter noise in experimental measures or even simplify a problem by making an approximation with a simpler function.

Sakarah commented 7 years ago

We should look to "Dynamic limits for bloat control in genetic programming and a review of past and current bloat theories" in order to solve this problem.

Sakarah commented 7 years ago

Taking size into account in fitness is enough to avoid this problem. This is what I do in regexp-search with the multi-objective fitness evaluator.