改进的遗传粒子群混合优化算法
遗传算法与粒子群算法的优劣对比研究

遗传算法与粒子群算法的优劣对比研究引言:遗传算法和粒子群算法是两种常用的优化算法,它们在解决复杂问题和优化搜索中发挥着重要作用。
本文将对这两种算法进行对比研究,分析它们的优劣势,以及在不同问题领域的适用性。
一、遗传算法的基本原理和特点遗传算法是一种模拟自然选择和进化过程的优化算法。
它通过模拟生物进化中的选择、交叉和变异等过程,逐步搜索最优解。
遗传算法的基本流程包括初始化种群、选择操作、交叉操作和变异操作。
其中,选择操作根据适应度函数选择优秀个体,交叉操作模拟生物的交叉遗传,变异操作引入随机性,增加搜索的多样性。
遗传算法具有以下特点:1. 并行搜索能力强:遗传算法可以同时搜索多个解,从而加快了搜索速度。
2. 全局搜索能力强:遗传算法通过不断的选择、交叉和变异操作,可以跳出局部最优解,寻找全局最优解。
3. 适应性强:遗传算法能够根据问题的特点,自适应地调整搜索策略,提高搜索效率。
二、粒子群算法的基本原理和特点粒子群算法是一种模拟鸟群觅食行为的优化算法。
它通过模拟粒子在解空间中的移动和信息交流,逐步搜索最优解。
粒子群算法的基本流程包括初始化粒子群、更新粒子速度和位置、更新全局最优解和个体最优解。
其中,粒子的速度和位置更新受到个体历史最优解和全局历史最优解的影响。
粒子群算法具有以下特点:1. 局部搜索能力强:粒子群算法通过个体历史最优解的引导,可以有效地进行局部搜索。
2. 收敛速度快:粒子群算法通过粒子之间的信息交流,可以迅速收敛到最优解的附近。
3. 参数设置简单:粒子群算法的参数设置相对简单,不需要过多的调参。
三、遗传算法与粒子群算法的对比研究1. 搜索能力对比:遗传算法具有较强的全局搜索能力,能够跳出局部最优解,寻找全局最优解。
而粒子群算法则更适合进行局部搜索,对于复杂问题的全局搜索能力相对较弱。
2. 收敛速度对比:粒子群算法由于粒子之间的信息交流,能够迅速收敛到最优解的附近,收敛速度较快。
而遗传算法由于引入了交叉和变异操作,搜索过程中存在一定的随机性,收敛速度相对较慢。
mpso算法原理

mpso算法原理MPSO算法原理什么是MP 算法MP(Multiparticle Particle Swarm Optimization)算法是一种优化算法,它基于粒子群优化(PSO)的思想,通过引入多个粒子来增强算法的性能和鲁棒性。
MP算法是一种经典的群体智能算法,已经被广泛应用于优化问题的求解。
粒子群优化(PSO)的简介粒子群优化是一种模拟自然界群体行为的优化算法。
其基本思想是通过模拟群体中粒子的社会行为,寻找最优解。
每个粒子表示一个潜在的解,它通过自身的经验和群体的协作来搜索最优解。
粒子在解空间中移动,通过更新速度和位置来进行搜索。
粒子群优化算法主要包含三个步骤: 1. 初始化:随机生成粒子的位置和速度。
2. 更新:根据当前位置和速度计算粒子的新速度和新位置。
3. 评估:利用目标函数对粒子的新位置进行评估,并更新最优解。
MPSO算法的原理MP算法在粒子群优化算法的基础上进行了改进,引入了多个粒子来增强算法的性能。
下面是MPSO算法的主要原理:1.初始化:随机生成多个粒子的位置和速度。
2.更新全局最优解:根据当前最优解和个体最优解,更新全局最优解。
3.更新速度和位置:根据当前位置、速度和最优解,计算粒子的新速度和新位置。
4.评估:利用目标函数对粒子的新位置进行评估,并更新个体最优解。
5.收敛判断:判断是否达到停止迭代的条件,如果没有,则回到第2步继续迭代。
MPSO算法通过引入多个粒子,增加了算法的搜索空间和搜索能力。
不同粒子之间可以通过信息共享来加快收敛速度,并提高最优解的质量。
通过迭代更新位置和速度,算法逐渐向最优解靠近,最终找到全局最优解。
MPSO算法的优缺点MPSO算法相比于传统的PSO算法具有以下优点: - 收敛速度更快:多个粒子的协作可以加快算法的收敛速度。
- 最优解质量更高:多个粒子可以搜索更多的解空间,找到更好的解。
然而,MPSO算法也存在一些缺点: - 参数设置较为困难:由于引入了多个粒子,MPSO算法的参数需要更加精细地调整,否则可能影响算法的性能。
遗传算法实验报告

