亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        基于對(duì)齊的BPMN 2.0模型符合性檢測(cè)算法

        2017-09-15 08:48:13汪玉泉聞立杰閆志強(qiáng)
        關(guān)鍵詞:代價(jià)日志網(wǎng)關(guān)

        汪玉泉 聞立杰 閆志強(qiáng)

        1(清華大學(xué)軟件學(xué)院 北京 100084)2 (首都經(jīng)濟(jì)貿(mào)易大學(xué)信息學(xué)院 北京 100070)

        基于對(duì)齊的BPMN 2.0模型符合性檢測(cè)算法

        汪玉泉1聞立杰1閆志強(qiáng)2

        1(清華大學(xué)軟件學(xué)院 北京 100084)2(首都經(jīng)濟(jì)貿(mào)易大學(xué)信息學(xué)院 北京 100070)

        (272269222@qq.com)

        符合性檢測(cè)方法作為比較和關(guān)聯(lián)事件日志與流程模型的技術(shù),是三大核心流程挖掘技術(shù)之一,可用于量化符合性和診斷偏差.BPMN 2.0模型具有豐富的表達(dá)能力,能夠表達(dá)多實(shí)例、子流程、邊界事件、OR網(wǎng)關(guān)等多種復(fù)雜模式,但是目前還沒(méi)有針對(duì)這些復(fù)雜模式的BPMN 2.0模型符合性檢測(cè)算法.針對(duì)該問(wèn)題,提出了基于對(duì)齊的BPMN 2.0模型符合性檢測(cè)算法Acorn,該算法支持上述多種復(fù)雜模式.在深入分析BPMN 2.0模型中多種復(fù)雜模式的具體語(yǔ)義并分析其具體使能情況的基礎(chǔ)上,Acorn算法引入對(duì)齊操作,利用A*搜索算法尋找到代價(jià)最小的匹配軌跡,同時(shí)引入虛擬代價(jià)和預(yù)估代價(jià)來(lái)對(duì)A*算法進(jìn)行搜索空間的優(yōu)化,最后根據(jù)最佳匹配軌跡來(lái)計(jì)算模型與日志的契合度.實(shí)驗(yàn)表明,Acorn算法能夠正確有效地計(jì)算帶有復(fù)雜模式的BPMN 2.0模型與日志之間的契合度,且虛擬代價(jià)和預(yù)估代價(jià)的引入,大大減少了搜索空間,有效提高了算法的運(yùn)行速度.

        BPMN 2.0模型;復(fù)雜模式;A*搜索;符合性檢測(cè);對(duì)齊

        工作流技術(shù)在最近十幾年得到了迅速的發(fā)展,該技術(shù)通過(guò)對(duì)日常工作中固定程序活動(dòng)進(jìn)行抽象,將工作分解成定義良好的任務(wù)或者角色工作,按照一定的規(guī)則和流程來(lái)執(zhí)行這些任務(wù)并對(duì)其進(jìn)行監(jiān)控,達(dá)到提高工作效率、更好地控制流程、增強(qiáng)對(duì)客戶(hù)的服務(wù)、有效管理業(yè)務(wù)流程等目的[1].

        BPMN(business process model and notation)[2]是由BPMI(Business Process Management Initiative)開(kāi)發(fā)的一套標(biāo)準(zhǔn)的業(yè)務(wù)流程建模符號(hào).BPMN 2.0規(guī)范于2011年正式發(fā)布,相比于2004年提出的BPMN 1.0規(guī)范有了巨大的改進(jìn),多實(shí)例、子流程、邊界事件等多種元素的引入,極大地豐富了BPMN 2.0模型的表達(dá)能力.BPMN 2.0模型符號(hào)容易被業(yè)務(wù)分析員理解和使用,現(xiàn)已成為當(dāng)前最流行的業(yè)務(wù)流程可視化描述語(yǔ)言.

        符合性檢測(cè)是工作流技術(shù)中非常重要的模塊.符合性檢測(cè)是用來(lái)檢測(cè)流程模型和日志之間匹配程度的技術(shù),即該模型能在多大程度上反映出該日志相關(guān)流程執(zhí)行過(guò)程的本質(zhì).通常企業(yè)在初始階段沒(méi)有進(jìn)行系統(tǒng)地建模,但在其系統(tǒng)中仍記錄了大量的活動(dòng)執(zhí)行過(guò)程.在企業(yè)規(guī)模逐漸擴(kuò)大、業(yè)務(wù)逐漸復(fù)雜之后,企業(yè)通常通過(guò)一些自動(dòng)挖掘技術(shù),在大量實(shí)際日志的基礎(chǔ)上挖掘出工作流模型來(lái)更好地管理業(yè)務(wù)[3-5],從而提高工作效率,但我們往往需要符合性檢測(cè)來(lái)衡量挖掘出來(lái)的模型的質(zhì)量.此外,當(dāng)流程模型執(zhí)行產(chǎn)生的流程日志與原始模型偏差較大,即二者的符合性低于給定閾值時(shí),有必要對(duì)原始模型進(jìn)行修復(fù)操作[6].

        然而目前的符合性檢測(cè)技術(shù)大都集中在Petri網(wǎng)[7]上,很少有針對(duì)BPMN模型的符合性檢測(cè),即便有也是只考慮了BPMN模型中的活動(dòng)和網(wǎng)關(guān)[8],并沒(méi)有考慮到BPMN 2.0標(biāo)準(zhǔn)中的多實(shí)例、子流程、邊界事件等特殊元素的存在和影響.多實(shí)例、子流程和邊界事件等復(fù)雜模式的存在,大大增加了符合性檢測(cè)算法的設(shè)計(jì)難度.

        BPMN 2.0模型的符合性檢測(cè)算法具有如下3個(gè)難點(diǎn):

        1) 多實(shí)例、子流程的存在,使得模型可以對(duì)應(yīng)無(wú)窮多個(gè)實(shí)例軌跡,直接計(jì)算匹配程度較為困難;

        2) OR網(wǎng)關(guān)的不對(duì)稱(chēng)存在,使得OR網(wǎng)關(guān)的使能情況異常復(fù)雜;

        3) 邊界事件和多實(shí)例的存在,使得多種事件可以同時(shí)使能,但相互之間是沖突的,需要根據(jù)具體情況進(jìn)行分析.

        本文致力于在考慮BPMN 2.0標(biāo)準(zhǔn)中的多實(shí)例、子流程、邊界事件等特殊元素的基礎(chǔ)上,研究BPMN 2.0模型和已有日志的符合性檢測(cè)工作,主要貢獻(xiàn)如下:

        1) 針對(duì)多實(shí)例、子流程、邊界事件等每種特殊元素,進(jìn)行其語(yǔ)義分析;

        2) 設(shè)計(jì)對(duì)齊算法,尋找BPMN 2.0模型上可執(zhí)行的1條軌跡,使其轉(zhuǎn)換成已有軌跡所需的代價(jià)最?。?/p>

        3) 提出Acorn算法,用于衡量BPMN 2.0模型和日志之間的契合度.

        1 相關(guān)工作

        符合性檢測(cè)主要用于檢測(cè)模型能在多大程度上來(lái)描述已有日志的行為,目前比較公認(rèn)的流程模型和日志之間符合性檢測(cè)的衡量指標(biāo)主要有4種:

        1) 契合度(fitness).用于衡量有多少日志中的行為被模型所支持.

        2) 準(zhǔn)確率(precision).用于衡量有多少模型上的行為被日志所支持.

        3) 一般性(generalization).用于衡量模型解析日志之外行為的能力,如用90%的日志挖掘出來(lái)的模型,能很好地解析剩下的10%的日志行為,就可以說(shuō)該模型具有良好的一般性.

        4) 復(fù)雜性(complexity).用于衡量模型的復(fù)雜程度,通常而言,在有同樣的表達(dá)能力的前提下,用戶(hù)往往希望模型是簡(jiǎn)單易懂的.

        把同時(shí)出現(xiàn)在模型和日志中的行為稱(chēng)為“TruePositive”,出現(xiàn)在模型中但不出現(xiàn)在日志中的行為稱(chēng)為“FalsePositive”,反之只出現(xiàn)在日志中但不出現(xiàn)在模型中的行為稱(chēng)為“FalseNegative”,通常:

        (1)

        (2)

        Molka等人[8]針對(duì)BPMN模型提出了計(jì)算召回率和準(zhǔn)確率的符合性檢測(cè)算法.該文定義了“局部行為”和“全局行為”,并設(shè)計(jì)算法在模型和日志中抽取這2種行為,從而進(jìn)一步計(jì)算召回率和準(zhǔn)確率.然而該算法針對(duì)的BPMN模型仍停留在BPMN 1.0時(shí)代,并未包含BPMN 2.0模型中的多實(shí)例、子流程、邊界事件等各種特殊元素,故應(yīng)用場(chǎng)景比較有限.

        Adriansyah等人[9]提出了若干個(gè)關(guān)于契合度方面的衡量指標(biāo),針對(duì)每條軌跡t1,作者通過(guò)A*算法尋找到模型上的最優(yōu)的1條軌跡t2,且要保證t2是t1的子集,由此可以計(jì)算出軌跡t1中不能被模型解析的部分,從而進(jìn)一步來(lái)計(jì)算契合度指標(biāo).

        de Leoni等人[10]針對(duì)聲明式(declarative)模型[11]提出基于對(duì)齊的符合性檢測(cè)算法.基于對(duì)齊的算法假設(shè)模型和日志都可以保持自身不變,等待對(duì)方強(qiáng)制執(zhí)行某流程,從而越過(guò)不匹配的活動(dòng),同時(shí)記錄不匹配活動(dòng)的代價(jià),通過(guò)A*搜索算法來(lái)尋找到代價(jià)最小的1條對(duì)齊軌跡.然而,聲明式模型與BPMN 2.0模型存在顯式差別,且未見(jiàn)BPMN 2.0模型到聲明式模型的轉(zhuǎn)換工作.因此,本文無(wú)法直接使用文獻(xiàn)[10]的研究成果.

        vanden Broucke等人[12]通過(guò)引入負(fù)事件(nega-tive event),從全新的角度來(lái)衡量模型與日志之間的準(zhǔn)確度和模型的一般性.通過(guò)對(duì)日志的全局分析,即可計(jì)算出每條軌跡中每個(gè)活動(dòng)對(duì)應(yīng)的負(fù)事件.隨后讓每條軌跡在模型上一步步執(zhí)行,每執(zhí)行1步即可得到該步之后有哪些使能的活動(dòng)屬于負(fù)事件或者正事件(positive event),并將相應(yīng)的結(jié)果計(jì)算入最終的準(zhǔn)確度和一般性結(jié)果中.但由于該方法在某活動(dòng)不能在模型上執(zhí)行的情況下采取的是強(qiáng)制執(zhí)行的方法,適合于大部分模型,但卻不適合BPMN 2.0模型,因?yàn)锽PMN 2.0模型中包含多實(shí)例的活動(dòng)和子流程,若某活動(dòng)或子流程需要被強(qiáng)制執(zhí)行,但是它被標(biāo)記為多實(shí)例,即有多個(gè)活動(dòng)或子流程實(shí)例,那么強(qiáng)制執(zhí)行哪個(gè)實(shí)例仍是未知的問(wèn)題,強(qiáng)制執(zhí)行不同的實(shí)例會(huì)導(dǎo)致不同的計(jì)算結(jié)果.

        契合度是4個(gè)指標(biāo)最為重要的衡量指標(biāo).由于負(fù)事件的應(yīng)用在BPMN 2.0模型中有上述局限性,故本文主要關(guān)注BPMN 2.0與日志之間契合度的衡量.與文獻(xiàn)[10]中的方法相似,本文通過(guò)對(duì)BPMN 2.0模型的深入理解,設(shè)計(jì)基于對(duì)齊的算法,通過(guò)A*算法尋找到代價(jià)最小的匹配軌跡,進(jìn)一步計(jì)算契合度.

        2 Acorn算法設(shè)計(jì)

        2.1 BPMN 2.0模型元素含義

        BPMN 2.0定義了規(guī)范的執(zhí)行語(yǔ)義和格式,利用標(biāo)準(zhǔn)的圖元來(lái)描述現(xiàn)實(shí)的流程,從而保證即便在不同的流程引擎下得到的執(zhí)行結(jié)果也是一樣的.其模型定義如下:

        定義1. BPMN 2.0模型.BPMN 2.0模型為一個(gè)四元組M=(A,G,E,S),其中:A表示“Activity”,表示在流程圖中具備聲明周期狀態(tài)的元素,包含原子級(jí)的任務(wù)(task)和子流程(sub-process);G表示“Gateway”,主要包含XOR網(wǎng)關(guān)、OR網(wǎng)關(guān)和AND網(wǎng)關(guān);E表示“Event”,利用事件機(jī)制,為系統(tǒng)增加輔助功能,主要包含啟動(dòng)(start event)、結(jié)束(end event)和中間事件(intermediate event)等;S表示“Sequence”,主要為流向(sequence flow).

        BPMN 2.0規(guī)范支持的元素異常之多,表1列舉了本文算法中支持的各種BPMN 2.0元素及該元素的執(zhí)行語(yǔ)義.

        2.2 BPMN 2.0模型元素使能分析

        對(duì)于任務(wù)來(lái)說(shuō),只要有輸入流到達(dá),則該任務(wù)就是使能的,然而B(niǎo)PMN 2.0模型中包含了很多特殊元素,需要逐一考慮.

        1) XOR網(wǎng)關(guān).XOR網(wǎng)關(guān)分為2種,即XOR-SPLIT網(wǎng)關(guān)和XOR-MERGE網(wǎng)關(guān).XOR-SPLIT表示選擇開(kāi)始,XOR-MERGE表示選擇結(jié)束.根據(jù)表1中的語(yǔ)義,XOR網(wǎng)關(guān)表示只有1條分支能夠執(zhí)行,故遇到XOR-SPLIT網(wǎng)關(guān),假設(shè)其有n條流出的序列流,則可以產(chǎn)生n種不同的使能狀態(tài),每條分支為1種狀態(tài).遇到XOR-MERGE則直接使能該網(wǎng)關(guān),因?yàn)槿我?條輸入的序列流都可以使能該網(wǎng)關(guān).

        2) AND網(wǎng)關(guān).AND網(wǎng)關(guān)分為2種,即AND-SPLIT網(wǎng)關(guān)和AND-MERGE網(wǎng)關(guān).AND-SPLIT網(wǎng)關(guān)表示并發(fā)的開(kāi)始,則其輸出序列流對(duì)應(yīng)的活動(dòng)都應(yīng)該使能;AND-MERGE網(wǎng)關(guān)則表示并發(fā)的結(jié)束,需要所有分支都已經(jīng)執(zhí)行完,故對(duì)每個(gè)AND-MERGE網(wǎng)關(guān),需要記錄該網(wǎng)關(guān)哪些流入的序列流已經(jīng)使能.

        Table 1 BPMN 2.0 Elements and Their Execution Semantics

        3) OR網(wǎng)關(guān).OR網(wǎng)關(guān)同樣分為OR-SPLIT網(wǎng)關(guān)和OR-MERGE網(wǎng)關(guān).根據(jù)表1的語(yǔ)義,OR-SPLIT后可以有若干個(gè)(至少1個(gè))分支被使能,假設(shè)該網(wǎng)關(guān)有n個(gè)流出向的序列流,則有2n-1種對(duì)應(yīng)的使能狀態(tài);OR-MERGE則相對(duì)來(lái)說(shuō)復(fù)雜一些,并不像XOR-MERGE和AND-MERGE那樣有規(guī)則,而是需要根據(jù)前面OR-SPLIT的情況來(lái)定.圖1展示了2種不同的OR-MERGE情況,圖1(a)展示了一種規(guī)則的情況,即OR-MERGE網(wǎng)關(guān)與OR-SPLIT一一對(duì)應(yīng);而圖1(b)則展示了一種不規(guī)則的情況,即可以有n個(gè)OR-MERGE和m個(gè)OR-SPLIT對(duì)應(yīng).鑒于有存在圖1(b)展示的情況,判斷OR-MERGE是否使能顯得有些復(fù)雜.需要按照以下步驟來(lái)進(jìn)行:

        Fig.1 A sample for OR-SPLIT圖1 OR-SPLIT示例

        ① 預(yù)處理BPMN 2.0模型中每個(gè)元素能到達(dá)的OR-MERGE網(wǎng)關(guān),本文用R(x)表示x元素能夠到達(dá)的OR-MERGE網(wǎng)關(guān),在圖1(b)中,任務(wù)A和B能夠到達(dá)的OR-MERGE為o2和o4,即R(A)=R(B)={o2,o4},C和D能夠到達(dá)的OR-MERGE為o3和o4,即R(C)=R(D)={o3,o4}.

        ② 每使能1個(gè)任務(wù),則更新該任務(wù)能夠到達(dá)的OR-MERGE網(wǎng)關(guān),表明該活動(dòng)使能,則這些OR-MERGE網(wǎng)關(guān)需要等到這個(gè)任務(wù)執(zhí)行完后才能使能,即每使能任務(wù)x,需要更新?o∈R(x),o.waitingList.add(x),其中waitingList為2.3節(jié)中間狀態(tài)的變量之一,表示該OR-MERGE網(wǎng)關(guān)需要等待的任務(wù)集合.在圖1(b)中,若o1網(wǎng)關(guān)后使能的是A和D,則更新o2,o4需要等待A的執(zhí)行,更新o3,o4需要等待D的執(zhí)行,即o2.waitingList={A},o3.waitingList={D},o4.waitingList={A,D}.

        ③ 每執(zhí)行完1個(gè)任務(wù),則更新該任務(wù)對(duì)應(yīng)的所有OR-MERGE網(wǎng)關(guān),告訴該網(wǎng)關(guān)不必繼續(xù)等待該任務(wù),即每執(zhí)行任務(wù)x,需要更新?o∈R(x),o.waitingList.remove(x),其中waitingList表示該OR-MERGE網(wǎng)關(guān)需要等待的任務(wù)集合.圖1(b)中,任務(wù)A執(zhí)行后,則o2,o4進(jìn)行更新,更新之后o2不必再等待任何活動(dòng),而o4還需要等待任務(wù)D的執(zhí)行,即o2.waitingList={},o4.waitingList={D}.

        ④ 當(dāng)訪(fǎng)問(wèn)到OR-MERGE網(wǎng)關(guān)時(shí),若該網(wǎng)關(guān)不需要等待任何任務(wù),則該網(wǎng)關(guān)使能,即若該OR-MERGE網(wǎng)關(guān)的waitingList為空,則該網(wǎng)關(guān)使能,反之則不使能.圖1(b)中,續(xù)上面的例子,任務(wù)A執(zhí)行后,o2.waitingList={},即o2不需要等待任何任務(wù),則使能,而o3,o4都需要等待D的執(zhí)行,則不使能.

        4) 子流程.每次使能1個(gè)子流程,則使能該子流程中的開(kāi)始事件.每次執(zhí)行完子流程中的結(jié)束事件后,則跳出該子流程.

        5) 多實(shí)例.多實(shí)例表明該任務(wù)或者子流程可以發(fā)生多次,故需要用實(shí)例編號(hào)來(lái)區(qū)分各個(gè)實(shí)例.當(dāng)某個(gè)任務(wù)體現(xiàn)出多實(shí)例的特性時(shí),第1個(gè)實(shí)例給予編號(hào)“_1”,第2個(gè)實(shí)例給予編號(hào)“_2”,若有多層的多實(shí)例,如子流程被標(biāo)記為多實(shí)例,且其中的任務(wù)也被標(biāo)記為多實(shí)例,則可以采用“_1_1”,“_1_2”的形式來(lái)進(jìn)行區(qū)分,當(dāng)多實(shí)例結(jié)束時(shí),則修改成上層的實(shí)例編號(hào).本文默認(rèn),存儲(chǔ)在優(yōu)先隊(duì)列中的任務(wù)都帶有實(shí)例編號(hào).

        6) 邊界事件.包括取消事件、定時(shí)事件和錯(cuò)誤事件.這3種事件的語(yǔ)義表現(xiàn)基本一致,只是產(chǎn)生事件的原因不同.若任務(wù)或者子流程包含這些事件,則這些事件對(duì)應(yīng)的分支隨時(shí)是使能的.

        2.3 基于對(duì)齊的匹配算法

        定義3. 日志.日志L={T1,T2,…,Ti,…,Tn},其中Ti表示第i條軌跡.

        基于對(duì)齊的模型與日志匹配算法,其本質(zhì)是在模型上逐條重演相應(yīng)日志的軌跡,即模型中任務(wù)依據(jù)規(guī)則逐個(gè)執(zhí)行的同時(shí),軌跡中對(duì)應(yīng)任務(wù)進(jìn)行逐個(gè)遍歷輸出.往往1條軌跡中的所有任務(wù)不能完美地在模型上按照次序重演下來(lái),故需要引入對(duì)齊的概念.引入“?”標(biāo)識(shí)符,表示用來(lái)對(duì)齊,并不執(zhí)行真正的具體任務(wù).

        定義4. 對(duì)齊.假定s′為模型中依據(jù)規(guī)則執(zhí)行的當(dāng)前任務(wù),s″為軌跡中按序遍歷輸出的當(dāng)前任務(wù),則(s′,s″)是模型和軌跡的1次對(duì)齊,其中:

        1) 若s′為模型中的任務(wù)而s″=?,則該對(duì)齊僅為模型中s′的執(zhí)行,而軌跡未動(dòng);

        2) 若s′=?而s″為軌跡中的任務(wù),則該對(duì)齊僅為軌跡中s″的輸出,而模型未動(dòng);

        3) 若s′=s″≠?,則該對(duì)齊表示模型中s′執(zhí)行的同時(shí),對(duì)軌跡中s″進(jìn)行輸出.

        例1. 圖2表示已有的BPMN2.0模型,整個(gè)流程先執(zhí)行A任務(wù),之后D任務(wù)和1個(gè)子流程并發(fā)執(zhí)行,該子流程在執(zhí)行若干個(gè)B任務(wù)實(shí)例后執(zhí)行C任務(wù),該子流程可以同時(shí)產(chǎn)生多個(gè)實(shí)例,待并發(fā)結(jié)束后,最后執(zhí)行E任務(wù).現(xiàn)在已有軌跡t=A,C,E,需要通過(guò)重演在模型上找1條匹配軌跡.圖3展示了4種軌跡在模型上重演的對(duì)齊方案.

        Fig. 2 A sample for BPMN 2.0 model圖2 BPMN 2.0模型示例

        Fig. 3 Several alignments between the trace and the model in example 1圖3 例1軌跡與模型的若干種對(duì)齊方案

        軌跡在模型上重演,可以產(chǎn)生非常多的對(duì)齊方案.需要找到和軌跡最為相似的那種重演方式,很明顯,Y1是需要的那種對(duì)齊方式,因?yàn)閅1中只引入了2次“?”,只有任務(wù)B和D沒(méi)有找到相匹配的,任務(wù)A,C,E均完成了匹配.

        定義下面的代價(jià)函數(shù),可以用來(lái)評(píng)估對(duì)齊方案Y的好壞,其中單個(gè)對(duì)齊代價(jià)的具體值用戶(hù)可以自定義:

        (3)

        由該代價(jià)函數(shù)易知,Y1的對(duì)齊方案的代價(jià)為2,Y3的對(duì)齊方案的代價(jià)為3,而Y2和Y4的對(duì)齊方案的代價(jià)為4,故Y1是最優(yōu)的對(duì)齊方案.基于對(duì)齊的軌跡與模型的匹配方案,即尋找代價(jià)最小的對(duì)齊方案.

        存在子流程可能會(huì)被標(biāo)記成多實(shí)例的情況,每次使能1個(gè)子流程的實(shí)例,都只是簡(jiǎn)單地啟動(dòng)該子流程的開(kāi)始事件,而事件這種元素并不會(huì)記錄在最終的日志中,故事件不會(huì)累計(jì)在最終的代價(jià)里.如此一來(lái),就會(huì)產(chǎn)生一個(gè)問(wèn)題,隊(duì)列是按照代價(jià)大小排序的,而子流程可能產(chǎn)生無(wú)數(shù)個(gè)實(shí)例且代價(jià)不變(假設(shè)每個(gè)實(shí)例都只是啟動(dòng)開(kāi)始事件),將會(huì)導(dǎo)致算法陷入死循環(huán),故在此引入真實(shí)代價(jià)和虛擬代價(jià)的概念.

        真實(shí)代價(jià)是引入對(duì)齊符號(hào)“?”所產(chǎn)生的代價(jià),即模型和軌跡某個(gè)活動(dòng)沒(méi)有匹配上產(chǎn)生的代價(jià);而虛擬代價(jià)是啟動(dòng)子流程實(shí)例產(chǎn)生的代價(jià),每次啟動(dòng)1個(gè)子流程的開(kāi)始事件,標(biāo)記1次虛擬代價(jià),即虛擬代價(jià)總和加1.

        Fig.4 The core idea of finding the optimal alignment for example 1 using A* search algorithm圖4 例1使用A*搜索算法尋找最佳匹配示意

        本文采用A*搜索算法來(lái)尋找基于對(duì)齊的最佳匹配,整體思路是通過(guò)優(yōu)先隊(duì)列,維護(hù)一系列的匹配中間狀態(tài),每次挑選最小代價(jià)的中間狀態(tài),在其基礎(chǔ)上繼續(xù)重演,直到找到總體代價(jià)最小的匹配.優(yōu)先隊(duì)列維護(hù)的中間狀態(tài)如定義5所示.

        定義5. 中間狀態(tài).優(yōu)先隊(duì)列中維護(hù)著一系列的匹配中間狀態(tài),每個(gè)狀態(tài)包括多個(gè)中間變量:

        1)currentAvailable,類(lèi)型為HashSetTask,記錄目前所有已經(jīng)使能的任務(wù).

        2)parallelSync,類(lèi)型為HashMapTask,HashSetSequenceFlow,鍵為AND-MERGE網(wǎng)關(guān),值為該網(wǎng)關(guān)流入的序列流,用來(lái)標(biāo)記哪些入口已經(jīng)使能,當(dāng)所有入口均已使能,則該AND-MERGE網(wǎng)關(guān)使能.

        3)waitingList,類(lèi)型為HashMapTask,HashSetTask,鍵為OR-MERGE網(wǎng)關(guān),值為該網(wǎng)關(guān)需要等待執(zhí)行的任務(wù),當(dāng)該網(wǎng)關(guān)需要等待的任務(wù)數(shù)為0時(shí),該OR-MERGE網(wǎng)關(guān)使能.

        4)modelTrace,類(lèi)型為L(zhǎng)istString,記錄模型上的軌跡,包括任務(wù)名字和對(duì)齊標(biāo)志“?”.

        5)traceToMatch,類(lèi)型為L(zhǎng)istString,記錄還需等待匹配的軌跡.

        6)cost,分為totalCost,realCost,virtualCost和expectedCost,每種類(lèi)型均為Int.totalCost為后面3種代價(jià)之和,優(yōu)先隊(duì)列中按totalCost從小到大排序;realCost記錄當(dāng)前狀態(tài)下的真實(shí)代價(jià),每增加1個(gè)對(duì)齊標(biāo)志“?”,代價(jià)加1;virtualCost為引入子流程開(kāi)始事件的代價(jià);expectedCost為當(dāng)前狀態(tài)到匹配結(jié)束狀態(tài)的估算代價(jià),在2.4節(jié)會(huì)具體介紹.

        圖4展示了例1中A*搜索算法的具體執(zhí)行過(guò)程,最初始有一個(gè)狀態(tài)如節(jié)點(diǎn)1所示,節(jié)點(diǎn)1表示當(dāng)前狀態(tài)下模型上只有A是使能的,模型上的執(zhí)行軌跡暫為空,待匹配的軌跡為A,C,E,代價(jià)為0,隨后狀態(tài)2,3,4則是根據(jù)上述規(guī)則所衍生出的下一系列中間狀態(tài):狀態(tài)2表明模型上不執(zhí)行任務(wù)但待匹配軌跡上執(zhí)行任務(wù)A,引入了對(duì)齊操作,故代價(jià)為1;狀態(tài)3表明模型與待匹配軌跡均執(zhí)行任務(wù)A,沒(méi)有引入對(duì)齊操作,故代價(jià)仍保持為0;狀態(tài)4則是與狀態(tài)2相反,模型上執(zhí)行任務(wù)A但待匹配軌跡不執(zhí)行,即待匹配軌跡上引入了對(duì)齊操作,故代價(jià)也變成1.之后狀態(tài)2,3,4也根據(jù)如上規(guī)則繼續(xù)進(jìn)行狀態(tài)的演變,由于篇幅限制,圖4中省略了很多的中間狀態(tài)只展示了關(guān)鍵的若干中間變量,集中表現(xiàn)了其中代價(jià)為2和代價(jià)為3的對(duì)齊情況的具體衍生過(guò)程.根據(jù)A*算法的剪枝規(guī)則,在已經(jīng)得到代價(jià)為2的對(duì)齊方案(狀態(tài)5)后,圖中帶有灰度的部分將會(huì)被剪枝,不會(huì)真正被一步步執(zhí)行,以此來(lái)減少計(jì)算量.

        假設(shè)當(dāng)前軌跡為tr,通過(guò)A*搜索算法找到代價(jià)最小的匹配軌跡為match_trace,便可對(duì)該條軌跡的契合度進(jìn)行計(jì)算[13](其中cost為算法得到的最小代價(jià),len(tr)和len(match_trace)為2條軌跡的長(zhǎng)度),而整個(gè)日志和模型的契合度則可以看成是所有軌跡契合度的平均,分別見(jiàn)式(4)和式(5).

        (4)

        (5)

        2.4 A*搜索算法優(yōu)化

        A*搜索算法的代價(jià)函數(shù)為f(x)=g(x)+h(x).其中,g(x)為當(dāng)前已有代價(jià),為真實(shí)代價(jià)與虛擬代價(jià)之和;h(x)為啟發(fā)式的預(yù)估當(dāng)前狀態(tài)到結(jié)束狀態(tài)所需的代價(jià),即中間狀態(tài)中的預(yù)估代價(jià).

        本節(jié)主要討論h(x)預(yù)估代價(jià)的計(jì)算.多實(shí)例的存在,使得軌跡可以無(wú)限變長(zhǎng),而邊界事件的存在,使得子流程又可以中途結(jié)束,故很多情況下很難預(yù)估當(dāng)前狀態(tài)到結(jié)束狀態(tài)所需的代價(jià).有種情況例外,即模型上使能了多個(gè)子流程的開(kāi)始事件,若執(zhí)行完所有子流程得到的最短軌跡長(zhǎng)度已經(jīng)大于待匹配軌跡長(zhǎng)度,則兩者差的絕對(duì)值便為預(yù)估代價(jià).

        例2. 圖2表示已有的BPMN 2.0模型,假設(shè)當(dāng)前狀態(tài)中的modelTrace為A,并且使能了2次包含B活動(dòng)的子流程的開(kāi)始事件,traceToMatch為E,說(shuō)明模型上已經(jīng)執(zhí)行了任務(wù)A,且將要執(zhí)行2次子流程,而待匹配的軌跡為任務(wù)E,可以看到,執(zhí)行2次子流程最少需要4步(如B,C,B,C),而待匹配的軌跡僅為E,故至少需要|B,C,B,C|-|E|=3次對(duì)齊的代價(jià)來(lái)完成匹配.

        針對(duì)此種情況,可以對(duì)模型進(jìn)行預(yù)處理,根據(jù)BPMN 2.0元素的語(yǔ)義,計(jì)算出每個(gè)開(kāi)始事件到該子流程結(jié)束狀態(tài)的最短軌跡長(zhǎng)度,在計(jì)算中間狀態(tài)時(shí),若發(fā)現(xiàn)執(zhí)行已使能的子流程所需要最短軌跡長(zhǎng)度大于待匹配的軌跡長(zhǎng)度,則可以把該長(zhǎng)度差計(jì)入預(yù)估代價(jià)中.

        需要注意的是,以上通過(guò)對(duì)子流程代價(jià)的預(yù)估,來(lái)進(jìn)行搜索空間的剪枝是必須的,而不是可選的.因?yàn)樽恿鞒潭鄬?shí)例的特性,語(yǔ)義上可以產(chǎn)生無(wú)數(shù)個(gè)子流程,盡管已經(jīng)使用虛擬代價(jià)使得子流程多的中間狀態(tài)優(yōu)先級(jí)降低,但是在計(jì)算真實(shí)代價(jià)的時(shí)候,不會(huì)將虛擬代價(jià)計(jì)算入內(nèi),仍會(huì)導(dǎo)致無(wú)數(shù)個(gè)中間狀態(tài).大部分情況下,通過(guò)對(duì)子流程代價(jià)的預(yù)估,往往限定了子流程的使能次數(shù),可以大大減少搜索空間,然而若該子流程的任何一個(gè)父流程標(biāo)有取消、錯(cuò)誤等事件,說(shuō)明使能的若干個(gè)子流程隨時(shí)可以退出,則對(duì)子流程的預(yù)估便會(huì)變得無(wú)效,因?yàn)檫@些子流程不是必須完整執(zhí)行的了.在此種情況下,可以設(shè)定子流程多實(shí)例的上限閾值,即最多可以同時(shí)使能多少個(gè)子流程,而這同時(shí)也是符合實(shí)際情況的,一個(gè)事件或者流程不可能無(wú)限制地被執(zhí)行.

        3 Acorn算法實(shí)現(xiàn)

        本文采用A*搜索算法來(lái)尋找基于軌跡對(duì)齊的最佳匹配.如算法1所示:

        算法1. 單條軌跡與流程模型最佳對(duì)齊算法(BestBPMN2.0Alignment).

        輸入:?jiǎn)螚l軌跡trace、BPMN 2.0模型model;

        輸出:最小代價(jià)cost、對(duì)齊后軌跡match_trace.

        ① 令q為一個(gè)保存按照totalCost由低到高排序的中間狀態(tài)的優(yōu)先隊(duì)列;

        ② 令cost為當(dāng)前最小的realCost,初始化為INT_MAX;

        ③ Whileqis not empty do

        ④ 令s為具有最小totalCost的當(dāng)前狀態(tài);

        ⑤ Ifs.currentAvailableis NULL ors.traceToMatchis NULL do

        ⑥ updatecostandmatch_trace; continue;

        ⑦ End If

        ⑧ Ifs.realCost≥costdo continue;

        ⑨ End If

        ⑩ Foreach tasktins.currentAvailabledo

        每次循環(huán),算法1都從隊(duì)列中取出當(dāng)前代價(jià)最小的中間狀態(tài)(行④),并進(jìn)行狀態(tài)的演變.

        算法1的行⑤~⑦處理狀態(tài)不能再繼續(xù)演變的情況,即模型上已經(jīng)走到盡頭(沒(méi)有使能的任務(wù))或者軌跡已經(jīng)全部匹配完的情況.如果是模型已經(jīng)匹配完的情況下,則s的代價(jià)需要加上未匹配軌跡的長(zhǎng)度當(dāng)成額外的代價(jià),而如果是軌跡已經(jīng)全部匹配完,則根據(jù)當(dāng)前狀態(tài)計(jì)算模型上離結(jié)束所需的最小步數(shù),并將其計(jì)入代價(jià)中.行⑧~⑨ 用來(lái)剪枝,排除代價(jià)已經(jīng)高于目前最小值的中間狀態(tài).

        Fig. 5 Two samples for conflicts between enabled tasks圖5 使能任務(wù)的2種沖突示例

        圖5(a)展示了前后沖突,當(dāng)任務(wù)A執(zhí)行完后,使能的任務(wù)有A和B,當(dāng)選擇任務(wù)B來(lái)執(zhí)行時(shí),說(shuō)明任務(wù)A的多實(shí)例已經(jīng)結(jié)束,故需要在已經(jīng)使能的任務(wù)列表中刪除任務(wù)A的實(shí)例.圖5(b)則展示了內(nèi)外沖突,當(dāng)任務(wù)A執(zhí)行完后,任務(wù)B使能,同時(shí)由于該子流程標(biāo)記著邊界事件,任務(wù)C也使能,當(dāng)接下來(lái)選擇C來(lái)執(zhí)行時(shí),則說(shuō)明子流程通過(guò)邊界事件跳出,則B任務(wù)不應(yīng)該再使能.

        1) 模型執(zhí)行當(dāng)前任務(wù),產(chǎn)生一系列的后繼狀態(tài),而軌跡則保持不變,即軌跡上執(zhí)行對(duì)齊“?”.該行為僅為模型上的1次移動(dòng),代價(jià)需要在原先基礎(chǔ)上加1,如圖4中狀態(tài)1到狀態(tài)4的轉(zhuǎn)變.

        2) 模型執(zhí)行當(dāng)前任務(wù),產(chǎn)生一系列的后繼狀態(tài),且軌跡中第1個(gè)任務(wù)與模型當(dāng)前任務(wù)相同,則軌跡也執(zhí)行該任務(wù),且更新軌跡(去除軌跡中第1個(gè)任務(wù)).該行為為模型與軌跡的同時(shí)移動(dòng),代價(jià)不變,如圖4中狀態(tài)1到狀態(tài)3的轉(zhuǎn)變.

        3) 模型不執(zhí)行任務(wù),而軌跡則執(zhí)行當(dāng)前第1個(gè)任務(wù),即模型上執(zhí)行對(duì)齊“?”.該行為僅為軌跡上的1次移動(dòng),代價(jià)需要在原先基礎(chǔ)上加1,如圖4中狀態(tài)1到狀態(tài)2的轉(zhuǎn)變.

        需要注意的是,在進(jìn)行對(duì)齊產(chǎn)生新?tīng)顟B(tài)的時(shí)候,需要更新中間狀態(tài)中的所有中間變量.

        Acorn算法的實(shí)現(xiàn)如算法2所示.對(duì)日志中的每條軌跡均用其最佳匹配進(jìn)行契合度計(jì)算,最后取其均值作為日志與模型的契合度.

        算法2. 流程日志與流程模型的契合度算法(Acorn).

        輸入:流程日志L、BPMN 2.0模型model;

        輸出:流程日志與流程模型的契合度.

        ① 令f為契合度,初始化為0;

        ② Foreach tracetinLdo

        ③cost,match_trace=BestBPMN2.0-Alignment(t,model);

        ④f+=fitness(model,t);

        ⑤ End For

        ⑥f=|L|;

        ⑦ Returnf.

        4 實(shí)驗(yàn)評(píng)估

        4.1 實(shí)驗(yàn)設(shè)置

        所有實(shí)驗(yàn)均在筆記本電腦上完成,其配置為:酷睿2雙核處理器,T7500 CPU (2.2 GHz,800 MHz FSB,4 MB L2 cache),內(nèi)存為4 GB,操作系統(tǒng)為Windows 7,JDK為1.6版本.

        實(shí)驗(yàn)用的BPMN 2.0模型來(lái)自國(guó)內(nèi)某大型通信公司,均由專(zhuān)業(yè)人員建模形成.對(duì)每個(gè)BPMN 2.0模型,使用課題組自主研發(fā)的模型仿真工具來(lái)產(chǎn)生一系列的日志,再隨機(jī)對(duì)日志中軌跡進(jìn)行增刪改操作,如遍歷每條軌跡并對(duì)每個(gè)活動(dòng)隨機(jī)應(yīng)用以下任意一種操作:1)在該活動(dòng)前添加1個(gè)活動(dòng);2)修改該活動(dòng)的名稱(chēng);3)刪除該活動(dòng);4)保持不變.然后,對(duì)模型與日志應(yīng)用Acorn算法來(lái)計(jì)算契合度,把得到的結(jié)果與專(zhuān)家人工進(jìn)行最優(yōu)匹配的結(jié)果進(jìn)行對(duì)比,以此確保算法的正確性.

        4.2 效果評(píng)估

        本實(shí)驗(yàn)使用多個(gè)模型來(lái)驗(yàn)證算法契合度計(jì)算的正確性,每個(gè)模型的特征如表2所示.根據(jù)引言所述,基于對(duì)齊的BPMN 2.0模型符合性檢測(cè)算法主要針對(duì)多實(shí)例、OR網(wǎng)關(guān)、子流程、邊界事件等特殊屬性,故表2枚舉了每個(gè)BPMN 2.0模型所包含的特殊屬性.

        可以看到,所有特殊屬性均包括在測(cè)試用例中,包括特殊屬性之間的混合搭配.在效果評(píng)估試驗(yàn)中,Acorn算法得到的結(jié)果與專(zhuān)家人工進(jìn)行最優(yōu)匹配的結(jié)果完全一致,這歸功于Acorn算法采用了A*搜索算法來(lái)尋找基于軌跡對(duì)齊的最佳匹配.

        Table 2 The Structural Features and Conformance of Process Models and Logs for Effectiveness Testing Experiments

        4.3 性能評(píng)估

        表3展示了Acorn算法在不同日志規(guī)模輸入下的性能表現(xiàn),其中日志8_1和8_2,9_1和9_2,10_1和10_2分別對(duì)應(yīng)模型8,9,10,該結(jié)果表明在正常規(guī)模下的模型與日志來(lái)進(jìn)行符合性算法檢測(cè),其耗時(shí)均在可接受范圍內(nèi).日志8_1和8_2的對(duì)比表明,相同模型下帶匹配軌跡長(zhǎng)度越長(zhǎng),耗時(shí)越長(zhǎng).同樣,日志9_1和9_2,日志10_1和10_2的對(duì)比也能得出該結(jié)論.日志9_1,9_2與日志10_1,10_2對(duì)應(yīng)的實(shí)驗(yàn)結(jié)果表明,模型的復(fù)雜程度同樣影響算法運(yùn)行時(shí)間,一般模型越復(fù)雜,耗時(shí)越多.實(shí)驗(yàn)結(jié)果中可以看到,含有OR網(wǎng)關(guān)或者多實(shí)例子流程的模型,往往需要更多的匹配時(shí)間.原因也較好理解,這2種元素均會(huì)產(chǎn)生多個(gè)臨近的中間狀態(tài),故BPMN 2.0模型中包含的特殊元素是影響其運(yùn)行時(shí)間的重要因子之一.

        Table 3 The Performance of Acorn Algorithm on Process Models with Different Sizes

        4.4 優(yōu)化評(píng)估

        表4展示了針對(duì)同一個(gè)包含若干多實(shí)例和嵌套多實(shí)例的過(guò)程模型和其對(duì)應(yīng)日志,在不同多實(shí)例閾值下Acorn算法進(jìn)行契合度計(jì)算時(shí)需要訪(fǎng)問(wèn)的中間狀態(tài)的數(shù)量.可以看到,在不做任何優(yōu)化的前提下,隨著閾值的增加,很快便出現(xiàn)狀態(tài)爆炸的情況,虛擬代價(jià)和預(yù)估代價(jià)的引入均能在一定程度上進(jìn)行有效的剪枝,而兩者的結(jié)合則是大大提升了算法的剪枝能力,避免了很多無(wú)用狀態(tài)的訪(fǎng)問(wèn).需要注意的是,在使用虛擬代價(jià)+預(yù)估代價(jià)的情況下,無(wú)論多實(shí)例閾值如何,節(jié)點(diǎn)搜索過(guò)程始終按照最優(yōu)路徑行進(jìn),而沒(méi)有訪(fǎng)問(wèn)多余的中間狀態(tài),因此在3種不同多實(shí)例閾值的情況下,Acorn算法訪(fǎng)問(wèn)的中間狀態(tài)數(shù)量相同.

        Table 4 Comparison of the Number of Intermediate States Accessed Under Various Costs in Different

        5 總結(jié)與展望

        本文提出了基于BPMN 2.0模型的符合性檢測(cè)算法Acorn.特殊網(wǎng)關(guān)、多實(shí)例、子流程、邊界事件等的存在,使得BPMN 2.0模型的符合性檢測(cè)變得比較困難,通過(guò)對(duì)這些特殊元素的語(yǔ)義的深入研究,且引入對(duì)齊操作,通過(guò)A*算法來(lái)搜索代價(jià)最小的匹配軌跡,從而完成符合性檢測(cè)分析.實(shí)驗(yàn)結(jié)果表明該算法能有效地支持多種BPMN 2.0特殊元素,且準(zhǔn)確有效.

        該算法尚存在一些不足.基于A*的搜索算法,在最壞情況下會(huì)遍歷所有可能的匹配,故需要較長(zhǎng)時(shí)間才能完成符合性檢測(cè),故之后的研究方向?qū)?huì)放在A*算法的優(yōu)化方面.此外,將針對(duì)準(zhǔn)確性[14-15]、一般性和復(fù)雜性等其他符合性指標(biāo)繼續(xù)開(kāi)展研究工作.再者,考慮用多個(gè)不同維度的信息來(lái)計(jì)算契合度也是一大研究重點(diǎn)[16].

        [1]Georgakopoulos D, Hornick M, Sheth A. An overview of workflow management: From process modeling to workflow automation infrastructure[J]. Distributed and Parallel Databases, 1995, 3(2): 119-153

        [2]Chinosi M, Trombetta A. BPMN: An introduction to the standard[J]. Computer Standards & Interfaces, 2012, 34(1): 124-134

        [3]van Dongen B F, de Medeiros A K A, Wen L. Process mining: Overview and outlook of Petri net discovery algorithms[G]LNCS 5460: Trans on Petri Nets and Other Models of Concurrency II. Berlin: Springer, 2009: 225-242

        [4]Maggi F M, Bose R P J C, van der Aalst W M P. Efficient discovery of understandable declarative process models from event logs[C]Proc of Advanced Information Systems Engineering. Berlin: Springer, 2012: 270-285

        [5]Wang Y, Wen L, Yan Z, et al. Discovering BPMN models with sub-processes and multi-instance markers[C]Proc of Conf on the Move to Meaningful Internet Systems (OTM 2015). Berlin: Springer, 2015: 185-201

        [6]Polyvyanyy A, van der Aalst W M P, ter Hofstede A H M, et al. Impact-driven process model repair[J]. ACM Trans on Software Engineering and Methodology, 2017, 25(4): 1-60

        [7]Murata T. Petri nets: Properties, analysis and applications[J]. Proceedings of the IEEE, 1989, 77(4): 541-580

        [8]Molka T, Redlich D, Drobek M, et al. Conformance checking for BPMN-based process models[C]Proc of the 29th Annual ACM Symp on Applied Computing. New York: ACM, 2014: 1406-1413

        [9]Adriansyah A, van Dongen B F, van der Aalst W M P. Towards robust conformance checking[C]Proc of Business Process Management Workshops. Berlin: Springer, 2010: 122-133

        [10]de Leoni M, Maggi F M, van der Aalst W M P. Aligning event logs and declarative process models for conformance checking[C]Proc of the 10th Int Conf on Business Process Management (BPM 2012). Berlin: Springer, 2012: 82-97

        [11]van der Aalst W M P, Pesic M, Schonenberg H. Declarative workflows: Balancing between flexibility and support[J]. Computer Science-Research and Development, 2009, 23(2): 99-113

        [12]vanden Broucke S K L M, De Weerdt J, Vanthienen J, et al. Determining process model precision and generalization with weighted artificial negative events[J]. IEEE Trans on Knowledge and Data Engineering, 2014, 26(8): 1877-1889

        [13]van der Aalst W M P, Adriansyah A, van Dongen B. Replaying history on process models for conformance checking and performance analysis[J]. Wiley Interdisciplinary Reviews: Data Mining and Knowledge Discovery, 2012, 2(2): 182-192

        [14]Adriansyah A, Munoz-Gama J, Carmona J, et al. Measuring precision of modeled behavior[J]. Information Systems and E-Business Management, 2015, 13(1): 37-67

        [15]Chatain T, Carmona J. Anti-alignments in conformance checking-The dark side of process models[C]Proc of Int Conf on Applications and Theory of Petri Nets and Concurrency. Berlin: Springer, 2016: 240-258

        [16]Mannhardt F, de Leoni M, Reijers H A, et al. Balanced multi-perspective checking of process conformance[J]. Computing, 2016, 98(4): 407-437

        Wang Yuquan, born in 1990. Master. His main research interests include process mining and conformance checking.

        Wen Lijie, born in 1977. PhD, associate professor, PhD supervisor. His main research interests include process mining, process data management, workflow for big data analysis.

        Yan Zhiqiang, born in 1983. PhD. Assistant professor. Member of CCF. His main research interests include process mining, process similarity and process repository.

        Alignment Based Conformance Checking Algorithm for BPMN 2.0 Model

        Wang Yuquan1, Wen Lijie1, and Yan Zhiqiang2

        1(SchoolofSoftware,TsinghuaUniversity,Beijing100084)2(SchoolofInformation,CapitalUniversityofEconomicsandBusiness,Beijing100070)

        Process mining is an emerging discipline providing comprehensive sets of tools to provide fact-based insights and to support process improvements. This new discipline builds on process model-driven approaches and data-centric analysis techniques such as machine learning and data mining. Conformance checking approaches, i.e., techniques to compare and relate event logs and process models, are one of the three core process mining techniques. It is shown that conformance can be quantified and that deviations can be diagnosed. BPMN 2.0 model has so powerful expression ability that it can express complex patterns like multi-instance, sub-process, OR gateway and boundary event. However, there is no existing conformance checking algorithm supporting such complex patterns. To solve this problem, this paper proposes an algorithm (Acorn) for conformance checking for BPMN 2.0 model, which supports aforesaid complex patterns. The algorithm uses A*algorithm to find the minimum cost alignment, which is used to calculate fitness between BPMN 2.0 model and the log. In addition, virtual cost and expected cost are introduced for optimization. Experimental evaluations show that Acorn can find the best alignment by exploiting the meanings of BPMN 2.0 elements correctly and efficiently, and the introduction of virtual cost and expectation cost indeed reduces the search space.

        BPMN 2.0 model; complex pattern; A*search; conformance checking; alignment

        2016-10-24;

        2017-03-07

        國(guó)家重點(diǎn)研發(fā)計(jì)劃項(xiàng)目(2016YFB1001101);國(guó)家自然科學(xué)基金項(xiàng)目(61472207,61325008,61402301) This work was supported by the National Key Research and Development Plan of China (2016YFB1001101) and the National Natural Science Foundation of China (61472207, 61325008, 61402301).

        聞立杰(wenlj@tsinghua.edu.cn)

        TP315

        猜你喜歡
        代價(jià)日志網(wǎng)關(guān)
        一名老黨員的工作日志
        扶貧日志
        心聲歌刊(2020年4期)2020-09-07 06:37:14
        基于改進(jìn)RPS技術(shù)的IPSEC VPN網(wǎng)關(guān)設(shè)計(jì)
        愛(ài)的代價(jià)
        海峽姐妹(2017年12期)2018-01-31 02:12:22
        游學(xué)日志
        代價(jià)
        LTE Small Cell網(wǎng)關(guān)及虛擬網(wǎng)關(guān)技術(shù)研究
        應(yīng)對(duì)氣候變化需要打通“網(wǎng)關(guān)”
        成熟的代價(jià)
        一種實(shí)時(shí)高效的伺服控制網(wǎng)關(guān)設(shè)計(jì)
        少妇被搞高潮在线免费观看| 日本不卡一区二区三区在线| 麻豆国产成人av高清在线观看| 久久夜色精品国产亚洲噜噜| 国产激情视频在线观看首页| 国产av无码专区亚洲av果冻传媒| 又长又大又粗又硬3p免费视频| 视频福利一区| 日韩国产有码精品一区二在线| 国产亚洲精品久久情侣| 亚洲成av人影院| 综合网自拍| 中文字幕人妻熟女人妻洋洋| 亚洲熟妇无码久久精品疯| 在线看不卡的国产视频| 男女裸体做爰视频高清| 精品无码日韩一区二区三区不卡| 无码日日模日日碰夜夜爽| 日韩精品资源在线观看免费| 午夜天堂av天堂久久久| 国产av人人夜夜澡人人爽| 日韩av中出在线免费播放网站| 蜜桃视频在线在线观看| 香蕉免费一区二区三区| 激情内射亚洲一区二区三区爱妻| 国产一区二区三区观看视频| 日本最新一区二区三区在线视频| 免费少妇a级毛片人成网| 粉嫩极品国产在线观看| 视频在线亚洲视频在线| 亚洲国产美女精品久久久久∴| 欧美大香线蕉线伊人久久| 特黄三级一区二区三区| 亚洲麻豆视频免费观看| a级毛片高清免费视频就| 亚洲精品国产老熟女久久| 永久免费观看的黄网站在线| 国内女人喷潮完整视频| 九九精品视频在线观看| 亚洲成人免费久久av| 欧美精品一区二区精品久久|