一种基于位置聚类的协同式Web服务性能预测方法

文档序号:9670912阅读:290来源:国知局
一种基于位置聚类的协同式Web服务性能预测方法
【技术领域】
[0001] 本发明设及Web服务质量预测技术,具体设及一种用于Web服务选择或推荐的基 于位置聚类的协同式Web服务性能预测方法。
【背景技术】
[0002]Web服务是自描述、自包含的可用网络模块,用来帮助实现通过远程调用来完成 不同机器之间的交互操作,并成为了构造分布式系统、模块化应用程序和面向服务应用集 成的主要技术,如电子商务、车载系统、多媒体服务等。随着网络上Web服务数量的快速增 长,为用户推荐最优的服务变得更具有挑战性。为了能在大量的可供选择的功能相同的 Web服务集中找到最优的服务,Web服务的质量,即性能被广泛用来描述和评价Web服务 的非功能属性。Web服务的性能参数包括响应时间(RTT,Round-化ipTime)、吞吐量灯P, T虹OU曲-put)、可靠性(Avail油ility)等。由于性能在成功建立面向服务的应用中的至关 重要性,基于性能预测的Web服务选择和推荐方法成为近几年的一个研究热点。
[0003] 传统的基于性能的Web服务选择的研究都有一个通用的假设,即所有Web服务的 性能值都是可用且准确的。然而,在现实中,运个前提不一定是真实的,用户想要总能获取 到服务的性能值是不切实际的。运是由于Web服务的性能值容易受到不可预测的网络环 境和用户环境(例如:用户位置,用户网络条件等)的影响,从而使得不同的用户在相同的 Web服务上所观察到的性能值不同。换而言之,用户在进行服务选择时,不能直接使用另一 个用户对服务的性能评价值。并且,由于现实中Web服务的调用既耗时间又耗资源,因此用 户想要通过自己调用Web服务来评价所有候选服务W获取性能信息是不实际的。此外由于 服务用户需要评价的候选服务过多,且还有一些合适的Web服务未被发现,使得服务的性 能信息大量缺失。针对运些未知的性能进行预测是基于性能的Web服务选择和推荐的重要 依据。
[0004] 现有技术中,最常用的预测性能缺失值的方法存在W下缺陷:1)通过计算用户或 服务的相似度来进行预测的方法无法为冷启动用户提供准确的性能预测,并且有可能因为 数据稀疏而导致性能预测失败。2)W往的方法可能遭遇数据稀疏、冷启动问题,降低了预测 精度,并且在面对大量用户和服务时,可扩展性欠佳。此外,有一些研究提出了基于性能相 似度对用户或者服务进行聚类,然后用聚类的中屯、性能值来对用户-服务性能矩阵进行预 填充,可W解决上述问题,但是计算代价比较高,并且当数据非常稀疏时,相似度难W准确 度量,从而导致性能预测精度降低。

【发明内容】

