首页> 中国专利> 一种基于扩展Petri网模型的语义Web服务组合方法

一种基于扩展Petri网模型的语义Web服务组合方法

摘要

本发明公开一种基于扩展Petri网模型的语义Web服务组合方法,其特征在于包括如下步骤:1)根据语义Web服务组合过程中所涉及的子服务,对原始的Petri网模型进行扩展,形成子服务的扩展Petri网模型;2)通过子服务的扩展Petri网模型,结合语义Web服务组合结果的形式化表示,实现语义Web服务组合结果的扩展Petri网模型的形式化描述及函数机制;3)基于步骤1)和步骤2)所得的扩展Petri网模型,实现语义Web服务组合。本发明以Petri网为基础模型进行扩展,并提出基于扩展后的Petri网模型的服务组合方法,实现子服务执行顺序的动态组合。

著录项

  • 公开/公告号CN103345541A

    专利类型发明专利

  • 公开/公告日2013-10-09

    原文格式PDF

  • 申请/专利权人 华南理工大学;

    申请/专利号CN201310220057.8

  • 发明设计人 刘发贵;林跃东;

    申请日2013-06-04

  • 分类号G06F17/50;

  • 代理机构广州粤高专利商标代理有限公司;

  • 代理人何淑珍

  • 地址 510640 广东省广州市天河区五山路381号

  • 入库时间 2024-02-19 20:03:36

法律信息

  • 法律状态公告日

    法律状态信息

    法律状态

  • 2016-10-05

    授权

    授权

  • 2013-11-06

    实质审查的生效 IPC(主分类):G06F17/50 申请日:20130604

    实质审查的生效

  • 2013-10-09

    公开

    公开

说明书

技术领域

本发明属于语义Web服务组合技术领域,针对语义Web服务组合模型与方法,根据用 户即时发起的服务请求进行处理,提出并实现了一种基于扩展Petri网模型的语义Web服 务组合方法,特别涉及如何处理并表示服务组合动态流程及子服务间复杂关联关系。

背景技术

语义Web服务将语义Web与Web服务相结合,利用语义Web丰富的语义描述能力和逻 辑推理能力,从而使得机器“智能”的理解Web服务与用户请求,实现服务的自动化发现、 组合、监控与调用。但由于单个语义Web服务的功能有限,已存在的单个服务无法满足用 户请求,如何智能分析用户请求,自动化发现多个服务并组合成为满足用户请求的复合服 务,已成为工业界与学术界共同关注的焦点问题与研究重点。

语义Web服务组合方法分为:业务流程驱动的语义Web服务组合和即时任务求解的语 义Web服务组合:(1)工作流程驱动的服务组合方法以工作流为基础模型,实现半自动的 服务组合,受固定流程限制,无法满足动态流程的需求;(2)根据用户提出的服务请求, 即时选取若干服务进行自动组合,主要有3大类:基于Petri网,基于AI理论和基于图搜 索,但均无法处理子服务间的复杂关联关系。

在组合算法的基础模型选择上,AI理论的组合方法依托形式化的表示与转化,如情景 演化、定理证明等方法,主要的模型有Pi演算、CCS等进程代数,虽具有动态演化特性, 但复杂性高;而基于Petri网模型的组合方法既能够满足动态性需求,复杂性低于AI理论 的方法,Petri网支持完全性、组合性与异步性等,图形化表示的直观性以及形式语义的 表达能力。

然而,当前的基于Petri网及其变种的行为模型存在以下不足:①无法充分的表示并 处理语义Web服务组合过程中的模型;②无法表示语义Web服务的复杂关联关系。

针对上述不足,本发明以Petri网为基础模型进行扩展,并提出基于扩展后的Petri 网模型的服务组合方法,实现子服务执行顺序的动态组合。

发明内容

本发明的目的在于解决已有方法无法处理子服务间复杂的关联关系的问题,本发明对 Petri网模型进行扩展,并提出基于该模型的服务组合算法。

为了实现上述发明目的,采用的技术方案如下:

一种基于扩展Petri网模型的语义Web服务组合方法,该方法包括如下步骤:

1)根据语义Web服务组合过程中所涉及的子服务的实际情况,对原始的Petri网模型 进行扩展,形成子服务的扩展Petri网模型;

2)通过子服务的扩展Petri网模型,结合语义Web服务组合结果的形式化表示,实现 语义Web服务组合结果的扩展Petri网模型的形式化描述及相关的函数机制;

3)基于步骤1)和步骤2)所得的扩展Petri网模型,实现语义Web服务组合算法。

上述的基于扩展Petri网模型的语义Web服务组合方法中,步骤1)进一步包括:

在语义Web服务组合的过程中,子服务的输入库所的实际输入信息的来源存在多种情 况,具体如下:

①当子服务的输入库所是来源于用户请求时,用IPreq表示。

②当子服务的输入库所是来源于其他子服务时,用IPsub表示。

③而当不存在任何的信息能够为该子服务提供输入时,用IPfree表示。

通过上述扩展,子服务的输入库所集表示为式(1):

IP=IPreq∪IPsub∪OPfree   (1)

通过对Petri网模型中的输入库所的类型进行细化,使得细化之后所得到的Perti网型 能够弥补已有模型中未能表示输入信息来源这一不足。

语义Web服务组合中的子服务的输出库所的用途存在多种情况:

①当子服务的输出库所为其他子服务提供用于前置条件判断的信息时,用OPpre表示。

②当子服务的输出库所与其他子服务的输入库所相匹配时,用OPsub表示。

③当子服务的输出库所与用户请求的目标输出相匹配时,用OPreq表示。

④当子服务的输出库所未被使用时,该输出库所被闲置,用OPfree表示。

通过上述扩展,子服务的输出库所集OP表示为式(2):

OP=OPpre∪OPreq∪OPsub∪OPfree   (2)

通过对Petri网模型中的输出库所的类型进行细化,使得细化之后所得到的Perti网型 能够弥补已有模型中未能表示输出信息的使用这一不足。

上述的基于扩展Petri网模型的语义Web服务组合方法中,扩展Petri网模型的库所表 示方法包括:

通过扩展后的Petri网模型中库所集主要分为四大类:输入库所(Input Place,IP)、输出 库所(Output Place,OP)、前置条件库所(Precondition Place,PP)以及后置条件库所(Effect  Place,EP),用2位二进制表示;输入库所又分为三个子类,输出库所又分为四个子类,用2 位二进制表示。具体如TABLE1所示:

Table1.库所二进制表示及颜色

在库所表示法中用(name,color)二元表示,其中,name表示库所名,color代表库 所具体的颜色缩写。

特殊的,当库所来自于用户请求中的信息时,用户请求中提供的输入信息,用初始子 服务的输出库所,用OPname表示。用户请求中所要求的目标输出信息,用作目标子服务的 输入库所,用IPname

库所类型的二进制着色表示的颜色集A如下:

A={0000,0100,1001,1010,1011,1100,1101,1110,1111}   (3)

扩展Petri网的库所类型集为

TypeSet={typep|P∈(Ppre,Peffect,OPreq,OPsub,OPpre,OPfree,IPreq,IPsub,IPfree)}

当给定库所的类型typep时,库所类型与二进制颜色集存在以下类型-颜色映射函数, 我们称之为着色函数,用ξ表示,则

ξ:typep→A   (4)

通过ξ函数,将库所的类型与颜色集中的二进制表示,仅用4位二进制数便可表示库 所类型,能够有效的节省存储空间,对原始Petri的影响可忽略不计。

本发明在原有的库所与变迁类型的基础上,新增ε库所与ε变迁,以处理并表示服务组 合过程中的复杂关联关系。

ε库所:表示通用的库所类型,与任何库所相匹配。

ε变迁:表示并处理(一对多与多对一),具有如下:

功能1(库所的复制-分裂功能):当某个子服务的一个输出库所能够同时满足多个子服 务时,ε变迁通过库所复制-分裂机制,生成多个该库所副本,用Tε_copy表示,用于表示并 处理一对多的关联关系。

功能2(库所的合并-选择功能):当多个输出库所能够同时满足一个子服务时,ε变迁 通过库所合并-选择机制,选择匹配程度最高的库所,这类ε变迁称为合并-选择的ε变迁, 用Tε_select表示,用于表示多对一的情况。

ε变迁可表示为式(5)

Tε=Tε_copy∪Tε_select   (5)

上述的基于扩展Petri网模型的语义Web服务组合方法中,步骤2)具体包括:

本发明中语义Web服务组合的扩展Petri网模型,用ExComPetri表示如下:

ExComPetri=(P,T,WS_Pset,R,ξ,λ,A)

其中,

(1)WS_Pset:表示用于服务组合的子服务集(即候选服务链),其中每个子服务均映射 为扩展Petri网模型,WS_Pset表示为:

WS_Pset={WS_P0,WS_P1,WS_P2,…,WS_Pk}

(2)P:表示库所集,

P=IPset∪OPset∪Ppre_set∪Peffect_set∪Pε

(3)T表示变迁集,其中包含子服务对应的变迁集Ts_set以及ε变迁集Tε。T=Ts_set∪Tε扩展Petri网模型的库所集与变迁集同样满足以下条件:P∩T=Ф,P∪T≠Ф

(4)R:(P×T)∪(T×P),表示从库所到变迁的关系及从变迁到库所的关系。

(5)ξ:typep→A,表示着色分类函数。

(6)λ:表示ε库所/ε变迁的添加函数。

上述的基于扩展Petri网模型的语义Web服务组合方法中,步骤3)具体包括:将候选 语义Web服务链中的子服务转换成为扩展后的Petri网模型WS_P,之后进行WS_P间的关 联与组合。通过输入库所隐藏函数Hide与着色分类函数对库所进行处理之后得到服务组合 结果的扩展Petri网ExComPetri对象。

本发明中的扩展Petri网模型具有以下优势:

(1)通过对库所类型的扩展,使得该模型能够根据子服务的服务描述文件转化成为扩展 Petri网的基础模型的对象,表示并处理子服务的IOPE等信息,不依赖任何流程描述语言。

(2)能够表示子服务间的交互关系以及执行的先后顺序。

(3)通过模型中的着色函数,使得该模型能够表示库所的是否被匹配、输入库所的数据 来源以及输出库所的作用和使用情况。

(4)表示服务组合过程中子服务的库所(1:n)与(n:1)的情况。

总之,与现有技术相比,本发明具有如下优点和技术效果:本发明针对服务组合过程 中子服务间的复杂关联关系,实现子服务执行顺序的动态组织,以Petri网为基础模型进行 扩展,形成满足语义Web服务组合的扩展Petri网模型,提出语义Web服务组合算法,以 候选服务链为输入,分析并处理子服务复杂关联关系,组织子服务的执行与调用过程,实 现执行顺序的动态组织;通过输入库所隐藏方法,使得算法所得到的扩展Petri网结果与原 始Petri网兼容;并且通过实验证实了其模型与算法具有有效性。已提出了行之有效的用来 实现子服务执行顺序的动态组织的一种基于扩展Petri网的语义Web服务组合方法。

附图说明

图1为实例中扩展后的Petri网模型示例图。

图2为基于扩展Petri网的服务组合算法代码图。

图3为候选服务链示意图。

图4为服务请求及子服务与扩展后Petri网的映射结果图。

图5为对C1输出库所的处理结果图。

图6为对输出集处理完毕后的结果图。

图7为经过λ函数处理后的结果。

图8为着色与隐藏输入库所后的结果。

具体实施方式

以上内容已经对本发明作出了充分的公开,以下再结合附图对本发明的实施作进一步 说明,但本发明的实施和保护范围不限于此。

本发明实例通过对输入输出库所的类型的细分并着色,通过OWL-S描述的语义Web服 务的功能信息(IOPE)映射到扩展后的Petri模型上,如附图1所示。

语义Web服务(子服务)的执行过程的行为,对应Petri网中的变迁,用Ts表示。对子 服务映射为扩展后的Petri网模型,用WS_P表示,如式(6)

WS_P=(IP,OP,Ppre,Peffect,Ts)   (6)

当子服务不包含PE信息时,Ppre=Ф并且Peffect=Ф,该子服务可表示为式(7):

WS_P=(IP,OP,Ts)   (7)

本发明所提出的扩展Petri网模型与原始的Petri网模型兼容。

本发明中的基于扩展Petri网模型的语义Web服务组合算法,如图2所示,算法输入数 据为候选服务链,对候选服务链中子服务进行执行顺序的动态组合,算法中涉及到的函数 如下:

SWToWS_P:将语义Web服务SW转化成为扩展Petri网的基本模型WS_P。

GetMatchList:根据当前指定输出库所相匹配的输入库所集,包含本体概念以及所属领 域的匹配。

Connect:将输出库所op与相应的输入库所连接。

GenerateExComPetri:将建立关联关系的SW_Pset、SW_Pinit、SW_Ptarget等建立 exComPetri的描述信息。

Hide:根据库所隐藏原则,将已建立关联关系的输入库所隐藏,使得所生成的服务组 合的扩展Petri模型不存在库所-库所的边。

