导航:首页 > 源码编译 > 粒子群算法书籍

粒子群算法书籍

发布时间:2023-05-31 18:32:52

A. 请推荐几本多目标优化算法的书

《基于微粒群算法的堆石坝坝料参数反演分析》 ·《基于演化算法的多目标优化方法及其应用研究》 ·《粒子群优化算法的理论分析与应用研究》 ·《多目标遗传算法及其在发动机控制系统设计中的应用》

B. 粒子群优化算法

姓名:杨晶晶  学号:21011210420  学院:通信工程学院

【嵌牛导读】

传统的多目标优化方法是将多目标问题通过加权求和转化为单目标问题来处理的,而粒子算法主要是解决一些多目标优化问题的(例如机械零件的多目标设计优化),其优点是容易实现,精度高,收敛速度快。

【嵌牛鼻子】粒子群算法的概念、公式、调参以及与遗传算法的比较。

【嵌牛提问】什么是粒子群算法?它的计算流程是什么?与遗传算法相比呢?

【嵌牛正文】

1. 概念

        粒子群优化算法(PSO:Particle swarm optimization) 是一种进化计算技术(evolutionary computation),源于对鸟群捕食的行为研究。

        粒子群优化算法的基本思想:是通过群体中个体之间的协作和信息共享来寻找最优解。

        PSO的优势:在于简单容易实现并且没有许多参数的调节。目前已被广泛应用于函数优化、神经网络训练、模糊系统控制以及其他遗传算法的应用领域。

2. 算法

2.1 问题抽象

        鸟被抽象为没有质量和体积的微粒(点),并延伸到N维空间,粒子i在N维空间的位置表示为矢量Xi=(x1,x2,…,xN),飞行速度表示为矢量Vi=(v1,v2,…,vN)。每个粒子都有一个由目标函数决定的适应值(fitness value),并且知道自己到目前为止发现的最好位置(pbest)和现在的位置Xi。这个可以看作是粒子自己的飞行经验。除此之外,每个粒子还知道到目前为止整个群体中所有粒子发现的最好位置(gbest)(gbest是pbest中的最好值),这个可以看作是粒子同伴的经验。粒子就是通过自己的经验和同伴中最好的经验来决定下一步的运动。

2.2 更新规则

      PSO初始化为一群随机粒子(随机解)。然后通过迭代找到最优解。在每一次的迭代中,粒子通过跟踪两个“极值”(pbest,gbest)来更新自己。在找到这两个最优值后,粒子通过下面的公式来更新自己的速度和位置。

      公式(1)的第一部分称为【记忆项】,表示上次速度大小和方向的影响;公式(1)的第二部分称为【自身认知项】,是从当前点指向粒子自身最好点的一个矢量,表示粒子的动作来源于自己经验的部分;公式(1)的第三部分称为【群体认知项】,是一个从当前点指向种群最好点的矢量,反映了粒子间的协同合作和知识共享。粒子就是通过自己的经验和同伴中最好的经验来决定下一步的运动。

      以上面两个公式为基础,形成了PSO的标准形式。

      公式(2)和 公式(3)被视为标准PSO算法。

2.3 标准PSO算法流程

    标准PSO算法的流程:

    1)初始化一群微粒(群体规模为N),包括随机位置和速度;

    2)评价每个微粒的适应度;

    3)对每个微粒,将其适应值与其经过的最好位置pbest作比较,如果较好,则将其作为当前的最好位置pbest;

    4)对每个微粒,将其适应值与其经过的最好位置gbest作比较,如果较好,则将其作为当前的最好位置gbest;

    5)根据公式(2)、(3)调整微粒速度和位置;

    6)未达到结束条件则转第2)步。

        迭代终止条件根据具体问题一般选为最大迭代次数Gk或(和)微粒群迄今为止搜索到的最优位置满足预定最小适应阈值。

      公式(2)和(3)中pbest和gbest分别表示微粒群的局部和全局最优位置。

    当C1=0时,则粒子没有了认知能力,变为只有社会的模型(social-only):

被称为全局PSO算法。粒子有扩展搜索空间的能力,具有较快的收敛速度,但由于缺少局部搜索,对于复杂问题

