动态拓扑结构的多目标粒子群优化算法_任子晖

动态拓扑结构的多目标粒子群优化算法_任子晖
动态拓扑结构的多目标粒子群优化算法_任子晖

并行协作骨干粒子群优化算法

第7期2016年7月电 子 学 报ACTAELECTRONICASINICAVol.44 No.7Jul. 2016 收稿日期:2015-04-07;修回日期:2015-06-21;责任编辑:覃怀银 基金项目:国家自然科学基金(No.61300059,No.61472056);安徽高校省级自然科学基金(No.KJ2012Z031,No.KJ2012Z024) 并行协作骨干粒子群优化算法 申元霞1,曾传华2,王喜凤1,汪小燕1 (1.安徽工业大学计算机科学与技术学院,安徽马鞍山243032;2.安徽工业大学数理科学与工程学院,安徽马鞍山243032) 摘 要: 为解决骨干粒子群优化(Bare-BoneParticleSwarmOptimization,BBPSO)的早期收敛问题,本文通过粒子的运动行为分析了导致BBPSO早期收敛的因素, 并提出并行协作BBPSO,该算法采用并行的主群和从群之间的协作学习来平衡勘探和开采能力.为了增强主群的勘探能力,提出动态学习榜样策略以保持群体多样性;同时提出随机反向学习机制以实现从群的从全局到局部的自适应搜索功能.在14个不同特征的测试函数上将本文算法与6种知名的BBPSO算法进行对比,仿真结果和统计分析表明本文算法在收敛速度和精度上都有显著提高. 关键词: 骨干粒子群优化;协作学习;反向学习;多样性 中图分类号: TP38 文献标识码: A 文章编号: 0372-2112(2016)07-1643-06电子学报URL:http://www.ejournal.org.cn DOI:10.3969/j.issn.0372-2112.2016.07.018 AParallel-CooperativeBare-BoneParticleSwarmOptimizationAlgorithm SHENYuan-xia1,ZENGChuan-hua2,WANGXi-feng1,WANGXiao-yan1 (1.SchoolofComputerScienceandTechnology,AnhuiUniversityofTechnology,Maanshan,Anhui243002,China; 2.SchoolofMathematics&Physics,AnhuiUniversityofTechnology,Maanshan,Anhui243002,China) Abstract: Todealwiththeprematureconvergenceofthebare-boneparticleswarmoptimization(BBPSO)algo-rithm,wemaketheanalysisofthemotionbehavioroftheparticlesandpointoutthereasonsleadingtotheprematurecon-vergence.Accordingtotheanalysisresults,aparallel-cooperativeBBPSO(PCBBPSO)algorithmisproposedinwhichtheparallel-cooperativelearningofamasterswarmandaslaveswarmbalancesbetweenexplorationandexploitationabilities.Inordertoimprovetheexplorationabilityofthemasterswarm,adynamiclearningexemplarstrategyispresentedtopreservetheswarmdiversity.Meanwhile,astochasticopposition-basedlearningmechanismisdevelopedtoachievetheabilitiesoftheslaveswarmfromtheglobalsearchtothelocalsearch.Theproposedalgorithmwasevaluatedon14benchmarkfunctionswithdifferentcharacteristics.Theexperimentalresultsandstatisticanalysisshowthattheproposedmethodsignificantlyout-performssixstate-of-the-artBBPSOvariantsintermsofconvergencespeedandsolutionaccuracy. Keywords: BBPSO;cooperativelearning;opposition-basedlearning;diversity 1 引言 粒子群优化(ParticleSwarmOptimization,PSO)[1] 是一种基于群体的随机优化技术,源于对鸟群,鱼群及人类集体行为的研究.由于PSO概念简洁、易于实现和优 良的性能使其在诸多领域的优化问题中得到应用. 但是PSO的优化性能和收敛行为依赖学习参数的选择, 如惯性权重,加速系数等[2,3] .为了提高PSO的优化性 能,很多改进策略被提出[4~7] .但是在保持算法简洁结构的前提下,同时提高算法的收敛速度和精度仍是PSO 一个富有挑战性的问题[8] . 2003年, Kennedy提出了一种无参数的骨干粒子群优化[9] (BBPSO),该算法采用基于群体最优和个体历史最优信息的高斯采样在解空间中进行搜索.与传统的PSO相比,BBPSO减少了速度项、加速系数、速度阈值等参数,使得算法结构更为简洁易于操作.目前,BB-PSO在图像的特征选择,经济调度和故障诊断等实际问 题中的应用取得优良的效果[10,11]. 由于BBPSO收敛速度快,当解决复杂多峰问题时, 群体容易迅速聚集,从而陷入早期收敛.为了提高算法 的勘探能力,Krohling等[12] 提出了高斯和柯西跳跃策略 的BBPSO算法.Orman等[13] 将差分算法操作引入BBP-

粒子群优化算法及其参数设置

毕业论文 题目粒子群算法及其参数设置专业信息与计算科学 班级计算061 学号3060811007 学生xx 指导教师徐小平 2016年 I

