CN103226611B - 一种基于禁忌搜索的组合主体服务选择方法 - Google Patents
一种基于禁忌搜索的组合主体服务选择方法 Download PDFInfo
- Publication number
- CN103226611B CN103226611B CN201310164877.XA CN201310164877A CN103226611B CN 103226611 B CN103226611 B CN 103226611B CN 201310164877 A CN201310164877 A CN 201310164877A CN 103226611 B CN103226611 B CN 103226611B
- Authority
- CN
- China
- Prior art keywords
- service
- solution
- agent service
- now
- combined body
- 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.)
- Active
Links
Landscapes
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明针对面向非功能属性的组合主体服务选择问题,公开了一种基于禁忌搜索的组合主体服务选择方法。本发明由初始解构造过程和禁忌搜索过程组成。利用禁忌搜索局部搜索能力强的特点,从服务质量角度迭代寻找满足某一服务质量属性约束,且总体服务质量最大的一个组合主体服务。采用本发明的方法,可快速搜索到满足要求的组合主体服务,具备收敛快、性能优等特点,并且克服穷尽方法复杂度高、遗传算法陷入早熟、陷入局部最优等问题。
Description
技术领域
本发明属于自主计算和服务技术领域,特别是一种基于禁忌搜索的组合主体服务选择方法。
背景技术
自主计算技术就是为了解决软件复杂性危机而提出的一门新兴的研究课题。随着主体(Agent)和多主体(Multi-Agent)系统越来越受到分布式人工智能领域研究者的广泛关注,基于主体的自主计算也逐渐成为研究热点。这些研究以主体充当自主单元,重点关注如何利用主体和多主体系统为用户提供各种有效和高效的服务(即,主体服务)。
在以往大多数研究是根据功能性属性(如,主体服务名、服务输入/输出参数等)和服务质量(QoS)非功能属性(如,代价、时间、可靠性等)从多个主体服务中选择或匹配一个主体服务。随着主体服务数量的剧增,往往存在提供同一功能服务,但其服务质量大不相同的情况,因此针对非功能属性的主体服务选择至关重要。此外,当多个主体服务通过组合形成满足某一特定功能时,如何根据用户的QoS需求,选择满足非功能属性约束的每一个主体服务且整个组合后的主体服务的服务质量必须保证,已经成为主体服务匹配或选择中的一个难点和热点问题。
由于不同的主体服务会组合出成千上万的具有相同功能与不同QoS特征的组合主体服务,也就是存在着很多不同的组合方案。假如,某个组合主体服务由10个任务(主体服务的功能)按顺序组合的方式组成,假设每个任务平均存在12个具有相同主体服务功能与不同QoS属性值的主体服务与之对应,在这种情况下的组合方案数量为1210,约620亿个组合,可见组合数量相当大。因此,如何在海量的组合方案中,快速灵活地位用户选择出满足用户QoS需求的组合主体服务是主体服务选择或匹配技术发展的主要目标之一,从数学上来讲属于组合优化范畴。
解决上述问题一般的方法分为两类:一类是穷尽方法,即通过穷尽将所有的候选方案按一定的规则进行计算,并从中选出最理想的方案,如Zeng提出的方法(L.Z.Zeng,B.Benatallah,M.Dumas,etal.“QualitydrivenWebservicescomposition”,Proc.the12thInternationalConferenceWorldWideWeb,Budapest,Hungary,2003,pp.411-421.)。这种方法可以找到最优的解决方案,但是复杂度太高,选择时间长,存在计算局限性。第二类是近似方法,利用一些智能优化方法(如,遗传算法等)无限逼近理想方案,从而得出满足要求的但不一定是最理想的方案,例如,Canfora(G.Canfora,M.D.Penta,R.Esposito,etal.“AlightweightapproachforQoS-awareservicecomposition”.Proc.the2ndInternatianlConferenceonServiceOrientedComputing,NewYork,USA,2004,pp.36-47.)和张成文(张成文,苏森,陈俊亮.基于遗传算法的QoS感知的Web服务选择.计算机学报,2006,29(7):1029-1037)的方法。上述两个文献中提到的方法都是采用遗传算法解决组合服务选择问题,其中Canfora采用一维染色体编码方式,基因位表示组合服务中的任务,但部分通过一次编码来表示所有组合路径。张成文提出一种用于QoS感知的Web服务选择的遗传算法,采用关系矩阵编码方式克服了一维编码方式表示的局限性。
但总体来讲,现有组合服务选择方法存在以下两个问题:1)利用穷尽方法进行组合主体服务选择复杂度往往太高,计算时间会随着主体服务的数量而呈指数级剧增;2)大多文献利用遗传算法进行组合主体服务选择,由于遗传算法本身的缺陷而往往会陷入早熟,即算法对新空间的探索能力是有限的,也容易收敛到局部最优解。
发明内容
本发明的目的在于提供一种基于禁忌搜索的组合主体服务选择方法。
实现本发明目的的技术方案为:一种基于禁忌搜索的组合主体服务选择方法,包括初始解构造过程和禁忌搜索过程,所述的初始解构造过程包括以下步骤:
步骤A、对于每个任务,在其主体服务集中选择代价属性最小的一个主体服务;
所述的在其主体服务集中选择代价属性最小的一个主体服务,是根据具体问题进行扩充和修改,如果是时间约束,则选择时间属性最小的主体服务,如果是可靠性和可维护性约束,则可选择可靠性或可维护性属性最大的主体服务。
步骤B、将这些主体服务按照任务执行顺序组合一个组合主体服务,即形成一个组合主体服务的初始解csini;
所述的禁忌搜索过程包括以下步骤:
步骤1、设置csbest=csnow=csini,其中csbest表示到目前为止服务质量最大的组合主体服务,即最优解,csnow表示当前组合主体服务,即当前解,迭代步数设置为0;
步骤2、判断禁忌搜索迭代步数是否超过设定的最大迭代步数,如果不超过设定的最大迭代步数,则执行步骤3,否则执行步骤13;
步骤3、用邻域解集构造过程产生当前解csnow的邻域解集N(csnow);具体包括以下步骤:
步骤3-1、在当前解csnow中随机选择两个任务所对应的两个主体服务,假设为sui和svj;上述两个任务假设为第u个任务和第v个任务;
步骤3-2、假设第u个任务和第v个任务所对应的主体服务集分别为Su和Sv,其主体服务数量分别为m1和m2,在第u个任务所对应的主体服务集Su中分别用除主体服务sui之外的m1-1个主体服务替换当前解csnow中的主体服务sui,形成m1-1个新组合主体服务;
步骤3-3、在第v个任务所对应的主体服务集Sv中分别用除主体服务svj之外的m2-1个主体服务替换当前解csnow中的主体服务svj,形成m2-1个新组合主体服务;
步骤3-4、将步骤3-2中产生的m1-1个新组合主体服务和步骤3-3中产生的m2-1个新组合主体服务进行合并,形成当前解csnow的邻域解集N(csnow)。
步骤4、在当前解csnow的邻域解集N(csnow)中选择服务质量最大的一个组合主体服务csmax,作为下一次迭代的当前解;
步骤5、判断禁忌搜索是否满足特赦规则,如果不满足特赦规则,则执行步骤6~步骤8,否则执行步骤9~步骤10;所述特赦规则为:如果当前邻域解集中的某个禁忌候选解性能优于csbest,则将此禁忌候选解作为下一次迭代的当前解csnow,同时更新最优解csbest=csnow;
步骤6、从当前解邻域解集N(csnow)中选择不在禁忌表中的服务质量最大的一个组合主体服务,即非禁忌最优解csnext;
步骤7、判断非禁忌最优解和最优解的服务质量大小,如果Q(csnext)>Q(csbest),则csbest=csnext,其中Q(csnext)和Q(csbest)分别表示组合主体服务csbest和csnext的服务质量,否则执行下一步;
步骤8、将非禁忌最优解csnext加入到禁忌表中,即禁忌csnext,之后执行步骤11;
步骤9、设置csbest=csnext=csmax;
步骤10、将非禁忌最优解csnext从禁忌表中删除,即解禁csnext;
步骤11、更新当前解csnow=csnext;
步骤12、将迭代步数加1,之后返回步骤2;
步骤13、禁忌搜索过程结束,该过程的输出就是最终满足代价质量要求的且服务质量最大的一个组合主体服务。
本发明与现有技术相比,其显著优点为:1)选择时间的效率与遗传算法相当,但大大优于穷尽方法;2)邻域解构造过程克服了搜索区域扩大、计算时间增加等现有方法的缺点,并确保最优解满足某些QoS属性约束;3)采取灵活的策略,使得本发明具有收敛速度快和实时性好的特点;4)利用禁忌搜索局部搜索能力强的特点,获得的最优解的质量要优于遗传算法的质量。
附图说明
图1是本发明对组合主体服务定义的示例图。
图2是本发明对组合主体服务的实例图。
图3是本发明基于禁忌搜索的组合主体服务选择方法的流程图。
图4是本发明基于禁忌搜索的组合主体服务选择方法中邻域解构造的流程图。
具体实施方式
本发明公开了一种基于禁忌搜索的组合主体服务选择方法,采用本发明的方法可以面向主体服务的非功能属性,利用禁忌搜索局部搜索能力强的特点,从服务质量角度迭代寻找满足某一服务质量属性约束,且总体服务质量最大的一个组合主体服务。
本发明包括两个过程:初始解构造过程和禁忌搜索过程。
(1)初始解构造过程包括以下步骤:
步骤1.1.1:对于每个任务,在其主体服务集中选择代价属性最小的一个主体服务;
需要强调的是,步骤1.1.1中所述的在其主体服务集中选择代价属性最小的一个主体服务,可以根据具体问题进行扩充和修改,如:如果是时间约束,可选择时间属性最小的主体服务,如果是可靠性和可维护性约束,则可选择可靠性或可维护性属性最大的主体服务;
步骤1.1.2:将这些主体服务按照任务执行顺序组合一个组合主体服务,即形成一个组合主体服务的初始解csini;
(2)禁忌搜索过程包括以下步骤:
步骤1.2.1:设置csbest=csnow=csini,其中csbest表示到目前为止服务质量最大的组合主体服务,即最优解,csnow表示当前组合主体服务,即当前解,迭代步数设置为0;
步骤1.2.2:如果禁忌搜索迭代步数不超过设定的最大迭代步数,则重复步骤1.2.3~1.2.12,否则进入步骤1.2.13;
步骤1.2.3:用邻域解集构造过程产生当前解csnow的邻域解集N(csnow),其中,邻域解构造过程如步骤1.2.3.1~1.2.3.4:
步骤1.2.3.1:在当前解csnow中随机选择两个任务(假设为第u个任务和第v个任务)所对应的两个主体服务,假设为sui和svj;
步骤1.2.3.2:假设第u个任务和第v个任务所对应的主体服务集分别为Su和Sv,其主体服务数量分别为m1和m2,在第u个任务所对应的主体服务集Su中分别用除主体服务sui之外的m1-1个主体服务替换当前解csnow中的主体服务sui,形成m1-1个新组合主体服务;
步骤1.2.3.3:在第v个任务所对应的主体服务集Sv中分别用除主体服务svj之外的m2-1个主体服务替换当前解csnow中的主体服务svj,形成m2-1个新组合主体服务;
步骤1.2.3.4:将步骤1.2.3.2中产生的m1-1个新组合主体服务和步骤1.2.3.3中产生的m2-1个新组合主体服务进行合并,形成当前解csnow的邻域解集N(csnow);
步骤1.2.4:当前解csnow的邻域解集N(csnow)中选择服务质量最大的一个组合主体服务csmax,作为下一次迭代的当前解;
步骤1.2.5:如果不满足特赦规则,则执行步骤1.2.6~1.2.8,否则执行步骤1.2.9~1.2.10;本方法设定的特赦规则为:如果当前邻域解集中的某个禁忌候选解性能优于csbest,则将此禁忌候选解作为下一次迭代的当前解csnow,同时更新csbest;
步骤1.2.6:从当前解邻域解集N(csnow)中选择不在禁忌表中的服务质量最大的一个组合主体服务,即非禁忌最优解csnext;
步骤1.2.7:如果Q(csnext)>Q(csbest),则csbest=csnext,其中Q(csnext)和Q(csbest)分别表示组合主体服务csbest和csnext的服务质量;
步骤1.2.8:将非禁忌最优解csnext加入到禁忌表中,即禁忌csnext;
步骤1.2.9:设置csbest=csnext=csmax;
步骤1.2.10:将非禁忌最优解csnext从禁忌表中删除,即解禁csnext;
步骤1.2.11:更新当前解csnow=csnext;
步骤1.2.12:迭代步数加1;
步骤1.2.13:至此,禁忌搜索过程结束,该过程的输出就是最终满足代价质量要求的、且服务质量最大的一个组合主体服务。
综上所述,本发明针对已被证明为NP难问题的非功能属性的组合主体服务选择问题,提供了一种基于禁忌搜索的组合主体服务选择方法。
下面结合附图对本发明作进一步详细描述,为了便于说明,给出如下定义和描述。
定义1:主体服务QoS属性模型。主体服务QoS属性模型(即,非功能属性模型)是一个四元组,如式(1)所示:
qos_s=(time,cost,reliability,maintainability)(1)
其中:
(1)主体服务时间(time)是指发出服务请求到收到服务结果所经历的时间,包括服务处理时间和服务延迟时间;
(2)主体服务代价(cost)是指用户要向主体服务提供者所支付的费用;
(3)主体服务可靠性(reliability)是指主体服务能正确提供它所注册服务的概率,是其可靠程度的度量。可靠性是专门用于测量有关主体服务的软、硬件配置以及主体服务请求者和提供者之间的网络连接情况的参数;
(4)主体服务可维护性(maintainability)是指主体服务发生异常时正确维护的概率。
定义2:主体服务的QoS。主体服务的QoS是指具有相同功能的主体服务的总体服务质量,一般通过式(2)和式(3)的归一化处理后,通过式(4)计算而得。
其中,Q=(Qi,j,1≤i≤n,1≤j≤4)表示所有具有相同功能的n个主体服务的QoS属性矩阵,其中,Q的每一行Qi表示一个主体服务,每一列对应一项QoS属性值;Q'表示n个主体服务的QoS属性规格化矩阵,Q'i,j表示规划化矩阵中第i个主体服务的第j项QoS属性规格化值,表示第j项QoS属性值中的最大值,表示第j项QoS属性值中的最小值。
一般来说,主体的QoS属性分为两类,一类是逆向质量属性,即属性量值越大,服务质量越差,例如时间和代价;另一类是正向质量属性,即属性量值越大,说明服务质量越好,例如可靠性和可维护性。对于主体服务时间和代价(逆向质量属性),通过公式(2)进行规格化,对于服务的可靠性和可维护性(正向质量属性),通过公式(3)进行规格化。
其中,si表示提供相同功能的主体服务集S={s1,s2,…,sm}中的第i个主体服务,Q'i,j表示规划化矩阵中第i个主体服务si的第j项QoS属性规格化值,表示第j项QoS属性的权值,
定义3:组合主体服务。结合图1,组合主体服务cs是由来自不同的主体服务集(即,代表不同的任务)中的主体服务组合而成,即
cs=(s1,s2,...,sn)(5)
定义4:组合主体服务的QoS属性及总体QoS计算方法。一个组合主体服务的每个QoS属性和总体QoS计算方法如表1所示:
表1组合主体服务QoS属性及总体QoS计算方法
结合图2,本发明主要考虑顺序结构的情况,图2给出了由5个主体服务组合而成的一个组合主体服务,下面的例子也将结合图2进行阐述。
定义5:面向非功能属性的组合主体服务选择问题。给定针对组合主体服务的n个顺序任务(t1,t2,...,tn),每个任务对应一个提供相同功能、不同QoS非功能属性的主体服务集AS={as1,as2,…,asm}.假设Δ表示组合主体服务的某一QoS属性约束(本发明以代价为例)。面向非功能属性的组合主体服务选择问题的目标就是分别从每个主体服务集中选择一个主体服务组成组合主体服务cs,cs=(s1i,s2j,...,snk),1≤i,j,k≤m,并且满足:
C(cs)=C(s1i)+C(s2j)+...+C(snk)≤Δ(6)
qos(cs)=qos(s1i)+qos(s2j)+...+qos(snk)最大(7)
为了解决上述问题,结合图3,本发明公开了一种基于禁忌搜索的组合主体服务选择方法,该方法包括两个过程:初始解构造过程和禁忌搜索过程。
(1)初始解构造过程
初始解构造过程包括以下步骤:
步骤1.1.1:对于每个任务,在其主体服务集中选择代价属性最小的一个主体服务;
步骤1.1.2:将这些主体服务按照任务执行顺序组合一个组合主体服务,即形成一个组合主体服务的初始解csini。
为了便于说明,结合图2,给出一个实例。图2中包括5个任务,假设每个任务对应一个主体服务集,假设每个主体服务集都有5个提供相同功能、不同QoS属性的主体服务,每个主体服务的时间属性在[10,100]之间随机产生,代价属性在[50,100]之间随机产生,可靠性和可维护性属性在[0,1]之间随机产生。假设代价属性的约束Δ=360,每个属性的权值均为0.25。
5个任务25个主体服务的QoS非功能属性值如表2所示。
表2主体服务的QoS非功能属性值
经公式(2)和公式(3)进行归一化处理后,这些主体服务的QoS属性规格化矩阵如下表所示。其中,每个主体服务的QoS通过公式(4)计算而得,如最右侧一列所示。
表3主体服务的QoS属性规格化矩阵及QoS值
根据步骤1.1.1,选择每个主体服务集中代价最小的主体服务,即s11,s21,s33,s42,s52,组成初始解如下表所示:
表4初始解
组合主体服务 | 组合主体服务代价 | 总体QoS |
初始解 | (s11,s21,s33,s42,s52) | 293.132 | 3.163 |
(2)禁忌搜索过程
禁忌搜索过程包括以下步骤:
步骤1.2.1:设置csbest=csnow=csini,其中csbest表示到目前为止服务质量最大的组合主体服务,即最优解,csnow表示当前组合主体服务,即当前解,迭代步数设置为0;
步骤1.2.2:如果禁忌搜索迭代步数不超过设定的最大迭代步数,则重复步骤1.2.3~1.2.12,否则进入步骤1.2.13;
步骤1.2.3:用邻域解集构造过程产生当前解csnow的邻域解集N(csnow),其中,邻域解构造过程如步骤1.2.3.1~1.2.3.4:
步骤1.2.3.1:在当前解csnow中随机选择两个任务(假设为第u个任务和第v个任务)所对应的两个主体服务,假设为sui和svj;
步骤1.2.3.2:假设第u个任务和第v个任务所对应的主体服务集分别为Su和Sv,其主体服务数量分别为m1和m2,在第u个任务所对应的主体服务集Su中分别用除主体服务sui之外的m1-1个主体服务替换当前解csnow中的主体服务sui,形成m1-1个新组合主体服务;
步骤1.2.3.3:在第v个任务所对应的主体服务集Sv中分别用除主体服务svj之外的m2-1个主体服务替换当前解csnow中的主体服务svj,形成m2-1个新组合主体服务;
步骤1.2.3.4:将步骤1.2.3.2中产生的m1-1个新组合主体服务和步骤1.2.3.3中产生的m2-1个新组合主体服务进行合并,形成当前解csnow的邻域解集N(csnow);
步骤1.2.4:当前解csnow的邻域解集N(csnow)中选择服务质量最大的一个组合主体服务csmax,作为下一次迭代的当前解;
步骤1.2.5:如果不满足特赦规则,则执行步骤1.2.6~1.2.8,否则执行步骤1.2.9~1.2.10;本方法设定的特赦规则为:如果当前邻域解集中的某个禁忌候选解性能优于csbest,则将此禁忌候选解作为下一次迭代的当前解csnow,同时更新csbest;
步骤1.2.6:从当前解邻域解集N(csnow)中选择不在禁忌表中的服务质量最大的一个组合主体服务,即非禁忌最优解csnext;
步骤1.2.7:如果Q(csnext)>Q(csbest),则csbest=csnext,其中Q(csnext)和Q(csbest)分别表示组合主体服务csbest和csnext的服务质量;
步骤1.2.8:将非禁忌最优解csnext加入到禁忌表中,即禁忌csnext;
步骤1.2.9:设置csbest=csnext=csmax;
步骤1.2.10:将非禁忌最优解csnext从禁忌表中删除,即解禁csnext;
步骤1.2.11:更新当前解csnow=csnext;
步骤1.2.12:迭代步数加1;
步骤1.2.13:至此,禁忌搜索过程结束,该过程的输出就是最终满足代价质量要求的、且服务质量最大的一个组合主体服务。
假设某一次迭代过程后形成的当前解如下表所示:
表5当前解
组合主体服务 | 组合主体服务代价 | 总体QoS | |
当前解 | (s13,s21,s33,s42,s52) | 302.393 | 3.20375 |
结合图4的邻域解构造过程,假设随机选择任务2和任务4,则根据邻域解构造方法得到当前解的8个邻域解,如下表所示:
表6邻域解
组合主体服务 | 组合主体服务代价 | 总体QoS | |
邻域解1 | (s13,s22,s33,s42,s52) | 304.72 | 3.0105 |
邻域解2 | (s13,s23,s33,s42,s52) | 328.685 | 2.519 |
邻域解3 | (s13,s24,s33,s42,s52) | 321.995 | 2.478 |
邻域解4 | (s13,s25,s33,s42,s52) | 320.364 | 2.63025 |
邻域解5 | (s13,s21,s33,s41,s52) | 315.139 | 3.36875 |
邻域解6 | (s13,s21,s33,s43,s52) | 308.487 | 3.62125 |
邻域解7 | (s13,s21,s33,s44,s52) | 313.399 | 3.23225 |
邻域解8 | (s13,s21,s33,s45,s52) | 338.953 | 3.37225 |
结合实例,通过本发明的方法,得到满足代价约束(360)的总体QoS最大的一个组合服务(最终解)如下表所示:
表7最终解
组合主体服务 | 组合主体服务代价 | 总体QoS | |
最终解 | (s13,s21,s34,s43,s53) | 350.147 | 3.9355 |
为了说明本发明的有效性,结合实例,我们给出了用穷举法得到的最优解,如下表所示,可以看出,本发明得到的最终解很接近最优解。
表8穷举法最优解
组合主体服务 | 组合主体服务代价 | 总体QoS | |
穷举法最优解 | (s13,s21,s34,s43,s52) | 315.984 | 4.04225 |
由此可见,本发明达到了预期目的。
Claims (2)
1.一种基于禁忌搜索的组合主体服务选择方法,其特征在于,包括初始解构造过程和禁忌搜索过程,所述的初始解构造过程包括以下步骤:
步骤A、对于每个任务,在其主体服务集中选择代价属性最小的一个主体服务;
步骤B、将这些主体服务按照任务执行顺序组合一个组合主体服务,即形成一个组合主体服务的初始解csini;
所述的禁忌搜索过程包括以下步骤:
步骤1、设置csbest=csnow=csini,其中csbest表示到目前为止服务质量最大的组合主体服务,即最优解,csnow表示当前组合主体服务,即当前解,迭代步数设置为0;
步骤2、判断禁忌搜索迭代步数是否超过设定的最大迭代步数,如果不超过设定的最大迭代步数,则执行步骤3,否则执行步骤13;
步骤3、用邻域解集构造过程产生当前解csnow的邻域解集N(csnow),具体包括以下步骤:
步骤3-1、在当前解csnow中随机选择两个任务所对应的两个主体服务,假设为sui和svj;上述两个任务假设为第u个任务和第v个任务;
步骤3-2、假设第u个任务和第v个任务所对应的主体服务集分别为Su和Sv,其主体服务数量分别为m1和m2,在第u个任务所对应的主体服务集Su中分别用除主体服务sui之外的m1-1个主体服务替换当前解csnow中的主体服务sui,形成m1-1个新组合主体服务;
步骤3-3、在第v个任务所对应的主体服务集Sv中分别用除主体服务svj之外的m2-1个主体服务替换当前解csnow中的主体服务svj,形成m2-1个新组合主体服务;
步骤3-4、将步骤3-2中产生的m1-1个新组合主体服务和步骤3-3中产生的m2-1个新组合主体服务进行合并,形成当前解csnow的邻域解集N(csnow);
步骤4、在当前解csnow的邻域解集N(csnow)中选择服务质量最大的一个组合主体服务csmax,作为下一次迭代的当前解;
步骤5、判断禁忌搜索是否满足特赦规则,如果不满足特赦规则,则执行步骤6~步骤8,否则执行步骤9~步骤10;所述特赦规则为:如果当前邻域解集中的某个禁忌候选解性能优于csbest,则将此禁忌候选解作为下一次迭代的当前解csnow,同时更新最优解csbest=csnow;
步骤6、从当前解邻域解集N(csnow)中选择不在禁忌表中的服务质量最大的一个组合主体服务,即非禁忌最优解csnext;
步骤7、判断非禁忌最优解和最优解的服务质量大小,如果Q(csnext)>Q(csbest),则csbest=csnext,其中Q(csnext)和Q(csbest)分别表示组合主体服务csbest和csnext的服务质量,否则执行下一步;
步骤8、将非禁忌最优解csnext加入到禁忌表中,即禁忌csnext,之后执行步骤11;
步骤9、设置csbest=csnext=csmax;
步骤10、将非禁忌最优解csnext从禁忌表中删除,即解禁csnext;
步骤11、更新当前解csnow=csnext;
步骤12、将迭代步数加1,之后返回步骤2;
步骤13、禁忌搜索过程结束,该过程的输出就是最终满足代价质量要求的且服务质量最大的一个组合主体服务。
2.根据权利要求1所述的基于禁忌搜索的组合主体服务选择方法,其特征在于,步骤A中所述的在其主体服务集中选择代价属性最小的一个主体服务,是根据具体问题进行扩充和修改,如果是时间约束,则选择时间属性最小的主体服务,如果是可靠性和可维护性约束,则选择可靠性或可维护性属性最大的主体服务。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310164877.XA CN103226611B (zh) | 2013-05-07 | 2013-05-07 | 一种基于禁忌搜索的组合主体服务选择方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201310164877.XA CN103226611B (zh) | 2013-05-07 | 2013-05-07 | 一种基于禁忌搜索的组合主体服务选择方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN103226611A CN103226611A (zh) | 2013-07-31 |
CN103226611B true CN103226611B (zh) | 2016-01-20 |
Family
ID=48837056
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201310164877.XA Active CN103226611B (zh) | 2013-05-07 | 2013-05-07 | 一种基于禁忌搜索的组合主体服务选择方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN103226611B (zh) |
Families Citing this family (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN107392402B (zh) * | 2017-09-11 | 2018-08-31 | 合肥工业大学 | 基于改进禁忌搜索算法的生产运输协同调度方法及系统 |
CN109726479B (zh) * | 2018-12-29 | 2023-05-09 | 南京宁麒智能计算芯片研究院有限公司 | 一种三维片上网络垂直通道的部署方法 |
CN113992743A (zh) * | 2021-10-22 | 2022-01-28 | 湖南科技大学 | 一种面向服务组合的移动服务选择优化方法 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880667A (zh) * | 2012-09-04 | 2013-01-16 | 北京航空航天大学 | 一种基于关键路径和禁忌搜索的测试任务调度方法 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US8606386B2 (en) * | 2010-03-12 | 2013-12-10 | Ana Maria Dias Medureira Pereira | Multi-agent system for distributed manufacturing scheduling with Genetic Algorithms and Tabu Search |
-
2013
- 2013-05-07 CN CN201310164877.XA patent/CN103226611B/zh active Active
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102880667A (zh) * | 2012-09-04 | 2013-01-16 | 北京航空航天大学 | 一种基于关键路径和禁忌搜索的测试任务调度方法 |
Non-Patent Citations (1)
Title |
---|
支持QoS约束的自主单元语义服务匹配;张琨 等;《计算机科学》;20090331;第36卷(第3期);123-125,192 * |
Also Published As
Publication number | Publication date |
---|---|
CN103226611A (zh) | 2013-07-31 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108564485B (zh) | 基于电压曲线相似性分析的低压台区用户相位识别方法 | |
CN104036324B (zh) | 一种基于遗传算法的通信网络容量可靠性最优设计方法 | |
CN103226611B (zh) | 一种基于禁忌搜索的组合主体服务选择方法 | |
CN106059970A (zh) | 基于容量最大化的稀疏编码多址接入码本设计方法 | |
CN104579790B (zh) | 一种确定链路预测还原边数量的方法 | |
CN106713135A (zh) | 基于软件定义网络之数据传输方法与系统 | |
CN103929382A (zh) | 一种大规模mimo系统的大尺度衰落估计方法与装置 | |
CN105119279A (zh) | 一种分布式电源规划方法及其系统 | |
CN114943342A (zh) | 一种联邦学习系统的优化方法 | |
CN103577899B (zh) | 一种基于可靠性预测与QoS相结合的服务组合方法 | |
CN110310014B (zh) | 基于过渡矩阵的泛在电力物联网分布式经济调度方法 | |
CN108600002A (zh) | 一种基于半监督学习的移动边缘计算分流决策方法 | |
CN114221983B (zh) | 能源物联网物理与信息系统的关键路径确定方法及装置 | |
CN105529714A (zh) | 基于正态分布组合特征的快速概率潮流计算方法 | |
CN101616085A (zh) | 一种约束路由生成方法和装置 | |
CN112148478B (zh) | 变电站分布式无线网中数据安全和资源分配联合优化方法 | |
CN107861820A (zh) | 一种虚拟机资源分配方法及系统 | |
CN107977791A (zh) | 一种考虑网损的一致性算法的电力系统经济运行调度方法 | |
CN102938666A (zh) | 一种下行多小区联合波束成形方法 | |
CN115190505A (zh) | 一种基于改进bfgs的自组织传感网络能耗优化方法 | |
CN109861304B (zh) | 一种考虑通信时变时滞的微电网经济调度方法 | |
CN106130949A (zh) | 高维星座生成方法及系统 | |
TW201616888A (zh) | 多態流量網路之可靠度評估系統及其方法 | |
CN110351751A (zh) | 一种基于抽样的动态分布式系统的共识方法 | |
CN107368633A (zh) | 一种基于双曲接近中心性hcc的重要节点发现方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant |