CN103475730B - 一种云环境下用户确定度引导的web服务选择方法 - Google Patents

一种云环境下用户确定度引导的web服务选择方法 Download PDF

Info

Publication number
CN103475730B
CN103475730B CN201310432047.0A CN201310432047A CN103475730B CN 103475730 B CN103475730 B CN 103475730B CN 201310432047 A CN201310432047 A CN 201310432047A CN 103475730 B CN103475730 B CN 103475730B
Authority
CN
China
Prior art keywords
web service
value
user
attribute
combination
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
Application number
CN201310432047.0A
Other languages
English (en)
Other versions
CN103475730A (zh
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.)
Jiangsu Sanleng Smartcity&iot System Co Ltd
Original Assignee
Jiangsu Sanleng Smartcity&iot System Co Ltd
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 Jiangsu Sanleng Smartcity&iot System Co Ltd filed Critical Jiangsu Sanleng Smartcity&iot System Co Ltd
Priority to CN201310432047.0A priority Critical patent/CN103475730B/zh
Publication of CN103475730A publication Critical patent/CN103475730A/zh
Application granted granted Critical
Publication of CN103475730B publication Critical patent/CN103475730B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Landscapes

  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明公开了一种云环境下用户确定度引导的web服务选择方法,包括以下步骤:步骤1:对用户需求进行建模;步骤2:对用户的偏好权重WA进行离散化处理;步骤3:利用非数值型质量约束对候选可用web服务集进行一次过滤;步骤4:采用分层迭代两两组合方法处理步骤3的数据;步骤5:对于步骤2中每一组组合权重值进行处理得到为该用户推荐的web服务组合方案列表CompServiceList;步骤6:用户从上述web服务组合方案列表CompServiceList中,选择一个web服务组合方案,并据此去选择相应的web服务。

Description

