




版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、2022/8/1微粒群优化算法1微粒群优化算法Particle Swarm Optimization Algorithm陈国初上海电机学院2022/8/1微粒群优化算法2微粒群优化算法(PSO)一、微粒群优化算法综述二、微粒群优化算法的应用实例三、与其他方法的比较2022/8/1微粒群优化算法3PSO算法的基本原理常见的改进PSO算法多相微粒群优化算法 MPPSO(Multi-Phase Particle Swarm Optimization Algorithm)PSO算法的应用情况PSO算法的研究展望一、微粒群优化算法综述2022/8/1微粒群优化算法4 微粒群优化算法(Particle S
2、warm Optimization Algorithm, PSO)是由J.Kennedy和R.C.Eberhart于1995年提出的一种新的进化计算算法,它来源于鸟类或鱼类觅食过程中迁徙和群集的模拟。 PSO一提出,立刻引起进化计算领域学者们的广泛关注,短短几年便获得快速发展,在一些领域得到应用而且应用范围会越来越广泛,已形成学术界一个新的研究热点,也已被“国际进化计算会议”列为讨论专题之一。 目前在我国,PSO的研究不管是在理论研究上还是在实践上,可见的报道都还很少。1PSO算法的基本原理2022/8/1微粒群优化算法5 假设在一个 维搜索空间中,有 个微粒组成一微粒群,其中第 个微粒的空间
3、位置为 它是优化问题的一个潜在解,将它代入优化目标函数就可以计算出相关的适应值,据适应值的大小可衡量的 优劣;第 个微粒所经历的最好位置记为 同时,每个微粒还具有各自的飞行速度1.1 算法原理(1)2022/8/1微粒群优化算法6 在微粒群中,所有微粒经历过的最好位置记为 根据J.Kennedy和R.C.Eberhart最早提出的PSO,对每一代微粒,其第 维根据如下方程变化: (1) (2) 其中: 为惯性权值(inertia weight); 和 都为正的常数,称为加速系数(acceleration coefficients); 和 是两个在0,1范围内变化的随机数。1.1 算法原理(2)
4、2022/8/1微粒群优化算法7 搜索时,微粒的速度被一个最大速度 和一个最小速度 所限制。如果当前对微粒的加速度导致它在某维的速度 超过该维的最大速度 ,则该微粒该维的速度被限制为该维的最大速度;对于最小速度也如此。同样,微粒的位置往往也被最大位置 和最小位置 所限制。 式(1)的第1部分为该微粒先前的速度;第2部分为“认知(cognition)”部分,表示微粒本身的思考;第3部分为“社会(social)”部分,表示微粒间的信息共享和相互合作。 1.1 算法原理(3)2022/8/1微粒群优化算法81.2 算法流程Step1: 初始化设置群体的规模、参数维数、惯性权值、加速系数、最大允许迭代
5、次数或误差限,各微粒的位置和速度等。Step2: 按预定准则评价各微粒的适应值。Step3: 根据公式(1)、(2)计算各微粒新的速度和位置。Step4: 重新计算各微粒的适应值,并比较其当前适应值和该微粒历史最好适应值,若当前适应值更优,则令当前适应值为该微粒历史最好适应值,当前位置为该微粒的历史最好位置。Step5: 比较当前群体所有微粒的适应值和群体历史最好适应值,若当前某微粒的适应值更优,则令当前该微粒的适应值为群体历史最好适应值,该微粒的位置为群体历史最好位置。Step6: 若满足停止条件,搜索停止,群体历史最好位置为所求结果。否则,返回Step3继续搜索。 2022/8/1微粒群优
6、化算法91.3 参数分析(1)(1)惯性权值 惯性权值 对PSO能否收敛起重要作用,它使微粒保持运动惯性,使其有扩展搜索空间的趋势,有能力探索新的区域。 值大些有利于全局搜索,收敛速度快,但不易得到精确解且有时也会陷入局部最小值; 值小些有利于局部搜索、能得到更为精确的解且不易陷入局部最小值,但收敛速度慢。合适的 值在搜索能力和收敛速度方面能起到协调作用。 最初版本的PSO中, 为常数。后来,经实验证明,为了有较好的全局搜索能力, 刚开始大些,然后逐步减小以便有更精确的解。一般地,刚开始 ,然后逐步减小到 比较合适。也可以采用自适应模糊惯性权值控制器来动态优化 ,不过这种方法在实现时有一定困难
7、。2022/8/1微粒群优化算法10(2)加速系数 加速系数 和 对PSO能否收敛不起很重要的作用,但对收敛速度影响颇大,合适的加速系数有利于算法较快收敛和脱离局部最小。它们代表将每个微粒推向 和 位置的统计加速项的权值。低的加速系数值允许微粒在被拉回之前可以在目标区域外徘徊,而高的加速系数值则导致微粒突然地冲向或越过目标区域。 在公式(1)中,若 ,微粒将一直以当前的速度飞行,直到到达边界。由于它只能搜索有限的区域,所以很难找到好解。若 ,则微粒没有认知能力,也就是“只有社会(social only)”的算法,所以 又称为社会参数。在微粒的相互作用下,有能力到达新的搜索空间。它的收敛速度比基
8、本的PSO更快,但对复杂问题,则比基本的PSO更容易陷入局部最小点。1.3 参数分析(2)2022/8/1微粒群优化算法11若 ,则微粒之间没有社会信息共享,也就是“只有认知(cognitiononly)”的算法,所以又称 为认知参数。因为个体间没有交互,一个规模为 的群体等价于运行了 个单个微粒的运行,因而得到优化解的机率非常小。 通常, 。也有实验结果显示当 时能取得更好的效果。最近一些研究还表明认知参数 选择的大些而社会参数 选择的小些,但 时能得到更好的结果。 此外,随机数 、 可以保证微粒群体的多样性。最大最小速度可以决定当前位置与最好位置之间的区域的分辨率(或精度)。如果最大速度太
9、高或最小速度太低,微粒可能会飞过好解;如果最大速度太小或最小速度太大,则微粒不能在局部好区间之外进行足够的探索,导致陷入局部最小值。1.3 参数分析(3)2022/8/1微粒群优化算法12 较大的惯性权值 有利于跳出局部极小点,而较小的 值有利于算法收敛。因此文献3,4,5提出了惯性权值 的自适应调整策略,即刚开始时 较大,随着迭代的进行, 线性地减小。这种方法的进一步发展是模糊自适应PSO(Fuzzy Adaptive PSO) 6 ,它用自适应模糊惯性权值控制器来动态优化 ,即构造一个2输入、单输出的模糊推理机来动态地修改惯性权值 。模糊推理机的两个输入分别是当前 值以及当前全局最好位置,
10、输出则是 的增量。 自适应PSO算法对许多问题都能取得满意的结果。通过自适应调整全局系数,兼顾搜索速度和搜索精度,是一种有效的PSO算法。但是对许多复杂的非线性优化问题,试图通过自适应调整一个全局系数提高搜索精度的余地是有限的,而且这种方法在实现时有一定困难。2常见的改进PSO算法2.1 自适应PSO算法 2022/8/1微粒群优化算法132.2 带收缩因子的PSO算法(PSO with a constriction factor) 文献9提出一种带收缩因子的PSO算法。其微粒速度迭代方程为: (3) 式中, 称为收缩因子, , 。 类似惯性权值,收缩因子可以改善算法的收敛性;但在控制微粒速度
11、变化的幅度上,收缩因子不同于惯性权值,而是类似于最大速度限。有实验表明10 ,在没有最大速度限时,带收缩因子的PSO算法比不带收缩因子的PSO算法具有更好的性能。 2022/8/1微粒群优化算法142.3 带选择机制的PSO(PSO with selection mechanism ) 文献11提出一种带选择机制的PSO算法。这种算法依据某些特定的技术,将每个个体的适应值,基于其当前位置,与其他个体进行比较,然后根据定义的规则将所有个体排序,得分最高的出现在群体的头部。一旦群体排完序,群体中当前位置和速度最差的一半被群体中最好的另一半取代。带选择机制的PSO算法在解决单峰函数的优化问题时效果明
12、显,但并不一定对所有的优化问题都很有效。这种算法由于有了选择机制,加快了对当前较好区域的开发过程,使得收敛速度较快,但也增加了陷入局部解的可能性。 借鉴遗传算法的思想,文献12最早提出了杂交PSO算法的概念。文献13将基本PSO和选择机制相结合,进一步提出具有繁殖和子群的杂交PSO(Hybrid PSO,HPSO)。杂交PS0算法的选择机制与遗传算法十分相似。该法给微粒群中的每一微粒赋予一个繁殖概率,在每次迭代中,依据繁殖概率的高低选取一定数量的微粒放入一个池中。池中的微粒随机地两两杂交,产生同样数目的子代微粒,并用子代微粒代替父代微粒,以保持种群的微粒数目不变。子代微粒的位置由父代微粒的位置
13、的算术加权和计算。实验结果12-14显示,杂交PSO算法的收敛速度比较快,搜索精度也相对比较高,对一些非线性优化问题可以得到满意的结果,尤其使对多峰值函数具有更好的性能。 2022/8/1微粒群优化算法152.4 带空间邻域的PSO(PSO with spatial neighbor) Angeline的研究表明15 ,尽管PSO算法能比其他进化算法更快地得到较为理想的解,但当迭代次数增加时,PSO算法并不一定能进行更精确的搜索。为此,可引入一个变化的邻域算子(Neighborhood Operator),在优化的初始阶段,一个微粒的邻域就是它本身,随着迭代次数的增加,根据候选个体与其他个体的
14、距离,逐步引入距离近的个体,邻域逐渐变大,包含越来越多的微粒,最后将包含所有的微粒。这样,原来的全局历史最好位置搜索就变成了微粒邻域的局部历史最好位置搜索。文献15更为详细的资料和许多测试函数的仿真结果表明这一方法能有效地获得全局最优解。 结合空间邻域和环状拓扑结构,文献16,17进一步提出具有社会模式(Social Stereotyping)的簇分析PSO算法(PSO with Cluster Analysis)。该法将微粒群体中的一些微粒作为中心,再将离它最近的N个微粒和中心微粒作为一簇,然后计算每个簇的中心位置,并将这些中心位置来替代 和 。但文献16,17所示的研究结果并没表明这一方法
15、具有更好的性能,结果难以令人满意,还有许多问题有待于研究。 2022/8/1微粒群优化算法162.5 离散PSO算法 Kennedy和Eberhart在基本PS0的基础上发展了离散二进制PSO18。 离散二进制PS0与基本PS0的主要区别在于运动方程(公式(1)、(2),离散二进制PS0的运动方程如下: (4) if then ;else (5) 式(5)中, 是sigmoid函数; 是随机矢量 的第 维分量。微粒的位置只有(0,1)两种状态,而速度 与某一概率的门限值相关,速度值越大,则粒子位置取1的可能性越大,反之越小。在式(4)中,为防止速度 过大,可以设置了 使函数不会过于接近0或1,
16、以保证算法能以一定的概率从一种状态跃迁到另一种状态。可以看出,除了式(5)不同,离散二进制的PS0与基本PS0几乎一样。 为了解决实际中的组合优化问题,文献19进一步推广了离散二进制PSO,提出了离散版的PSO,并将其应用于旅行商问题(TSP)的求解,取得了较好的效果。离散PSO扩展了基本PSO的应用领域,给组合优化问题的求解带来更好的应用前景。2022/8/1微粒群优化算法172. 6 有拉伸功能的PS0(PSO with Function “ Stretching” ) 拉伸变换函数最早由Vrahatis于1996年提出20,然后Parsopoulos和Plagianakos于2001年将
17、拉伸技术用于PSO最小化问题的求解21-23,形成有拉伸功能的PS0,也称为SPS0,它通过消除不理想的局部最小而保留全局最小来避免优化时陷入局部最小。 SPSO在检测到目标函数 的局部最小点 后,立即对待优化的目标函数进行拉伸变换。拉伸变换操作的实现通过两步完成20: (6) (7)其中 , , 为任意确定的正常数, 是三值符号函数。这一变换,首先通过式(6)的操作提升目标函数 ,消除了所有位于 之上的局部最小区域;然后,通过式(7)的操作将 邻域向上拉伸,使得该点具有更高的适应值。由于在两步操作中,都没有改变 下部的局部最小区域,因此对全局最小值没有影响,从而减小了PSO陷入局部最小区域的
18、概率。文献21-23的研究结果表明,SPSO具有稳健的收敛性和良好的搜索能力,在大多数高维度、多局部极值的函数最小值的求解问题上与基本PSO相比,搜索成功率显著提高。但计算耗时相应地也会增多。 2022/8/1微粒群优化算法18除了以上几类改进的PSO外,还有: 随机PSO (Random PSO)24 多次启动PSO(Multi-Start PSO)24 协作PSO (Cooperative PSO)25、26 智能PSO(Intelligent PSO)27 非受控分类PSO (Non-dominated Sorting PSO)28 2. 7 其他改进的PS02022/8/1微粒群优化算
19、法193. 多相微粒群优化算法(MPPSO) 3.1 算法原理 PSO采用全局搜索和局部搜索相结合的搜索模式,由于惯性权值的引入,PSO首先进行全局搜索以提高搜索速度,一旦找到全局最优区域,立即进行局部搜索以得到高精度的搜索结果。事实上,PSO有两个弱点:和其他的随机算法一样,为了不易陷入局部最小,扩大搜索空间的范围,导致相当多的计算量用在低适应值状态的搜索上;微粒一直不断地朝一个方向运动,直到这个方向被改变,这很容易导致微粒收敛于适应值低的局部最小。 如果将微粒分成两组,每一组有自己的搜索目标,即一组以全局最好为搜索目标,另一组以局部最好为搜索目标。一旦搜索受阻,适应值得不到改善而又不能满足
20、要求,就允许微粒改变搜索方向,即允许进行局部最优搜索的微粒进行全局最优搜索,也允许进行全局最优搜索的微粒进行局部最优搜索。假定进行全局最好位置搜索的速度和进行局部最好位置搜索的速度方向相反。这样在整个搜索过程中,微粒有可能经常从一个群体跑到另一个群体,搜索方式可能经常变化,运行方向也有可能经常改变。这就是多相微粒群优化算法的基本原理。它与基本PSO的不同之处有:将微粒分成多群,增加了搜索的多样性和搜索的广泛性。引入不同的相,每相微粒运动的方式、方向都会随之改变。从整体来看,搜索只朝适应值得到改善的方向进行。 2022/8/1微粒群优化算法203.2 参数分析(1) 在MPPSO中,除包含着基本
21、PSO的各参数,自己的算法参数主要有:相数 、相变换频率 、组系数 、 、 和速度重置量 。(1)相数 对离散二进制情况来说,由于组系数 和 在每相的可能值只能是-1或1, 最大只能为4。对于连续空间,尽管组系数 和 可以随机取值, 也不可取得太大,通常也不超过431。(2)相变换频率 决定每相之间交换微粒的快慢。通常有两种方法确定:经验比例法和自适应调整法。 在经验比例法中, 。 是最大允许迭代次数, 是1, 之间的一个经验数。假如 ,则每迭代4次后,相之间就交换微粒。即,1-4代某微粒在某一相,第5-8代则在另一相,依次类推。 在自适应调整法中,若在某一相中,微粒经若干次迭代后适应值没有改
22、善,就跳到另一相中去。此时 为适应值连续没有改善的次数。假如 , 若某一相微粒的适应值连续4次都没有改善,则下一次就该跳到另一相。2022/8/1微粒群优化算法21(3)组系数 、 、 这三个系数实际上是标识符,它们的值在每相中各不相同。 和微粒的运动速度有关,必须为正。 和微粒当前的位置有关, 和全局历史最好位置有关,且和 的标识值相反31。在PSO中,微粒总是朝一个方向移动,而MPPSO允许微粒朝不同的方向移动,所以, 若为正, 必为负。(4)速度重置量 在随机PSO(Random-PSO)和多次启动PSO(Multi-Start PSO)中,为了尽可能不陷入局部极小,往往在效果不好时采用
23、重新开始的策略24。MPPSO也沿用这一思想,经过一定的迭代次数 后就重新设置速度值。例如,若 ,则每迭代50次后就重新初始化微粒速度值。同 , 也可以由自适应调整法确定。3.2 参数分析(2)2022/8/1微粒群优化算法22 在MPPSO中,对某一相的每一代微粒,其第 维 的速度和位置根据如下方程变化31: (8) (9) 式中, 是当前速度, 是全局历史最好位置, 是当前位置。3.3 算法方程2022/8/1微粒群优化算法234. PSO的应用情况 微粒群优化算法与其它进化算法一样,可以解决大多数优化问题,目前,其应用领域主要有:函数优化、神经网络训练、系统建模与优化以及其他进化算法常用
24、的应用领域等。 4.1 函数优化 PSO最直接的应用是函数优化问题,包括多元函数优化、带约束优化问题32。Angeline经过大量的实验研究发现11-12,微粒群优化算法在解决一些典型函数优化问题时,能够取得比遗传算法更好的优化效果。这就说明微粒群优化算法在解决实际问题时同样具有很好的应用前景,因为许多实际问题都可以归结为函数优化问题。此外,PSO还在各种复杂的优化问题、动态问题和多目标优化问题中得到成功应用。例如,文献19将离散PSO用于求解TSP问题,文献33-34研究了PSO在噪声和动态环境下的优化问题,文献5、28、35将PSO用于多目标优化(Multi-objective probl
25、em)问题等,都取得了较好的效果。 2022/8/1微粒群优化算法244.2 神经网络训练 PSO是一种非常有潜力的神经网络训练算法。PSO保留了基于种群的、并行的全局搜索策略,其采用的速度位移模型,操作简单,避免了遗传算法那样复杂的交叉、变异操作,可以简单有效地训练神经网络,已被成功地用来解决许多实际问题。如:基于PSO的神经网络应用于医疗诊断36,分析人的颤抖。对人颤抖的诊断,包括帕金森(Parkinson)病和原发性颤抖,是一个非常具有挑战性的领域。PSO已成功地应用于训练一个用来快速和准确地辨别普通个体和有颤抖个体的神经网络,而网络的输入则为从一个活动变化记录系统中获得的归一化的移动振
26、幅。文献25将PSO用于训练积单元神经网络(product unit neural networks)进行模式分类,文献37将PSO用于训练模糊前向神经网络进行模式分类,从而从网络的输出中抽取规则,文献38,39将基于PSO的神经网络应用于香港市区环境污染状况的分析,也都得到了很好的效果。 2022/8/1微粒群优化算法254.3 其他应用实例(1) PSO也被成功地应用于电力系统领域。如:文献27将智能PSO应用于电磁场的优化分析,文献40将PSO用于多机电力系统稳定器的优化设计,文献14将交叉PSO用于电力分布系统电压、电流及负载的状态分布预测和状态值估计,文献41使用PSO对一个电气设备
27、的功率反馈和电压进行控制,采用一种二进制与实数混合的PSO来决定对连续和离散的控制变量的控制策略,以得到稳定的电压,文献42将PSO用于电力系统负荷模型的参数辨识,这些应用都取得好的效果。 在电机和机械设计方面,文献43将PSO用于机械结构设计中尺寸和形状的优化设计,得到比遗传算法和基于梯度下降算法更好的效果,文献44 采用PSO对粗轧宽展控制模型进行优化,结果表明优化后的模型效果明显优于原来模型,体现了PSO在优化领域的优越性。文献45将PSO应用于发电机参数辨识,提出了一种同步发电机参数辨识的计算框架,结果表明,这种参数辨识算法简单实用、具有可行性,文献46结合直线感应电机的设计特点,利用
28、改进的PSO对电机进行了优化设计,都取得了满意的效果。2022/8/1微粒群优化算法26 在半导体器件设计方面,文献47将PSO用于门级组合逻辑电路的设计,得到比遗传算法更好的效果。文献48将改进的PSO用于IIR数字滤波器的设计,仿真结果表明,与设计IIR数字滤波器的遗传优化算法相比,PSO具有更好的优化性能。 此外,还有PSO用于实际系统的模拟49和控制50、通讯51、计算机应用52、生物工程53、化学工程54等领域的应用报道,也都取得很好的效果。 4.3 其他应用实例(2) 2022/8/1微粒群优化算法275. PSO的研究展望(1) PSO是一种新兴的基于群体智慧的进化算法,人们对其
29、的研究刚刚开始,远没有像遗传算法那样具有坚实的应用基础、系统的分析方法和良好的理论基础,许多问题还有待于进一步研究: 应用领域的拓展。虽然PSO已被成功地用于常规测试函数的优化求解问题、简单系统的建模和优化问题及神经网络的训练问题。但在其它其他众多领域的应用许多还处于研究阶段,可见报道还不多,关于MPPSO的应用研究还没有相关报道,应用领域有待于拓展。开拓PSO新的应用领域、在应用的广度和深度上进行拓展都是很有价值的工作。 算法参数的确定。PSO中的一些参数如加速系数、惯性权值以及微粒个数等往往依赖于具体问题、由应用经验、经多次测试来确定,并不具有通用性。而对于MPPSO中的参数确定的研究还处
30、于刚起步阶段。因此,如何方便有效地选择算法参数,也是迫切需要研究的问题。2022/8/1微粒群优化算法28 算法的改进研究。由于实际问题的多样性和复杂性,尽管目前已提出了MPPSO和许多改进的PSO,但远不能满足实际需要,研究新的改进的PSO以便能更好地用于实际问题的求解也是很有意义的工作。就目前来看,将PSO与其他优化技术进行比较、更深入地了解它们的性能,并与其他进化算法、最小二乘、模糊逻辑、神经网络、支持向量机算法、复杂系统自组织与混沌理论以及其他优化技术相结合,根据不同的优化问题提出相应的PSO和改进的MPPSO是PSO当前的研究热点。 算法的基础理论研究。与PSO相应的相对鲜明的生物社
31、会特性基础相比,PSO的数学基础显得相对薄弱,缺乏深刻且具有普遍意义的理论分析,不能对PSO的工作机理给出恰当的数学解释;而MPPSO的基础理论更为薄弱。虽然PSO的有效性、收敛性等性能在一些实例和测试函数的仿真研究中得到验证,但没能在理论上进行严谨推敲和严格证明。5. PSO的研究展望(2)2022/8/1微粒群优化算法29因此,对PSO的基础理论研究非常重要,包括对不同搜索问题的收敛性、收敛速度估计、防止陷入局部极小、参数设置的影响和实现难易程度等。虽然目前也出现了一些有益的探索,但还是远远不够的,还需要做大量深入细致的研究。 对微粒群算法的研究,无论是在理论上还是在实践上都处于发展之中,
32、可见的研究成果还相当少,随着PSO和相关学科的发展和研究的进一步深入,PSO一定会得到越来越广泛的应用。 5. PSO的研究展望(3)2022/8/1微粒群优化算法30微粒群优化算法解题步骤举例:求上述函数的最小值。 用PSO搜索最优解时, PSO算法参数设置如下: PopSize=6; MaxIt=2000; ErrGoal=1e-8; maxw=1.5; minw=0.1; c1=2.0; c2=2.0; inertdec=(maxw-minw)/MaxIt; w=maxw-(iter-1)*inertdec;2022/8/1微粒群优化算法311. 初始化,随机产生初始粒子群和初始速度。相
33、应的适应值(也为初始个体历史最佳适应值)为:随机产生的初始位置为:全局最佳:2022/8/1微粒群优化算法32随机产生的初始速度为:2. 根据公式修正各粒子的速度和位置v(k+1)=w*v(k)+c1*R1.*(pi(k)-p(k)+c2*R2.*(pg(k)-p(k)p(k+1)=p(k)+v(k+1)2022/8/1微粒群优化算法33假如修正后计算得到各粒子的新位置为:计算相应的适应值,并调整各个体最优适应值和位置全局最佳变为:2022/8/1微粒群优化算法34各个体历史最优适应值:相应的各个体历史最优位置:再根据公式进行下一步的修正各粒子的速度和位置v(k+1)=w*v(k)+c1*R1
34、.*(pi(k)-p(k)+c2*R2.*(pg(k)-p(k)p(k+1)=p(k)+v(k+1)2022/8/1微粒群优化算法35二、微粒群优化算法的应用实例 在函数优化中的应用 在炼油装置产品质量软测量中的应用 在过程控制中的应用2022/8/1微粒群优化算法361.在函数优化中的应用(1) 通常,将所要优化的参数集中在一起,构成一个微粒,即要优化的各参数是微粒的一维。 将目标函数作为评判微粒优劣的标准,即将某微粒的各参数代入目标函数求与其对应的适应值,根据适应值的大小评判微粒的优劣。 搜索完毕后,微粒的历史全局最优位置便是所要求的优化参数,对应的历史全局最优适应值便是所要求的优化函数的
35、最优值。 由于搜索的随机性,每次搜索的结果可能不同。若算法参数选得不当,基本PSO可能会陷入局部最小。对于复杂问题,有些改进的PSO往往能有效地逃脱局部最小,但往往也只是以一定的概率获得更精确的优化解。2022/8/1微粒群优化算法371.在函数优化中的应用(2) 用PSO搜索最优解时, PSO算法参数设置如下: PopSize=20; MaxIt=2000; ErrGoal=1e-18; maxw=1.5; minw=0.1; c1=2.0; c2=2.0; inertdec=(maxw-minw)/MaxIt; w=maxw-(iter-1)*inertdec;测试函数1选为2元Rosen
36、brock函数,求其最小解:约束条件:2022/8/1微粒群优化算法381.在函数优化中的应用(3)2022/8/1微粒群优化算法391.在函数优化中的应用(4)最好位置: x1=1.0000, x2=1.0000最好适应值为: 4.6045e-017 迭代次数为: 2000次 2022/8/1微粒群优化算法401.在函数优化中的应用(5)测试函数2选函数 ,求其最大值:约束条件: 用PSO搜索最优解时, PSO算法参数设置如下: PopSize=30; MaxIt=2500; maxw=1.8; minw=0.1; c1=2.0; c2=2.0; inertdec=(maxw-minw)/M
37、axIt; w=maxw-(iter-1)*inertdec;2022/8/1微粒群优化算法411.在函数优化中的应用(6)2022/8/1微粒群优化算法421.在函数优化中的应用(7)最好位置: x1=12.1000, x2= 5.7250 最好适应值为: 38.7328 迭代次数为: 2500 2022/8/1微粒群优化算法431.在函数优化中的应用(8)基本PSO: 最好位置: x1=12.1000, x2= 5.7250 最好适应值为: 38.7328 改进PSO: 最好位置: x1=11.6255, x2= 5.7250 最好适应值为: 38.8503 迭代次数均为: 1500次 2
38、022/8/1微粒群优化算法442.在炼油装置产品质量软测量中的应用(1) 本文以实际装置的操作数据为输入、产品质量指标为输出、用前向神经网络(Neural Networks, NN)建立产品质量的软测量模型,用PSO搜索NN的最佳权值和最优阀值,便可得到所需的基于PSONN的产品质量软测量模型。并与基于BPNN的软测量模型进行比较。 建模时,以NN的各连接权值、各阀值作为微粒的维数。经过搜索,最优微粒的位置便是NN的最佳连接权值和最优阀值。 本文是随机选择一定量的数据作为训练样本,余下的数据作为检验样本。建模时,训练样本和检验样本的数据顺序均随机重排,以便减小由于人为数据安排带来的影响、有效
39、地测试出最优模型。2022/8/1微粒群优化算法452.在炼油装置产品质量软测量中的应用(2) 第1套装置选用某一20万吨/年的催化裂化装置(FCCU),用PSO神经网络建立该装置分馏塔粗汽油干点的软测量模型,并与BPNN的进行比较。训练过程中历史全局最优适应值轨迹趋势如图所示:2022/8/1微粒群优化算法462.在炼油装置产品质量软测量中的应用(3)模型的训练结果对比、泛化结果对比如图所示:2022/8/1微粒群优化算法472.在炼油装置产品质量软测量中的应用(4)组合模型的训练结果与实际值的对比、泛化结果对比如图所示:2022/8/1微粒群优化算法482.在炼油装置产品质量软测量中的应用
40、(5)组合模型与BPNN的训练结果对比、泛化结果对比如图所示:2022/8/1微粒群优化算法492.在炼油装置产品质量软测量中的应用(6) 第2套装置选用某一80万吨/年的催化裂化装置(FCCU),用PSO神经网络建立该装置主分馏塔粗汽油干点的软测量模型,并与BPNN的进行比较。训练过程中历史全局最优适应值轨迹趋势如图所示:2022/8/1微粒群优化算法502.在炼油装置产品质量软测量中的应用(7)基于PSONN的软测量模型的训练结果、泛化结果与实际值的对比:2022/8/1微粒群优化算法512.在炼油装置产品质量软测量中的应用(8)2022/8/1微粒群优化算法522.在炼油装置产品质量软测
41、量中的应用(9) 由于BP算法在寻找最优权值和阀值是单一初始值以梯度下降模式进行;而PSO是以一群微粒,即很多个初始值采用依据自己的经验结合群体的经验、随机搜索模式进行。在对复杂的炼油装置建立产品质量软测量模型时,PSO算法陷入局部极小的概率大大降低,PSO算法比BP算法更容易找到全局最优解。 由于BP算法在训练NN时,反向调节权值大都是采用梯度下降模式,需要求出神经元传递函数的导数和目标函数的导数,导致它的隐含层数不宜过多,目前基本上不超过2层。而PSO在搜索时采用依据自己的经验结合群体的经验、随机搜索模式,无需求导,因而神经网络的层数可以不受限制。 一旦基于PSO算法的前向NN和基于BP算
42、法的前向NN都没陷入局部极小、都找到最优参数,则两模型的性能(拟合性能和泛化性能)相当。 PSONN对训练数据的适应性(收敛性)比BPNN更好。2022/8/1微粒群优化算法533.在过程控制中的应用(1) 图中冷水和热水分别通过调节阀1和调节阀2进入容器,冷热水混合后通过出水阀3给下一环节提供恒温恒压用水。系统通过调节阀1保持容器内水温恒定,通过调节阀2保持容器内液位恒定,以使出水压力恒定。其中, , , 为控制变量; , , 为体积流量; , 为温度; 为温度给定值; 为液位给定值。 2022/8/1微粒群优化算法543.在过程控制中的应用(2)对该系统,首先实施常规PID控制; 然后实施
43、Two-Phases-PSO-PID控制。采样时间为0.5秒,图中横坐标为仿真中迭代步数。 对于PSO-PID控制来说,通常将三参数Kp、Ki、Kd作 为每一微粒所包含的维数。 就本系统而言,因有两路控制,在实施PSO-PID时,采用两相PSO,一相以温度回路的误差最小为优化目标,另一相以液位回路的误差最小为优化目标。两相微粒通过系统而关联。2022/8/1微粒群优化算法553.在过程控制中的应用(3)温度给定值增加10%,液位给定值减小10%时的输出变量和控制作用在常规PID控制下的变化曲线。2022/8/1微粒群优化算法563.在过程控制中的应用(4)图中为温度给定值增加10%,液位给定值
44、减小6%时,常规PID和PSO-PID控制下输出变量变化趋势的对比。两图为两次不同的PSO-PID控制参数时的输出变量的变化曲线。2022/8/1微粒群优化算法573.在过程控制中的应用(5) 由于PSO-PID三参数的初始值完全可按照常规PID的方法确定,且又以输出变量的最小误差为优化目标,因而采用PSO-PID控制可以获得满意的关于输出量的控制效果。 用PSO-PID,在优选微粒最优位置(即:最佳三参数)时,如何结合实际、选择符合实际情况的实用目标函数来评判各微粒的优劣是一难点。 尽管输出量的控制效果得到明显的改善,但控制器的控制作用的性能并没有得到改善。如何在输出量的控制效果得到改善的同
45、时,控制器的控制作用的性能也能得到改善,还是有待于解决的问题。 本文只研究了PSO-PID控制在过程控制中的应用,PSO在过程控制中的应用研究还有待于深入。关于这方面的研究,国内外可见的报道极少。2022/8/1微粒群优化算法58三、与其他算法的比较1.与BP神经网络的比较(1) 从搜索方式来看,PSO不是从一个初始点开始、而是从多个初始点开始、依据自己的搜索经验和同伴的搜索经验、采用全局搜索和局部搜索相结合的随机搜索方式获取最优解,因而可以有效地防止搜索过程收敛于局部最优、以较大的可能获得全部的最优解。而BPNN是从一个初始点开始、采用梯度下降的确定性搜索方式,因而容易陷入局部极小。但PSO
46、的计算量会大大增大。 因搜索方式的不同,PSO对目标函数、传递函数等函数的性质要求不高。而BPNN则要求目标函数、神经元的传递函数必须可导。这使得PSO的应用范围会比BPNN的应用范围大大拓宽、应用方式也更为灵活。2022/8/1微粒群优化算法591.与BP神经网络的比较(2) 从对单峰连续函数的优化来说,由于BP算法采用梯度下降方法,只要它的权值适当,会很容易地得到最优解。当然,PSO算法若参数得当、也能很容易地获得最优解。但是,BP算法的计算量要小的多,从这点来说,BP算法的性能好。但对于复杂问题的优化来说,自然是PSO要好。 由于BP算法调权公式的推导需要较复杂的偏导计算。而PSO算法微
47、粒速度、位置的更新很简单、更方便。所以,从编程实现的角度来说,PSO算法要优于BP算法。 通过实验感觉:在训练神经网络时,PSO算法对数据体的适应性和收敛性比BP算法对数据体的适应性和收敛性要好。 从学习的角度来说,应该是PSO算法比BP算法容易掌握。2022/8/1微粒群优化算法602.与遗传算法(GA)的比较遗传算法参考书:米凯利维茨美 演化算法-遗传算法和数据编码的结合M 周家驹,等译 北京:科学出版社,2000(第2章,第24-33页) PSO与GA都是新兴的进化计算算法,两者有很多类似的地方。都从多个初始点开始的并行随机搜索方法,都可以有效地防止搜索过程收敛于局部最优、以较大的可能获
48、得全局最优解。 不过,在迭代时,PSO是依据自己的搜索经验和同伴的搜索经验、采用全局搜索和局部搜索相结合搜索方式得到微粒下一个的位置;而GA是采用优势个体的交叉、变异的方式产生下一代。因而,PSO的计算较GA要简单的多、收敛速度也比GA快。 由于PSO的简洁,它的实用性比GA要好得多,编程实现相当容易(若GA是二进制编码,还有编码的问题及计算量相当大)。2022/8/1微粒群优化算法61参考文献:1 Kennedy J, and Eberhart R C. Particle swarm optimization A. Proc. IEEE Int. Conf. on Neural Networ
49、ksC. Perth, WA, Australia, 1995: 1942-1948 2 Eberhart R C, and Kennedy J. A new optimizer using particle swarm theoryA. Proc. the Sixth Int. Symposium on Micro Machine and Human ScienceC. Nagoya, Japan, 1995: 39-43. 3 Eberhart R C, and Shi Y. Particle swarm optimization: developments, applications a
50、nd resourcesA. Proc. 2001 Congress on Evolutionary Computation C. Seoul, South Korea, 2001: 81-86. 4 Shi Y, and Eberhart R C. A modified particle swarm optimizer A. Proc. IEEE Int. Conf. on Evolutionary ComputationC. Anchorage, AK, USA, 1998: 69-73. 5 G. Venter and J. Sobieszczanski-Sobieski Multidi
51、sciplinary optimization of a transport aircraft wing using particle swarm optimizationJ Struct Multidisc Optim 26, 2004: 121-131 6 Shi Y, and Eberhart R C. Fuzzy Adaptive Particle Swarm OptimizationA. Proc. IEEE Int. Conf. on Evolutionary ComputationC. Seoul, South Korea, 2001. 7 K.E. Parsopoulos an
52、d M.N. Vrahatis Recent approaches to global optimization problems through Particle Swarm OptimizationJ Natural Computing: Netherlands 2002: 2353062022/8/1微粒群优化算法628 Carlisle A and Dozier G An Off-The-Shelf PSO. Proceedings of the Particle Swarm J Optimization Workshop, 2001: 16 9 Maurice Clerc, The
53、Swarm and the Queen: Towards a Deterministic and Adaptive Particle Swarm Optimization J Proc. Congress on Evolutionary Computation, Washington, DC, 1999:1927-193010 R. C. Eberhart and Y Shi, Comparing Inertia Weights and Constriction Factors in Particle Swarm Optimization Proc. Congress on Evolutionary ComputationJ San diego, California, USA, 2000:84-8811 Peter J. Angeline Using Selection to Improve Particle Swarm Optimization J Proc. International Conference 0n Evolutionary Computation, Anchorage, Alaska, USA, 1998: 84-8912 Peter J. Angeline Evolutionary Optimiza
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 幼儿园白露教案反思学习小故事
- 建筑施工特种作业-建筑焊工真题库-3
- 2025届湖北省八市高三下学期3月联考语文试题(解析版)
- 2024-2025学年浙江省嘉兴市高一上学期期末考试语文试题(解析版)
- 新疆日新恒力橡塑有限公司年处理6万吨废旧轮胎热解项目报告书报告书简写本
- 江苏勃晟包装有限公司年产2300吨日用塑料制品(焊丝盘、包装盒、洒水壶、花盆)及300吨流延膜项目环评资料环境影响
- 话剧热泉心得体会
- 环境工程实验课件下载
- 环境工程专题课件
- 脑出血患者营养治疗讲课件
- 高中家长会 高三上学期迎战首考家长会课件
- 四川省第二地质大队招聘考试真题2024
- 学习解读公平竞争审查条例实施办法课件
- 基于物联网的智能家居安全监控系统建设方案
- 2024年中国农业银行深圳市分行招聘笔试真题
- 技能培训学校的部门设置与职责划分
- 大数据分析在运维中的应用-第1篇-深度研究
- 七年级道法下册 第二学期 期末综合测试卷(人教河北版 2025年春)
- 2025年中国鳕鱼行业市场全景评估及发展战略规划报告
- 交流激励下的锯齿环状表面介质阻挡放电特性
- 持续质量改进提高雾化吸入正确率
评论
0/150
提交评论