首页 > 解决方案 > 适应度函数域选择对多目标进化优化的影响

问题描述

我正在使用进化算法,例如NSGA-II 算法来解决具有多个目标的无约束优化问题。

由于我的适应度函数有时具有非常不同的域(例如f1(x)在[0..1]内生成适应度值,而f2(x)[10000..10000000]内生成适应度值)我想知道这是否对搜索行为有影响所选择的算法。

适应度函数域的选择(例如,从[lb..ub]将所有域缩放到一个公共域)是否会影响解决方案的质量和找到好的解决方案的速度?或者这个问题没有普遍的答案?

不幸的是,我找不到有关此主题的任何内容。欢迎任何提示!

标签: algorithmoptimizationmathematical-optimizationevolutionary-algorithm

解决方案


您的问题与算法中实施的选择策略有关。在原始 NSGA II 的情况下,选择是使用帕累托等级和拥挤距离的混合来进行的。虽然帕累托等级(即一个点的非支配前 id)没有改变以某个常数缩放数值,但拥挤距离确实如此。

所以答案是肯定的,如果你的第二个目标是 [10000 .. 10000000] 它对拥挤距离的贡献可能会吃掉另一个目标。

在 NSGA II 等算法中,单位计数!


推荐阅读