群体智能优化算法

群体智能优化算法群体智能优化算法介绍什么是群体智能优化算法群体智能优化算法的定义群体智能优化算法的原则常见的群体智能优化算法挖坑蚁群算法粒子群优化算法菌群算法蛙跳算法人工蜂群算法总结由于在研究生期间一直研究粒子群优化算法(ParticleSwarmOptimization),所以对其他的一些群体智能优化算法(SwarmIntelligence)也是有一定的了解的,既然自己在这方面还算有一些自己的见解,所以…

大家好,又见面了,我是你们的朋友全栈君。

由于在研究生期间一直研究
粒子群优化算法(Particle Swarm Optimization),所以对其他的一些
群体智能优化算法(Swarm Intelligence)也是有一定的了解的,既然自己在这方面还算有一些自己的见解,所以,就把这些内容分享出来,让更多的人了解这方面的内容,在需要用到这方面内容去做研究或者写毕设或者做项目的过程中,能够快速的入门。

什么是群体智能优化算法

在研究生期间我研究的是粒子群优化算法,主要将其用在目标跟踪等方面,所以,有了介绍粒子群优化算法的想法,但是,在介绍粒子群优化算法之前,有必要先介绍一下群体智能优化算法,因为粒子群优化算法是属于群体智能优化算法中的一种比较常用的算法。

群体智能优化算法的定义

定义:群体智能优化算法主要模拟了昆虫、兽群、鸟群和鱼群的群体行为,这些群体按照一种合作的方式寻找食物,群体中的每个成员通过学习它自身的经验和其他成员的经验来不断地改变搜索的方向。任何一种由昆虫群体或者其他动物社会行为机制而激发设计出的算法或分布式解决问题的策略均属于群体智能(Swarm Intelligence)
白话解释:模仿昆虫或者一些动物的觅食或者其他行为,这些动物群体按照一中合作的方式寻找食物,不断的交流食物信息,能够很快的找到更多的食物。通过对他们的行为的研究抽象出来的一种算法,就是群体智能优化算法。(例如,一个个体找到了食物,就会通知其他个体来这个有食物的地方,这就是一种行为)

群体智能优化算法的原则

  • 邻近原则:群体能够进行简单的空间和时间计算;
  • 品质原则:群体能够响应环境中的品质因子;
  • 多样性反应原则:群体的行动范围不应该太窄;
  • 稳定性原则:群体不应在每次环境变化时都改变自身的行为;
  • 适应性原则:在所需代价不太高的情况下,群体能够在适当的时候改变自身的行为。

常见的群体智能优化算法

群体智能优化算法出现后,可以说是非常的受欢迎,很多研究学者也都提出了一些自己的群体智能优化算法,但是,受到大家认可(应用较为广泛)的算法大致为:

  • 蚁群算法————-1992年提出
  • 粒子群优化算法—-1995年提出
  • 菌群算法————-2002年提出
  • 蛙跳算法————-2003年提出
  • 人工蜂群算法——-2005年提出
  • 花朵授粉算法——-2012年提出

除了几种常见的算法之外,还有很多很多被提出的群体智能优化算法,例如:萤火虫算法、布谷鸟算法、蝙蝠算法、狼群算法、烟花算法、合同网协议算法等等。

挖坑

后续会对一下几种算法进行详细的介绍(先挖个坑-_-)。

蚁群算法

未完待续

粒子群优化算法

粒子群优化算法在1995 年由Eberhart 博士和kennedy 博士提出,源于对鸟群捕食的行为研究 。该算法最初是受到飞鸟集群活动的规律性启发,进而利用群体智能建立的一个简化模型。粒子群算法在对动物集群活动行为观察基础上,利用群体中的个体对信息的共享使整个群体的运动在问题求解空间中产生从无序到有序的演化过程,从而获得最优解。已填坑,点击查看

菌群算法

菌群优化算法(BFO)是近些年来发展起来的,基于大肠杆菌觅食行为模型的一种新型群智能算法。它是一种简单有效的随机全局优化技术。已填坑,点击查看

蛙跳算法

