松鼠搜索算法(SSA)(含MATLAB代码)
先做一个声明:文章是由我的个人公众号中的推送直接复制粘贴而来,因此对智能优化算法感兴趣的朋友,可关注我的个人公众号:启发式算法讨论。我会不定期在公众号里分享不同的智能优化算法,经典的,或者是近几年提出的新型智能优化算法,并附MATLAB代码。

松鼠搜索算法(Squirrel Search Algorithm, SSA)由Mohit Jain等于2018年提出,其灵感来源于松鼠的自然动态觅食行为。该算法通过模拟松鼠在各种树(山核桃树、橡树、普通树)之间滑行寻找食物来源并躲避捕食者来搜索全局最优解。它的原始参考文献如下:
“Jain M, Singh V, Rani A. A novel nature-inspired algorithm for optimization: Squirrel search algorithm[J]. Swarm and evolutionary computation, 2019, 44: 148-175.”
01
算法设计



02
计算流程

03
实验仿真
将松鼠搜索算法(Squirrel Search Algorithm, SSA)用于函数寻优,算法的MATLAB程序是严格按照它的原始参考文献进行编码的。利用CEC2005测试集验证SSA的性能,算法的种群大小设置为50,最大迭代次数为500。仅对仿真结果进行简要展示,不再进一步分析。
结果如下所示:
松鼠搜索算法(SSA)
在个别函数上收敛曲线不见了,是因为已经收敛到理论最优值0了。我使用的是semilogy来绘制的收敛曲线,而semilogy画的是y轴的对数,因此,若曲线收敛到0,semilogy是画不出来的。
04
MATLAB代码
松鼠搜索算法(Squirrel Search Algorithm, SSA)对应的MATLAB代码链接如下:
| SSA跑CEC2005测试集 | 公众号里有链接 |
| SSA的勘探(Exploration)和开发(Exploitation)占比分析 | 公众号里有链接 |
可通过下方链接下载代码清单,在里面寻找需要的算法代码,然后去对应的链接获取。清单会同步更新,一旦有新的代码,就可以在清单里找到。清单里面有部分代码是开源获取的。可随时免费下载。
链接:https://pan.baidu.com/s/1n2vpbwuhpA8oyXSJGsAsmA
提取码:8023
相关文章:
松鼠搜索算法(SSA)(含MATLAB代码)
先做一个声明:文章是由我的个人公众号中的推送直接复制粘贴而来,因此对智能优化算法感兴趣的朋友,可关注我的个人公众号:启发式算法讨论。我会不定期在公众号里分享不同的智能优化算法,经典的,或者是近几年…...
折半+dp之限制转状态+状压:CF1767E
https://vjudge.net/problem/CodeForces-1767E/origin 首先40,必然折半。然后怎么做? 分析性质。每次可以走1步or2步,等价什么?等价任意相邻2个必选一个!然后就可以建图 这个图是个限制图,我们折半后可以…...
如何写出优质代码
(本文转载自其他博主但是个人忘记了出处) 优质代码是什么? 优质代码是指那些易于理解、易于维护、可读性强、结构清晰、没有冗余、运行效率高、可复用性强、稳定性好、可扩展性强的代码。 这类代码不仅能够准确执行预期功能,同时也便于其他开发者理解…...
ChatGLM2-6B的通透解析:从FlashAttention、Multi-Query Attention到GLM2的微调、源码解读
前言 本文最初和第一代ChatGLM-6B的内容汇总在一块,但为了阐述清楚FlashAttention、Multi-Query Attention等相关的原理,以及GLM2的微调、源码解读等内容,导致之前那篇文章越写越长,故特把ChatGLM2相关的内容独立抽取出来成本文 …...
3D人脸生成的论文
一、TECA 1、论文信息 2、开源情况:comming soon TECA: Text-Guided Generation and Editing of Compositional 3D AvatarsGiven a text description, our method produces a compositional 3D avatar consisting of a mesh-based face and body and NeRF-based ha…...
解决问题:可以用什么方式实现自动化部署
自动化部署可以使用多种工具来实现: 脚本编写:可以使用 Bash、Python 等编写脚本来实现自动化部署。例如,可以使用 Bash 脚本来自动安装、配置和启动应用程序。 配置管理工具:像 Ansible、Puppet、Chef、Salt 等配置管理工具可以…...
【数据结构】链表栈
目录: 链表栈 1. 链式栈的实现2. 链表栈的创建3. 压栈4. 弹栈 链表栈 栈的主要表示方式有两种,一种是顺序表示,另一种是链式表示。本文主要介绍链式表示的栈。 链栈实际上和单链表差别不大,唯一区别就在于只需要对链表限定从头…...
Android笔记:Android 组件化方案探索与思考
组件化项目,通过gradle脚本,实现module在编译期隔离,运行期按需加载,实现组件间解耦,高效单独调试。 先来一张效果图 组件化初衷 APP版本不断的迭代,新功能的不断增加,业务也会变的越来越复杂…...
MeterSphere v2.10.X-lts 双节点HA部署方案
一、MeterSphere高可用部署架构及服务器配置 1.1 服务器信息 序号应用名称操作系统要求配置要求描述1负载均衡器CentOS 7.X /RedHat 7.X2C,4G,200GB部署Nginx,实现负载路由。 部署NFS服务器。2MeterSphere应用节点1CentOS 7.X /RedHat 7.X8C,16GB,200G…...
Java进阶篇--网络编程
目录 计算机网络体系结构 什么是网络协议? 为什么要对网络协议分层? 网络通信协议 TCP/IP 协议族 应用层 运输层 网络层 数据链路层 物理层 TCP/IP 协议族 TCP的三次握手四次挥手 TCP报文的头部结构 三次握手 四次挥手 …...
PyTorch入门之【CNN】
参考:https://www.bilibili.com/video/BV1114y1d79e/?spm_id_from333.999.0.0&vd_source98d31d5c9db8c0021988f2c2c25a9620 书接上回的MLP故本章就不详细解释了 目录 traintest train import torch from torchvision.transforms import ToTensor from torchvi…...
马斯洛需求层次模型之安全需求之云安全浅谈
在互联网云服务领域,安全需求是用户首要考虑的因素之一。用户希望在将数据和信息托付给云服务提供商时,这些数据和信息能够得到充分的保护,避免遭受未经授权的访问、泄露或破坏。这种安全需求的满足,对于用户来说是至关重要的&…...
Pikachu靶场——远程命令执行漏洞(RCE)
文章目录 1. RCE1.1 exec "ping"1.1.1 源代码分析1.1.2 漏洞防御 1.2 exec "eval"1.2.1 源代码分析1.2.2 漏洞防御 1.3 RCE 漏洞防御 1. RCE RCE(remote command/code execute)概述: RCE漏洞,可以让攻击者直接向后台服务器远程注入…...
【WSN】无线传感器网络 X-Y 坐标到图形视图和位字符串前缀嵌入方法研究(Matlab代码实现)
💥💥💞💞欢迎来到本博客❤️❤️💥💥 🏆博主优势:🌞🌞🌞博客内容尽量做到思维缜密,逻辑清晰,为了方便读者。 ⛳️座右铭&a…...
Linux定时任务
文章目录 前言设置定时任务流程定时规则例子 终止定时任务列出当前的定时任务重启任务调度 前言 在Linux系统中有时侯需要周期性的自动执行一些命令,这时候Linux定时任务就派上用场了 设置定时任务流程 进入定时任务的编辑模式 crontab -e编辑定时任务ÿ…...
【Overload游戏引擎分析】画场景网格的Shader
Overload引擎地址: GitHub - adriengivry/Overload: 3D Game engine with editor 一、栅格绘制基本原理 Overload Editor启动之后,场景视图中有栅格线,这个在很多软件中都有。刚开始我猜测它应该是通过绘制线实现的。阅读代码发现࿰…...
【JavaEE】多线程进阶(一)饿汉模式和懒汉模式
多线程进阶(一) 文章目录 多线程进阶(一)单例模式饿汉模式懒汉模式 本篇主要引入多线程进阶的单例模式,为后面的大冰山做铺垫 代码案例介绍 单例模式 非常经典的设计模式 啥是设计模式 设计模式好比象棋中的 “棋谱”…...
C++树详解
树 树的定义 树(Tree)是n(n≥0)个结点的有限集。n0时称为空树。在任意一颗非空树中:①有且仅有一个特定的称为根(Root)的结点;②当n>1时,其余结点可分为m(…...
支付环境安全漏洞介绍
1、平台支付逻辑全流程分析 2、平台支付漏洞如何利用?买东西还送钱? 3、BURP抓包分析修改支付金额,伪造交易状态? 4、修改购物车参数实现底价购买商品 5、SRC、CTF、HW项目月入10W副业之路 6、如何构建最适合自己的网安学习路线 1…...
抄写Linux源码(Day16:内存管理)
回忆我们需要做的事情: 为了支持 shell 程序的执行,我们需要提供: 1.缺页中断(不理解为什么要这个东西,只是闪客说需要,后边再说) 2.硬盘驱动、文件系统 (shell程序一开始是存放在磁盘里的,所以需要这两个东…...
从图像分割到GAN生成:转置卷积(Transpose Conv)的两种实战配置与调参心得
转置卷积实战指南:图像分割与GAN生成中的核心技巧 在计算机视觉领域,我们常常需要将低分辨率特征图恢复到原始尺寸——无论是为了像素级预测的图像分割任务,还是从潜在空间生成逼真图像的GAN模型。传统插值方法如双线性插值虽然简单ÿ…...
降重不靠删,降AI不靠装——百考通用语义重构守住你的原创观点
在2026年的高校毕业季,一种新型的不公正在悄然制度化: 不是抄袭者被放过,而是原创者被怀疑; 不是敷衍者被批评,而是严谨者被标记; 不是懒惰者被警告,而是认真写了一篇好论文的人,被迫…...
Vue3项目救星:我是如何用Cursor的‘项目规则’功能,让团队新人一天上手的
Vue3团队协作革命:用Cursor项目规则实现代码规范的自动化治理 当新成员加入你的Vue3项目时,是否经历过这样的场景?新人提交的代码里混杂着选项式API和组合式API,路由命名忽而短横线忽而大驼峰,样式文件里散落着各种魔…...
别再死记硬背了!用Kahn算法搞定LeetCode 207课程表,保姆级C++代码逐行解析
从课程表到任务调度:Kahn算法在LeetCode 207中的实战应用 每次打开LeetCode看到那道课程表问题,你是不是也感到一阵头疼?先修课程、依赖关系、环状检测……这些概念堆在一起,简直比大学选课系统还让人崩溃。但别担心,今…...
水库调度员必看:动态规划在月度发电计划中的5个避坑指南
水库调度员实战指南:动态规划在月度发电计划中的5个关键避坑策略 在水利工程领域,水库调度是一项集科学性、技术性和艺术性于一体的复杂工作。作为水库调度员,我们每天都在与时间、水量和电力需求进行着精妙的博弈。而动态规划作为一种强大的…...
HRNet的‘并行多分支’到底强在哪?一个动画图解带你彻底搞懂特征融合机制
HRNet并行多分支架构的视觉化解析:如何通过双向特征融合突破关键点检测精度瓶颈 在计算机视觉领域,关键点检测任务(如人体姿态估计、人脸特征点定位)对空间精度的要求近乎苛刻。传统卷积神经网络通过层层下采样提取语义特征的代价…...
2026 AI大模型岗位薪资全曝光:从30k到80w,程序员必备指南,非常详细收藏我这一篇就够了
文章主要展示了2026年AI领域热门岗位的薪资情况,包括华为、腾讯、联影等公司在多个城市的AI工程师、大模型算法等职位的薪资水平。数据显示AI人才市场需求旺盛,薪资从月薪3.6万到年包80万不等。文章提供了AI薪资专场的链接,邀请读者了解更多行…...
PingFangSC 字体技术深度解析:现代Web字体架构实践指南
PingFangSC 字体技术深度解析:现代Web字体架构实践指南 【免费下载链接】PingFangSC PingFangSC字体包文件、苹果平方字体文件,包含ttf和woff2格式 项目地址: https://gitcode.com/gh_mirrors/pi/PingFangSC PingFangSC(苹方-简&#…...
手把手教你用丹青识画:智能影像雅鉴系统保姆级入门教程
手把手教你用丹青识画:智能影像雅鉴系统保姆级入门教程 1. 认识丹青识画系统 "以科技之眼,点画意之睛。"这句话完美诠释了丹青识画系统的核心理念。这是一款将人工智能技术与东方美学相结合的创新工具,能够自动分析图像内容并生成…...
5分钟搞定局域网IP扫描:OpUtils保姆级配置教程(附常见问题排查)
5分钟搞定局域网IP扫描:OpUtils保姆级配置教程(附常见问题排查) 办公室里突然断网了?打印机死活连不上?新同事的电脑无法接入内网?作为中小企业IT运维人员,这些场景你一定不陌生。别急着打电话求…...
