邓水光,吴朝晖. Web服务组合方法综述. 中国科技论文在线,2008,3(2):79-84.
Time:2 hours
Web服务组合领域的研究内容包括:Web 服务组合建模语言、服务组合方法、服务组合执行、服务组合验证等方面。我的研究应结合CPS的概念,从服务组合方法和服务组合验证方面入手,结合原有的研究成果,提出一些考虑CPS系统时空特性的改进后的服务组合方法和形式化验证方法。
通过本文的阅读,初步理解了Web服务组合方法的研究现状和基本概念,本文认为Web 服务组合是指当单个Web 服务无法满足用户需求时,将若干Web 服务进行有机合成,以形成大粒度的具有内部流程逻辑的组合服务的过程。
当前,工业界和学术界提出了众多的Web 服务组合方法,可根据不同的分类标准进行归类。
- 根据Web 服务组合实现方式可以分为服务编制(Orchestration)和服务编排(Choreography)两大类。两者的区别在于:服务编制需要一个总控流程来控制涉及到的Web 服务,并协调Web 服务不同操作的执行。相比之下,服务编排并不依赖中央的总控协调过程。相反,每个涉及其中的Web 服务都知道何时执行自己的操作,和谁交互。
- 此外按照Web 服务组合的动态性程度可以分为静态Web 服务组合和动态Web 服务组合;
- 根据自动化程度可以分为手动Web服务组合、半自动Web 服务组合和全自动Web 服务组合方法。
- 按照Web 服务组合方法的技术或理论基础可以分为基于工作流的服务组合和基于人工智能的服务组合。
一. 业务流程驱动的Web服务组合主要是以工作流为技术基础,根据动态性、灵活性等特点将基于工作流的服务组合的实现方式分为三类:静态服务组合、基于模板的服务组合和逐步演化的服务组合。
二. 即时任务求解的Web服务组合方法主要包含了两大类方法:基于AI (人工智能)理论的Web 服务自动组合方法和基于图搜索的Web 服务自动组合方法。(这部分内容需要重点看一下,理论程度较高)
1. 基于AI理论的Web 服务组合服务组合问题可以被视为一个规划问题的自动求解,即给定一个初始状态和目标状态,在一个服务集合中寻求一条服务组合的路径以达到从初始状态到目标状态的演变。
纵观目前基于AI 的Web 服务自动组合方法,它们均基于某种形式化方法或者推理系统,需要对服务进行预处理和形式化转换,方法复杂度较高。典型的包括:
1) 基于情景演算的服务组合。
2) 基于PDDL 的服务组合。
3) 基于层次任务网的服务组合。
4) 基于定理证明的服务组合。
2. 基于图搜索的Web 服务组合是指:在基于图搜索的服务自动组合方法中,服务以及服务之间的关系被表示成关系图,服务组合的过程被转化为在关系图中进行遍历以寻找从输入到输出或者从输出到输入的可达路径。
* 名词解释:
人工智能:人工智能是研究人类智能活动的规律,构造具有一定智能的人工系统,研究如何让计算机去完成以往需要人的智力才能胜任的工作,也就是研究如何应用计算机的软硬件来模拟人类某些智能行为的基本理论、方法和技术。 人工智能学科研究的主要内容包括:知识表示、自动推理和搜索方法、机器学习和知识获取、知识处理系统、自然语言理解、计算机视觉、智能机器人、自动程序设计等方面。
谓词推演:(详见相关工具书)数理逻辑最基本的形式系统。又称一阶逻辑。一个可以回答真假的命题,不仅可以分析到简单命题,还可以分析到其中的个体、量词和谓词。个体表示某一个物体或元素,量词表示数量,谓词表示个体的一种属性 。
李景霞,侯紫峰. Web服务组合综述. 计算机应用研究,2005,(12):4-7.
Time: 0.5 hour
本文介绍了Web 服务体系结构和两种有代表性的Web服务描述方式,着重介绍了当前主流的三大类Web服务组合方法。跟上面一篇文章有很多重复的地方,毕竟文章写得早,而且杂志也一般,了解一下基本概念还是可以的。
三大类Web服务组合方法包括:
1. 基于BPEL4WS的Web服务组合方法。BPEL4WS,Business Process Execution Language for Web Services,Web服务的商业流程执行语言,是专为整合Web服务而制定的一项规范标准。
与类似BPEL4WS这样来表达业务流程的还有BPEL等。
2. 模型驱动的Web服务组合方法。
3. 基于AI规划的Web服务组合方法。
论文最后也提到了几个研究方向,现在看来仍然要按照这些方面去做:
- 如何基于语义准确地发现Web服务(服务发现);
- 如何准确产生满足应用需求及相应约束的组合方案(服务组合方法与执行);
- 如何对Web服务组合方案进行评估、优化(服务组合可信性验证);
- 如何监控Web服务组合的执行和相应的容错处理(服务替换和服务管理)。
崔华,应时,袁文杰,胡罗凯. 语义Web服务组合综述. 计算机科学,2010,37(5):21-25.
Time: 1.5 hours
本论文跟第一篇有很多相似之处,有些是把服务组合换成Web服务组合描述的,也算是微创新吧,了解基本概念和研究现状还是挺有好处的。另外,读了本文,发现对服务组合方法如何分类并不重要,研究重点应放在借鉴原有方法,结合CPS系统的特性,提出改进性或借鉴性的新方法。
本文提出的定义:
- 语义web服务是由良定的、具有丰富语义信息的描述语言描述的web服务,基于web的软件系统和应用终端能够通过语义推理实现服务发现、选择、组合以及执行的智能化和自动化。
- 语义Web服务组合是以语义Web服务为研究对象,充分利用Web服务语义描述文档提供的静态知识和服务的能力,使用语义推理技术查找能够以给定参数为输入,执行后可以产生期待输出的Web服务集,并将它们有机地组织起来,以形成粒度更大、功能更强、新的增值服务或者系统的过程。
语义Web服务组合的研究目标是充分利用语义web中本体提供的静态知识和web服务能力,通过语义web服务推理技术实现web服务资源管理的智能化,解决web服务资源在语义Web中的自动发现、组合和执行问题。语义Web服务组合研究的基本思想是通过建立一个能够在多个层面上描述web服务的描述模型,为服务组合提供更为精确和通用的语义信息,然后以此为基础,利用语义推理技术实现服务发现、选择、组合和执行的智能化、自动化。
本文根据语义Web服务组合使用的方法学将其分为3类:
- 基于工作流的语义web服务组合。
- 基于人工智能的语义web服务组合。
- 基于形式化方法的语义web服务组合,包括基于状态演算、基于进程代数以及基于描述逻辑的语义Web服务组合方法。(本部分重点看一下,理论程度很高)
基于状态演算的语义Web服务组合有两类:基于Petri网的语义Web服务组合和基于自动机的语义服务组合。
进程代数是使用代数方法研究通信并发系统的理论的泛称,它包括π演算(π-Calculus)、通信系统演算CCS(Calculus of Communication Systems)。进程代数能够描述和分析并发、异步、非确定的分布式系统的行为,对动态实体进行建模,因而将进程代数引入语义Web服务组合,能够为其提供严密的形式化语义。
动态描述逻辑(Dynamic Description Logic,DDL)将静态的知识表示和动态的推理相结合,形成一种统一的形式化框架,具有清晰的语义特征,既提供了可判定的推理服务,又能有效地对动态过程和运行机制进行表示和推理。
目前,国内外在语义web服务研究方面主要着眼于三个方面:
一是,创建一种计算机之间能够理解的、同时能够充分表示Web服务的行为、功能、属性和约束的描述语言;
二是,在web服务描述语言的基础上提出一种支持服务自动发现、组合和执行的模型或体系结构。(这是我的研究重点)
语义Web服务组合的关键是使用语义匹配和推理技术,自动处理服务的查询和匹配。因此,如何针对当前服务发现后继服务,产生满足要求的组合序列,是语义Web服务组合算法要解决的核心问题。
服务相似性度量是服务匹配实现的关键。当前,服务匹配中的相似性度量通常采用语义距离来表达,语义距离的大小决定了两个概念间的匹配程度。由于语义距离是在构建本体时人工定义的,具有很大的主观性,因此为不同概念间的语义相似性计算提供一套有效的处理机制仍然是服务匹配中有待深入研究的一个关键问题。
三是服务组合的形式化描述与验证。服务组合是一个复杂易错的过程,因而语义web服务及其组合的形式化描述和验证是语义web服务中一个重要的研究方向。
由于语义Web服务组合具有良好的形式化基础,因此语义web服务能够借助一阶逻辑、线性逻辑、进程代数以及状态演算等形式化方法建模组合过程,利用公理、定理和规则通过形式化推理检查组合模型的正确性和有效性,从而保证组合服务的顺利执行。
语义web服务组合的正确性是指组合结构安全、有界;有效性是指组合结构中的每一个节点都是可达的,并且在给定的输入下,执行后能够提供期待的输出。
1. Petri网被广泛应用到语义Web服务组合的形式化描述与验证中。
2. π演算也成为语义Web服务组合和验证的又一重要工具。
Petri网主要用于验证组合方案的有效性和可行性,但难以处理服务组合的动态特性;而π演算适合刻画服务组合的动态行为,但缺乏直观、图形化的工具支持。
* 名词解释
形式化验证:(详见形式化验证文件夹中《什么是形式化验证》)形式验证就是从数学上完备地证明系统是否实现了设计者的意图。这意味着首先要用某种语言和逻辑构造系统的数学模型,然后运用严格的数学推理来证明设计的正确性。形式验证的主要优点是完备性,能够完全断定设计的正确性。其缺点是首先要对原始设计进行模型抽取,这对使用者有数学技能和经验上的要求。而且,有的工具需要人工引导(如定理证明),有的工具存在状态空间爆炸问题(如模型检验)。
进程代数:(查看相关工具书)进程代数是关于通信并发系统的代数理论的统称,进程代数的一个显著特征是把并发性归结为非确定性,将并发执行的进程的行为看成是各单个进程的行为的所有可能的交错合成,即所谓交错语义。进程代数研究的核心问题是进程的等价性,即在什么意义下两个进程的行为相同?在进程代数领域使用的最为广泛的等价关系有互模拟、测试等价、失败等价等。process algebra is the study of pertinent equational theories with their models, while the wider field that also includes the study of transition systems and related structures, ways to define them and equivalences on them will be called process theory.