首页 > 范文大全 > 正文

基于语义的Web service组合技术研究

开篇:润墨网以专业的文秘视角,为您筛选了一篇基于语义的Web service组合技术研究范文,如需获取更多写作素材,在线客服老师一对一协助。欢迎您的阅读与分享!

摘要:随着Web服务的发展,Web服务组合越来越显示出其必要性。文章分析了语义Web服务组合的特点,着重阐述了基于AI规划的语义web服务组合方案。

关键词:Web服务;语义;规划;组合

中图分类号:TP393文献标识码:A文章编号:1009-3044(2009)14-3641-02

Analysis of Web service Composition Technique Based on Semantic Web

LI Ming-cui

(School of Information Eengineering, East China Jiaotong University, Nanchang 330013, China)

Abstract: Web service composition is becoming more and more necessary with the development of Web services. This Paper presents the main characteristics of semantic Web service composition. The different semantic Web services composition schemes based on AI planning are fully analysed in the paper.

Key words: Web service; semantic; planning; composition

1 引言

随着Web服务技术的日益成熟,越来越多稳定易用的Web服务共享在网络上,但单个的Web服务能够提供的功能有限,人们需要的往往不是单一的、简单的Web Services,而是Web Services组合出来的新业务。为了更加充分地利用共享的Web服务,有必要将共享的Web服务组合起来,提供更为强大的服务功能,加快系统开发的速度,快速满足用户需求,语义Web服务是一种更智能的Web服务,它赋予Web以计算机可理解的语义信息。基于语义Web服务的发现、组合和执行都将不需要由人来完成,而是都可以由 Agent来完成。

2 Web服务组合

Web服务组合,是指把Internet上己有的相对简单的Web服务按一定的业务流程逻辑组合起来以构成复杂的复合服务,从而提供更强大、更完整的商业功能。在Web服务组合的过程中,需要根据所需业务功能,对的Web服务进行服务发现,将满足业务需求的Web服务进行功能上的组合,并按照一定的逻辑顺序进行服务执行,从而完成复合服务所提供的复杂商业功能。现在的服务组合主要有工业界和学术界两股不同的推动力量。学术界重在借鉴人工智能的知识来解决服务之间的自动组合,把语义Web的研究成果引入到Web服务中,来使得服务具备能够被Agent自动发现、自动调用、自动组装和互操作以及自动监控能力。工业界采用的Web Services组合方式都是基于手工生成的工作流模式,比如由Microsoft、IBM和BEA等公司推出的BPEL4WS技术。工业界基本上确定了以BPEL语言为Web服务合成的描述规约,其缺点在于需要专业的人员手工生成业务,而不能根据用户的需求直接通过机器生成业务。其原因在于,目前的Web Services的标准WSDL, UDDI, SOAP都不具备机器可以理解的语义信息。

3 语义Web服务

Web服务虽然制定了发现、描述、信息交换的标准,但这些标准不支持智能服务,Web Services之间不能很好地理解其相互传递的消息,因而不能实现Web服务的发现、执行和组合自动化。语义Web赋予Web 以计算机可理解的语义信息,利用本体对Web资源的语义标记,使得资源具有清晰的语义和结构化的描述,使智能主体能够理解并处理Web上的信息,从而更好地协助人们在Web上发现知识、处理事务。语义Web服务是语义Web在Web服务领域应用的产物,其主要目标是克服传统Web服务语义操作能力的局限,使服务的发现、执行以及动态组合能够智能地完成。

语义Web Services通过本体和形式语言来推理服务描述、消息内容、商业法则以及本体之间的联系。基于语义的Web Services可以做到:

1) 明确描述和推理事务之间的联系和规则;

2) 明确描述Web Services所执行的任务,实现Web服务的自动发现;

3) 在Web Services执行过程中进行监控,并随时自动进行调整,实现自动执行;

4) 将简单Web服务组合成为复杂Web服务,并实现自动组合。

语义Web Services的体系结构如图1所示,它共有三种基本的角色:服务提供者、服务请求者和服务注册/匹配中心。服务提供者自己的服务,并对服务请求进行响应;服务注册/匹配中心用来注册己经的服务,并提供语义搜索服务;服务请求者则通过服务注册/匹配中心查找/匹配所需的服务,然后使用该服务。

4 语义Web服务组合的主要关键技术

支持语义Web服务自动组合的主要关键技术包括:

4.1 语义Web标记语言

Web服务的语义信息需要通过合适的语言来标记,标记语言的语义表达能力和形式化支持直接影响到Web服务组合的自动化程度和灵活性。OWL(Web Ontology Language)定义了一个统一的Web ontology语言框架,可被用来明确表示词汇表中术语的含义以及术语间的关系。2004年2月10日,OWL正式成为W3C推荐的语义Web标记语言标准。

4.2 Web服务的语义描述模型和本体

有了语义Web标记语言的支持,还需要为Web服务建模。完整的模型既要能描述服务的属性,如功能信息、性能信息等,也要能描述用户的需求、个人偏好和约束等。模型建立后,需要用合适的语义Web标记语言将其描述为大家可以共享的本体。OWL-S是用 OWL 语言描述的Web Service的本体。它是一种具有显式语义的无歧义的机器可理解的标记语言,用来描述Web Service 的属性和功能。在OWL-S 中,一个 Service 由三部分来描述: ServiceProfile,ServiceModel,ServiceGrounding。ServiceProfile描述服务是做什么的,ServiceModel描述服务是怎么做的,ServiceGrounding描述怎么访问服务。其中 ServiceModel是服务提供者用来描述服务的内部流程的,是语义Web服务的关键本体,一个 Service model通常被称之为一个 Process。Process 分为三类:Atomic Process,Composite Process,Simple Process。 Atomic Process是不可再分的过程,可以直接被调用。Composite Process是由若干个原子和复合过程构成的过程。每个复合过程由一个 Control Construct定义。Control Construct 定义了复合过程中每个子过程的执行顺序。OWL-S和当前的Web服务标准UDDI, WSDL等结合可以较好地支持未来的语义Web服务。

4.3 Web服务的组合方法

当服务资源的语义描述模型已经建立,而且确定了组合服务需要实现的目标后,就需要考虑如何将多个子服务集成在一起完成组合服务的任务。在Web服务语义描述模型出现之前,服务的组合一般是以工作流技术为基础,例如HP实验室的eFlow系统,澳大利亚NewSouthWales大学的SELF-SERV等,它们基本上是一种静态组合、动态绑定的方式,组合的自动化和动态适应性程度不高。而DAML-S和OWL-S的出现为新的组合方法提供了可能,它们将Web服务看成是人工智能中的行为,用参数、前提和结果等来描述服务,可以比较自然地映射为行为的形式化描述,这使得服务的组合问题可以利用AI中的方法来解决。

5 基于规划的语义Web服务自动合成方案

Web 服务的动态组合方法要求自动地生成一个方案,目前许多研究机构对此的研究都采用AI规划和演绎推理证明相结合。采用这类方法的做法一般是将Web服务看成AI中的动作,通过输入输出参数、前提和结果等来描述Web服务。在服务组合时,只要将Web服务的这些描述映射为动作形式化描述,以构造Web服务组合为目标,通过形式化的推理来得出Web服务的组合序列,动态形成服务组合方案,同时保证规划结果的正确性和完整性。组合方案通过逻辑推理证明或者AI规划器自动地生成,并不需要提前定义工作流的知识。基于AI的规划方法包括情景演算规划法、层次任务网规划法和基于规则的规划法等。

5.1 情景演算

基于情景演算的组合方法是运用基于情景演算的逻辑语言来描述Web服务的前束条件及预期结果,描述组合服务的目标及相关约束,在Web服务空间中运用推理来发现一组Web服务序列来满足服务请求。情景演算是一种形式化的规划方法,用一阶逻辑语言表示动态变化的世界,是一种关于状态、动作和动作作用于状态的结果的形式化谓词演算,把知识表达为关于状态和动作的公式,然后用一阶谓词演算演绎系统来回答这样的问题:“存在满足一定目标属性的状态吗?如果存在,现在的状态如何通过动作才能被转换为目标状态呢?”。对这样的询问的回答就是构造一个到达目标状态的计划,这个计划可以表示为动作的序列。目前基于状态演算的逻辑编程系列语言Golog被采纳成为一种表示、推理问题的自然的、形式化方法,它通过提供高层次的过程和用户定制的约束描述来解决Web服务组合问题。这种方法的主要思想是软件可以对Web服务推理,从而自动地执行Web服务的发现、执行、组合以及交互;用户提出的需求和约束可以通过情景演算的一阶谓词语言来描述;将每一个Web服务看成一个活动――原始活动或复杂活动,原始活动可以看成是改变事物状态的可感知活动,或是改变状态的信息收集活动,复杂活动是多个单个服务的组合。

5.2 层次任务网规划法

