前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >初探粒子群优化算法(PSO)[通俗易懂]

初探粒子群优化算法(PSO)[通俗易懂]

作者头像
全栈程序员站长
发布于 2022-11-10 07:52:05
发布于 2022-11-10 07:52:05
1.4K0
举报

初探粒子群优化算法(PSO)

粒子群算法matlab实现:点击这里

粒子群优化算法简介

粒子群优化算法(PSO)最初是由Kennedy和Eberhart博士于1995年受人工生命研究的结果启发,在模拟鸟群觅食过程中的迁徙和群集行为时提出的一种基于群体智能的演化计算技术。 PSO是一种随机全局优化技术,通过粒子间的相互作用发现复杂搜索空间中的最优区域。由于PSO算法独特的优势,在工程领域中收到研究者的广泛关注。 PSO算法归根到底是一种利用随机法求多维函数特定区域的最值的算法。

PSO的优点

(1)相对于其他寻优算法,需要调整的参数较少。 (2)算法实现较为简单,效率较高。 (3)鲁棒性较好。 (4)相对于其他寻优算法,PSO容易收敛。

PSO的缺点

(1)易陷入局部最优解中 (2)难以得到精确的最优解 (3)PSO的机理性研究较少,缺乏严密的数学指导。

因此PSO算法适用于处理高维的,具有多个局部最优解的,对结果精确性要求不高的优化问题。

PSO的原理及基本概念

PSO的原理是模仿鸟群觅食的原理: 单个鸟→单个粒子 鸟群→有许多粒子组成的粒子群 鸟群的觅食行为→粒子群通过一定规律的随机运动,搜寻区域内的最优解

算法描述

