Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Python DEAP - Custom fitness function

My question is about the possibility to implement a custom fitness function in DEAP/Python in my Genetic Programming implementation.

After search and reading DEAP official documentation, i don't find anything about it, so, if one of you could help me, i appreciate it.

Thanks.

like image 571
Cristiano Siebert Avatar asked Oct 27 '25 10:10

Cristiano Siebert


1 Answers

Are you sure you need a custom fitness function?

It's a bit confusing, but you might be referring to a custom evaluation function. This should return a number that then the fitness function tries to maximize or minimize.

A great example is https://deap.readthedocs.io/en/master/examples/ga_onemax.html

In this tutorial, the standard maximizing fitness function is set up:

creator.create("FitnessMax", base.Fitness, weights=(1.0,))
creator.create("Individual", list, fitness=creator.FitnessMax)

followed by the "custom" evaluation function:

def evalOneMax(individual):
    return sum(individual),

which is then registered to the toolbox:

toolbox.register("evaluate", evalOneMax)
like image 110
Tom Malkin Avatar answered Oct 28 '25 23:10

Tom Malkin