粒子群优化算法

Self-Organizing Hierarchical Particle Swarm Optimizer With Time-Varying Acceleration Coefficients总结

眉间皱痕 提交于 2020-03-10 19:48:07
粒子群优化算法( PSO ) 是在 1995年由Eberhart博士和Kennedy博士一起提出的,它源于对鸟群捕食行为的研究。它的基本核心是利用群体中的个体对信息的共享从而使得整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得问题的最优解。 在 PSO中, 所有的粒子都具有一个位置向量(粒子在解空间的位置)和速度向量(决定下次飞行的方向和速度),并可以根据目标函数来计算当前的所在位置的适应值。在每次的迭代中,种群中的粒子 根据每个粒子自身的飞行经验和其他粒子在搜索空间中的飞行经验,动态改变每个粒子的速度,来调整搜索空间中每个个体的轨迹 ,从而确定下一次迭代时需要如何调整和改变飞行的方向和速度。就这样逐步迭代,最终整个种群的粒子就会逐步趋于最优解。 对于 PSO算法,惯性权重因子和两个加速常数的取值直接影响了算法的优越性。Asanga Ratnaweera等人提出了对PSO算法的扩展,并通过实验与 时变惯性权重因子法 ( PSO-TVIW )和随机惯性权重因子法( PSO-RANDIW)比较了不同方法的优缺点。 第一种是引入 时变加速度系数( TVAC) , 通过改变加速系数并随着时间的推移减少了认知成分,增加了社会成分 : 在一开始时,认知成分较大而社会成分较小,因此允许粒子在搜索空间中移动,而不是最好地朝向人口移动 ,同时

离散粒子群优化应用到时间窗车辆调度问题(matlab+附github链接)

老子叫甜甜 提交于 2020-01-30 02:12:59
项目简介: 最近需要实现一篇论文的算法,讲的是将PSO(粒子群算法)应用到TSPTW问题(时间窗车辆调度问题)上,查询了一些资料,以往的资料大多是蚁群算法的应用,所以就试着自己一步步完成这个算法。 参考论文: [1]A Novel Set-Based Particle Swarm Optimization Method for Discrete Optimization Problems [2]Gong Y J, Zhang J, Liu O, et al. Optimizing the Vehicle Routing Problem With Time Windows: A Discrete Particle Swarm Optimization Approach[J]. IEEE Transactions on Systems Man & Cybernetics Part C, 2012, 42(2):254-267. 论文建议先阅读[1], 再阅读[2]会比较好理解,这个算法比较巧妙的地方在于我们将每一个可能的路线规划图作为一个粒子(注意是将整个规划图作为一个粒子而不是规划图中的节点,我们让粒子进行运动并且不断修改它的运动方向,其实就是调整规划图中连接节点各条边的指向,使得粒子位置被不断进行更新,新的粒子对应着各条边被调整后的整幅规划图)

PSO算法

断了今生、忘了曾经 提交于 2019-12-06 10:54:04
1.简介 粒子群优化算法(PSO)是一种进化计算技术(evolutionary computation),1995 年由Eberhart 博士和kennedy 博士提出,源于对鸟群捕食的行为研究 。该算法最初是受到飞鸟集群活动的规律性启发,进而利用群体智能建立的一个简化模型。粒子群算法在对动物集群活动行为观察基础上,利用群体中的个体对信息的共享使整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得最优解。 2.基本思想 粒子群算法是模拟群体智能所建立起来的一种优化算法,粒子群算法可以用鸟类在一个空间内随机觅食为例,所有的鸟都不知道食物具体在哪里,但是他们知道大概距离多远,最简单有效的方法就是搜寻目前离食物最近的鸟的周围区域。对粒子群优化算法操作的一个简单解释如下:每一个粒子都代表了当前优化任务的一个可能解决方案。在每次迭代过程中,每个粒子都会朝着自己的最优解的方向加速,也会朝着种群中任何粒子迄今为止发现的全局最佳位置的方向加速。这意味着,如果一个粒子发现了一个更好的解,所有其他粒子都会靠近它,在这个过程中不断地搜索最优解。可以总结出粒子群算法地三条简单规则:(1)飞离最近的个体,以避免碰撞;(2)飞向目标;(3)飞向群体的中心。 假设存在一个维度为S的搜索空间,由m​个粒子组成粒子种群,其中第i​个粒子用一个S​维的向量表示,具体为Xi=(xi1,xi2,…,xiS)

ARIMA模型--粒子群优化算法(PSO)和遗传算法(GA)

一世执手 提交于 2019-12-05 04:07:46
ARIMA 模型 ARIMA模型(英语:AutoregressiveIntegratedMovingAverage model), 差分整合移动平均自回归模型 ,又称 整合移动平均自回归模型 (移动也可称作滑动), 时间序列 预测分析方法之一。ARIMA(p,d,q)中,AR是"自回归",p为自回归项数;MA为"滑动平均",q为滑动平均项数,d为使之成为平稳序列所做的差分次数(阶数)。 ARIMA(p,d,q)模型是 ARMA (p,q)模型的扩展。ARIMA(p,d,q)模型可以表示为: 其中 L 是滞后算子(Lag operator), 1. 平稳性: 平稳性就是要求经由样本时间序列所得到的拟合曲线,在未来的一段时间内仍能顺着现有状态“惯性”地延续下去; 平稳性要求序列的均值和方差不发生明显变化; 方差越大,数据波动越大,方差计算公式如下式所示: 方差等于1,那么标准差也就是1,表示概率函数在对称轴左右偏差1的位置导数为0,即为拐点。期望为0,表示概率函数以y轴为对称轴。 平稳性分为严平稳和弱平稳 严平稳:严平稳表示的分布不随时间的改变而改变,如:白噪声(正态),无论怎么取,都是期望为0,方差为1; 弱平稳:期望与相关系数(依赖性)不变,未来某时刻的t值Xt就要依赖于它的过去信息,所以需要依赖性; 2. 差分法:时间序列在 t 与 t-1 时刻的差值 3. 自回归模型( AR

路径规划学习入门

半世苍凉 提交于 2019-11-29 02:02:18
运动规划简介 当虚拟人开始一次漫游时,首先全局规划器根据已有的长期信息进行全局静态规划,确定虚拟人应该经过的最优化路线。然后全局规划器控制执行系统按照该路径运动。在运动过程中,感知系统会持续对周围环境进行感知。当发现动态的物体或未知障碍时,局部规划器根据这些感知到的局部信息,确定短期內的运动。当避障行为的优先级高于沿原路径前进时,局部规划器就能够通过竞争获得执行系统的控制权,使得虚拟人按照局部规划结果运动。完成对当前感知障碍的规避行为后,全局规划器再次取得执行系统的控制权,使得虚拟人重新回到全局规划路径上,继续向目标点运动。 参考 Dijkstra和A*算法做的效果演示动画 A*算法加入了启发函数,用于引导其搜索方向,A*算法会比Dijkstra算法规划速度快不少 最佳优先搜索(BFS)算法  BFS按照类似的流程运行,不同的是它能够评估(称为启发式的)任意结点到目标点的代价。与选择离初始结点最近的结点不同的是,它选择离目标最近的结点。BFS不能保证找到一条最短路径。然而,它比Dijkstra算法快的多,因为它用了一个启发式函数(heuristic function)快速地导向目标结点。例如,如果目标位于出发点的南方,BFS将趋向于导向南方的路径。在下面的图中,越黄的结点代表越高的启发式值(移动到目标的代价高),而越黑的结点代表越低的启发式值(移动到目标的代价低)