7.1节已从理论上证明:在决策空间上进行多次独立随机抽样,将决策空间进行划分后的模型比不划分的模型抽中目标的概率更大。而进化算法的搜索过程,其本质是在决策空间上搜索客观存在的方案以达到预期目标的过程。基于这种考虑,结合n维超球体定义,本研究提出了基于决策空间划分模型的多目标进化算法(Multi-objective Evolutionary Algorithm Based on Decision Space Partition,DSPEA)。DSPEA设置两类种群:进化种群和精英种群。进化种群实现各种进化操作,精英种群实现精英保留。设N1为进化种群的大小,N2为精英种群的大小,子决策空间数量为z(即后文中提到的超球体数量),N1为z的倍数。DSPEA的主要步骤为:
1.初始化决策空间及参数
输入参数:优化问题类型PT(最大化还是最小化)、决策变量个数n及取值范围、目标函数个数m及函数的表达式、子决策空间的数量z、最大进化代数G、进化种群规模N1、精英种群规模N2、交叉概率Pc、变异概率Pm、精英个体的存档频率Carchive和超球体移动频率Cmove。
考虑到进化过程取得突破需要积累,每一轮次的进化操作都产生新精英个体的概率较小,为减少计算开销,间隔指定代数的进化后进行一次精英个体的遴选与精英种群的更新操作,因此设置精英个体的存档频率Carchive。超球体移动与精英个体的存档相类似,不宜在每一轮次的进化完成后都移动,因此引入了超球体移动频率Cmove。
2.划分决策空间并初始化超球体模型
根据初始化决策空间及设定的超球体数量划分决策空间,使每个子决策空间存在一个超球体。根据划分结果计算出每个超球体半径与质心,以及超球体质心间的最小欧式距离β。具体内容在后续章节中详述。
3.初始化种群并置精英种群为空(www.xing528.com)
对每一个超球体,按超球体所管辖的决策空间范围产生N1/z个符合目标函数与约束条件的候选方案(即个体)。个体的产生方式将在后续章节阐述。
4.运用特定的多目标进化算法完成超球体的1轮次进化操作
基于某种多目标进化算法(建议采用当前已公认的优秀算法,本研究在实验部分选用NSGA-Ⅱ作为超球体进化的算法),以超球体为单位,其所含个体作为进化的初始种群,对每一个超球体进行1轮次进化操作:①进行个体评估、选择、交叉、变异等操作;②对每个超球体启用精英存档操作。在这个过程,需要判定当前进化是否满足精英个体存档条件,若满足条件,则先确定当前超球体内所有非支配解,然后将其更新到精英种群。
5.更新超球体质心和半径并移动超球体
以超球体为单位,操作如下:①根据超球体内非支配的分布,重新计算并确定超球体的质心与半径,详情见后续章节;②判定当前是否满足超球体间信息共享的条件,如果满足条件,则基于粒子群优化算法的思想优化超球体的质心,详情见后续相关章节。
6.如果没有满足终止条件,转到步骤4;否则终止进化
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。