比标准PSO 更易陷入局部最优。

    当C2=0时,则粒子之间没有社会信息,模型变为只有认知(cognition-only)模型:

      被称为局部PSO算法。由于个体之间没有信息的交流,整个群体相当于多个粒子进行盲目的随机搜索,收敛速度慢,因而得到最优解的可能性小。

2.4 参数分析

        参数:群体规模N,惯性因子 ,学习因子c1和c2,最大速度Vmax,最大迭代次数Gk。

        群体规模N:一般取20~40,对较难或特定类别的问题可以取到100~200。

        最大速度Vmax:决定当前位置与最好位置之间的区域的分辨率(或精度)。如果太快,则粒子有可能越过极小点;如果太慢,则粒子不能在局部极小点之外进行足够的探索,会陷入到局部极值区域内。这种限制可以达到防止计算溢出、决定问题空间搜索的粒度的目的。

        权重因子:包括惯性因子和学习因子c1和c2。使粒子保持着运动惯性,使其具有扩展搜索空间的趋势,有能力探索新的区域。c1和c2代表将每个粒子推向pbest和gbest位置的统计加速项的权值。较低的值允许粒子在被拉回之前可以在目标区域外徘徊,较高的值导致粒子突然地冲向或越过目标区域。

        参数设置:

        1)如果令c1=c2=0,粒子将一直以当前速度的飞行,直到边界。很难找到最优解。

        2)如果=0,则速度只取决于当前位置和历史最好位置,速度本身没有记忆性。假设一个粒子处在全局最好位置,它将保持静止,其他粒子则飞向它的最好位置和全局最好位置的加权中心。粒子将收缩到当前全局最好位置。在加上第一部分后,粒子有扩展搜索空间的趋势,这也使得的作用表现为针对不同的搜索问题,调整算法的全局和局部搜索能力的平衡。较大时,具有较强的全局搜索能力;较小时,具有较强的局部搜索能力。

        3)通常设c1=c2=2。Suganthan的实验表明:c1和c2为常数时可以得到较好的解,但不一定必须等于2。Clerc引入收敛因子(constriction factor) K来保证收敛性。

      通常取为4.1,则K=0.729.实验表明,与使用惯性权重的PSO算法相比,使用收敛因子的PSO有更快的收敛速度。其实只要恰当的选取和c1、c2,两种算法是一样的。因此使用收敛因子的PSO可以看作使用惯性权重PSO的特例。

        恰当的选取算法的参数值可以改善算法的性能。

3. PSO与其它算法的比较

3.1 遗传算法和PSO的比较

  1)共性:

  (1)都属于仿生算法。

  (2)都属于全局优化方法。

  (3)都属于随机搜索算法。

  (4)都隐含并行性。

  (5)根据个体的适配信息进行搜索,因此不受函数约束条件的限制,如连续性、可导性等。

  (6)对高维复杂问题,往往会遇到早熟收敛和收敛 性能差的缺点,都无法保证收敛到最优点。

    2)差异:   

    (1)PSO有记忆,好的解的知识所有粒子都保 存,而GA(Genetic Algorithm),以前的知识随着种群的改变被改变。

    (2)PSO中的粒子仅仅通过当前搜索到最优点进行共享信息,所以很大程度上这是一种单共享项信息机制。而GA中,染色体之间相互共享信息,使得整个种群都向最优区域移动。

    (3)GA的编码技术和遗传操作比较简单,而PSO相对于GA,没有交叉和变异操作,粒子只是通过内部速度进行更新,因此原理更简单、参数更少、实现更容易。

    (4)应用于人工神经网络(ANN)

    GA可以用来研究NN的三个方面:网络连接权重、网络结构、学习算法。优势在于可处理传统方法不能处理的问题,例如不可导的节点传递函数或没有梯度信息。

    GA缺点:在某些问题上性能不是特别好;网络权重的编码和遗传算子的选择有时较麻烦。

    已有利用PSO来进行神经网络训练。研究表明PSO是一种很有潜力的神经网络算法。速度较快且有较好的结果。且没有遗传算法碰到的问题。

