一种情境感知的业务流程动态自适应方法*

2017-10-21 03:40黄贻望徐松金
网络安全与数据管理 2017年19期
关键词:精化定义建模

黄贻望,徐松金

(1. 铜仁学院 大数据学院,贵州 铜仁 554300; 2. 中国科学院自动化研究所,北京 100190)

一种情境感知的业务流程动态自适应方法*

黄贻望1,2,徐松金1

(1. 铜仁学院 大数据学院,贵州 铜仁 554300; 2. 中国科学院自动化研究所,北京 100190)

提出一种基于服务应用的综合框架,在这个框架中开发过程碎片的概念。过程碎片是过程知识重用的建模方法,可以将过程碎片的动态、增加和情境感知组合应用到动态服务应用。框架提供了适应机制集合,通过适应策略进行组合,从而能够解决复杂的适应问题。

自适应;情境感知;基于服务应用;流程碎片

0 引言

面向服务(RGPS中的S)范型的关键优势是有可能减少软件应用的开发和维护成本[1-4]。充分利用这个优势的关键因素是:面向服务应用的适应能力(例如,为了满足新的需求和新形势可以适时修改自身的行为进行演变)。考虑到因特网服务的挑战,这里的应用服务必须适应持续不断变化的环境:应用操作的情境(Context)和所涉及到的服务(Service),使用者及提供者(Role)。在这种情形下,同一个应用能够面对不同情境进行不同的操作,处理如事先不知道涉及到的服务和对新情形进行动态改变等[3]。

研究者对于基于服务系统的适应性问题,作了大量的研究工作[5-6,10-12],但大多数研究工作是集中于服务适应能力的静态方面,不能应用于动态设置,这些动态设置都不能在设计阶段进行定义。在动态适应方法中,适应性活动(因果网中处理的也是活动)是指该活动满足在当前执行环境和某些特殊需求运行过程中自动产生的约束。大多数方法都会约定范围进行局部的适应(如替换)。而且,执行环境的角色(RGPS中的R)也很少考虑进去[7-8]。

在本文提出的框架中,(1)允许在设计阶段部分规格化(粗粒度规格),而在运行阶段考虑到特有的执行情境时进行自动精化(refinement)。这种精化过程主要是开发利用过程碎片,它是通过其他扮演者(角色)和系统提供的角色,这种扮演者和系统能够在特定情境中描述提供给过程的服务和能力;(2)同时支持在运行阶段对能够影响到应用执行的异常情况进行适应处理,这种适应处理是通过一个适应机制集为应用的重新执行状况由适应策略进行适当组合而获得的,而不同适应能力机制是通过AI人工智能规划技术来实现的[9]。

方法的应用场景是一个基于海港操作的汽车场景:它处理汽车由船运达到提交给零售商的全部操作,必须承担涉及到的各参与者的高复杂性度(different roles),每个参与者都有自己的规则和法律(Role’s constraints, rules),同时要承担执行环境的动态性(Contextual properties)(如港口设备的可用性、意外的损坏、人为错误或规则的改变等)。

1 应用场景

这里是指德国不莱梅的一个港口城市,每年有无数车辆需要处理(从制造商到零售商的交付),如图1所示。每辆汽车的交付过程包含了一个能够根据汽车的商标模型及特有零售商的需求进行个性化定制的过程集。如汽车被船运达、卸货,并在终端解包。一旦解包后,需根据其汽车类型和停车场空间的可用性,汽车被移动到固定存储区域,不同的存储区域需要执行不同的停车过程。停完后汽车直到被零售商订购后空出停靠位置,而汽车一旦被零售商订购后需进入一个提交过程,汽车准备提交就被指派一个提交港口(gate),然后装上卡车,最终提交给零售商。

图1 汽车交付流程的自适应机制架构(略图)

