「深度学习之优化算法」(十五)混合蛙跳算法

1. 混合蛙跳算法简介

(以下描述,均不是学术用语,仅供大家快乐的阅读)
  混合蛙跳算法(Shuffled Frog Leaping Algorithm)是根据青蛙在石块上觅食时的种群分布变化而提出的算法。算法提出于2003年,时间有点久远,但相关的论文并不是特别多,仍有较大的研究和改进空间。
  混合蛙跳算法中,每个青蛙的位置代表了一个可行解。青蛙所在的池塘中有数块石块,每一代,青蛙们会被分配到石块上。在这一代中,只有石块上位置最差的青蛙会跳动。该青蛙首先会向着同一个石块上的最优位置的青蛙跳动,如果新的位置比原位置差则向则全局最优位置跳动,若该位置仍旧比原位置差则在解空间内随机跳动一次。可以看出每只跳动青蛙在每代中至少跳动一次,至多跳动三次,但由于每次跳动的青蛙数量等于石块数,故当石块数<青蛙数/3时,每代总跳动次数小于青蛙总数。
  (查找文献追根溯源的时候看到了一个有趣的现象,原始的提出论文提出于2000年(Shuffled frog leaping algorithm:a memetic meta-heuristic for combinatorial optimization.)但是到2006年才出版,而2003年的论文(Optimization of Water Distribution Network Design Using the Shuffled Frog Leaping Algorithm)引用了2000年的原始论文,并标注为出版中。到了2006年出版时,原始论文引用了2003年发表的那篇论文,即这两篇论文相互引用,真是奇妙。估计是原始论文被拒了后又修改了结果到2006年才发表。)

2. 算法流程

这次的主角就是青

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/3148.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

IPD跟敏捷、DevOps一样吗?有什么区别?

1992年在激烈的全球市场竞争下&#xff0c;IBM遭遇到了严重的财政困难&#xff0c;公司销售收入停止增长&#xff0c;利润急剧下降。经过内部分析&#xff0c;IBM发现他们在研发费用、研发损失费用和产品上市时间等几个方面远远落后于业界最佳。为了重新获得市场竞争优势&#…

思维决定发展,测试人也不例外

最近特别懒&#xff0c;不想码字&#xff0c;原本写作就很差&#xff0c;更是退化严重。社招和校招面试过很多人&#xff0c;从十年前自己还很弱的时候学着面试&#xff0c;到数百次面试积累之后&#xff0c;面对候选人的时候&#xff0c;我的内心依然有些许紧张&#xff0c;非…

初识protobuf

Protobuf 全称Protocol Buffers&#xff08;协议缓冲区&#xff09;&#xff0c;是一种轻量级、高效的数据序列化格式&#xff0c;由Google开发。它被设计用于结构化数据的序列化、反序列化以及数据交换&#xff0c;常用于网络通信和数据存储等领域。 Protobuf使用简洁的消息描…

高效又安全的企业大数据传输解决方案推荐

在当前的商业领域中&#xff0c;企业大数据传输是一个重要而复杂的问题。随着企业规模和数据量的扩大&#xff0c;如何安全可靠、高效快速地传输大数据成为了许多企业需要面对的挑战。本文将介绍几种值得考虑的企业大数据传输解决方案&#xff0c;以帮助企业有效应对这一挑战。…

react refresh 的用法

React Refresh 是一个用于在开发过程中实现快速热重载的工具。它允许在不刷新整个页面的情况下更新 React 组件&#xff0c;从而提供更快的开发体验。 要使用 React Refresh&#xff0c;首先需要确保项目中安装了 React 17 或更高版本。然后&#xff0c;可以按照以下步骤来配置…

【产品设计】微信小程序如何做好“授权”设计?

授权登录降低了用户注册账号时的操作成本&#xff0c;减少了产品的获客门槛。在本文中&#xff0c;作者结合案例&#xff0c;盘点了微信小程序授权登录设计中需要注意的几点问题&#xff0c;并对功能设计背后的设计思路与原理进行了简要的分析 01 openID 这是微信生态圈中&…

ROS:动态参数

目录 一、前言二、概念三、作用四、实际用例4.1需求4.2客户端4.2.1流程4.2.2新建功能包4.2.3添加.cfg文件4.2.4配置 CMakeLists.txt4.2.5编译 4.3服务端(C)4.3.1流程4.3.2vscode配置4.3.3服务器代码实现4.3.4编译配置文件4.3.5执行 4.4服务端(Python)4.4.1流程4.4.2vscode配置4…

canvas获取视频封面及个别电脑获取到空图

读取视频封面&#xff1a; let video document.createElement("video");video.src videosrc;video.currentTime 10 // 可能出现黑屏&#xff0c;从10帧video.muted true; // 解决个别电脑获取到空图video.autoplay true; // 解决个别电脑获取到空图video.preload…

