首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往
您找到你想要的搜索结果了吗?
是的
没有找到

粒子群优化算法(PSO)和matlab代码实现

粒子群算法是一种智能优化算法。关于智能,个人理解,不过是在枚举法的基础上加上了一定的寻优机制。试想一下枚举法,假设问题的解空间很小,比如一个函数 y = x^2 ,解空间在[-1,1],现在求这个函数的最小值,我们完全可以使用枚举法,比如在这里,在解空间[-1,1]上,取1000等分,也就是步长为0.002,生成1000个x值,然后代入函数中,找到这1000个最小的y就可以了。然而实际情况不是这样的,比如为什么选1000等分,不是1w,10w等分,很显然等分的越大,计算量也就越大,带来的解当然也就越精确,那么实际问题中如何去平衡这两点呢?也就是既要计算量小(速度快),也要准确(精度高),这就是智能算法的来源了,一般的智能算法基本上都是这样的,在很大的搜索空间上,即保证了速度快,也能比较好的找到最优解。

02

粒子群优化算法(PSO)

粒子群算法是一种智能优化算法。关于智能,个人理解,不过是在枚举法的基础上加上了一定的寻优机制。试想一下枚举法,假设问题的解空间很小,比如一个函数 y = x^2 ,解空间在[-1,1],现在求这个函数的最小值,我们完全可以使用枚举法,比如在这里,在解空间[-1,1]上,取1000等分,也就是步长为0.002,生成1000个x值,然后代入函数中,找到这1000个最小的y就可以了。然而实际情况不是这样的,比如为什么选1000等分,不是1w,10w等分,很显然等分的越大,计算量也就越大,带来的解当然也就越精确,那么实际问题中如何去平衡这两点呢?也就是既要计算量小(速度快),也要准确(精度高),这就是智能算法的来源了,一般的智能算法基本上都是这样的,在很大的搜索空间上,即保证了速度快,也能比较好的找到最优解。

01

粒子群优化(PSO)算法概述

PSO(PSO——Particle Swarm Optimization)(基于种群的随机优化技术算法) 粒子群算法模仿昆虫、兽群、鸟群和鱼群等的群集行为,这些群体按照一种合作的方式寻找食物,群体中的每个成员通过学习它自身的经验和其他成员的经验来不断改变其搜索模式。 Kennedy和Eberhart提出粒子群算法的主要设计思想与两个方面的研究密切相关: 一是进化算法,粒子群算法和进化算法一样采用种群的方式进行搜索,这使得它可以同时搜索待优化目标函数解空间中的较多区域。 二是人工生命,即研究具有生命特征的人工系统,它采用的主要工具是计算机,主要方法是利用计算机编程模拟。 Millonas在用人工生命理论来研究群居动物的行为时,对于如何采用计算机构建具有合作行为的群集人工生命系统,提出了五条基本原则: (1)邻近原则(ProximityPrinciple):群体应该能够执行简单的空间和时间运算。 (2)质量原则(Quality Principle):群体应该能感受到周围环境中质量因素的变化,并对其产生响应。 (3)反应多样性原则(Principle ofDiverse Response):群体不应将自己获取资源的途径限制在狭窄的范围之内。 (4)稳定性原则(Principle ofStability):群体不应随着环境的每一次变化而改变自己的行为模式。 (5)适应性原则(Principle ofAdaptability):当改变行为模式带来的回报是值得的时候,群体应该改变其行为模式。 其中4、5两条原则是同一个问题的两面。微粒群系统满足以上五条原则。 近十余年来,针对粒子群算法展开的研究很多,前国内外已有多人从多个方面对微粒群算法进行过综述;并出现了多本关于粒子群算法的专著和以粒子群算法为主要研究内容的博士论文。

03

扫码

添加站长 进交流群

领取专属 10元无门槛券

手把手带您无忧上云

扫码加入开发者社群

相关资讯

热门标签

活动推荐

    运营活动

    活动名称
    广告关闭
    领券