本文目的是开发一个应用系统用来支持港口的操作和管理(CLS),这个系统涉及到多个参与者(ROLE)(汽车、船工、卡车、处理位置等)根据自身过程和业务策略进行协同合作。这个场景应用需要根据扮演者的可变性即个性化过程和影响到操作的情境变化来处理场景的动态性。个性化是指汽车的不同商标和模型需要以个性化的方式进行相似化处理。而且针对新的汽车模型(R),它有自身特定的需求(goal)和规程或程序(process),必须能够很容易地整合到应用中去。类似的,应用需要灵活处理如船和卡车等外部参与者规程的改变。最后,应用需要反映国际规则和法律的改变(Role’s constraints),要考虑情境的动态性(dynamic context)。

2 方法概述

2.1应用模型

对基于碎片动态适应情境感知系统(CLS)提出一个建模框架。框架建模包括一个实体集,每个实体用自己的业务流程(business process)来规格自身的行为。这种业务过程与传统的静态描述规约不一样,其定义的是动态业务过程,是能够根据系统提供的特征在运行时进行实时精化的。然后这些实体动态地加入到系统中去,并通过过程碎片发布这些实体的功能,这些实体的过程碎片能够被其他实体进行交互使用并能够被发现,使用发现的这些过程碎片进行动态的精化。如:在CLS中,不论船什么时候到达港口,它都能够得到由登陆管理者和关口提供的过程碎片。这些过程碎片是对特有海港的规程和法则进行建模,都能够被船只在进行登陆时执行的。由不同关口提供的不同碎片可以被某个特定的船只使用。类似的船只会发布它为卸货面实现的碎片。这个框架另外一个特征是将在设计阶段分析所有可能的异常情境,通过运行阶段进行异常行为处理和替代的可能性,然后在业务过程中植入一些相关的发现活动。这种方法极大简化了应用动态环境中的业务过程,因此,设计者没必要考虑和规约针对特有情形而作的所有可能替代。

前述这种框架的动态特征依赖于情境模型,这个情境模型描述系统的操作环境。这个情境是通过情境属性来定义的,每个属性都描述一个系统的特定方面(如:汽车当前的位置,存储区域的位置等)。情境属性可能会随着一个领域正常行为(如汽车的当前位置是在存储区域A)相关的碎片活动执行效果或异常改变(汽车的受损环境或存储区域不可用等)的结果而演化。情境配置是特定时间的一个情境快照,是捕获所有情境属性的当前状态。例如:汽车位置图(CarLocation)捕获的是汽车怎样随着时间进行位置的改变。最初状态为汽车登船,则此阶段汽车的流程活动状态是从货物卸载到货物拆封,然后将货物移动到仓库。在处理位置时对汽车进行装饰。类似的,汽车状态图(CarStatus)表示了汽车的操作状态,如由一个异常事件损坏导致汽车状态由ok到nok。

业务过程和碎片是通过APF(Adaptable Pervasive Flows)来建模的,一种传统工作流语言的扩展,以适应普适动态的业务流程执行环境。APF除了经典的工作流语言具有结构处,还通过带有标注前件和效果活动增加了关联系统情境过程执行的可能性。前件对特有的情境配置的执行活动进行约束,在该框架中,对支持适应的和预期行为的非正常行为进行捕获。效果是对系统情境的执行活动的预期影响进行建模,应用于碎片或过程执行序列的自动推理。

最后,为了使建模具有动态过程,扩充APF结构使得其能够对过程碎片的个性化和适应性进行建模。特别的,介绍通过碎片对抽象活动进行规格的可能性,抽象活动是根据在设计阶段要达到的目标定义的,表示为要达到的情境配置,能够在运行的执行过程中进行精化,这里要考虑有效的碎片集、当前情境配置和达到的目标。

2.2适应机制

为达到情境感知的普适系统的动态性需提出不同的适应机制,该框架能够处理两种不同的适应需求:在一个过程实例中对抽象活动的精化需求和活动的情境前件违背的情形下执行;第二种适应的目标是通过将系统恢复到能够重新执行的过程的状态中去解决违背性。

