梁 迪, 劉 躍, 白蒙蒙
(沈陽大學 機械工程學院, 遼寧 沈陽 110044)
算法和模型的提出是為了解決多元化的復雜問題,例如用Dijkstra算法解決最優路徑選擇問題[1];田口方法則被運用到質量控制中[2];工作流模型以其快速過程建模、便于優化分析和自動化的特點,在各大企業中被廣泛應用;應用工作流模型對業務流程建模有助于企業科學的管理,具有重要意義.
目前, 國內外眾多學者對基于Petri網的工作流的業務流程模型進行研究. van der Aalst[3]最先將Petri網運用到工作流的業務流程建模中, 并規定了可以運用Petri網構建的工作流模型, 單繼城等[4]運用著色Petri網的概念, 采用模塊聚合的方式建立了混合工作流的CPN模型對流程的正確性進行了分析, 笪建等[5]結合進程代數對業務過程進行研究. 本文在研究了工作流基本結構的基礎上, 運用Petri網對案例建模, 分析了該工作流模型任務間的結構關系, 從而列出關聯矩陣, 并用MATLAB進行求解, 從運行時間的角度出發, 綜合求解的結果, 對原有的工作流模型進行重新劃分, 優化原有的Petri網模型, 最終降低系統內部運行時間, 提升系統處理效率.
工作流是計算機化的模型,模型是所有的工作參數的集合,這些參數又包含了每個步驟的內容、操作順序、執行條件、數據流的建立及彼此之間的關聯.工作流模型同傳統模型的概念在某種程度上是一致的,都是用符號、文字、關系式、圖表等形式表達的模型.模型通常包含必要且得到承認的通用規則,擁有準確描述形式.一個完整的工作流模型,應該具備定義流程所必需的特征和要素.評判工作流的性能有強大的描述能力、形象直觀、最小化、形式化4個要素.工作流模型能夠將一個工作細分成若干具有規范的、良好的任務和角色,并按照規定的標準實施,進而實現有效的監督.
Petri網是表示離散并行系統的圖形語言.作為圖形語言,Petri網擁有和流程程序圖相似的直觀化功能,并根據托肯(token)表示出動態的系統行為.作為數學工具,通過狀態方程、關聯矩陣及P/T不變量可用來描述系統的結構特征.
Petri網是有向圖,是由N={P,T,F}組成的三元組表示的網圖(Net),其中P={P0,P1,…,Pm}表示有限的庫所集合,T={T0,T1,…,Tn}表示有限的變遷集合,F是庫所與變遷節點間有限的有向弧集合[6].Petri網則滿足以下條件:
(1)P×T≠?;
(2)P∩T=?;
(3)F?(P×T)∪(T×P);
(4) dom(F)∪cod(F)=P∪T,
dom(F)={x∈P∪T丨?y∈P∪T:(x,y)∈F},
cod(F)={x∈P∪T丨y=∈P∪T:(y,x)∈F}.
P和T是Petri網中的基本元素,是2個不相交的集合,其中P元素為庫所,T元素為變遷,F是網中的流關系,即連接P與T的有向弧[7].
工作流是由多個伴隨著執行條件的任務組成,其特點為圖形化與流程化.Petri網則可用圖形表示流程,因此這兩者的特點不謀而合.Petri網可以更直觀地表現出工作流程邏輯,且能對流程性能進行分析.工作流業務過程中的任務、條件、過程和觸發等可以分別映射為 Petri網中的元素庫所P、變遷T.其中任務代替變遷,條件用庫所代替、過程為有向弧F.因此工作流可用Petri網表示的條件是:
(1) 工作流Petri網模型中有且只有1個開始庫所和1個終止庫所;
(2) 模型中沒有獨立節點,所有的任務和條件都與流程相關;
(3) 所有庫所的標識隨著流程的結束轉變為最終標識,流程結束后只存在1個標識.
工作流中定義了4種基本結構類型,并行優化后的圖形結果如表1所示.
建模的基本過程如下所示:
(1) 分析案例的發生條件;
(2) 分析任務間的關系及結構類型;
(3) 將工作流模型分解成若干份;
(4) 根據分解后的部分建立模型,庫所代表條件,變遷代表任務;
(5) 初步分析模型,并將其進行完善;
(6) 將完善后的模型進行優化分析,最終得到期望的工作流模型.
本文以零件出庫系統的流程為案例,對其工作流程進行分析,如圖1所示.

