轻松解读仿生学最优化算法(二)——蚁群算法
蚁群算法简单解读
1.仿生学背景
蚂蚁在寻找食物的过程中,会在经过的道路上留下信息素。
起初蚂蚁不知道食物在哪儿,于是在经过的道路上留下浓度一致的信息素。在同样的时间内,绕远路的蚂蚁和走近路的蚂蚁消耗了等量的信息素,等量的信息素均匀分布在道路上,自然是近路上的信息素浓度更高。
当下一只蚂蚁寻找食物的时候,就会主动选择信息素浓度高的路,并留下新的信息素,使之浓度更高。而那些远路上的信息素就会因为很少有蚂蚁经过逐渐淡去。可见,蚂蚁寻路是一个正反馈网络,最终蚁群将找到最近的道路。
2.算法关键
- 每个个体都代表一条道路,个体对应的目标函数值即为道路的信息素浓度。
- 个体的运动距离随信息素浓度而定。若该个体的信息素浓度与最大浓度相差甚远,则需往任意方向迈一大步。若相差无几,则只需迈一小步。
- 如果运动后该个体的信息素浓度反而变小了,则视作无效,需重新运动。
- 运动的高度随机性使得结果不局限于局部最优值。
- 该算法是一个循环过程,每一次循环都使所有的个体运动一次。
3.算法简明流程
- 首先随机产生N个初始个体,使之随机分布在函数的可行域上。
- 然后计算每个个体的初始信息素浓度,即个体对应的目标函数值,并记录最大浓度值。
- 移动每个个体。若该个体信息素浓度与最大浓度相差甚远,则进行一次大调整(如x=x+max_step*(rand(1)-0.5)),反之则进行一次小调整(如x=x+min_step*(rand(1)-0.5))。运动完毕后,检查新位置的信息素浓度是否大于原位置,若不大于则重新调整。
- 所有的个体都有效的移动一次后,刷新每个个体的信息素浓度,并记录新的最大浓度值。
- 重复移动,直到最大浓度值满足预设要求。
轻松解读仿生学最优化算法(二)——蚁群算法相关推荐
- 仿生学的科技应用——蚁群算法简介
大家好,今天笔者与诸位分享的是智能优化算法中蚁群算法的相关知识.蚁群算法源于Marco Dorigo教授在攻读电子工程博士期间对于群体智能领域孜孜不倦的探索.顾名思义,蚁群算法借鉴了蚂蚁在寻找食物路径 ...
- 【智能优化算法】蚁群算法ACO
文章目录 [智能优化算法] 蚁群算法 1. 简介 1.1 简介 1.2 蚁群流程图 1.3 分类(可以不看) 2. 算法 2.1 参数讲解 2.2 计算公式 1) 转移概率公式 2) 启发式因子计算公 ...
- 群体智能算法之蚁群算法初探(一)
一.背景 20世纪90年代,意大利学者M.Dorigo,V.Maniezzo,A.Colorni等从生物进化的机制中受到启发,通过穆尼自然界蚂蚁搜索路径的行为,提出来一种新型的模拟进化算法--蚁群算法 ...
- 最短移臂调度算法_MATLAB优化算法实例——蚁群算法
❝ 欢迎关注「工科男的Maltab学习日志」,采用Mardown文本编辑器编写文章,全新排版升级,内容.代码更简洁,同时开通了视频号,「工科男的日常」欢迎大家关注. --工科男 ❞ 1 蚁群算法基本理 ...
- 路径算法:蚁群算法(ant colony optimization, ACO)
一, 蚁群算法概述 自然界中有一个神奇的现象,即蚂蚁在没有提示的情况下总是能够找到从巢穴到食物的最短路径,这是为什么呢?原因就是蚂蚁在寻找食物时,能在其走过的路径上释放一种特殊的分泌物--信息素,随着 ...
- 智能优化算法之蚁群算法(1)
蚁群算法(ant colony algorithm) : 一种模拟进化算法 蚂蚁在觅食过程中能够在其经过的路径留下一种称为信息素的物质,并在觅食的过程中能感知这种物质的强度,并指导自己的行动方向,他们 ...
- 关键路径-stl版_A*算法与蚁群算法相结合的无人艇巡逻路径规划
作者:张丹红,陈文文,张华军,苏义鑫 摘要:针对无人艇海上巡逻路径规划问题,提出了一种A*算法与蚁群算法相结合进行最短巡逻路径优化的方法.在传统A*算法的八角度搜索基础上,设计了一种多角度A*算法以获 ...
- c语言编译免疫算法亲和力,蚁群算法模拟系统设计及实现.doc
J I A N G S U U N I V E R S I T Y 本 科 毕 业 论 文 蚁群算法模拟系统的设计与实现 Ant Colony Simulation System Design and ...
- 蚂蚁算法python_蚁群算法python编程实现
前言 这篇文章主要介绍了Python编程实现蚁群算法详解,涉及蚂蚁算法的简介,主要原理及公式,以及Python中的实现代码,具有一定参考价值,需要的朋友可以了解下. 蚁群算法简介 蚁群算法(ant c ...
- 智能优化算法之蚁群算法(ACO)
蚁群算法优缺点 优点 蚁群算法是一种本质上的并行算法.每只蚂蚁搜索的过程彼此独立,仅通过信息激素进行通信.不仅增加了算法的可靠性,也使得算法具有较强的全局搜索能力. 蚁群算法是一种自组织的算法. 蚁群 ...
最新文章
- 竞赛|数据竞赛Top解决方案开源整理
- 跟老杨学java系列(一)前传
- 开发机器上利用vs2013调试远程IIS上的c#程序
- Python的re.match()和re.search()的使用和区别
- android 邮件分享链接,Android应用从通过电子邮件发送的链接打开
- mysql配置性能_MySQL配置性能优化
- 三、 redis进阶篇
- 关于K-SVD算法中逐列更新的目标函数的理解,再看不懂就打死我吧
- [AutoSar]开发工具 Vector系列和EB系列
- AI CycleGAN
- 探索实践之软件构建(一)
- cad计算机画图标准,CAD高级绘图员鉴定标准
- 通信专业顶刊_通信类期刊排名
- 鉴权html5服务器,搭建web之 服务器鉴权失败,请确认服务器已启用密码鉴权并且账号密码正确?...
- Information Communication Technology,简称ICT
- 软考高级 真题 2014年下半年 信息系统项目管理师 综合知识
- uniapp 清除文件缓存
- 淘晶驰芯片AIHMI简介
- c语言日期加减天数,日期计算器
- 纯原生javascript下拉框表单美化实例教程