SCI二区复现|体育场观众优化算法(SSO)原理及实现

目录

    • 1.背景
    • 2.算法原理
      • 2.1算法思想
      • 2.2算法过程
    • 3.结果展示
    • 4.参考文献
    • 5.代码获取


1.背景

2024年,M Nemati受到体育场观众的行为对比赛中球员行为的影响启发,提出了体育场观众优化算法(Stadium Spectators Optimizer, SSO)。

在这里插入图片描述
在这里插入图片描述

2.算法原理

2.1算法思想

SSO是一种借鉴体育比赛观众与运动员之间互动的启发式优化方法。观众的行为类似于搜索代理,通过他们的反应和应援来影响球员(算法中的解决方案)的表现。观众的激励或不满可以影响球员的表现,这种表现转化为目标函数的值,从而评估当前解决方案的优劣。

2.2算法过程

在SSO算法的每次迭代中,从种群中随机选择两个搜索个体来执行搜索策略或者与当前最佳搜索个体执行搜索策略:
R N D i → = { X B i → + ( X R 1 → − X R 2 → ) i f H R ≤ 0.5 X B i → + R → o t h e r w i s e (1) \overrightarrow{RND_{i}}=\begin{cases}\overrightarrow{\mathrm{XB}_{i}}+\overrightarrow{(X_{R1}}-\overrightarrow{X_{R2}})if\mathrm{~}HR\leq0.5\\\overrightarrow{\mathrm{XB}_{i}}+\overrightarrow{R}\mathrm{~}otherwise&&\end{cases}\tag{1} RNDi = XBi +(XR1 XR2 )if HR0.5XBi +R  otherwise(1)
为了控制算法中搜索代理的行为,并在探索和利用阶段之间提供平衡,使用一个参数来控制:
L I = 1 − ( I / I m ) (2) LI=1-(\mathrm{I/Im})\tag{2} LI=1(I/Im)(2)
其中,I为当前迭代次数,Im为SSO算法的最大迭代次数。因此可以表述为:
N e w P o s i t i o n i → = X → i + r 1 → ⋅ L I ⋅ ( m u 1 ⊗ r 2 → ⋅ ( X B → i − r 3 → ⊗ X R 1 → ) + r 4 → ⋅ ( r 5 → ⋅ mu 2 ⊗ ( rn 1 ⋅ R N D → i − X R 2 → ) ) ) (3) \begin{aligned}\overrightarrow{NewPosition_i}&=\overrightarrow{\mathrm{X}}_i+\overrightarrow{r1}\cdot LI\\&\cdot\left(mu1\otimes\overrightarrow{r2}\cdot(\overrightarrow{\mathrm{XB}}_i-\overrightarrow{r3}\otimes\overrightarrow{\mathrm{X}_{R1}})+\overrightarrow{r4}\cdot\left(\overrightarrow{r5}\cdot\text{mu}2\otimes\left(\text{rn}1\cdot\overrightarrow{RND}_i-\overrightarrow{\mathrm{X}_{R2}}\right)\right)\right)\end{aligned}\tag{3} NewPositioni =X i+r1 LI(mu1r2 (XB ir3 XR1 )+r4 (r5 mu2(rn1RND iXR2 )))(3)

在每次迭代中,新的位置是通过将优化问题的先前位置向最佳个体和两个随机选定的搜索个体而确定的,这种移动提供了一种随机行为,导致算法的代理在该区域内随机移动。搜索个体还会向RND向量和另一个随机选定的搜索代理之间的位置移动,以在问题的搜索空间中进行更精确的搜索。

伪代码

在这里插入图片描述

3.结果展示

在这里插入图片描述
在这里插入图片描述

4.参考文献

[1] Nemati M, Zandi Y, Agdas A S. Application of a novel metaheuristic algorithm inspired by stadium spectators in global optimization problems[J]. Scientific Reports, 2024, 14(1): 3078.

5.代码获取

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

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

相关文章

【力扣】完全平方数

一、题目描述 给你一个整数 n ,返回 和为 n 的完全平方数的最少数量 。 完全平方数 是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,1、4、9 和 16 都是完全平方数,而 3 和…

unity使用XR插件开发SteamVR项目,异常问题解决方法

一、unity使用XR插件开发SteamVR项目,运行后相机高度异常问题解决方法如下操作 (一)、开发环境 1、Unity 2021.3.15f 2、XR Interaction Toolkit Version 2.5.2 (com.unity.xr.interaction.toolkit) 3、OpenXR Pl…

Spring MVC 架构详解

Spring MVC(Model-View-Controller)是 Spring 框架中用于构建 Web 应用程序的模块。它通过分离应用程序的不同方面(输入逻辑、业务逻辑和 UI 逻辑)来简化开发工作。本文将详细介绍 Spring MVC 架构及其基本组件,包括 D…

Nature子刊 | 基于遥感和U-Net绘制6亿棵树木,并发现过去十年印度农田树木严重减少

题目:Severe decline in large farmland trees in India over the past decade 期刊:Nature Sustainability 论文:https://www.nature.com/articles/s41893-024-01356-0 结果数据: https://rs-cph.projects.earthengine.app/view/tree https://zenodo.org/records/10978…

Arduino - Keypad 键盘

Arduino - Keypad Arduino - Keypad The keypad is widely used in many devices such as door lock, ATM, calculator… 键盘广泛应用于门锁、ATM、计算器等多种设备中。 In this tutorial, we will learn: 在本教程中,我们将学习: How to use key…

VUE大屏的开发过程(纯前端)

写在前面,博主是个在北京打拼的码农,工作多年做过各类项目,最近心血来潮在这儿写点东西,欢迎大家多多指教。 对于文章中出现的任何错误请大家批评指出,一定及时修改。有任何想要讨论和学习的问题可联系我:1…

tauri使用github action实现跨平台编译并解决编译错误等问题

正常编译为跨平台结果就像上面的,有mac/windows/linux的安装程序,直接下载就可以安装使用,我的这个livebox桌面端仓库地址:GitHub - Sjj1024/LiveBox: livebox,里面有编译文件可以参考。今天主要讲一下遇到的问题。 官…

一投就中,收稿范围大,1个月内录用,国人发文最多,无风险预警

别人费心费力投个一年都不一定有结果,您直接坐上”直升飞机”,1个月录用。下面老毕分享1本超快录用EI期刊,工程电气方向的学者抓紧投稿。 抢占版面,下方【扫一扫】直接安排,1个月内录用🌈 Journal of Elect…

快递大件多少算超重物品?

在快递大件物品时,我们经常听到“超重”这个词,但究竟多重才算超重呢?今天,就让我们来探讨一下快递大件的超重标准,以及如何更经济地快递这些超重物品。 1. 祺祺寄快递: “祺祺寄快递”是一个便捷的快递服…

一款go build命令增强工具

项目地址&#xff1a;【GitHub - gvcgo/gobuilder: An enhancement for official <go build>.】 类别&#xff1a;Go 项目标题&#xff1a;一款go build命令增强工具 项目描述&#xff1a;在使用go做跨平台项目时&#xff0c;往往需要手动写脚本来实现跨平台编译。这款…

整合Spring Boot和Pulsar实现可扩展的消息处理

整合Spring Boot和Pulsar实现可扩展的消息处理 大家好&#xff0c;我是免费搭建查券返利机器人省钱赚佣金就用微赚淘客系统3.0的小编&#xff0c;也是冬天不穿秋裤&#xff0c;天冷也要风度的程序猿&#xff01; 在现代分布式系统中&#xff0c;消息队列是实现异步通信和解耦…

线程的创建(二)

通过Runnable接口实现多线程 在开发中&#xff0c;我们应用更多的是通过Runnable接口实现多线程。这种方式克服了继承Thread类的特点&#xff0c;即在实现Runnable接口的同时还可以继承某个类。 从源码角度看&#xff0c;Thread类也是实现了Runnable接口&#xff0c;Runnable…

在开发板上抓包的方法

1.tcpdump tcpdump -i lo -s0 -w /user/lo.pcap tcpdump: 启动 tcpdump 工具&#xff0c;用于捕获网络数据包。-i lo: 指定监听的网络接口为 lo&#xff0c;这里的 lo 是本地回环接口&#xff08;loopback interface&#xff09;&#xff0c;用于本机内部通信。-s0: 设置抓取…

小程序常用标签

在微信小程序开发中&#xff0c;常用的标签有很多&#xff0c;这些标签用于构建页面结构、呈现内容和实现交互效果。以下是一些常见的小程序标签及其主要作用&#xff1a; 基础视图标签 view: 视图容器&#xff0c;类似于 <div>&#xff0c;用于包裹视图层的结构。 tex…

绿盟又行了,漏管市场占有率第一

漏洞管理平台 吉祥学安全知识星球&#x1f517;除了包含技术干货&#xff1a;Java代码审计、web安全、应急响应等&#xff0c;还包含了安全中常见的售前护网案例、售前方案、ppt等&#xff0c;同时也有面向学生的网络安全面试、护网面试等。 今天看到不少朋友圈在转发&#xff…

使用Python实现深度学习模型通常涉及以下几个步骤

学习总结 1、掌握 JAVA入门到进阶知识(持续写作中……&#xff09; 2、学会Oracle数据库入门到入土用法(创作中……&#xff09; 3、手把手教你开发炫酷的vbs脚本制作(完善中……&#xff09; 4、牛逼哄哄的 IDEA编程利器技巧(编写中……&#xff09; 5、面经吐血整理的 面试技…

酒的生物化学成分与生理学功能?

酒的生物化学成分与生理学功能&#xff1f; 李升伟 酒是一种含有多种化学成分的混合物&#xff0c;其主要成分是酒精&#xff0c;也就是乙醇。除了酒精和水之外&#xff0c;酒中还含有酸、酯、醛、醇等多种类型的化学物质。这些化学成分的含量和比例对于酒的质量和风味有着重…

Java 优雅的随机选取数组N个不重复的元素(下标)

文章目录 前言一、不优雅的做法二、优雅的做法前言 在处理Java集合时,我们经常遇到需要从一个数组或列表中随机选取N个不重复元素的场景。本文将介绍两种处理这一需求的方法:一种较为直接但不够优雅的方法,以及一种更加简洁优雅的方法。 一、不优雅的做法 最直接的方法可能…

亚马逊测评干货分享:跨境卖家店铺测评技巧

测评在亚马逊、etsy、temu、速卖通、vinted、ebay、allegro、Jumia、Fruugo、敦煌、shopee、ozon、阿里国际站、沃尔玛、newegg等跨境平台中扮起着重要的方式&#xff0c;卖家们了解到测评可以快速增加产品的销量、评论数量&#xff0c;提升排名&#xff0c;从而打造爆款产品。…

Python基于逻辑回归分类模型、决策树分类模型、随机森林分类模型和XGBoost分类模型实现乳腺癌分类预测项目实战

说明&#xff1a;这是一个机器学习实战项目&#xff08;附带数据代码文档视频讲解&#xff09;&#xff0c;如需数据代码文档视频讲解可以直接到文章最后获取。 1.项目背景 在当今医疗健康领域&#xff0c;乳腺癌作为威胁女性健康的主要恶性肿瘤之一&#xff0c;其早期诊断与精…