一种云环境下用户确定度引导的web服务选择方法
技术领域
本发明公开了一种云环境下用户确定度引导的web服务选择方法,涉及了web服务组合、计算机软件技术领域,可以用于进行web服务优化选择。
背景技术
在过去的几年里,云计算(CloudComputing)发展迅速,变得愈加成熟。云计算是分布式计算(DistributedComputing)、并行计算(ParallelComputing)、效用计算(UtilityComputing)、网络存储(NetworkStorageTechnologies)、虚拟化(Virtualization)、负载均衡(LoadBalance)等传统计算机和网络技术发展融合的产物。根据Wikipedia的定义,云计算是一种通过Internet以web服务的方式提供动态可伸缩的虚拟化的资源的计算模式。如今,像Amazon,Google,IBM等领先的云供应商都在向市场提供商业云web服务。所有这些商业云web服务改变了人们获取和管理资源的方式。
根据NIST在2011年公布的云计算定义“TheNISTdefinitionofcloudcomputing”,目前在云计算中主要有三种web服务模型,即InfrastructureasaService(IaaS),PlatformasaService(PaaS),SoftwareasaService(SaaS)。一个现实中的基于web服务的应用可以使用到上述三种web服务模型中的web服务。其可以从各个不同的云供应商处租赁web服务,并将这些web服务进行整合。整合web服务能够将多个可互操作web服务进行业务流程的组装,构造功能强大的增值web服务,以实现自身应用的预期目标。
在云计算时代,面向web服务的体系结构(SOA)和以Web服务为特征的业务模式仍是业务发展的主要路线。从技术上讲,Web服务是封装了应用程序的功能和信息资源,并通过统一资源标识符(URI)进行位置标识的自治软件系统,并向外界提供编程接口,以实现外界对这些功能和资源的利用。根据SOAP,WSDL和UDDI等标准,通过基于XML的消息的封装,Web服务可以被发布,定位,访问或者在网络传输。
目前基于web服务的应用通常对所有用户而言都是具有同样质量。但是对于同一个基于web服务的应用,每个用户通常有着自己的需求,这就像购买衣服有的人关注于价格,有的人可能更关注与质量。云环境的动态资源分配及伸缩性为用户定制基于web服务的应用提供了基础。
随着Web服务的发展,具有相同功能的web服务越来越多,为了能在数量众多,性能各异的web服务中找到符合用户要求的web服务,需要根据web服务的属性进行web服务的匹配和选择。关于这方面的研究已经出现了许多成果。绝大多数文献提出利用整数线性规划的方法进行web服务组合,这些方法通常都可以获得最优解,但是这些方法通常具有指数时间复杂度,即获得最优解的时间消耗是极大的。据此,为了缩减时间消耗,一些文献提出利用计算方法或者启发式方法进行近优解的获取,例如,GerardoCanfora等人在“AnapproachforQoS-awareservicecompositionbasedongeneticalgorithms”中提出利用遗传算法进行web服务组合。WeiZhang等人在“QoS-baseddynamicwebservicecompositionwithantcolonyoptimization”中提出利用蚁群算法进行动态web服务组合。
此外,已有相关专利进行web服务选择和web服务推荐,中国专利一种基于QoS的历史记录和聚类的服务优化方法CN201210489123.7中通过考虑web服务的执行历史记录,继而通过H2D-SC模糊分层聚类方法推荐效用值最优的web服务,中国专利一种基于QoS指标的动态Web服务组合方法,CN201210369802.0中描述了一个动态服务组合方法,其通过在执行一个服务的过程中,对下一个将要执行的服务进行选择,这样周而复始,达到加快服务组合过程,避免服务故障所引发的超长时间等待问题。但是这些专利以及前面的相应文献都没有考虑对服务组合结果优化程度和执行时间消耗进行控制问题,从而导致最终服务组合结果的优化程度无法知晓。
发明内容
本发明通过克服现有技术中存在的不足,一种云环境下用户确定度引导的web服务选择方法,其可以通过控制变量k对结果的优化程度和执行时间进行控制。
本发明公开了一种云环境下用户确定度引导的web服务选择方法,包括以下步骤:
步骤1:对用户需求进行建模:将一个用户需求建模为五个变量,包括质量约束、偏好权重、确定度、结果期望的优化度以及期望执行时间;
其中质量约束表示为CS,CS={cm|m=1,…,M},cm表示对组合web服务第m个属性的约束,M表示组合web服务总的属性数目,质量约束包括数值型和非数值型;偏好权重表示为WA,WA={wm|m=1,…,M},wm表示对组合web服务第m个属性的偏好程度,取值范围为[0,1]内的任意区间;确定度表示为vtrade_off,其用户输入取值范围为区间[0,1];结果期望的优化度表示为Optimaldegree,其用户输入取值范围为区间[0,1];期望的执行时间表示为Timecost∈N+,N+表示整数集合;
步骤2:对用户的偏好权重WA进行离散化处理:对每个属性的偏好权重wm进行离散化,得到M个偏好权重wm的离散化取值集合Discretizedm,然后对M个离散化取值集合Discretizedm进行组合得到共组具体的组合权重值;
步骤3:利用非数值型质量约束对候选可用web服务集进行一次过滤;
步骤4:采用分层迭代两两组合方法,将每一组输入质量约束CS、组合权重值、确定度vtrade_off、候选web服务集的规模以及控制变量k∈N+值与结果的优化度Optimaldegree、执行时间Timecost进行组合对应;
利用数据挖掘中的决策树分类算法,将分层迭代两两组合中控制变量k值作为分类标签,获得在一组质量约束CS、组合权重值、确定度vtrade_off、以及候选web服务集的规模下,控制变量k与结果的优化度Optimaldegree、执行时间Timecost、的关系。
步骤5:对于步骤2中每一组组合权重值,首先结合当前的质量约束CS,确定度vtrade_off、候选web服务集的规模以及结果期望的优化程度Optimaldegree,执行时间消耗Timecost,获得相应控制变量k的取值,然后采用分层迭代两两组合方法取得一组web服务组合方案;由此获得组可选的组合方案;每次对两个候选web服务集进行两两组合时,选择当前组合结果的前k个子web服务组合组成新的候选web服务集进入下一轮,反复迭代直到最后只剩下一个候选web服务集合,选择其中效用值最优的解,加入到为该用户推荐的web服务组合方案列表CompServiceList中;
步骤6:用户从上述web服务组合方案列表CompServiceList中,选择一个web服务组合方案,并据此去选择相应的web服务。
如权利1所要求的一种云环境下用户确定度引导的web服务选择方法,其特征在于,步骤1中,一个web服务p的web服务质量表示为表示web服务p的第i个属性的值,i=1,…,M;一个用户需要的组合web服务表示为 ( ws 1 k 1 , ws 2 k 2 , . . . , ws Nk N ) , ws jk j ∈ CWS j , j = 1 , . . . , N , 其中N表示用户最终需要的组合web服务中需要包含的web服务数;CWSj表示满足同一个功能的第j组所有web服务;web服务满足同一个功能表示给定同样的web服务输入参数返回相同的输出参数;表示从所有web服务CWSj中选取第kj个web服务作为最终组合web服务中实现第j个功能的web服务。
步骤1中,质量约束CS表示用户对最终组合web服务的各个属性的约束,包括数值型和非数值型,数值型质量约束是指对web服务数值型属性的约束;非数值型质量约束是指对web服务的非数值型属性的约束。
步骤2中,对用户每个属性的偏好权重wm进行离散化处理,从偏好权重wm的区间范围中离散化取值时,值的个数与区间长度成正比,即: DiscretizeNum w m ∝ length w m , 取值方法为将偏好权重wm等分为段,选取每一段的中点作为偏好权重wm的离散化取值。
步骤4,5中,分层迭代的两两组合方法中,只有当本层的所有候选web服务集两两组合计算完成,才开始下一层的迭代;在每一层迭代过程中,进行三个步骤:第一,计算两个输入候选web服务集中各个web服务的数值型属性的最大值和最小值;第二,根据前述最大值、最小值以及质量约束CS进行过滤;第三,将剩下的web服务进行组合,依据效用值选取前k个组合构成新的候选web服务集进入下一轮。
步骤5中,利用效用值作为服务优劣排序的标准,一个服务p的效用值Utilityp通过如下公式计算:
Utility p = Σ m = 1 M w m * V ( m )
其中,
其中表示服务p的第m个属性的值,表示所有参与此次排序比较的服务的第m个属性中的最大值,表示所有参与此次排序比较的服务的第m个属性中的最小值;正属性表示用户希望该属性值大的属性,负属性表示用户希望该属性值小的属性。
步骤5中,在分层迭代的两两组合过程中使用阈值过滤,只有当web服务或web服务子组合的各个维度的属性值符合阈值向量T时,该web服务或web服务子组合才允许进入下一轮;阈值向量T用于指示进入下一轮的web服务需要满足的针对正属性的下界或针对负属性的上界约束,阈值向量T计算公式为:
其中,AC表示累加型web服务属性,MU表示累积型web服务属性;正属性表示用户希望该属性值大的属性,负属性表示用户希望该属性值小的属性;qm表示web服务的第m个属性值,WSj表示参与本轮迭代的第j个候选web服务集;表示WSi中所有web服务的第m个属性值中的最小值,表示WSi中所有web服务的第m个属性值中的最大值;表示计算施加在候选服务集WSj上的阈值向量。
与现有技术相比,本发明的效果体现在:
1)该web服务选择方法中引入了用户确定度这个概念,每个用户的需求被建模为质量约束,偏好权重,确定度,期望结果优化度和期望执行时间五个因素。
2)web服务组合过程是可控的,依据用户确信度等因素可以调整控制参数k,实现对结果的优化程度和时间消耗的控制。
3)最终推荐给用户的是多组最优方案,增加了用户的自主选择性,提升用户的满意度。
本发明可以广泛应用于web服务优化选择,web服务组合规划,属于计算机软件技术领域。
本发明对计算组合方案时间消耗和组合结果优化程度可控的面向用户的web服务选择方法,以便支持云环境下用户定制应用的快速构建。
附图说明
图1:本发明的权重值离散化组合示意图。
图2:本发明的分层迭代两两组合方法工作过程示意图。
图3:本发明的web服务选择场景应用示例图。
图4:本发明的方法过程示意图。
具体实施方式
本发明公开了一种云环境下用户确定度引导的web服务选择方法,如图4所示,总体流程大致为:对各个用户提出的需求信息进行建模,任意一个用户的需求被建模为五个变量,即质量约束,偏好权重,确定度,结果期望优化度和期望执行时间。对各个用户的偏好权重进行离散化预处理,为每个用户离散化出多组具体权重值。基于用户的质量约束,偏好权重,确定度,结果期望优化度和期望执行时间消耗,获得相应控制参数k的取值,利用分层迭代的两两组合方法为每个用户的每组具体权重值推荐一个最优的web服务组合方案,即为一个用户推荐多个最优的web服务组合方案。最后,每个用户从为其推荐的多个web服务组合方案中任选一个最优方案,并据此去选择相应的web服务。
本发明认为一个满足用户需求的最优web服务组合方案,其各个子组合也是以极大的概率排在前列。参见图2,本发明采用了分层迭代的两两组合方法去寻找满足用户需求的可能最优解。该web服务选择方法主要包含如下6个步骤:
步骤1:对用户需求进行建模:将一个用户需求建模为五个变量,包括质量约束、偏好权重、确定度、结果期望优化度以及期望执行时间;其中质量约束表示为CS,CS={cm|m=1,…,M},cm表示对组合web服务第m个属性的约束,M表示组合web服务总的属性数目,质量约束包括数值型和非数值型;偏好权重表示为WA,WA={wm|m=1,…,M},wm表示对组合web服务第m个属性的偏好程度,取值范围为[0,1]内的任意区间;确定度表示为vtrade_off,其用户输入取值范围为区间[0,1];结果期望优化度表示为Optimaldegree,其用户输入取值范围为区间[0,1];期望执行时间表示为Timecost∈N+
质量约束CS表示了用户对最终组合web服务的各个属性的约束,其被分为了两种类型,即数值型和非数值型,数值型质量约束是指对web服务数值型属性的约束,比如web服务的可用性、可靠性、以及等待时间,这类属性的取值通常是一个区间范围,比如最终web服务的可靠性Availability>0.98;非数值型质量约束是指对web服务的非数值型属性的约束,比如安全性支持和大众用户满意度,这类属性的取值通常是一个有限集合,即只有几个可能值,比如一个web服务的安全性支持属性只能取“是”或者“否”。
用户对组合web服务第m个属性的偏好程度被表示为偏好权重wm,其被考虑为一个取值范围为[0,1]内的任意区间,而非一个具体值。比如,一个服务若有两个属性:价格Price和可靠性Availability,而该用户更看重服务的价格,则用户可以表明对这两个属性的偏好程度分别为0.7~0.8和0.2~0.3,即区间范围[0.7,0.8]和[0.2,0.3]。与确定的权重值相比,区间范围更能真实地反映出用户对各个属性的偏好程度。
确定度vtrade_off反映了用户对自己需求的确定程度,其取值范围为区间[0,1],其值越大,表明用户对自己的需求越确定。
步骤2:对用户的偏好权重WA进行离散化处理,这是因为在本方法中,一个用户对组合web服务的任意一个属性的偏好权重wm,是用一个区间取值范围来表示的,从而对每个属性的偏好权重wm先进行离散化,得到wm的离散化取值集合Discretizedm,然后对M个离散化取值集合Discretizedm进行完全组合可以得到共组具体的组合权重值(过程参见图1)。
对用户偏好权重wk进行离散化处理时,考虑了区间范围大小的影响,即从wk的区间范围中离散化取值时,其取值的个数应该与区间长度成正比例,即 DiscretizeNum w m ∝ length w m ( m = 1 , . . . , M ) , M是web服务属性的总数目。取值的具体做法是将wm的区间范围等分为段,选取每一段的中点作为wm的一个离散化取值。然后对M个权重产生的离散化集合进行一个全组合,产生个组合权重值。由于具体权重值数目可能会很大,可以采用随机抽样方法从中选择需要数目的组合权重值。
步骤3:利用非数值类型的质量约束对候选可用web服务集进行一次过滤,以排除一部分不满足非数值类型质量约束的web服务。
非数值类型的质量约束在很多情况下可以不加修改的施加于各个候选可用web服务集。由于非数值类型的质量属性只有有限的几种取值,因而,该过滤过程可以通过查看某web服务的对应属性取值是否满足约束来决定是否保留该web服务。比如,若质量约束集合CS中的一个非数值类型的约束为“web服务需要安全性支持”,则我们就可以将那些安全性支持为“否”的web服务从web服务集中删除。
步骤4:采用分层迭代两两组合方法,如图2所示,将每一组输入质量约束CS、组合权重值、确定度vtrade_off、候选web服务集的规模以及控制变量k∈N+值与结果的优化度Optimaldegree、执行时间消耗Timecost进行对应;利用数据挖掘中的决策树分类算法,将分层迭代两两组合中控制变量k值作为分类标签,获得在一组质量约束CS、组合权重值、确定度vtrade_off、候选web服务集的规模下,控制变量k与结果优化度Optimaldegree、执行时间消耗Timecost的关系。
具体做法为,通过对质量约束CS,组合权重值,确定度vtrade_off,预过滤后候选web服务集的大小以及分层迭代两两组合过程中控制变量k值进行修改,采用本文中的分层迭代两两组合方法进行大量模拟实验,得到多组实验结果,记录相应的时间消耗Timecost和结果的优化程度Optimaldegree。据此,可以获得大量数据集合并将这些数据整理入下面表格中。
再利用数据挖掘中的决策树分类学习的方法,获得在一组质量约束CS、组合权重值、确定度vtrade_off、候选web服务集的规模下,控制变量k与结果优化度Optimaldegree、执行时间消耗Timecost的关系。
控制变量k值的大小决定了下一轮的新候选web服务集的大小,而对于不同用户,通常k值是不同的,k越大,所得的结果优化程度越高,消耗的时间越多;k越小,所得的结果优化程度越小,消耗的时间越少。
步骤5:对于一个用户来说,步骤2为其计算出了多组组合权重值。对于其中每一组组合权重值,首先结合当前的质量约束CS,确定度vtrade_off、候选web服务集的规模以及结果期望的优化程度Optimaldegree,执行时间消耗Timecost,获得相应控制变量k的取值,然后采用分层迭代的两两组合方法(参见图2)可以获得一组web服务组合方案。这样对于一个用户而言,获得组可选的组合方案。
在图2的分层迭代的两两组合方法中,在每次对两个候选web服务集进行两两组合时,选择当前组合结果的前top-k个子web服务组合组成新的候选web服务集进入下一轮。这样每进行一轮迭代,候选web服务集的数量会缩减一半,直到最后只剩下一个候选web服务集合。选择其中效用值最优的解,加入到为该用户推荐的web服务组合方案列表CompServiceList中。
在图2的分层迭代的两两组合方法中,只有当本层的所有候选web服务集两两组合计算完成,才能开始下一层的迭代。在每一层迭代过程中,进行三个步骤:第一,计算两个输入候选web服务集中各个web服务的数值型属性的最大值和最小值;第二,根据前述最大值、最小值以及质量约束CS进行过滤;第三,将剩下的web服务进行组合,依据效用值选取前k个组合构成新的候选web服务集进入下一轮;
同时,使用效用值作为web服务组合优劣的评价。利用效用函数可以为每个组合或子组合计算出一个效用值,其大小就决定该组合或子组合的排名。一个web服务p的效用值的计算公式为:
Utility p = Σ m = 1 M w m * V ( m )
其中
其中表示服务p的第m个属性的值,表示所有参与此次排序比较的服务的第m个属性中的最大值,表示所有参与此次排序比较的服务的第m个属性中的最小值;正属性表示用户希望该属性值大的属性,负属性表示用户希望该属性值小的属性。
在分层迭代的两两组合过程中使用阈值过滤,只有当web服务或web服务子组合的各个维度的属性值符合阈值向量T时,该web服务或web服务子组合才允许进入下一轮;阈值向量T用于指示进入下一轮的web服务需要满足的针对正属性的下界或针对负属性的上界约束,阈值向量T计算公式为:
其中,AC表示累加型web服务属性,MU表示累积型web服务属性;正属性表示用户希望该属性值大的属性,负属性表示用户希望该属性小的属性;qm表示web服务的第m个属性值,WSj表示参与本轮迭代的第j个候选web服务集;表示WSi中所有web服务的第m个属性值中的最小值,表示WSi中所有web服务的第m个属性值中的最大值;表示计算施加在候选服务集WSj上的阈值向量。
步骤6:用户可以从上述web服务组合方案列表CompServiceList中,任选择一个web服务组合方案,并据此去选择相应的web服务。
对应于步骤2中为一个用户产生的多组组组合权重值,会产生多组最优服务组合方案,进而该方法会向一个用户推荐多组方案,并且这些组合方案都是最优的。用户可以从返回的组合方案列表中进行选择。
此外,本发明中一个web服务p的web服务质量表示为表示web服务p的第i个属性的值,i=1,…,M;一个用户需要的组合web服务表示为 ( ws 1 k 1 , ws 2 k 2 , . . . , ws Nk N ) , ws jk j ∈ CWS j , j = 1 , . . . , N , 其中N表示用户最终需要的组合web服务中需要包含的web服务数;CWSj表示满足同一个功能的第j组所有web服务;web服务满足同一个功能表示给定同样的web服务输入参数返回相同的输出参数;表示从所有web服务CWSj中选取第kj个web服务作为最终组合web服务中实现第j个功能的web服务。
实施例
下面结合附图3和一个范例对本发明做进一步详细的说明,应当指出所描述的实施例仅是为了说明的目的,而不是对本发明范围的限制。
假设一位手机用户从一个媒体提供商处请求最新的新闻资讯,该新闻资讯信息包含两部分:视频和文本。编码web服务是对视频和文本进行编码的Web服务,压缩web服务是对编码进行压缩以便在网络上进行高效传输的Web服务,解码web服务是对压缩的编码进行解压缩和解码的Web服务。下表是该三个Web服务的虚构的候选web服务集合中每一个候选web服务在价格和时耗上的值的说明。
表1.初始候选web服务集及相关属性信息
假定该用户对价格和时耗的偏好程度分别为[0.2,0.4]和[0.7,0.8],且对组合web服务价格的要求为“不超过28”,对时耗的要求为“不超过6”,且用户对上述需求的确信度为0.8。则依据我们的方法,首先对偏好权重进行离散化处理。由于范围长度分别为0.2和0.1,所以离散化取值个数比例为2:1,假定分割间隔为0.1,则[0.2,0.4]中离散化取值为{0.25,0.35},[0.7,0.8]离散化取值为{0.75},然后,对离散化取值进行全组合产生两个具体的权重值即(0.25,0.75)和(0.35,0.75),归一化后为(0.25,0.75)和(0.23,0.77)。由于没有非数值型的质量约束,故而,步骤3被跳过。
依据用户需求模型和候选web服务集的大小确定k值的大小。假定我们计算出该用户对应的k值为3。(具体获得k值的过程,通常需要从大量历史数据中进行挖掘,以获得k值与用户需求模型和候选web服务集大小的最佳对应关系)
下面分别考虑权重(0.25,0.75)和(0.23,0.77)下,利用分层迭代两两组合计算可能最优解。
当权重为(0.25,0.75)时,我们首先计算候选web服务的中各个属性的最值情况。
表2.各个候选web服务集中各属性的最值情况
从而计算各个web服务的阈值指示器,由于价格和时耗都是negative属性,因而产生的会是上限指示。
表3.各个候选web服务集的阈值指示器
据此ws14被过滤掉。进行两两组合,假定WS1和WS2组合成一组,WS3独立成一组。
表4.两两组合结果及相应效用值
web服务组合 价格 时耗 效用值
(ws11,ws21) 20 3 0.7500
(ws11,ws22) 18 4 0.6250
(ws11,ws23) 18.5 3.5 0.7188
(ws11,ws24) 17 5 0.4375
(ws12,ws21) 19 4 0.5625
(ws12,ws22) 17 5 0.4375
(ws12,ws23) 17.5 4.5 0.5313
(ws12,ws24) 16 6 0.2500
(ws13,ws21) 19.5 3.5 0.6563
(ws13,ws22) 17.5 4.5 0.5313
(ws13,ws23) 18 4 0.6250
(ws13,ws24) 16.5 5.5 0.3438
(ws31) 10 1 0.7500
(ws32) 9 2 0.4750
(ws33) 7.5 3 0.2500
(ws34) 8.2 2.8 0.2550
进入下一轮迭代的web服务为:
表5.进入第二轮迭代的候选web服务
web服务编号 价格 时耗 效用值
(ws11,ws21) 20 3 0.7500
(ws21,ws23) 18.5 3.5 0.7188
(ws13,ws21) 19.5 3.5 0.6563
(ws31) 10 1 0.7500
(ws32) 9 2 0.4750
(ws34) 8.2 2.8 0.2550
计算各个属性的最值信息。
表6.第二轮迭代的候选web服务集属性的最值信息
计算阈值指示器。
表7.第二轮迭代的候选web服务集的阈值指示器
从而(ws11,ws21)和(ws31)被过滤。进行两两组合,WS1,2和WS3组合成一组。
表8.第二轮迭代的两两组合结果及相应效用值
web服务组合 价格 时耗 效用值
(ws11,ws23,ws32) 27.5 5.5 0.8889
(ws11,ws23,ws34) 26.7 6.3 0.2500
(ws13,ws31,ws32) 28.5 5.5 0.7500
(ws13,ws21,ws31) 27.7 6.3 0.1111
从而排名在前3位的为(ws11,ws23,ws32)(ws13,ws21,ws32)(ws11,ws23,ws24),由于这是最后一轮迭代,故而选取其中效用值最优的且满足用户质量约束的web服务组合(ws11,ws23,ws32),作为权重(0.25,0.75)时的可能最优解,记为Comp1
当权重为(0.23,0.77)时,依据同样的步骤,可以得到一个可能最优解,记为Comp2。这样,Comp1和Comp2都会返回给用户。用户可以从中任选一个组合,并据此去选择相应的web服务。

Claims (7)

1.一种云环境下用户确定度引导的web服务选择方法,其特征在于,包括以下步骤:
步骤1:对用户需求进行建模:将一个用户需求建模为五个变量,包括质量约束、偏好权重、确定度、结果期望的优化度以及期望执行时间;
其中质量约束表示为CS,CS={cm|m=1,...,M},cm表示对组合web服务第m个属性的约束,M表示组合web服务总的属性数目,质量约束包括数值型和非数值型;偏好权重表示为WA,WA={wm|m=1,...,M},wm表示对组合web服务第m个属性的偏好程度,取值范围为[0,1]内的任意区间;确定度表示为vtrade_off,其用户输入取值范围为区间[0,1];结果期望的优化度表示为Optimaldegree,其用户输入取值范围为区间[0,1];期望的执行时间表示为Timecost∈N+,N+表示整数集合;
步骤2:对用户的偏好权重WA进行离散化处理:对每个属性的偏好权重wm进行离散化,得到M个偏好权重wm的离散化取值集合Discretizedm,然后对M个离散化取值集合Discretizedm进行组合得到共组具体的组合权重值;
步骤3:利用非数值型质量约束对候选可用web服务集进行一次过滤;
步骤4:采用分层迭代两两组合方法,将每一组输入质量约束CS、组合权重值、确定度vtrade_off、候选web服务集的规模以及控制变量k∈N+值与结果的优化度Optimaldegree、执行时间Timecost进行组合对应;
利用数据挖掘中的决策树分类算法,将分层迭代两两组合中控制变量k值作为分类标签,获得在一组质量约束CS、组合权重值、确定度vtrade_off、以及候选web服务集的规模下,控制变量k与结果的优化度Optimaldegree、执行时间Timecost的关系;
步骤5:对于步骤2中每一组组合权重值,首先结合当前的质量约束CS,确定度vtrade_off、候选web服务集的规模以及结果期望的优化程度Optimaldegree,执行时间消耗Timecost,获得相应控制变量k的取值,然后采用分层迭代两两组合方法取得一组web服务组合方案;由此获得组可选的组合方案;每次对两个候选web服务集进行两两组合时,选择当前组合结果的前k个子web服务组合组成新的候选web服务集进入下一轮,反复迭代直到最后只剩下一个候选web服务集合,选择其中效用值最优的解,加入到为该用户推荐的web服务组合方案列表CompServiceList中;
步骤6:用户从上述web服务组合方案列表CompServiceList中,选择一个web服务组合方案,并据此去选择相应的web服务。
2.如权利要求1所述的一种云环境下用户确定度引导的web服务选择方法,其特征在于,步骤1中,一个web服务p的web服务质量表示为 表示web服务p的第i个属性的值,i=1,...,M;一个用户需要的组合web服务表示为 ws jk j ∈ CWS j , j = 1 , ... , N , 其中N表示用户最终需要的组合web服务中需要包含的web服务数;CWS表示满足同一个功能的第j组所有web服务;web服务满足同一个功能表示给定同样的web服务输入参数返回相同的输出参数;表示从所有web服务CWS中选取第kj个web服务作为最终组合web服务中实现第j个功能的web服务。
3.如权利要求1所述的一种云环境下用户确定度引导的web服务选择方法,其特征在于,步骤1中,质量约束CS表示用户对最终组合web服务的各个属性的约束,包括数值型和非数值型,数值型质量约束是指对web服务数值型属性的约束;非数值型质量约束是指对web服务的非数值型属性的约束。
4.如权利要求1所述的一种云环境下用户确定度引导的web服务选择方法,其特征在于,步骤2中,对用户每个属性的偏好权重wm进行离散化处理,从偏好权重wm的区间范围中离散化取值时,值的个数与区间长度成正比,即: DiscretizeNum w m ∝ length w m , 取值方法为将偏好权重wm等分为段,选取每一段的中点作为偏好权重wm的离散化取值。
5.如权利要求1所述的一种云环境下用户确定度引导的web服务选择方法,其特征在于,步骤4,5中,分层迭代的两两组合方法中,只有当本层的所有候选web服务集两两组合计算完成,才开始下一层的迭代;在每一层迭代过程中,进行三个步骤:第一,计算两个输入候选web服务集中各个web服务的数值型属性的最大值和最小值;第二,根据前述最大值、最小值以及质量约束CS进行过滤;第三,将剩下的web服务进行组合,依据效用值选取前k个组合构成新的候选web服务集进入下一轮。
6.如权利要求1所述的一种云环境下用户确定度引导的web服务选择方法,其特征在于,步骤5中,利用效用值作为服务优劣排序的标准,一个服务p的效用值Utilityp通过如下公式计算:
Utility p = Σ m = 1 M w m * V ( m )
其中,
其中表示服务p的第m个属性的值,表示所有参与此次排序比较的服务的第m个属性中的最大值,表示所有参与此次排序比较的服务的第m个属性中的最小值;正属性表示用户希望该属性值大的属性,负属性表示用户希望该属性值小的属性。
7.如权利要求1所述的一种云环境下用户确定度引导的web服务选择方法,其特征在于,步骤5中,在分层迭代的两两组合过程中使用阈值过滤,只有当web服务或web服务子组合的各个维度的属性值符合阈值向量T时,该web服务或web服务子组合才允许进入下一轮;阈值向量T用于指示进入下一轮的web服务需要满足的针对正属性的下界或针对负属性的上界约束,阈值向量T计算公式为:
其中,AC表示累加型web服务属性,MU表示累积型web服务属性;正属性表示用户希望该属性值大的属性,负属性表示用户希望该属性值小的属性;qm表示web服务的第m个属性值,WSj表示参与本轮迭代的第j个候选web服务集;表示WSi中所有web服务的第m个属性值中的最小值,表示WSi中所有web服务的第m个属性值中的最大值;表示计算施加在候选服务集WSj上的阈值向量。
CN201310432047.0A 2013-09-22 2013-09-22 一种云环境下用户确定度引导的web服务选择方法 Active CN103475730B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201310432047.0A CN103475730B (zh) 2013-09-22 2013-09-22 一种云环境下用户确定度引导的web服务选择方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201310432047.0A CN103475730B (zh) 2013-09-22 2013-09-22 一种云环境下用户确定度引导的web服务选择方法

