查看完整原理请点击http://www.daimapi.com/algorithm4_1/

1ACO原理

蚁群算法最早是由Marco Dorigo等人在1991年提出,他们在研究新型算法的过程中,发现蚁群在寻找食物时,通过分泌一种称为信息素的生物激素交流觅食信息从而能快速的找到目标,据此提出了基于信息正反馈原理的蚁群算法。

蚁群算法的基本思想来源于自然界蚂蚁觅食的最短路径原理,根据昆虫科学家的观察,发现自然界的蚂蚁虽然视觉不发达,但它们可以在没有任何提示的情况下找到从食物源到巢穴的最短路径,并在周围环境发生变化后,自适应地搜索新的最佳路径。

蚂蚁在寻找食物源的时候,能在其走过的路径上释放一种叫信息素的激素,使一定范围内的其他蚂蚁能够察觉到。当一些路径上通过的蚂蚁越来越多时,信息素也就越来越多,蚂蚁们选择这条路径的概率也就越高,结果导致这条路径上的信息素又增多,蚂蚁走这条路的概率又增加,生生不息。这种选择过程被称为蚂蚁的自催化行为。对于单个蚂蚁来说,它并没有要寻找最短路径,只是根据概率选择;对于整个蚁群系统来说,它们却达到了寻找到最优路径的客观上的效果。这就是群体智能。

2ACO规则

1、范围:

蚂蚁观察到的范围是一个方格世界,蚂蚁有一个参数为速度半径(一般是3),那么它能观察到的范围就是3*3个方格世界,并且能移动的距离也在这个范围之内。

2、环境:

蚂蚁所在的环境是一个虚拟的世界,其中有障碍物,有别的蚂蚁,还有信息素,信息素有两种,一种是找到食物的蚂蚁洒下的食物信息素,一种是找到窝的蚂蚁洒下的窝的信息素。每个蚂蚁都仅仅能感知它范围内的环境信息。环境以一定的速率让信息素消失。

3、觅食规则:

在每只蚂蚁能感知的范围内寻找是否有食物,如果有就直接过去。否则看是否有信息素,并且比较在能感知的范围内哪一点的信息素最多,这样,它就朝信息素多的地方走,并且每只蚂蚁多会以小概率犯错误,从而并不是往信息素最多的点移动。蚂蚁找窝的规则和上面一样,只不过它对窝的信息素做出反应,而对食物信息素没反应。

4-1蚁群算法(ACO)原理相关推荐

  1. 【智能优化算法】蚁群算法ACO

    文章目录 [智能优化算法] 蚁群算法 1. 简介 1.1 简介 1.2 蚁群流程图 1.3 分类(可以不看) 2. 算法 2.1 参数讲解 2.2 计算公式 1) 转移概率公式 2) 启发式因子计算公 ...

  2. 基于蚁群算法(ACO)的函数寻优代码详解

    前言   蚁群算法与遗传算法一并属于启发式算法,其原理有一定的相似性.   蚁群算法的仿生原理可以这样举例:在不远处的地上有一块奶糖,这时候你用手放个蚂蚁在地上,在无其他因素影响的情况下,这只蚂蚁会爬 ...

  3. 图说蚁群算法(ACO)附源码

    PS:再过几天就可以返校收拾东西了,想想还有点小激动呐hhh~回想疫情宅家的这半年,真是一段充满了焦虑.惊喜.忙碌.充实又时而无聊的时光...返校只能待三天又让人有点小遗憾呐.就想着趁还在家这几天,把 ...

  4. MATLAB机器学习系列-12:蚁群算法优化原理及其matlab实现

    蚁群算法原理 概述 蚁群算法(Ant Colony Algorithm, ACA)由Marco Dorigo于1992年在他的博士论文中首次提出,该算法模拟了自然界中蚂蚁的觅食行为. 蚂蚁在寻找食物源 ...

  5. 蚁群算法ACO求解连续函数最值问题

    目录 一.蚁群算法特点 二.基本蚁群算法及其流程 三.改进蚁群算法 1.精英蚂蚁系统 2.最大最小蚂蚁系统 3.基于排序的蚁群算法 4.自适应蚁群算法 四.例题 一.蚁群算法特点 (1)自组织算法 组 ...

  6. 蚁群算法ACO求解TSP问题

    目录 一.蚁群算法特点 二.基本蚁群算法及其流程 三.改进蚁群算法 1.精英蚂蚁系统 2.最大最小蚂蚁系统 3.基于排序的蚁群算法 4.自适应蚁群算法 四.例题 一.蚁群算法特点 (1)自组织算法 组 ...

  7. 智能优化算法之蚁群算法(ACO)

    蚁群算法优缺点 优点 蚁群算法是一种本质上的并行算法.每只蚂蚁搜索的过程彼此独立,仅通过信息激素进行通信.不仅增加了算法的可靠性,也使得算法具有较强的全局搜索能力. 蚁群算法是一种自组织的算法. 蚁群 ...

  8. 计算机视觉与深度学习 | 粒子群算法与遗传算法(GA)及与蚁群算法(ACO)比较

    ================================================ 博主github:https://github.com/MichaelBeechan 博主CSDN:h ...

  9. 【ACO三维路径规划】基于matlab蚁群算法无人机三维路径规划【含Matlab源码 1278期】

    一.无人机简介 0 引言 随着现代技术的发展,飞行器种类不断变多,应用也日趋专一化.完善化,如专门用作植保的大疆PS-X625无人机,用作街景拍摄与监控巡察的宝鸡行翼航空科技的X8无人机,以及用作水下 ...

最新文章

  1. ATL的GUI程序设计(3)
  2. priority queue
  3. ios6.x越狱将不会再呈现了
  4. sql 使用存储过程传递列名或表名作为参数
  5. 解决SpringBoot更新数据到MySQL乱码问题
  6. 九江学院计算机主任黄冬久,陈春生副校长到实验中间调研引导工作
  7. 不扯淡学数据库实践联系理论-课程
  8. 01【在线日志分析】之Flume-1.7.0源码编译导入eclipse
  9. Apache CXF 3.0:CDI 1.1支持可替代Spring
  10. 从xtrabackup备份恢复单表【转】
  11. 研究者展示黑客通过GPU绕过防毒软件查杀的方法
  12. python手机解释器_python3
  13. day25-3 json,pickle模块
  14. persistence java_Java数据持久层 - Persistence Manager Factory
  15. 点击area不出现黑框_黑框淋浴房,黑得高级,黑得漂亮!
  16. VBA系列(1)——VBA基础知识
  17. Excel绘制折线图_基础整理
  18. iOS8新功能新特性
  19. 2020使用html、js、正则表达式做一个前端注册表单信息验证
  20. 2074:【21CSPJ普及组】分糖果(candy)

热门文章

  1. 9款漂亮的纯css字体样式
  2. Keras : 训练minst数据集并加载模型对本地手写图片进行预测
  3. nacos启动报错 Unable to start embedded Tomcat 以及项目链接nacos报错 server is DOWN now, please try again later!
  4. 2022-2028年中国塑封机行业市场需求分析及投资前景展望报告
  5. android删除本地图片,Android之删除图库照片
  6. 【GameMaker】协程——异步执行代码
  7. Swift编程语言简介
  8. 【自然语言处理】【ChatGPT系列】FLAN:微调语言模型是Zero-Shot学习器
  9. 在计算机英语中memory,memory是什么 memory什么意思
  10. Netty系列---源码实例