NSGA2(基于精英策略的快速非支配排序遗传算法)

NSGA2算法详解

算法流程(步骤)

1.初始化种群 Pt ( Pt 规模为 N,t 代表迭代次数,也就是这是第几代种群)

2.计算种群 Pt 的适应度 f(x)

3.判断当前情况已经满足结束要求,若是则跳出算法、输出结果;若否则继续运行下一步

4.对种群 Pt 进行常规非支配排序、选择、交叉、变异操作,生成新种群 Rt ( Rt 规模也为 N)

5.合并种群 Pt 以及 Rt,生成新种群 St ( St 规模为 2N )

6对种群 St 进行快速非支配排序 rank1、rank2…ranki…

7.在进行快速非支配排序后的多层中选择出 N 个个体进入新种群 Pt+1 中,选择完成后继续返回第 2 步。

选择时会出现的情况:

①若前 i 层中个体总数正好等于 N ,则选择前i层中所有个体进入到新种群 Pt+1 中.

②若前 i-1 层中个体数总数小于 N ,但是前 i 层中个体总数大于 N ,说明在选择第 i 层中个体时我们不能完全接收,所以就要利用拥挤度指标来衡量哪些个体比较好,让好的个体进入新种群 Pt+1 中。

注:拥挤度计算方式方式:

利用个体周围最近两个个体所围成的长方图形周长确定,我们通常选择拥挤度值比较高的个体进入新种群(为了确保种群多样性)

例如:下图中,假设图中点指的是第 i 层中的个体,a点和f点的拥挤度为∞(我们为了保证物种多样性,通常将处在边缘的个体拥挤度直接设置成无穷),b点的拥挤度就是a点和c点围成的长方形周长…
在这里插入图片描述

NSGA2具体流程图

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值