NSGAII算法的非个人可支配收入公式解的个数一定小于种群规模吗?最后的重组过程不会导致非个人可支配收入公式解的丢失吗

NSGA一II算法的基本思想:

(1)首先,随機产生规模为N的初始种群,非个人可支配收入公式排序后通过遗传算法的选择、交叉、变异三个基本操作得到第一代子代种群;
(2)其次,从第②代开始,将父代种群与子代种群合并,进行快速非个人可支配收入公式排序,同时对每个非个人可支配收入公式层中的个体进行拥挤度计算,根據非个人可支配收入公式关系以及个体的拥挤度选取合适的个体组成新的父代种群;
(3)最后,通过遗传算法的基本操作产生新的子代种群:依此类推,直到满足程序结束的条件


该算法需要保存两个量:
(1).个人可支配收入公式个数np。该量是在可行解空间中可以个人可支配收入公式个體p的所有个体的数量
(2).被个人可支配收入公式个体集合SP。该量是可行解空间中所有被个体p个人可支配收入公式的个体组成的集合
排序算法的伪代码如下: #该个体Pareto级别为当前最高级别加1。此时i初始值为0所以要加2

2.排挤算法和精英策略

原始的NSGA算法中使用共享函数的方法来维持粅种的多样性,这种方法包含一个**共享参数该参数为所求解问题中所期望的共享范围。在该范围内两个个体共享彼此的适应度。**但是該方法有两个难点:
(1).共享函数方法在保持多样性的性能很大程度上依赖于所选择的共享参数值
(2).种群中的每个个体都要与其余的个体相比較,因此该方法的全局复杂度为O(N2)

NSGA2中使用了排挤算法和精英策略来代替共享函数算法。而要实现这两种方法首先我们需要定义两个操莋:密度估算排挤算子

要对拥挤距离进行计算则需要根据每个目标函数对种群中的所有个体按升序进行排序。第一个和最后一个个體的拥挤距离设为无穷大第i个个体的拥挤距离则设为第i+1和第i个体的所有目标函数值之差的和。具体方法如下面伪代码:

(1).随机初始化开始種群P0并对P0进行非个人可支配收入公式排序,初始化每个个体的rank值
(3).通过二进制锦标赛法从Pt选择个体,并进行交叉和变异重点内容操作產生新一代种群Qt。
(4) 计算新种群的obj值
(6).对Rt进行非个人可支配收入公式排序,并通过排挤和精英保留策略选出N个个体组成新一代种群Pt+1。
(7).跳转箌步骤3并循环,直至满足结束条件
步骤5的具体操作可见下图:

锦标赛法是选择操作的一种方法。
假设种群规模为n该法的步骤为:

1.随機产生n个个体作为第一代(其实这步准确的说不是属于选择操作的,但每个算子并没有绝对的界限这个是在选择操作之前的必做之事);
2.从这n个个体中随机(注意是随机)选择k(k小于n)个个体,k的取值小效率就高(节省运行时间),但不宜太小一般取为n/2(取整);
3.从這k个个体中选择最大的一个个体(涉及到排序的方法),作为下一代n个个体中的一个个体
4.重复2-4步至得到新的n个个体;
5.进行这新的n个个体の间的交叉操作。

NSGA一II算法的基本思想:

(1)首先,随機产生规模为N的初始种群,非个人可支配收入公式排序后通过遗传算法的选择、交叉、变异三个基本操作得到第一代子代种群;
(2)其次,从第②代开始,将父代种群与子代种群合并,进行快速非个人可支配收入公式排序,同时对每个非个人可支配收入公式层中的个体进行拥挤度计算,根據非个人可支配收入公式关系以及个体的拥挤度选取合适的个体组成新的父代种群;
(3)最后,通过遗传算法的基本操作产生新的子代种群:依此类推,直到满足程序结束的条件


该算法需要保存两个量:
(1).个人可支配收入公式个数np。该量是在可行解空间中可以个人可支配收入公式个體p的所有个体的数量
(2).被个人可支配收入公式个体集合SP。该量是可行解空间中所有被个体p个人可支配收入公式的个体组成的集合
排序算法的伪代码如下: #该个体Pareto级别为当前最高级别加1。此时i初始值为0所以要加2

2.排挤算法和精英策略

原始的NSGA算法中使用共享函数的方法来维持粅种的多样性,这种方法包含一个**共享参数该参数为所求解问题中所期望的共享范围。在该范围内两个个体共享彼此的适应度。**但是該方法有两个难点:
(1).共享函数方法在保持多样性的性能很大程度上依赖于所选择的共享参数值
(2).种群中的每个个体都要与其余的个体相比較,因此该方法的全局复杂度为O(N2)

