孫 成,劉海燕
(東北電力大學 教務(wù)處,吉林 吉林 132012)
工作流管理系統(tǒng)是一個完整定義、管理和執(zhí)行的“工作流”,通過軟件的執(zhí)行順序執(zhí)行工作流邏輯的計算機驅(qū)動[1].工作流管理系統(tǒng)主要給工作流建模和工作流執(zhí)行提供支持.工作流建模階段,工作流管理系統(tǒng)為使用者提供了創(chuàng)建、執(zhí)行和管理工作流模型的時間環(huán)境,并且工作流執(zhí)行程序提供了一個用戶或應(yīng)用程序可能發(fā)生交互聯(lián)系的工作流實例.在整個或部分業(yè)務(wù)流程過程中,工作流根據(jù)一套程序規(guī)則將文檔、信息或任務(wù)從一個參與者傳遞到另一個參與者.為了實現(xiàn)工作流管理的工程,業(yè)務(wù)必須從現(xiàn)實世界中抽象出來并且用一種形式化的方法描述出來,從而產(chǎn)生了工作流模型.創(chuàng)建一個定義良好的工作流模型是工作流執(zhí)行的必要條件,在工作流管理系統(tǒng)發(fā)展過程中,已經(jīng)提出了許多方法來尋找一個通用的、正規(guī)的方法來描述業(yè)務(wù)流程[2~4],一些研究者也從不同角度分析工作流模型并且構(gòu)建基于各種框架的工作流模型[5~6].
這些方法側(cè)重于特定業(yè)務(wù)領(lǐng)域的工作流模型設(shè)計,并試圖找到一個通用的形式化方法來描述工作流模型.抽象是人們感知、概念化和推理的普遍行為,很多學者對人工智能領(lǐng)域中的抽象概念作了大量研究,例如機器學習[7],基于模型的診斷等[8~9].Saitta和Zucker[10~11]等提出了表示改變的抽象模型,這個模型被稱為KRA(Knowledge Reformulation and Abstraction),目的是為了幫助問題的概念化和抽象操作的自動應(yīng)用.KRA模型將工作流建模過程作為一個迭代的“感知-抽象”過程[12].此外,在本體類擴展過程和它們之間映射的研究基礎(chǔ)上,特別是基于目標感知的概念,提出了形式化的基于目標的分層工作流抽象建模過程[13~17].
本文將系統(tǒng)中心本體的概念引入到工作流建模中,形式化描述分層的工作流建模過程.提出了基于工作流片段的本體類概念,從兩個角度給出了基于工作流片段的本體類的分層抽象過程:工作流片段抽象和工作流片段聚合.工作流片段抽象通過基本行為感知本體類和抽象行為感知本體類之間的映射關(guān)系進行操作,工作流片段通過將目標不可區(qū)分的工作流片段感知進行聚合操作改變其抽象度.基于工作流片段的本體類給出了系統(tǒng)中心知識的學習、共享和重用的機制,節(jié)省了工作流模型的再設(shè)計和再建模的成本.基于工作流片段的分層抽象模型(系統(tǒng)中心本體角度)比基于對象中心本體的角度構(gòu)造的分層模型更加抽象,推理過程更加清晰簡化.
本節(jié)引入文獻[13]中的一些概念,并對其進行擴展,同時定義了一些新的概念,以便后面章節(jié)使用.
定義1(行為感知,Activity Perception):一個行為感知ActP是一個五元組,即,ActP=(ActType,AgentsType,ResourceIN,ResourceOUT,Conds),其中ActType是行為的類型,AgentsType是包含在行為中的參與者的類型,ResourceIN是行為處理的資源類型,ResourceOUT是執(zhí)行行為過程中生成的資源類型,Conds是約束條件的集合,在滿足這些約束條件的前提下,行為能夠得以執(zhí)行.
本節(jié)將行為感知分為基本行為感知(Fundamental Activity Perception,F(xiàn)undActP)和抽象行為感知(Abstract Activity Perception,AbsActP).FundActP通過感知特定領(lǐng)域的具體工作流得到,而AbsActP是使用預(yù)先定義的算子作用于一個或多個基本行為感知得到的結(jié)果,這些算子根據(jù)相關(guān)知識定義,如結(jié)構(gòu)知識、行為知識、功能知識和目標知識等等.因此,基本行為感知集合與抽象感知集合之間的多對一映射可以通過這些算子操作運算得到.
定義2(行為關(guān)系感知,Activity Relation Perception):假設(shè)兩個行為感知ActP1和ActP2,它們之間的關(guān)系定義為一個四元組,ActRelP=(ActP1,ActP2,ActRelType,ActRelConds),表示當條件集合ActRelConds中的約束條件成立時,ActP1和ActP2具有類型為ActRelType的有序關(guān)系.
可以使用不同的表示來理解行為關(guān)系感知ActRelP的定義,如下:
當行為感知ActP1完成時,發(fā)生行為感知ActP2以及行為關(guān)系感知ActRelP,因此,在這個關(guān)系中ActP1稱為主動行為感知,ActP2稱為被動行為感知.另外,ActP1的輸入資源ResourceIN定義為ActRelP的輸入資源,而ActP2的輸出資源ResourceOUT定義為ActRelP的輸出資源.
兩個工作流對象之間的關(guān)系顯示了它們的執(zhí)行順序.基本行為感知之間的關(guān)系表示為FundActRelP,抽象行為感知之間的關(guān)系表示為AbsActRelP.根據(jù)基本行為感知集合和抽象行為感知集合之間的映射關(guān)系,構(gòu)造由工作流對象關(guān)系構(gòu)成的映射集合.
根據(jù)行為感知的類型,將基于行為的本體類分成基本行為本體類(Fundamental Activity Ontology Class,F(xiàn)undActOC)和抽象行為本體類(Abstract Activity Ontology Class,AbsActOC),它們分別由基本行為感知和抽象行為感知構(gòu)成.
由基本行為關(guān)系感知構(gòu)成的行為關(guān)系本體類定義為基本行為關(guān)系本體類(Fundamental Activity Relation Ontology Class,F(xiàn)undActRelOC),由抽象行為關(guān)系感知構(gòu)成的行為關(guān)系本體類定義為抽象行為關(guān)系本體類(Abstract Activity Relation Ontology Class,AbsActRelOC).
在文獻[13]中,給出了工作流模型的形式化定義,其中工作流模型可以由基本部件和關(guān)系構(gòu)成,也可以由抽象部件和關(guān)系構(gòu)成.還描述了基于行為的本體類的生成過程,以及工作流抽象建模的分層過程.基于行為的本體類是一個對象中心的本體類的概念,將引入系統(tǒng)中心本體類的概念來定義工作流片段和基于工作流片段的本體類,從而形式化地描述更加抽象的工作流建模過程來幫助進行自動推理.
例1 為了更清楚地表示以上概念,我們引入文獻[13]中的“申請論文答辯”工作流的例子,其基本工作流抽象模型,如圖1所示.行為感知以及行為關(guān)系感知的內(nèi)容在此不贅述.
圖1 “申請論文答辯” 的基本工作流模型
將本體類之間的映射關(guān)系做以改變,簡化表示如圖2所示.
圖2 本體類之間的映射關(guān)系
基于上面給出的定義引入幾個新的概念.
定義5 (工作流片段,Workflow Fragment):一個工作流片段是一個三元組,即,WfFrag=(WfFragType,ActPs,ActRelPs),其中:
(1)WfFragType表示工作流片段的類型,即工作流的執(zhí)行域;
(2)ActPs是到基于行為的本體類中的行為感知的映射的集合,每個映射對應(yīng)的行為感知表示構(gòu)成工作流片段的任務(wù)步;
(3)ActRelPs是行為感知集合ActPs 中的行為感知之間的關(guān)系,顯示了工作流片段的執(zhí)行順序.
作為一個工作流片段,ActPs應(yīng)該包含一個類型為ACTIVE的行為感知映射,表示工作流片段的起點.同時,一個工作流片段應(yīng)該終止于某個行為感知,保證這是一個閉合的過程.起始行為感知和終止行為感知應(yīng)該用特殊的標識符表示.兩個工作流片段之間的關(guān)系應(yīng)該通過它們中相互關(guān)聯(lián)的行為感知構(gòu)建.
基本工作流片段(Fundamental Workflow Fragment,F(xiàn)undWfFrag)由與FundActOC和FundActRelOC關(guān)聯(lián)的映射構(gòu)成,可以從特定領(lǐng)域中運行的具體工作流感知得到.抽象工作流片段(Abstract Workflow Fragment,AbsWfFrag)通過FundActOC和AbsActOC以及FundActRelOC和AbsActRelOC之間的映射關(guān)系得到.
圖3 基于基本工作流片段的模型
例2 圖1所示的“申請論文答辯”工作流的基本模型包含的基本工作流片段表示如下:
FundWfFrag2=(Type2,{START,ActP1,ActP2,ActP3,ActP5,END},{ActRelP1,ActRelP2,ActRelP3,ActRelP6,ActRelP7});
FundWfFrag3=(Type3,{START,ActP1,ActP2,ActP3END,ActP4,},{ActRelP1,ActRelP2,ActRelP3,ActRelP4,ActRelP5});
FundWfFrag4=(Type4,{START,ActP1END,ActP7},{ ActRelP1,ActRelP8,ActRelP9}).
基于基本工作流片段的模型,如圖3所示.
Reli(ActPj)表示兩個基本工作流片段之間具有關(guān)系Reli,該關(guān)系由行為感知ActPj的行為確定.圖3所示的模型的基于抽象工作流片段的模型可以通過圖2中的本體類之間的映射關(guān)系實現(xiàn),這里不再贅述.
本節(jié)引入基于工作流片段本體類的概念,從基于對象的角度和基于流的角度分別給出該本體類的抽象分層過程.
定義6(基于工作流片段的本體類,Workflow Fragment-based Ontology Class):一個基于工作流片段的本體類是一個二元組,即,WfFragOC=(WfFrags,WfFragRels),其中WfFrags表示工作流片段的集合,WfFragRels是工作流片段之間的關(guān)系集合.
圖4 基于WfFragOC的工作流模型
例3 基于工作流片段的本體類WfFragOC為基于流片段的工作流抽象模型所共享和重用.圖3中的工作流模型中各個組成要素可以簡化為到WfFragOC中的流片段的映射,即基于WfFragOC的工作流模型,如圖4所示.
其中MFi(1≤i≤4)表示到FundWfFragOC中的基本工作流片段的映射,MRj(1≤j≤3)表示到FundWfFragOC中的關(guān)系的映射.
基本工作流片段本體類(Fundamental Workflow Fragment-based Ontology Class,F(xiàn)undWfFragOC)由基本流片段和它們之間的關(guān)系構(gòu)成,如例2和例3所示.將抽象工作流片段本體類(Abstract Workflow Fragment-based Ontology Class,AbsWfFragOC)定義為比基本工作流本體類更抽象的本體類,可以通過以下兩種方法實現(xiàn):
(1)工作流片段抽象:基于工作流片段的本體類中的工作流片段感知可以通過用更抽象的行為感知做替換操作得到.
(2)工作流片段聚合:引入多重抽象知識,比如功能知識和目標知識,來定義工作流片段感知的性質(zhì),并且通過特定的抽象算子將具有相同性質(zhì)的工作流片段感知聚合成更加抽象的工作流片段.
工作流片段感知過程用來生成工作流本體類,這個過程是通過感知具體的工作流實現(xiàn)的.如果工作流模型是基本的,則可以得到基本工作流片段本體類;如果工作流模型是抽象的,則可以得到抽象工作流片段本體類.但是實際上,抽象工作流片段本體類也可以通過基本行為感知本體類與抽象行為感知本體類之間的映射關(guān)系自動生成,具體過程如算法1所示.
算法1 WfFragmentPerception
(1) 在給定的工作流感知中搜索類型為ACTIVE的行為感知A;
(2)跟蹤從A出發(fā)的輸出流(也許不止一條),直到遇到類型為END的行為感知或者返回A的流或者陷入死循環(huán)的流;
(3)構(gòu)造該工作流經(jīng)過的行為感知映射集合,定義工作流片段感知的目標感知并確定其工作域;
(4)重復(fù)(1)~(3),直到所有類型為ACTIVE的行為都被處理過;
(5)利用共享的行為感知構(gòu)造工作流片段感知之間的關(guān)系集合.
工作流片段本體類的抽象度隨著算法1中感知的具體工作流的抽象度不同而變化,也可以通過使用圖4中的非直接映射關(guān)系M3改變其抽象度.從工作流抽象度的變化角度,這是一個流片段本體類的分層抽象過程.
除此之外,也可以定義抽象算子來聚合擁有相同目標感知的工作流片段,從而工作流片段本體類中的工作流片段減少,從改變工作流片段本體類本身的抽象度的角度實現(xiàn)了工作流片段本體類的分層抽象過程.
這里引入文獻[13]中的目標感知的概念定義兩個不可區(qū)分的工作流片段感知,給出工作流片段本體類的分層過程.
定義7 (目標不可區(qū)分的工作流片段感知,Goal-Indistinguishable Workflow Fragment Perceptions):兩個工作流片段WfFragP1和WfFragP2是目標不可區(qū)分的,當且僅當它們的目標感知是一致的.
工作流片段感知的目標感知可以通過迭代地聚合行為感知(這些行為感知構(gòu)成了工作流片段)的目標感知來獲得,如文獻[13].
工作流片段本體類的分層抽象過程以及基于系統(tǒng)中心本體類的工作流建模過程,如圖5所示.虛線表示兩個連接部分的映射關(guān)系,而實線則表示運算和結(jié)果.映射M1的算子定義見文獻[13],映射M2和M3可以通過映射M1間接生成.
圖5 工作流片段本體類的分層抽象過程以及基于系統(tǒng)中心本體類的工作流建模過程
本文提出了工作流片段本體類的概念,來完善推理能力以及降低基于對象中心本體的抽象建模過程.同時工作流片段本體類給出了系統(tǒng)中心的知識學習、共享和重用的機制來節(jié)省工作流模型再設(shè)計和再建模的成本.在未來的工作中,我們將繼續(xù)探索和擴展不可區(qū)分的工作流片段的知識范圍,而不是局限于基于目標知識的角度,比如服務(wù)層、角色域等,從而實現(xiàn)工作流片段本體類的多重知識分層表示.