Publications (2)

Publication Number Publication Date
CN103475730A CN103475730A (zh) 2013-12-25
CN103475730B true CN103475730B (zh) 2016-03-16

Family

ID=49800423

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201310432047.0A Active CN103475730B (zh) 2013-09-22 2013-09-22 一种云环境下用户确定度引导的web服务选择方法

Country Status (1)

Country Link
CN (1) CN103475730B (zh)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN103824127B (zh) * 2014-02-20 2017-02-08 上海交通大学 云计算环境下服务的自适应组合优化方法
CN106130768B (zh) * 2016-06-28 2019-01-18 浪潮(北京)电子信息产业有限公司 一种SaaS服务质量测评方法及装置
CN107872496A (zh) * 2016-09-28 2018-04-03 上海神计信息系统工程有限公司 一种多服务云环境下的服务云选择方法和系统
CN106649650B (zh) * 2016-12-10 2020-08-18 宁波财经学院 一种需求信息双向匹配方法
CN107197006B (zh) * 2017-05-12 2020-01-10 中国人民解放军信息工程大学 基于全局QoS分解的多约束服务选取方法及其装置
CN109194727B (zh) * 2018-08-22 2021-02-23 华南农业大学 一种基于内容的约束感知服务组合方法

Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101393562A (zh) * 2008-09-26 2009-03-25 复旦大学 组合的Web服务数据处理方法

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1753195B1 (en) * 2005-07-27 2012-03-07 Sap Ag Server computer, client device and web service implemented data processing method