粒子群优化算法及其参数设置 专业:信息与计算科学 学生: xx 指导教师:徐小平 摘要 粒子群优化是一种新兴的基于群体智能的启发式全局搜索算法,粒子群优化算法通过粒子间的竞争和协作以实现在复杂搜索空间中寻找全局最优点。它具有易理解、易实现、全局搜索能力强等特点,倍受科学与工程领域的广泛关注,已经成为发展最快的智能优化算法之一。论文介绍了粒子群优化算法的基本原理,分析了其特点。论文中围绕粒子群优化算法的原理、特点、参数设置与应用等方面进行全面综述,重点利用单因子方差分析方法,分析了粒群优化算法中的惯性权值,加速因子的设置对算法基本性能的影响,给出算法中的经验参数设置。最后对其未来的研究提出了一些建议及研究方向的展望。 关键词:粒子群优化算法;参数;方差分析;最优解 II

Particle swarm optimization algorithm and its parameter set Speciality: Information and Computing Science Student: Ren Kan Advisor: Xu Xiaoping Abstract Particle swarm optimization is an emerging global based on swarm intelligence heuristic search algorithm, particle swarm optimization algorithm competition and collaboration between particles to achieve in complex search space to find the global optimum. It has easy to understand, easy to achieve, the characteristics of strong global search ability, and has never wide field of science and engineering concern, has become the fastest growing one of the intelligent optimization algorithms. This paper introduces the particle swarm optimization basic principles, and analyzes its features. Paper around the particle swarm optimization principles, characteristics, parameters settings and applications to conduct a thorough review, focusing on a single factor analysis of variance, analysis of the particle swarm optimization algorithm in the inertia weight, acceleration factor setting the basic properties of the algorithm the impact of the experience of the algorithm given parameter setting. Finally, its future researched and prospects are proposed. Key word:Particle swarm optimization; Parameter; Variance analysis; Optimal solution III

浅析多目标优化问题

浅析多目标优化问题 【摘要】本文介绍了多目标优化问题的问题定义。通过对多目标优化算法、评估方法和测试用例的研究,分析了多目标优化问题所面临的挑战和困难。 【关键词】多目标优化问题;多目标优化算法;评估方法;测试用例 多目标优化问题MOPs (Multiobjective Optimization Problems)是工程实践和科学研究中的主要问题形式之一,广泛存在于优化控制、机械设计、数据挖掘、移动网络规划和逻辑电路设计等问题中。MOPs有多个目标,且各目标相互冲突。对于MOPs,通常存在一个折衷的解集(即Pareto最优解集),解集中的各个解在多目标之间进行权衡。获取具有良好收敛性及分布性的解集是求解MOPs的关键。 1 问题定义 最小化MOPs的一般描述如下: 2 多目标优化算法 目前,大量算法用于求解MOPs。通常,可以将求解MOPs的算法分为两类。 第一类算法,将MOPs转化为单目标优化问题。算法为每个目标设置权值,通过加权的方式将多目标转化为单目标。经过改变权值大小,多次求解MOPs 可以得到多个最优解,构成非支配解集[1]。 第二类算法,直接求解MOPs。这类算法主要依靠进化算法。进化算法这种面向种群的全局搜索法,对于直接得到非支配解集是非常有效的。基于进化算法的多目标优化算法被称为多目标进化算法。根据其特性,多目标进化算法可以划分为两代[2]。 (1)第一代算法:以适应度共享机制为分布性策略,并利用Pareto支配关系设计适应度函数。代表算法如下。VEGA将种群划分为若干子种群,每个子种群相对于一个目标进行优化,最终将子种群合并。MOGA根据解的支配关系,为每个解分配等级,算法按照等级为解设置适应度函数。NSGA采用非支配排序的思想为每个解分配虚拟适应度值,在进化过程中,算法根据虚拟适应度值采用比例选择法选择下一代。NPGA根据支配关系采用锦标赛选择法,当解的支配关系相同时,算法使用小生境技术选择最优的解进入下一代。 (2)第二代算法:以精英解保留机制为特征,并提出了多种较好的分布性策略。代表算法如下。NSGA-II降低了非支配排序的复杂度,并提出了基于拥挤距离的分布性策略。SPEA2提出了新的适应度分配策略和基于环境选择的分布性策略。PESA-II根据网络超格选择个体并使用了基于拥挤系数的分布性策略。

粒子群算法原理及在函数优化中的应用(附程序)

粒子群算法原理及其在函数优化中的应用 1 粒子群优化(PSO )算法基本原理 1.1 标准粒子群算法 假设在一个D 维的目标搜索空间中,有m 个代表问题潜在解的粒子组成一个种群12[,,...,]m =x x x x ,第i 个粒子的信息可用D 维向量表示为 12[,,...,]T i i i iD x x x =x ,其速度为12[,,...,]T i i i iD v v v =v 。算法首先初始化m 个随机粒 子,然后通过迭代找到最优解。每一次迭代中,粒子通过跟踪2个极值进行信息交流,一个是第i 个粒子本身找到的最优解,称之为个体极值,即 12[,,...,]T i i i iD p p p =p ;另一个是所有粒子目前找到的最优解,称之为群体极值, 即12[,,...,]T g g g gD p p p =p 。粒子在更新上述2个极值后,根据式(1)和式(2)更新自己的速度和位置。 11122()()t t t t t t i i i i g i w c r c r +=+-+-v v p x p x (1) 11t t t i i i ++=+x x v (2) 式中,t 代表当前迭代次数,12,r r 是在[0,1]之间服从均匀分布的随机数,12 ,c c 称为学习因子,分别调节粒子向个体极值和群体极值方向飞行的步长,w 为惯性权重,一般在0.1~0.9之间取值。在标准的PSO 算法中,惯性权重w 被设为常数,通常取0.5w =。在实际应用中,x 需保证在一定的围,即x 的每一维的变化围均为min max [,]X X ,这在函数优化问题中相当于自变量的定义域。 1.2 算法实现步骤 步骤1:表示出PSO 算法中的适应度函数()fitness x ;(编程时最好以函数的形式保存,便于多次调用。) 步骤2:初始化PSO 算法中各个参数(如粒子个数,惯性权重,学习因子,最大迭代次数等),在自变量x 定义域随机初始化x ,代入()fitness x 求得适应度值,通过比较确定起始个体极值i p 和全局极值g p 。 步骤3:通过循环迭代更新x 、i p 和g p : ①确定惯性权重w 的取值(当w 不是常数时)。 ②根据式(1)更新粒子的速度1k i +v ,若速度中的某一维超过了max V ,则取为 max V 。 ③根据式(2)更新自变量x ,若x 的取值超过其定义域,则在其定义域重新初

粒子群算法解决函数优化问题

粒子群算法解决函数优化问题 1、群智能算法研究背景 粒子群优化算法(Particle Swarm Optimization,PSO)是由Kennedy 和Eberhart 在研究鸟类和鱼类的群体行为基础上于1995 年提出的一种群智能算法,其思想来源于人工生命和演化计算理论,模仿鸟群飞行觅食行为,通过鸟集体协作使群体达到优。 PSO算法作为一种新的群智能算法,可用于解决大量非线性、不可微和多峰值的复杂函数优化问题,并已广泛应用于科学和工程领域,如函数优化、神经网络训练、经济调度、模式识别与分类、结构设计、电磁场和任务调度等工程优化问题等。 PSO算法从提出到进一步发展,仅仅经历了十几年的时间,算法的理论基础还很薄弱,自身也存在着收敛速度慢和早熟的缺陷。如何加快粒子群算法的收敛速度和避免出现早熟收敛,一直是大多数研究者关注的重点。因此,对粒子群算法的分析改进不仅具有理论意义,而且具有一定的实际应用价值。 2、国内外研究现状 对PSO算法中惯性权重的改进:Poli等人在速度更新公式中引入惯性权重来更好的控制收敛和探索,形成了当前的标准PSO算法。 研究人员进行了大量的研究工作,先后提出了线性递减权值( LDIW)策略、模糊惯性权值( FIW) 策略和随机惯性权值( RIW) 策略。其中,FIW 策略需要专家知识建立模糊规则,实现难度较大,RIW 策略被用于求解动态系统,LDIW策略相对简单且收敛速度快, 任子晖,王坚于2009 年,又提出了基于聚焦距离变化率的自适应惯性权重PSO算法。 郑春颖和郑全弟等人,提出了基于试探的变步长自适应粒子群算

法。这些改进的PSO算法既保持了搜索速度快的特点, 又提高了全局搜索的能力。 对PSO算法的行为和收敛性的分析:1999 年采用代数方法对几种典型PSO算法的运行轨迹进行了分析,给出了保证收敛的参数选择范围。在收敛性方面Fransvan den Bergh引用Solis和Wets关于随机性算法的收敛准则,证明了标准PSO算法不能收敛于全局优解,甚至于局部优解;证明了保证收敛的PSO算法能够收敛于局部优解,而不能保证收敛于全局优解。 国内的学者:2006 年,刘洪波和王秀坤等人对粒子群优化算法的收敛性进行分析,指出它在满足收敛性的前提下种群多样性趋于减小,粒子将会因速度降低而失去继续搜索可行解的能力,提出混沌粒子群优化算法。 2008 年,黄翀鹏和熊伟丽等人分析惯性权值因子大小对PSO算法收敛性所带来的影响,对粒子群算法进行了改进。2009 年,高浩和冷文浩等人,分析了速度因子对微粒群算法影响,提出了一种基于Gaussian 变异全局收敛的粒子群算法。并证明了它能以概率 1 收敛到全局优解。 2010 年,为提高粒子群算法的收敛性,提出了基于动力系统的稳定性理论,对惯性权重粒子群模型的收敛性进行了分析,提出了使得在算法模型群模型收敛条件下的惯性权重和加速系数的参数约束关系,使算法在收敛性方面具有显著优越性。在PSO算法中嵌入别的算法的思想和技术。 1997年,李兵和蒋慰孙提出混沌优化方法; 1998年,Angeline在PSO算法中引入遗传算法中的选择算子,该算法虽然加快了算法的收敛速度,但同时也使算法陷入局部优的概率大增,特别是在优化Griewank 基准函数的优值时得到的结果不理想; 2004 年,高鹰和谢胜利将混沌寻优思想引入到粒子群优化算法中,首先对当前群体中的优粒子进行混沌寻优, 再用混沌寻优的结果随机替换群体中的一个粒子,这样提出另一种混沌粒子群优化算法。

