Updating x in fitness function

2 次查看(过去 30 天)
For a custom vectorised fitness function like this,
FitnessFunction = @(x) my_fitness(x,a,b);
I need to modify the values of x (i.e 'This population')based on some parameters computed in the fitness function. I have tried including the code for this in the fitness function but I guess this is not the right way. In the subsequent steps, while generating the next generation, ga is using the same x values as before and not the modified ones. Can these values be modified within the fitness function?

采纳的回答

Walter Roberson
Walter Roberson 2017-3-8
ga is the wrong approach for that. In ga, you never modify the population in the objective function. Instead, you generate a fitness value for the population as-is. Then the population along with all of the fitness values are passed to the crossover or mutation functions, which can generate whatever modified values desired.
To phrase this a different way, take that detection and modification code out of the fitness function and put it in the crossover or mutation function.

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 Curve Fitting Toolbox 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by