智能优化算法:豺优化算法

发布时间:2026/9/8 19:27:32
智能优化算法:豺优化算法 智能优化算法豺优化算法 Dhole Optimization Algorithm (DOA)文章目录智能优化算法豺优化算法 Dhole Optimization Algorithm (DOA)1.算法原理1.1 初始化1.3. 搜索阶段1.4. 包围阶段1.5. 攻击阶段2.实验结果3.MatlabPython4.参考文献豺优化算法Dhole optimization algorithmDOA。灵感来自于豺的社会和狩猎活动特别是它们的声音交流和协调技术。1.算法原理1.1 初始化和其他优化算法一样采用随机初始化。x i j rand ( N , D i m ) × ( U B j − L B j ) L B j x_{ij} \text{rand}(N,Dim) \times (UB_j - LB_j) LB_jxij​rand(N,Dim)×(UBj​−LBj​)LBj​X n [ x 1 , 1 x 1 , 2 … x 1 , D i m x 2 , 1 x 2 , 2 … x 2 , D i m ⋮ ⋮ ⋱ ⋮ x N , 1 x N , 2 … x N , D i m ] N × D i m X_{n} \begin{bmatrix} x_{1,1} x_{1,2} \dots x_{1,Dim} \\ x_{2,1} x_{2,2} \dots x_{2,Dim} \\ \vdots \vdots \ddots \vdots \\ x_{N,1} x_{N,2} \dots x_{N,Dim} \end{bmatrix}_{N \times Dim}Xn​​x1,1​x2,1​⋮xN,1​​x1,2​x2,2​⋮xN,2​​……⋱…​x1,Dim​x2,Dim​⋮xN,Dim​​​N×Dim​f b e s t min ⁡ ( f ( X i ) ) f_{best} \min\left(f\left(X_i\right)\right)fbest​min(f(Xi​))X s u p e r i o r X ( arg ⁡ min ⁡ ( f ( X i ) ) ) X_{superior} X\left(\arg\min\left(f\left(X_i\right)\right)\right)Xsuperior​X(argmin(f(Xi​)))###1.2. 成员的数量和猎物的大小豺群通过他们有组织有结构的狩猎技术展示了非凡的协调能力。豺群通常组成5到20个成员的小组。这种合作包括使用隐蔽的战术、战略性的位置和精确的定时发声来迷惑和恐吓目标。群体成员的数量定义P M N round ( rand × 15 5 ) PMN \text{round}\left(\text{rand} \times 15 5\right)PMNround(rand×155)众所周知它们既可以捕食比自己大的动物也可以捕食比自己小的动物。豺通过配合猎物的自然行为来提高它们的捕猎成功率。p s ( C 1 1 exp ⁡ ( − k ( P W N − μ ) ) ) 2 × E F ps \left( \frac{C1}{1\exp\left(-k\left(PWN - \mu\right)\right)} \right)^2 \times EFps(1exp(−k(PWN−μ))C1​)2×EFp s psps表示最合适的狩猎时间μ \muμ表示最合适的群体成员数量E F EFEF表示影响狩猎成功的环境或外部因素其值介于0 ∼ 1 0 \sim 10∼1之间K KK是实数影响狩猎效率C 1 C1C1用于控制不同情况下猎物的大小。1.3. 搜索阶段在搜索阶段开始之前豺群按如下方式定义目标prey ( prey l o c a l prey g l o b a l ) / 2 \text{prey} \left(\text{prey}_{local} \text{prey}_{global}\right)/2prey(preylocal​preyglobal​)/2在找到猎物后豺群使用公式来考虑他们的群体大小。如果种群数量少于10只并且豺的叫声随机值小于0.5则豺有义务寻找猎物并接近它以确定它们是否可以捕获猎物。这种行为机制是用数学模型建立的D i , j t 1 d i , j t C 2 × rand × ( prey j − d i , j t ) D_{i,j}^{t1} d_{i,j}^t C_2 \times \text{rand} \times \left(\text{prey}_j - d_{i,j}^t\right)Di,jt1​di,jt​C2​×rand×(preyj​−di,jt​)1.4. 包围阶段当豺群发现一个潜在的目标时它们会一起包围它。豺群成员利用它们的敏捷性和沟通技巧策略性地在猎物周围定位形成一个紧密的圆圈或半圆形。这种协同包围对于切断逃跑路线和减少猎物逃脱的机会至关重要。在算法中当发声小于0.5且豺群成员数量大于10时豺群开始包围猎物。数学模型如下所示D i , j t 1 d i , j t − d z , j t prey j D_{i,j}^{t1} d_{i,j}^t - d_{z,j}^t \text{prey}_jDi,jt1​di,jt​−dz,jt​preyj​z zz代表随机个体z 1 round ( rand × ( N − 1 ) ) , such that i ≠ j z 1 \text{round}\left(\text{rand} \times (N - 1)\right), \quad \text{such that } i \neq jz1round(rand×(N−1)),such thatij1.5. 攻击阶段豺群在捕获猎物时执行协调和战略攻击。在通过隐形方法和声音通信的组合成功包围目标后豺群开始攻击。通过同步的努力他们发起了一系列快速而适时的攻击每个成员轮流采取战略行动。S C 3 × rand × ( fitness i / fitness p r e y ) S C_3 \times \text{rand} \times \left(\text{fitness}_i / \text{fitness}_{prey}\right)SC3​×rand×(fitnessi​/fitnessprey​)豺群对猎物大小的判断来源于最大的猎物大小。如果S ( C 3 1 ) / 2 S(C31)/2S(C31)/2W p r e y exp ⁡ ( − 1 S ) × prey l o c a l W_{prey} \exp\left(-\frac{1}{S}\right) \times \text{prey}_{local}Wprey​exp(−S1​)×preylocal​将余弦函数和正弦函数混合模拟交换技术。一系列攻击的方程如下D i , j t 1 d i , j t W p r e y × p s × cos ⁡ ( 2 π ⋅ rand ) − sin ⁡ ( 2 π ⋅ rand ) × W p r e y × p s D_{i,j}^{t1} d_{i,j}^t W_{prey} \times ps \times \cos\left(2 \pi \cdot \text{rand}\right) - \sin\left(2 \pi \cdot \text{rand}\right) \times W_{prey} \times psDi,jt1​di,jt​Wprey​×ps×cos(2π⋅rand)−sin(2π⋅rand)×Wprey​×ps如果S ≤ ( C 3 1 ) / 2 S \le (C31)/2S≤(C31)/2猎物足够小或足够弱可以立即杀死方程如下D i , j t 1 ( d i , j t − prey g l o b a l ) × p s p s × rand × d i , j t D_{i,j}^{t1} \left(d_{i,j}^t - \text{prey}_{global}\right) \times ps ps \times \text{rand} \times d_{i,j}^tDi,jt1​(di,jt​−preyglobal​)×psps×rand×di,jt​2.实验结果3.MatlabPython4.参考文献[1]Mohammed, Bnyad O., et al. “Dhole Optimization Algorithm: a New Metaheuristic Algorithm for Solving Optimization Problems.” Cluster Computing, vol. 28, no. 7, July 2025, https://doi.org/10.1007/s10586-024-05005-1.