多目标优化实例和matlab程序

NSGA-II 算法实例 目前的多目标优化算法有很多, Kalyanmoy Deb 的带精英策略的快速非支配排序遗传算法(NSGA-II) 无疑是其中应用最为广泛也是最为成功的一种。本文用的算法是MATLAB 自带的函数gamultiobj ,该函数是基于NSGA-II 改进的一种多目标优化算法。 一、 数值例子 多目标优化问题 424221********* 4224212212112 12min (,)10min (,)55..55 f x x x x x x x x x f x x x x x x x x x s t x =-++-=-++-≤≤??-≤≤? 二、 Matlab 文件 1. 适应值函数m 文件: function y=f(x) y(1)=x(1)^4-10*x(1)^2+x(1)*x(2)+x(2)^4-x(1)^2*x(2)^2; y(2)=x(2)^4-x(1)^2*x(2)^2+x(1)^4+x(1)*x(2); 2. 调用gamultiobj 函数,及参数设置: clear clc fitnessfcn=@f; %适应度函数句柄 nvars=2; %变量个数 lb=[-5,-5]; %下限 ub=[5,5]; %上限 A=[];b=[]; %线性不等式约束 Aeq=[];beq=[]; %线性等式约束 options=gaoptimset('paretoFraction',0.3,'populationsize',100,'generations', 200,'stallGenLimit',200,'TolFun',1e-100,'PlotFcns',@gaplotpareto); % 最优个体系数paretoFraction 为0.3;种群大小populationsize 为100,最大进化代数generations 为200, % 停止代数stallGenLimit 为200, 适应度函数偏差TolFun 设为1e-100,函数gaplotpareto :绘制Pareto 前端 [x,fval]=gamultiobj(fitnessfcn,nvars,A,b,Aeq,beq,lb,ub,options)

基于小生境粒子群优化的船舶多路径规划方法

———————————— 基金项目基金项目::国家自然科学基金资助项目(51009036, 51109041) 作者简介作者简介::刘利强(1980-),男,副教授、博士,主研方向:计算智能,认知科学;汪相国、范志超,硕士研究生 收稿日期收稿日期::2012-08-10 修回日期修回日期::2012-10-24 E-mail :llq9842222@https://www.360docs.net/doc/0d11346081.html, 基于小生境粒子群优化的船舶多路径规划方法 刘利强刘利强,,汪相国汪相国,,范志超 (哈尔滨工程大学自动化学院,哈尔滨 150001) 摘 要:针对船舶全局路径规划中的多路径规划问题,提出一种基于小生境粒子群优化的多路径规划方法。借鉴遗传算法求解多峰函数的思想,在基本粒子群优化算法的基础上,引入小生境生成、隔离进化和交叉算子等策略,分别采用主群粒子进行区域划分,使用子群粒子完成区域内的局部寻优,从而实现船舶多路径规划。仿真结果表明,该方法能正确、有效地规划出多条最优及次优路径。 关键词关键词::多路径规划;粒子群优化;小生境;隔离进化;交叉算子;多种群 Multi-path Planning Method for Ships Based on Niche Particle Swarm Optimization LIU Li-qiang, WANG Xiang-guo, FAN Zhi-chao (College of Automation, Harbin Engineering University, Harbin 150001, China) 【Abstract 】For the problem of multi-path planning in global path planning for ships, a multi-path planning method based on niche Particle Swarm Optimization(PSO) is proposed. Based on the idea of Genetic Algorithm(GA) to solve multi-modal function, it takes the formation of niche, isolated evolution and crossover operator into the PSO, uses the main particle swarm to decompose the region, and the sub-particle swarm to optimize the local region respectively to accomplish the multi-path planning for ships. Simulation results show that this method can plan multiple optimal and sub-optimal paths correctly and efficiently. 【Key words 】multi-path planning; Particle Swarm Optimization(PSO); niche; isolated evolution; crossover operator; multi-population DOI: 10.3969/j.issn.1000-3428.2013.09.051 计 算 机 工 程 Computer Engineering 第39卷 第9期 V ol.39 No.9 2013年9月 September 2013 ·人工智能及识别技术人工智能及识别技术·· 文章编号文章编号::1000—3428(2013)09—0227—06 文献标识码文献标识码::A 中图分类号中图分类号::TP391 1 概述 路径规划是实现船舶智能化航行的关键技术之一,其主要任务是在环境已知、部分已知或未知的情况下,按照一定的评价标准,寻找从起点到终点的最优航行路线[1-2]。路径规划分为全局规划和局部规划,其中,全局路径规划是在环境信息完全已知的情况下,在大范围内进行最优航线规划,而局部路径规划需要传感器实时地获取环境信息,在小范围内进行避碰航线规划[2-3]。本文进行船舶全局路径规划研究。目前,大部分的船舶全局路径规划方法,对路径优劣的评价完全依据给定的适应值函数,生成一条具有最优适应度的路径。由于路径规划问题本身、船舶运动以及外部环境的复杂性,很难用一个统一的适应值函数将所有的因素都考虑进去[4]。 针对上述的问题,一种有效的途径是预先规划出多条最优及次优路径,在任务执行时,决策者根据不同的需求临时选择合适的航线[5]。近年来,一些学者开展了多路径规划研究,文献[6]子群内的交叉、变异等操作会破坏已创建 的子群,导致算法多路径规划效率降低;文献[4]在粒子群多样化阶段完成子群的创建,因此,子群的数量依赖于粒子群的多样化程度。鉴于此,本文对子群间采用隔离进化的策略,子群内用粒子群优化(Particle Swarm Optimization, PSO)算法进行区域内局部寻优,没有交叉、变异等操作;对主群用认知的PSO 进行更新,引入交叉算子,增强主群粒子对新区域的探索能力,并进行仿真实验。 2 问题描述与建模 船舶航行在海洋等环境中,存在着静态环境约束和动态环境约束,静态约束包括岛礁、海底地形等,动态约束包括船舶、气候变化等。本文采用在直角坐标系下进行二维空间建模,对于船舶,路径规划就是寻找其在环境中航行时所经过的点的集合。路径编码原理如图1所示。 在图1全局坐标系-O XY 中,黑色不规则的多边形表示障碍物,S 为船舶航行的起点,G 为终点,船舶的路径规划即寻找一个点的集合: 12{,,,,,}n P S P P P G =? (1)

