Do! 2021-09-14 19:11 采纳率: 57.1%
浏览 59
已结题

matlab遗传算法中的问题

Fit是适应度

a = min(Fit);
b = sum(Fit) + N*(-a);
for i=1:N %给一个圆盘分N块区域
POP_adapt(i)=(Fit(i)-a)/b;
end

请问b那段为什么要加N*(-a); 这是什么意思,以为为什么是-a

  • 写回答

1条回答 默认 最新

  • joel_1993 2021-09-14 19:27
    关注

    同学你好,这是归一化的需要啊。
    a是最小的Fit值
    Fit是N个,每个都减去a,然后再相加,就是b的值。
    保证POP_adapt数组的和为1

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 9月22日
  • 已采纳回答 9月14日
  • 创建了问题 9月14日