遗传算法实验报告遗传算法实验报告引言:遗传算法是一种模拟生物进化过程的优化算法,通过模拟自然选择、遗传变异和交叉等操作,逐步优化问题的解。
本实验旨在探究遗传算法在解决优化问题中的应用,并通过实验验证其效果。
一、实验背景遗传算法最早由美国科学家约翰·霍兰德于20世纪60年代提出,其灵感来源于达尔文的进化论。
遗传算法通过基因编码、适应度评估、选择、交叉和变异等操作,模拟了进化过程中的遗传和变异,从而找到问题的最优解。
二、实验目的本实验旨在通过遗传算法解决一个经典的优化问题,验证其在解决实际问题中的有效性。
同时,对遗传算法的参数设置和操作过程进行调整和优化,以提高算法的性能。
三、实验步骤1. 问题定义:选择一个经典的优化问题,例如旅行商问题(TSP)或背包问题。
2. 解空间建模:将问题的解表示为染色体,设计基因编码方式。
3. 适应度函数定义:根据问题的特点,设计一个能够评估染色体解的适应度函数。
4. 初始化种群:随机生成一组初始染色体,作为种群。
5. 选择操作:根据适应度函数,选择一部分较优秀的染色体作为父代。
6. 交叉操作:通过交叉操作,生成新的子代染色体。
7. 变异操作:对子代染色体进行变异操作,引入新的基因变异。
8. 适应度评估:计算新的子代染色体的适应度。
9. 父代替换:根据适应度函数,选择一部分较优秀的子代染色体替换掉父代染色体。
10. 终止条件判断:判断是否满足终止条件,若满足则结束算法,否则返回步骤5。
11. 输出结果:输出最优解及其适应度值。
四、实验结果与分析通过实验,我们得到了一组优化问题的最优解,并计算出其适应度值。
通过观察实验结果,我们可以发现遗传算法在解决优化问题中的有效性。
同时,我们还可以通过调整遗传算法的参数和操作过程,进一步提高算法的性能。
五、实验总结通过本次实验,我们深入了解了遗传算法的原理和应用。
遗传算法作为一种优化算法,具有较强的适应性和鲁棒性,在解决实际问题中具有广泛的应用前景。
融合粒子群与改进蚁群算法的AUV路径规划算法