蛙跳算法的思想是:在一片湿地中生活着一群青蛙。湿地内离散的分布着许多石头,青蛙通过寻找不同的石头进行跳跃去找到食物较多的地方。每只青蛙个体之间通过文化的交流实现信息的交换。每只青蛙都具有自己的文化。每只青蛙的文化被定义为问题的一个解。湿地的整个青蛙群体被分为不同的子群体,每个子群体有着自己的文化,执行局部搜索策略。在子群体中的每个个体有着自己的文化,并且影响着其他个体,也受其他个体的影响,并随着子群体的进化而进化。当子群体进化到一定阶段以后,各个子群体之间再进行思想的交流(全局信息交换)实现子群体间的混合运算,一直到所设置的条件满足为止。未完待续(会单独写一篇文章详细介绍)

人工蜂群算法

人工蜂群算法是模仿蜜蜂行为提出的一种优化方法,是集群智能思想的一个具体应用,它的主要特点是不需要了解问题的特殊信息,只需要对问题进行优劣的比较,通过各人工蜂个体的局部寻优行为,最终在群体中使全局最优值突现出来,有着较快的收敛速度。未完待续(会单独写一篇文章详细介绍)

总结

本博文对群体智能优化算法进行了简单的介绍,并对几种群体智能优化算法进行了简单的描述,留着后续填坑。
如果您有任何需要,都可以加我微信,进行讨论。
在这里插入图片描述

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

发布者:全栈程序员-用户IM,转载请注明出处:https://javaforall.cn/142297.html原文链接:https://javaforall.cn

【正版授权,激活自己账号】: Jetbrains全家桶Ide使用,1年售后保障,每天仅需1毛

【官方授权 正版激活】: 官方授权 正版激活 支持Jetbrains家族下所有IDE 使用个人JB账号...

(0)
blank

相关推荐

  • android详解_MPAndroidChart

    android详解_MPAndroidChart在开发当中曲线图用的时候太多了,之前都是自己手写,之后发现太累还丑不符合需求MPAndroidChart先介绍LineChart0.效果图首先依赖1. implementation

  • Spring MVC 3 深入总结

    Spring MVC 3 深入总结

  • jQuery带控制按钮向上和向下滚动文本列表

    效果:http://hovertree.com/texiao/jquery/64/效果图如下:代码如下:转自:http://hovertree.com/h/bjaf/gundong.htm特效:

    2021年12月23日
  • java创建线程池的几种方式_Java中的线程池

    java创建线程池的几种方式_Java中的线程池Java创建线程池线程池:4大方法,7大参数,4种拒绝策略池化技术:把一些能够复用的东西(比如说数据库连接、线程)放到池中,避免重复创建、销毁的开销,从而极大提高性能。优点:降低系统资源消耗,通过重用已存在的线程,降低线程创建和销毁造成的消耗;提高系统响应速度,当有任务到达时,无需等待新线程的创建便能立即执行;方便线程并发数的管控,线程若是无限制的创建,不仅会额外消耗大量系统资源,更是占用过多资源而阻塞系统或oom等状况,从而降低系统的稳定性。线程池能有效管控线程,统一分配、调优,提供资

  • html中div滚动条设置,DIV滚动条属性及样式设置方式「建议收藏」

    html中div滚动条设置,DIV滚动条属性及样式设置方式「建议收藏」这里向大家描述一下DIV滚动条属性及样式设置,所谓DIV滚动条,就是利用DIV标签,在里面嵌入CSS样式表,加入overflow的属性值,这样,当div所规范的区域内的内容达到一定程序时,滚动条就派上用场。DIV滚动条属性及样式设置所谓DIV滚动条,就是利用DIV标签,在里面嵌入CSS样式表,加入overflow的属性值,这样,当div所规范的区域内的内容达到一定程序时,滚动条就派上用场。其功能大…

  • vs2005注册_vs注册界面设计

    vs2005注册_vs注册界面设计注册码:KYTYH-TQKW6-VWPBQ-DKC8F-HWC4J找到SETUP文件夹下的setup.sdb,用记事本打开它,找到[ProductKey],将下面的一行序列号删除,改为正式Key,保存后再安装就是正式版了,记住,中间没有横线!!如果先前已经安装好180天的版本,请在添加删除VisualStudio2005时,可以输入序列号,进行升级。找到SETUP文件夹下的setup.

发表回复

您的电子邮箱地址不会被公开。

关注全栈程序员社区公众号