PSO优化方向

PSO优化方向,第1张

1 PSO收敛快,特别是在算法的早期,但存在着精度较低,易发散等缺点。加速系数、最大速度等参数太大,粒子可能错过最优解--------------->不收敛; 收敛的情况下,由于所有粒子都向最优的方向飞去,所有粒子趋向同一化(失去多样性)--------->使得 后期收敛速度明显变慢,搜索能力变弱 ,同时算法收敛到一定精度时,无法继续优化。

2 缺乏数学理论支持,PSO算法本质上是一种随机搜索算法,因此可靠性上让人存疑;

3 寻找一种好的拓扑结构,加强PSO算法的泛化能力;

4 平衡全局搜索和局部搜索能力;

(1)粒子群初始化:粒子群初始化对算法性能有一定的影响,分为粒子位置初始化和速度初始化。

         粒子群 位置 初始化的理想效果:初始种群尽可能 均匀覆盖整个 搜索空间。

         一、不推荐的初始化 :a 均匀分布随机数

                                          缺点:1 对搜索空间的覆盖不够好;

                                                     2 当维度D增大时候,所有的粒子都倾向于靠近搜索空间的边缘:

                                     b 伪随机数初始化:造成粒子在参数空间的不均匀分布和聚集效应;

          二、推荐的初始化 :a 基于centroidal voronoi tessellations (CVTs)的种群初始化方法(这东西是啥没搞懂);

                                   b 采用正交设计方法对种群进行初始化;

                                   c 类随机采样方法中的sobol序列:使得粒子群在参数空间更加均匀;

                                   d Hammersley方法:感觉这个类似于类随机采样方法(具体我也没搞清楚);

                                   e 将粒子建立为带电(positive charged)的模型,通过建立一个平衡方程,求解该方程的最小解获得粒子初始化位置;

                                   f 设置偏向的随机分布(推荐) :即:我们通过对评价函数等一系列先验信息进行分析,得出最优解的可能存在空间范围,然后在这些范围内,着重撒点。就算再不济,也可以根据评价函数遵循Nearer is Better class(最优解更加可能在搜索空间的中心位置准则),在搜索空间的中心位置着重撒点。比如:

粒子群 速度 初始化:主要有如下五种方式:(根据实验表明,One-rand的效果最好。喂!!!这里One-rand的表达式是不是写错了啊?)

(2)领域拓扑:粒子的拓扑,决定了粒子所接受到的信息来源。

         一、全局模型gbest:最早的粒子群优化版本是全局PSO,使用全局拓扑结构,社会 只能 通过种群中, 最优的那个粒子 ,对每个粒子施加影响。

                                   1 优点:具有较快的收敛速度。

                                   2 缺点:粒子间的交流不够充分,但更容易陷入局部极值。

         二、局部模型lbest:采用每个粒子仅在一定的邻域内进行信息交换,,粒子之间的交流相对比较缓慢。

                                   1 优点:粒子更容易搜索问题空间中的不同地区。

                                   2 缺点:信息传递缓慢,设计相对复杂。

                                   3 分类:被动模型:微观领域、宏观领域、维度划分;主动模型。

                                   (1)微观邻域:细分到每个粒子。空间邻域(spatial neighborhood)、性能空间(performance space)邻域、社会关系邻域(sociometric neighborhood)。

                                            a 空间邻域:直接在搜索空间按粒子间的距离(如欧式距离)进行划分。在搜索初始阶段,将邻域定义为每个粒子自身;随着迭代次数的增加,将邻域范围逐渐扩展到整个种群。

                                            b 性能空间领域:根据性能指标(如适应度、目标函数值)划分的邻域,如:适应度距离比值(fitness-distance-ratio)来选择粒子的相邻粒子。

                                            c 社会关系邻域: 按粒子存储阵列的索引编号进行划分,主要有:环形拓扑(ring or circle topology)、轮形拓扑(wheel topology)或星形拓扑(star topology)、塔形拓扑(pyramid topology)、冯-诺以曼拓扑(Von Neumann topology)以及随机拓扑(random topology)等。(随机拓扑往往对大多数问题能表现出较好的性能,其次是冯-诺以曼拓扑。)

                                   (2)宏观邻域:对群体进行划分。比如:使用簇分析将整个粒子群划分为多个簇,然后用簇中心代替带收缩因子PSO中的粒子历史最佳位置或群体历史最佳位置;根据粒子相似性动态地将粒子群体按种类划分为多个子种群,再以每个子种群的最佳个体作为每个粒子的邻域最佳位置;划分一个主群体,多个仆群体,仆群体进行独立的搜索,主群体在仆群体提供的最佳位置基础上开展搜索;每间隔一定代数将整个群体随机地重新划分;每个粒子除了自身和邻域最佳历史位置外,还学习邻域内其他粒子的 成功经验(只学好的,不学坏的) 等等;

                                   (3)维度划分:想法源自于:搜索空间维数较高时往往容易遭受“维数灾”的困扰。假设粒子群的整体维度为D,则可以将D划分成不同的部分,比如划分成k份,使用不同的群体,分别优化不同的维度。

                                   (4)主动模型:主动改变粒子邻域空间,避免碰撞和拥挤。比如:将粒子分为带电粒子和自然粒子,带电粒子接近会产生排斥;为每个粒子引入与邻近粒子距离成反比的自组织危险度,距离越近危险度越高,当危险度达到一定阈值,对粒子进行重新初始化,或者d开;为粒子赋一个半径,以检测两个粒子是否会发生碰撞,并且采取碰撞-d开方式将其分离。