EasyCVR视频融合平台能正常播放其他协议流,但无法播放HLS流的原因排查

EasyCVR基于云边端一体化架构&#xff0c;支持海量视频汇聚管理&#xff0c;平台支持多协议与多类型设备接入&#xff0c;具体包括国标GB28181、RTMP、RTSP/Onvif、海康Ehome、海康SDK、大华SDK、宇视SDK等&#xff0c;能对外分发RTMP、RTSP、HTTP-FLV、WS-FLV、HLS、WebRTC等。…

Python 和 RabbitMQ 进行消息传递和处理

一、RabbitMQ 简介 RabbitMQ 是一个开源的消息代理软件&#xff0c;它实现了高级消息队列协议&#xff08;AMQP&#xff09;标准。它的官方客户端提供了多种编程语言的接口&#xff0c;包括 Python、Java 和 Ruby 等。它支持消息的持久化、多种交换机类型、消息通知机制、灵活…

【Leetcode】687.最长同值路径

一、题目 1、题目描述 给定一个二叉树的 root ,返回 最长的路径的长度 ,这个路径中的 每个节点具有相同值 。 这条路径可以经过也可以不经过根节点。 两个节点之间的路径长度 由它们之间的边数表示。 示例1: 输入:root = [5,4,5,1,1,5] 输出:2示例2: 输入:root …

PMP考题练习2023-07-19

1、敏捷管理专业人士注意到产品待办事项上一个新故事很模糊&#xff0c;缺少验收标准。敏捷管理专业人士应在sprint周期中的哪个时间点要求产品负责人提供更多详情&#xff1f; A.在待办事项梳理会上。 B.在sprint回顾会议上。 C.在每日scrum期问。 D.在选代评审会上。 选A 解释…

C++入门(未完待续)

1.命名空间 使用命名空间的目的是对标识符的名称进行本地化&#xff0c;以避免命名冲突或名字污染 定义命名空间&#xff0c;需要使用到namespace关键字&#xff0c;后面跟命名空间的名字&#xff0c;然后接一对{}即可&#xff0c;{}中即为命名空间的成员 ①.普通的命名空间 n…

MySQL数据库与表的基本操作 + 表的基本CRUD(增删改查)操作

文章目录 前言一、库的基本操作显示当前所有数据库创建数据库使用数据库删除数据库 二、表的基本操作创建表查看库中所有表查看表结构删除表 三、表的增删改查(基础)新增数据(Create)全列插入指定列插入 查询数据(Retrieve)全列查询指定列查询查询字段为表达式指定列的别名去重…

机器学习之生成式模型与判别式模型的区别

根本区别在于是否计算了联合分布 P ( X , Y ) P(X,Y) P(X,Y)和是否比较了模型输出的概率大小. 生成式模型的特点 对联合分布进行建模&#xff0c;然后通过朴素贝叶斯来求条件概率&#xff0c;选择使得条件概率最大的 Y Y Y可以还原出联合概率分布 P ( X , Y ) P(X,Y) P(X,Y)学…

【Kubernetes运维篇】RBAC之准入控制器详解

文章目录 一、ResourceQuota准入控制器1、ResourceQuota是什么&#xff1f;2、限制CPU、内存、Pod数量、Deployment数量3、限制存储空间大小 二、LimitRanger准入控制器1、LimitRanger是什么&#xff1f;2、LimitRanger限制案例 一、ResourceQuota准入控制器 中文官方参考文档…

flutter开发实战-文件上传及上传队列

flutter开发实战-文件上传及上传队列 之前开发中遇到了发帖子图片上传&#xff0c;上传到七牛。 一、实现Dio上传 上传使用到Dio上传功能&#xff0c;具体代码 // 上传文件&#xff08;图片&#xff09;doUploadFile(String url, UploadFileInfo fileInfo,{Map<String, …

scrapy

scrapy介绍安装--架构 Scrapy 是一个爬虫框架&#xff08;底层代码封装好了&#xff0c;只需要在固定位置写固定代码即可&#xff09;&#xff0c;应用领域比较广泛---》爬虫界的django# 安装 #Windows平台1、pip3 install wheel #安装后&#xff0c;便支持通过wheel文件安装软…

c#调用cpp库,debug时不进入cpp函数

选中c#的项目&#xff0c;右击属性&#xff0c;进入属性页&#xff0c;点击调试&#xff0c;点击打开调试启动配置文件UI&#xff0c;打开启用本机代码调试。

相机标定学习笔记

Kalibr 是标定工具中&#xff0c;唯一一个可以标定camToImu的&#xff0c;是vio必不可少的工具&#xff0c;其他的都有替代品。所以学习多种开源算法进行相机标定&#xff0c;并记录学习相机标定的过程。 一、相机标定 1、在场景中放置一个已知的物体 &#xff08;1&#xff…