CN113468812A - 一种基于改进磷虾群算法的服务组合优化方法 - Google Patents

一种基于改进磷虾群算法的服务组合优化方法 Download PDF

Info

Publication number
CN113468812A
CN113468812A CN202110769456.4A CN202110769456A CN113468812A CN 113468812 A CN113468812 A CN 113468812A CN 202110769456 A CN202110769456 A CN 202110769456A CN 113468812 A CN113468812 A CN 113468812A
Authority
CN
China
Prior art keywords
krill
individual
calculating
fitness value
algorithm
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202110769456.4A
Other languages
English (en)
Inventor
孙鹏
廖水聪
张杰勇
陈天平
徐鑫
焦志强
马钰棠
闫云飞
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Air Force Engineering University of PLA
Original Assignee
Air Force Engineering University of PLA
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Air Force Engineering University of PLA filed Critical Air Force Engineering University of PLA
Priority to CN202110769456.4A priority Critical patent/CN113468812A/zh
Publication of CN113468812A publication Critical patent/CN113468812A/zh
Pending legal-status Critical Current

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F30/00Computer-aided design [CAD]
    • G06F30/20Design optimisation, verification or simulation
    • G06F30/27Design optimisation, verification or simulation using machine learning, e.g. artificial intelligence, neural networks, support vector machines [SVM] or training a model
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06NCOMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
    • G06N3/00Computing arrangements based on biological models
    • G06N3/004Artificial life, i.e. computing arrangements simulating life
    • G06N3/006Artificial life, i.e. computing arrangements simulating life based on simulated virtual individual or collective life forms, e.g. social simulations or particle swarm optimisation [PSO]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F2111/00Details relating to CAD techniques
    • G06F2111/08Probabilistic or stochastic CAD

