Isight中的多目标优化算法比较
对多个子目标同时进行优化的问题称为多目标优化问题,又称多准则优化问题、多性能优化问题。实际工程中,优化问题大多数属于多目标问题,目标之间一般都是互相冲突的,因此在设计时需要进行多目标的比较,并进行权衡和折衷。自20世纪70年代以来,多目标优化问题在国际上引起了广泛的关注,并迅速发展为一门新兴的学科。多目标优化算法主要分为两大类:归一化方法和非归一化方法。
归一化方法的解决方法通过加权或其他方式将多个目标转化为单一目标,然后通过成熟的单目标优化方法求解。加权法是归一化算法的代表算法之一,该算法主要是根据各子目标的重要程度分别指定相应的加权系数,将多目标问题单目标化,但其主要有两个缺点:
(1)当目标函数的数量增加时,权重系数在目标空间里的等值面的关系不再直观;
(2)如果Pareto前沿形状中存在没有凸起的部分,则无法求得这部分Pareto最优解。且加权法的权值通常并不是决策者设定,而是优化者决定,这在很大程度上受到了优化者主观的影响。
非归一化方法是采用Pareto机制直接处理多个目标的优化技术,它不需要将多个目标转化为单一目标,因此解决了归一化方法的缺点。非归一化方法能够使所求解集的前沿与Pareto前沿尽量接近,并尽量均匀覆盖Pareto前沿。非归一化方法中的代表方法是:多目标遗传算法、eArtius公司的ParetoExplorer方法等。Isight中集成了三种多目标遗传算法:NCGA、NSGA-II、AMGA,特点是:
(1)不单独求一个个的Pareto解,而是一次性得到Pareto前沿;
(2)作为多目标遗传算法的基础的遗传算法,是启发式的方法,具有自组织、自适应、自学习和“复杂无关性”的特征,因此算法不用了解优化问题的全部特征就能完成问题的求解,易于操作、简单通用;
(3)能够求解复杂的Pareto前沿,比如凹陷部分。
在原理上,多目标遗传算法将Pareto最优性条件运用在适应度的评价上,如果某个解在Pareto最优这个意义上比前辈更有提高,那就认为适应度得到了提高,以此进行进化施压。Isight中的三种多目标遗传算法各有优势。
NSGA-II优点在于探索性能良好,在非支配排序中,因为接近Pareto前沿的个体被选择,使Pareto前进能力增强。导入了拥挤距离和拥挤距离排序的方法,在具有同样的Pareto顺序的层内,可以对个体进行排序,称为拥挤距离排序。进化过程中,将当前父代群体进行交叉和变异得到子群体,将两个群体合并。在目标空间中按照Pareto最优关系将群体中个体两两按其目标函数向量进行比较,将群体中所有个体分成多个依次控制的前沿层,在属于不同的Pareto层的情况下,利用评价Pareto优越性来评价个体的优劣。属于同一个Pareto层的个体,具有更大的拥挤距离的个体更优秀。
NCGA方法视各目标同等重要,通过排序后分组进行交叉的方法实现“相邻繁殖”的机制,从而使接近于Pareto前沿的解进行交叉繁殖的概率增大,加速计算收敛过程。这种算法起源于分布式遗传算法的子种群概念,将交叉限定于设计空间的一定范围内,根据算法特性可知,具有相似特性的群体(邻域)之间的交叉更为有效。
当目标函数有多个峰值时,或设计变量数较多时,NCGA算法要由于NSGA-II算法,但后者一般被作为多目标遗传算法的基础测试方法。
AMGA算法在进化过程之外设立一个存档,用于保存进化过程中的非支配个体及相应的多目标函数值。对每个子目标分别进行处理,所保存的可行非支配设计即组成最优的Pareto前沿。这种算法适用于高度非线性、不连续或非凸及高度约束的搜索空间。
转自:http://mp.weixin.qq.com/s?__biz=MjM5OTU1Mjc5Mw==&mid=2650731607&idx=2&sn=091b41501b3095f49226d6792b5e1799&scene=1&srcid=0810IQluleZuVXEGGPIA5mkU#rd
页:
[1]