首页> 中国专利> 基于语义的网格地理信息服务匹配方法

基于语义的网格地理信息服务匹配方法

摘要

本发明公开了一种基于语义的网格地理信息服务匹配方法,包括:S1:计算服务广告和用户服务请求中各语义描述子句的相似度,所述语义描述子句用于描述网格地理信息服务功能特征,包括:服务接口子句、运行条件子句和程序逻辑子句;S2:根据服务接口子句相似度、运行条件子句相似度和程序逻辑子句相似度综合计算服务广告和用户服务请求的最终相似度;S3:将所述最终相似度和预先设定的相似度阈值比较,若大于该阈值,则返回所述服务广告给用户。本发明更加全面地、多角度地描述网格地理信息服务功能特征,并通过网格地理信息服务功能特征相似度匹配方法提高了服务发现的查准率。

著录项

  • 公开/公告号CN102006320A

    专利类型发明专利

  • 公开/公告日2011-04-06

    原文格式PDF

  • 申请/专利权人 北京大学;

    申请/专利号CN201010535097.8

  • 发明设计人 高勇;黄骞;闫梦龙;郁浩;林星;

    申请日2010-11-08

  • 分类号H04L29/08;G06F17/30;

  • 代理机构北京路浩知识产权代理有限公司;

  • 代理人王莹

  • 地址 100871 北京市海淀区颐和园路5号

  • 入库时间 2023-12-18 01:52:15

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-12-28

    未缴年费专利权终止 IPC(主分类):H04L29/08 授权公告日:20130417 终止日期:20151108 申请日:20101108

    专利权的终止

  • 2013-04-17

    授权

    授权

  • 2011-05-25

    实质审查的生效 IPC(主分类):H04L29/08 申请日:20101108

    实质审查的生效

  • 2011-04-06

    公开

    公开

说明书

技术领域

本发明涉及网格地理信息服务技术领域,特别涉及一种基于语义的网格地理信息服务匹配方法。

背景技术

随着网络技术的高速发展,越来越多的地理空间信息以服务的形式对外发布,在网格环境下各种地理空间信息服务有着不同的语义,目前迫切需要一种有效的描述和匹配方法,使得用户可以从众多复杂的地理空间信息服务集合中准确高效的检索出满足语义需求的服务。

目前国内外研究集中于基于语义本体的网格地理信息服务发现,基于web服务的本体语言(Ontology Web Language for Services,OWL-S)等描述逻辑本体技术的服务描述与匹配,然而描述逻辑虽然能准确定义服务概念,突破传统的基于关键词等纯文本服务描述所带来的歧义与多义问题,但是由于功能所限只能用于服务接口表达,导致对接口相似的服务集合的查准率较低。

发明内容

(一)要解决的技术问题

本发明要解决的技术问题是:如何提高用户的服务请求在地理信息服务系统中的服务查准率。

(二)技术方案

为解决上述问题,本发明提供了一种基于语义的网格地理信息服务匹配方法,包括以下步骤:

S1:计算服务广告和用户服务请求中各语义描述子句的相似度,所述语义描述子句用于描述网格地理信息服务功能特征,包括:

服务接口子句,用于通过服务共享词典实现输入输出参数的语义描述;

运行条件子句,包括前置条件和后置条件,前置条件采用一阶逻辑断言工具描述服务运行前地理空间数据的特征,以及服务运行的必要条件,后置条件采用一阶逻辑断言工具主要描述服务运行后地理空间数据的改变;

程序逻辑子句,用于形式化描述网格地理信息服务对于空间数据的操作过程;

S2:根据服务接口子句相似度、运行条件子句相似度和程序逻辑子句相似度综合计算服务广告和用户服务请求的最终相似度;

S3:将所述最终相似度和预先设定的相似度阈值比较,若大于该阈值,则返回所述服务广告给用户。

其中,所述步骤S1中计算服务接口子句相似度步骤包括:

计算服务广告和用户服务请求中服务接口子句的输入参数的对应关系:{(Iai,Irj)|1<i<m,1<j<n},其中,Iai为服务广告中的输入参数,Irj为服务请求中的输入参数,m为服务广告中的输入参数总个数,n为服务请求中的输入参数总个数,则输入参数相似度为:

Similarityinput=Σsc(Iai,Iri)k

