基于欧氏距离的适应度函数

时间:2018-12-20 13:02:57

标签: genetic-algorithm

使用欧几里得距离作为适应度函数以便在多个参数基础上最大化是否有意义?如果不是这样的任务,我应该使用哪种健身功能?

1 个答案:

答案 0 :(得分:1)

使用欧几里德距离的最大问题是您的多个物镜可能无法以相同的方式缩放。即如果目标A的范围是1到1000,目标B的范围是0到1,那么您会偏爱目标A。如果您倾向于使用单个汇总目标,而不是像NSGAII那样使用执行帕累托排名的MOEA,注意客观缩放,并考虑令人满意的公式。

满足是您将某个目标饱和到一定程度的适当价值。在Python中,可能看起来像这样(假设最小化):

a_prime = max(a, 40)
b_prime = max(b, 0.1)
aggregate_objective = a_prime / 1000 + b_prime