圖1 零件出庫系統流程圖
根據并行結構優化算法, 運用Petri網理論, 構建了該工作流的Petri網模型, 如圖2所示.
她經常凝望自己的臉。在酒店或者餐廳洗手間的鏡子里,在商店的試衣鏡里,在家里梳洗臺的鏡子里,見到不同時刻的面容,疲憊的,隱忍的,衰竭的,意興闌珊的。她想認清和確定自我的來源和實質。而那個新的自我,是臉頰上膨脹出兩團胭脂紅暈的女子。年少時,做愛之后臉頰就會變得這樣紅,微醺而爛熟的云霞般絢爛沉醉的紅暈。她害怕失去這種敏感而獨特的身體反應。

圖2零件出庫系統的Petri網模型圖
Fig.2 The of Petri net model of part delivery system
圖2中零件出庫系統Petri網的流程元素如表2所示.

表2 Petri網模型與流程的對應關系
從圖2的模型中可以看出,T2與T4,T3與T5屬于順序結構,并行化應采用流水線技術.整個模型是查詢生產信息、查詢繳費信息、查詢需求和庫存情況3部分組成的并行結構,采用空間并行法對其并行化.
查詢繳費信息時出現的選擇沖突,運用流水線技術對其并行化.因此,加入了庫所P14與P15,庫所T7、P15、T8、P14變成了控制回路.當出現刷卡繳費時,下一人必須選擇現金繳費,這樣流程才能繼續進行,如果下一人選擇刷卡繳費,則需等待上一人結束后才能進行繳費.
根據圖2的Petri網模型得到關聯矩陣D.



通過在MATLAB軟件上進行運算分析,得到初始標識M0={1,0,0,0,0,0,0,0,0,0,0,0,0},庫所不變量分別為
庫所不變量X1、X2、X3對應的子網1={X1,X3}和子網2={X2,X3}滿足并行和劃分條件.經過劃分,得到了3個并行進程,即查詢生產情況、進入繳費系統繳費的進程、查詢訂單信息及庫存情況.對并行算法處理后的系統運用P-不變量進行時間分析,結果如表3所示.

表3 業務流程主要指標
從圖2和表3可以看出,當前系統的Petri網結構運行時間較長,內部處理機制效率低,因此在P-不變量的時間分析基礎上,運用工作流的并行優化算法對先前模型進行系統優化,優化后的Petri網模型如圖3所示.
對優化后的零件出庫系統Petri網模型再次進行P-不變量分析,對應業務的處理時間如表4所示.

表4 優化后的業務流程主要指標

圖3優化后零件出庫系統Petri網模型
Fig.3 Petri net model of outbound system after optimized
綜合改善前后的業務流程主要指標如表5所示.
由表5可以看出,業務流程的平均完成時間、實際處理時間與等待時間都相對降低,平均完成時間最多減少了57.1%,因此工作流并行優化算法在提升系統處理速度與減少系統運行時間上具有有效性,且該方法可行.

表5 優化前后業務流程主要指標對比表
本文基于Petri網給出了零件出庫系統的工作流模型,根據關聯矩陣求解和P-不變量的時間分析,發現當前系統運行方式的處理時間較長,效率低.因此,通過運用P-不變量算法和基于Petri網的工作流并行優化算法重新劃分了工作流的結構模型,從而優化零件出庫系統的運行時間,提高了系統的工作效率,改善了系統內部處理機制.