一、理论基础
跳蛛优化算法(Jumping Spider Optimization Algorithm, JSOA) 是由Peraza-Vázquez, H.等人于2021年提出的,该作者还提出了澳洲野狗优化算法(Dingo Optimization Algorithm, DOA))和黑寡妇优化算法(Black Widow Optimization Algorithm, BWOA)。JSOA对跳蛛逼迫、搜索和扑向猎物的捕食策略建立了数学模型。该算法在20个测试函数、4个实际优化问题、比例积分导数(PID)控制器的调谐和选择性谐波消除问题上进行了基准测试。
跳蛛科跳蛛
:
1、数学模型
该算法主要对跳珠不同的捕食策略进行数学模型化,包括逼迫攻击、搜索和跳向猎物。此外,还建立了一个表示信息素率的模型。
1.1 策略一:逼迫
当蜘蛛不在可以跳跃抓住猎物的距离内时,它会通过做一些隐蔽的动作靠近猎物,直到它到达一个可以跳跃抓住猎物的距离。逼迫策略可以用匀加速直线运动来表示,速度线性增加或减少。
假设时间为1,初始速度为0,重新定义位置更新公式:
其中,
x
x
xr为当前个体之外的随机个体。
1.2 策略二:扑向猎物
跳蛛尾随猎物并扑向它。扑向猎物的捕食策略可以表示为抛物线运动,特点为X轴方向为匀速运动,Y轴方向为匀加速运动,可以得到:
类似策略一,将时间设为1,可以得到轨迹方程:
最终位置更新公式为:
其中,
V
V
V0设为100 mm/sec,
g
g
g设为9.80665 m/s2。
1.3 策略三:搜索猎物
跳蛛在周围环境中进行随机搜索以定位猎物。在该策略中,提出了两个数学函数进行局部和全局搜索。
局部搜索:
其中,
w
a
l
k
walk
walk为-2到2之间的伪随机数,
ε
ε
ε为0到1的正态分布伪随机数。
全局搜索:
其中,
λ
λ
λ为Cauchy随机数(
μ
μ
μ为0,
θ
θ
θ为1)。
1.4 策略四:跳蛛的信息素率
信息素是一种由个体产生并分泌到外界的化学物质,它被同一物种的其他个体感知到,并引起行为改变。数学模型取自BWOA,根据适应度大小进行归一化。
根据信息素大小确定是否进行位置更新,小于等于0.3则:
其中,
x
x
xr1和
x
x
xr2为两个不同个体,
σ
σ
σ为0或1。
2、算法伪代码
伪代码包括两部分,算法1是关于信息素的,算法2为JSOA的。
二、总结
- 该算法与BWOA存在相近之处,可以对比研究;
- 从算法结构上看,也比较简单,不难理解;
- 算法改进方面,也不难改进。
参考文献
【1】Peraza-Vázquez, H., Peña-Delgado, A., Ranjan, P., Barde, C., Choubey, A., & Morales-Cepeda, A. B. (2021). A Bio-Inspired Method for Mathematical Optimization Inspired by Arachnida Salticidade. Mathematics, 10(1), 102. MDPI AG. Retrieved from https://doi.org/10.3390%2Fmath10010102.