智能优化算法:袋獾优化算法-附代码

袋獾优化算法(TDO)是一种2022年提出的基于生物行为的优化算法,模拟袋獾的腐肉觅食和猎物捕食行为来进行全局搜索和局部优化。算法包括初始化、以腐肉为食的探索阶段和以猎物为食的开发阶段,展示出强大的寻优能力和快速的收敛速度。
摘要由CSDN通过智能技术生成

智能优化算法:袋獾优化算法


摘要:袋獾优化算法(Tasmanian Devil Optimization(TDO)),是于2022年提出的一种基于袋獾行为的优化算法,该算法通过模拟袋獾猎食行为来进行寻优,具有寻优能力强,收敛速度快等特点

1. 袋獾优化算法

1.1 初始化

与其他优化算法类似,在寻优空间里随机初始化种群:
x i , j = l b j + r ⋅ ( u b j − l b j ) (2) x_{i, j}=l b_j+r \cdot\left(u b_j-l b_j\right) \tag{2} xi,j=lbj+r(ubjlbj)(2)
其中 x i , j x_{i,j} xi,j为个体, l b j lb_j lbj为寻优下边界, u b j ub_j ubj为寻优上边界, r r r为[0,1]之间的随机数。

1.2 策略一:以腐肉为食(探索阶段)

有时袋獾更喜欢在该地区以腐肉为食,而不是狩猎。袋獾周围生活着其他食肉动物,它们捕食大型猎物,但无法将其全部吃掉。此外,在袋獾到来之前,这些动物可能无法从猎物身上充分进食。在这种情况下,袋獾更喜欢以这些腐肉为食。袋獾在扫描栖息地区域以识别腐肉时的行为类似于在解决问题空间中的算法搜索过程。这种袋獾策略实际上展示了TDO探索在扫描搜索空间的不同区域以识别原始最佳区域方面的力量。

袋獾吃尸体策略中表达的概念是使用(3)到(5)进行数学建模的。在TDO设计中,对于每个袋獾,其他种群成员在搜索空间中的位置被假设为腐肉位置。在(3)中模拟随机选择其中一种情况,从而选择第k个种群成员作为第i个袋獾的目标腐肉。因此,k必须从1到N中随机选择,而相反的是i。
C i = X k , i = 1 , 2 , … , N , k ∈ { 1 , 2 , … , N ∣ k ≠ i } (3) C_i=X_k, \quad i=1,2, \ldots, N, k \in\{1,2, \ldots, N \mid k \neq i\} \tag{3} Ci=Xk,i=1,2,,N,k{1,2,,Nk=i}(3)
其中 C i C_i Ci是选中的腐肉。

