2. 北方民族大学 图像图形智能处理国家民委重点实验室 宁夏 银川 750021
2. Key Laboratory of Images and Graphics Intelligent Processing of State Ethnic Affairs Commission, North Minzu University, Yinchuan 750021, China
图的Steiner树问题(Steiner tree problem of graph,GSTP)是由最短路径和最小生成树[1]两个著名的组合优化问题推广而来,广泛应用于超大规模集成电路设计[2]、通信网络[3]、组播路由[4]等诸多工程领域。目前,已有多种求解GSTP的算法。例如,文献[5]为避免编码、解码和全局链路信息等操作,提出一种基于叶交叉机制的遗传算法。文献[6]提出并行2-近似Steiner最小树算法及其基于消息传递接口的分布式实现方法。尽管关于GSTP的求解算法已经取得了显著的研究进展,但现有算法仍有一定的局限性。
哈里斯鹰优化(Harris hawks optimization,HHO)算法具有可调参数少、鲁棒性强等优点[7-8],在解决工程问题时展现出较高的应用潜力和灵活性。文献[9]采用混合HHO算法解决移动云计算中的任务调度与分配问题,文献[10]利用多目标HHO算法解决雾计算中的服务部署问题,文献[11]通过并行多目标HHO算法来预测COVID-19患者的死亡风险。
HHO算法具有多样化的搜索策略及自适应特性,在求解GSTP时也展现出较强的适用性。但GSTP属于离散型组合优化问题,而HHO算法在迭代更新过程中生成的个体位置为连续值,这使得其在求解GSTP时需要进行离散化处理。
此外,HHO算法在求解复杂问题时仍面临求解精度低、探索与开发难以平衡、算法易“早熟”等挑战,目前尚未有研究者将该算法应用于GSTP的求解。本文提出一种改进的离散哈里斯鹰优化(improved binary Harris hawks optimization,IBHHO)算法。通过S型函数进行离散化处理,引入Logistic-Sine混合混沌映射增强种群分布的均匀性,采用动态自适应权重策略平衡算法的探索与开发进程,对当前最优个体进行自适应高斯—柯西混合变异扰动,避免算法陷入局部最优。在多个GSTP实例上设计实验,对比分析IBHHO算法、离散遗传算法(binary genetic algorithm,BGA)、离散粒子群优化(binary particle swarm optimization,BPSO)算法和离散哈里鹰优化(binary Harris hawks optimization,BHHO)算法的性能。结果表明,IBHHO算法在精确性和稳定性方面取得了显著增强,证明了所提方法的优越性和有效性。
1 理论知识 1.1 图的Steiner树问题对于加权无向图G=(V′,E′),A和S均为顶点集合V′的子集,且A∪S=V′,A∩S=
| $ J( { Tree })=\sum\limits_{e \in E_{T}} w(e)。$ | (1) |
将A中的节点称为终端节点,S中的节点称为Steiner点。
1.2 相关性质相关性质如下。
1) Tree不包含度为0或1的Steiner点。
2) 与度为1的终端节点相邻的点在Tree中。
3) 对于度为2的Steiner节点v,若其相邻的两个节点v1, v2间存在边,且w(v, v1)+w(v, v2)>w(v1, v2),则Tree不包含v。
4) 对于度为2的终端节点v,若其相邻的两个节点v1, v2均为终端节点,则min{w(v, v1), w(v, v2)}相应的边在Tree中。
5) 对于度为2的终端节点v0,若其相邻的两个节点v1, v2均为Steiner点,且v1, v2间存在边e12,w01+w12<w02,则e01与v1在Tree中。
2 HHO算法 2.1 全局探索阶段当q < 0.5时,哈里斯鹰发现猎物;当q≥0.5时,未发现猎物。位置更新公式为
| $ X(t+1)=\left\{\begin{array}{l} X_{\text {rand }}(t)-r_{1} \mid X_{\text {rand }}(t)- \\ \quad 2 r_{2} X(t) \mid, q \geqslant 0.5, \\ \left(X_{\text {rabbit }}(t)-X_{m}(t)\right)- \\ \quad r_{3}\left(l b+r_{4}(u b-l b)\right), q <0.5, \end{array}\right.$ | (2) |
式中:X(t)为第t次迭代中鹰的位置;Xrabbit(t)为当前最优个体;ub和lb分别为搜索范围的上界和下界;Xrand(t)为随机选择的个体;r1, r2, r3, r4和q均为(0, 1)内的随机数;Xm为当前种群的平均位置,可表示为
| $ X_{m}(t)=\frac{1}{N} \sum\limits_{i=1}^{N} X_{i}(t), $ | (3) |
其中:N表示哈里斯鹰种群规模。
2.2 探索与开发转换阶段当逃逸能量|E|≥1.0时,进入探索阶段;当|E| < 1.0时,进入开发阶段。E的表达式为
| $ \begin{gather*} E=2 E_{0}\left(1-\frac{t}{T}\right), \\ E_{0}=2 r-1, \end{gather*}$ | (4) |
其中:T为最大迭代次数;E0为初始逃逸能量;逃逸概率r为(0, 1)内的随机数。设N=50,T=500,E的变化如图 1所示。
|
图 1 E的变化图 Fig. 1 The change chart of|E| |
当r < 0.5时,猎物逃脱成功;当r≥0.5时,猎物逃脱失败。
以下根据|E|和r来确定狩猎策略。
1) 软包围:当r≥0.5且0.5≤|E|<1.0时,猎物能量充足但无法逃脱,鹰的位置更新公式为
| $ \begin{gather*} X(t+1)=\Delta X(t)-E\left|J X_{\mathrm{rabbit}}(t)-X(t)\right|, \\ J=2\left(1-r_{5}\right) , \end{gather*}$ | (5) |
| $ \Delta X(t)=X_{\mathrm{rabbit}}(t)-X(t),$ | (6) |
其中:ΔX(t)为猎物在第t次迭代中的位置与当前位置之差;J为随机跳跃距离;r5为(0, 1)内的随机数。
2) 硬包围:当r≥0.5且|E| < 0.5时,猎物体力不足无法逃脱,鹰的位置更新公式为
| $ X(t+1)=X_{\text {rabbit }}(t)-E|\Delta X(t)| 。$ | (7) |
3) 渐进式快速俯冲软包围:当r < 0.5且0.5≤|E| < 1.0时,猎物体力充沛有机会逃脱,鹰的位置更新策略为
| $ Y=X_{\text {rabbit }}(t)-E\left|J X_{\text {rabbit }}(t)-X(t)\right| 。$ | (8) |
若上述策略无效时,引入Levy飞行函数模拟猎物的逃脱模式,此时鹰的更新策略为
| $ Z=Y+\boldsymbol{C} \times \operatorname{Levy}(D), $ | (9) |
式中:D为问题维度,C的大小为1×D,Levy飞行函数的计算公式为
| $ \begin{gather*} \operatorname{Levy}(D)=0.01 \times \frac{u \times \sigma}{|v|^{\frac{1}{\beta}}}, \\ \sigma=\left(\frac{\Gamma(1+\beta) \times \sin \left(\frac{{\rm{ \mathsf{ π}}} \beta}{2}\right)}{\Gamma\left(\frac{1+\beta}{2}\right) \times \beta \times 2^{\frac{\beta-1}{2}}}\right)^{\frac{1}{\beta}}, \end{gather*}$ | (10) |
其中:u, v为(0, 1)内的随机数;β=1.5;Γ为伽马函数。在该阶段鹰的位置更新公式为
| $ X(t+1)= \begin{cases}Y, & \text { if } F(Y)<F(X(t)), \\ Z, & \text { if } F(Z)<F(X(t)), \end{cases}$ | (11) |
其中:F(·)为适应度函数。
4) 渐进式快速俯冲硬包围:当r < 0.5且|E| < 0.5时,猎物体力不足,鹰种群先缩短最优位置与平均位置间的距离再进行围攻,其更新策略为
| $ Y=X_{\text {rabbit }}(t)-E\left|J X_{\text {rabbit }}(t)-X_{m}(t)\right|, $ | (12) |
| $ X(t+1)= \begin{cases}Y, & \text { if } F(Y)<F(X(t)), \\ Z, & \text { if } F(Z)<F(X(t))。\end{cases} $ | (13) |
S型函数可以平滑地将连续空间中的值映射为二进制值,从而使得算法能够在离散的解空间内搜索[12-13]。
在求解GSTP的过程中,哈里斯鹰的位置Xi为连续值,其中Xij表示图G中第j个节点的选择状态,S型函数可表示为
| $ S_{4}\left(X_{i}^{j}\right)=\frac{1}{1+\mathrm{e}^{-10\left(X_{i}^{j}-0.5\right)}}。$ | (14) |
通过S型函数,将连续值映射到[0, 1]内的概率值,通过该值判定取1或0。根据S4(Xij)生成二进制值B,其表达式为
| $ B= \begin{cases}1, & \text { if rand }<S_{4}\left(X_{i}^{j}\right), \\ 0, & \text { otherwise }, \end{cases}$ | (15) |
其中:rand为[0, 1]内的随机数。若S4(Xij)>rand,则选择节点j,即将其对应的位置设为1,否则设为0,而终端节点的位置均为1。
3.2 Logistic-Sine混合混沌映射智能优化算法的初始种群分布不均匀,算法易陷入局部最优解[14]。为改善种群多样性并增强算法搜索性能,通常引入Logistic或Sine混沌映射[15]。
Logistic映射计算复杂度较低,适用于大规模计算任务,其表达式为
| $ x_{i+1}=\mu x_{i}\left(1-x_{i}\right), $ | (16) |
其中:x为随机序列;μ为混沌乘数,取值为0.5。
Sine映射有助于增强优化算法的全局搜索能力,其表达式为
| $ x_{i+1}=\frac{\mu \sin \left({\rm{ \mathsf{ π}}} x_{i}\right)}{4} 。$ | (17) |
为开发更优的混沌系统,在种群初始化阶段引入Logistic-Sine混合混沌映射,以增强种群分布的均匀性,表达式为
| $ X_{i+1}=\mu X_{i}\left(1-X_{i}\right)+\frac{(4-\mu) \sin \left({\rm{ \mathsf{ π}}} X_{i}\right)}{4} 。$ | (18) |
由图 1可知,当迭代次数大于T/2时,E的值恒小于1.0,算法只进行开发操作。此外,E的变化呈线性递减,使得算法难以平衡探索与开发行为。因此,引入动态自适应权重策略,以提高猎物逃逸能量的非线性表达,从而增强算法的寻优能力与搜索精度。通过非线性递减模式设置E1的值,用余弦函数来描述其值的变化。若E≥E1,算法进入全局探索阶段,否则进入局部开发阶段。自适应逃逸能量的更新公式为
| $E=E_{0} E_{1}, $ | (19) |
| $ \begin{array}{l} E_{1}=E_{0}\left(\frac{w_{\max }-w_{\min }}{2} \cos \left(\frac{{\rm{ \mathsf{ π}}} t}{T}\right)+\right. \\ \left.\frac{w_{\max }+w_{\min }}{2}-w_{\min }\right), \end{array}$ | (20) |
其中:wmax和wmin的取值分别为2.1和0.1。
3.4 自适应高斯—柯西混合变异扰动在HHO算法迭代后期,个体快速同化,种群搜索停滞,导致算法陷入局部最优解,为此通常引入柯西变异和高斯变异等操作算子。柯西变异虽然具有较大的搜索范围,但过大的步长可能导致个体偏离最优值。高斯变异以较大的概率生成较小的变异值,使得其只在较小的范围内具有良好的搜索能力。因此,在求解GSTP的过程中,根据上述两种变异操作算子的优缺点,提出了自适应高斯—柯西混合变异扰动策略。为降低算法的时间复杂度,该操作仅对当前最优个体进行扰动,其计算公式为
| $ \begin{align*} & H(t)=X_{\text {rabbit }}(t)\left(1+\mu_{1} \operatorname{Gauss}(\sigma)+\right. \\ & \left.\mu_{2} \operatorname{Cauchy}(\sigma)\right), \end{align*}$ | (21) |
| $ \mu_{1}=\frac{t}{T}, \mu_{2}=1-\frac{t}{T}, $ | (22) |
其中:H(t)为扰动后的位置;μ1, μ2为权重系数;Gauss(σ)和Cauchy(σ)分别为高斯变异算子和柯西变异算子。
3.5 IBHHO算法流程IBHHO算法流程如图 2所示。
|
图 2 IBHHO算法流程 Fig. 2 The flow chart of IBHHO algorithm |
选用BHHO、BGA和BPSO[16]算法与本文IBHHO算法进行对比实验,设四种算法中N=50,T=500。BGA算法的突变概率为0.2;BPSO算法的自我学习因子和全局学习因子均为1.5,最大速度和最小速度分别为1和-1;IBHHO算法的ub和lb分别为1和0。
4.2 算法性能分析选用OR-Library[17]中关于GSTP的标准测试实例,每个实例独立运行20次。算法性能评估指标采用最优值(Best)和误差率(RPD),其中误差率计算公式为
| $ R P D=\frac{B e s t-O P T}{O P T} \times 100 \%, $ | (23) |
其中:OPT为已知最优解。
实验1 根据边集数选取OR-Library中的部分i080实例,四种算法的实验结果对比见表 1。
|
|
表 1 i080实例上四种算法的实验结果对比 Tab. 1 Comparison of experimental results of four algorithms on i080 instances |
表 1中|V′|为节点总数,|E′|为边集总数,|A|为终端节点总数,OPT为已知最优解,Best为求得最优Steiner树时的最小权重。
由表 1可知,BGA、BPSO和BHHO算法分别在0、5、13个i080实例上达到已知最优解,其RPD较大。IBHHO算法在所有实例上均能达到已知最优解,RPD均为0,表明IBHHO算法在解决GSTP时具有显著优势。
图 3为四种算法在不同终端节点数实例(i080-031、i080-144、i080-243、i080-334)上的适应度曲线。可以看出,相比BGA、BPSO和BHHO算法,IBHHO算法在大多数实例上收敛速度更快,最优解精度较高且更加稳定。
|
图 3 不同终端节点数i080实例上的适应度曲线 Fig. 3 Fitness curves on i080 instances with different numbers of terminal nodes |
实验2 根据边集数选取OR-Library中的部分i160实例,四种算法的实验结果对比见表 2。
|
|
表 2 i160实例上四种算法的实验结果对比 Tab. 2 Comparison of experimental results of four algorithms on i160 instances |
从表 2可以看出,BGA、BPSO和BHHO算法达到已知最优解的占比分别为0、10%和15%,其RPD相对较大。IBHHO算法达到已知最优解的占比为70%,且在绝大多数实例上RPD为0,表明IBHHO算法性能较好。
图 4为四种算法在不同终端节点数实例(i160-141和i160-315)上的适应度曲线。可以看出,IBHHO算法的求解精度更高,并且IBHHO算法曲线在取得最优值时的最小迭代次数更小,说明该算法的收敛速度更快,证明了改进策略对算法寻优能力的提升。
|
图 4 不同终端节点数i160实例上的适应度曲线 Fig. 4 Fitness curves on i160 instances with different numbers of terminal nodes |
本文围绕GSTP展开研究,提出一种融合多策略的HHO算法。通过S型函数离散化解的搜索空间,利用Logistic-Sine混合混沌映射优化种群初始化过程,引入动态自适应权重策略增强猎物逃逸能量的非线性表达,对当前最优个体采用自适应高斯—柯西混合变异扰动,避免算法陷入局部最优。最后,在OR-Library标准测试集上设计对比实验,通过分析实验结果可知,本文提出的IBHHO算法在求解GSTP时具有较高的求解精度和较快的收敛速度。在未来研究中,可以将该算法应用于其他组合优化问题,使算法具有更强的适用性。
| [1] |
王辛, 王晓峰, 许道云, 等. 一种求解双目标最小生成树的警示传播算法[J]. 中国科学: 信息科学, 2020, 50(10): 1501-1510. WANG X, WANG X F, XU D Y, et al. A warning propagation algorithm to solve the double-objective minimum spanning tree[J]. Scientia sinica: informationis, 2020, 50(10): 1501-1510. ( 0) |
| [2] |
TANG H, LIU G G, CHEN X H, et al. A survey on Steiner tree construction and global routing for VLSI design[J]. IEEE access, 2020, 8: 68593-68622. DOI:10.1109/ACCESS.2020.2986138 ( 0) |
| [3] |
SUN Y H, BRAZIL M, THOMAS D, et al. The fast heuristic algorithms and post-processing techniques to design large and low-cost communication networks[J]. IEEE/ACM transactions on networking, 2019, 27(1): 375-388. DOI:10.1109/TNET.2018.2888864 ( 0) |
| [4] |
FUJITA M, SHIMADA Y, KIMURA T, et al. A heuristic method for solving the Steiner tree problem in graphs using network centralities[J]. PLoS One, 2024, 19(6): e0303764. DOI:10.1371/journal.pone.0303764 ( 0) |
| [5] |
ZHANG Q B, YANG S X, LIU M, et al. A new crossover mechanism for genetic algorithms for steiner tree optimization[J]. IEEE transactions on cybernetics, 2022, 52(5): 3147-3158. DOI:10.1109/TCYB.2020.3005047 ( 0) |
| [6] |
REZA T, SANDERS G, PEARCE R. Towards distributed 2-approximation Steiner minimal trees in billion-edge graphs[C]//IEEE International Parallel and Distributed Processing Symposium. Piscataway: IEEE Press, 2022: 549-559.
( 0) |
| [7] |
HEIDARI A A, MIRJALILI S, FARIS H, et al. Harris hawks optimization: algorithm and applications[J]. Future generation computer systems, 2019, 97: 849-872. DOI:10.1016/j.future.2019.02.028 ( 0) |
| [8] |
曹泽轩, 王晓峰, 谢志新, 等. 融合多策略改进的哈里斯鹰优化算法[J]. 郑州大学学报(理学版), 2023, 55(6): 22-28. CAO Z X, WANG X F, XIE Z X, et al. Improved Harris hawks optimization fused with multiple strategies[J]. Journal of Zhengzhou university (natural science edition), 2023, 55(6): 22-28. DOI:10.13705/j.issn.1671-6841.2022239 ( 0) |
| [9] |
SAEMI B, HOSSEINABADI A A R, KHODADADI A, et al. Solving task scheduling problem in mobile cloud computing using the hybrid multi-objective Harris hawks optimization algorithm[J]. IEEE access, 2023, 11: 125033-125054. DOI:10.1109/ACCESS.2023.3329069 ( 0) |
| [10] |
GHASEMI A. MOHHO: multi-objective Harris hawks optimization algorithm for service placement in fog computing[J]. The journal of supercomputing, 2024, 80(17): 25004-25028. DOI:10.1007/s11227-024-06389-y ( 0) |
| [11] |
DOKEROGLU T. A new parallel multi-objective Harris hawks algorithm for predicting the mortality of COVID-19 patients[J]. PeerJ computer science, 2023, 9: 1430. DOI:10.7717/peerj-cs.1430 ( 0) |
| [12] |
ABDEL-BASSET M, MOHAMED R, CHAKRABORTTY R K, et al. An efficient binary slime mould algorithm integrated with a novel attacking-feeding strategy for feature selection[J]. Computers & industrial engineering, 2021, 153: 107078. ( 0) |
| [13] |
LI L, PAN T S, SUN X X, et al. A novel binary slime mould algorithm with AU strategy for cognitive radio spectrum allocation[J]. International journal of computational intelligence systems, 2021, 14(1): 161. DOI:10.1007/s44196-021-00005-0 ( 0) |
| [14] |
GAGNON I, APRIL A, ABRAN A. An investigation of the effects of chaotic maps on the performance of metaheuristics[J]. Engineering reports, 2021, 3(8): 12369. ( 0) |
| [15] |
GEZICI H, LIVATYAL H. Chaotic Harris hawks optimization algorithm[J]. Journal of computational design and engineering, 2022, 9(1): 216-245. ( 0) |
| [16] |
张娟敏. 基于二进制粒子群算法求解Steiner最小树问题[D]. 兰州: 兰州交通大学, 2023. ZHANG J M. Solving Steiner minimum tree problem based on binary particle swarm optimization[D]. Lanzhou: Lanzhou Jiatong University, 2023. ( 0) |
| [17] |
BEASLEY J E. OR-Library Steiner problem in graphs[EB/OL]. [2024-08-12]. https://people.brunel.ac.uk/~mastjjb/jeb/info.html.
( 0) |
2026, Vol. 58



0)