其中,k为{(Iai,Irj)|1<i<m,1<j<n}中的要素数量,

计算服务广告和用户服务请求中服务接口子句的输出参数的相似度为:

Similarityoutput=sc(Oa,Or)

其中,Oa和Or分别为服务广告和服务请求中的输出参数,

服务广告和用户服务请求中服务接口子句相似度为:

Similarityinterface=Similarityinput+Similarityoutput2

其中,其中,C1和C2为描述输入输出参数的逻辑概念,l1和l2分别为C1和C2的逻辑概念层次,Dis(C1,C2)为两个概念在本体框架中的路径长度,其计算公式为:Dis(c1,c2)=length(c1,ca)+length(c2,ca),其中,Ca为C1和C2共同的祖先节点,length(ci,cj)为其在本体框架中概念树上的路径长度,a、b、c分别为调节参数,且a>0,b>0,c>0。

其中,所述步骤S1中计算运行条件子句相似度步骤包括:

依据霍尔规则将描述逻辑概念C1和C2转化为集合i1和i2,集合i1和i2的相似度为:

sf(i1,i2)=sf(p,l,q)=w×l+1l+p+2+(1-w)×l+1l+q+2

其中p为包含在i1中但不包含在i2中的要素数量;l为包含在i1中也包含在i2中的要素数量;q为包含在i2中但不包含在i1中的要素数量,w为权重;

然后提取所述运行条件子句中的最小概括子句,对于霍尔规则C1和C2,若C=i0∧...∧iw是C1和C2的最小概括子句,其相似度计算公式如下:

fs(C1,C2)=sf(v1-v,v,v2-v)×sf(o1-o,o,o2-o)+avg({sfs(l1i,l2i)}i=1...v)

其中v1、v2和v分别是C1、C2和C中谓词的数目,o1、o2和o分别是C1、C2、和C中变量的数目,sf(k1-k,k,k2-k)和sf(o1-o,o,o2-o)衡量了霍尔规则中谓词和变量相似度。l1i∈C1,l2i∈C2是最小概括子句中li(i=1,...w)在C1、C2中的映射谓词,sfs(l1i,l2i)为最小概括子句相似度,衡量最小概括子句所对应的映射谓词之间的相似度。

则前置条件相似度为:

SimilarityPre=fs(C Pr eadv,C Pr ereq)

其中,C Pr eadv为服务广告前置条件所对应的霍尔规则,C Pr ereq为服务请求前置条件所对应的霍尔规则,

则后置条件相似度为:

SimilarityPost=fs(C P ostadv,C P ostreq)

其中,C P ostadv为服务广告前置条件所对应的霍尔规则,C P ostreq为服务请求前置条件所对应的霍尔规则,

运行条件子句相似度为:

Similaritycondition=SimilarityPre+SimilarityPost2.

其中,所述步骤S1中程序逻辑子句相似度为:

Similarityprogram=fs(C Pr ogramadv,C Pr ogramreq)

其中,C Pr ogramadv为服务广告的程序逻辑子句所对应的霍尔规则,C Pr ogramreq为服务请求的程序逻辑子句对应的霍尔规则。

其中,所述步骤S2中计算服务广告和用户服务请求的最终相似度具体为:

Similarity=a1×Similarityinterface+a2×Similaritycondition+a3×Similarityprogram

其中,a1、a2、a3分别为调节参数,a1>0,a2>0,a3>0,且a1+a2+a3=1。

其中,所述服务接口子句、运行条件子句和程序逻辑子句是通过扩展语义web服务描述语言WSDL-S定义的,具体为:

使用WSDL-S的默认扩展方法,在<types>标签中定义服务接口子句中的输入输出参数;

在<interface>标签中扩展子标签<wssem:precondition>和<wssem:postcondition>定义前置和后置条件;

在<interface>标签中扩展子标签<wssem:program>定义程序逻辑。子句。

(三)有益效果

本发明通过服务接口子句、运行条件子句和程序逻辑子句,使用表达能力更强的一阶逻辑更加全面地、多角度地描述网格地理信息服务功能特征,并通过网格地理信息服务功能特征相似度匹配方法提高了服务发现的查准率。

附图说明

图1是本发明的实施例的一种基于语义的网格地理信息服务匹配方法流程图。

具体实施方式

