欢迎来到知嘟嘟! 联系电话:13095918853 卖家免费入驻,海量在线求购! 卖家免费入驻,海量在线求购!
知嘟嘟
我要发布
联系电话:13095918853
知嘟嘟经纪人
收藏
专利号: 2018109392783
申请人: 深圳市车主云科技有限责任公司
专利类型:发明专利
专利状态:已下证
专利领域: 计算;推算;计数
更新日期:2024-02-23
缴费截止日期: 暂无
价格&联系人
年费信息
委托购买

摘要:

权利要求书:

1.一种基于OWL‑S的Web服务综合评分计算方法,其特征在于,所述Web服务综合评分计算方法包括以下步骤:第一步、计算领域本体中两个概念A和B之间的语义相似度;

第二步、结合第一步的概念相似度计算方法,给出服务S1与服务S2输入相似度Siminput的计算方法;

第三步、结合第一步的概念相似度计算方法,给出服务S1与服务S2输出相似度Simoutput的计算方法;

第四步、结合第二步与第三步求得的服务输入相似度Siminput与服务输出相似度Simoutput计算服务S1与服务S2的功能相似性FunctionalSim(S1,S2),计算公式如下:FunctionalSim(S1,S2)=w1×Siminput+w2×Simoutput,其中权重w1和w2是0和1之间的实数值并且总和为1,它们表示服务消费者对输入相似性和输出相似性认定的重要性;

第五步、对用户设定的QoS属性进行权重计算,这里结合层次分析法AHP的机制,构建一个成对比较的判断矩阵,其中每个元素通过预定义分数对其他每个元素进行评分,所述分数从1到9,表示它们的相对重要性,该1‑9的标度方法符合人们进行判断时的心理习惯,表1给出了相应的绝对数标度;

表1

QoS属性权重计算的步骤如下:

步骤(5.1)确定AHP方法要使用的指标,进行步骤(5.2);

步骤(5.2)建立基于用户偏好的n阶成对比较矩阵A[n][n],进行步骤(5.3);

步骤(5.3)基于成对比较矩阵A计算每个QoS属性的重要性权重;

第六步、根据第五步构建的成对比较矩阵A和第五步所得的权重向量W验证用户判断的一致性,在AHP方法中,如果相应的一致性比率CR小于0.1,则认为用户判断具有满意的一致性,否则需要主观进行修正,直到满足一致性要求;

第七步、通过QoS评分与功能相似度加权计算得出服务的综合评分结果;

所述第七步中,基于Web服务描述语言OWL‑S,采用四元组来表示语义服务描述:WS=,其中:N代表服务的名称,D代表服务的文本描述,两者构成服务的基本属性;

服务的功能属性包括I和O,分别表示服务WS的输入和输出接口参数的属性,每个接口都是一组参数集合,I={i1,…,im},元素i1,…,im代表领域本体中服务WS的输入参数所对应的语义概念;O是服务的输出集合,O={o1,…,on},元素o1,…,on代表领域本体中服务WS的输出参数所对应的语义概念;

使用一组服务参数,包含名称和参数值;将OWL‑S和QoS本体连接后,QoSProperty成为OWL‑S ServiceParameter的子类,qosPropertyName和qProperty分别为OWL‑S serviceParameterName和sParameter属性的子属性;

每个QoS属性是由字符串形式的名称和一组特征来定义的,描述如下:

Value:代表QoS属性的值,对于服务提供者,它代表所提供服务的一种QoS属性;但对于服务消费者,它表示QoS属性的阈值;

Type:该特征用于区分两种类型的QoS:

收益型benefit,在这种情况下,用户指定的QoS属性值表示要考虑的最小值;

成本型cost,在这种情况下,用户指定的QoS属性值表示要考虑的最大值;Unit:QoS属性的度量单位;

Weight:QoS权重,用于指定QoS属性的重要性;

Confidence:表示用户对其偏好的置信度;

服务综合评分的计算方法的步骤如下:

步骤(7.1)结合第五步与第六步的计算方法对用户确定的QoS权重进行一致性验证,若所得的一致性比率CR小于0.1,则进行步骤(7.2),否则反馈QoS权重需用户重新修订的结果,计算结束;

步骤(7.2)建立服务综合得分的向量compScore[Services.size],QoS分数向量qosScore[Services.size]以及记录标准化QoS值的QoSMtx矩阵,其中Services.size表示服务集合的服务数量,QoSMtx中的行表示候选Web服务,列表示QoS属性,进行步骤(7.3);

步骤(7.3)遍历服务集合Services,若遍历完成,则计算结束,否则取出服务集合Services的下一个服务Si,进行步骤(7.4);

步骤(7.4)遍历服务Si的中的QoS属性集合Si.qosProperties,若遍历完成,则进行步骤(7.7),否则从Si.qosProperties中取出下一个属性Si.Pj,进行步骤(7.5);

步骤(7.5)由于每个QoS属性值的度量区间各不相同,需要将QoS值归一化,使得取值范围在0到1之间,以确保每个QoS属性采用相同的跨度来评估;因此需要计算QoS属性Si.Pj的归一化值nv(pij),并将此值赋给QoSMtx[i][j];

