咨询热线
400-123-4657QQ:1234567890
传真:+86-123-4567
邮箱:admin@youweb.com
多目标优化算法学习笔记(一)
?
4.非支配排序
1)非支配排序就是将种群所有的非支配个体(解向量)划分成第一个非支配最优层,制定并赋予一个共享的虚拟的适应值(比如1);
2)然后忽略已经分层的个体,因为非支配个体已经忽略,所以现在会出现一些新的非支配个体,比如两个目标函数值为(9,10)的解向量
被忽略后可能函数值为(10,11)这样的解就变成新的非支配个体;
3)那么现在将新的非支配个体划分成第二个非支配层,也制定并赋予一个共享的虚拟的适应值,但是这个值必须要比上一个小(比如可以是0.9)
4)以此类推,直到所有种群个体被分层。这样可以保持优良个体适应度的优势,以获得更多的被开发机会,同时也维持了种群的多样性。
5.带精英策略的非支配排序
a、提出了快速非支配排序算子,优化计算复杂度。
b、提出了拥挤距离算子
c、提出了精英策略选择算子
(1)快速非支配排序流程
目的同样是分层。
n为在种群中支配个体 i 的解个体的数量。(别的解支配个体 i 的数量)
S为被个体 i?所支配的解个体的集合。(个体 i 支配别的解的集合)
1)首先,找到种群中所有 n(i)=0 的个体(不被支配的个体),存入集合F(1)中,作为第一层并同样需要赋予每个个体一个相同的非支配序 R(rank)
2)关键在于第二、三步。对于当前集合F(1),找到其中个体们所支配的解集S,然后再将S中的个体被支配个数n,减去1(因为其中最强的支配它的已经分到第一层了)
3)一直重复一二步,直到所有个体被分级。因为每次n都会减少,如果n=0则说明这个个体当前是非支配解了(终于要轮到它被分层了)。
(2)确定拥挤度
?
也就是说:如果两个个体的非支配排序不同,取排序号较小的个体(分层排序时,先被分离出来的个体);如果两个个体在同一级,取周围较不拥挤的个体。
原文链接:https://blog.csdn.net/XieNaoban/article/details/88385742
(3)精英策略选择算子
保留父代优良个体直接进入子代, 以防止帕累托最优解改变后,Pareto 前沿的解丢失.?具体操作就可以直接把父代子代合并到一起进行非支配排序.
?
?
?
?
?
?