(1)精化机制:当抽象活动在过程实例中需要精化时触发。该机制的目的是自动组合有用的流程碎片,这些流程碎片需考虑到跟抽象活动相关的目标和当前情境配置。精化结果是一个组合由系统中其他实体提供的碎片的可执行过程,如果这个可执行过程执行的话,则会满足抽象活动的目标。运行时进行精化的优势有两点:有效的碎片并不总是在设计时所熟知(如:卡车到提交区域可能提供自己的卸载碎片);组合对当前的执行情境有强依赖性(如:存储区域可能满,从而当前碎片不可用)。

考虑到图1中A1主要的汽车过程的存储抽象活动。活动的执行是自动精化并组合了由不同实体提供的5个有效的碎片(如:存储管理者—注册、存储指定,存储区域A—存储到A,存储区域A—存储到B,存储区域A—存储到C)。这种精化注入到汽车过程实例中去并能继续执行并达到目标。在组合的碎片中也可能包括需进一步精化的过程执行。这种持续精化的结果构成了多层执行模型(如图1),最顶层是最初的过程实体和逐步精化相关的中间层。

(2)本地适应机制:是指具有对一个特定活动中产生的一个错误流程进行重新配置并启动的解决方案。因此,需生成一个组合碎片然后执行将系统带入到满足活动前件的情境配置。

举例:在图1中1B的A1中,汽车过程准备执行注册碎片中的Registration Reply活动,因汽车受到损坏,使得这个活动的前件P1无效。在这个实例中的本地适应是需要对汽车进行修复(如:属性CarStatus=ok必须保持)。这个目标通过两个碎片达到:允许将汽车移动到处理的地点(MoveToTreatment)并做修复(repairment)。在执行这个本地适应过程后,汽车过程实例又重新回到初过程执行状态。

(3)补偿机制:这个机制用于动态计算特定活动的补偿过程。这个补偿过程是由当前情境和满足补偿目标执行选择的过程碎片组合。

2.3适应策略

适应策略是为了实现有效组合适应机制而设计的。它能够处理那种不能单独由适应机制解决的复杂适应性问题。如一个活动前件的违背不能由本地适应能力机制来解决,另一个例子是由无效的碎片组合满足特有情境目标引起的失败抽象活动精化问题。

框架提供适应机制的不同组合方式:一次对齐适应机制是为一个单一的适应问题进行不同适应机制的组合,即发现一个解决方案就执行;另一个是增量适应机制,是指可能性策略中的每一个适应机制被呼叫并且应用下一个适应机制之前适应进程也被执行。这种适应机制交错过程的执行使得可以为特定执行情境进行调整,其主要缺点是不能提前知道策略是否被完全执行。

重精化策略:是指重复抽象活动的精化流程的过程。目的是补偿标记为补偿目标的所有精化活动,然后计算满足抽象活动目标的新精化过程,同时考虑新的情境配置。

后退适应机制策略:将过程实例带回到过程先前执行的活动,给定新的情境配置,能够允许不同的执行决定。这种策略需要对所有需回滚活动进行补偿,并将系统带回到满足前件活动执行的情境配置。

3 形式化框架

3.1相关定义

(1)情境属性:每个情境属性都建模成一个情境属性图,这是一个捕获所有属性值和值改变的状态转移系统。每个转移都标记相关的情境事件。

定义1:情境属性图是一个四元组c=〈L,L0,E,T〉,这里:

L是情境状态集且L0⊆L为初始状态;

E=Eunc∪Ecnt是情境事件集,Eunc是不可控事件集,Ecnt是可控事件集,因此Eunc∩Ecnt=φ;

T⊆L×E×L是转移函数。

标记L(c)、E(c)等作为情境属性图C的相关元素。所有情境通常相当复杂并且需要一个情境属性图C的集合规约。在这种情形下,一个情境状态是它的属性图的状态集合,形式上定义情境配置空间为L=Πc∈CL(c),同时也定义:Ecnt=∪c∈CEcnt(c)。

(2)过程碎片:用状态迁移系统对过程碎片进行建模,每个迁移都有一个相关特殊的碎片活动。区分4种活动:过程间通信的输入和输出活动;对过程内部规格建模的具体活动;与过程的抽象活动相关的抽象活动。如前文所述,活动标注了前件、效果和补偿,而抽象活动标注目标。在定义过程碎片中,通过标签函数获得。

定义2:过程碎片是定义在情境属性图C上的一个元组p=〈S,S0,A,T,Ann〉,这里:

S是一个状态集且S0⊆S是初始状态集合;

A=Ain∪Aout∪Acon∪Aabs是一个活动集,这里的Ain是输入活动集,Aout是输出活动集,Acon是具体活动集,Aabs是抽象活动集;

T⊆S×A×S是转移函数;

(3)过程和系统执行:接下来定义的是捕获给定过程的执行的当前状态。如图1所示,过程是一个层次结构,它是通过由抽象活动精化为碎片得到的。过程配置定义一系列的三元组,第一个三元组描述当前执行的碎片,当前活动及执行当前活动的过去活动的历史,其他三元组先前执行活动的历史,都伴随着当前执行下的抽象活动和过往历史。活动历史记录对于后退适应的执行是必须的,决定哪个补偿需要执行。

定义3:过程配置是一个非空的三元组序列:

Ep=(p1,a1,h1),(p2,a2,h2)…(pn,an,hn)

这里pi是过程碎片,ai∈A(pi)是与过程碎片相关的活动,且ai∈Aabs(pi)对i≥2(如任何被精化的活动都是抽象的),hi∈A(pi)*是过程碎片执行过的活动序列。整个系统的配置主要是通过情境属性的当前配置、系统中过程的配置及有效的碎片集定义的。具体定义如下:

定义4:系统配置是指给定一个情境属性图的集合C,定义C上的系统配置为一个元组S=〈I,ε,F〉,这里:

I∈L(c1)×…×L(cn),ci∈C,是情境属性图的当前配置;

ε∈Ep1×…×Epn是运行过程的当前配置;

F是有效碎片集。

然后用I(S)、ε(S)标记系统配置S中的相关元素。受篇幅所限,这里没有给出系统配置演化的形式化定义。

3.2适应

(1)总适应问题:用于对不同适应机制进行形式化,包含系统配置和适应目标的完整信息。

定义5:适应问题是一个元组ξ=〈S,G〉,S是当前系统配置,G是C上的适应目标。

对于目标,使用EAGLE定义自动规划范围内的复杂目标,解决总适应问题实际上是获取有效碎片的过程Madapt,在没有异常事件的情形下,确保情境配置的结果满足目标G。

(2)从适应策略到适应问题:将使用于系统配置中过程实例EP的适应策略和机制转化成总的适应问题,如何将获取的进程Madapt从一个适应系统配置S应用研究于新的配置S′。

本地适应:这种自适应机制能够应用于解决当Pre(a1)有效时a1不能执行的情形。这意味着为问题ξ生成一个自适应解决方案,这里G(ξ)=Pre(a1).S,是从S中通过不断更新Ep得到的,Ep=(p1‘,a0,h1), (p2,a2,h2)…(pn,an,hn),p1通过前面a1活动的自适应机制获得。

4 结束语

本文提出一种基于情景感知的流程碎片自适应方法构架,可以将此框架应用于实际的业务流程管理。存在的挑战是学习从过去的适应机制找到最优的策略,以解决具体的自适应问题,并使用这种分析结果,提高业务流程管理策略。同时也需进一步研究用规划最优适应活动提升复杂标准的可能性,即不仅考虑时间成本,还要考虑副作用极小、最小的执行成本等。

