首页 >> >> 通信学报 >> 2009年5月 >> 短文 >> 正文
基于Web服务的智能流程构建方法
2009年6月2日 14:49    通信学报    评论()    
作 者:李晖 崔立真 王海洋

    由欧洲语义Web组织提出的Web服务模型本体(WSMO,Webservicemodeling ontology)[11]是另一种语义Web服务描述框架。WSMO旨在研究语义Web服务语言的标准。WSMO不但描述了Web服务的能力,也描述了Web服务的行为,同时还涉及到了与流程相关的内容。目前有一些大型业务流程管理项目,比如SemBiz [12],就是基于WSMO而建立的。WSMO由四类关键组件组成。

    1)本体集:本体集提供了丰富的术语,这些术语被Web服务模型本体中的其他组件用于描述领域内相关方面的知识。

    2)Web服务:通过提供Web服务的存取方式,描述WSMO中的计算实体——Web服务。描述的方面包括Web服务的能力和接口。所有的描述方式均采用本体集中定义的术语。

    3)目标集:目标集描述了用户需求,即通过执行一个Web服务用户希望达到的目标。在描述方式上,同样采用了本体中的术语,目标集在用户角度为Web服务的使用建立了模型,是WSMO中独立的上层实体。

    4)协调器集:协调器集用于克服在WSMO中的各个组件协同工作中出现的问题。协调器集是解决术语之间不匹配(数据层)、Web服务之间通信不匹配(协议层)和协调不同Web服务与目标(流程层)的核心概念。

    综上所述,WSMO更加满足智能流程的描述需求,本文中,在WSMO的基础上提出了智能流程描述框架(SfDF,smartflowdescriptionframework),SfDF在WSMO的基础上,从流程的角度进行了扩展。在SfDF中,沿用了WSMO的四类关键组件,SfDF的主要工作是在本体集和目标集2个组件中,增加了与流程相关的描述内容,以满足智能流程的需要。

    1)SfDF本体集

    在SfDF的本体集中,除了描述领域知识的概念之外,在本体集中增加了“约束”。“约束”是一种机制,包括流程约束和任务约束,它用于限制智能流程和智能流程的任务。即,构造的智能流程或者智能流程的任务必须满足“约束”。“约束”可以用谓词描述。

    定义2任务约束:任务约束用于在业务层限制智能流程中的任务,任务约束描述模型为{"t ( t ÎTi Þ P (t) )}其中,t表示具体任务,Ti表示某一类任务的集合,P表示谓词。模型表示‘tÎTi’蕴含‘P(t)’,意味着对于Ti中的任意一个任务t,均能使P为真。

    定义3智能流程约束:智能流程约束用于在业务层面限制业务流程,智能流程约束描述模型为{"t ( t ÎT Þ P (t) )}其中,t表示具体任务,T表示智能流程中全体任务的集合,P表示谓词。即‘tÎT’蕴含‘P(t)’,意味着对于T中的任意一个任务t,均能使P为真。SfDF本体集如图2所示。

    图2SfDF本体集

    2)SfDF目标集

    因为Web服务模型本体的主要目标是Web服务建模,因此它的主要关注点在于Web服务。而SfDF的目的是用于描述智能流程及其相关元素,除了独立的Web服务目标之外,还需要关注整个流程的目标,即整个流程如何满足用户需求。因此,在智能流程描述框架中,目标是有层次的,分为流程目标和Web服务目标两类。智能流程目标用谓词表示。

    定义4智能流程目标:智能流程目标描述模型为{$ti$tj$tk$tl(tiÎTÙisScenicSpot(ti) Ù tjÎT Ù isTraffic(tj) Ù tkÎT Ù isTraffic(tk) Ù tlÎT Ù isHotel(tl) Ù ti [location] = tj [city] Ù ti [location] = tj [to] Ù ti [city] = tl [from])}

    上述定义表明,在以旅游为背景的智能流程中,至少需要有旅游景区预定、住宿预定和交通预定任务,同时定义了任务之间的关系。

    SfDF中的目标集如图3所示。在图3中,流程目标用“SfGoal”表示,Web服务目标用“WsGoal”表示。

    图3SfDF目标集

    3.2Web服务发现

    Web服务发现阶段的主要目的是在SfDF的基础上,找到满足用户需求的Web服务,用以实现智能流程中的任务。

    目前,Web服务发现是一个研究热点。文献[13]提出了用户需求和Web服务的语义匹配算法,同时提出了语义匹配度的概念。文献[14]在文献[13]的基础上,进行了改进,将二分图用于Web服务的匹配,用户需求组成二分图中一个顶点集合,基于语义描述的Web服务组成二分图中的另一个顶点集合,二分图中的边表示2个顶点集合之间的匹配,最后,文献[15]采用了匈牙利算法计算二分图中的最大匹配。从而得到满足用户需求的Web服务。

    在智能流程中,满足需求的Web服务发现方法是基于SfDF的,Web服务的发现过程首先是Web服务目标和Web服务能力之间的匹配,然后是Web服务的输入和用户需求直之间的匹配。在Web发现之前首先需要定义匹配度,用于表示匹配程度。匹配度的定义如表1所示。表1中的“output”表示Web服务和Web服务目标的后置条件和效果。同样,Web服务的输入和用户的需求之间的匹配程度,参见表2。

    按照表1和表2中的定义,Web服务发现算法描述如下:

    WebservicediscoveryAlgorithm

    Input:WsGoal,Web service set

    Output:Webservice set that match WsGoal

    result←Æ

    forallWebservice

    ifmatchinglevel(WsGoal, Web service) in (‘exact’, ‘plug in’) according to table 1 then

    result ← result È Web service

    forallWebservice in result

    if matching level(input of Web service, user requirement) in (‘subsume’, ‘fail’) according to table 2 then

    result ← result - Web service

    returnresult

    根据上述算法,当Web服务目标和Web服务能力之间的匹配度符合表1中“exact”或者“plugin”的定义时,意味着某个Web服务目标可以被一个Web服务所完成,则这个Web服务将加入到结果集中,然后再检查结果集中的Web服务的输入,是否能够被有效地被用户需求满足,如果不能被满足,说明用户需求中,没有提供该服务所需要的输入,则将该Web服务移出结果集。

[1]  [2]  [3]  [4]  编 辑:石美君
[相关新闻]
关键字搜索:智能流程  语义描述  即时构造  Web服务  
[ 本站暂时关闭评论 ]
 
  推 荐 新 闻
  技 术 动 态
  通 信 圈