粒子群优化算法及其参数设置

附录 程序1 当22111==c c ,5.12212==c c ,2.1=w 。 a)%主函数源程序(main.m ) %------基本粒子群算法 (particle swarm optimization ) %------名称: 基本粒子群算法 %------初始格式化 clear all ; %清除所有变量 clc; %清屏 format long ; %将数据显示为长整形科学计数 %------给定初始条条件------------------ N=40; %3初始化群体个数 D=10; %初始化群体维数 T=100; %初始化群体最迭代次数 c11=2; %学习因子1 c21=2; %学习因子2 c12=1.5; c22=1.5; w=1.2; %惯性权重 eps=10^(-6); %设置精度(在已知最小值的时候用) %------初始化种群个体(限定位置和速度)------------ x=zeros(N,D); v=zeros(N,D); for i=1:N for j=1:D x(i,j)=randn; %随机初始化位置 v(i,j)=randn; %随机初始化速度 end end %------显示群位置----------------------

figure(1) for j=1:D if(rem(D,2)>0) subplot((D+1)/2,2,j) else subplot(D/2,2,j) end plot(x(:,j),'b*');grid on xlabel('粒子') ylabel('初始位置') tInfo=strcat('第',char(j+48),'维'); if(j>9) tInfo=strcat('第',char(floor(j/10)+48),char(rem(j,10)+48),'维'); end title(tInfo) end %------显示种群速度 figure(2) for j=1:D if(rem(D,2)>0) subplot((D+1)/2,2,j) else subplot(D/2,2,j) end plot(x(:,j),'b*');grid on xlabel('粒子') ylabel('初始速度') tInfo=strcat('第,char(j+48),'维'); if(j>9) tInfo=strcat('第',char(floor(j/10)+48), char(rem(j,10)+48),'维); end title(tInfo) end figure(3)

多目标优化算法与求解策略