本发明中的算法流程步骤如下:

(1)从用户请求中提供的输入信息作为起始的变迁及其输出库所(作为首层可用的输出库 所),作为首层的服务WS_Pinit。并将WS_Pinit的输出库所集OPinit作为当前可用 输出库所集。

(2)判断可用输出库所集中是否存在输出库所满足多个子服务WS_Pk的形式输入库所, 或者多个库所同时满足一个子服务的情况,并根据实际情况添加变迁进行库所的 分裂及合并操作

(3)从候选服务链中逐步选出后续的子服务并转换为扩展Petri网基本模型,将被选中的 子服务移出候选服务链

(4)根据(3)选择出来的子服务作为新一层,将这些子服务的输出库所进行判断是否能够 与目标输出进行关联并建立关联边。

(5)隐藏已经关联的形式输入库所与形式前置条件库所。

(6)更新可用输出库所

(7)当候选服务链非空,转向步骤(2),否则转向步骤(8)

(8)根据当前组合成的层次图,通过ξ函数对各个库所进行着色。

本发明的具体实施在实验中进行对本发明中的扩展Petri网模型以及服务组合算法进行 验证。

当用户发起即时服务请求中输入信息包含C1~C8,依次分别为:酒店信息

Hotel_Service_hotel;入住酒店时间Hotel_Service_beginDate;离开酒店时间

Hotel_Service_lastDate;付款的信用卡信息Hotel_Service_creditCard;个人联系信息

Hotel_Service_contactInformation;参加会议的联系信息

Conference_Service_contactInformation;缴费用的Conference_Service_creditCard;学院信息

Conference_Service_academicEvent。

用户请求中输出信息包含C9~C10,依次分别为:酒店使用信息

Hotel_Service_hotelInvoice;会议的注册确认信息Conference_Service_registrationReceipt。

附图3表示通过面向组合的候选语义Web服务链集获取方法得到的候选服务链,由 HotelService和ConferenceService组成。

HotelService对应WS_P模型的输入库所为I1~I5分别为:

Select_Hotel_hotel,Select_Hotel_beginDate,Select_Hotel_lastDate Payment_creditCard, Payment_contactInformation.

HotelService对应WS_P模型的输出库所O1~O2分别为:Payment_hotelInvoice, Select_Hotel_accomodationFee.

ConferenceService对应的WS_P模型的输入库所I6~I8分别为:

Sign_In_contactInformation,Select_Event_academicEvent,Pay_With_Credit_Card_creditCard。

ConferenceService对应的WS_P模型的输出库所O3~O8分别为:Sign_In_city, Sign_In_country,Sign_In_registrationFee,Sign_In_startDate,Sign_In_endDate, Pay_With_Credit_Card_registrationReceipt.

通过本发明中的服务组合算法,首先将服务请求及子服务转化成为扩展Petri网的基本 模型,转化的结果如附图4所示。用户请求中的输入信息C1~C8转化成为WS_Pinit的输出 库所,分别为OPC1~OPC8,用户请求的输出信息C9~C10转化成为WS_Pend的输入库所 IPC9~IPC10;子服务HotelService转化为WS_PHotelService,输入库所分别为IPI1~IPI5,输出库所 分别为OPO1~OPO2;子服务ConferenceService转化为WS_PConferenceService,输入库所分别为 IPI6~IPI8,输出库所分别为OPO3~OPO8.

组合算法首先将WS_Pinit的输出库所作为初始输出库所集,并遍历输出集查找能够与 之匹配的输入库所并建立关联关系,如对WS_Pinit中的C1的处理结果如附图5所示,当所 有的输出库所均被处理之后,可得如附图6所示的结果。

根据λ函数,判断扩展Petri网中是否存在未被匹配的输出库所,并在目标输出的WS_P 对象中添加ε库所,当为被匹配的输出库所有多个时,在扩展Petri网中添加ε变迁,将为 这些输出库所与ε变迁连接,并通过ε变迁与目标输出对应的WS_P对象中的ε库所连接, 形成附图7所示的结果。

经过着色函数ξ与Hide输入库所隐藏函数之后,得到的结果附图8所示。

通过基于扩展Petri网模型的服务组合算法,得到附图8所示的结果,直观表示子服务 间的关系,子服务HotelService与ConferenceService可以并行执行,最后共同得出用户请 求的目标输出。

去获取专利,查看全文>

相似文献

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

客服邮箱:kefu@zhangqiaokeyan.com

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

  • 服务号