下面结合附图和实施例,对本发明的具体实施方式作进一步详细描述。以下实施例用于说明本发明,但不用来限制本发明的范围。

如图1所示,本发明的实施例的一种基于语义的网格地理信息服务匹配方法流程图,包括:

步骤S101,计算服务广告和用户服务请求中各语义描述子句的相似度,所述语义描述子句用于描述网格地理信息服务功能特征,包括:服务接口子句、运行条件子句和程序逻辑子句,这三个描述子句对网格地理信息服务功能特征进行多角度表达

服务接口子句,描述服务的外部数据流,即输入输出参数,该子句继承了目前常用服务语义描述方法与技术,使用描述逻辑本体定义服务接口数据类型。在网格地理信息服务描述中通常使用描述逻辑定义地理空间数据类型概念层次关系,并实现领域本体库作为可以体现语义特征的服务共享词典,并通过服务共享词典实现输入输出参数的语义描述,其中,服务共享词典包含服务描述所需的关键术语。

服务接口子句分为输入参数子句和输出参数子句,表示为:

IN:PI1:T1,...,PIn:Tn

OUT:PO:T

其中IN、OUT分别为输入输出参数子句关键词,PI1...PIn、PO分别为输入输出参数变量名称,而T1...Tn、T分别对为相应的数据类型。

运行条件子句,描述输入输出参数的特征,在形式上描述输入输出参数的变化。包括前置条件(PRECONDTION)和后置条件(POSTCONDITION),前置条件采用一阶逻辑断言工具描述服务运行前地理空间数据的特征,以及服务运行的必要条件,后置条件采用一阶逻辑断言工具主要描述服务运行后地理空间数据的改变。

运行条件子句使用的一阶逻辑断言由变量声明谓词C(ai)以及数据判断谓词P(ai,…,al)组成,表示为:

PRECONDTION/POSTCONDITION:C1(a1)∧...∧Cn(an)∧P1(ai,…,al)∧...∧Pm(ak,…,aj)

其中变量声明谓词用于声明变量的名称以及数据类型;而数据判断谓词则通过变量之间的关系表达地理数据特征,包括空间关系(方位关系、度量关系以及拓扑关系),空间范围,网络连通性等。

而为了表达服务对地理空间数据的操作效果,本发明引入命名谓词LET(o,o′),以保存在特定时点的数据状态,其中LET是命名谓词名,o为对象名称,o′为被命名对象。

程序逻辑子句,用于形式化描述网格地理信息服务对于空间数据的操作过程,以表达服务功能内部实现细节。即使两个服务功能从输入输出参数或者运行条件子句来看,形式相同,但实际语义不同,本发明通过暴露部分内部实现细节达到区分不同服务实例的目的。利用一阶逻辑表达式对一阶逻辑进行的术语扩展以描述程序逻辑,主要包含断言、顺序控制、分支控制和循环控制。

本发明对WSDL-S进行了扩展,使用上述描述子句可以表达网格地理信息服务的功能特征,通过在WSDL-S中扩展相应的标签,实现描述子句与面向服务的体系结构(Service-Oriented Architecture,SOA)标准的兼容,包括服务接口子句、运行条件子句和程序逻辑子句三个方面的扩展。

(1)服务接口子句,使用WSDL-S的默认扩展方法,在<types>标签中定义输入输出参数。

(2)运行条件子句,在<interface>标签中扩展子标签<wssem:precondition>和<wssem:postcondition>定义前置后置条件。

(3)程序逻辑子句,在<interface>标签中扩展子标签<wssem:program>定义程序逻辑。

上述对网格地理信息服务描述实现了对服务功能特征的表达,服务发布将服务功能特征定义为服务广告,服务描述同时也用于将用户的服务功能需求定义为服务请求。

步骤S102,根据服务接口子句相似度、运行条件子句相似度和程序逻辑子句相似度综合计算服务广告和用户服务请求的最终相似度。具体包括:

(1)计算服务接口子句相似度:

计算服务广告和用户服务请求中服务接口子句的输入参数的对应关系:{(Iai,Irj)|1<i<m,1<j<n},其中,Iai为服务广告中的输入参数,Irj为服务请求中的输入参数,m为服务广告中的输入参数总个数,n为服务请求中的输入参数总个数,则输入参数相似度为:

Similarityinput=Σsc(Iai,Iri)k

其中,k为{(Iai,Irj)|1<i<m,1<j<n}中的要素数量,

计算服务广告和用户服务请求中服务接口子句的输出参数的相似度为:

Similarityoutput=sc(Oa,Or)

其中,Oa和Or分别为服务广告和服务请求中的输出参数,

服务广告和用户服务请求中服务接口子句相似度为:

Similarityinterface=Similarityinput+Similarityoutput2

其中,其中,C1和C2为描述输入输出参数的逻辑概念,l1和l2分别为C1和C2的逻辑概念层次,Dis(C1,C2)为两个概念在本体框架中的路径长度,其计算公式为:Dis(c1,c2)=length(c1,ca)+length(c2,ca),其中,Ca为C1,C2的共同祖先节点,length(ci,cj)为其在本体框架中概念树上的路径长度。a、b、c分别为调节参数(a>0,b>0,c>0);

(2)计算运行条件子句相似度:

依据霍尔规则将描述逻辑概念C1和C2转化为集合i1和i2,集合i1和i2的相似度为:

sf(i1,i2)=sf(p,l,q)=w×l+1l+p+2+(1-w)×l+1l+q+2

其中p为包含在i1中但不包含在i2中的要素数量;l为包含在i1中也包含在i2中的要素数量;q为包含在i2中但不包含在i1中的要素数量,w为权重;

然后提取运行条件子句中的最小概括子句,对于霍尔规则C1和C2,若C=i0∧...∧iw是C1和C2的最小概括子句,其相似度计算公式如下:

fs(C1,C2)=sf(v1-v,v,v2-v)×sf(o1-o,o,o2-o)+avg({sfs(l1i,l2i)}i=1..v)

其中v1、v2和v分别是C1、C2和C中谓词的数目,o1、o2和o分别是C1、C2、和C中变量的数目,sf(k1-k,k,k2-k)和sf(o1-o,o,o2-o)衡量了霍尔规则中谓词和变量相似度。l1i∈C1,l2i∈C2是最小概括子句中li(i=1,...w)在C1、C2中的映射谓词,sfs(l1i,l2i)为最小概括子句相似度,衡量最小概括子句所对应的映射谓词之间的相似度。

则前置条件相似度为:

SimilarityPre=fs(C Pr eadv,C Pr ereq)

其中,C Pr eadv为服务广告前置条件所对应的霍尔规则,C Pr ereq为服务请求前置条件所对应的霍尔规则,

则后置条件相似度为:

SimilarityPost=fs(C P ostadv,C P ostreq)

其中,C P ostadv为服务广告前置条件所对应的霍尔规则,C P ostreq为服务请求前置条件所对应的霍尔规则,

运行条件子句相似度为:

Similaritycondition=SimilarityPre+SimilarityPost2

(3)计算程序逻辑子句相似度:

Similarityprogram=fs(C Pr ogramadv,C Pr ogramreq)

其中,C Pr ogramadv为服务广告的程序逻辑子句所对应的霍尔规则,C Pr ogramreq为服务请求的程序逻辑子句对应的霍尔规则。

根据上述(1)(2)(3)得到的三个子句的相似度,计算服务广告和用户服务请求的最终相似度具体为:

Similarity=a1×Similarityinterface+a2×Similaritycondition+a3×Similarityprogram

其中,a1、a2、a3分别为调节参数,a1>0,a2>0,a3>0,且a1+a2+a3=1

步骤103,将所述最终相似度和预先设定的相似度阈值比较,若大于该阈值,则返回所述服务广告给用户,其中,阈值可由用户在检索服务时动态指定。

以上实施方式仅用于说明本发明,而并非对本发明的限制,有关技术领域的普通技术人员,在不脱离本发明的精神和范围的情况下,还可以做出各种变化和变型,因此所有等同的技术方案也属于本发明的范畴,本发明的专利保护范围应由权利要求限定。

去获取专利,查看全文>

相似文献

  • 专利
  • 中文文献
  • 外文文献
获取专利

客服邮箱:kefu@zhangqiaokeyan.com

京公网安备:11010802029741号 ICP备案号:京ICP备15016152号-6 六维联合信息科技 (北京) 有限公司©版权所有
  • 客服微信

  • 服务号