CN101909078A - 一种基于新服务集构造的动态服务选择方法 - Google Patents
一种基于新服务集构造的动态服务选择方法 Download PDFInfo
- Publication number
- CN101909078A CN101909078A CN 201010230496 CN201010230496A CN101909078A CN 101909078 A CN101909078 A CN 101909078A CN 201010230496 CN201010230496 CN 201010230496 CN 201010230496 A CN201010230496 A CN 201010230496A CN 101909078 A CN101909078 A CN 101909078A
- Authority
- CN
- China
- Prior art keywords
- service
- particle
- selection
- services
- rep
- 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
Links
Landscapes
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明公布了一种基于新服务集构造的服务选择方法。首先把服务选择问题建模为带约束的多目标优化问题;其次为了求解上述多目标优化问题,本发明提出一种新的多目标粒子群优化算法,该算法用容量动态变化的容器存储迭代中得到的最优解,并提出一种新的寻找全局最优粒子的方法;最后本发明基于支配的概念构造规模小于原服务集的新服务集,之后利用上述的多目标粒子群算法求解由新服务集构成的服务选择问题;理论分析表明新服务集的构造过程能保证动态的服务选择方法正确的获得全局最优解。
Description
技术领域
本发明涉及服务计算领域的动态服务选择方法,特别涉一种基于新服务集构造的动态服务选择方法。
背景技术
随着Web服务的发展和应用范围的扩大,Web上提供相同或相似功能但不同QoS的Web服务数量快速增长,这些可以组成很多功能相同但QoS不同的组合服务。因而QoS成为Web服务选择的重要依据,迫切需要根据用户的QoS要求作为全局限制,选择出符合用户满意度的组合服务。
目前存在的基于QoS的服务选择方法主要有:
1.基于加权和法的传统优化方法。该类方法把用户的多个QoS要求聚合为一个目标函数,之后采用传统的线性整数规划方法优化该函数,获得全局最优解。
2.基于加权和法的智能优化方法。该类方法同样把用户的多个QoS要求聚合为一个目标函数,但采用遗传算法或启发式规则优化该目标函数,获得用户满意的方案。
3.基于多目标优化的服务选择方法。该类方法首先把服务选择问题建模为多目标优化问题,之后求解该优化问题获得一组全局最优解。
以上的方法存在很大的不足。首先,基于加权和法的服务选择方法求得的结果对权重向
量敏感,要求对问题本身有较强的先验认识,且随着问题规模的增大时间复杂度呈指数增长;其次,基于多目标优化的方法不能满足服务选择的实时性要求;最后上述方法对服务选择的动态性考虑不足。
发明内容
技术问题:本发明目的是针对现有技术存在的缺陷提供一种基于新服务集构造的动态服务选择方法。服务选择问题是实现服务组合必须解决的关键问题,本发明把基于QoS的服务选择问题建模为带约束的多目标优化问题,克服了加权和法需要对问题有一定的先验认识、求出的解对权重向量敏感等缺点。为了高效求解该优化问题,本发明提出一种新的多目标粒子群优化方法;为了满足服务选择方法的实时性要求,本发明根据支配的概念对服务集中的原子服务进行排名,优先选取排名靠前的服务参与选择过程;基于排名本发明构造出规模小于原服务集的新服务集,因而可降低方法的时间复杂度;证明结果表明新服务集的构造过程不会丢失全局最优解,能正确解决服务选择问题。
技术方案:本发明为实现上述目的,采用如下技术方案:
本发明一种基于新服务集构造的动态服务选择方法,利用粒子群优化算法对原子服务进行动态选择,任务是构成服务组合模型的基本逻辑单元,它仅包含功能描述和接口信息,并不指向具体的Web服务;原子服务集是指由不同服务提供者提供的、具有相同调用接口、能够实现相同功能的一组服务,具体包括如下步骤:
1.1模型建立
令CS表示某个组合服务,Si(1≤i≤n)表示能满足任务i所要求的功能但各自的QoS属性不同的一组服务集,sij(1≤j≤|Si|)是集合中的第j个服务实例,|Si|代表服务集中的服务个数;Q={c,t,rep,r}表示CS的QoS属性,c、t、rep、r分别代表花费、时间、声誉、可靠性,qij={cij,tij,repij,rij}表示Si中第j个服务的QoS属性;由此可以建立该问题的多约束多目标模型如下:
Min F(CS)=(T(CS),C(CS))
s.t Rep(CS)>Rep0
R(CS)>R0
其中T(CS),C(CS),Rep(CS),R(CS)分别代表求CS的QoS属性Q={c,t,rep,r}的函数;
1.2动态服务选择方法
第一步,count=min(const,min{|S1|,|S2|,…,|Sn|}),初始迭代轮数K=1;
第三步,构造新的服务集NSi:构造那么令 对每一个sij∈SLi,构造集合其中∧表示并且,表示支配;若对任意的s∈temp,有sij的QoS属性的约束部分不被s的QoS属性的约束部分支配,那么NSi=NSi∪{sij};检查是否有服务的QoS属性发生变化,若有则重新标记该服务的顺序nl,更新NSi;
第四步,用多目标粒子群算法求解由新服务集NSi对应的服务选择问题,得到满足解集{CSi};如果K≥count,则判断当前解是否满足约束,若满足则输出解集则停止迭代,否则NSi=Si用多目标粒子群算法求解由NSi对应的服务选择问题,得到满足解集{CSi},输出解并结束迭代;
第五步,判断解集中是否存在满足QoS约束的解,若存在输出解结束迭代;否则K=K+1,如果K<count转第三步,否则NSi=Si转第四步。
用多目标粒子群算法求解由新服务集NSi对应的服务选择的方法如下:
第2步,评价群体中的每个粒子;
第3步,更新容器;
②按照惯性权重法更新粒子的速度和位置;更新后如果超过最大值则转第五步;
第5步如果满足终止条件,则停止迭代,否则t=t+1转到第2步。
有益效果:现有的服务选择方法大多采用线性加权和法,这有众所周知的缺陷;而现有的基于多目标优化的服务选择方法时间复杂度高且解的质量不能令人满意。针对现存方法存在的问题,本发明把服务选择问题建模为带约束的多目标优化问题,以时间和花费为优化目标,信誉和可靠性为约束;本发明通过新服务集的构造,缩小问题规模,之后利用多目标粒子群优化方法求解由新服务集构成的服务选择问题。与现有的服务选择方法相比,本发明提出的方法的优势在于:1)一次运行能从所有路径的所有组合方案中求出全局最优解,从而解决局部优化方法的不足;2)不要求目标函数和约束条件是线性的,不需要与应用背景相关的启发式知识;3)能求出一组满足约束的Pareto解,更好地满足了用户的需求;4)当服务的QoS参数在运行期间发生变化时,能求出正确的解;5)当服务规模增大时的执行时间并不急剧增加。
具体实施方式
本发明的动态服务选择方法的具体步骤如下:
令CS表示某个组合服务,Si(1≤i≤n)表示能满足任务i所要求的功能但各自的QoS属性不同的一组服务集,sij(1≤j≤|Si|)是集合中的第j个服务实例,|Si|代表服务集中的服务个数;Q={c,t,rep,r}表示CS的QoS属性,c、t、rep、r分别代表花费、时间、声誉、可靠性,qij={cij,tij,repij,rij}表示Si中第j个服务的QoS属性。那么服务选择问题就是,从各任务对应的服务集Si中选取一个服务实例sij(1≤j≤|Si|)组成一个组合服务CS,使得CS的某些QoS属性(比如rep,r)满足约束,另一些QoS属性(比如c,t)达到最优。由此可以建立该问题的多约束多目标模型如下:
Min F(CS)=(T(CS),C(CS))
s.t Rep(CS)>Rep0
R(CS)>R0
其中T(CS),C(CS),Rep(CS),R(CS)分别代表求CS的QoS属性Q={c,t,rep,r}的函数。上述模型可以扩展到多个优化目标、多个约束条件,对于只有约束的情况可以把多约束问题转化成多约束多优化问题,因此模型具有通用性。
求解上述模型的动态服务选择方法具体如下:
第一步,令count=min(const,min{|S1|,|S2|,…,|Sn|}),K=1;
第三步,构造新的服务集NSi。构造那么令 对每一个sij∈SLi,构造集合若对任意的s∈temp,有sij的QoS属性的约束部分不被s的QoS属性的约束部分支配,那么NSi=NSi∪{sij};检查是否有服务的QoS属性发生变化,若有则重新标记该服务的顺序nl,更新NSi;
第四步,用多目标粒子群算法求解由新服务集NSi对应的服务选择问题,得到满足解集{CSi};如果K≥count,则判断当前解是否满足约束,若满足则输出解集则停止迭代,否则NSi=Si用粒子群算法求解由NSi对应的服务选择问题,得到满足解集{CSi},输出解并结束迭代;
第五步,判断解集中是否存在满足QoS约束的解,若存在输出解结束迭代;否则K=K+1,如果K<count转第三步,否则NSi=Si转第四步。
用多目标粒子群算法求解由新服务集NSi对应的服务选择问题的方法如下:
第二步,评价群体中的每个粒子;
第三步,更新容器A;
②按照惯性权重法更新粒子的速度和位置;
第五步如果满足终止条件,则停止迭代,否则t=t+1转到第二步。
本发明的多目标粒子群优化算法采用容量受限的容器以存储历代迭代中找到的最优解,但可以根据一定的条件扩展容器的容量。在每一代,根据Pareto最优解的概念更新容器中的非劣解;在群体中发现某粒子优于容器中的某粒子,则将容器中的粒子移走;当容器的容量达到上限时,有两种做法:扩大容量和删除容器中的粒子。第二种做法的关键就是如何选择,选择依据是保留那些有较好分布的粒子,删除分布拥挤的区域中的粒子。为了对粒子的分布作出评价,采用动态适应性栅格策略;该策略是在目标空间上画栅格,之后统计每个栅格中粒子的个数,个数最多的为最拥挤区域。
本发明的多目标粒子群优化算法采用的寻找全局最优粒子的方法可叙述如下。在迭代前期采用如下策略:基于适应性栅格策略,首先用轮盘赌算法从众多栅格中选出一个(它至少包含一个粒子),其中用一个固定常数除以栅格包含的粒子数作为轮盘赌算法的适应值,其它做法如同通常的轮盘赌算法;其次,当选定了栅格后,从居住在此栅格的粒子中随机选出一个作为gbest来更新粒子的速度;重复上述步骤可以更新每个粒子的速度。在迭代后期,基于Euclid距离选取gbest,具体做法如下:首先求出群体中的每个粒子到容器中的所有粒子的距离,群体中第j个粒子到容器中第k个粒子的距离公式如下所示:
其中xj表示群体中第j个粒子,ak代表容器中第k个粒子,NF表示目标函数的个数,max(fi(A))-min(fi(A))表示容器A在第i个目标函数上的范围,通过除以这个范围可以缩小不同的目标函数间的差异;其次选下面式子成立的k作为群体中第i个粒子的飞行向导,即gbest来更新粒子速度;重复上述步骤可以更新每个粒子的速度。
min(dist(j,k)),k=1,2,…|A|
此方法在迭代前期能在较大的决策变量空间中搜索,可以避免早熟,提高解的质量;在迭代的后期能加速收敛,可以提高收敛速度。
本发明所述的方法进一步描述为:
1.读取业务流程图,获得任务信息及任务间的业务逻辑关系;获得原子服务的QoS值,并做规范化处理。
2.基于业务结构得到计算组合服务的QoS值的函数:T(CS),C(CS),Rep(CS),R(CS)的表达式;以时间和花费为优化目标,可靠性和信誉为约束建立多目标优化模型。
3.构造新服务集,对其中的原子服务进行编号,并记录它们和原服务集中的编号的对应关系。
4.用多目标粒子群优化算法求解新服务集对应的多目标优化问题。采用定长整数编码方案,把解空间映射到粒子空间。将一个Web服务组合流程编码为一个粒子,粒子的维数N等于任务的个数n,每一维都是正整数,范围从一到该任务所对应候选服务的个数。Xi=(1,2,…,N)T表示从第一个服务集中选出第一个原子服务,从第二个服务集中选出第二个原子服务,依此类推,从最后一个服务集中选出第N个原子服务组成了组合服务Xi,用它的QoS属性来评价该粒子的好坏。组合服务的组合模型有多种,相应的执行路径有多条,因此会出现某条执行路径中的任务个数少于n的情况,这时Xi中某些没出现任务的相应为0,例如Xi=(1,2,0,…,N),则表示第三个任务不在该组合服务的执行路径上。参数设置如下:c1=c2=2.0,w从0.9线性下降到0.4,|A|=20,种群规模popsize=(numoftask/2)*(sum/numoftask),迭代次数maxgen=2*popsize,其中numoftask为任务数,sum为各个服务集包含的服务数总和。粒子群优化算法终止时得到一组最优粒子,如果满足用户的约束要求,则把最优粒子还原为组合方案,动态服务选择方法终止;若不满足约束,则返回第3步重新构造新服务集,如果构造次数达到上限,则停止服务选择过程表明未找到满足约束的解。
Claims (2)
1.一种基于新服务集构造的动态服务选择方法,利用粒子群优化算法对原子服务进行动态选择,其特征在于:任务是构成服务组合模型的基本逻辑单元,它仅包含功能描述和接口信息,并不指向具体的Web服务;原子服务集是指由不同服务提供者提供的、具有相同调用接口、能够实现相同功能的一组服务,具体包括如下步骤:
1.1模型建立
令CS表示某个组合服务,Si(1≤i≤n)表示能满足任务i所要求的功能但各自的QoS属性不同的一组服务集,sij(1≤j≤|Si|)是集合中的第j个服务实例,|Si|代表服务集中的服务个数;Q={c,t,rep,r}表示CS的QoS属性,c、t、rep、r分别代表花费、时间、声誉、可靠性,qij={cij,tij,repij,rij}表示Si中第j个服务的QoS属性;由此可以建立该问题的多约束多目标模型如下:
Min F(CS)=(T(CS),C(CS))
s.t Rep(CS)>Rep0
R(CS)>R0
其中T(CS),C(CS),Rep(CS),R(CS)分别代表求CS的QoS属性Q={c,t,rep,r}的函数;
1.2动态服务选择方法
第一步,count=min(const,min{|S1|,|S2|,…,|Sn|}),初始迭代轮数K=1;
第三步,构造新的服务集NSi:构造那么令 对每一个sij∈SLi,构造集合其中∧表示并且,表示支配;若对任意的s∈temp,有sij的QoS属性的约束部分不被s的QoS属性的约束部分支配,NSi=NSi∪{sij};那么;检查是否有服务的QoS属性发生变化,若有则重新标记该服务的顺序nl,更新NSi;
第四步,用多目标粒子群算法求解由新服务集NSi对应的服务选择问题,得到满足解集{CSi};如果K≥count,则判断当前解是否满足约束,若满足则输出解集则停止迭代,否则NSi=Si用多目标粒子群算法求解由NSi对应的服务选择问题,得到满足解集{CSi},输出解并结束迭代;
第五步,判断解集中是否存在满足QoS约束的解,若存在输出解结束迭代;否则K=K+1,如果K<count转第三步,否则NSi=Si转第四步。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010230496 CN101909078A (zh) | 2010-07-19 | 2010-07-19 | 一种基于新服务集构造的动态服务选择方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN 201010230496 CN101909078A (zh) | 2010-07-19 | 2010-07-19 | 一种基于新服务集构造的动态服务选择方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN101909078A true CN101909078A (zh) | 2010-12-08 |
Family
ID=43264395
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN 201010230496 Pending CN101909078A (zh) | 2010-07-19 | 2010-07-19 | 一种基于新服务集构造的动态服务选择方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101909078A (zh) |
Cited By (6)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102123175A (zh) * | 2011-03-07 | 2011-07-13 | 浙江大学 | 一种基于最优相似距离的Qos感知的服务选择方法 |
CN102857571A (zh) * | 2012-09-13 | 2013-01-02 | 北京航空航天大学 | 组合服务仿真方法及装置 |
CN103580922A (zh) * | 2013-11-08 | 2014-02-12 | 国家电网公司 | 一种基于混合优化的电力通信网络应用服务器过载控制方法 |
CN104378432A (zh) * | 2014-11-17 | 2015-02-25 | 浙江大学 | 一种考虑时序约束的移动服务组合选择方法 |
CN111639741A (zh) * | 2020-04-08 | 2020-09-08 | 北京邮电大学 | 一种用于多目标QoS优化的服务自动组合代理系统 |
CN112380700A (zh) * | 2020-11-13 | 2021-02-19 | 上海交通大学 | 服务型制造模式下产品服务配置和定价方法及介质 |
-
2010
- 2010-07-19 CN CN 201010230496 patent/CN101909078A/zh active Pending
Non-Patent Citations (2)
Title |
---|
《东南大学学报》 20090730 孙学胜等 基于多目标粒子群优化的服务选择算法 第685-689页 1-2 第39卷, 第4期 * |
《计算机应用研究》 20100530 王阳阳等 一种基于QoS全局最优的服务选择算法 第1599-1661页 1-2 第27卷, 第5期 * |
Cited By (11)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102123175A (zh) * | 2011-03-07 | 2011-07-13 | 浙江大学 | 一种基于最优相似距离的Qos感知的服务选择方法 |
CN102123175B (zh) * | 2011-03-07 | 2014-06-25 | 浙江大学 | 一种基于最优相似距离的Qos感知的服务选择方法 |
CN102857571A (zh) * | 2012-09-13 | 2013-01-02 | 北京航空航天大学 | 组合服务仿真方法及装置 |
CN102857571B (zh) * | 2012-09-13 | 2015-02-18 | 北京航空航天大学 | 组合服务仿真方法及装置 |
CN103580922A (zh) * | 2013-11-08 | 2014-02-12 | 国家电网公司 | 一种基于混合优化的电力通信网络应用服务器过载控制方法 |
CN103580922B (zh) * | 2013-11-08 | 2016-08-17 | 国家电网公司 | 一种基于混合优化的电力通信网络应用服务器过载控制方法 |
CN104378432A (zh) * | 2014-11-17 | 2015-02-25 | 浙江大学 | 一种考虑时序约束的移动服务组合选择方法 |
CN104378432B (zh) * | 2014-11-17 | 2018-05-29 | 浙江大学 | 一种考虑时序约束的移动服务组合选择方法 |
CN111639741A (zh) * | 2020-04-08 | 2020-09-08 | 北京邮电大学 | 一种用于多目标QoS优化的服务自动组合代理系统 |
CN111639741B (zh) * | 2020-04-08 | 2023-04-07 | 北京邮电大学 | 一种用于多目标QoS优化的服务自动组合代理系统 |
CN112380700A (zh) * | 2020-11-13 | 2021-02-19 | 上海交通大学 | 服务型制造模式下产品服务配置和定价方法及介质 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN104156584B (zh) | 多目标优化差分进化算法的传感器目标分配方法及系统 | |
CN102542051B (zh) | 一种随机分布型地理要素的多目标协同抽样方案设计方法 | |
CN106779372B (zh) | 基于改进免疫禁忌算法的农机调度方法 | |
CN101325004B (zh) | 一种实时交通信息的数据补偿方法 | |
CN101909078A (zh) | 一种基于新服务集构造的动态服务选择方法 | |
CN109948855A (zh) | 一种带时间窗的异构危化品运输路径规划方法 | |
CN105096006A (zh) | 一种智能电能表的配送车辆路径优化方法 | |
CN104331749A (zh) | 基于模拟退火粒子群的agv优化调度方法 | |
CN106527381B (zh) | 一种面向并行批处理机动态调度的快速评估方法 | |
Shiau | Optimization of reservoir hedging rules using multiobjective genetic algorithm | |
CN110095122A (zh) | 一种基于改进蚁群算法的移动机器人路径规划方法 | |
CN109522382A (zh) | 空间数据网格化统计方法及装置 | |
Cao et al. | A multiagent-based approach for vehicle routing by considering both arriving on time and total travel time | |
CN101556464A (zh) | 基于关联规则的城市电力负荷预测模型自动推荐方法 | |
CN103593747A (zh) | 一种基于meanshift分类的大规模客户点分类配送方法 | |
CN102749084A (zh) | 一种面向海量交通信息的路径选择方法 | |
CN102214333A (zh) | 一种厂房内设施布局多目标优化方法 | |
CN103052128A (zh) | 一种基于无线传感器网络能量有效的协同调度方法 | |
CN105574541A (zh) | 一种基于紧密度排序的网络社区发现方法 | |
CN101692230A (zh) | 顾及多细节层次的三维r树空间索引方法 | |
CN104933474B (zh) | 危险化学品运输的模糊双层优化方法 | |
CN102184328A (zh) | 一种土地利用演化ca模型转换规则优化方法 | |
CN105205052A (zh) | 一种数据挖掘方法及装置 | |
CN107292537A (zh) | 考虑路径跟踪和灾情风险评判的台风日短期负荷预测方法 | |
CN106658570B (zh) | 基于二次栅格划分的移动sink信息收集路径构建方法 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C02 | Deemed withdrawal of patent application after publication (patent law 2001) | ||
WD01 | Invention patent application deemed withdrawn after publication |
Application publication date: 20101208 |