admin 管理员组文章数量: 1087139
2024年5月16日发(作者:220v单相电机价格)
60 基于Petri网的动态Web服务组合建模
基于Petri网的动态Web服务组合建模
Web Service Dynamic Composition Modeling Based or'l Petri Nets
张晓文 包晓安 胡朱华 郭炜杰 (浙江理工大学信息电子学院,浙江杭州310018)
摘 要
基于广义随机Petri网,提出了一种动态Web服务组合建模的方法。利用广义随机Petrl网(GSPN)以及OWL—S组合
过程对Web服务组合过程构建动态组合模型,实现Web服务的动态组合。并通过一个实例证明该方法的可行性 与现有
的方法相比,该方法可以更有效地描述动态Web服务组合。
关键词:广义随机Petri网,OWL—S,Web服务,动态Web服务组合
Abstract
This paper presents a method to compose Web service dynamically based on generalized stochastic Petri nets At first,
the generalized stochastic Petri nets(GSPN)and OWL-S composition process are used to model dynamic modeling of Web
Service automatic Composition process,and then realize the Web service dynamic composition.Finally,the feasibility of this
method is demonstrated though analysis of an example.Compared with existing methods,this method can describe Web
service dynamic composition more effectively
Keywords:generalized stochastic Petri net,OWL-S,Web service,dynamic Web service composition
Petri网作为描述分布式系统的一种模型,既能描述系统的
结构,又能模拟系统的运行,特别适用于描述基于组件的多线
程、分布式软件系统结构,以及构成软件系统各组件间的运行关
系,因而,Petri网已成为研究离散事件动态系统的一种有力的
系统建模和分析工具。与大多数Web服务组合模型相比,使用
随机Petri网作为Web服务组合模型能够更好的描述并发执行
模型有许多优点:首先其图形化的描述比较容易让用户理解系统
模型;其次可以利用Petri网对模型进行形式化分析和验证。
1.1 OWL—S的概念
OWL—S(Ontology Web Language for Services)是Web
服务的本体语言,我们所说的Web语义包括RDF、OWL等,现
在所说的OWL—S就是Web服务和语义Web的结合,主要是
为了解决Web服务描述和发现以及业务组合的语义表示。
OWL—S包括三个组件:
Service Profile:描述服务的功能,即这个服务是做什么的,
服务搜寻代理通过Service Profile实现服务匹配,寻找到满足
的软件系统,如Web服务组合。
本文在保证0WL—S过程模型正确性的基础上,利用广义
随机Petri网(GSPN)将Web服务组合结构转换为Petri网模
型,并对Web服务进行动态组合建模,形成比较复杂的服务组
合,并给出了实现方法,分析了实现中的关键技术。
1 基本概念
服务请求者需求的Web Service。
Service Grounding:描述Web服务的使用方法。
Web服务组合就是通过查找服务以及集成服务之间的接 Service Model:描述服务是怎么做的,即服务的具体实现
El,根据应用需要组合多个自治的Web服务,从而提供新的、功
能更强的Web服务。Web服务采用UDDI、WSDL、SOAP等基
于XML的标准和协议定义了服务发现、描述和消息传送协议。
细节,其子类Process描述服务中各个子过程的执行顺序。
Process分为原子过程、组合过程和简单过程。其中:原子过程
描述服务一次不可分割的执行过程,没有子过程;组合过程通过
但是基于UDDI和WSDL的Web服务技术不能充分利用语义
信息,因而不能够解决服务匹配的问题和基于功能的服务定位
问题。需要一种描述Web服务语义的机制来实现Web服务的
动态组合。为了解决XML缺乏语义的问题,W3C提出了基于
控制结构将原子过程或组合过程组合为一个复杂过程;简单过
程是原子过程和组合过程的抽象,它不能直接调用。
1l2广义随机Petri网的概念
研究不断深入,Petri网也在不断地完善,其抽象和描述能
XML的语言(如,RDF和OWL)。同时,为了生成支持机器理解
的描述文件,提出了基于OWL语言的服务本体语言OWL—S,
服务之间的不同表达可根据本体知识库中对统一概念的认识进
力也不断地朝着横向和纵向发展。它的纵向扩展表现为:从基本
的条件/事件(C/E)网和位置变迁(P/T)网,发展到谓词/变迁网
和颜色Petri网等高级网。它的横向扩展表现为:从无参数的网,
发展到时间Petri网和随机Petri网。在这里扩展广义随机Petr i
行关联,从而支持代理程序基于逻辑语义实现对Web服务的动
态发现、调用及组合。
网,让它可以对Web服务建模。
一
Web服务动态组合需要一个好的工作流模型,否则跨域工
作无法进行下去。一个好的工作流模型是实现一个Web服务组
合系统的关键和基础。Petri网技术是一种既可以进行结构建模,
又可以进行广泛定性和定量分析的建模方法。采用Petri网建立
个GSPN可用一个P/T系统(S,T;F,W,M。, )来描述,
其中的T被划分为时间变迁集 和瞬时变迁集1I2个子集。时间
变迁的实施需要一定的时间,瞬时变迁的实施时间可以忽略不
计,即T=T}u ,TJT|_ ,而在F中允许存在禁止弧。在GSPN中,
浙江省自然科学基金项目(Y1 100289、Y1 100726);浙江省自然科学基金重点项目(Zl090357)
《工业控制计算机》2O11年第24卷第7期
每个时间变迁的实施时间服从指数分布,即V+ETt:Ft=1一e 。
61
的服务请求信息,经过规范化、标准化处理后发送给OWL—S标
注代理进行标注,标注后形成了服务请求的OWL—S文档,随后
其中,实参Xt>O是时间变迁平均实施速率,表示在可实施情况
下单位时间内平均实施的次数,其倒数T.=1/X..称为变迁t.的平
均实施时间, 的集合为 。
2 Web服务组合的Petri网模型
发送到在领域专家指导下由系统分析师和程序员共同设计出来
的领域Web服务组合模板,该模板根据服务请求的OWL—S文
档组合Web服务,但产生的结果还只是虚拟的Web服务,需要
通过服务匹配器到UDDI注册中心库去搜索、绑定与之匹配的
Web服务。基于语义的Web服务组合模型如图2所示。
OWL—S描述的Web服务的应用逻辑首先被转换成Petr i
网模型来为组合中的服务的结构和行为提供一种正式的表示方
法。Petri网本体被定义用来执行OWL—S服务功能的操作语义和
,
用户系统
输入、执行条件和结果语义,其中结果又包含输出和执行效果。
分析OWL—S的组合过程的执行语义、执行操作和每次的
oW S
输入、执行条件和结果将它映射到Petri网,如图1所示。其中虚
标注代理
示原子过程的开始和结束,是瞬时图1 组合过程的GSPN模型
变迁,用竖线表示。
基于OWL—S的组合过程得到7种Web服务组合结构,描
述如下:
Sequence:顺序执行构件服务。
Mutual Exclusion:选择执行一个构件服务。
Parallelism:并发执行构件服务,且同步发生。
Choice:对一组构件服务根据条件选择执行。
Iteration—while:循环执行构件服务,在执行前先判断是否
满足条件。
Iteration—until:循环执行构件服务,执行一次后再判断是否
继续执行循环。
Unordered:一组构件服务按任意顺序执行。
从OWL—S组合过程到GSPN模型的映射,可根据Pro—
cess的描述采取从输入到输出递归替换的方式进行,当Web
服务组合结构中的时间变迁代表组合过程时,可用它们对应的
GSPN模型进行替换,直到将时间变迁转换成原子过程为止。
3动态Web服务组合模型
将Web服务的一个操作作为一个任务,对应Petri网模型
中的变迁;对于服务的动态组合,服务的一个操作的前提即运行
一
个任务的前提,服务的一个操作的效应即运行一个任务的效
应,对应Petri网模型中的库所。
基于一个Web服务组合,可以生成为达到目标任务而构建
的过程描述的活动图。以事件驱动业务流程的进行。当将一个组
合服务中的一个任务指派给服务的提供者时,对于服务的提供
者来说,就产生了目标状态。在完成任务的过程中,要进行条件
判断,则产生事件,从而引起状态变迁,推动整个过程发展。这些
过程都被记录在一个用XML写的文档中,作为一个活动图。
Web服务组合根据这个活动图,查找它所包含的下一级服务,
然后进行调用。在Web服务组合系统中,如果让用户手动查找、
挑选和组合服务,效率低下,因而必须利用代理动态完成Web
服务组合。
服务组合利用编程语言及过程模型语言构造,如顺序、循环、
并行等。服务组合由一组基本服务和其他服务组合构成,服务的动
态组合是在原有服务的基础上动态产生新的过程模型的过程。基
本服务必须提供过程数据模型和业务过程模型,以便代理能动态
与组合服务交互,因此要求一些信息编码给出动态组合和交互。
在考虑服务的语义支持、领域特性下建立动态Web服务组
合模型,模型的运行机制如下:首先通过用户系统界面输入用户
T
』组合管理器
执行引擎
服务
提供系统——
领域web服务
组合模板
鹏匹配器 j本体库
图2动态Web服务组合模型
4实例分析
以一个简单的网上购物服务系统为例,网上购物服务流程
在执行过程中有两个基本Web服务交互,分别是自助网上购物
服务和人工网上购物服务。系统的结构如图3所示。
购物者’ 面物方案 1
需求描述
T
I翻译器 语义描述 组合 理 组合方享 执行弓I擎方案调用
~ …~—1— 一r——
货 选
货物描述 妻
供应商
备选方 库 Qo货物 述-物 述 方案r匹配器
货物描述
图3网上购物服务系统结构图
利用第三节建立的Petri网模型描述该网上购物服务系统。
该网上购物服务系统的随机Petri网模型如图4所示。
执
行
(二)
。
翻译器
供应商
上
方案匹配器
德
图4 网上购物服务系统的GSPN模型
从该例子可以看出,本文提出的基于Petri网的动态Web
服务组合模型可以直观的描述Web服务组合。单个Web服务
在组合以后以Web服务组合的形式出现,利用Petri网的形式
化分析能力可以对服务组合的各种性质进行分析。
(下转第15页)
《工业控制计算机}2011年第24卷第7期
就能使自动化系统投入运行。
1.4计算机软件功能及特点
本系统所采用的软件是国外应用于集散系统的先进组态软
件FIX DMACS软件。软件给用户提供了一整套极为丰富的画
面显示功能和强有力的控制手段,使操作人员在控制过程中及
时地、全面地了解系统各部分运行变化情况,通过对整体显示、
15
2)流程图显示画面:以系统整体运行的工艺流程为背景图,
动态显示主要运行参数。如模拟量的检测数值,开关量、报警状
态等等,可根据数值的大小或状态的变化以光柱(棒图)或不同
颜色的图标或形状进行动态显示。
3)实时曲线图:显示各个测点的运行曲线,以及与其相关的
所需要的全部参数表。在此图中,可对各段曲线进行放大显示。
4)历史趋势图:在屏幕上显示主要检测项目的历史趋势曲
线,可以观察过去的一段时间内运行参数的变化趋势和概貌。还
可以查找过程量此期间任一时刻的具体数值。
5)报警与事件记录表:可显示以前各时刻各类报警的记录
及发生的事件。
6)棒图(光柱)分组显示画面:按照仪表的方式(用光柱的长
报警、模拟仪表、流程图、历史曲线、汉字显示等画面的简单操
作,就可观察系统运行的各种参数和状态。例如,从彩色流程图
可以看到压力的高低,流量的大小,温度的变化等等。
FIX DMACS自动化软件的核心部分是它的实时数据库,
系统的所有数据均在实时数据库中得到反映。并根据组态方案
实时地传送到显示画面、历史数据库、报警、打印机等方面。FIX
实时数据库的数据来源有四种:l/O驱动接口、DDE(动态数据
短)在屏幕上显示各过程量的变化。同时也显示过程量的数值。
交换)、0DBC(开放关系数据库互联)接口、网络。其中最常用最
此画面还囊括了一个测点(过程量)的全部信息:( ̄Tag名。②汉
主要的则是与外围硬件密切相关的所谓“I/0驱动接口”。其功
字名称。③量程的上下限。④报警值的上下限。⑤工程单位。⑥
能是实现实时数据库与外围硬件的实时数据交换(或日双向传 动态检测值。⑦动态光柱。⑧序列号。
送):即将外围l/O硬件的采集值经过适当的变换送到FIX的实 7)X—Y关系图:按预定的变量(检测值或计算值)设置好X
时数据库中,同时,将实时数据库中的输出值通过外围l/O硬件
和Y,待系统运行时则可得到X、Y的关系图。
送到执行机构。在四种数据变换方式中,以采用I/O驱动接口方 8)打印操作画面:提供三种打印方式:即时(手动)打印、定
式采集或交换数据的实时性和灵活性为最好。 时打印和报警打印。可以随时或定时打印运行状态报表。还可以
我们研制的绿色空调微机辅助实验系统就是采用了l/O 同步打印出报警记录。
驱动程序方式来与PC机板卡进行数据交换。
9)当系统运行出现异常时,发出声、光报警信号,提醒操作
2本系统的各种功能安排
人员及时处理。
1)运行数据的采集,处理及显示:系统配有彩色监视器,可
1O)系统操作采用“一触即成”的极简易操作方式,屏幕上带
对系统各过程参数进行显示记录,如各点温度,压力、流量,位移
有“操作指导”画面。使操作人员对系统的观察、设置、参数修改
等。可同时进行工程模拟仪表显示和工程量数字显示。
都极为方便。操作方法一试便会。
2)过程越限报警及事故记忆:可对压力,温度,主要过程参
4结束语
数的上,下限报警记录。以及对各电机,泵,事故启,停有记忆功
该系统总体应达到:功能齐全、操作简单、可靠性高、经济实
能。报警上下限可在线修改。 用。在给定的外部条件下,计算机配合仪表对整个液压系统的主
3)可随时打印出所有参数及报表,也可定时打印所需的过 要运行参数能够自动检测、自动记录、自动报警、自动控制。实现
程参数报表。 系统安全运行。既满足一般的液压实验要求。又能给教师和研究
4)对系统运行的重要参数有历史曲线记录。可随时查阅任
人员提供一个科研的平台,提高设备的利用率。
意参数的任一时刻的数值。
5)可以对暖通专业的一些参数指标进行计算,并可以按预
参考文献
定的要求产生图形和报表。并进行记录。
[1]张靖,刘少强.检测技术与系统设计[M].北京:中国电力出版社,
3屏幕画面的安排
2002:66—141
1)整体观察画面:在屏幕上集中显示空调系统的全部检测
[2]吴晓.计算机工业控制技术[M].厦门:厦门大学出版社,2005
项目,便于集中观察比较。检测项目可用代号表示。并附有汉字
[3]宋志安,王文馨.液压泵测试数据处理技术[J].机床与液压,2005
名称和工程单位。
(1O):1O8—109 [收稿日期:2011.4.15]
.
S .址.;止
(上接第61页)
5结束语
参考文献
一
般在Web服务组合的数据流模型中,没有给出服务组合
[1]陈丁剑,吴健,马满福,等.基于Petri网的Web服务组合建模[J].计
的控制流结构,比如顺序、并行和循环等,同样的数据流模型,由
算机科学,2006,33(5):128—131
于控制结构的组合方式不同,组合服务的性能会有差异。即使给
『2]The OWL Services Coalition.OWL—S:Semantic Mark up for
出了控制结构,例如文献[2]基于OWL—S对Web服务和服务
Web Sewices http://www.dam1.org/services,2004
组合进行语义描述,但是缺乏直观性和动态性。
[3]倪晚成,刘连臣,吴澄.Web服务研究综述[J].计算机工程,2008,34
本文利用Petri网作为描述动态Web服务组合的模型。利
(4):79—81
用OWL—S的组合过程建立随机Petri网模型,在此基础上再进
[4]闰春钢,蒋昌俊,李启炎.基于Petri网的Web服务组合与分析[J].
行动态Web服务组合。
计算机科学,2007,34(2):1O0—105
[5]Ter Beek,M.,Bucchiarone,A.,Gnesi,S.FormaI Methods for
Petri网作为描述动态Web服务组合的工具,方便直观,但
Service Composition[J】.Annals of Mathematics,Computing
当Web服务数量较多,服务之间交互复杂时,可能会造成模型
and Teleinformatics,2007,Vo1.1(5),2007,1—1 O
状态空间的迅速增长,从而引起状态空间爆炸。所以,针对这个
[收稿日期:2011.4.22]
问题,在今后的研究中将进一步研究Petri模型的简化问题。
版权声明:本文标题:基于Petri网的动态Web服务组合建模 内容由网友自发贡献,该文观点仅代表作者本人, 转载请联系作者并注明出处:http://roclinux.cn/p/1715812487a689205.html, 本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容,一经查实,本站将立刻删除。
发表评论