CN116089063A - 基于wngo算法和相似整数编码的服务组合优化方法 - Google Patents
基于wngo算法和相似整数编码的服务组合优化方法 Download PDFInfo
- Publication number
- CN116089063A CN116089063A CN202211554951.4A CN202211554951A CN116089063A CN 116089063 A CN116089063 A CN 116089063A CN 202211554951 A CN202211554951 A CN 202211554951A CN 116089063 A CN116089063 A CN 116089063A
- Authority
- CN
- China
- Prior art keywords
- service
- service set
- algorithm
- wngo
- similar
- 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.)
- Granted
Links
- 238000004422 calculation algorithm Methods 0.000 title claims abstract description 159
- 238000000034 method Methods 0.000 title claims abstract description 52
- 238000005457 optimization Methods 0.000 title claims abstract description 48
- 230000006870 function Effects 0.000 claims description 34
- 238000002474 experimental method Methods 0.000 claims description 30
- 238000003860 storage Methods 0.000 claims description 13
- 238000004364 calculation method Methods 0.000 claims description 9
- 230000000694 effects Effects 0.000 claims description 7
- 230000009466 transformation Effects 0.000 claims description 3
- 239000000203 mixture Substances 0.000 claims description 2
- 230000008569 process Effects 0.000 abstract description 5
- 241000272184 Falconiformes Species 0.000 description 10
- 238000010586 diagram Methods 0.000 description 8
- 238000004519 manufacturing process Methods 0.000 description 8
- 238000013439 planning Methods 0.000 description 6
- 230000009286 beneficial effect Effects 0.000 description 5
- 241000283153 Cetacea Species 0.000 description 4
- 238000004590 computer program Methods 0.000 description 4
- 238000012545 processing Methods 0.000 description 4
- 238000004458 analytical method Methods 0.000 description 2
- 238000004891 communication Methods 0.000 description 2
- 238000011161 development Methods 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000002068 genetic effect Effects 0.000 description 2
- 239000002245 particle Substances 0.000 description 2
- 241000272189 Accipiter gentilis Species 0.000 description 1
- 241000958587 Canis aureus Species 0.000 description 1
- 238000003491 array Methods 0.000 description 1
- 230000006399 behavior Effects 0.000 description 1
- 230000008859 change Effects 0.000 description 1
- 239000002131 composite material Substances 0.000 description 1
- 230000007547 defect Effects 0.000 description 1
- 230000006872 improvement Effects 0.000 description 1
- 238000007726 management method Methods 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011056 performance test Methods 0.000 description 1
- 238000013468 resource allocation Methods 0.000 description 1
- 238000004088 simulation Methods 0.000 description 1
- 230000007723 transport mechanism Effects 0.000 description 1
- 238000012384 transportation and delivery Methods 0.000 description 1
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/50—Allocation of resources, e.g. of the central processing unit [CPU]
- G06F9/5005—Allocation of resources, e.g. of the central processing unit [CPU] to service a request
- G06F9/5027—Allocation of resources, e.g. of the central processing unit [CPU] to service a request the resource being a machine, e.g. CPUs, Servers, Terminals
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06N—COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- G06N3/00—Computing arrangements based on biological models
- G06N3/004—Artificial life, i.e. computing arrangements simulating life
- G06N3/006—Artificial 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]
-
- Y—GENERAL TAGGING OF NEW TECHNOLOGICAL DEVELOPMENTS; GENERAL TAGGING OF CROSS-SECTIONAL TECHNOLOGIES SPANNING OVER SEVERAL SECTIONS OF THE IPC; TECHNICAL SUBJECTS COVERED BY FORMER USPC CROSS-REFERENCE ART COLLECTIONS [XRACs] AND DIGESTS
- Y02—TECHNOLOGIES OR APPLICATIONS FOR MITIGATION OR ADAPTATION AGAINST CLIMATE CHANGE
- Y02D—CLIMATE CHANGE MITIGATION TECHNOLOGIES IN INFORMATION AND COMMUNICATION TECHNOLOGIES [ICT], I.E. INFORMATION AND COMMUNICATION TECHNOLOGIES AIMING AT THE REDUCTION OF THEIR OWN ENERGY USE
- Y02D10/00—Energy efficient computing, e.g. low power processors, power management or thermal management
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Physics & Mathematics (AREA)
- General Engineering & Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Artificial Intelligence (AREA)
- Life Sciences & Earth Sciences (AREA)
- Health & Medical Sciences (AREA)
- Biomedical Technology (AREA)
- Biophysics (AREA)
- Computational Linguistics (AREA)
- Data Mining & Analysis (AREA)
- Evolutionary Computation (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
本发明公开了一种基于WNGO算法和相似整数编码的服务组合优化方法,包括获取用户终端的服务请求,根据所述服务请求生成任务集,将所述任务集分解为多个子任务;根据所述多个子任务构建每一个子任务相对应的候选服务集,通过整数编码对所述候选服务集中的候选子服务进行编码;根据WNGO算法对所述选子服务进行全局搜索,并生成第一最优服务集,根据所述第一最优服务集和相似编码生成相对应的相似服务集;根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集。通过WNGO算法和相似编码方法对服务组合的优化进行处理,提高了编码过程的收敛速度和稳定性,增强了局部搜索的能力,可广泛应用于计算机技术领域。
Description
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于WNGO算法和相似整数编码的服务组合优化方法。
背景技术
目前,以消费者为中心的制造已经取代了面向产品的制造原型。例如,云制造就是一种面向服务的新型网络制造范式。通过集中管理和操作,云制造可以为用户的独特需求提供临时和可重新配置的制造服务,并允许根据客户的可变需求进行最佳资源分配;随着云制造的发展以及云服务数量的不断增加,用户对个性化制造任务提出了更高的要求,服务质量(Quality of Service,QoS)成为评估每个复合服务的非功能属性的一个重要指标。
现有技术提出了通过整数编码方式实现服务组合的优化,即利用编码代替实际值进行运算,但是现有的通过整数编码方式进行服务组合优化的收敛速度慢且不稳定,局部搜索能力不强。
发明内容
有鉴于此,本发明实施例的目的是提供一种基于WNGO算法和相似整数编码的服务组合优化方法,将鲸鱼优化算法(WOA)和北方苍鹰优化算法(NGO)相结合,提出了一种利用鲸鱼优化算法指导猎物生成的北方苍鹰优化算法(WNGO),并基于WNGO算法提出一种相似整数编码方法,提高了整数编码的收敛速度和局部搜索能力。
第一方面,本发明实施例提供了一种基于WNGO算法和相似整数编码的服务组合优化方法,包括:
获取用户终端的服务请求,根据所述服务请求生成任务集,将所述任务集分解为多个子任务;
根据所述多个子任务构建每一个子任务相对应的候选服务集,通过整数编码对所述候选服务集中的候选子服务进行编码;
根据WNGO算法对所述候选子服务进行全局搜索,并生成第一最优服务集,根据所述第一最优服务集和相似编码生成相对应的相似服务集;
根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集;
根据所述第一最优服务集和所述第二最优服务集确定第三最优服务集,并进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集。
可选地,所述根据所述服务请求生成任务集,将所述任务集分解为多个子任务,具体包括:
根据所述服务请求确定相应的服务集、服务质量偏好集和服务请求周期;
根据所述服务集、服务质量偏好集和服务请求周期生成所述任务集;
将所述任务集的所述服务集分解为多个子任务。
可选地,所述通过整数编码对所述候选服务集中的候选子服务进行编码,具体包括:
将每一个候选服务集的候选子服务进行计数得到每一个候选服务集的搜索上限;
在顺序结构工作流下对各候选服务集进行排列,得到一串编码组合;其中,单个码的变换范围由相对应的候选服务集的候选子服务个数所决定,数值由一至搜索上限且为整数。
可选地,所述根据WNGO算法对所述候选子服务进行全局搜索,并生成第一最优服务集,具体包括:
生成新的猎物推荐位置,具体公式如下:
其中,t是迭代计数器,T是最大迭代次数,γ表示猎物的位置半径;
猎物位置更新,具体公式如下:
判断猎物的j维位置变量是否更新完毕,更新完毕则计算北方苍鹰的第j维位置变量,具体计算如下:
其中,是的第j维位置变量,表示北方苍鹰在第一阶段新的第j维位置变量,Rd()为四舍五入取整函数,xi,j是北方苍鹰的第j维位置变量,Pi为第i个北方苍鹰的猎物的位置,pi,j是猎物的第j维位置变量,FPi为第i个北方苍鹰的猎物的位置的目标函数值,Fi为第i个北方苍鹰位置的目标函数值,r是区间[0,1]的随机数,I是取值为1或2的随机数,参数r和I是随机数,用于产生在搜索和更新行为中的随机性;
判断北方苍鹰的j维位置变量是否更新完毕,没有则迭代进行北方苍鹰的j维位置变量位置更新,更新完毕则计算北方苍鹰的位置,即是得到第一最优服务集,具体计算公式如下:
可选地,所述根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集,具体包括:
若所述相似服务集为空集,则对所述候选子服务进行局部搜索,并对所述局部搜索进行迭代更新,具体计算公式如下:
其中,Xi为第i个北方苍鹰的位置,为第i个北方苍鹰在第二阶段新的第j维位置变量,为第i个北方苍鹰第二阶段新的位置,为的目标函数值,R1表示狩猎活动接近于一个半径为R1的攻击位置,t是迭代计数器,T是最大迭代次数,r是区间[0,1]的随机数,Rd()为四舍五入取整函数;
若所述相似服务集不为空集,则对所述相似服务集进行局部搜索,并对所述局部搜索进行迭代更新,生成所述第二最优服务集,具体计算公式如下:
可选地,所述进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集,具体包括:
若当前迭代次数小于预设迭代次数,当前迭代次数增加一次,继续进行迭代运算;
若当前迭代次数大于或等于所述预设迭代次数,根据不同迭代次数的所述第三最优服务集确定所述第四最优服务集。
可选地,所述方法还包括对所述WNGO算法性能验证和所述相似整数编码有效性验证的步骤,具体包括:
通过实验验证所述WNGO算法在不同复杂度的任务下的性能;
通过实验验证所述WNGO算法在不同服务类型比例下的性能;
通过实验验证所述WNGO算法在添加和删除候选子服务时的性能;
通过实验验证所述相似整数编码的有效性。
第二方面,本发明实施例提供了一种基于WNGO算法和相似整数编码的服务组合优化系统,包括:
第一模块,用于获取用户终端的服务请求,根据所述服务请求生成任务集,将所述任务集分解为多个子任务;
第二模块,用于根据所述多个子任务构建每一个子任务相对应的候选服务集,通过整数编码对所述候选服务集中的候选子服务进行编码;
第三模块,用于根据WNGO算法对所述选子服务进行全局搜索,并生成第一最优服务集,根据所述第一最优服务集和相似编码生成相对应的相似服务集;
第四模块,用于根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集;
第五模块,用于根据所述第一最优服务集和所述第二最优服务集确定第三最优服务集,并进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集。
第三方面,本发明实施例提供了一种基于WNGO算法和相似整数编码的服务组合优化装置,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如上所述的方法。
第四方面,本发明实施例提供了一种计算机可读存储介质,其中存储有处理器可执行的程序,其特征在于,所述处理器可执行的程序在由处理器执行时用于执行如上所述的方法。
实施本发明实施例包括以下有益效果:本实施例中的一种基于WNGO算法的相似整数编码方法包括:获取用户终端的服务请求,根据所述服务请求生成任务集,将所述任务集分解为多个子任务;根据所述多个子任务构建每一个子任务相对应的候选服务集,通过整数编码对所述候选服务集中的候选子服务进行编码;根据WNGO算法对所述选子服务进行全局搜索,并生成第一最优服务集,根据所述第一最优服务集和相似编码生成相对应的相似服务集;根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集;根据所述第一最优服务集和所述第二最优服务集确定第三最优服务集,并进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集。通过WNGO算法对相似服务集进行全局搜索,通过相似编码和第一最优服务集生成相似服务集,生成的相似服务集通过WNGO算法进行相应的局部搜索,提高了编码过程的收敛速度和稳定性,增强了局部搜索的能力。
附图说明
图1是本发明实施例提供的一种基于WNGO算法和相似整数编码的服务组合优化方法的步骤流程示意图;
图2是本发明实施例提供的一种相似编码的示意图;
图3是本发明实施例提供的一种WNGO算法的流程图;
图4是本发明实施例提供的对WNGO算法性能验证和相似整数编码有效性验证的步骤流程示意图;
图5是本发明实施例提供的一种WNGO算法在复杂度属于2到10的算法性能实验对比图;
图6是本发明实施例提供的一种WNGO算法在复杂度属于10到20的算法性能实验对比图;
图7是本发明实施例提供的一种WNGO算法在复杂度属于20到30的算法性能实验对比图;
图8是本发明实施例提供的一种WNGO算法在复杂度属于30到40的算法性能实验对比图;
图9是本发明实施例提供的一种WNGO算法在服务类型比例为1:0:0下的算法性能实验对比图;
图10是本发明实施例提供的一种WNGO算法在不同服务类型比例为3:2:0下的算法性能实验对比图;
图11是本发明实施例提供的一种WNGO算法在不同服务类型比例为3:1:1下的算法性能实验对比图;
图12是本发明实施例提供的一种WNGO算法在添加和删除候选子服务时的性能实验示意图;
图13是本发明实施例提供的一种相似整数编码的有效性的实验示意图;
图14是本发明实施例提供的一种基于WNGO算法的相似整数编码系统的结构框图;
图15是本发明实施例提供的一种基于WNGO算法的相似整数编码装置的结构框图。
具体实施方式
下面结合附图和具体实施例对本发明做进一步的详细说明。对于以下实施例中的步骤编号,其仅为了便于阐述说明而设置,对步骤之间的顺序不做任何限定,实施例中的各步骤的执行顺序均可根据本领域技术人员的理解来进行适应性调整。
如图1所示,本发明实施例提供了一种基于WNGO算法和相似整数编码的服务组合优化方法,其包括的步骤如下所示。
S100、获取用户终端的服务请求,根据所述服务请求生成任务集,将所述任务集分解为多个子任务。
其中,用户终端包括手机、电脑、智能手表等,具体用户终端根据实际应用确定,在此不做限定。
在一个具体实施例中,手机终端发出了一个看电影的服务请求,服务器获取服务请求,生成一个看电影任务集,将看电影任务集分解为寻找影院、规划路线、出行方式、订购影票和返程规划等子任务。
可选地,所述根据所述服务请求生成任务集,将所述任务集分解为多个子任务,具体包括:
S110、根据所述服务请求确定相应的服务集、服务质量偏好集和服务请求周期;
S120、根据所述服务集、服务质量偏好集和服务请求周期生成所述任务集;
S130、将所述任务集的所述服务集分解为多个子任务。
其中,服务集包括多个子任务,服务质量偏好集包括多个偏好值,偏好值分别对应相应的子任务;请求周期为性能服务请求的最大时间,根据具体实际应用确定,在此不做限定。
在一个具体实施例中,手机终端发出了一个看电影的服务请求,服务器获取服务请求,根据看电影来生成一个包括寻找影院、规划路线、出行方式、订购影票和返程规划的服务集,根据服务集的不同子任务生成一个相对应的服务质量偏好集,其中,寻找影院的偏好值为0.2,规划路线的偏好值为0.2,出行方式的偏好值为0.1,订购影票的偏好值为0.3,返程规划的偏好值为0.2;服务请求周期为一分钟,在服务请求周期内选出最佳推荐组合。
参照图2,S200、根据所述多个子任务构建每一个子任务相对应的候选服务集,通过整数编码对所述候选服务集中的候选子服务进行编码。
其中,候选服务集(Candidate Service Set,CSS),CSS是由基础组件服务(BasicComponent Service,BCS)和抽象组件服务(Abstract Component Service,ACS)组成,CSS可被定义为CSSi=(BCSi,ACSi),BCSi和ACSi分别表示与对应子任务具有相同功能的BCS和ACS的集合。
子任务定义为Taski=(Pin,Pout)。其中Pin为所需的输入参数集,Pout为所需的输出参数集。
具体的,在多个子任务生成后,根据每个子任务的属性生成一个与之相对应的候选服务集,候选服务集包括多个候选子服务,再通过整数编码的方法对候选服务集中的候选子服务进行编码。
可选地,所述通过整数编码对所述候选服务集中的候选子服务进行编码,具体包括:
S220、将每一个候选服务集的候选子服务进行计数得到每一个候选服务集的搜索上限;
S230、在顺序结构工作流下对各候选服务集进行排列,得到一串编码组合;其中,单个码的变换范围由相对应的候选服务集的候选子服务个数所决定,数值由一至搜索上限且为整数。
在一个具体实施例中,寻找影院、规划路线、出行方式、订购影票和返程规划的服务集包括相对应的候选服务集,每个候选服务集包含100个候选子服务,每个候选服务集的搜索上限为100,Task1对应寻找影院,CSS1对应寻找影院的候选服务集,CS1,n1表示寻找影院的候选服务集的第n个候选子服务,依次类推可得到规划路线、出行方式、订购影票和返程规划;整数编码将寻找影院、规划路线、出行方式、订购影票和返程规划的候选服务进行编码得到每一个候选服务的值,编码组合xd用m维数组表示为在这个数组中,元素表示候选服务CSi,j的值,该值为[lb,ub]内的整数,下限(lb)是1,上限(ub)为具体候选服务集的搜索上限。
参照图3,参照图2,S300、根据WNGO算法对所述候选子服务进行全局搜索,并生成第一最优服务集,根据所述第一最优服务集和相似编码生成相对应的相似服务集。
其中,WNGO算法表示基于鲸鱼算法(Whale Optimization Algorithm,WOA)和北方苍鹰优化算法(Northern Goshawk Optimization,NGO)的一种鲸鱼-北方苍鹰算法,WOA算法虽然收敛效率很高,但局部搜索能力不强,容易陷入局部最优,NGO算法的局部搜索能力比WOA强,但收敛的效率并不高,WNGO算法同时具有WOA算法的收敛效率和NGO算法的局部搜索能力。
第一最优服务集,是每一个候选服务集的一个候选子服务所组成的集合,通过一次全局搜索选取。
相似服务集,是第一最优服务集的衍生集合,相似编码本质上也是整数编码,不同之处在于它在编码的过程中考虑了服务质量(Quality of Service,QoS)属性的数据相似度。
具体的,通过WNGO算法对整数编码的候选子服务进行全局搜索,生成第一最优服务集,根据第一最优服务集的候选子服务的属性生成相应的相似服务集,通过相似编码方法进行编码,如图中SS1={S1,1,S1,2,…,S1,m1}为CS1,n1的相似服务集,S1,m1与CS1,n1的QoS数据相似度越高,排名就越靠前。
参照图3,可选地,所述根据WNGO算法对所述选子服务进行全局搜索,并生成第一最优服务集,具体包括:
S310、生成新的猎物推荐位置,具体公式如下:
其中,t是迭代计数器,T是最大迭代次数,γ表示猎物的位置半径;
S320、猎物位置更新,具体公式如下:
S330、判断猎物的j维位置变量是否更新完毕,更新完毕则计算北方苍鹰的第j维位置变量,具体计算如下:
其中,是的第j维位置变量,表示北方苍鹰在第一阶段新的第j维位置变量,Rd()为四舍五入取整函数,xi,j是北方苍鹰的第j维位置变量,Pi为第i个北方苍鹰的猎物的位置,pi,j是猎物的第j维位置变量,FPi为第i个北方苍鹰的猎物的位置的目标函数值,Fi为第i个北方苍鹰位置的目标函数值,r是区间[0,1]的随机数,I是取值为1或2的随机数,参数r和I是随机数,用于产生在搜索和更新行为中的随机性;
S340、判断北方苍鹰的j维位置变量是否更新完毕,没有则迭代进行北方苍鹰的j维位置变量位置更新,更新完毕则计算北方苍鹰的位置,即是得到第一最优服务集,具体计算公式如下:
其中,WNGO算法将猎物的位置X分成两部分,一是利用WOA算法生成的猎物位置,二是避免算法陷入局部最优的猎物位置;北方苍鹰的位置与猎物位置相对应,Pi~Xi,i=1,2,…,N,j=1,2,…,Z;位置均为CSS的整数编码位置。
具体的,通过WNGO算法对候选服务集的候选子服务的整数编码数值进行确定,从而确定相应的候选子服务,在通过WNGO算法进行迭代更新,不断生成新的整数编码数值,最后生成全局搜索阶段的候选子服务组合,根据全局搜索阶段的候选子服务组合生成相应的相似服务集,通过相似编码进行相似服务集编码后最终生成每个候选子服务的相似服务集。
参照图3,S400、根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集。
其中,在北方苍鹰攻击猎物后,猎物会试图逃跑;因此,在尾随和追赶的过程中,北方苍鹰继续追赶猎物,由于北方苍鹰的高速度,它们几乎可以在任何情况下追赶猎物,并最终猎获;对这种行为的模拟增加了算法对搜索空间的局部搜索的开发能力;提出的WNGO算法中,第二阶段的狩猎分为两种情况:第一种是当相似服务集为空集时,局部搜索则仍在CSS中进行;第二种情况是当相似服务集不为空集时,局部搜索则是在相似服务集中进行。
具体的,通过WNGO算法生成第一最优服务集以及相似服务集后,判断相似服务集是否为空集,部位空集则对相似服务集进行局部搜索,生成第二最优服务集,相似服务集为空集则在候选服务集的候选子服务中进行局部搜索生成第二最优服务集。
参照图3,可选地,所述根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集,具体包括:
S410、若所述相似服务集为空集,则对所述候选子服务进行局部搜索,并对所述局部搜索进行迭代更新,具体计算公式如下:
其中,Xi为第i个北方苍鹰的位置,为第i个北方苍鹰在第二阶段新的第j维位置变量,为第i个北方苍鹰第二阶段新的位置,为的目标函数值,R1表示狩猎活动接近于一个半径为R1的攻击位置,t是迭代计数器,T是最大迭代次数,r是区间[0,1]的随机数,Rd()为四舍五入取整函数;
S420、若所述相似服务集不为空集,则对所述相似服务集进行局部搜索,并对所述局部搜索进行迭代更新,生成所述第二最优服务集,具体计算公式如下:
具体的,生成的相似服务集不为空集时,根据WNGO算法公式对相似服务集进行局部搜索,搜索迭代结束后生成第二最优服务集;生成的相似服务集为空集时,根据WNGO算法公式对候选服务集的候选子服务再次进行局部搜索,搜索迭代结束后生成第二最优服务集。
S500、根据所述第一最优服务集和所述第二最优服务集确定第三最优服务集,并进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集。
可选地,所述进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集,具体包括:
S510、若当前迭代次数小于预设迭代次数,当前迭代次数增加一次,继续进行迭代运算;
S520、若当前迭代次数大于或等于所述预设迭代次数,根据不同迭代次数的所述第三最优服务集确定所述第四最优服务集。
其中,第三最优服务集为第一最优服务集和第二最优服务集确定的较佳服务集,包括比较运算和卷积运算等运算方式确定第三最优服务集,具体运算方式和预设迭代次数根据实际需要确定,在此不做限定。
具体的,通过对第一最优服务集和所述第二最优服务集进行比较运算得到第三最优服务集,判断当前的迭代次数是否等于预设的迭代次数,不等于则返回重新在候选服务集的候选子服务中进行全局搜索,以及在相似服务集和候选子服务中进行局部搜索,生成不同迭代次数下的第三最优服务集,迭代次数等于预设的迭代次数后,根据不同迭代次数的第三最优服务集选取最佳的最优服务集,得到第四最优服务集。
参照图4-13,可选地,所述方法还包括对所述WNGO算法性能验证和所述相似整数编码有效性验证的步骤,具体包括:
S600、通过实验验证所述WNGO算法在不同复杂度的任务下的性能。
其中,实验中其他服务组合一样使用随机生成数据集,并假设在一个任务的整个优化周期中BCS的QoS属性值是固定不变的,每个BCS的QoS属性值是随机产生的,包括时间(time)、成本损耗(cost)、可靠性(reliability)和可用性(availability),其中time∈(0,10),cost∈(0,10),reliability∈[0,1],availability∈[0,1]。分别选用遗传算法(Genetic Algorithm,GA)、粒子群优化算法(Particle Swarm Optimization,PSO)、WOA、NGO和金豺优化(Golden jackal optimization,GJO)来作为实验对比算法。
具体的,参照图5,复杂度属于2到10的各算法的性能实验对比图,从图中可以看出在迭代次数超过400后服务质量值几乎都趋于平稳,WNGO算法的性能比其他算法的性能都高;参照图6,复杂度属于10到20的各算法的性能实验对比图,参照图7,复杂度属于20到30的各算法的性能实验对比图,WNGO算法的性能比其他算法的性能都高,并在迭代次数超过400后服务质量值几乎都趋于平稳;参照图8,复杂度属于30到40的各算法的性能实验对比图,WNGO算法处理的服务质量值在迭代次数属于200-600时趋于平稳,在迭代次数超过600时服务质量值快速增长,而其他算法的服务质量值几乎趋于稳定。经验证GA存在容易陷入了局部最优,优化效率低,对复杂任务兼容性差等缺点;虽然在实验对比图中PSO在低任务复杂度情况下的效果比GA效果好,在高复杂度任务场景下优化性能基本一致,
表1WNGO与其他算法优化性能比较。
但从表1可以看出GA的综合性能比PSO的更佳。GJO算法的跳出局部最优的能力、兼容性优于GA和PSO算法,但优化的效率(收敛速度)还有待进一步提高。与GA、PSO、NGO和GJO比较,WOA的优化效率是最高的,迭代200次后在所有任务复杂度下都能实现收敛,但WOA的局部开发能力还有待进一步加强。NGO各种场景下跳出局部最优的能力都是最强的,但优化效率还有有待进一步提高。WNGO同时拥有WOA和NGO的优点,综合实验对比图和表1数据可知WNGO的综合性能是所有对比算法中最优的,在所有任务复杂度下迭代500次都能实现很好的收敛。在不同任务复杂度下,WNGO比WOA优化性能提升了25.8%,17.2%,17.6%,10.5%;比NGO提升了16.5%,11.4%,8.8%,5,4%。
S700、通过实验验证所述WNGO算法在不同服务类型比例下的性能。
其中,本实验对服务库中的ACS比例进行调整,目的是为了进一步了解WNGO在不同任务复杂度下的性能,验证算法对抽象事件ACS的处理能力;每个A类ACS由ρ(ρ∈[2,5])个BCS构成,每个B类ACS则是由ρ个BCS或A类ACS构成。
具体的,参照图9,服务类型比例为1:0:0下的算法性能实验对比图,即是只含BSC类型任务的算法性能实验对比图;参照图10,服务类型比例为3:2:0下的算法性能实验对比图,即是只含BSC与A类ACS,且比例为3:2;参照图11,服务类型比例为3:1:1下的算法性能实验对比图,即是三种类型服务BSC、A类ACS与B类ACS均包含;当ACS的结构复杂度增加时,对优化算法的影响并不明显,说明所有优化算法都具处理复杂抽象事件的能力,图9和图11数据现实WNGO都较快实现收敛,图10中收敛速度比较慢,但WNGO对处理复杂服务的适应性是最好的。
S800、通过实验验证所述WNGO算法在添加和删除候选子服务时的性能。
具体的,参照图12,WNGO算法在添加和删除候选子服务时的性能实验示意图,从图中的实验数据可以验证WNGO在添加和删除服务的情况下仍能稳定获取最佳的服务组合,获取的服务质量值趋于平稳,且收敛的速度与候选服务集的规模没有明显的关系。
S900、通过实验验证所述相似整数编码的有效性。
具体的,参照图13,相似整数编码的有效性的实验示意图,将WNGO,NGO,WOA使用相似编码和未使用相似编码的优化结果进行比较。使用相似编码后最终的优化结果都明显获得提升。其中,WOA提升的效果最明显,NGO算法的效果仅次于WOA,WNGO效果最差。这一结果说明WOA局部搜索能力是最差的,但收敛速度快;NGO的局部搜索能力比较强,但收敛速度慢。WNGO则结合了WOA和NGO的优点,使用相似编码和未使用相似编码的优化结果基本契合,说明WNGO本身就具有很强的局部搜索能力,使用相似编码后局部搜索能力获得进一步提升。
在一个具体的实施例中,定义可接受解为优化精度Pr≥85%的服务组合,优化精度即当前最优组合与全局最优组合QoS的比值。为了避免实验的偶然性,每个算法都重复进行了10次实验,实验结果如表2和3所示。表2显示的是优化精度为0.85的实验数据,表中只有WNGO、WOA和NGO能够在有限的迭代次数中稳定地找出可接受的解。虽然WNGO每轮迭代所需的时间是最长的,但WNGO在迭代次数是最少的。WNGO在优化过程的总耗时与WOA和NGO差距并不明显,WNGO还显现出了较强的稳定性,WOA和NGO迭代次数和总耗时都出现飙升的现象。表3显示的是优化精度为0.9的实验数据,表中只有WNGO仍能稳定找出可接受解。随着优化精度的提高,GA和PSO在10次实验中均没能求得可接受解,WOA和GJO也只有一半的概率求得可接受解。虽然NGO求得可接受解的概率高达90%,但比较高的概率需要花费大量时间。此外,随着优化精度的提升,WNGO的迭代次数和总耗时并没有明显的变化。
表2获取可接受解的时间分析,Pr=0.85。
其中,*(/)表示Iterations_Max=10000时仍未取得可接受解,即Pr<0.85。
表3获取可接受解的时间分析,Pr=0.9。
其中,*(/)表示Iterations_Max=10000时仍未取得可接受解,即Pr<0.9。
实施本发明实施例包括以下有益效果:本实施例中的一种基于WNGO算法的相似整数编码方法包括:获取用户终端的服务请求,根据所述服务请求生成任务集,将所述任务集分解为多个子任务;根据所述多个子任务构建每一个子任务相对应的候选服务集,通过整数编码对所述候选服务集中的候选子服务进行编码;根据WNGO算法对所述选子服务进行全局搜索,并生成第一最优服务集,根据所述第一最优服务集和相似编码生成相对应的相似服务集;根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集;根据所述第一最优服务集和所述第二最优服务集确定第三最优服务集,并进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集。通过WNGO算法和相似编码方法对服务组合的优化进行处理,提高了编码过程的收敛速度和稳定性,增强了局部搜索的能力;通过实验的验证了WNGO算法在不同复杂度下皆有良好的算法性能,在不同服务比例下能获取最佳服务组合和具有良好的收敛性;通过实验的验证了在不同算法中添加相似编码具有更好的有效性。
如图14所示,本发明实施例还提供了一种基于WNGO算法和相似整数编码的服务组合优化系统,包括:
第一模块,用于获取用户终端的服务请求,根据所述服务请求生成任务集,将所述任务集分解为多个子任务;
第二模块,用于根据所述多个子任务构建每一个子任务相对应的候选服务集,通过整数编码对所述候选服务集中的候选子服务进行编码;
第三模块,用于根据WNGO算法对所述选子服务进行全局搜索,并生成第一最优服务集,根据所述第一最优服务集和相似编码生成相对应的相似服务集;
第四模块,用于根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集;
第五模块,用于根据所述第一最优服务集和所述第二最优服务集确定第三最优服务集,并进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集。
可见,上述方法实施例中的内容均适用于本系统实施例中,本系统实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
如图15所示,本发明实施例还提供了一种基于WNGO算法和相似整数编码的服务组合优化装置,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现上述方法实施例所述方法步骤。
可见,上述方法实施例中的内容均适用于本装置实施例中,本装置实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
此外,本申请实施例还公开了一种计算机程序产品或计算机程序,计算机程序产品或计算机程序存储在计算机可读存介质中。计算机设备的处理器可以从计算机可读存储介质读取该计算机程序,处理器执行该计算机程序,使得该计算机设备执行上述的方法。同样地,上述方法实施例中的内容均适用于本存储介质实施例中,本存储介质实施例所具体实现的功能与上述方法实施例相同,并且达到的有益效果与上述方法实施例所达到的有益效果也相同。
可以理解的是,上文中所公开方法中的全部或某些步骤、系统可以被实施为软件、固件、硬件及其适当的组合。某些物理组件或所有物理组件可以被实施为由处理器,如中央处理器、数字信号处理器或微处理器执行的软件,或者被实施为硬件,或者被实施为集成电路,如专用集成电路。这样的软件可以分布在计算机可读介质上,计算机可读介质可以包括计算机存储介质(或非暂时性介质)和通信介质(或暂时性介质)。如本领域普通技术人员公知的,术语计算机存储介质包括在用于存储信息(诸如计算机可读指令、数据结构、程序模块或其他数据)的任何方法或技术中实施的易失性和非易失性、可移除和不可移除介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储器技术、CD-ROM、数字多功能盘(DVD)或其他光盘存储、磁盒、磁带、磁盘存储或其他磁存储装置、或者可以用于存储期望的信息并且可以被计算机访问的任何其他的介质。此外,本领域普通技术人员公知的是,通信介质通常包含计算机可读指令、数据结构、程序模块或者诸如载波或其他传输机制之类的调制数据信号中的其他数据,并且可包括任何信息递送介质。
上面结合附图对本发明实施例作了详细说明,但是本发明不限于上述实施例,在技术领域普通技术人员所具备的知识范围内,还可以在不脱离本发明宗旨的前提下作出各种变化。
Claims (10)
1.一种基于WNGO算法和相似整数编码的服务组合优化方法,其特征在于,包括:
获取用户终端的服务请求,根据所述服务请求生成任务集,将所述任务集分解为多个子任务;
根据所述多个子任务构建每一个子任务相对应的候选服务集,通过整数编码对所述候选服务集中的候选子服务进行编码;
根据WNGO算法对所述候选子服务进行全局搜索,并生成第一最优服务集,根据所述第一最优服务集和相似编码生成相对应的相似服务集;
根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集;
根据所述第一最优服务集和所述第二最优服务集确定第三最优服务集,并进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集。
2.根据权利要求1所述的方法,其特征在于,所述根据所述服务请求生成任务集,将所述任务集分解为多个子任务,具体包括:
根据所述服务请求确定相应的服务集、服务质量偏好集和服务请求周期;
根据所述服务集、服务质量偏好集和服务请求周期生成所述任务集;
将所述任务集的所述服务集分解为多个子任务。
3.根据权利要求1所述的方法,其特征在于,所述通过整数编码对所述候选服务集中的候选子服务进行编码,具体包括:
将每一个候选服务集的候选子服务进行计数得到每一个候选服务集的搜索上限;
在顺序结构工作流下对各候选服务集进行排列,得到一串编码组合;其中,单个码的变换范围由相对应的候选服务集的候选子服务个数所决定,数值由一至搜索上限且为整数。
4.根据权利要求1所述的方法,其特征在于,所述根据WNGO算法对所述候选子服务进行全局搜索,并生成第一最优服务集,具体包括:
生成新的猎物推荐位置,具体公式如下:
其中,t是迭代计数器,T是最大迭代次数,γ表示猎物的位置半径;
猎物位置更新,具体公式如下:
判断猎物的j维位置变量是否更新完毕,更新完毕则计算北方苍鹰的第j维位置变量,具体计算如下:
其中,是的第j维位置变量,表示北方苍鹰在第一阶段新的第j维位置变量,Rd()为四舍五入取整函数,xi,j是北方苍鹰的第j维位置变量,Pi为第i个北方苍鹰的猎物的位置,pi,j是猎物的第j维位置变量,FPi为第i个北方苍鹰的猎物的位置的目标函数值,Fi为第i个北方苍鹰位置的目标函数值,r是区间[0,1]的随机数,I是取值为1或2的随机数,参数r和I是随机数,用于产生在搜索和更新行为中的随机性;
判断北方苍鹰的j维位置变量是否更新完毕,没有则迭代进行北方苍鹰的j维位置变量位置更新,更新完毕则计算北方苍鹰的位置,即是得到第一最优服务集,具体计算公式如下:
5.根据权利要求1所述的方法,其特征在于,所述根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集,具体包括:
若所述相似服务集为空集,则对所述候选子服务进行局部搜索,并对所述局部搜索进行迭代更新,具体计算公式如下:
其中,Xi为第i个北方苍鹰的位置,为第i个北方苍鹰在第二阶段新的第j维位置变量,为第i个北方苍鹰第二阶段新的位置,为的目标函数值,R1表示狩猎活动接近于一个半径为R1的攻击位置,t是迭代计数器,T是最大迭代次数,r是区间[0,1]的随机数,Rd()为四舍五入取整函数;
若所述相似服务集不为空集,则对所述相似服务集进行局部搜索,并对所述局部搜索进行迭代更新,生成所述第二最优服务集,具体计算公式如下:
6.根据权利要求1所述的方法,其特征在于,所述进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集,具体包括:
若当前迭代次数小于预设迭代次数,当前迭代次数增加一次,继续进行迭代运算;
若当前迭代次数大于或等于所述预设迭代次数,根据不同迭代次数的所述第三最优服务集确定所述第四最优服务集。
7.根据权利要求1-6任一项所述的方法,其特征在于,所述方法还包括对所述WNGO算法性能验证和所述相似整数编码有效性验证的步骤,具体包括:
通过实验验证所述WNGO算法在不同复杂度任务下的性能;
通过实验验证所述WNGO算法在不同服务类型比例下的性能;
通过实验验证所述WNGO算法在添加和删除候选子服务时的性能;
通过实验验证所述相似整数编码的有效性。
8.一种基于WNGO算法和相似整数编码的服务组合优化系统,其特征在于,包括:
第一模块,用于获取用户终端的服务请求,根据所述服务请求生成任务集,将所述任务集分解为多个子任务;
第二模块,用于根据所述多个子任务构建每一个子任务相对应的候选服务集,通过整数编码对所述候选服务集中的候选子服务进行编码;
第三模块,用于根据WNGO算法对所述选子服务进行全局搜索,并生成第一最优服务集,根据所述第一最优服务集和相似编码生成相对应的相似服务集;
第四模块,用于根据所述WNGO算法对所述相似服务集或所述候选子服务进行局部搜索,并生成第二最优服务集;
第五模块,用于根据所述第一最优服务集和所述第二最优服务集确定第三最优服务集,并进行WNGO算法迭代,根据所述WNGO算法迭代确定第四最优服务集。
9.一种基于WNGO算法和相似整数编码的服务组合优化装置,其特征在于,包括:
至少一个处理器;
至少一个存储器,用于存储至少一个程序;
当所述至少一个程序被所述至少一个处理器执行,使得所述至少一个处理器实现如权利要求1-7任一项所述的方法。
10.一种计算机可读存储介质,其中存储有处理器可执行的程序,其特征在于,所述处理器可执行的程序在由处理器执行时用于执行如权利要求1-7任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211554951.4A CN116089063B (zh) | 2022-12-06 | 2022-12-06 | 基于利用鲸鱼优化算法指导猎物生成的北方苍鹰优化wngo算法和相似整数编码的服务组合优化方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202211554951.4A CN116089063B (zh) | 2022-12-06 | 2022-12-06 | 基于利用鲸鱼优化算法指导猎物生成的北方苍鹰优化wngo算法和相似整数编码的服务组合优化方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN116089063A true CN116089063A (zh) | 2023-05-09 |
CN116089063B CN116089063B (zh) | 2023-10-03 |
Family
ID=86185832
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202211554951.4A Active CN116089063B (zh) | 2022-12-06 | 2022-12-06 | 基于利用鲸鱼优化算法指导猎物生成的北方苍鹰优化wngo算法和相似整数编码的服务组合优化方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116089063B (zh) |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US3478320A (en) * | 1964-05-04 | 1969-11-11 | Gen Electric | Data processing unit for providing command selection by external apparatus |
CN111709511A (zh) * | 2020-05-07 | 2020-09-25 | 西安理工大学 | 一种基于随机无迹Sigma点变异的哈里斯鹰优化算法 |
CN113435108B (zh) * | 2021-06-02 | 2024-02-02 | 中国人民解放军空军工程大学 | 一种基于改进的鲸鱼优化算法的战场目标分群方法 |
-
2022
- 2022-12-06 CN CN202211554951.4A patent/CN116089063B/zh active Active
Also Published As
Publication number | Publication date |
---|---|
CN116089063B (zh) | 2023-10-03 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN107402955B (zh) | 确定地理围栏的索引网格的方法和装置 | |
Wang et al. | Integer-ordered simulation optimization using R-SPLINE: Retrospective search with piecewise-linear interpolation and neighborhood enumeration | |
CN110728317A (zh) | 决策树模型的训练方法、系统、存储介质及预测方法 | |
CN111738628A (zh) | 一种风险群组识别方法及装置 | |
KR20130029790A (ko) | 고차원 층화 샘플링 | |
Chattopadhyay et al. | A fast and scalable mechanism for web service composition | |
US20220366315A1 (en) | Feature selection for model training | |
JP7542793B2 (ja) | 人工知能推論モデルを軽量化する方法およびシステム | |
CN114647790A (zh) | 应用于行为意图分析的大数据挖掘方法及云端ai服务系统 | |
US9111213B2 (en) | Method for constructing a tree of linear classifiers to predict a quantitative variable | |
CN116089063B (zh) | 基于利用鲸鱼优化算法指导猎物生成的北方苍鹰优化wngo算法和相似整数编码的服务组合优化方法 | |
CN113190730A (zh) | 一种区块链地址的分类方法及装置 | |
CN113326343A (zh) | 基于多级网格和文件索引的路网数据存储方法及系统 | |
CN114757244A (zh) | 模型训练方法、装置、存储介质及设备 | |
CN116150355A (zh) | 类别划分方法、文本分类方法及装置、电子设备、介质 | |
CN115933664A (zh) | 物流机器人的调度方法以及系统 | |
CN114691630A (zh) | 一种智慧供应链大数据共享方法及系统 | |
CN111882421B (zh) | 一种信息处理方法、风控方法、装置、设备及存储介质 | |
Lagos et al. | Branch-and-price for probabilistic vehicle routing | |
Huang et al. | Solving service selection problem based on a novel multi-objective artificial bees colony algorithm | |
CN111709593B (zh) | 一种基于弱空间约束的空间资源优化分配方法 | |
CN118093633B (zh) | 高维向量查询方法、装置、计算机设备及可读存储介质 | |
CN114490095B (zh) | 请求结果的确定方法和装置、存储介质及电子装置 | |
CN114676675B (zh) | 数据处理方法、装置、计算机设备和存储介质 | |
KR20220151548A (ko) | 객체들을 순위 지정하기 위한 시스템 및 방법 |
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 | ||
GR01 | Patent grant | ||
GR01 | Patent grant |