Landscapes

  • Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Evolutionary Computation (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Software Systems (AREA)
  • Artificial Intelligence (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Biophysics (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Computer Hardware Design (AREA)
  • Health & Medical Sciences (AREA)
  • Medical Informatics (AREA)
  • Biomedical Technology (AREA)
  • Geometry (AREA)
  • Computational Linguistics (AREA)
  • Data Mining & Analysis (AREA)
  • General Health & Medical Sciences (AREA)
  • Molecular Biology (AREA)
  • Computing Systems (AREA)
  • Mathematical Physics (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本发明属于云服务的组合优化领域,具体涉及一种基于改进磷虾群算法的服务组合优化方法,包括以下步骤:步骤1:随机生成N个磷虾,将每个服务组合方案映射为一个磷虾个体位置,得到初始磷虾种群,并设置磷虾群算法的参数;步骤2:计算磷虾的诱导运动向量Ni、觅食运动Fi、扩散运动Di;步骤3:根据步骤2计算的结果更新磷虾的位置;步骤4:进行自适应精英交叉操作,并产生新的磷虾个体位置;步骤5:计算步骤4产生的磷虾个体的适应度值并排序,记录最佳磷虾个体位置的适应度值;步骤6:判断是否满足终止条件,如果满足,结束迭代,将步骤4产生新的磷虾个体的位置还原回服务组合方案并输出,否则返回步骤2。

Description

一种基于改进磷虾群算法的服务组合优化方法
技术领域
本发明属于云服务的组合优化领域,具体涉及一种基于改进磷虾群算法的服务组合优化方法。
背景技术
随着SOA技术的发展,大量资源通过服务的方式被用户调用。由于单个服务性能单一,当面对用户复杂需求时,需要将单个服务组合成复合服务以满足用户需求,从而产生了服务组合问题。服务组合问题中,当具有确定的服务工作流程时,问题演变成从抽象服务对应的候选服务集中选择合适的服务以形成最佳的复合服务。为了评价服务组合方案的优劣,引入了QoS指标来衡量服务的非功能属性。基于QoS的服务组合优化能在满足用户功能需求的基础上,使得复合服务总体非功能属性也达到最佳。
服务组合优化问题中,随着抽象服务和具体服务数量的增多,可能的组合方案数呈爆炸性增长,通过遍历的方式寻找最优解的方法变得不再可行。智能优化算法由于可以在较短时间内找到全局最优或者近似全局最优解,常被用于解决服务组合优化问题。现有遗传算法、蚁群算法、粒子群算法、烟花算法、花朵授粉算法、蜂群算法等智能优化算法来求解服务组合问题。这些研究的关注点集中于提高收敛速度和全局最优解的质量,增强算法跳出局部最优解的能力,本质上是在提高全局搜索能力和局部搜索能力之间寻找一个平衡。然而这些算法均存在易陷入局部最优解的问题,寻优能力仍有提升空间。
Gandomi等在南极磷虾群生存运动行为的基础上,在2012年提出了一种磷虾群算法(以下简称KH算法)。KH算法认为磷虾个体的运动位置受诱导活动、觅食活动和扩散活动影响,同时诱导活动中邻居磷虾和最优磷虾均会对磷虾个体的运动产生诱导,觅食运动中食物位置和最佳磷虾的位置均会对磷虾觅食行为产生影响,从而设计了全局搜索和局部搜索两种策略,两种搜索策略并行工作,显著提升了算法寻优的效率。同时,该算法借鉴了遗传的思想,在磷虾运动位置更新后进行交叉操作,有效提高了算法的寻优能力,并和其他智能优化算法进行对比,证明了KH算法较好的寻优性能。
本发明采用KH算法解决基于QoS的服务组合优化问题,尽管KH算法能在迭代初期很快地找到优秀的可行解,但随着迭代次数的增加,算法全局搜索能力下降,一定程度上也存在容易陷入局部最优解的问题。
本发明对基于QoS的服务组合优化问题,提出了一种加入自适应精英交叉算子的AECKH算法,在增加种群多样性的同时,提高了算法的搜索能力。实验证明,本文提出的AECKH算法在跳出局部最优解,提高最优解质量方面具有优于基本KH算法和PSO、ABC、FPA算法的表现。
发明内容
针对上述存在的问题,本发明提供一种基于改进磷虾群算法的服务组合优化方法,对基于QoS的服务组合优化问题,提出了一种加入自适应精英交叉算子的AECKH算法,在增加种群多样性的同时,提高了算法的搜索能力。实验证明,本文提出的AECKH算法在跳出局部最优解,提高最优解质量方面具有优于基本KH算法和PSO、ABC、FPA算法的表现。
为了实现上述目的,本发明所采用的技术方案如下:
一种基于改进磷虾群算法的服务组合优化方法,具体的包括以下步骤:
步骤1:随机生成N个磷虾,将每个服务组合方案映射为一个磷虾个体位置,得到初始磷虾种群,并设置磷虾群算法的参数:最大诱导速度Nmax,觅食速度Vf,最大扩散速度Dmax,最大迭代次数Imax,最大交叉概率Pc1,最小交叉概率Pc2,波动率Pd,精英率Pe
步骤2:计算磷虾的诱导运动向量Ni、觅食运动Fi、扩散运动Di
步骤3:根据步骤2计算的诱导运动向量Ni、觅食运动Fi和扩散运动Di,更新磷虾的位置;
步骤4:步骤3对磷虾的位置更新后,为了增加种群的多样性,提高跳出局部最优解的能力,进行自适应精英交叉操作,并产生新的磷虾个体位置;步骤5:计算步骤4产生的磷虾个体位置的适应度值并排序,记录最佳磷虾个体位置的适应度值;
步骤6:判断是否满足终止条件即最大迭代次数Imax,如果满足条件,结束迭代,输出最佳磷虾个体适应度值和步骤4产生新的磷虾个体的位置,将步骤4产生新的磷虾个体的位置还原回服务组合方案,即得到最优务组合方案,否则返回步骤2。
优选地,所述步骤2的磷虾的诱导运动向量Ni计算为:
步骤2.1.1:计算最优磷虾对普通磷虾的影响系数Cbest
Figure BDA0003152267620000031
其中,I为当前迭代次数,Imax为最大迭代次数,rand为0到1的一个随机数;
步骤2.1.2:计算最佳磷虾对磷虾个体的诱导方向
Figure BDA0003152267620000041
Figure BDA0003152267620000042
其中,
Figure BDA0003152267620000043
为第i个磷虾个体访问过的最佳适应度值,
Figure BDA0003152267620000044
为第i个磷虾个体访问过的最佳位置;
步骤2.1.3:计算归一化的位置差
Figure BDA0003152267620000045
Figure BDA0003152267620000046
其中,Xi为第i只磷虾的位置,Xj为第j只磷虾的位置,ε为一个任意的正数;
步骤2.1.4:计算归一化的适应度值
Figure BDA0003152267620000047
Figure BDA0003152267620000048
其中,Ki是第i个磷虾个体的适应度值,Kj是第j个磷虾个体的适应度值,Kbest是当前最优适应度值,Kworst是当前最差适应度值;
步骤2.1.5:计算第i个磷虾个体的敏感邻域半径ds,j
Figure BDA0003152267620000049
其中,N是磷虾个体总数;
步骤2.1.6:计算邻居磷虾对磷虾个体的诱导方向
Figure BDA00031522676200000410
Figure BDA00031522676200000411
其中,NN是第i个磷虾个体敏感邻域内磷虾个体数;
步骤2.1.7:计算诱导方向αi
Figure BDA0003152267620000051
步骤2.1.8:计算诱导运动向量Ni
Figure BDA0003152267620000052
其中,ωn代表诱导权重,
Figure BDA0003152267620000053
为上一次运动的诱导活动方向。
优选地,所述步骤2的磷虾的觅食运动Fi的计算为:
步骤2.2.1:计算第i个磷虾到达过的最优位置对磷虾本身的吸引力
Figure BDA0003152267620000054
Figure BDA0003152267620000055
步骤2.2.2:计算食物对磷虾个体的吸引系数Cfood
Figure BDA0003152267620000056
步骤2.2.3:计算食物对第i只磷虾的吸引力
Figure BDA0003152267620000057
Figure BDA0003152267620000058
其中,
Figure BDA0003152267620000059
为归一化后的第i只磷虾的适应值差,
Figure BDA00031522676200000510
为归一化后的第i只磷虾的位值差;
步骤2.2.5:计算觅食方向Bi
Figure BDA00031522676200000511
步骤2.2.6:计算觅食运动Fi
Figure BDA00031522676200000512
其中,Vf是觅食速度,ωf是觅食惯性权重,且ωf∈[0,1],
Figure BDA00031522676200000513
是上一次运动的觅食活动方向。
优选地,所述步骤2的磷虾的扩散运动Di计算为:
Figure BDA0003152267620000061
其中,δ为随机方向矢量,范围是[-1,1]。
优选地,所述步骤3的具体操作步骤为:
步骤3.1:计算位置更新步长Δt,
Figure BDA0003152267620000062
其中,Ct是取值范围在[0,2]的步长限制因子,NV是变量的总数,UBj是第j个变量的上限,LBj是第j个变量的下限;
步骤3.2:定义位置更新公式,对磷虾的位置更新,
Figure BDA0003152267620000063
其中,
Figure BDA0003152267620000064
优选地,步骤4的自适应精英交叉操作,具体包括以下步骤:
步骤4.1:计算变动的精英个体适应度值fs
Figure BDA0003152267620000065
其中,Pd是波动率,fe是精英率Pe下精英个体适应度值,favg是精英个体适应度值取的平均适应度值;
步骤4.2:计算磷虾群自适应交叉算子Pc
Figure BDA0003152267620000071
其中,fmax为最优磷虾的适应度值,favg是磷虾群的平均适应度值,f′为待交叉磷虾的适应度值中较大值,f是磷虾的适应度值;
步骤4.3:产生新的磷虾个体位置Xi,m
Figure BDA0003152267620000072
其中,r是1到N的随机数,Xr,m表示与第r只磷虾进行了交叉后的磷虾位置。
优选地,所述步骤5的具体过程包括,
步骤5.1:计算磷虾个体位置的适应度值f,
f=WT*QoS (21)
其中,WT表示W的转置,QoS=(t,c,ava,rel),Qos是服务组合总体,t是服务响应时间,c是服务调用一次的成本,ava是服务可用性,rel是服务可靠性,W=[ω1,ω2,ω3,ω4]是QoS中各属性对应的权重,并满足
Figure BDA0003152267620000073
步骤5.2:对步骤5.1计算的磷虾个体位置的适应度值f排序;
步骤5.3:记录最佳磷虾个体位置的适应度值。
与现有技术相比,本发明的有益效果是:
本发明首次采用磷虾群算法解决云服务的服务组合优化问题,在增加种群多样性的同时,提高了算法的搜索能力,并提出一种自适应精英交叉算子替代磷虾群算法原有的交叉算子,提高了算法跳出局部最优解的能力和收敛速度,更好的实现了服务组合优化问题的解决。
实验证明,本发明提出的改进磷虾群算法在求解服务组合优化问题时,相较现有的一般智能优化算法,能在较短时间内找到更优的复合服务,在跳出局部最优解,提高最优解质量和时间开销方面具有优于基本KH算法和PSO、ABC、FPA算法的表现。同时通过仿真实验确定了取得较佳结果时本文提出的波动率、精英率、交叉概率等参数的取值。
附图说明
附图用来提供对本发明的进一步理解,并且构成说明书的一部分,与本发明的实施例一起用于解释本发明,并不构成对本发明的限制。
在附图中:
图1为本发明基于改进磷虾群算法的服务组合优化方法的流程示意图;
图2为单轮迭代结果对比图1;
图3为单轮迭代结果对比图2;
图4为单轮迭代结果对比图3;
图5为不同交叉概率下最佳适应度值对比图;
图6为不同交叉概率下时间开销对比图;
图7为不同波动率下单轮迭代结果对比图;
图8为不同波动率下最佳适应度值对比图;
图9为不同波动率下时间开销对比图;
图10为不同精英率下单轮迭代结果对比图;
图11为不同精英率下最佳适应度值对比图;
图12为不同精英率下时间开销对比图;
图13为不同算法单轮迭代结果对比图;
图14为不同算法最佳适应度值对比图;
图15为不同算法时间开销对比图。
具体实施方式
以下结合附图对本发明的优选实施例进行说明,应当理解,此处所描述的优选实施例仅用于说明和解释本发明,并不用于限定本发明。
参照附图1-15及附表1-2所示,一种基于改进磷虾群算法的服务组合优化方法,具体的包括以下步骤:
步骤1:随机生成N个磷虾,将每个服务组合方案映射为一个磷虾个体位置,得到初始磷虾种群,并设置磷虾群算法的参数:最大诱导速度Nmax,觅食速度Vf,最大扩散速度Dmax,最大迭代次数Imax,最大交叉概率Pc1,最小交叉概率Pc2,波动率Pd,精英率Pe
步骤2:计算磷虾的诱导运动向量Ni、觅食运动Fi、扩散运动Di
磷虾的诱导运动向量Ni计算为::
步骤2.1.1:计算最优磷虾对普通磷虾的影响系数Cbest
Figure BDA0003152267620000091
其中,I为当前迭代次数,Imax为最大迭代次数,rand为0到1的一个随机数;
步骤2.1.2:计算最佳磷虾对磷虾个体的诱导方向
Figure BDA0003152267620000092
Figure BDA0003152267620000093
其中,
Figure BDA0003152267620000094
为第i个磷虾个体访问过的最佳适应度值,
Figure BDA0003152267620000095
为第i个磷虾个体访问过的最佳位置;
步骤2.1.3:计算归一化的位置差
Figure BDA0003152267620000101
Figure BDA0003152267620000102
其中,Xi为第i只磷虾的位置,Xj为第j只磷虾的位置,ε为一个任意的正数;
步骤2.1.4:计算归一化的适应度值
Figure BDA0003152267620000103
Figure BDA0003152267620000104
其中,Ki是第i个磷虾个体的适应度值,Kj是第j个磷虾个体的适应度值,Kbest是当前最优适应度值,Kworst是当前最差适应度值;
步骤2.1.5:计算第i个磷虾个体的敏感邻域半径ds,j
Figure BDA0003152267620000105
其中,N是磷虾个体总数;
步骤2.1.6:计算邻居磷虾对磷虾个体的诱导方向
Figure BDA0003152267620000106
Figure BDA0003152267620000107
其中,NN是第i个磷虾个体敏感邻域内磷虾个体数;
步骤2.1.7:计算诱导方向αi
Figure BDA0003152267620000108
步骤2.1.8:计算诱导运动向量Ni
Figure BDA0003152267620000109
其中,ωn代表诱导权重,
Figure BDA00031522676200001010
为上一次运动的诱导活动方向。
磷虾的觅食运动Fi的计算为:
步骤2.2.1:计算第i个磷虾到达过的最优位置对磷虾本身的吸引力
Figure BDA0003152267620000111
Figure BDA0003152267620000112
步骤2.2.2:计算食物对磷虾个体的吸引系数Cfood
Figure BDA0003152267620000113
步骤2.2.3:计算食物对第i只磷虾的吸引力
Figure BDA0003152267620000114
Figure BDA0003152267620000115
其中,
Figure BDA0003152267620000116
为归一化后的第i只磷虾的适应值差,
Figure BDA0003152267620000117
为归一化后的第i只磷虾的位值差;
步骤2.2.5:计算觅食方向Bi
Figure BDA0003152267620000118
步骤2.2.6:计算觅食运动Fi
Figure BDA0003152267620000119
其中,Vf是觅食速度,ωf是觅食惯性权重,且ωf∈[0,1],
Figure BDA00031522676200001110
是上一次运动的觅食活动方向。
磷虾的扩散运动Di计算为:
Figure BDA00031522676200001111
其中,δ为随机方向矢量,范围是[-1,1]。
步骤3:根据步骤2计算的诱导运动向量Ni、觅食运动Fi和扩散运动Di,更新磷虾的位置,具体操作步骤为:
步骤3.1:计算位置更新步长Δt,
Figure BDA0003152267620000121
其中,Ct是取值范围在[0,2]的步长限制因子,NV是变量的总数,UBj是第j个变量的上限,LBj是第j个变量的下限;
步骤3.2:定义位置更新公式,对磷虾的位置更新,
Figure BDA0003152267620000122
其中,
Figure BDA0003152267620000123
步骤4:步骤3对磷虾的位置更新后,为了增加种群的多样性,提高跳出局部最优解的能力,进行自适应精英交叉操作,并产生新的磷虾个体位置,具体包括以下步骤,
步骤4.1:计算变动的精英个体适应度值fs
Figure BDA0003152267620000124
其中,Pd是波动率,fe是精英率Pe下精英个体适应度值,favg是精英个体适应度值取的平均适应度值;
步骤4.2:计算磷虾群自适应交叉算子Pc
Figure BDA0003152267620000125
其中,fmax为最优磷虾的适应度值,favg是磷虾群的平均适应度值,f′为待交叉磷虾的适应度值中较大值,f是磷虾的适应度值;
步骤4.3:产生新的磷虾个体位置Xi,m
Figure BDA0003152267620000131
其中,r是1到N的随机数,Xr,m表示与第r只磷虾进行了交叉后的磷虾位置。
步骤5:计算步骤4产生的磷虾个体位置的适应度值并排序,记录最佳磷虾个体的适应度值,具体过程包括:
步骤5.1:计算磷虾个体位置的适应度值f,
f=WT*QoS (21)
其中,WT表示W的转置,QoS=(t,c,ava,rel),Qos是服务组合总体,t是服务响应时间,c是服务调用一次的成本,ava是服务可用性,rel是服务可靠性,W=[ω1,ω2,ω3,ω4]是QoS中各属性对应的权重,并满足
Figure BDA0003152267620000132
步骤5.2:对步骤5.1计算的磷虾个体位置的适应度值f排序;
步骤5.3:记录最佳磷虾个体位置的适应度值。
步骤6:判断是否满足终止条件即最大迭代次数Imax,如果满足条件,结束迭代,输出最佳磷虾个体适应度值和步骤4产生新的磷虾个体的位置,将步骤4产生新的磷虾个体的位置还原回服务组合方案,即得到最优务组合方案,否则返回步骤2。
实施例:
为验证本文提出的改进KH算法(简称AECKH算法)解决基于QoS的服务组合优化问题的有效性,本发明从最优解质量和时间开销两个维度将AECKH算法、标准KH算法、PSO算法、ABC算法和FPA算法进行比较。
本实施例实验采用环境:
Windows7-inter-Xeon-CPUE5-2620-v3-2.40GHz-32GBRAM-64位操作系统,MATLAB2020a。
本实施例使用的数据集是随机生成的一个n*m*4的三维矩阵。实际意义为服务工作流由n个抽象服务组成,每个抽象服务均对应一个由m个具体服务组成的候选服务集,每个具体服务有4个QoS属性,属性值均在0到1之间。为保证实验公平有效,所有算法均采用此数据集进行测试。本文取n=20,m=100进行实验。
1、实验参数
本实施例实验分两组,一组是对比不同参数条件下AECKH和标准KH算法求解服务组合优化问题的性能,另一组是在固定参数的情况下对比AECKH、PSO、ABC和FPA算法求解服务组合优化问题的性能。每组实验重复100次,最大迭代次数设置为500,权重W=[0.15,0.15,0.35,0.35],其他各算法参数设置如表1和表2所示。
表1实验一参数设置
Figure BDA0003152267620000141
表2实验二参数设置
Figure BDA0003152267620000151
2、仿真结果分析
实验使用公式(21)中的服务质量评价函数作为算法中的适应度值计算公式。QoS数据经公式
Figure BDA0003152267620000152
归一化处理后,适应度值越小代表最优解的质量越高。
2.1、不同条件下AECKH算法与KH算法对比
(1)改变Pc1和Pc2
如图2、3、4所示,从100轮结果中随机选取了一轮迭代的结果。可以看出,在本轮迭代中,不同交叉概率取值下,本发明提出的AECKH算法均寻得了标准KH算法质量更高的最优解。在算法后期,标准KH算法已经陷入局部最优解时,AECKH算法仍有一定的跳出局部最优解的能力,不断提高局部最优解的质量。
为了防止实验的偶然性,将100轮迭代寻找到的最优解适应度值以箱线图形式展示,实验结果如图5所示。可以看出,AECKH算法在不同交叉概率的情况下,100轮迭代中寻找到的最优解适应度值的平均值相较标准KH算法均更好,验证了自适应精英交叉算子在提升最优解质量上的有效性。同时可以看出在Pc1=0.6,Pc2=0.3的情况下算法相对较优。
如图6所示,因为AECKH算法的自适应精英交叉算子复杂度高于标准KH算法的交叉算子,带来了额外的时间开销,AECKH算法在时间开销上明显大于标准KH算法20%左右。同时高交叉概率下,算法收敛时间有所降低。
(2)改变Pd
如图7所示,单轮迭代中,不同波动率下AECKH算法均找到较标准KH算法更优的解。同时Pd=0.2的情况下,算法性能更佳。
为减小偶然性,将100轮迭代的最佳适应度值数据以箱线图的形式表示。如图8所示,可以看出AECKH算法在不同波动率下寻优能力均高于标准KH算法,Pd=0.15和Pd=0.2时,算法寻优能力差异不显著,但均高于Pd=0.1时的寻优能力。
如图9所示,不同波动率下AECKH算法在时间开销上均明显大于标准KH算法,与前述原因一致,由自适应精英交叉算子的复杂性造成。且不同波动率下,时间开销变化不明显。高波动率时,时间开销略低。
(3)改变Pe
如图10所示,单轮迭代中,不同精英率下AECKH算法均找到较标准KH算法更优的解。同时Pe=0.8的情况下,算法性能更佳。
为减小偶然性,将100轮迭代的最佳适应度值数据以箱线图的形式表示。如图11所示,可以看出AECKH算法在不同精英率下寻优能力均高于标准KH算法,但不同精英率对算法寻优能力影响不显著。
如图12所示,不同精英率下AECKH算法在时间开销上明显大于标准KH算法,与前述分析一致,且不同精英率下,时间开销变化不明显。高精英率时,时间开销略低。
综上,自适应精英交叉算子有效地提高了AECKH算法较标准KH算法的寻优能力,但同时也增加了一定的时间开销。相较之下,在参数选取Pc1=0.6,Pc2=0.3,Pd=0.2,Pe=0.8时,算法性能较佳。
2.2、AECKH算法与PSO、ABC、FPA算法对比
(1)最优解质量
如图13所示,AECKH算法寻找到的最优解适应度值相较PSO、ABC、FPA算法均更好,且能尽快接近最优解。为减小偶然性,将100轮迭代的最佳适应度值数据以箱线图的形式表示。如图14所示,可以看出AECKH算法寻优能力显著高于PSO和ABC算法,也高于FPA算法一定程度。
(2)时间开销
如图15所示,AECKH算法时间开销相较PSO算法和FPA算法有一定优势,但劣于ABC算法。
综合考虑寻优能力和时间开销,AECKH算法在寻优能力上高于PSO、ABC和FPA算法,时间开销上也有较大优势,整体性能较佳。
以上显示和描述了本发明的基本原理、主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

Claims (7)

1.一种基于改进磷虾群算法的服务组合优化方法,其特征在于:具体的包括以下步骤:
步骤1:随机生成N个磷虾,将每个服务组合方案映射为一个磷虾个体位置,得到初始磷虾种群,并设置磷虾群算法的参数:最大诱导速度Nmax,觅食速度Vf,最大扩散速度Dmax,最大迭代次数Imax,最大交叉概率Pc1,最小交叉概率Pc2,波动率Pd,精英率Pe
步骤2:计算磷虾的诱导运动向量Ni、觅食运动Fi、扩散运动Di
步骤3:根据步骤2计算的诱导运动向量Ni、觅食运动Fi和扩散运动Di,更新磷虾的位置;
步骤4:步骤3对磷虾的位置更新后,为了增加种群的多样性,提高跳出局部最优解的能力,进行自适应精英交叉操作,并产生新的磷虾个体位置;
步骤5:计算步骤4产生的磷虾个体位置的适应度值并排序,记录最佳磷虾个体位置的适应度值;
步骤6:判断是否满足终止条件即最大迭代次数Imax,如果满足条件,结束迭代,输出最佳磷虾个体适应度值和步骤4产生新的磷虾个体的位置,将步骤4产生新的磷虾个体的位置还原回服务组合方案,即得到最优务组合方案,否则返回步骤2。
2.根据权利要求1所述的一种基于改进磷虾群算法的服务组合优化方法,其特征在于:所述步骤2的磷虾的诱导运动向量Ni计算为:
步骤2.1.1:计算最优磷虾对普通磷虾的影响系数Cbest
Figure FDA0003152267610000011
其中,I为当前迭代次数,Imax为最大迭代次数,rand为0到1的一个随机数;
步骤2.1.2:计算最佳磷虾对磷虾个体的诱导方向
Figure FDA0003152267610000021
Figure FDA0003152267610000022
其中,
Figure FDA0003152267610000023
为第i个磷虾个体访问过的最佳适应度值,
Figure FDA0003152267610000024
为第i个磷虾个体访问过的最佳位置;
步骤2.1.3:计算归一化的位置差
Figure FDA0003152267610000025
Figure FDA0003152267610000026
其中,Xi为第i只磷虾的位置,Xj为第j只磷虾的位置,ε为一个任意的正数;
步骤2.1.4:计算归一化的适应度值
Figure FDA0003152267610000027
Figure FDA0003152267610000028
其中,Ki是第i个磷虾个体的适应度值,Kj是第j个磷虾个体的适应度值,Kbest是当前最优适应度值,Kworst是当前最差适应度值;
步骤2.1.5:计算第i个磷虾个体的敏感邻域半径ds,j
Figure FDA0003152267610000029
其中,N是磷虾个体总数;
步骤2.1.6:计算邻居磷虾对磷虾个体的诱导方向
Figure FDA00031522676100000210
Figure FDA00031522676100000211
其中,NN是第i个磷虾个体敏感邻域内磷虾个体数;
步骤2.1.7:计算诱导方向αi
Figure FDA0003152267610000031
步骤2.1.8:计算诱导运动向量Ni
Figure FDA0003152267610000032
其中,ωn代表诱导权重,
Figure FDA0003152267610000033
为上一次运动的诱导活动方向。
3.根据权利要求2所述的一种基于改进磷虾群算法的服务组合优化方法,其特征在于:所述步骤2的磷虾的觅食运动Fi的计算为:
步骤2.2.1:计算第i个磷虾到达过的最优位置对磷虾本身的吸引力
Figure FDA0003152267610000034
Figure FDA0003152267610000035
步骤2.2.2:计算食物对磷虾个体的吸引系数Cfood
Figure FDA0003152267610000036
步骤2.2.3:计算食物对第i只磷虾的吸引力
Figure FDA0003152267610000037
Figure FDA0003152267610000038
其中,
Figure FDA0003152267610000039
为归一化后的第i只磷虾的适应值差,
Figure FDA00031522676100000310
为归一化后的第i只磷虾的位值差;
步骤2.2.5:计算觅食方向Bi
Figure FDA00031522676100000311
步骤2.2.6:计算觅食运动Fi
Fi=VfBifFi old (13)
其中,Vf是觅食速度,ωf是觅食惯性权重,且ωf∈[0,1],Fi old是上一次运动的觅食活动方向。
4.根据权利要求3所述的一种基于改进磷虾群算法的服务组合优化方法,其特征在于:所述步骤2的磷虾的扩散运动Di计算为:
Figure FDA0003152267610000041
其中,δ为随机方向矢量,范围是[-1,1]。
5.根据权利要求4所述的一种基于改进磷虾群算法的服务组合优化方法,其特征在于:所述步骤3的具体操作步骤为:
步骤3.1:计算位置更新步长Δt,
Figure FDA0003152267610000042
其中,Ct是取值范围在[0,2]的步长限制因子,NV是变量的总数,UBj是第j个变量的上限,LBj是第j个变量的下限;
步骤3.2:定义位置更新公式,对磷虾的位置更新,
Figure FDA0003152267610000043
其中,
Figure FDA0003152267610000044
6.根据权利要求5所述的一种基于改进磷虾群算法的服务组合优化方法,其特征在于:步骤4的自适应精英交叉操作,具体包括以下步骤:
步骤4.1:计算变动的精英个体适应度值fs
Figure FDA0003152267610000051
其中,Pd是波动率,fe是精英率Pe下精英个体适应度值,favg是精英个体适应度值取的平均适应度值;
步骤4.2:计算磷虾群自适应交叉算子Pc
Figure FDA0003152267610000052
其中,fmax为最优磷虾的适应度值,favg是磷虾群的平均适应度值,f′为待交叉磷虾的适应度值中较大值,f是磷虾的适应度值;
步骤4.3:产生新的磷虾个体位置Xi,m
Figure FDA0003152267610000053
其中,r是1到N的随机数,Xr,m表示与第r只磷虾进行了交叉后的磷虾位置。
7.根据权利要求6所述的一种基于改进磷虾群算法的服务组合优化方法,其特征在于:所述步骤5的具体过程包括,
步骤5.1:计算磷虾个体位置的适应度值f,
f=WT*QoS (21)
其中,WT表示W的转置,QoS=(t,c,ava,rel),Qos是服务组合总体,t是服务响应时间,c是服务调用一次的成本,ava是服务可用性,rel是服务可靠性,W=[ω1,ω2,ω3,ω4]是QoS中各属性对应的权重,并满足
Figure FDA0003152267610000054
步骤5.2:对步骤5.1计算的磷虾个体位置的适应度值f排序;
步骤5.3:记录最佳磷虾个体位置的适应度值。
CN202110769456.4A 2021-07-07 2021-07-07 一种基于改进磷虾群算法的服务组合优化方法 Pending CN113468812A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202110769456.4A CN113468812A (zh) 2021-07-07 2021-07-07 一种基于改进磷虾群算法的服务组合优化方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202110769456.4A CN113468812A (zh) 2021-07-07 2021-07-07 一种基于改进磷虾群算法的服务组合优化方法

Publications (1)

Publication Number Publication Date
CN113468812A true CN113468812A (zh) 2021-10-01

Family

ID=77879100

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202110769456.4A Pending CN113468812A (zh) 2021-07-07 2021-07-07 一种基于改进磷虾群算法的服务组合优化方法

Country Status (1)

Country Link
CN (1) CN113468812A (zh)

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105844628A (zh) * 2016-03-21 2016-08-10 昆明理工大学 一种基于磷虾优化算法的摇床矿带分带图像分割法
CN110837884A (zh) * 2019-10-30 2020-02-25 河南大学 基于改进的二元磷虾群算法和信息增益算法的有效混合特征选择方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN105844628A (zh) * 2016-03-21 2016-08-10 昆明理工大学 一种基于磷虾优化算法的摇床矿带分带图像分割法
CN110837884A (zh) * 2019-10-30 2020-02-25 河南大学 基于改进的二元磷虾群算法和信息增益算法的有效混合特征选择方法

Non-Patent Citations (3)

* Cited by examiner, † Cited by third party
Title
AI NURHAYATI; ADITYA GAUTAMA DARMOYONO: ""A Comparison of Hybrid Methods of the Krill Herd Algorithm"", 《2018 INTERNATIONAL CONFERENCE ON APPLIED ENGINEERING (ICAE)》 *
廖水聪; 孙鹏; 刘星辰; 钟贇: ""基于改进磷虾群算法的服务组合优化"", 《计算机应用》 *
王磊等: "基于混沌搜索与精英交叉算子的磷虾觅食算法", 《计算机工程》 *

Similar Documents

Publication Publication Date Title
Meng et al. HARD-DE: Hierarchical archive based mutation strategy with depth information of evolution for the enhancement of differential evolution on numerical optimization
Lin et al. Differential evolution for multimodal optimization with species by nearest-better clustering
Yang et al. A clustering particle swarm optimizer for locating and tracking multiple optima in dynamic environments
US7061874B2 (en) Method, system and computer program product for classifying packet flows with a bit mask
Li et al. Niching particle swarm optimization with equilibrium factor for multi-modal optimization
CN114356545B (zh) 一种面向隐私保护与能耗优化的任务卸载方法
WO2019154215A1 (zh) 机器人运行路径生成方法、计算设备及存储介质
CN106445821A (zh) 一种基于遗传算法实现测试用例自动生成的方法
CN107798379A (zh) 改进量子粒子群优化算法的方法及基于改进算法的应用
CN114330715A (zh) 一种智能弹药协同进化任务分配方法
KR101134196B1 (ko) 무선 통신 네트워크에서 abc 알고리즘을 이용하는 lap 최적 설계 방법 및 그 장치
CN114785548B (zh) 流量智能监测平台
CN115277115A (zh) 一种用于解决网络上鲁棒信息传播问题的方法及系统
Shi et al. A self-adaptive preferred learning differential evolution algorithm for task scheduling in cloud computing
CN113194059B (zh) 移动目标防御策略选择的方法
CN113468812A (zh) 一种基于改进磷虾群算法的服务组合优化方法
Amponsah et al. An enhanced class topper algorithm based on particle swarm optimizer for global optimization
CN113672372B (zh) 一种基于强化学习的多边缘协同负载均衡任务调度方法
CN108921354A (zh) 一种基于粒子群优化的蚁群算法求解tsp问题的方法
CN113075995B (zh) 基于混合群智能的虚拟机节能整合方法、系统和存储介质
Yassen et al. Lion optimization algorithm for team orienteering problem with time window
Jiao et al. A dynamic global and local combined particle swarm optimization algorithm
CN106611214A (zh) 一种求解柔性作业车间调度问题的群居蜘蛛优化算法
CN111818119A (zh) 基于改进的蜘蛛集群的数据服务资源优化调度方法
Li et al. A path planner based on multivariant optimization algorithm with absorption

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
RJ01 Rejection of invention patent application after publication
RJ01 Rejection of invention patent application after publication

Application publication date: 20211001