在D维区域里存在m个粒子 其中第i个粒子的位置为一个矢量:xi={xi1 , xi2 , xi3…xiD} 其中第i个粒子的速度为一个矢量:vi={vi1 , vi2 , vi3 …viD} 第i个粒子搜索到的最优位置为:pi={pi1 , pi2 , pi3 …piD} 整个粒子群搜索到的最优位置为:pgbest={pgbest1 , pgbest2 , pgbest3 …{pgbestD}

第i个粒子在k次迭代时的速度为: v i d k + 1 = ω v i d k + c 1 r 1 ( p i d − x i d k ) + c 2 r 2 ( p g b e s t d − x i d k ) v^{k+1}_{id}=ωv^{k}_{id}+c_1r_1(p_{id}-x^k_{id})+c_2r_2(p_{gbestd}-x^k_{id}) vidk+1​=ωvidk​+c1​r1​(pid​−xidk​)+c2​r2​(pgbestd​−xidk​) 其中i = 1,2,3…m ; d = 1,2,3…D ω成为惯性参数;c1,c2称为学习因子,是一个正常数;r1,r2为随机数;等号右边的三项分别是:历史速度的记忆、认知部分、社会部分。

位置更新公式: x i d k + 1 = x i d k + v i d k + 1 x^{k+1}_{id}=x^{k}_{id}+v^{k+1}_{id} xidk+1​=xidk​+vidk+1​ 每次更新的速度控制在一个最大速度vmax以下。

算法流程:

算法终止条件有两种: (1)达到最大迭代步数 (2)得到可接受的满意解

参数分析

(1)惯性参数ω: ω代表对原先速度的记忆程度,依据原先的速度进行惯性运动。 较大的ω使粒子更易跳出局部最优解,获得更强的全局寻优能力,但也会使效率降低,不宜收敛;较小的ω容易陷入局部最优解,但更易收敛。

当问题空间较大时,ω不应为一个常数。在前期可以使ω较大以获得更强的全局寻优能力,后期ω变小可以提高收敛速度。这个功能可以由线性递减权值公式实现: ω = ω m a x − ( ω m a x − ω m i n ) ∗ r u n r u n m a x ω=ω_{max}-(ω_{max}-ω_{min})*\frac{run}{run_{max}} ω=ωmax​−(ωmax​−ωmin​)∗runmax​run​ (2)学习因子c1,c2: c1,c2分别代表粒子动作来自认知部分和社会部分的权重。 c1=0时,为无私型粒子群算法,丧失群体多样性,容易陷入局部最优解。 c2=0时,为自私型粒子群算法,没有信息的社会共享,收敛速度减慢。 c1>c2>0时,适用于多峰优化问题。 c2>c1>0时,适用于多峰优化问题。

自适应或动态加速度系数是基于迭代次数对两个系数进行动态调节。其中c1随代数增加而减小,c2随代数增加而增大。

c 1 = ( c 1 f − c 1 i ) t T M A X + c 1 i c_1=(c_{1f}-c_{1i})\frac{t}{T_{MAX}}+c_{1i} c1​=(c1f​−c1i​)TMAX​t​+c1i​

c 2 = ( c 2 f − c 2 i ) t T M A X + c 2 i c_2=(c_{2f}-c_{2i})\frac{t}{T_{MAX}}+c_{2i} c2​=(c2f​−c2i​)TMAX​t​+c2i​ 实验建议:c1f=0.5,c1i=2.5;c2f=2.5,c2i=0.5

(3)粒子的最大速度vmax 粒子最大速度:维护算法探索能力和开发能力的平衡。速度增大,粒子的探索能力增强,但容易飞过最优解。速度减小,开发能力较大,但容易陷入局部最优。

粒子群的拓扑结构

一种是将群体中所有粒子都作为粒子的邻域,这样的结构叫做全局粒子群算法这种结构下,粒子的认知部分是自己的历史最优解;社会部分是粒子全体的全局最优值。 另一种是将群体中的部分个体作为粒子的邻域,这样的结构叫做局部粒子群算法这种结构下,粒子的认知部分是自己的历史最优解;社会部分是粒子邻域内的全局最优值。

全局粒子群算法的收敛能力更强,但容易陷入局部最优解;局部粒子群算法全局寻优能力更强,但收敛速度较慢。

初始化时的前人经验

粒子数一般取20-40,对较难或特定类别的问题可以取100-200。 最大速度通常设定为粒子的范围宽度。 将c1和c2统一为一个控制参数φ=c1+c2。当φ=4.1时具有良好的收敛效果。 ω=0.7298和c1=c2=1.497时算法有较好的收敛性能。

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/183223.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年10月11日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
1 条评论
热度
最新
您好,【玩转EdgeOne】征文活动获奖名单已出,恭喜您获奖:https://cloud.tencent.com/developer/article/2397784 辛苦您添加社区助理微信(yun_assistant)进行兑奖~
您好,【玩转EdgeOne】征文活动获奖名单已出,恭喜您获奖:https://cloud.tencent.com/developer/article/2397784 辛苦您添加社区助理微信(yun_assistant)进行兑奖~
回复回复点赞举报
推荐阅读
腾讯EdgeOne产品测评体验—多重攻击实战验证安全壁垒
在一个阳光明媚的下午,我收到了一个特别的邀请:对腾讯云EdgeOne(简称EO),一款致力于提速和加强网站安全的边缘安全加速平台,进行深度评测。
是Yu欸
2024/04/15
6.2K2
腾讯EdgeOne产品测评体验—多重攻击实战验证安全壁垒
腾讯EdgeOne产品测评体验—基于EO新特性与传统CDN的对比以凸显EO绝对优势【以导航站为例】
EdgeOne 作为腾讯云下一代的 CDN ,提供域名解析、动静态智能加速、TCP/UDP 四层加速、DDoS/CC/Web/Bot 防护、边缘函数计算等一体化服务,也支持用户按业务需求,配置自定义复杂访问控制规则。
一键难忘
2024/04/15
4K0
腾讯EdgeOne产品测评体验—更快更强更安全,安全我选EdgeOne
自 23 年 8 月份 EdgeOne 开放订阅套餐后,腾讯云用户使用 EdgeOne 来为自己网站进行加速和防护的站点数量,呈现爆发式增长趋势。
指剑
2024/04/15
5.1K0
腾讯EdgeOne产品测评体验—更快更强更安全,安全我选EdgeOne
腾讯EdgeOne产品测评体验—使用后不敢相信,我的3D网站性能居然提升这么多
随着云计算技术的飞速发展,边缘计算和加速作为连接云端与终端的关键桥梁,正逐渐成为行业关注的焦点。腾讯作为国内领先的科技企业,推出的EdgeOne边缘计算产品引起了市场的广泛关注。本篇文章博主通过亲身测评EdgeOne产品集成后,3D网站的加速和安全两个维度的性能,为读者全面展示腾讯EdgeOne产品的性能与优点。
言程序
2024/04/15
3.5K0
腾讯EdgeOne产品测评体验—使用后不敢相信,我的3D网站性能居然提升这么多
【玩转 EdgeOne】使用下一代CDN - EdgeOne加速网站保姆式教程
原文地址:https://blog.iloli.love/archives/6fe7bbef/
猫猫摸大鱼
2023/10/25
1.3K0
【玩转 EdgeOne】使用下一代CDN - EdgeOne加速网站保姆式教程
腾讯EdgeOne产品测评体验—腾讯云Edgeone为我的网站保驾护航
众所周知,网站如果没有安全防护,极易遭受恶意攻击,导致运行受阻甚至瘫痪。为保障网站的安全稳定运行,必须采取诸如CDN加速与DDoS防护等措施,为用户提供安全、可靠的服务。
王二蛋
2024/04/15
2.5K0
腾讯云2024双11大促:边缘安全加速平台EdgeOne最佳实践
腾讯云2024双11大促已正式开始,在这场活动中,腾讯云为用户带来了超值福利,其中就包括被称为下一代CDN的边缘安全加速平台EdgeOne,那么如何正确地配置、管理EdgeOne,以确保其安全稳定运行呢?
参谋带个长
2024/11/11
2.6K0
腾讯云2024双11大促:边缘安全加速平台EdgeOne最佳实践
腾讯云新一代CDN(EdgeOne)初体验
EdgeOne 边缘安全加速平台,是腾讯云推出的新一代 CDN 内容分发网络服务,他不同于传统的 CDN,不仅可以提供加速服务,还增加了一些安全功能。以下是腾讯云边缘安全加速平台 EO 产品简介:
德顺
2023/11/15
1.1K0
腾讯云新一代CDN(EdgeOne)初体验
腾讯云EdgeOn产品测评体验—金字塔般的网络安全守护神
作为一名对网络安全和性能优化充满热情的用户,我决定体验腾讯云下一代 CDN 服务 - EdgeOne。这款引以为傲的全方位服务如数来到,从域名解析、动静态智能加速到四层加速及DDoS/CC/Web/Bot 防护,一应俱全。随着时代风云变幻,日均数千次网络攻击已成新常态,EdgeOne 的全面性能令我倍感安心。
是Dream呀
2024/04/15
3.4K0
腾讯EdgeOne产品测评体验—Web安全的攻与防:云端防护一体化
EdgeOne,作为腾讯云推出的全新CDN解决方案,集合了域名解析、智能加速、四层加速、安全防护以及边缘函数计算等多元化服务。自今年8月开放订阅以来,越来越多的网站选择EdgeOne作为他们的加速与防护伙伴,其受欢迎程度可见一斑。
德宏大魔王
2024/05/25
3320
腾讯EdgeOne产品测评体验—Web安全的攻与防:云端防护一体化
给网站加加速!下一代CDN(EdgeOne/边缘安全加速)使用与配置体验
随着访问量的增加和用户需求的多样化,网站的加载速度和稳定性逐渐成为影响用户体验的关键因素。尤其是服务器的带宽有限,面对一些图片数据,显得“力不从心”。CDN技术,就很好的解决了这个问题,但是价格也是用户思考的问题。
Mintimate
2024/10/21
6510
给网站加加速!下一代CDN(EdgeOne/边缘安全加速)使用与配置体验
边缘安全加速平台EO使用教程:提升网站性能与安全性
在数字化时代,网站和应用的性能与安全性成为了企业和开发者最为关注的两个核心问题。随着用户对访问速度和数据安全的日益增长,传统的CDN服务已难以满足日益复杂的需求。为了应对这一挑战,腾讯云推出了边缘安全加速平台EO(Tencent Cloud EdgeOne),为用户提供了一站式的边缘安全加速服务。本文将详细介绍EdgeOne的使用教程,帮助用户快速上手并充分利用这一强大工具,以提升网站性能和保障数据安全。
Front_Yue
2024/11/20
6970
边缘安全加速平台EO使用教程:提升网站性能与安全性
一文带你快速认识腾讯云下一代CDN—EdgeOne&简单体验
CDN是内容分发网络(Content Delivery Network)的缩写。它是一种网络架构,旨在将网站的静态资源(如图片、视频、脚本文件等)分布到全球各地的服务器上,以提高用户访问这些资源的速度和性能。这些服务器被称为边缘节点,它们位于世界各地的数据中心,用户可以从距离更近的边缘节点获取所需的内容,从而减少了网络延迟和加载时间。
一个风轻云淡
2024/04/11
1.1K1
腾讯EdgeOne产品测评体验—Web安全的攻与防:云端防护一体化
EdgeOne,作为腾讯云推出的全新CDN解决方案,集合了域名解析、智能加速、四层加速、安全防护以及边缘函数计算等多元化服务。自今年8月开放订阅以来,越来越多的网站选择EdgeOne作为他们的加速与防护伙伴,其受欢迎程度可见一斑。
德宏大魔王
2024/04/16
5.3K0
腾讯EdgeOne产品测评体验—Web安全的攻与防:云端防护一体化
体验腾讯云下一代CDN—EdgeOne安全加速一体化方案
7月29日有幸受邀参加了腾讯云lighthouse & dnspod在长沙举办的线下meetup交流会,并在会上了解到了腾讯云最新推出的安全加速一体化方案—EdgeOne。
4O4
2023/08/30
8260
体验腾讯云下一代CDN—EdgeOne安全加速一体化方案
【玩转 EdgeOne】体验腾讯云下一代CDN—EdgeOne安全加速一体化方案
7月29日有幸受邀参加了腾讯云lighthouse & dnspod在长沙举办的线下meetup交流会,并在会上了解到了腾讯云最新推出的安全加速一体化方案—EdgeOne。
4O4
2023/09/21
1.7K2
【玩转 EdgeOne】体验腾讯云下一代CDN—EdgeOne安全加速一体化方案
【玩转 EdgeOne】真实案例,帮公司跨境官网提速60%,被老板夸了
有耐心的童鞋可以看一下腾讯云官方的介绍文章:https://cloud.tencent.com/document/product/1552/69824 ,真的很全,很详细。
手撕代码八百里
2023/10/18
6960
【玩转 EdgeOne】真实案例,帮公司跨境官网提速60%,被老板夸了
【EdgeOne实战】TencentCloud EdgeOne 网络安全的护城河
腾讯云边缘安全加速平台 EdgeOne(以下简称 EdgeOne)依托腾讯的边缘计算节点,提供加速与安全解决方案,护航电商与零售、金融服务、内容资讯、游戏等多个行业,全面提升用户体验。
不惑
2024/07/22
7693
【EdgeOne实战】TencentCloud EdgeOne 网络安全的护城河
【玩转EdgeOne】下一代CDN简介及实操
边缘安全加速平台 EO(Tencent cloud EdgeOne,下文简称为 EdgeOne)基于腾讯边缘计算节点提供加速和安全的解决方案,可以为电商与零售、金融服务、内容资讯与游戏等行业保驾护航,提升用户体验。EdgeOne 作为腾讯云下一代的 CDN ,提供域名解析、动静态智能加速、TCP/UDP 四层加速、DDoS/CC/Web/Bot 防护、边缘函数计算等一体化服务。
Freedom123
2024/03/26
9620
EdgeOne安全守护神:您的网站安全,从此无忧!
在数字化浪潮中,网络安全已成为企业和个人必须直面的重大挑战。从DDoS攻击到恶意软件,从数据泄露到隐私侵犯,这些安全问题不仅可能导致巨大的经济损失,还可能损害品牌形象和用户信任。为了应对这一问题,许多网站选择使用CDN服务来分散流量并提高访问速度,但在遭遇大规模DDoS攻击时,CDN的高昂费用可能成为一个负担。此外,安装和维护各种Web应用防火墙(WAF)也是一种解决方案,但它们通常价格不菲。
不惑
2024/07/25
6006
EdgeOne安全守护神:您的网站安全,从此无忧!
推荐阅读
腾讯EdgeOne产品测评体验—多重攻击实战验证安全壁垒
6.2K2
腾讯EdgeOne产品测评体验—基于EO新特性与传统CDN的对比以凸显EO绝对优势【以导航站为例】
4K0
腾讯EdgeOne产品测评体验—更快更强更安全,安全我选EdgeOne
5.1K0
腾讯EdgeOne产品测评体验—使用后不敢相信,我的3D网站性能居然提升这么多
3.5K0
【玩转 EdgeOne】使用下一代CDN - EdgeOne加速网站保姆式教程
1.3K0
腾讯EdgeOne产品测评体验—腾讯云Edgeone为我的网站保驾护航
2.5K0
腾讯云2024双11大促:边缘安全加速平台EdgeOne最佳实践
2.6K0
腾讯云新一代CDN(EdgeOne)初体验
1.1K0
腾讯云EdgeOn产品测评体验—金字塔般的网络安全守护神
3.4K0
腾讯EdgeOne产品测评体验—Web安全的攻与防:云端防护一体化
3320
给网站加加速!下一代CDN(EdgeOne/边缘安全加速)使用与配置体验
6510
边缘安全加速平台EO使用教程:提升网站性能与安全性
6970
一文带你快速认识腾讯云下一代CDN—EdgeOne&简单体验
1.1K1
腾讯EdgeOne产品测评体验—Web安全的攻与防:云端防护一体化
5.3K0
体验腾讯云下一代CDN—EdgeOne安全加速一体化方案
8260
【玩转 EdgeOne】体验腾讯云下一代CDN—EdgeOne安全加速一体化方案
1.7K2
【玩转 EdgeOne】真实案例,帮公司跨境官网提速60%,被老板夸了
6960
【EdgeOne实战】TencentCloud EdgeOne 网络安全的护城河
7693
【玩转EdgeOne】下一代CDN简介及实操
9620
EdgeOne安全守护神:您的网站安全,从此无忧!
6006
相关推荐
腾讯EdgeOne产品测评体验—多重攻击实战验证安全壁垒
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档