MTV-SCA:基于多试验向量的正弦余弦算法


在这里插入图片描述

1.摘要

本研究提出了一种改进的正弦余弦算法,名为基于多试验向量的正弦余弦算法(MTV-SCA)。这一方法通过调整三个控制参数和采用多种搜索策略,有效解决了传统正弦余弦算法(SCA)容易陷入局部最优、探索与开发不平衡以及精度不足的问题。MTV-SCA采用四种不同的搜索策略,平衡了探索与开发的关系,避免了在优化过程中过早收敛。

2.正弦余弦算法SCA 原理

【智能算法】正余弦优化算法(SCA)原理及实现

3.MTV-SCA

MTV-SCA通过引入多试验向量(MTV)方法,强化了SCA的单一搜索策略。MTV方法允许定义多种不同的搜索策略,每种策略旨在实现特定的目标,并在整个搜索过程中进行协作。

在这里插入图片描述

在决定SC-TVP和Pool-TVP子群体的大小时,关键是要考量在经过指定迭代次数(nIter)后,解决方案的改进数量。这里,改进率(ImpRate)是指在过去nIter迭代中解决方案适应度提高的比例与总的函数评估次数的比值:
 ImpRate  S C − T V P = N ImprovedsolutionsbySC-TVP  N S C − T V P × N F E s  ImpRate  Pool-TVP  = N ImprovedsolutionsbyPool-TVP  N Pool-TVP  × N F E s \begin{array}{l}\text { ImpRate }_{S C-T V P}=\frac{N_{\text {ImprovedsolutionsbySC-TVP }}}{N_{S C-T V P} \times N_{F E s}} \\\text { ImpRate }_{\text {Pool-TVP }}=\frac{N_{\text {ImprovedsolutionsbyPool-TVP }}}{N_{\text {Pool-TVP }} \times N_{F E s}}\end{array}  ImpRate SCTVP=NSCTVP×NFEsNImprovedsolutionsbySC-TVP  ImpRate Pool-TVP =NPool-TVP ×NFEsNImprovedsolutionsbyPool-TVP 

正弦余弦试验向量生产者(SC-TVP)在每次迭代t中,为SC-TVP子群体XSCi的第i个解生成一个候选解:
C S C i t + 1 = { X S C i t + r 1 × sin ⁡ ( r 2 ) × ∣ r 3 × P t − X S C i t ∣ , r 4 < 0.5 X S C i t + r 1 × cos ⁡ ( r 2 ) × ∣ r 3 × P t − X S C i t ∣ , r 4 ≥ 0.5 \left.CSC_i^{t+1}=\left\{\begin{array}{l}XSC_i^t+r_1\times\sin(r_2)\times\left|r_3\times P^t-XSC_i^t\right|,r_4<0.5\\XSC_i^t+r_1\times\cos(r_2)\times\left|r_3\times P^t-XSC_i^t\right|,r_4\geq0.5\end{array}\right.\right. CSCit+1={XSCit+r1×sin(r2)×r3×PtXSCit,r4<0.5XSCit+r1×cos(r2)×r3×PtXSCit,r40.5

Pool-TVP的池试验向量生产者是一个包含多种试验向量生产者(S1-TVP、S2-TVP、S3-TVP和S4-TVP)的集合,这些生产者利用各种正弦和余弦函数作为搜索策略的控制参数。例如,S1-TVP专注于在探索和开发之间保持平衡,防止算法陷入局部最优;S2-TVP则更强调探索能力;S3-TVP平衡探索与开发;而S4-TVP则旨在平衡探索与开发,避免过早收敛。

Pool-TVP采用随机分配机制在每次迭代中分配解决方案,确保各子群体得到均衡的处理。此外,S1-TVP利用群体中最佳解的信息及两个随机选取的解之间的差异来生成候选解,并通过特定的函数调整来优化搜索方向和区域,力求在探索和开发之间达到最佳平衡:
V S 1 i t + 1 = P ′ + C h e b y s h e v ( t ) × ( X r 1 ′ − X r 2 ′ ) + r a n d × ( X r 3 ′ − X r 4 ′ ) VS1_{i}^{t+1}=P^{\prime}+Chebyshev(t)\times\begin{pmatrix}X'_{r1}-X'_{r2}\end{pmatrix}+rand\times(X'_{r3}-X'_{r4}) VS1it+1=P+Chebyshev(t)×(Xr1Xr2)+rand×(Xr3Xr4)
其中, Pt 是到目前为止最好的解决方案,而 Xt_r1、Xt_r2、Xt_r3 和 Xt_r4 是从当前人口 X 中随机选择的解决方案。Chebyshev函数允许算法更有效地探索搜索空间:
C h e b y s h e v ( t + 1 ) = cos ⁡ ( t × c o s − 1 ( C h e b y s h e v ( t ) ) ) Chebyshev(t+1)=\cos(t\times cos^{-1}(Chebyshev(t))) Chebyshev(t+1)=cos(t×cos1(Chebyshev(t)))

流程图

在这里插入图片描述

伪代码

在这里插入图片描述

4.结果展示

CEC2005

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

5.参考文献

[1] Nadimi-Shahraki M H, Taghian S, Javaheri D, et al. MTV-SCA: multi-trial vector-based sine cosine algorithm[J]. Cluster Computing, 2024: 1-45.

6.代码获取

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小O的算法实验室

谢谢大佬的肯定!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值