(3)参数选择:三种参数:惯性权重或收敛因子、最大速度、两个加速因子。

         一、惯性权重:

                     a 惯性权重大:加强PSO 全局 搜索能力;惯性权重小:加强PSO 局部 搜索能力;

                     b 矛盾点:初始惯性权重大,局部搜索能力差,可能错过最优点;后期,惯性权重小,全局搜索能力不行,导致整个粒子群就陷入局部最优解。

                     c 优化方向:在适当的时候降低权重w,平衡全局和局部搜索能力;

                     d 优化建议:w随着更新代数的增加从09线性递减到04;

         二、压缩因子:

                     a 优势:惯性常数方法通常采用惯性权值随更新代数增加而递减的策略,算法后期由于惯性权值过小,会失去探索新区域的能力,而收缩因子方法则不存在此不足

                     b 优化建议:通常φ取41,χ得0729。

         三、最大速度的选择:为了抑制粒子更新的无规律的跳动,速度往往被限制在[-Vm,Vm]

                     a Vm增大,有利于全局 探索(exploration) ,但可能越过全局最优解;Vm减小,有利于局部 开发(exploitation) ,但可能陷入局部最优;

                     b 优化建议:一般设定为问题空间的10%~20%;或者动态调整Vm,比如:根据群体最佳适应和最差适应来进行调整;

         四、两个加速常数:加速常数C1和C2分别用于控制粒子指向自身或邻域最佳位置的运动。

                     a C1增大,粒子全局搜索能力好;C2增大,粒子向着最优靠拢局部能力好,但粒子会过早收敛;

                     b 优化建议:C1 = C2 = 20,并且C1+C2 <= 40;或者根据自适应调整,比如随着迭代次数增加,减小C1增大C2;

(4)混合法:PSO与其他方法结合。

                     这点我觉得,主要根据个人的学习积累来 *** 作。考虑方向:增加粒子群的局部搜索能力。

有。每一个断路器上均有一个FTU装置,可以反馈断路器开关是否过流,用表示上传的故障信息,反映的是各分段开关处是否流过故障电流有故障电流为1,否则为0)。

因为FTU上传的信息可分为有故障信息及无故障信息两类,对于分段区间来讲也只能是有故障及无故障两种情况,所以我们可以用二进制编码规则对配电网故障定位问题进行数学建模。以上图所示辐射状配电网为例,系统拥有12个分段开关,我们可以用一串12位的二进制代码表示FTU的上传信息,作为程序的输入,1代表对应的开关有过流信息,0代表对应的开关无过流信息。同时用另一串12位的二进制代码作为程序的输出,代表对应馈线区间发生故障,代表无故障。

12 二进制PSO算法的配电网故障定位原理

应用二进制PSO算法求解配电网故障定位问题,粒子的位置代表配电网中馈线区段的状态,粒子的维数代表配电网的馈线区段总数。每一馈线区段存在0和1两种状态,0表示正常状态,1表示故障状态,馈线区段的状态为待求量。因此,N段馈线区段的状态求解就转化成N维粒子群优化求解,每个粒子的N维位置都表示为配电网N段馈线区段的潜在状态。每次迭代过程中,通过评价函数评价各粒子位置优劣,更新粒子的当前最优位置和全体粒子的最优位置,进而更新粒子的速度和位置,直到满足程序终止条件为止。最终得出的粒子群的全局最优位置就是所求的各馈线区段的实际状态。

基本的粒子群算法是在连续域中搜索函数极值的有力工具,在此之后,提出了离散二进制粒子群,将离散问题空间映射到连续粒子运动空间,并适当修改粒子群算法来求解,在计算上仍保留经典粒子群算法速度-位置更新运算法则,粒子在状态空间的取值和变化只限于0和1两个值,而速度的每一维Vij代表位置每一位xij的取值为1的可能性,,因此在连续粒子群中的vij更新公式仍保持不变,但是Pbest和Gbest只在0,1的取值,其位置更新等式为:

(式中:r是0-1之间的随机数。)

13 构造配电网故障定位评价函数

基于待求各馈线区段实际状态下所对应的信息应与实际上传故障信息偏差最小的原则,构造如下评价函数:

表达式的值为每个潜在解对应的适应度值,值越小表示解越优良,因此评价函数应取极小值。

式中:

为第j个开关FTU上传的故障信息,取值为1认为该开关流过了故障电流,为0则未流过;

为各开关节点的期望状态,若该开关流过了故障电流,则期望状态为1,相反,期望状态为0,表达式为各区段状态的函数。N为配电网中馈线区段的总数,

为配电网中各设备状态,为1表明设备故障,取0则设备正常。

表示一个权系数乘以故障设备数,。是根据故障诊断理论中“最小集”概念设置的权重系数,取值范围介于与1之间,表明故障区间数越少解越优,避免出现误诊断,本文中权系数取05。

14 求期望函数

针对不同的网络,期望函数的表达式不同,无法用统一的格式表示出来。仅以上述算例为例来说明如何求取期望函数。

在辐射型配电网中,任何区间发生故障,必将导致其上游开关流过故障过电流。这是求取期望函数的原则。假设图一的馈线区段6处发生故障,那么分段开关K1,K2,K3 ,K6,都将有过电流若馈线区段11处发生故障,则K1,K2,K3 ,K6,K10都将有过电流。由此类推我们可得到各个

以上就是关于PSO优化方向全部的内容,包括:PSO优化方向、有没有配电网故障定位的matlab封装模块、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/zz/10121299.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-05
下一篇2023-05-05

发表评论

登录后才能评论

评论列表(0条)

    保存