目录
- 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 HR≤0.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=Xi+r1⋅LI⋅(mu1⊗r2⋅(XBi−r3⊗XR1)+r4⋅(r5⋅mu2⊗(rn1⋅RNDi−XR2)))(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.