步骤(7.6)若属性Si.Pj满足用户定义的QoS约束QoSConstraints,则计算属性Si.Pj的QoS得分,qosScore[i]再对QoS得分进行累加记录,整个过程的计算公式如下所示:qosScore[i]+=(QoSMtx[i][j]×QoSConstraint[j].Weight)其中,QoSConstraint[j].Weight表示用户对属性Si.Pj定义的权重,返回步骤(7.4),否则直接返回步骤(7.4);

步骤(7.7)结合第四步的功能相似性计算方法求出当前服务需求Sneed与服务Si的功能相似性FunctionalSim(Si,Sneed),再结合步骤(7.6)所得的QoS得分qosScore[i]对服务Si综合得分进行加权计算,并把最后结果赋给compScore[i],计算公式如下:compScore[i]=w1*FunctionalSim(Si,Sneed)+w2*qosScore[i]其中w1,w2并分别表示功能相似度权重与QoS评分权重,返回步骤(7.3)。

2.如权利要求1所述的基于OWL‑S的Web服务综合评分计算方法,其特征在于,所述步骤(7.5)中,计算步骤如下:步骤(7.5.1)若属性Si.Pj为收益型属性时,进行步骤(7.5.2),若属性Si.Pj为成本型属性时,则进行步骤(7.5.3);

步骤(7.5.2)nv(pij)的计算公式如下:

其中,v(pij)表示服务Si在属性Si.Pj的原始取值,vmax(pj)表示服务集合Services每个服务中与Si.Pj属于同一属性的最大值,vmin(pj)表示服务集合Services每个服务中与Si.Pj属于同一属性的最小值,进行步骤(7.6);

步骤(7.5.3)nv(pij)的计算公式如下:

进行步骤(7.6)。

3.如权利要求1或2所述的基于OWL‑S的Web服务综合评分计算方法,其特征在于,所述第一步中,计算领域本体中两个概念A和B之间的语义相似度的过程如下:步骤(1.1)若概念A和B是相同的或者它们被声明为equivalent classes,则概念A,B的相似度Simconcept为1,否则进行步骤(1.2);

步骤(1.2)若概念A直接或间接为概念B的一个子类,则概念A,B的相似度Simconcept计算公式如下:其中prop(A)与prop(B)分别表示概念A与概念B的属性集合,

Size(prop(B))与Size(prop(A))分别表示概念B和概念A的属性个数,否则进行步骤(1.3)步骤(1.3)若概念B直接或间接为概念A的一个子类,则概念A,B的相似度Simconcept计算公式如下:否则进行步骤(1.4);

步骤(1.4)若概念A与概念B没有父子关系,但两个概念直接或间接有一个共同的父类概念C,则采用基于朴素贝叶斯模型的单词语义相似度度量方法,首先分别遍历概念A与概念B的各个属性,通过ComputeFeature函数对概念A与概念B的属性名称进行特征提取,然后采用样本训练后的条件概率分布列和调整因子,计算概念属性之间的相似度Simword,根据概念属性之间的相似度Simword与相似判定因子η的比较,判断两个属性是否为同一属性并进行统计,最后计算出概念A,B的相似度Simconcept;

步骤(1.5)若概念A和概念B的关系在上述情况中均不符合,则概念A,B的相似度Simconcept设为0。

4.如权利要求3所述的基于OWL‑S的Web服务综合评分计算方法,其特征在于,所述步骤(1.4)的步骤如下:步骤(1.4.1)设变量i表示概念A与概念B中属性相同的个数并置初始值为0,进行步骤(1.4.2);

步骤(1.4.2)若概念A的属性集合prop(A)遍历完成,则进行步骤(1.4.7),否则从prop(A)取出下一个prop(A)j并将其从prop(A)中移除,进行步骤(1.4.3);

步骤(1.4.3)若概念B的属性集合prop(B)遍历完成,则返回步骤(1.4.2),否则从prop(B)取出下一个prop(B)k并将其从prop(B)中移除,进行步骤(1.4.4);

步骤(1.4.4)基于朴素贝叶斯模型,结合WorkNet英语词典,通过ComputeFeature函数对prop(A)j与prop(B)k的属性名称进行特征提取进而得出L(prop(A)j,prop(B)k)和D(prop(A)j,prop(B)k),其过程如下:计算每个属性名称的单词语义,由于每个单词对应一个或多个语义,那么每一单词对也就对应一个或多个语义对,将与单词对相应的所有语义对中距离最短的语义节点距离定义为该单词对距离L(prop(A)j,prop(B)k),并将语义节点距离最短的语义对深度定义为单词对深度D(prop(A)j,prop(B)k),已知属性名称prop(A)j存在于语义节点vj1,vj2,…,vjn的同义词组中,属性名称prop(B)k存在于语义节点vk1,vk2,…vkm的同义词组中,那么prop(A)j与prop(B)k的距离计算公式与深度计算公式如下:其中L(vja,vkb)表示语义节点vja与语义节点vkb的距离,D(vja,vkb)表示语义对(vja,vkb)的深度;