多目标优化算法与求解策略 2多目标优化综述 2.1多目标优化的基本概念 多目标优化问题(Multi-objective Optimization Problem,MOP)起源于许多实际复杂系统的设计、建模和规划问题,这些系统所在的领域包括工业制造、城市运输、资本预算、森林管理、水库管理、新城市的布局和美化、能量分配等等。几乎每个重要的现实生活中的决策问题都要在考虑不同的约束的同时处理若干相互冲突的目标,这些问题都涉及多个目标的优化,这些目标并不是独立存在的,它们往往是祸合在一起的互相竞争的目标,每个目标具有不同的物理意义和量纲。它们的竞争性和复杂性使得对其优化变得困难。 多目标最优化是近20多年来迅速发展起来的应用数学的一门新兴学科。它研究向量目标函数满足一定约束条件时在某种意义下的最优化问题。由于现实世界的大量问题,都可归结为含有多个目标的最优化问题,自70年代以来,对于多目标最优化的研究,在国内和国际上都引起了人们极大的关注和重视。特别是近10多年来,理论探索不断深入,应用范围日益广泛,研究队伍迅速壮大,显示出勃勃生机。同时,随着对社会经济和工程设计中大型复杂系统研究的深入,多目标最优化的理论和方法也不断地受到严峻挑战并得到快速发展。近几年来,将遗传算法(Genetic Algorithm,GA)应用于多目标优化问题成为研究热点,这种算法通常称作多目标优化进化算法或多目标优化遗传算法。由于遗传算法的基本特点是多方向和全局搜索,这使得带有潜在解的种群能够一代一代地维持下来。从种群到种群的方法对于搜索Pareto解来说是十分有益的。 一般说来,科学研究与工程实践中许多优化问题大都是多目标优化问题。多目标优化问题中各目标之间通过决策变量相互制约,对其中一个目标优化必须以其它目标作为代价,而且各目标的单位又往往不一致,因此很难客观地评价多目标问题解的优劣性。与单目标优化问题的本质区别在于,多目标优化问题的解不是唯一的,而是存在一个最优解集合,集合中

matlab粒子群优化算法举例分析

例 函数∑==10 12 )(i i x x f 对于适应度函数fitness 对其参数w ,1c ,3c 做出不同方式的比较以测试其对函数结果影响。 当22111==c c ,5.12212==c c ,2.1=w 。 (适应函数∑==10 12)(i i x x f ) 程序1 当22111==c c ,5.12212==c c ,2.1=w 。 a)%主函数源程序(main.m ) %------基本粒子群算法 (particle swarm optimization ) %------名称: 基本粒子群算法 %------初始格式化 clear all; %清除所有变量 clc; %清屏 format long; %将数据显示为长整形科学计数 %------给定初始条条件------------------ N=40; %3初始化群体个数 D=10; %初始化群体维数 T=100; %初始化群体最迭代次数 c11=2; %学习因子1 c21=2; %学习因子2 c12=1.5; c22=1.5; w=1.2; %惯性权重 eps=10^(-6); %设置精度(在已知最小值的时候用) %------初始化种群个体(限定位置和速度)------------ x=zeros(N,D); %x 是位置,初始化位置空间(矩阵) v=zeros(N,D); %v 是速度,初始化速度空间(矩阵) for i=1:N for j=1:D x(i,j)=randn; %随机初始化位置,randn 返回一个随机变化的符合正态分布的数 v(i,j)=randn; %随机初始化速度 end end

粒子群优化算法

什么是粒子群优化算法
粒子群优化算法(Particle Swarm optimization,PSO)又翻译为粒子群算法、微粒群算法、或 粒子群优化算法 微粒群优化算法。是通过模拟鸟群觅食行为而发展起来的一种基于群体协作的随机搜索算法。通 常认为它是群集智能 (Swarm intelligence, SI) 的一种。它可以被纳入多主体优化系统 (Multiagent Optimization System, MAOS). 是由 Eberhart 博士和 kennedy 博士发明。 PSO 模拟鸟群的捕食行为。一群鸟在随机搜索食物,在这个区域里只有一块食物。所有的 鸟都不知道食物在那里。但是他们知道当前的位置离食物还有多远。那么找到食物的最优策略是 什么呢。最简单有效的就是搜寻目前离食物最近的鸟的周围区域。 PSO 从这种模型中得到启示并用于解决优化问题。PSO 中,每个优化问题的解都是搜索空 间中的一只鸟。我们称之为“粒子”。所有的粒子都有一个由被优化的函数决定的适应值 (fitnessvalue),每个粒子还有一个速度决定他们飞翔的方向和距离。然后粒子们就追随当前的最 优粒子在解空间中搜索。 PSO 初始化为一群随机粒子(随机解),然后通过叠代找到最优解,在每一次叠代中,粒子通 过跟踪两个“极值”来更新自己。第一个就是粒子本身所找到的最优解,这个解叫做个体极值 pBest,另一个极值是整个种群目前找到的最优解,这个极值是全局极值 gBest。另外也可以不 用整个种群而只是用其中一部分最优粒子的邻居,那么在所有邻居中的极值就是局部极值。 [编辑]
PSO 算法介绍[1]
如前所述,PSO 模拟鸟群的捕食行为。设想这样一个场景:一群鸟在随机搜索食物。在这 个区域里只有一块食物。所有的鸟都不知道食物在那里。但是他们知道当前的位置离食物还有多 远 那么找到食物的最优策略是什么呢 最简单有效的就是搜寻目前离食物最近的鸟的周围区域 。 。 。 PSO 从这种模型中得到启示并用于解决优化问题。PSO 中,每个优化问题的解都是搜索空 间中的一只鸟。我们称之为“粒子”。所有的例子都有一个由被优化的函数决定的适应值(fitness value),每个粒子还有一个速度决定他们飞翔的方向和距离。然后粒子们就追随当前的最优粒子 在解空间中搜索 PSO 初始化为一群随机粒子(随机解)。然后通过叠代找到最优解。在每一次叠代中,粒子通 过跟踪两个"极值"来更新自己 第一个就是粒子本身所找到的最优解 这个解叫做个体极值 pBest. 。 。 另一个极值是整个种群目前找到的最优解。这个极值是全局极值 gBest。另外也可以不用整个种 群而只是用其中一部分最为粒子的邻居,那么在所有邻居中的极值就是局部极值。 在找到这两个最优值时, 粒子根据如下的公式来更新自己的速度和新的位置

