位置: 编程技术 - 正文

Python编程实现蚁群算法详解(用python编写程序)

编辑:rootadmin

推荐整理分享Python编程实现蚁群算法详解(用python编写程序),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:python 蚂蚁呀嘿,用python编写程序,用python编写程序,用python做程序,python编程100例,python编程bim,用python编写,python 蚂蚁呀嘿,内容如对您有帮助,希望把文章链接给更多的朋友!

简介

蚁群算法(ant colony optimization, ACO),又称蚂蚁算法,是一种用来在图中寻找优化路径的机率型算法。它由Marco Dorigo于年在他的博士论文中提出,其灵感来源于蚂蚁在寻找食物过程中发现路径的行为。蚁群算法是一种模拟进化算法,初步的研究表明该算法具有许多优良的性质。针对PID控制器参数优化设计问题,将蚁群算法设计的结果与遗传算法设计的结果进行了比较,数值仿真结果表明,蚁群算法具有一种新的模拟进化优化方法的有效性和应用价值。定义

各个蚂蚁在没有事先告诉他们食物在什么地方的前提下开始寻找食物。当一只找到食物以后,它会向环境释放一种挥发性分泌物pheromone (称为信息素,该物质随着时间的推移会逐渐挥发消失,信息素浓度的大小表征路径的远近)来实现的,吸引其他的蚂蚁过来,这样越来越多的蚂蚁会找到食物。有些蚂蚁并没有像其它蚂蚁一样总重复同样的路,他们会另辟蹊径,如果另开辟的道路比原来的其他道路更短,那么,渐渐地,更多的蚂蚁被吸引到这条较短的路上来。最后,经过一段时间运行,可能会出现一条最短的路径被大多数蚂蚁重复着。

解决的问题

三维地形中,给出起点和重点,找到其最优路径。

作图源码:

基本原理

Python编程实现蚁群算法详解(用python编写程序)

蚂蚁k根据各个城市间链接路径上的信息素浓度决定其下一个访问城市,设Pkij(t)表示t时刻蚂蚁k从城市i转移到矩阵j的概率,其计算公式为

计算完城市间的转移概率后,采用与遗传算法中一样的轮盘赌方法选择下一个待访问的城市。

当所有的蚂蚁完成一次循环后,各个城市间链接路径上的信息素浓度需进行更新,计算公式为

其中,Δτkij表示第k只蚂蚁在城市i与城市j连接路径上释放的信息素浓度;Δτij表示所有蚂蚁在城市i与城市j连接路径上释放的信息素浓度之和。

蚂蚁释放信息素的模型

程序代码:

总结

标签: 用python编写程序

本文链接地址:https://www.jiuchutong.com/biancheng/372232.html 转载请保留说明!

上一篇:Python编程实现粒子群算法(PSO)详解(python怎么编程)

下一篇:AI人工智能 Python实现人机对话(ai人工智能python)

  • 城建税和教育费附加
  • 应纳税所得额100万以内,税负2.5%是什么意思
  • 交印花税合同上每个月价格要一样吗
  • 出口退税申报软件实际操作视频
  • 多缴纳了印花税有什么影响
  • 兼职人员的工资怎么算
  • 利润表年度报表
  • 递延收益的核算
  • 指定扣缴和法定扣缴区别
  • 火车票增值税申报表怎么填
  • 免征的附加税是什么
  • 核定征收企业如何纳税
  • 进项发票失控账务处理
  • 长期股权变更
  • 当期应税销售收入是含税还是不含税
  • 淘宝企业店铺的钱会打到哪里
  • 收到上个月的发票怎么做分录
  • 银行本票通俗
  • 进项发票与销项发票差额是企业毛利润吗
  • 继承房产出售时交个人所得税税率是多少
  • 代购要交税么
  • 赎回公司发行的债券怎么做账?
  • 个税申报密码是什么意思
  • 返聘人员如何缴纳个人所得税
  • 营业外收支计入应纳税所得额吗
  • 银行汇票计入什么费用
  • 代扣个税手续费返还增值税税率
  • 服务业结转成本与收入如何配比
  • 备抵法是什么科目
  • 原始凭证必须具备的基本要素
  • PHP:connection_status()的用法_misc函数
  • 富贵竹怎么养才能更旺盛水培生根
  • php多维数组遍历输出
  • 小企业遵循什么会计准则
  • 征税小规模纳税申报
  • php中类静态成员描述不正确的是
  • 自然人税收系统换电脑怎么同步数据
  • php变量使用之前需要定义变量类型
  • uni-swiper-dot
  • 用支付宝支付的游戏
  • continue命令必须与locate
  • 城建税退回与不退税区别
  • ps2021和cs6有什么区别
  • 事业单位结余资金管理办法
  • mongodb reference
  • 库存盘盈处理
  • 企业赠送个人房产 所得税
  • 医院哪些地方需要有明显的禁烟标识
  • 运费会计科目怎么做
  • 科技专项资金
  • 税法对企业费用的限定
  • 付别人押金的会计分录
  • 投标保证金怎么记账科目
  • 开发票的其他要求是?
  • 经济往来怎么写
  • 商业会计机构的组织形式
  • sql中分页
  • windows7怎么添加设备
  • WIN10系统中断
  • linux分割分区
  • win8应用商店废了
  • windows8的ie浏览器在哪
  • jetcar.exe - jetcar是什么进程 有什么作用
  • po|iceofficer是什么意思
  • windows8.1如何安装
  • Android:Activity+Fragment及它们之间的数据交换(一)
  • opengl教程48讲
  • 详解Javascript ES6中的箭头函数(Arrow Functions)
  • ffmpeg webui 0.9.6
  • 在js里写html
  • android binary xml
  • android之handler
  • ug10避让怎么设置
  • jquery控制css样式
  • javascript编程技术
  • 使用jQuery给input标签设置默认值
  • 国家税务局直属单位招聘
  • 会议服务的服务定位是什么
  • 出口退税出现预缴怎么办
  • 四川省地方税务局关于城镇土地使用税困难减免
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设