2021576海洋资源已经成为人类开发的重点,但复杂的海洋环境对人类水下作业有着极大的限制,水下机器人正在成为海洋作业的主角,自主式水下机器人(Autono-mous Underwater Vehicle,AUV)依靠自身携带的能源进行水下作业。
由于在整个过程中无法补充能源,因此利用路径规划与安全避障技术对AUV导航控制,是其能否精确、安全和完整地完成水下作业的关键。
AUV 路径规划问题已经成为了一个研究热点[1],主要涉及两方面问题:一是对海洋环境进行三维建模;二是选取合适的算法进行全局路径规划。
海洋环境建模主要有两类方法:一类是规则地形模型,主要利用正方形、矩形等规则形状进行组合来表示海底表面;另一类是不规则地形模型,将三角形、多边形等不规则形状作为模型单元的基础[2]。
文献[3]使用Voronoi图法简化三维水下环境,生成全局路线图;文献[4]将Delaunay三角模型应用于被测地标,建立拓扑模型。
文献[5]利用八叉树模型来反映AUV工作环境,但主要应用于较大障碍物之间的路径规划,不适合存在许多小障碍物的环境;文献[6-7]不考虑水深,将三维空间简化为二维栅格模型,节省了空间,但却丢失了环境信息;文献[8-9]将三维空间划分为若干平面,然后利用二维栅格模型将每个平面栅格化,有效实现三维栅格建融合粒子群与改进蚁群算法的AUV路径规划算法朱佳莹,高茂庭上海海事大学信息工程学院,上海201306摘要:针对传统蚁群算法在处理自主式水下机器人AUV(Autonomous Underwater Vehicle)三维路径规划问题时存在初期寻径能力弱、算法收敛速度慢等问题,提出一种融合粒子群与改进蚁群算法的AUV路径规划算法PSO-ACO(Particle Swarm Optimization-improved Ant Colony Optimization)。
基于空间分层思想建立三维栅格模型实现水下环境建模;综合考虑路径长度、崎岖性、危险性等因素建立路径评价模型;先使用粒子群算法预搜索路径来优化蚁群算法的初始信息素;再对蚁群算法改进状态转移规则、信息素更新方式并加入奖惩机制实现全局路径规划。
优化算法改进策略总结

优化算法改进策略总结随着计算机科学的发展和应用场景的不断增多,优化算法的改进变得越来越重要。
优化算法是指通过寻找最优解来解决问题的一种方法。
然而,在实际应用中,往往会遇到各种各样的问题和挑战,如算法复杂度高、收敛速度慢、局部最优解等。
因此,优化算法的改进策略变得至关重要。
本文将从不同的角度总结和探讨优化算法的改进策略。
一、改进算法的初始化策略在优化算法中,初始化是一个非常关键的步骤。
良好的初始化策略可以加速算法的收敛速度和提高全局搜索能力。
常见的初始化策略包括随机初始化、基于问题特点的初始化和启发式初始化等。
随机初始化是一种简单且常用的策略,但它往往容易陷入局部最优解。
基于问题特点的初始化是根据问题的特点来设计初始化策略,可以更好地引导算法搜索到全局最优解。
而启发式初始化是利用启发式方法来指导初始化,通过学习和经验来提高初始化的效果。
二、改进算法的搜索策略搜索策略是优化算法中另一个重要的方面。
不同的搜索策略可以对算法的性能产生较大的影响。
常见的搜索策略包括遗传算法、模拟退火算法、粒子群算法等。
这些算法都是基于不同的搜索策略来进行优化的,每种算法都有其适用的场景和优势。
例如,遗传算法适用于搜索空间较大的问题,模拟退火算法适用于搜索空间较小但存在均匀分布的问题,粒子群算法适用于搜索空间连续且存在局部最优解的问题。
三、改进算法的选择策略选择策略是指在优化算法中选择合适的解决方案的策略。
在优化算法中,选择策略通常是通过评估目标函数来实现的。
目标函数是衡量解决方案优劣的指标,通过选择最优的解决方案来指导算法的搜索方向。
选择策略的改进可以通过引入多目标优化方法、局部搜索方法和自适应权重等方式来实现。
多目标优化方法可以同时优化多个目标函数,局部搜索方法可以在搜索过程中引入随机性以避免陷入局部最优解,自适应权重可以根据问题的特点来调整目标函数的权重。
四、改进算法的终止策略终止策略是指在优化算法中确定何时终止算法的策略。
结合引力测度和质心变异策略的混合粒子群优化算法