基于选定的腐肉,袋獾在搜索空间中的新位置被计算出来。在该策略中的袋獾运动模拟中,如果腐肉的目标函数值更好,塔斯马尼亚恶魔就会向腐肉移动,否则就会远离腐肉。袋獾运动策略在(4)中进行了模拟。在第一策略的最后一步中,在计算袋獾的新位置后,如果目标函数的值在这个新位置更好,则接受这个位置,否则,塔斯马尼亚恶魔将保持在其先前的位置。此更新步骤在(5)中进行了建模。
x i , j n e w , S 1 = { x i , j + r ⋅ ( c i , j − I ⋅ x i , j ) , F C i < F i x i , j + r ⋅ ( x i , j − c i , j ) ,  otherwise  (4) x_{i, j}^{n e w, S 1}= \begin{cases}x_{i, j}+r \cdot\left(c_{i, j}-I \cdot x_{i, j}\right), & F_{C_i}<F_i \\ x_{i, j}+r \cdot\left(x_{i, j}-c_{i, j}\right), & \text { otherwise }\end{cases} \tag{4} xi,jnew,S1={xi,j+r(ci,jIxi,j),xi,j+r(xi,jci,j),FCi<Fi otherwise (4)

X i = { X i n e w , S 1 , F i new  , S 1 < F i X i ,  otherwise  (5) X_i= \begin{cases}X_i^{n e w, S 1}, & F_i^{\text {new }, S 1}<F_i \\ X_i, & \text { otherwise }\end{cases} \tag{5} Xi={Xinew,S1,Xi,Finew ,S1<Fi otherwise (5)

其中r 为[0,1]之间的随机数,I 为属于{1,2}的随机值。

1.3 策略二:以猎物为食(开发阶段)

袋獾的第二个进食策略是捕食猎物。袋獾在攻击过程中的行为有两个阶段。在第一阶段,它通过扫描该区域,选择猎物并攻击它。然后,在第二阶段,在接近猎物后,它追赶猎物,阻止它并开始进食。第一阶段的建模类似于第一策略的建模,即胴体的选择。因此,使用(6)至(8)对猎物选择和攻击的第一阶段进行建模。在第二种策略中,当更新了第i0个袋獾,其他种群成员的位置被假设为猎物的位置。第k0个种群成员被随机选择为猎物,而k是介于1到N和相反i之间的自然随机数。猎物选择过程在(6)中模拟。
P i = X k , i = 1 , 2 , … , N , k ∈ { 1 , 2 , … , N ∣ k ≠ i } (6) P_i=X_k, \quad i=1,2, \ldots, N, k \in\{1,2, \ldots, N \mid k \neq i\} \tag{6} Pi=Xk,i=1,2,,N,k{1,2,,Nk=i}(6)
其中 P i P_i Pi是选中的猎物。

在确定了猎物的位置后,袋獾会被计算出一个新的位置。在计算这个新位置时,如果所选猎物的目标函数值更好,袋獾就会向它移动,否则它就会远离这个位置。该过程的建模如(7)所示。如果为袋獾计算的新位置提高了目标函数的值,那么它将取代以前的位置。第二种策略的这一步骤在(8)中进行了建模。
x i , j new  , S 2 = { x i , j + r ⋅ ( p i , j − I ⋅ x i , j ) , F P i < F i x i , j + r ⋅ ( x i , j − p i , j ) ,  otherwise  (7) x_{i, j}^{\text {new }, S 2}= \begin{cases}x_{i, j}+r \cdot\left(p_{i, j}-I \cdot x_{i, j}\right), & F_{P_i}<F_i \\ x_{i, j}+r \cdot\left(x_{i, j}-p_{i, j}\right), & \text { otherwise }\end{cases}\tag{7} xi,jnew ,S2={xi,j+r(pi,jIxi,j),xi,j+r(xi,jpi,j),FPi<Fi otherwise (7)

X i = { X i n e w , S 2 , F i new  , S 2 < F i X i ,  otherwise  (8) X_i= \begin{cases}X_i^{n e w, S 2}, & F_i^{\text {new }, S 2}<F_i \\ X_i, & \text { otherwise }\end{cases} \tag{8} Xi={Xinew,S2,Xi,Finew ,S2<Fi otherwise (8)

这种策略与第一种策略的主要区别在于第二阶段和猎物追逐的模拟。在攻击地点附近追逐猎物类似于搜索空间的局部搜索。这种袋獾的行为实际上证明了TDO有能力利用它来收敛到更好的候选解决方案。为了模拟这种追逐过程,袋獾在被袭击地点附近跟踪猎物。猎物追逐阶段由袋獾使用(9)至(11)进行建模。在这个阶段,袋獾的位置被认为是猎物追逐过程发生的社区的中心。这个邻域的半径表示袋獾跟随猎物的范围,可以使用(9)计算。因此,可以基于该邻域中的追逐过程来计算袋獾的新位置,这在(10)中进行了数学模拟。如果新计算的位置为目标函数提供了比其先前位置更好的值,则袋獾可以接受。在(11)中模拟了袋獾的位置更新过程。
R = 0.01 ( 1 − t T ) , (9) R=0.01\left(1-\frac{t}{T}\right), \tag{9} R=0.01(1Tt),(9)

x i , j n e w = x i , j + ( 2 r − 1 ) ⋅ R ⋅ x i , j (10) x_{i, j}^{n e w}=x_{i, j}+(2 r-1) \cdot R \cdot x_{i, j} \tag{10} xi,jnew=xi,j+(2r1)Rxi,j(10)

X i = { X i n e w , F i new  < F i X i ,  otherwise  (11) X_i= \begin{cases}X_i^{n e w}, & F_i^{\text {new }}<F_i \\ X_i, & \text { otherwise }\end{cases} \tag{11} Xi={Xinew,Xi,Finew <Fi otherwise (11)

其中t 为迭代次数, T为最大迭代次数。

算法流程图如下:

在这里插入图片描述

2.实验结果

在这里插入图片描述

3.参考文献

[1] M. Dehghani, Š. Hubálovský and P. Trojovský, “Tasmanian Devil Optimization: A New Bio-Inspired Optimization Algorithm for Solving Optimization Algorithm,” in IEEE Access, vol. 10, pp. 19599-19620, 2022, doi: 10.1109/ACCESS.2022.3151641.

4.Matlab

5.python

  • 0
    点赞
  • 5
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
最新优化算法相较于传统的粒子群优化算法(PSO),有几个方面的改进和提升。 首先,最新优化算法在数学模型上进行了改进。传统的PSO算法主要是基于粒子的位置和速度来迭代搜索最优解,但是最新的算法考虑了更多的因素和约束条件,如目标函数的特性、约束条件的限制等,从而更加准确地找到最优解。 其次,最新优化算法在搜索策略上有所创新。传统的PSO算法主要是通过局部和全局最优解进行搜索,但是最新的算法引入了更多的搜索策略,如种群多样性维护、自适应权重调整、动态迭代等,从而提高了搜索速度和搜索性能。 第三,最新优化算法在收敛性和鲁棒性上做了很大的改进。传统的PSO算法在处理复杂问题时容易陷入局部最优,而最新的算法通过引入新的搜索策略和优化技巧,提高了算法的收敛性和鲁棒性,使得算法更加适用于解决实际问题。 最后,最新优化算法在应用领域上更加广泛。传统的PSO算法主要应用于连续优化问题,而最新的算法不仅适用于连续问题,还可以用于离散优化、多目标优化、动态优化等更为复杂的问题,并且在机器学习、数据挖掘、智能优化等领域都有广泛的应用。 综上所述,最新优化算法相对于传统的粒子群优化算法(PSO),在数学模型、搜索策略、收敛性和应用领域等方面有着明显的改进和提升,使得算法在求解复杂问题时更加有效和可靠。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

智能算法研学社(Jack旭)

你的鼓励将是我创作的最大动力

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

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

打赏作者

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

抵扣说明:

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

余额充值