进一步,依据朴素贝叶斯模型的训练集生成均值函数LW(i)和DW(o),再利用均值函数LW(i)和DW(o)计算条件概率分布列P(L(prop(A)j,prop(B)k)|C)和P(D(prop(A)j,prop(B)k)|C),其中C为单词类别分类,其值域为{U,N},其中U代表“一致”,N代表“不一致”,最后计算调整因子α和β,计算公式如下:之后转入步骤(1.4.5);

步骤(1.4.5)基于朴素贝叶斯模型,将本体概念属性的特征L(prop(A)j,prop(B)k)和D(prop(A)j,prop(B)k)注入到步骤(1.4.4)所得的条件概率分布列中,并依次提取条件概率V1=P(L(prop(A)j,prop(B)k)=i|C=U),V2=P(D(prop(A)j,prop(B)k)=o|C=U),V3=P(L(prop(A)j,prop(B)k)=i|C=N)与V4=P(D(prop(A)j,prop(B)k)=o|C=N),最后结合步骤(1.4.4)中的调整因子α和β来计算prop(A)j与prop(B)k之间的相似度Simword,计算公式如下:Simword(prop(A)j,prop(B)k)=(αV1×V2)/(αV1×V2+βV3×V4),进行步骤(1.4.6);

步骤(1.4.6)若Simword大于或等于相似判定因子η,则prop(A)j与prop(B)k为同一属性并将变量i加1,返回步骤(1.4.2),否则返回步骤(1.4.3);

步骤(1.4.7)计算概念A,B的相似度Simconcept,计算公式如下:其中i表示概念A与概念B中属性相同的个

数,prop(A)与prop(B)分别表示概念A与概念B的属性集合,Size(prop(B))与Size(prop(A))分别表示概念B和概念A的属性个数,进行步骤(1.5)。

5.如权利要求1或2所述的基于OWL‑S的Web服务综合评分计算方法,其特征在于,所述第二步中,服务S1与服务S2输入相似度Siminput的计算方法的过程如下:步骤(2.1)创建服务输入参数相似度最大匹配数组InSim并初始化,进行步骤(2.2);

步骤(2.2)将服务S1的输入参数数量减去服务S2的输入参数数量得到参数数量差值d,进行步骤(2.3);

步骤(2.3)若d小于或等于0,则将服务S1设为Sshort,服务S2设为Slong,否则将服务S2设为Sshort,服务S1设为Slong,进行步骤(2.4);

步骤(2.4)遍历Slong中的输入参数,若遍历完成,则进行步骤(2.8),否则从Slong中取出下一个输入参数longi,进行步骤(2.5);

步骤(2.5)遍历Sshort中的输入参数,若遍历完成,则返回步骤(2.4),否则从Sshort中取出下一个输入参数shortj,进行步骤(2.6);

步骤(2.6)根据第一步的概念相似度计算方法计算参数longi与参数shortj的相似度Simij,进行步骤(2.7);

步骤(2.7)将Simij与InSim[i]进行比较,若Simij大于InSim[i],则将InSim[i]的值设为Simij的值,否则InSim[i]值为原值,返回步骤(2.5);

步骤(2.8)计算服务S1与服务S2输入相似度Siminput,计算公式如下:其中Size(Slong.Input)与Size(Sshort.Input)分别表示服务Slong的输入参数个数与服务Sshort的输入参数个数,|d|表示两个服务的输入参数数量差值,InSim为输入参数的相似度最大匹配数组。

6.如权利要求1或2所述的基于OWL‑S的Web服务综合评分计算方法,其特征在于,所述第三步中,服务S1与服务S2输出相似度Simoutput的计算方法的过程如下:步骤(3.1)创建服务输出参数相似度最大匹配数组OutSim并初始化,进行步骤(3.2);

步骤(3.2)将服务S1的输出参数数量减去服务S2的输出参数数量得到参数数量差值d,进行步骤(3.3);

步骤(3.3)若d小于或等于0,则将服务S1设为Sshort,服务S2设为Slong,否则将服务S2设为Sshort,服务S1设为Slong,进行步骤(3.4);

步骤(3.4)遍历Slong中的输出参数,若遍历完成,则进行步骤(3.8),否则从Slong中取出下一个输出参数longi,进行步骤(3.5);

步骤(3.5)遍历Sshort中的输出参数,若遍历完成,则返回步骤(3.4),否则从Sshort中取出下一个输出参数shortj,进行步骤(3.6);

步骤(3.6)根据第一步的概念相似度计算方法计算参数longi与参数shortj的相似度Simij,进行步骤(3.7);

步骤(3.7)将Simij与OutSim[i]进行比较,若Simij大于OutSim[i],则将OutSim[i]的值设为Simij的值,否则OutSim[i]值为原值,返回步骤(3.5);

步骤(3.8)计算服务S1与服务S2输出相似度Simoutput,计算公式如下:其中Size(Slong.Output)与Size(Sshort.Output)分别表示服务Slong的输出参数个数与服务Sshort的输出参数个数,|d|表示两个服务的输出参数数量差值,OutSim为输出参数的相似度最大匹配数组。