小型微型计算机系统Journal of Chinese Computer SystemsDOI: 10. 20009/j. cnki. 21-1106/TP. 2020-08912022年2月第2期
Vol.43 No. 2 2022
结合引力测度和质心变异策略的混合粒子群优化算法胡凯,李均利,林秀丽,邓浩(四川师范大学计算机科学学院,成都610101)E-mail :707591035@ qq. com
摘要:针对经典粒子群优化(PSO)算法在算法前期易陷入局部极值、后期收敛精度低的问题,提出一种结合引力测度和质心 变弃策略的混合粒子群优化算法(GMCMPSO).首先,在算法初始阶段采用精英分组策略,以方便获取种群的优秀信息;其次, 对两个子群采用引力测度策略,以达到种群间信息的高效共享;最后,在引力测度的引导下对一部分普通粒子进行随机变异、对
剩余的普通粒子进行质心变异,以使得算法能够有效跳出局部极值和开发最具潜力的区域,并提高算法的收敛精度.将所提出 的算法和经典粒子群优化(PSO)算法、萤火虫和粒子群的混合优化(HFPSO)算法、基于分层自主学习的改进粒子群优化 (HCPSO)算法、适应度依赖优化(FDO)算法共5个算法在16个标准测试函数上进行了比较,各项实验结果表明,GMCMPSO 在高维多峰函数上对比其他4个算法有更高的收敛精度和更快的收敛速度.关键词:粒子群优化算法;精英分组;引力测度;质心变异;收敛精度;收敛速度中图分类号:TP301 文献标识码:A 文章编号:1000-1220(2022>02>0285七8
Hybrid Particle Swarm Optimization Algorithm Combining Gravity Measure and Centroid Mutation Strategy
HU Kai.LI Jun-li.LIN Xiu-U.DENG Hao(School of Computer Science, Sichuan Normal University .Chengdu 610101 .China)
基于粒子群算法求解多目标优化问题

基于粒子群算法求解多目标优化问题一、本文概述随着科技的快速发展和问题的日益复杂化,多目标优化问题在多个领域,如工程设计、经济管理、环境保护等,都显得愈发重要。
传统的优化方法在处理这类问题时,往往难以兼顾多个目标之间的冲突和矛盾,难以求得全局最优解。
因此,寻找一种能够高效处理多目标优化问题的方法,已成为当前研究的热点和难点。
粒子群算法(Particle Swarm Optimization, PSO)作为一种群体智能优化算法,具有收敛速度快、全局搜索能力强等优点,已经在多个领域得到了广泛应用。
近年来,粒子群算法在多目标优化问题上的应用也取得了显著的成果。
本文旨在探讨基于粒子群算法求解多目标优化问题的原理、方法及其应用,为相关领域的研究提供参考和借鉴。
本文首先介绍多目标优化问题的基本概念和特性,分析传统优化方法在处理这类问题时的局限性。
然后,详细阐述粒子群算法的基本原理和流程,以及如何将粒子群算法应用于多目标优化问题。
接着,通过实例分析和实验验证,展示基于粒子群算法的多目标优化方法在实际问题中的应用效果,并分析其优缺点。
对基于粒子群算法的多目标优化方法的发展趋势和前景进行展望,为未来的研究提供方向和建议。
二、多目标优化问题概述多目标优化问题(Multi-Objective Optimization Problem, MOP)是一类广泛存在于工程实践、科学研究以及社会经济等各个领域中的复杂问题。
与单目标优化问题只寻求一个最优解不同,多目标优化问题涉及多个相互冲突的目标,这些目标通常难以同时达到最优。
因此,多目标优化问题的解不再是单一的最优解,而是一组在各个目标之间达到某种平衡的最优解的集合,称为Pareto最优解集。
多目标优化问题的数学模型通常可以描述为:在给定的决策空间内,寻找一组决策变量,使得多个目标函数同时达到最优。
这些目标函数可能是相互矛盾的,例如,在产品设计中,可能同时追求成本最低、性能最优和可靠性最高等多个目标,而这些目标往往难以同时达到最优。
遗传算法在组合优化问题上的应用研究进展

遗传算法在组合优化问题上的应用研究进展摘要:组合优化问题是在实际应用中常见的一类问题,如旅行商问题、多目标调度问题等。
遗传算法作为一种模拟生物进化过程的优化算法,被广泛应用于解决组合优化问题。
本文将对遗传算法在组合优化问题上的应用研究进展进行综述,包括算法原理、应用案例以及一些研究领域的新进展。
1. 引言组合优化问题是在优化理论与实践中常见的一类问题,包括旅行商问题、背包问题、图着色问题等。
这些问题的特点是解空间庞大且非凸,常规的优化方法往往难以在可接受的时间内找到最优解。
遗传算法作为一种模拟生物进化过程的优化算法,能够在一定程度上解决组合优化问题。
下面将从算法原理、应用案例和研究进展三个方面探讨遗传算法在组合优化问题上的应用研究进展。
2. 遗传算法原理遗传算法是一种受生物进化理论启发的优化算法,模拟了生物进化过程中的选择、交叉和变异等操作。
遗传算法的基本流程包括初始化种群、选择操作、交叉操作和变异操作。
在初始化阶段,随机生成一组初始解构成种群。
然后通过选择操作,根据适应度函数选择一部分较优的个体作为下一代的父代。
接着进行交叉和变异操作,通过基因的交叉和变异产生新的个体。
经过多代的迭代运算,种群中的个体逐渐趋于最优解。
3. 遗传算法在组合优化问题上的应用案例3.1 旅行商问题旅行商问题是一个著名的组合优化问题,目标是找到一条经过全部城市并且总路径最短的路径。
遗传算法在求解旅行商问题中得到了广泛的应用。
通过使用合适的编码方式,交叉和变异操作,以及适应度函数的设计,遗传算法能够有效地找到旅行商问题的近似最优解。
3.2 多目标调度问题多目标调度问题是在实际生产调度中经常遇到的问题,涉及到多个目标的协调与优化。
遗传算法在多目标调度问题的求解上有着显著的优势。
通过引入多目标适应度函数和非支配排序策略,遗传算法能够生成一组可行且较优的解集,为决策者提供多种选择。
4. 遗传算法在组合优化问题上的新进展4.1 算子设计优化遗传算法中的选择、交叉和变异操作对算法的效果具有重要影响。
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
改进的遗传粒子群混合优化算法陈璐璐;邱建林;陈燕云;陆鹏程;秦孟梅;赵伟康【摘要】To solve the problem that the genetic algorithm (GA)'s calculation time is long and that the particle swarm optimiza-tion (PSO)is easy to fall into local optima,an improved hybrid optimization algorithms based on GA and PSO was developed. The selection operator of the GA was improved to retain the better individuals,and speed and position of the individuals were up-dated with PSO for further maturation.Elitist strategy was adopted in crossover,and appropriate individuals were selected to cross,speed and position of the remaining individuals were updated using PSO again.The idea of PSO was introduced to muta-tion operator.Through dealing with the four functions optimization problems,the proposed method was tested and compared with other bibliography,showing its advantages in convergence,computing speed and optimization capabilities.%为解决遗传算法计算时间长和粒子群算法易陷入局部极值的问题,提出一种基于实数编码的改进的遗传算法与粒子群算法混合的优化算法.改进遗传算法中的选择算子,保留适应度值较好的个体,重新组成新的种群,由粒子群算法更新速度和位置,对个体进行进一步的成熟.交叉算子采取精英竞争策略,选取适当个体进行交叉,剩余个体再次通过PSO 算法更新速度和位置,将粒子群思想引入变异算子.通过对4个函数的优化,对此算法进行测试,并研究比较其它算法,测试结果表明,该算法在收敛性、运算速度和优化能力方面具有优越性.【期刊名称】《计算机工程与设计》【年(卷),期】2017(038)002【总页数】5页(P395-399)【关键词】选择算子;交叉算子;变异算子;遗传算法;粒子群算法;混合算法【作者】陈璐璐;邱建林;陈燕云;陆鹏程;秦孟梅;赵伟康【作者单位】南通大学电子信息学院,江苏南通 226019;南通大学计算机科学与技术学院,江苏南通226019;南通大学工程训练中心,江苏南通 226019;南通大学电子信息学院,江苏南通 226019;南通大学电子信息学院,江苏南通 226019;南通大学计算机科学与技术学院,江苏南通226019【正文语种】中文【中图分类】TP18遗传算法(genetic algorithm,GA)[1,2]、粒子群算法(particle swarm optimization,PSO)[3,4]都存在早熟收敛的问题,不同的是,遗传算法的遗传算子在提高解的多样性的同时可能产生冗余,使得算法求解效率低,而粒子群算法模式单一,收敛速度快。
近年来,已经有很多学者将二者融合起来形成混合算法,混合的形式有3种,第一,保持PSO与GA的独立性[5,6],将样本集分为多个子群,分别进行遗传算法和粒子群算法,比较最优适应度值得到全局最优适应度值和样本;第二,将遗传算子引入粒子群算法中[7],采用交叉搜索并调整惯性权重,进化到一定程度后,对部分粒子进行变异处理,以此来解决工程问题中非线性、多极值的问题;第三,将种群中所有个体进行PSO较小代数进化后,选取最优的M 个粒子进行遗传操作,GA初始种群由PSO中最优个体产生,经过遗传操作后再由PSO更新个体的速度和位置,做到两次信息交流[8,9]。
本文提出了一种HGAPSO算法,将PSO算法及思想引入GA算法中,混合后的算法具有以下特点:①对遗传算子进行改进的同时,将PSO思想运用于变异操作;②混合过程中传递信息,对未选择变异的个体再次进行速度和位置的更新,对个体进行进一步的完善成熟。
在粒子群算法中,每个个体被称为一个“粒子”,设想在一个由m个d维粒子所组成的群体,设Xi=(xi1,xi2,…,xid)T为第i个粒子的d维向量。
通过将Xi带入具体的目标函数中求解其适应值,根据适应度值来判断Xi的优劣。
每个粒子都具有两个变量即飞行速度Vi和最优位置Pbi。
Vi=(vi1,vi2,…,vid)T,Pbi=(pbi1,pbi2,…,pbid)T。
最后,整个粒子群目前搜索到的最好位置用变量Pg来表示,Pg=(pg1,pg2,…,pgd)T。
粒子的速度和位置的更新按照如下公式进行更新遗传算法常用的编码方式有二进制编码和实数编码,本文采用实数编码。
实数编码方法适用于表示取值范围较大的数,并且对染色体处理的复杂度大大降低,提高了算法的精度要求。
每一个染色体xi可以表示成n维向量,即选择算子:首先将个体按照适应度值从大到小的顺序进行排列,去除适应度值较低的四分之一的个体,这符合“优胜劣汰”的原则,未破坏种群的多样性,提升算法的收敛速度;复制剩余个体中适应度值居中的三分之一个体,重新组成新的种群,维持原个体数不变,此操作使得种群中适应度值较好的个体的数量能够快速增加,从而提高算法的高效实用性。
交叉算子:随机选择两组,每组两个个体,选择两组中适应度值高的两个个体进行算术交叉,这有利于个体之间的竞争。
假设两个个体分别为则交叉后的新个体为变异算子:粒子群算法具有收敛速度快,全局优化的特点,同时计算简单,将粒子群进化思想融入到变异算子中来,能够提高算法速度,发挥两者的互补性。
假设个体为;j=1,2,…,n。
其中待变异分量为则新个体按如下公式进行变异针对GA算法的不足,本文对GA算法中的遗传算子进行改进,并结合PSO算法及其思想进行混合优化,命名为Hybrid GA and PSO,简称“HGAPSO”。
本文将两种搜索算法混合起来形成新的优化算法。
基于进化论的自然选择寻优思想,遗传算法对于搜索最优解有一定的优势,而粒子群算法是一种过程进化迭代寻优,需要每一代粒子进行速度和位置的更新,但在搜索时间方面有一定的优势,因此本文提出了一种优化算法,该算法将粒子群算法及其思想引入遗传算法中,并对遗传算子做出改进。
该算法首先由遗传算法的选择算子按照适应度值的大小进行降序排列,去除适应度值较低的四分之一的个体,复制剩余个体中适应度值居中的三分之一的个体到下一代中并保留其它两部分个体,重新组成新的种群,然后由粒子群算法更新个体的速度和位置,对个体进行进一步的成熟。
交叉算子采取精英竞争策略,随机选择两组,每组两个个体,选取两组中适应度值高的两个个体进行算术交叉,剩余的两个个体再次进行PSO算法更新速度和位置,最后将粒子群思想引入变异算子对完成交叉操作的个体进行变异。
HGAPSO算法优化过程如图1所示。
通过上述优化过程的分析,下面给出HGAPSO算法的具体流程图和详细的优化步骤,如图2所示。
算法步骤如下:步骤1 初始化相关参数,种群个体个数pop-size;权重因子c1、c2、c;权重因子w;粒子最大速度Vmax;PSO进化代数max-k;总进化代数max-gen;步骤2 生成pop-size个个体,计算相应的适应度值;步骤3 令gen=1;步骤4 若g en≤max-gen,转步骤5,否则转步骤16;步骤5 将所有个体按照适应度值降序排列;步骤6 删除适应度值最差的1/4部分个体;步骤7 复制剩余三等份个体中适应度值居中的1/3部分个体并保留其它两份个体到下一代,组成新的种群;步骤8 令k=1;步骤9 若k≤max-k,转步骤10,否则转步骤12;步骤10 按照式(1)与式(2)更新个体的速度与位置;步骤11 k=k+1,转步骤9;步骤12 两个个体为一组,选取两组,将两组个体中适应度值高的两个个体按照式(3)与式(4)进行交叉和变异操作;步骤13 再次更新剩余的两个个体的速度与位置;步骤14 将变异后的和再次进行PSO进化的粒子进行合并,组成新的pop-size个个体;步骤15 gen=gen+1,转至步骤4;步骤16 输出所求得的最优解及函数值。
在算法性能测试部分,选取了4个经典的常用优化函数,分别用标准GA算法、标准PSO算法、GA-PSO算法[10]和本文所提的HGAPSO算法这4种算法来优化求解最值,进行对比仿真实验,以此来验证HGAPSO算法的性能,实验运行在Windows 7操作系统下Matlab2014a编程环境,硬件条件为Intel(R) Core(TM) *****************,2 GB内存,联想笔记本电脑。
F1(Rosenbrock函数该函数的全局最优点在抛物线形的山谷内,因为最优点四周平滑且狭长,不能为算法的优化提供较多的信息,因此算法通常难以辨别搜索方向,导致寻优过程困难。
函数在x1=x2=1处有极小值0。
F2(Rasdtrigin 函数该函数是个多峰函数,峰形高低起伏,不定跳跃性,在{xi∈(-1,1),i=1,2,…,n}范围内大约有7n个局部极小点,算法难以优化寻优。
函数在n=5处有全局最小值为-5。
F3(二元函数该函数是一个多峰函数,有多个局部极小点。
函数在x1=x2=0处有全局最小值0。
F4(Camel函数该函数有6个峰,每个峰有一个局部极小值点,有两个全局最小值点,最小值为-1.031 628。
算法参数设置见表1,在PSO算法中,4个函数的最大粒子速度V-max为5、5、0.5、15。
通过4个测试函数能够了解测试出改进的算法的执行力、适应性和全局搜索能力。
4种不同的函数在4种不同的算法下的运行如图3~图6所示。
通过计算,各算法性能比较见表2。
实验结果表明,HGAPSO算法具有较高的寻优能力和较快的计算能力,在处理高维函数问题时表现明显,在处理其它函数时,在前20代左右就可以有很快的收敛性,充分显现了本文算法的高效性能。
本文以平均收敛代数和平均计算时间为准则对4种不同函数的收敛效率和速度进行评价,从表2中可以明显看出,HGAPSO算法在收敛效率上占有很大的优势。