Patent Citations (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101393562A (zh) * 2008-09-26 2009-03-25 复旦大学 组合的Web服务数据处理方法

Also Published As

Publication number Publication date
CN103475730A (zh) 2013-12-25

Similar Documents

Publication Publication Date Title
CN103475730B (zh) 一种云环境下用户确定度引导的web服务选择方法
JP6457693B1 (ja) 予測データ分析のためのシステムおよび技術
Huo et al. Discrete gbest-guided artificial bee colony algorithm for cloud service composition
CN103348342B (zh) 基于用户话题简档的个人内容流
Whaiduzzaman et al. Cloud service selection using multicriteria decision analysis
CN103502899B (zh) 动态预测建模平台
Vahidi Farashah et al. A hybrid recommender system based-on link prediction for movie baskets analysis
CN108089921A (zh) 用于云端大数据运算架构的服务器及其运算资源最佳化方法
Purohit et al. A classification based web service selection approach
CN105874447A (zh) 用于被引导用户动作的系统和方法
CN105320724A (zh) 用于优化用于学习排序的非凸函数的新探索
Zheng et al. Dual similarity regularization for recommendation
CN105488366A (zh) 一种数据权限的控制方法和系统
Kontogianni et al. Designing a smart tourism mobile application: User modelling through social networks’ user implicit data
Choi et al. Quality evaluation and best service choice for cloud computing based on user preference and weights of attributes using the analytic network process
Ben-Shimon et al. An ensemble method for top-N recommendations from the SVD
Ali et al. Inferring context with reliable collaborators: a novel similarity estimation method for recommender systems
Obulaporam et al. GCRITICPA: A CRITIC and grey relational analysis based service ranking approach for cloud service selection
CN117273018A (zh) 信息处理方法、信息处理装置、计算机设备及存储介质
KR20170062915A (ko) 개인화된 추천 서비스 제공 방법 및 그 장치
Ma et al. User preferences-aware recommendation for trustworthy cloud services based on fuzzy clustering
Wang et al. Random partition factorization machines for context-aware recommendations
Chen et al. A user dependent web service QoS collaborative prediction approach using neighborhood regularized matrix factorization
Pawar et al. Multi-objective optimization model for QoS-enabled web service selection in service-based systems
Singh et al. Multi-criteria recommendation system based on deep matrix factorization and regression techniques

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB02 Change of applicant information

Address after: 210000, 19 Building, Jiangsu science and technology building, 37 Guangzhou Road, Jiangsu, Nanjing

Applicant after: JIANGSU SANLENG SMARTCITY&IOT SYSTEM CO., LTD.

Address before: 210000, 19 Building, Jiangsu science and technology building, 37 Guangzhou Road, Jiangsu, Nanjing

Applicant before: Jiangsu Sanleng Technology Development Co., Ltd.

COR Change of bibliographic data
C14 Grant of patent or utility model
GR01 Patent grant