资源描述:
《基于pareto最优解集的多目标人工萤火虫群优化算法(ICMAL2011).pdf》由会员上传分享,免费在线阅读,更多相关内容在学术论文-天天文库。
1、基于Pareto最优解集的多目标人工萤火虫群优化算法龚巧巧周永权(广西民族大学数学与计算机科学学院南宁530006)摘要:提出一种基于Pareto最优解集的多目标人工萤火虫群优化算法,通过采用“Pareto库”来存储当前得到的Pareto最优解,对每次迭代得到的Pareto解集例中的解进行比较,从而更新“Pareto库”中解,这样更好地引导萤火虫进行下一步的寻优,最终得到一个完整的Pareto最优解集。最后,8个标准测试函数的仿真实验结果也表明了本文算法的有效和正确性。关键词:多目标函数;人工萤火虫群算法;Pareto最优解集;“Pareto库”AMulti-objectiveAr
2、tificiallyGlowwormSwarmOptimizationAlgorithmBasedonParetoOptimaSetGongQiaoqiaoZhouYongquan(CollegeofmathematicsandComputerScience,NationalUniversityofGuangxiNanningGuangxi530006,China)Abstract:Amulti-objectiveartificiallyglowwormswarmoptimizationalgorithmbasedonParetooptimasetisbroughtforwardI
3、nthispaper,byadoptingacontainercalled“ParetoLibrary”tostoreParetooptimafound,Glowwormsin“ParetoLibrary”mustbemadecomparisonseachotherandeliminatedgradually,atlastawholeParetooptimasetwouldbeachieved.Theemulationresultsofeighttypicaltestfunctionsprovedthevalidityofthisalgorithm.Keywords:multi-o
4、bjectivefunction;artificiallyglowwormswarmoptimizationalgorithm;Paretooptimaset;“ParetoLibrary”1引言在科学计算与工程领域中优化问题中,需要优化对象的目标往往不止一个,具有一个以上目标函数的问题是相当常见的。多目标优化问题在优化过程中,各个子目标往往是相互冲突的,一个子目标性能的改善可能会引起另一个子目标性能的降低,因此通常不存在使所有子目标函数同时达到最小的绝对最优解,只能在它们之间进行折衷和协调,求解它们不同于含单个目标的优化问题,其最终结果是一组折衷解集,即所谓的Pareto最优解集
5、[1]。自从1950年以来,相关研究人员已提出了许多方法并用于解决多目标优化问题(Multi-基金项目:广西自然科学基金(0991086)资助项目.作者简介:龚巧巧,女,1985年生,硕士,研究方向为群智能算法及其应用.周永权,男,1962年生,博士,教授,研究方向为神经网络,计算智能的及其应用.Email:yongquanzhou@126.comobjectiveOptimizationProblems,MOP),如多目标加权法[2]、目标规划[3]和约束法[3]等。然而这些传统方法都存在一些不足,如对Pareto最优解集比较敏感;要求个目标函数和约束条件可导;效率不高等。值得一
6、提的是在1967年,由R.S.Rosenberg在其博士论文中提出了运用遗传算法来求解MOP[5]。自此以后,群智能算法在多目标优化问题上的应用取得了相当大的进展。而人工萤火虫群优化算法(GlowwormSwarmOptimizationAlgorithm,GSO)[6-7]算法是2005年K.N.Krishnanand和D.Ghose提出了一种新的群智能优化算法,它源于萤火虫群的捕食,寻找配偶等行为的模拟。目前该算法已在复杂函数优化方面取得成功。本文在该应用研究的基础上尝试用GSO算法解决多目标优化问题。2多目标优化问题在可行域中确定由决策变量组成的向量,使得一组相互冲突的目标函
7、数值尽量同时达到极小。一个MOP由n个决策变量,m个约束条件和k个目标函数组成,这些目标函数可以是线性的,也可以是非线性的。MOP的评价函数F:X(X是决策空间,是目标函数空间),MOP的解是使向量F(x)的各分量取得最小值的决策变量,其中x是空间X中一个n维的决策变量,把决策变量x(x,x,...x)映射到向量yy,y,...y。其数学表达12n12k式为:minF(x)(f1(x),f2(x),.....,fk(x))(1)s.t.gi(x)0