6.测试函数的设计
为了对已有多目标优化方法进行评估及比较,必须设计一些能反应实际多目标优化问题基本特征的标准测试函数集。Whitley提出了一些测试函数的设计准则,包括:测试问题必须是简单搜索策略所不易解决的;测试函数中应包括非线性祸合以及非对称问题;测试问题的规模应是可伸缩的;一些测试问题的评估代价应具有可伸缩性:测试问题应有规范的表达形式。
7.非劣解集质量的评价
目前,已经发展了多种技术用来评价非劣解集的质量。例如,绝对评估方法、统计分布方法、非劣最优解区域占有率方法等[13]。
传统的多目标优化方法往往采用权值将多目标问题转化为单目标优化问题,然后采用单目标优化方法求解其最优值。由于不符合多目标优化问题本身的特点,传统方法在求解多目标优化问题时表现的相当脆弱[14]。在求解多目标优化问题时,仅有优越的优化方法还是不够的。将多目标优化方法应用于工程实践,还需要克服很多困难。例如,优化模型的建立,目标以及约束的计算方法,优化算法与目标及约束计算程序间的接口,多目标优化方法庞大的计算量等。特别是多目标优化方法在求解大型、复杂的工程优化问题时,庞大的计算量使其应用受到了很大的限制[15]。例如采用目前最常用的多目标遗传算法对某飞行器进行优化设计时,需要进行数百次甚至数千次的气动和结构分析计算,而一次气动或结构计算有时需要很长时间,这使优化工作相当耗时[16]。
自 1984 年 Schaffer提出了第一个多目标遗传算法(MOEA), 开创了用进化算法处理多目标优化问题的先河,在此之后相继出现了许多 MOEA。 多数成功的多目标进化算法不仅很好的解决了古典运筹学所能处理的连续型问题,而且还具备进化算法处理问题的独有特制。目前对 MOEA 的研究主要集中在两个方面:其一,如何避免算法的未成熟收敛,即保持非劣解向 Pareto 界面移动;其二, 使获得的非劣解均匀分布且散布广泛[17]。下面对几种代表性方法做简单介绍。
(1)并列选择法
Schaffer提出的“向量评估多目标遗传算法”是一种非 Pareto 方法。此方法先将种群中全部个体按子目标函数的数目均等分成若干个子种群,对各子群体分配一个子目标函数,各子目标函数在其相应的子群体中独立进行选择操作后,再组成一新的子种群,将所有生成的子种群合并成完整群体再进行交叉和变异操作,如此循环,最终求得问题的 Pareto 最优解。
(2) 基于目标加权法的进化算法
其基本思想是给予问题中的每一目标向量一个权重,将所有目标分量乘上各自相应的权重系数后再加合起来构成一个新目标函数,采用单目标优化方法求解。常规的多目标加权法如下
F(X)=∑_(i=1)^m▒〖λ_i f_i (X) 〗 (1.7)
其中λ_i (i=1,2,⋯m)是目标f_i (X)的非负权重系数,并且满足∑_(i=1)^m▒λ_i =1。该方法在形成单一的效用函数时,往往采用一组固定的权重系数。这种方法往往只能找到小部分 Pareto 最优解,一些 Pareto 最优解不能被找到。为了找到更多的 Pareto 最优解,最近算法在每代使用随机产生的若干组权,并将算法用于 Flowshop 排序问题,取得了较好结果。Hajela 和 Lin提出了“可变目标权重聚合法”,此方法在适应度赋值时使用加权和法,对每个目标赋一个权重,为了并行搜索多个解,权重本身并不固定,对问题解和权重同时实施进化操作。源:自~751-·论`文'网·www.751com.cn/