C. 粒子群优化算法

         粒子群算法 的思想源于对鸟/鱼群捕食行为的研究,模拟鸟集群飞行觅食的行为,鸟之间通过集体的协作使群体达到最优目的,是一种基于Swarm Intelligence的优化方法。它没有遗传算法的“交叉”(Crossover) 和“变异”(Mutation) 操作,它通过追随当前搜索到的最优值来寻找全局最优。粒子群算法与其他现代优化方法相比的一个明显特色就是所 需要调整的参数很少、简单易行 ,收敛速度快,已成为现代优化方法领域研究的热点。

         设想这样一个场景:一群鸟在随机搜索食物。已知在这块区域里只有一块食物;所有的鸟都不知道食物在哪里;但它们能感受到当前的位置离食物还有多远。那么找到食物的最优策略是什么呢?

        1. 搜寻目前离食物最近的鸟的周围区域

        2. 根据自己飞行的经验判断食物的所在。

        PSO正是从这种模型中得到了启发,PSO的基础是 信息的社会共享

        每个寻优的问题解都被想象成一只鸟,称为“粒子”。所有粒子都在一个D维空间进行搜索。

        所有的粒子都由一个fitness function 确定适应值以判断目前的位置好坏。

        每一个粒子必须赋予记忆功能,能记住所搜寻到的最佳位置。

        每一个粒子还有一个速度以决定飞行的距离和方向。这个速度根据它本身的飞行经验以及同伴的飞行经验进行动态调整。

        粒子速度更新公式包含三部分: 第一部分为“惯性部分”,即对粒子先前速度的记忆;第二部分为“自我认知”部分,可理解为粒子i当前位置与自己最好位置之间的距离;第三部分为“社会经验”部分,表示粒子间的信息共享与合作,可理解为粒子i当前位置与群体最好位置之间的距离。

        第1步   在初始化范围内,对粒子群进行随机初始化,包括随机位置和速度

        第2步   根据fitness function,计算每个粒子的适应值

        第3步   对每个粒子,将其当前适应值与其个体历史最佳位置(pbest)对应的适应值作比较,如果当前的适应值更高,则用当前位置更新粒子个体的历史最优位置pbest

        第4步   对每个粒子,将其当前适应值与全局最佳位置(gbest)对应的适应值作比较,如果当前的适应值更高,则用当前位置更新粒子群体的历史最优位置gbest

        第5步   更新粒子的速度和位置

        第6步   若未达到终止条件,则转第2步

        【通常算法达到最大迭代次数或者最佳适应度值得增量小于某个给定的阈值时算法停止】

粒子群算法流程图如下:

以Ras函数(Rastrigin's Function)为目标函数,求其在x1,x2∈[-5,5]上的最小值。这个函数对模拟退火、进化计算等算法具有很强的欺骗性,因为它有非常多的局部最小值点和局部最大值点,很容易使算法陷入局部最优,而不能得到全局最优解。如下图所示,该函数只在(0,0)处存在全局最小值0。

D. 粒子群算法优化支持向量机参数的matlab算法,小弟毕设做这个课题,非常感谢!

你搜下Fatuo编写的网格优化SVM的锋戚程序,看下里面的目标函数值怎么写的(用的是五倍交叉验证的精度)行坦,然后编写一个类似的适银带陵应度函数给粒子群就行了

E. 优化算法笔记(五)粒子群算法(3)

(已合并本篇内容至粒子群算法(1))

上一节中,我们看到小鸟们聚集到一个较小的范围内后,不会再继续集中。这是怎么回事呢?
猜测:
1.与最大速度限制有关,权重w只是方便动态修改maxV。
2.与C1和C2有关,这两个权重限制了鸟儿的搜索行为。
还是上一节的实验, 。现在我们将maxV的值有5修改为50,即maxV=50,其他参数不变。参数如下

此时得到的最优位值的适应度函数值为0.25571,可以看出与maxV=5相比,结果差了很多而且小鸟们聚集的范围更大了。
现在我们设置maxV=1,再次重复上面的实验,实验结果如下:

这次最终的适应度函数值为,比之前的结果都要好0.00273。从图中我们可以看出,小鸟们在向一个点集中,但是他们飞行的速度比之前慢多了,如果问题更复杂,可能无法等到它们聚集到一个点,迭代就结束了。
为什么maxV会影响鸟群的搜索结果呢?
我们依然以maxV=50为例,不过这次为了看的更加清晰,我们的鸟群只有2只鸟,同时将帧数放慢5倍以便观察。

思路一:限制鸟的最大飞行速率,由于惯性系数W的存在,使得控制最大速率和控制惯性系数的效果是等价的,取其一即可。
方案1:使惯性系数随着迭代次数增加而降低,这里使用的是线性下降的方式,即在第1次迭代,惯性系数W=1,最后一次迭代时,惯性系数W=0,当然,也可以根据自己的意愿取其他值。
实验参数如下:

小鸟们的飞行过程如上图,可以看到效果很好,最后甚至都聚集到了一个点。再看看最终的适应度函数值8.61666413451519E-17,这已经是一个相当精确的值了,说明这是一个可行的方案,但是由于其最后种群过于集中,有陷入局部最优的风险。
方案2:给每只鸟一个随机的惯性系数,那么鸟的飞行轨迹也将不再像之前会出现周期性。每只鸟的惯性系数W为(0,2)中的随机数(保持W的期望为1)。
实验参数如下:

可以看到小鸟们并没有像上一个实验一样聚集于一个点,而是仍在一个较大的范围内进行搜索。其最终的适应度函数为0.01176,比最初的0.25571稍有提升,但并不显着。什么原因造成了这种情况呢?我想可能是由于惯性系数成了期望为1的随机数,那么小鸟的飞行轨迹的期望可能仍然是绕着一个四边形循环,只不过这个四边形相比之前的平行四边形更加复杂,所以其结果也稍有提升,当然对于概率算法,得到这样的结果可能仅仅是因为运气不好
我们看到惯性系数W值减小,小鸟们聚拢到一处的速度明显提升,那么,如果我们去掉惯性系数这个参数会怎么样呢。
方案3:取出惯性系数,即取W=0,小鸟们只向着那两个最优位置飞行。

可以看见鸟群们迅速聚集到了一个点,再看看得到的结果,最终的适应度函数值为2.9086886073362966E-30,明显优于之前的所有操作。
那么问题来了,为什么粒子群算法需要一个惯性速度,它的作用是什么呢?其实很明显,当鸟群迅速集中到了一个点之后它们就丧失了全局的搜索能力,所有的鸟会迅速向着全局最优点飞去,如果当前的全局最优解是一个局部最优点,那么鸟群将会陷入局部最优。所以,惯性系数和惯性速度的作用是给鸟群提供跳出局部最优的可能性,获得这个跳出局部最优能力的代价是它们的收敛速度减慢,且局部的搜索能力较弱(与当前的惯性速度有关)。
为了平衡局部搜索能力和跳出局部最优能力,我们可以人为的干预一下惯性系数W的大小,结合方案1和方案2,我们可以使每只鸟的惯性系数以一个随机周期,周期性下降,若小于0,则重置为初始值。

这样结合了方案1和方案2的惯性系数,也能得到不错的效果,大家可以自己一试。

思路二:改变小鸟们向群体最优飞行和向历史最优飞行的权重。
方案4:让小鸟向全局最优飞行的系数C2线性递减。

小鸟们的飞行过程与之前好像没什么变化,我甚至怀疑我做了假实验。看看最终结果,0.7267249621552874,这是到目前为止的最差结果。看来这不是一个好方案,让全局学习因子C2递减,势必会降低算法的收敛效率,而惯性系数还是那么大,小鸟们依然会围绕历史最优位置打转,毕竟这两个最优位置是有一定关联的。所以让C1线性递减的实验也不必做了,其效果应该与方案4相差不大。
看来只要是惯性系数不变怎么修改C1和C2都不会有太过明显的效果。为什么实验都是参数递减,却没有参数递增的实验呢?
1.惯性系数W必须递减,因为它会影响鸟群的搜索范围。
2.如果C1和C2递增,那么小鸟的惯性速度V势必会跟着递增,这与W递增会产生相同的效果。

上面我们通过一些实验及理论分析了粒子群算法的特点及其参数的作用。粒子群作为优化算法中模型最简单的算法,通过修改这几个简单的参数也能够改变算法的优化性能可以说是一个非常优秀的算法。
上述实验中,我们仅分析了单个参数对算法的影响,实际使用时(创新、发明、写论文时)也会同时动态改变多个参数,甚至是参数之间产生关联。
实验中,为了展现实验效果,maxV取值较大,一般取值为搜索空间范围的10%-20%,按上面(-100,100)的范围maxV应该取值为20-40,在此基础上,方案1、方案2效果应该会更好。
粒子群算法是一种概率算法,所以并不能使用一次实验结果来判断算法的性能,我们需要进行多次实验,然后看看这些实验的效果最终来判断,结果必须使用多次实验的统计数据来说明,一般我们都会重复实验30-50次,为了发论文去做实验的小伙伴们不要偷懒哦。
粒子群算法的学习目前告一段落,如果有什么新的发现,后面继续更新哦!
以下指标纯属个人yy,仅供参考

目录
上一篇 优化算法笔记(四)粒子群算法(2)
下一篇 优化算法笔记(六)遗传算法

F. 粒子群算法的引言

优化问题是工业设计中经常遇到的问题,许多问题最后都可以归结为优化问题. 为了解决各种各样的优化问题,人们提出了许多优化算法,比较着名的有爬山法、遗传算法、神经网络算法等. 一是要求寻找全局最优点,
二是要求有较高的收敛速度. 近年来,一些学者将PSO算法推广到约束优化问题,其关键在于如何处理好约束,即解的可行性。如果约束处理的不好,其优化的结果往往会出现不能够收敛和结果是空集的状况。基于PSO算法的约束优化工作主要分为两类:
(1)罚函数法。罚函数的目的是将约束优化问题转化成无约束优化问题。
(2)将粒子群的搜索范围都限制在条件约束簇内,即在可行解范围内寻优。
根据文献介绍,Parsopoulos等采用罚函数法,利用非固定多段映射函数对约束优化问题进行转化,再利用PSO算法求解转化后问题,仿真结果显示PSO算法相对遗传算法更具有优越性,但其罚函数的设计过于复杂,不利于求解;Hu等采用可行解保留政策处理约束,即一方面更新存储中所有粒子时仅保留可行解,另一方面在初始化阶段所有粒子均从可行解空间取值,然而初始可行解空间对于许多问题是很难确定的;Ray等提出了具有多层信息共享策略的粒子群原理来处理约束,根据约束矩阵采用多层Pareto排序机制来产生优良粒子,进而用一些优良的粒子来决定其余个体的搜索方向。
但是,目前有关运用PSO算法方便实用地处理多约束目标优化问题的理论成果还不多。处理多约束优化问题的方法有很多,但用PSO算法处理此类问题目前技术并不成熟,这里就不介绍了。 粒子群优化算法(PSO)是一种进化计算技术(evolutionary computation),1995 年由Eberhart 博士和kennedy 博士提出,源于对鸟群捕食的行为研究 。该算法最初是受到飞鸟集群活动的规律性启发,进而利用群体智能建立的一个简化模型。粒子群算法在对动物集群活动行为观察基础上,利用群体中的个体对信息的共享使整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得最优解。
PSO同遗传算法类似,是一种基于迭代的优化算法。系统初始化为一组随机解,通过迭代搜寻最优值。但是它没有遗传算法用的交叉(crossover)以及变异(mutation),而是粒子在解空间追随最优的粒子进行搜索。同遗传算法比较,PSO的优势在于简单容易实现并且没有许多参数需要调整。目前已广泛应用于函数优化,神经网络训练,模糊系统控制以及其他遗传算法的应用领域。

G. 请大家介绍一下遗传算法的书籍

王小平的《遗传算法——理论、应用与软件实现》属于较为经典的书,很多人都是看这本书入门的

焦李成等主编的《协同进化计算与多智能体系统》是一本非常好的书,内容不但新颖实用,后面的参考资料也非常丰富,而且大都是这方面的研究前沿和研究热点。这本书还是国家863和973计划资助的,很值得学习。

论文方面国内的你可以搜一下钟伟才的论文,他应该是焦的学生(我猜的),他们都是西安电子科技大学雷达信号处理国家重点实验室的专家。

多智能体系统,免疫进化计算,协同进化,粒子群遗传算法应该是这几年比较热的题目

如果你是做数值优化或者是多目标计算,你重点要弄清实数编码的遗传算法,如果是TSP或者是背包问题,则要深入了解二进制编码的遗传算法。

向你推荐两篇文章:
《An Orthogonal Genetic Algorithm with Quantization for Global Numerical optimition》
《A Fast Elitist Non-Dominated Sorting Genetic Algorithm for Multi-Objective Optimization: NSGA-II》

第一篇主要解决超高维(几百甚至上千维,不过我给你推荐的第二本书已经将这个纪录推到了上万维)问题。
第二篇主要讲了一下利用协同进化的方法,求解多目标优化的问题,在实际应用价值很大。

我的邮箱hu_hu605@163.com

H. 群智能算法及其应用的图书目录

前言 1.1 引言
1.2 蚁群算法的基本原理
1.3 粒子群优化算法基本原理
1.4 蚁群算法理论研究现状
1.5 蚁群算法应用研究现状
1.6 粒子群优化算法研究现状
1.7 粒子群算法应用研究现状 2.1 求解一般非线性整数规划的蚁群算法
2.1.1 引言
2.1.2 求解非线性整数规划的蚁群算法
2.1.3 算例分析
2.2 武器—目标分配问题的蚁群算法
2.2.1 引言
2.2.2 WTA问题
2.2.3 武器—目标分配问题的蚁群算法
2.2.4 仿真结果j
2.3 多处理机调度问题的蚁群算法
2.3.1 引言
2.3.2 多处理机调度问题数学模型
2.3.3 解多处理机调度问题模拟退火算法
2.3.4 解多处理机调度问题蚁群算法
2.3.5 算法比较
2.4 可靠性优化的蚁群算法
2.4.1 引言
2.4.2 最优冗余优化模型及解法
2.4.3 可靠性优化的模拟退火算法
2.4.4 可靠性优化的遗传算法
2.4.5 可靠性优化的蚁群算法
2.4.6 算例分析
2.5 求解旅行商问题的多样信息素的蚁群算法
2.5.1 信息素更新的3个模型
2.5.2 多样信息素更新规则
2.5.3 算法测试
2.6 本章小结 3.1 无约束非线性最优化问题
3.2 连续优化问题的信息量分布函数方法
3.3 一种简单的连续优化问题的蚁群算法
3.4 数值分析
3.5 本章小结 4.1 引言
4.2 聚类问题的数学模型
4.3 K均值算法
4.4 解聚类问题的模拟退火算法
4.5 基于巡食思想的蚁群聚类算法
4.6 解聚类问题的新的蚁群算法及数值分析
4.6.1 解聚类问题的蚁群算法
4.6.2 数值分析
4.7 解聚类问题的与K-均值算法混合的蚁群算法及数值分析
4.7.1 解聚类问题的K-均值算法混合的蚁群算法
4.7.2 数值分析
4.8 本章小结 5.1 引言
5.2 解圆排列问题的蚁群模拟退火算法
5.2.1 圆排列问题及与旅行商问题等价
5.2.2 解旅行商问题的模拟退火算法
5.2.3 几种算法的比较
5.2.4 算例分析
5.3 解旅行商问题的模拟退火蚁群算法
5.3.1 混合的基本思想
5.3.2 找邻域解策略
5.3.3 模拟退火蚁群算法
5.3.4 算法测试
5.4 本章小结 6.1 引言
6.2 基本遗传算法
6.3 蚁群算法与遗传算法的混合
6.3.1 混合的基本思想
6.3.2 变异操作
6.3.3 交叉操作
6.3.4 遗传蚁群算法
6.4 算法测试
6.5本章小结 7.1 引言
7.2 混沌及运动特性
7.3 基本蚁群算法改进
7.3.1 混沌初始化
7.3.2 选择较优解
7.3.3 混沌扰动
7.4 混沌蚁群算法
7.5 算法测试
7.6 本章小结 8.1 引言
8.2 最短路的蚁群算法收敛性分析
8.3 仿真算例
8.4 本章小结 9.1 模拟退火思想的粒子群算法
9.1.1 几种模拟退火思想的粒子群算法
9.1.2 算法测试
9.2 混沌粒子群优化算法研究
9.2.1 基本粒子群算法不足
9.2.2 混沌粒子群优化算法
9.2.3 算法测试
9.3 其他改进的粒子群优化算法
9.3.1 杂交PSO算法
9.3.2 协同PSO算法
9.3.3 离散PSO算法
9.4.本章小结 10.1 背包问题的混合粒子群优化算法
10.1.1 背包问题数学模型
10.1.2 解0-1背包问题的混合粒子群算法
10.1.3 数值仿真与分析
10.2 指派问题的交叉粒子群优化算法
10.2.1 求解指派问题的交叉粒子群优化算法
10.2.2 算法测试
10.3 武器—目标分配问题的粒子群优化算法
10.3.1 解武器—目标分配问题的粒子群优化算法
10.3.2 算例分析
10.4 流水作业调度问题的粒子群算法
10.4.1 流水作业调度问题
10.4.2 求解流水作业调度问题混合粒子群算法
10.4.3 算法测试
10.5 非线性整数规划的粒子群优化算法
10.5.1 引言
10.5.2 求解非线性整数规划的粒子群优化算法
10.5.3 算例分析
10.6 本章小结 l1.1 引言
11.2 整数规划形式
1l.3 连续性优化形式
11.4 本章小结 12.1 引言
12.2 求解旅行商问题的混合粒子群优化算法
12.2.1 混合粒子群算法思路
12.2.2 变异操作和交叉操作
12.2.3 混合粒子群算法步骤
12.2.4 算法测试
12.3 求解旅行商问题的粒子群—蚁群算法
12.3.1 粒子群—蚁群算法思想
12.3.2 粒子群—蚁群算法步骤
12.3.3 算法测试
12.4 本章小结 13.1 引言
13.2 PSO算法收敛性分析
13.3 数值仿真
13.4 参数选取
13.5 本章小结 14.1 引言
14.2 鱼群算法基本原理
14.3 人工鱼的行为描述
14.4 鱼群算法的应用
14.5 本章小结 附录A 求解旅行商问题的蚁群基本算法源程序
附录B 计算连续性函数的优化的粒子群程序
附录C 求解旅行商问题的粒子群—蚁群算法的源程序
参考文献
……

I. 粒子群算法简单介绍

粒子群算法(也称粒子群优化算法(particle swarm optimization, PSO)),模拟鸟群随机搜索食物的行为。粒子群算法中,每个优化问题的潜在解都是搜穗穗索空间中的一只鸟,叫做“粒子”。所有的粒子都有一个由被优化的函数决定的适应值(fitness value),每个粒子还有一个速度决定它们“飞行”的方向和距离。

粒子群算法初始化为一群随机的粒子(随机解),然后根据迭代找到最优解。每一次迭代中,粒子通过跟踪两个极敏扰值来更新自己:第1个是粒子本身所找到的最优解,这个称为个体极值;第2个是整个种群目前找到的最优解,这个称为全局极值。也可以不用整个种群,而是用其中的一部分作为粒子的邻居猜拿卜,称为局部极值。

假设在一个D维搜索空间中,有N个粒子组成一个群落,其中第i个粒子表示为一个D维的向量:

第i个粒子的速度表示为:

还要保存每个个体的已经找到的最优解 ,和一个整个群落找到的最优解 。

第i个粒子根据下面的公式更新自己的速度和位置:

其中, 是个体已知最优解, 是种群已知最优解, 为惯性权重, , 为学习因子(或加速常数 acceleration constant), , 是[0,1]范围内的随机数。

式(1)由三部分组成:

J. 有关粒子群算法,蚁群算法书籍

1
粒子群算法及应用
作者
纪震,廖惠连岁兆,吴青华着
出版社
科学出版社
出版时间
2009-1-1
2
粒子群优化算法
作者
李丽,牛奔着
出版社岩宴
冶金工业出版社
出版时间
2009-10-1
。粗雀银。。
此外你还可以看看关于:近似算法,优化算法,智能算法一类的书籍

阅读全文

与粒子群算法书籍相关的资料

热点内容
旁氏算法 浏览:765
程序员那么可爱电视剧免费观看极速版 浏览:747
程序员那么可爱陆漓孩子保住了吗 浏览:564
如何获取服务器dns秒解 浏览:663
如何破解大黄蜂的加密文件 浏览:11
新概念英语第三册pdf 浏览:401
分项详细估算法步骤 浏览:436
ipad桌面文件夹放大 浏览:891
我的世界基岩版怎么进国际服务器 浏览:516
福州医院有没有解压舱 浏览:470
带pwm的51单片机 浏览:916
ace程序员指南源码 浏览:414
哪个app可以分36期还款 浏览:243
为什么安卓软件平台那么多 浏览:286
如果把服务器切断了怎么办 浏览:18
app建立网站需要什么技术 浏览:690
迷你世界教你开云服务器 浏览:560
铝窗下料用什么app 浏览:842
天堂服务器怎么进 浏览:386
程序员汽车号码 浏览:462