[1] BERTOLI P, KAZHAMIAKIN R, PAOLUCCI M, et al. Control flow requirements for automated service composition[C]. In Proc. ICWS’09, 2009: 17-24.

[2] BÖSE F, PIOTROWSKI J. Autonomously controlled storage management in vehicle logistics applications of RFID and mobile computing systems[J]. International Journal of RT Technologies: Research an Application, 2009,1(1): 57-76.

[3] BUCCHIARONE A, KAZHAMIAKIN R, PISTORE M, et al. Adaptation of service-based business processes by contextaware replanning[C]. In SOCA 2011, 2011:1-8.

[4] LEONI M De. Adaptive process management in highly dynamic and pervasive scenarios[C]. In Proc. YR-SOC, 2009: 83-97.

[5] 韩伟伦,张红延.业务流程建模标注可配置建模技术[J].计算机集成制造系统,2013,19(8): 1928-1934.

[6] 洪余柯,赵祎,姚青.基于活动依赖实现业务流程可变性的BPMS模型[J].计算机应用研究,2009,26(9): 3348-3353.

[7] KRAMER J, MAGEE J. Self-managed systems: an architectural challenge[C]. In 2007 Future of Software Engineering, FOSE ’07, 2013: 259-268.

[8] MARCONI A, PISTORE M, TRAVERSO P. Automated composition of web services: the ASTRO approach[J]. IEEE Data Eng. Bull, 2008, 31(3): 23-26.

[9] 刘红,刘祥伟,王丽丽.基于配置变迁的业务流程模型优化分析方法[J].计算机科学,2016,43(S2):509-512.

[10] RAIK H, BUCCHIARONE A, KHURSHID N, et al. Astro-captevo: dynamic context-aware adaptation for service-based systems[C]. In SERVICES, 2014.

[11] 杜磊,阚媛,李华,等. 应急预案流程的Petri网建模方法研究[J]. 微型机与应用,2014,32(9):345- 350.

[12] ZHAI Y, ZHANG J, LIN K. Soa middleware support for service process reconfiguration with end-to-end qos constraints[C]. In ICWS, 2015: 815-822.

Dynamic adaptation of business processes based on context-aware

Huang Yiwang1,2, Xu Songjin1

(1. School of Data Science, Tongren University, Tongren 554300, China;2. Institute of Automation, Chinese Academy of Sciences, Beijing 100190, China)

We propose a comprehensive framework for adaptively of service-based applications, which exploits the concept of process fragments as a way to model reusable process knowledge and to allow for the dynamic, incremental, context aware composition of such fragments into adaptable service based applications. The framework provides a set of adaptation mechanisms that, combined through adaptation strategies, are able to solve complex adaptation problems.

dynamic service adaptation; context-aware; service-based application; business fragment

TP311.5

A

10.19358/j.issn.1674- 7720.2017.19.007

黄贻望,徐松金.一种情境感知的业务流程动态自适应方法[J].微型机与应用,2017,36(19):23-26.

国家自然科学基金(61562073);贵州省科学技术厅联合基金项目(黔科合平台人才[2016]5611,黔科合LH字[2015]7248号);贵州省教育厅项目(黔教合人才团队字[2015]67号,黔教合KY字[2016]051号);铜仁学院博士启动基金(trxyDH1602)

2017-04-12)

黄贻望(1978-),男,博士后,副教授, CCF会员,主要研究方向:服务计算、业务流程管理、形式化方法等。徐松金(1970-),男,副教授,主要研究方向:数学建模、优化算法。

猜你喜欢
精化定义建模
增量开发中的活动图精化研究
联想等效,拓展建模——以“带电小球在等效场中做圆周运动”为例
特殊块三对角Toeplitz线性方程组的精化迭代法及收敛性
基于PSS/E的风电场建模与动态分析
不对称半桥变换器的建模与仿真
n-精化与n-互模拟之间相关问题的研究
成功的定义
三元组辐射场的建模与仿真
修辞学的重大定义
山的定义