Hierarchical Task Network (HTN) Planning利用OWL-S作为Web服务的描述语言,通过任务分解的方法来组建组合服务。HTN的核心是任务。HTN规划系统将目标任务分解为子任务的集合,这些子任务再分解成更小的子任务,一直循环这个过程,直到所有的子任务仅包含原子Web服务,即现有的Web服务。在每一轮任务的分解过程中,都会检验是否违反给定的条件。如果目标任务在不违反任何给定的条件下,能够被成功分解成原子任务集,则规划问题成功求解。SHOP2(Simple Hierarchical Ordered Planner2) 是领域无关的HTN规划系统,该系统从初始状态向前规划:在规划过程中的每个点上,SHOP2 已经知道在这个点之前所执行的操作,为了得到合法的规划,SHOP2递归地将任务分解为子任务,直到它到达能被规划操作直接执行的原子任务。OWL-S 与HTN 规划有很大的相似度:OWL-S 中的原子过程对应于 HTN 规划中的原子任务;OWL-S 中的复合过程对应于 HTN 规划中的复杂任务;OWL-S 和 HTN 规划都使用分解的办法来处理问题的复杂性;不论是OWL-S中的复合过程还是HTN规划中的复杂任务被分解,它的子过程或者子任务的参数都要么是内部参数,要么是外部参数。因此可以设计一个将 OWL-S 的结构匹配到 HTN 规划的这些概念上的转换器,利用HIN规划方法,只需给出一个目标和初始状态,HTN规划器就可以发现一组有序的Web 服务,利用这些服务从初始状态开始来实现这个目标,从而达到Web服务自动合成的目标。

5.3 Rule-based规划

基于规则的规划是一种从高层次描述组合服务的技术,这种方法使用组合规则来决定两个服务是否可以组合。组合方法包括以下四个阶段:① 使用组合服务说明语言描述目标服务;② 利用组合规则匹配服务组合规划;③ 如果在匹配阶段,产生多于一个的规划方案,则服务请求者根据组合质量参数选择一个规划方案;④方案产生阶段,产生一个详细描述组合服务的方案并提交给服务请求者。组合规则定义了如何产生组合方案,并同时考虑了Web服务的句法和语法特性,句法规则包括操作模式规则和交互绑定协议规则。语法规则包括下列子集:① 消息组合定义了两个Web服务可组合当且仅当一个Web服务的输出和另一个Web服务的输入是兼容的;② 操作语义组合定义了两个Web服务领域的、类别的和目标的兼容度;③ 质量组合定义了请求者对组合服务操作质量的偏好;④ 组合合理性定义了服务的组合是否合理。该方法还引入组合模板的概念来定义不同种类服务间的依赖关系。SWORD 就是利用基于规则服务组合方法的一个组合服务的开发工具集。SWORD将世界建模为实体和实体之间的关系,Web服务被表示成Horn规则的形式:如果前件(precondition)为真,则后置条件(postcondition)就可以实现。为了构建组合服务,服务请求者只需要详细说明组合服务的初始状态和最终状态,就可以使用基于规则的专家系统来产生规划。

各种组合模型不完全重叠,能力也不完全等价,都还存在缺陷:

① IOPE(Input,Output,Precondition,Effect)是语义Web服务的重要概念,语义Web服务试图对Web Service的IOPE进行“语义标注”,然后通过自动推理来实现对请求的Web Service和提供的Web Service之间的功能匹配。但目前只在IO的标注上达成共识,即用描述逻辑本体的Class来标注每个IO参数;而对于PE, 用什么样的语言来表示才既有足够强的表示能力、又能保证推理过程的可判定性,目前尚无公认的答案。

② 自动组合建立在自动发现的基础之上。现有的自动组合系统,基本上都基于各自实验室以前的AI planning系统,用一种表达能力相对有限的语言来描述服务的IOPE,用其planning系统来进行自动组合,这些系统都仍需解决计算复杂度,找到更好的知识表示方法和推理机制等问题。

6 结束语

语义Web服务是基于语义Web的Web服务,是一种更为智能的服务,是Web服务的发展趋势。基于AI的语义Web服务组合方法能动态地生成Web服务组合方案、动态地链接具体实现的Web服务,能适应Web服务的动态变化,能满足业务不断变化的需求。但如何高效、准确地在Web服务空间中查找适合的Web服务,如何评价生成的Web服务组合方案与需求吻合度等一系列问题都是有待深入研究的问题。

参考文献:

[1] Sirin E, Parsia B, Wu D, et al. HTN Planning for Web Service Composition using SHOP2[J].Web Sem,2004(4):377-396.

[2] 戚玉松,钱柱中.基于Agent的Web服务组合研究[J].南京理工大学学报,2006(3):315-319.