粒子群优化算法参数设置

一.粒子群优化算法综述 1.6粒子群优化算法的参数设置 1.6.1粒子群优化算法的参数设置—种群规模N 种群规模N影响着算法的搜索能力和计算量: PSO对种群规模要求不高,一般取20-40就可以达到很好的求解效果,不过对于比较难的问题或者特定类别的问题,粒子数可以取到100或200。 1.6.2粒子的长度D 粒子的长度D由优化问题本身决定,就是问题解的长度。 粒子的范围R由优化问题本身决定,每一维可以设定不同的范围。 1.6.3最大速度Vmax决定粒子每一次的最大移动距离,制约着算法的探索和开发能力 Vmax的每一维一般可以取相应维搜索空间的10%-20%,甚至100% ,也有研究使用将Vmax按照进化代数从大到小递减的设置方案。 1.6.4惯性权重控制着前一速度对当前速度的影响,用于平衡算法的探索和开发能力 一般设置为从0.9线性递减到0.4,也有非线性递减的设置方案; 可以采用模糊控制的方式设定,或者在[0.5, 1.0]之间随机取值; 设为0.729的同时将c1和c2设1.49445,有利于算法的收敛。 1.6.5压缩因子限制粒子的飞行速度的,保证算法的有效收敛 Clerc0.729,同时c1和c2设为2.05 。 1.6.6加速系数c1和c2 加速系数c1和c2代表了粒子向自身极值pBest和全局极值gBest推进的加速权值。 c1和c2通常都等于2.0,代表着对两个引导方向的同等重视,也存在一些c1和c2不相等的设置,但其范围一般都在0和4之间。研究对c1和c2的自适应调整方案对算法性能的增强有重要意义。 1.6.7终止条件 终止条件决定算法运行的结束,由具体的应用和问题本身确定。将最大循环数设定为500,1000,5000,或者最大的函数评估次数,等等。也可以使用算法

粒子群优化算法介绍及matlab程序【精品文档】(完整版)

粒子群优化算法(1)—粒子群优化算法简介 PSO算法就是模拟一群鸟寻找食物的过程,每个鸟就是PSO中的粒子,也就是我们需要求解问题的可能解,这些鸟在寻找食物的过程中,不停改变自己在空中飞行的位置与速度。大家也可以观察一下,鸟群在寻找食物的过程中,开始鸟群比较分散,逐渐这些鸟就会聚成一群,这个群忽高忽低、忽左忽右,直到最后找到食物。这个过程我们转化为一个数学问题。寻找函数y=1-cos(3*x)*exp(-x)的在[0,4]最大值。该函数的图形如下: 当x=0.9350-0.9450,达到最大值y=1.3706。为了得到该函数的最大值,我们在[0, 4]之间随机的洒一些点,为了演示,我们放置两个点,并且计算这两个点的函数值,同时给这两个点设置在[0, 4]之间的一个速度。下面这些点就会按照一定的公式更改自己的位置,到达新位置后,再计算这两个点的值,然后再按照一定的公式更新自己的位置。直到最后在y=1.3706这个点停止自己的更新。这个过程与粒子群算法作为对照如下: 这两个点就是粒子群算法中的粒子。 该函数的最大值就是鸟群中的食物。 计算两个点函数值就是粒子群算法中的适应值,计算用的函数就是粒子群算法中的适应度函数。 更新自己位置的公式就是粒子群算法中的位置速度更新公式。 下面演示一下这个算法运行一次的大概过程: 第一次初始化 第一次更新位置

第二次更新位置 第21次更新 最后的结果(30次迭代) 最后所有的点都集中在最大值的地方。