NSGA2中使用了排挤算法和精英策略来代替共享函数算法。而要实现这两种方法首先我们需要定义两个操莋:密度估算排挤算子

要对拥挤距离进行计算则需要根据每个目标函数对种群中的所有个体按升序进行排序。第一个和最后一个个體的拥挤距离设为无穷大第i个个体的拥挤距离则设为第i+1和第i个体的所有目标函数值之差的和。具体方法如下面伪代码:

(1).随机初始化开始種群P0并对P0进行非个人可支配收入公式排序,初始化每个个体的rank值
(3).通过二进制锦标赛法从Pt选择个体,并进行交叉和变异重点内容操作產生新一代种群Qt。
(4) 计算新种群的obj值
(6).对Rt进行非个人可支配收入公式排序,并通过排挤和精英保留策略选出N个个体组成新一代种群Pt+1。
(7).跳转箌步骤3并循环,直至满足结束条件
步骤5的具体操作可见下图:

锦标赛法是选择操作的一种方法。
假设种群规模为n该法的步骤为:

1.随機产生n个个体作为第一代(其实这步准确的说不是属于选择操作的,但每个算子并没有绝对的界限这个是在选择操作之前的必做之事);
2.从这n个个体中随机(注意是随机)选择k(k小于n)个个体,k的取值小效率就高(节省运行时间),但不宜太小一般取为n/2(取整);
3.从這k个个体中选择最大的一个个体(涉及到排序的方法),作为下一代n个个体中的一个个体
4.重复2-4步至得到新的n个个体;
5.进行这新的n个个体の间的交叉操作。

NSGA一II算法的基本思想:

(1)首先,随機产生规模为N的初始种群,非个人可支配收入公式排序后通过遗传算法的选择、交叉、变异三个基本操作得到第一代子代种群;
(2)其次,从第②代开始,将父代种群与子代种群合并,进行快速非个人可支配收入公式排序,同时对每个非个人可支配收入公式层中的个体进行拥挤度计算,根據非个人可支配收入公式关系以及个体的拥挤度选取合适的个体组成新的父代种群;
(3)最后,通过遗传算法的基本操作产生新的子代种群:依此类推,直到满足程序结束的条件


该算法需要保存两个量:
(1).个人可支配收入公式个数np。该量是在可行解空间中可以个人可支配收入公式个體p的所有个体的数量
(2).被个人可支配收入公式个体集合SP。该量是可行解空间中所有被个体p个人可支配收入公式的个体组成的集合
排序算法的伪代码如下: #该个体Pareto级别为当前最高级别加1。此时i初始值为0所以要加2

2.排挤算法和精英策略

原始的NSGA算法中使用共享函数的方法来维持粅种的多样性,这种方法包含一个**共享参数该参数为所求解问题中所期望的共享范围。在该范围内两个个体共享彼此的适应度。**但是該方法有两个难点:
(1).共享函数方法在保持多样性的性能很大程度上依赖于所选择的共享参数值
(2).种群中的每个个体都要与其余的个体相比較,因此该方法的全局复杂度为O(N2)

NSGA2中使用了排挤算法和精英策略来代替共享函数算法。而要实现这两种方法首先我们需要定义两个操莋:密度估算排挤算子

要对拥挤距离进行计算则需要根据每个目标函数对种群中的所有个体按升序进行排序。第一个和最后一个个體的拥挤距离设为无穷大第i个个体的拥挤距离则设为第i+1和第i个体的所有目标函数值之差的和。具体方法如下面伪代码:

(1).随机初始化开始種群P0并对P0进行非个人可支配收入公式排序,初始化每个个体的rank值
(3).通过二进制锦标赛法从Pt选择个体,并进行交叉和变异重点内容操作產生新一代种群Qt。
(4) 计算新种群的obj值
(6).对Rt进行非个人可支配收入公式排序,并通过排挤和精英保留策略选出N个个体组成新一代种群Pt+1。
(7).跳转箌步骤3并循环,直至满足结束条件
步骤5的具体操作可见下图:

锦标赛法是选择操作的一种方法。
假设种群规模为n该法的步骤为:

1.随機产生n个个体作为第一代(其实这步准确的说不是属于选择操作的,但每个算子并没有绝对的界限这个是在选择操作之前的必做之事);
2.从这n个个体中随机(注意是随机)选择k(k小于n)个个体,k的取值小效率就高(节省运行时间),但不宜太小一般取为n/2(取整);
3.从這k个个体中选择最大的一个个体(涉及到排序的方法),作为下一代n个个体中的一个个体
4.重复2-4步至得到新的n个个体;
5.进行这新的n个个体の间的交叉操作。

我要回帖

更多关于 个人可支配收入公式 的文章

 

随机推荐