目前在做多目标优化这块的研究,找了一本郑金华的《多目标进化优化》恶补下基础知识,有需要的可以下载电子版,一起优化优化。在此笔记来督促自己的科研进度,有个输出的过程,也方便和各位同方向的同学们一起交流探讨!
多目标优化的基础知识:《高等代数》、《矩阵分析》和《凸优化》等基础数学的内容。
主要分为多目标进化优化基础、多目标帕累托最优解集构造方法、多目标进化群体的分布性、多目标进化算法的收敛性、多目标进化算法和基于动态环境的MOEA等内容。
1.多目标进化优化基础
1.1进化算法
进化算法包括三类:遗传算法(GA)、进化规划(EP)和进化策略(ES),基本思想都是来自达尔文的自然选择进化的机理,特点是群体搜索策略和群体个体之间的信息交换,适用于处理较难的非线性问题。
遗传算法的基本流程:
评价:遗传算法由于其工作原理不受搜索空间的限制性约束,能从离散的、多极值的、含噪音的高维空间问题中以很大的概率找到全局最优解,并且由于并行性,适合大规模的并行计算。
设计或应用时的注意点:
1.个体适应度的计算方法,由适应度函数决定
2.交叉概率一般比较大,如0.9;变异概率一般都很小,可能是0.005这种数量级。
3.产生新一代群体时,必须采用最优个体保留机制,即将上一代最优个体直接复制到下一代新群体中。(不这么做会导致算法不收敛)
4.遗传算法的终止条件最简单有俩种:一种是完成预定的进化代数,二是种群中的最优个体在连续若干代没有改进或平均适应度在若干代基本没有改进
编码:问题空间向编码空间的映射称为编码,反之称为译码。
编码的三个原则:完备性、健全性和非冗余性,可理解为染色体和解一一对应。(问题空间中的点理解为可行解,算法编码空间中的点理解为染色体位串)
适用度评价
遗传算法中,为体现适者生存的原则,必须要对个体位串(算法编码空间中的点)的适应性进行评价,使用适应度来表现,适应度越高,生存能力越强。
用表示位串空间,适应度函数表示为,可看出是一个实值的函数。即适应度是一个非负的实数。
给定一个优化问题 可行解,有正有负,要保证优化问题的适应度函数是非负的,且目标函数的优化方向是使得适应度函数越来越大的方向。设计一个转换函数,确定一个优化问题的适应度函数:
举例:对于最小化问题,min, 转换函数设计为:
其中,可以看作是一个自定的输入值,也可看成是理论上的最大值,或者是当前所有代/最近k代的最大值,在后一种情况中,随着代数变化。
对于最大化问题,max,设计为
同样的,的取值参照的设计取输入值或者是最小值。
遗传操作
遗传操作的操作算子有三个:选择(selection,或复制reproduction)、交叉(crossover或重组recombination)和变异(mutation)。依次执行,产生新一代群体来实现进化,因此算子的设计是遗传策略的主要组成部分,也是调整和控制进化过程的工具。
1)选择算子:选择算子从当前进化群体中选择适应度高的个体,放入交配池(mating pool),使得后续交叉算子从交配池中随机的选取个体进行交叉操作。
常用的选择算子主要有:适应值比例选择、排序选择、联赛选择等
2)交叉算子:是模仿自然界有性繁殖的基因重组过程,将原有的优良基因传给下一代个体,生成包含更复杂基因结构的新个体。有以下几个步骤:
一、从交配池中随机取出要交配的一对个体
二、根据位串长度L,对要交配的一对个体,随机选取[1,L-1]中一个或多个整数k作为交叉位置
三、根据交叉概率 ,实行交叉操作(即配对个体在交叉位置相互交换各自的部分内容,形成新的一对个体)
交叉算子通常由一点交叉、两点交叉、多点交叉、一致交叉等形式
3)变异算子:当交叉操作产生的后代个体的适应度不再比其前代更好,但又为达到全局最优解的时候,就会发生非成熟收敛或早熟收敛,这个时候引入变异算子可以产生很好的效果:一方面丢失的信息可以恢复,保持群体中个体的多样性,防止发生非成熟收敛,另一方面,当种种群规模较大时,适度的变异能提高算法的局部搜索效率。
变异操作模拟染色体基因突变。在群体进化的过程中,交叉操作是最主要的基因重组和群体更迭的手段,变异操作是起着重要的辅助作用
1.2多目标优化问题
给定有关多目标优化问题的一般描述:
决策向量X = () ,它满足下列约束:
假设有r个优化目标,且这r个优化目标是相互冲突的,优化目标可表示为
寻求,使得在满足约束的同时达到最优。
在多目标优化中,存在下列三种情况:
一、最小化所有的子目标函数
二、最大化所有的子目标函数
三、最小化部分子目标函数,而最大化其他子目标函数
这本书都是求总目标的最小化,即min
1.3多目标进化个体之间关系
个体的支配关系:是多目标个体之间的一种重要的关系。设 和 是进化群体中的任意两个不同的个体,我们称支配(dominate) ,必须满足两个条件:
一.对所有的子目标,不比 差,即 (k = 1,2,...,r)
二.至少存在一个子目标,使得 比好,即,使得
此时,就称为非支配(non-dominated),为被支配的(dominated)。表示为
上述的支配关系的定义是针对决策空间的,同样的,目标空间也有支配关系
目标空间中的支配关系:设 和 是目标空间的两个向量,当且仅当,且,使得
决策空间的支配关系与目标空间中的支配关系是一致的,因为决策空间中的支配关系实质上就是由目标空间中的支配关系决定的。此外支配关系按照程度还分为弱非支配和强非支配。
1.4基于帕累托的多目标最优解集
1.4.1帕累托最优解
多目标优化中的最优解通常称为帕累托最优解。
给定一个多目标优化问题,它的最优解定义为
其中
式中,为满足约束条件的解的集合,也就是可行解,
称为决策变量空间(决策空间),向量函数 将映射到目标函数空间
给定一个多目标优化问题,称是最优解,若,满足下述条件:
或者至少存在一个,,使得
式中,
给定一个多目标优化问题,设,如果,则称比优越,
,则称