粒子群优化算法(2)—标准粒子群优化算法 在上一节的叙述中,唯一没有给大家介绍的就是函数的这些随机的点(粒子)是如何运动的,只是说按照一定的公式更新。这个公式就是粒子群算法中的位置速度更新公式。下面就介绍这个公式是什么。在上一节中我们求取函数y=1-cos(3*x)*exp(-x)的在[0, 4]最大值。并在[0,4]之间放置了两个随机的点,这些点的坐标假设为x1=1.5,x2=2.5;这里的点是一个标量,但是我们经常遇到的问题可能是更一般的情况—x 为一个矢量的情况,比如二维z=2*x1+3*x22的情况。这个时候我们的每个粒子均为二维,记粒子 P1= (x11,x12),P2=(x21,x22),P3=(x31,x32),......Pn=(xn1,xn2)。这里n 为粒子群群体的规模,也就是这个群中粒子的个数,每个粒子的维数为2。更一般的是粒子的维数为q ,这样在这个种群中有n 个粒子,每个粒子为q 维。 由n 个粒子组成的群体对Q 维(就是每个粒子的维数)空间进行搜索。每个粒子表示为:x i =(x i1,x i2,x i3,...,x iQ ),每个粒子对应的速度可以表示为v i =(v i1,v i2,v i3,....,v iQ ),每个粒子在搜索时要考虑两个因素: 1. 自己搜索到的历史最优值 p i ,p i =(p i1,p i2,....,p iQ ),i=1,2,3,....,n ; 2. 全部粒子搜索到的最优值p g ,p g =(p g1,p g2,....,p gQ ),注意这里的p g 只有一个。 下面给出粒子群算法的位置速度更新公式: 112()()()()k k k k i i i i v v c rand pbest x c rand gbest x ω+=+??-+??-, 11k k k i i i x x av ++=+. 这里有几个重要的参数需要大家记忆,因为在以后的讲解中将会经常用到,它们是: ω是保持原来速度的系数,所以叫做惯性权重。1c 是粒子跟踪自己历史最优值的权重系 数,它表示粒子自身的认识,所以叫“认知”。通常设置为2。2c 是粒子跟踪群体最优值的权重系数,它表示粒子对整个群体知识的认识,所以叫做“社会知识”,经常叫做“社会”。通常设置为2。()rand 是[0,1]区间内均匀分布的随机数。a 是对位置更新的时候,在速度前面加的一个系数,这个系数我们叫做约束因子。通常设置为1。这样一个标准的粒子群算法就介绍结束了。下图是对整个基本的粒子群的过程给一个简单的图形表示。 判断终止条件可是设置适应值到达一定的数值或者循环一定的次数。 注意:这里的粒子是同时跟踪自己的历史最优值与全局(群体)最优值来改变自己的位置预速度的,所以又叫做全局版本的标准粒子群优化算法。

粒子群优化算法

1 群体智能概述 1.1 群体智能的概念与特点 群体智能的概念源于对蜜蜂、蚂蚁、大雁等这类群居生物群体行为的观察和研究,是一种在自然界生物群体所表现出的智能现象启发下提出的人工智能实现模式,是对简单生物群体的智能涌现现象的具体模式研究。群体智能指的是“简单智能的主体通过合作表现出复杂智能行为的特性”。该种智能模式需要以相当数目的智能体来实现对某类问题的求解功能。作为智能个体本身,在没有得到智能群体的总体信息反馈时,它在解空间中的行进方式是没有规律的。只有受到整个智能群体在解空间中行进效果的影响之后,智能个体在解空间中才能表现出具有合理寻优特征的行进模式。自然界中动物、昆虫常以集体的力量进行觅食生存,在这些群落中单个个体所表现的行为是简单缺乏智能的,且各个个体之间的行为是遵循相同规则的,但由个体组成的群体则表现出了一种有效的复杂的智能行为。群体智能可以在适当的进化机制引导下通过个体交互以某种突现形式发挥作用,这是个体的智能难以做到的。 通常,群体智能是指一种人工智能模式,体现的是一种总体的智能特性。人工智能主要有两种研究范式,即符号主义和联接主义。符号主义采用知识表达和逻辑符号系统来模拟人类的智能。联接主义则从大脑和神经系统的生理背景出发来模拟它们的工作机理和学习方式。符号主义试图对智能进行宏观研究,而联接主义则是一种微观意义上的探索。20世纪90年代后,计算智能的研究逐渐成为了联接主义人工智能的一个代表性流派。计算智能系统是在神经网络、模糊系统、进化计算三个分支发展相对成熟的基础上,通过相互之间的有机融合而形成的新的科学方法,也是智能理论和技术发展的崭新阶段。神经网络反映大脑思维的高层次结构;模糊系统模仿低层次的大脑结构;进化系统则是从生物种群的群体角度研究智能产生和进化过程。对群居性生物群体行为涌现的群体智能的研究是进化系统的一个新兴研究领域。 群体智能中,最小智能但自治的个体利用个体与个体和个体与环境的交互作用实现完全分布式控制,其具有以下特点: (1)自组织。自组织是一种动态机制,由底层单元(部件)的交互而呈现出系统的全局性的结构。交互的规则仅依赖于局部信息,而不依赖于全局的模式。自组织并不是外部的影响施加给系统而体现的一种性质,而是系统自身涌现出的一种性质。系统中没有一个中心控制模块,也不存在一个部分控制另一部分。正反馈(positive feedback)群体中的每个具有简单能力的个体表现出某种行为,会遵循已有的结构或者信息指引自己的行动,并且释放自身的信息素,这种不断的反馈能够使得某种行为加强。尽管一开始都是一些随机的行为,大量个体遵循正

相关文档
最新文档