[0005] 本发明要解决的技术问题是:针对现有技术的上述问题,提供一种能在覆盖率和 预测精度和可扩展性之间得到最好的平衡,预测成功率高、通用性好、性能高的基于位置聚 类的协同式Web服务性能预测方法。
[0006] 为了解决上述技术问题,本发明采用的技术方案为:
[0007] -种基于位置聚类的协同式Web服务性能预测方法,包括W下步骤:
[0008] 1)根据用户和服务的位置信息,对自治系统号即AS号相同的用户和服务分别进 行聚类;
[0009] 2)随机挑选用户来作为活跃用户,同时随机挑选服务来作为活跃服务,根据活跃 用户的历史性能记录和聚类信息,利用用户聚类和服务聚类的结果分别对用户-服务矩阵 中空缺的性能值进行数据平滑填充,其中历史性能记录包括响应时间、吞吐量、可靠性、价 格和可用性记录,且用户-服务矩阵记录着每个用户调用Web服务的历史性能。
[0010] 如对步骤。中平滑填充后的聚类,计算聚类后每个集群的质心并计算每个用户 集群的质屯、和活跃用户的相似性,W及每个服务聚类的质屯、和每个随机挑选的活跃服务的 相似性;利用快速排序算法对相似聚类进行降序排序,找到最相似的候选集群,从而完成邻 居预选择;
[0011] 4)完成邻居预选择后,对活跃用户根据其原始评分和平滑评分分别赋予不同的权 重,并计算活跃用户和每个用户候选集群中用户的相似性,W及计算活跃服务和每个服务 候选集群的相似性,最终找到与活跃用户和活跃服务相似的邻居集合,完成相似邻居的选 择;
[001引W得到活跃用户和活跃服务的相似邻居集合后,通过加入权重信息,利用Top-K个最相似的用户来为活跃用户预测未知服务的性能值和Top-K个最相似的服务来为活跃 服务预测未知服务的性能值,完成基于用户的性能预测和基于服务的性能预测;
[0013] 6)根据预测的性能值,通过加入调节因子对基于用户的性能值预测和基于服务的 性能值预测进行整合,从而得到最终预测的性能值;
[0014] 7)对所有的候选服务进行排序,推荐Top-K个服务给活跃用户,完成推荐。
[0015] 所述的基于位置聚类的协同式Web服务性能预测方法,所述步骤1)中对AS号相 同的用户和服务分别进行聚类的详细步骤包括:
[0016] 2. 1)首先获取用户和服务的位置信息,用户和服务的位置信息即该用户和服务所 在网络的AS号;
[0017] 2. 2)获取用户的位置信息后,将具有相同AS号的用户聚为一组.假设用户可聚为 k组,即用户集U=扣,U2,. . . 被聚类为孩,媒…巧1;
[0018] 2. 3)获取服务的位置信息后,将具有相同AS号的服务聚为一组.假设服务可聚为 kl组,即服务集S={Si,S2,. . .S。}被聚类为识片,..片-1}。
[0019] 所述的基于位置聚类的协同式Web服务性能预测方法,所述步骤2)中具体是指根 据式(1)进行基于用户聚类的数据平滑;
[0020] RJ民。W 基于用户聚类数据平滑情况下用户M对服务/有评分 及"(Z)= 1 。Cl) I及'脚 基于用户聚类数据平滑情况下巧户H对服务Z'无评分
[0021] 式(1)中,見佩是对用户未评分服务的平滑值,对于用户U,簇e"€沿,皆...,片}, 利用如下公式计算&
[0022] 尽(/) =京+A&.(/) t?)
[0023] 其中系表示用户U对所有调用过的服务的平均评分,AA.O')是表示用户聚类的 平滑因子,定义如下:
[0024] Ai?c',,(〇=艺(巧,,(〇-电)/iC"(〇| (3) 邱蜡."的
[00巧]其中Cu(i)GC。,是用户U所在的簇C。中,项目t有评分的用户子集;表示对 用户U的平均评分;|Cu(i)I是用户U所在的簇C。中,对i有评分的用户数。
[0026] 所述的基于位置聚类的协同式Web服务性能预测方法,所述步骤2)具体是指根据 式(4)进行基于服务聚类的数据平滑;
[0027] f巧.(的基于服务聚类的数据平滑情况下用户《对服务/有评分 巧,'(")=, (4; L巧知)基于服务聚类的数据平滑情况下用户《对服务/无评分 [002引式(4)中,其中矣,批)是用户未对服务进行评分的平滑值,Ri(U)是用户对服务有评 分的真实值,对于用服务i,G ....Cfij,利用如下公式计算々批):
[0029] 爲,(")=京-hzlA(") 巧)
[0030] 其中^表示所有用户对服务i有评分的平均评分,(W)是表示服务聚类的平 滑因子:
[0031] A/?.U/)= -/?..)/1C-(IZ)I(b'> 昨巴倘'
[003引其中Ci (i) G Cl,是服务i所在的簇C冲,被用户评分过的服务子集;专表示所有 用户对服务i'的平均评分;ICi(U)I是项目i所在的簇Ci中被用户评分过的服务数。
[0033] 所述的基于位置聚类的协同式Web服务性能预测方法,所述步骤3)中具体是指 根据式(7)进行基于用户的邻居预选择,计算每个用户组的质屯、与活动用户之间的相似性C,并根据式(8)进行基于服务的邻居预选择,计算每个服务组C与活动服务之间的相 似性5/气C;
(7)
[003引式(7)中,焉^表示对用户U。的平均评分;/?" (/)表示用户U。对服务i的评分;ARc(i)是表示用户聚类的平滑因子,计算各组和活跃用户之间的相似性之后,对各个群组 (8) 进行降序排序,找到相似度较高的群组作为候选群组,
[0037] 式做中,^表示对用户i。的平均评分;馬〇/佣户U对服务i。的评分;ARc(U) 是表示服务聚类的平滑因子,在计算出各个群组和活动服务之间的相似性之后,对其进行 降序排序,从而找到相似性最高的群组作为候选群组。
[0038] 所述的基于位置聚类的协同式Web服务性能预测方法,所述步骤4)中具体是指根 据式(9)将用户对服务的评分值,在预测时根据原始评分和平滑评分赋予不同的权重,并 根据式(10)计算候选群组中用户与活动用户之间的相似性,根据式(11)计算候选群组中 的服务与活动服务之间的相似性;
[0039] f1-义 原始评分 …,"叫 (9) IA 平滑评分
[0040] 式巧)中,Wui为用户U对项目i的权重,A是调整原始评分和平滑评分权重的参 数,且入G化1);
(10)
[004引式(10)中,设《.,0')为目标用户Ua对项目i的评分,巧,。,为用户Ua对项目i的权 重;如馬".,,为活动用户U。和用户U的相似性,哀;;;为目标用户U。对
当前第1页1 2 3 4 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1