遗传算法讲义4_slides(8)
发布时间:2021-06-05
发布时间:2021-06-05
遗传算法教案
排序选择法的基本思想是:基于“Pareto最优个体”的概念来对群体中的各个个体进行排序,依据这个排列次序来进行进比过程中的选择运算.从而使得排在前面的Pareto最优个体将有更多的机会遗传到下一代群体中。如此这样经过一定代数的循环之后,最终就可求出多目标优化问题的Pareto最优解。
这里所谓的Pareto最优个体,是指群体中的这样一个或一些个体,群体中的其他个体都不比它或它们更优越。需要说明的是,在群体进化过程个所产生的Pareto最优个体并不一定就对应于多目标优化问题的Pareto最优解。当然,当遗传算法运行结束时,我们需要取排在前面的几个Pareto最优个体,以它们所对应的解来作为多目标优化问题的Pareto最优解。
对群体中的所有个体进行Pareto最优个体排序的算法是: 算法ParetoIndividual ①设置初始序号r = 1。
②求出群体中的Pareto最优个体,定义这些个体的序号为r ③从群体中去掉Pareto最优个体.并更改序号r = r+1。 ④转到第②步,直到处理完群体中的所有个体。
由上述Pareto最优个体排序算法可知,排序选择法仅仅度量了各个个体之间的优越次序,而未度量各个个体的分散程度,所以它易于生很多个相似的Pareto最优解,而难于生成分布较广的Pareto最优解。
4.共享函数法
求解多目标优化问题时,一般希望所得到的解能够尽可能地分散在整个Pareto最优解集合内,而不是集中在其Pareto最优解集合内的某一个较小的区域上。为达到这个要求,可以利用小生境遗传算法的技术来求解多目标优化问题。这种求解多目标优化问题的方法称为共享函数法,它将共享函数的概念引入求解多目标优化问题的遗传算法中。
在利用通常的遗传算法求解最优化问题时,算法并未限制相同个体或类似个体的数量。但当在遗传算法中引入小生境技术之后,算法对它们的数量就要加以限制,以便能够产生出种类较多的不同的最优解。对于某一个个体X而言,在它的附近还存在有多少种、多大程度相似的个体,这是可以度量的,这种度量值称之为小生境数(Niche Count)。小生境数有很多种不同的度量计算方法,一般可定义为:
式中,s(d)为共享函数,它是个体之间距离d的单调递减函数。 例如,共享函数s(d)的一种定义是:
式中,d(X, Y)是两个个体X、Y之间的海明距离,σ>0是预先指定的一个表示小生境范围的参数。
在计算出各个个体的小生境数之后.可以使小生境数较小的个体能够有更多的机会被选
上一篇:第十讲装配设计:(11)