唐朝勝,劉世洪,程杰仁
(1.中國農(nóng)業(yè)科學院 農(nóng)業(yè)信息研究所,北京 100081; 2.海南大學 信息科學技術學院,海口 570228)
(*通信作者電子郵箱liushihong@caas.cn)
狀態(tài)和數(shù)據(jù)雙因素驅動的決策支持系統(tǒng)模型復合方法
唐朝勝1,2,劉世洪1*,程杰仁2
(1.中國農(nóng)業(yè)科學院 農(nóng)業(yè)信息研究所,北京 100081; 2.海南大學 信息科學技術學院,???570228)
(*通信作者電子郵箱liushihong@caas.cn)
針對決策支持系統(tǒng)(DSS)模型復合工程中存在著單一因素驅動方法適用范圍窄、效率低以及多因素驅動方法缺乏對算法或子模型層次的邏輯關系的描述、黑盒抽象程度低等不足,提出了狀態(tài)和數(shù)據(jù)雙因素共同驅動的模型復合方法。該方法首先定義工作流過程模型,將DSS子模型生成為一個可移植的、邏輯獨立的工作流活動,該活動內部包含了模型的求解算法,對外提供了參數(shù)接口;其次根據(jù)活動執(zhí)行的依賴關系,制定相應的事件-條件-動作(ECA)規(guī)則來動態(tài)地綁定它們之間的復合關系;最后將規(guī)則轉換為網(wǎng)絡活動圖, 并借助自定義工作流平臺進行復合。實驗過程表明,該方法能解決一般性模型復合問題,具備較好的通用性及可擴展性。
決策支持系統(tǒng);模型復合;工作流過程模型;活動;事件-條件-動作規(guī)則;工作流平臺
決策支持系統(tǒng)(Decision Support System, DSS)模型復合集成一直是模型驅動工程中重點考慮的問題。目前,實現(xiàn)模型復合主要有兩種途徑:一種是預先設計具備復合能力的模型結構,采用模型庫[1-2]、面向對象中的類[3]、面向Agent[4-6]等方式表達,系統(tǒng)再根據(jù)具體問題,以參數(shù)驅動的方式進行模型的復合、集成以及實例化,如采用模型分類驅動技術產(chǎn)生模型鏈,并利用黑板結構參數(shù)匹配算法實現(xiàn)復合模型的求解[7];另一種是提供專用的建模環(huán)境,如用于構建各種面向問題的可執(zhí)行模型環(huán)境[8],或面向本體的模型構建環(huán)境[9]。然而這兩種方法均存在著不足:1)專用的建模環(huán)境因為通用規(guī)則少、高層解釋器構建代價高,使得模型復合不易實現(xiàn)和推廣;2)單一參數(shù)因素驅動下的模型復合方法適用范圍窄、建模效率低,還可能出現(xiàn)遞歸循環(huán)的問題[10]。為提高DSS模型的復用性,文獻[11]將DSS中的模型分為過程模型、復合模型和元模型。其中元模型(注:為避免與工作流過程元模型概念混淆,本文后面統(tǒng)一稱之為子模型)是具有某種獨立功能的、不能再分解的底層模型,可重用程度最高;復合模型或過程模型則根據(jù)具體問題,由子模型集成得到。該文獻還利用了ESP(Event-State-Process)工作流控制規(guī)則,提出了基于事件和參數(shù)多因素共同驅動的模型復合集成機制。該規(guī)則主要以邏輯單元的狀態(tài)為基礎,適用于高層的復合模型及過程模型的控制,但因其表達形式不能將求解方法和求解邏輯分離,所以不適合對低層求解單元的邏輯關系進行描述和控制。若將其應用于那些需明事先確子模型執(zhí)行的依賴關系之后才能進行復合的DSS模型,例如作物模型,則顯得力不從心。
為尋求可適用于底層邏輯關系表達的規(guī)則來解決這類模型的復合問題,本文引入了另一種描述工作流程的控制規(guī)則,即事件-條件-動作(Event-Condition-Action, ECA)規(guī)則。與ESP規(guī)則相比,ECA規(guī)則側重于描述觸發(fā)活動的事件和內部條件,規(guī)定活動執(zhí)行的依賴關系,更適合描述算法或子模型層次之間的邏輯關系,但目前尚未發(fā)現(xiàn)有將ECA規(guī)則應用于模型復合的報道。ECA規(guī)則已經(jīng)在工作流管理[12]、工作流資源調度[13]、Web Service復合[14]、業(yè)務過程執(zhí)行語言(Business Process Execution Language, BPEL)過程控制[15]、科學工作流程規(guī)劃和計算[16-17]等方面得到了廣泛的應用。此外ECA規(guī)則可以與其他圖形化方法或工具相結合以彌補其表達形式不夠直觀的劣勢,如文獻[18]在研究柔性工作流建模方案中,基于ECA 規(guī)則開發(fā)了一種圖形化的工作流建模工具,說明了ECA規(guī)則在工作流建模過程中的靈活性。
本文提出基于ECA規(guī)則的狀態(tài)和數(shù)據(jù)雙因素驅動的DSS模型復合方法。該方法對工作流管理聯(lián)盟(Workflow Management Coalition, WfMC)所提出的工作流過程元模型進行了定義,將子模型生成為可移植的、獨立的工作流活動單元(即子模型活動),動態(tài)構建ECA規(guī)則,利用狀態(tài)及數(shù)據(jù)雙因素共同驅動模型的復合。其中狀態(tài)因素通過引入可表征子模型活動運行狀態(tài)的狀態(tài)參數(shù)體現(xiàn);數(shù)據(jù)因素則通過表征子模型之間數(shù)據(jù)依賴關系的數(shù)據(jù)參數(shù)來體現(xiàn)。最后以蘋果葉片生長模型[19]的復合過程為例,對該方法進行驗證。多次實驗表明該方法可適用于一般性DSS模型,尤其是作物模型的復合問題,同時也為解決模型復合過程中的黑盒抽象及自動化問題提供了新的思路。
為提供一個訪問和描述工作流定義的公共方法以及提高工作流建模的可靠性,WfMC專門定義了一個工作流過程元模型,如圖1所示。該模型描述了工作流定義中的對象、對象關系和屬性,并以此來確立工作流信息交換的格式。由圖1可以看出,元模型中除了包含活動(Activity)、相關數(shù)據(jù)(Workflow relevant data)、角色(Role)、遷移條件(Transition condition)、被調應用(Invoked application)等元素外,還包含了它們之間的相互關系:1)活動使用了工作流相關數(shù)據(jù);2)遷移條件影響活動之間的關系;3)活動的執(zhí)行通過角色完成,期間會調用一些應用來輔助完成。因WfMC工作流元模型是參考模型,因此可以借助各種方法修改該元模型以達到應用研究的目的。如文獻[20]對工作流元模型及工作流定義語言作了適當?shù)母倪M和擴展,以適應日益增長的業(yè)務過程的變化和新技術的應用;文獻[21]則建立了一種基于ECA規(guī)則和活動分解的工作流模型,以利于企業(yè)業(yè)務過程的重組。
圖1 WfMC定義的工作流過程元模型
由于WfMC提出的工作流元模型僅僅反映了工作流定義中所包含的基本元素之間的關系,應用時需要對此模型中的各個元素進行形式化的定義并予以解釋。下面結合復合應用對DSS模型的復合過程、活動內容、活動狀態(tài)、ECA規(guī)則進行定義,并對工作流模型進行解釋。
2.1 基于元模型和ECA規(guī)則的工作流定義
定義1 DSS模型復合過程是一項業(yè)務工程,其工作流過程可描述為F=〈I, N, As, E, C, D, R〉。其中:I(Id)、N(Name)分別代表業(yè)務過程標識及名稱;As(Activity set)是原子活動Activity構成的集合;E(Events)、C(Conditions)代表事件集和條件集;D(Data set)為數(shù)據(jù)類型集,包含了工作流所涉及的各種數(shù)據(jù)類型,如活動中包含的內部變量類型、XML對象類型、各種文檔格式類型等;R(Rules)是ECA規(guī)則集,每條ECA規(guī)則包含了活動之間的遷移條件和依賴關系,反映了活動之間的變遷規(guī)則。在基于依賴關系描述的工作流過程模型中,事件通常是某個活動節(jié)點的開始、完成、中止等;條件是對工作流相關數(shù)據(jù)(如工作流實例數(shù)據(jù))和工作流控制數(shù)據(jù)的斷言;動作則為相關活動的開始、取消或狀態(tài)參數(shù)更新等。
定義2 構成DSS模型復合活動的最小單位是原子活動,它是工作流模型的核心,不能再分解??捎昧MAt=〈Id, Name, O, Rd, S, Rs〉來表示。其中:Id、Name分別代表活動標識及名稱;O(Operation)代表活動的內容, 即活動應完成的操作,包括操作類型(自動、手工),輸入及輸出參數(shù),與相關變量的映射關系等;Rd(Relation data)代表與此活動相關的工作流相關數(shù)據(jù),包括輸入和輸出數(shù)據(jù);S(State)為活動當前狀態(tài);Rs(Rules)為活動內部狀態(tài)轉換規(guī)則集合,它也為一組ECA規(guī)則(見定義3)。具體實現(xiàn)過程中的活動內部結構如圖2所示。由圖2可知,原子活動作為工作流模型中相對獨立的單元,不僅包含了模型的算法求解等內容,也提供了輸入和輸出參數(shù)的接口。
圖2 活動的內部結構示意圖
定義3 活動內部一般有七種狀態(tài)S=〈Wai, Beg, Exe, Com, Sus, Fai, Abo〉, 分別代表等待(Waiting)、準備(Beginning)、執(zhí)行(Executing)、完成(Completed)、掛起(Suspend)、失敗(Failure)、取消(Abort)。狀態(tài)轉換規(guī)則為Rs=〈e1, e2, e3, e4, e5〉,轉換過程如圖3所示(為方便,將Suspend作為所有不成功的代表)。其中e1:
定義4 基于ECA規(guī)則的工作流模型具有較強的表達能力,可以表達WfMC提出的六種工作流基本模式,即與匯聚(AND-join)、與匯出(AND-split)、或匯聚(OR-join)、或匯出(OR-split)、循環(huán)(Iteration) 和因果順序(Causality)。此外,還可以根據(jù)需求組合成更加復雜的形式。ECA規(guī)則的基本形式可描述為:
例1 一個工作流定義中的活動集合為{A,B,C},可構建如下規(guī)則:
圖3 活動狀態(tài)轉換圖
2.2 工作流模型解釋
工作流模型的解釋實際上是指解析執(zhí)行該工作流模型,其核心部分是對ECA規(guī)則的解釋。因ECA規(guī)則描述了觸發(fā)活動的事件和內部條件, 實際上也描述了活動的執(zhí)行依賴關系。因此對工作流的解釋主要是對與活動相關的事件的響應和對條件表達式的解析。這里主要關注活動之間ECA規(guī)則的解釋,最終由所承載的底層工作流引擎解析執(zhí)行??疾鞂?中規(guī)則的解釋,當A和B活動完成這一事件發(fā)生時,如果條件是A和B的狀態(tài)為完成時,且C活動開始前所需的數(shù)據(jù)準備好了,則開始C活動。
3.1 雙因素驅動的基本原理
ECA規(guī)則反映了對子模型活動復合過程的控制,其核心是依賴關系的確立。依賴類型主要有數(shù)據(jù)依賴和控制依賴。其中數(shù)據(jù)依賴關系體現(xiàn)了子模型活動之間是否存在內在的數(shù)據(jù)關聯(lián),控制依賴則體現(xiàn)了模型活動當前內部運行狀態(tài)是否影響了后續(xù)活動的正常運行?;顒又g的數(shù)據(jù)依賴關系,具體體現(xiàn)為一個活動的輸出(數(shù)據(jù))參數(shù)是另一個活動的輸入(數(shù)據(jù))參數(shù)。若A和B為工作流活動對象,A.out表示活動對象A的輸出參數(shù),B.in表示活動對象B的輸入?yún)?shù), 當B的輸入?yún)?shù)與A的輸出參數(shù)構成某個函數(shù)映射關系時,則稱它們存在數(shù)據(jù)依賴關系?;顒又g的控制依賴關系通過狀態(tài)消息傳遞來完成,即一個活動A的結束(狀態(tài)為完成)意味著另一個活動B的開始。因WF(Windows Workflow)引擎支持運行時動態(tài)創(chuàng)建新的中間參數(shù)(狀態(tài)和數(shù)據(jù)參數(shù)),這樣將原本運行于不同活動之間、相互隔離的模型參數(shù)通過中間參數(shù)串接起來,實現(xiàn)了狀態(tài)和數(shù)據(jù)的傳遞,以此共同驅動活動的觸發(fā)順序,從而保證了模型的復合過程順利進行。
3.2 模型復合方法
雙因素驅動的DSS模型復合方法基本步驟為:1)生成工作流活動對象;2)根據(jù)規(guī)則內部構成要素及依賴關系,制定相應的ECA規(guī)則;3)將ECA規(guī)則轉化為活動網(wǎng)絡圖并移植至工作流平臺進行復合。
3.2.1 生成工作流活動對象
工作流模型中的基本單位是活動。本文重構了工作流中的活動,其核心內容為DSS子模型的求解算子。由于微軟的WF是符合WfMC標準的工作流框架,提供了良好的工作流建模環(huán)境,可以在此框架上進行二次開發(fā),構建自定義工作流平臺,內嵌的WF引擎可完成工作流的解析。為實現(xiàn)將DSS模型的求解算子轉化為微軟的WF活動,同時滿足面向模型構建者的黑盒抽象,最大限度提高模型轉換及復合過程的自動化能力,依照模型驅動的思想,筆者設計了一個建模系統(tǒng)(限于篇幅,另文詳述)。系統(tǒng)包含兩個子系統(tǒng),一個為建模子系統(tǒng),其基本功能包含:1)提供一個DSS數(shù)學模型構建環(huán)境;2)完成模型運算的自動解析和可擴展應用程序標記語言(eXtensible Application Markup Language, XAML)文件的生成及存儲。其中每個XAML文件(即為活動)都包含了一個初始值為True的狀態(tài)參數(shù),以此作為活動之間控制依賴的判斷依據(jù)。另一個為模型復合子系統(tǒng),提供基于WF引擎的自定義工作流平臺,可將XAML文件動態(tài)編譯生成DSS模型的程序集,并能以自定義活動集的方式導入至平臺中。
3.2.2 制定ECA規(guī)則
根據(jù)子模型活動的執(zhí)行依賴關系,利用活動單元的參數(shù)接口以及WF引擎對中間參數(shù)的支持,參照定義4中的六種工作流模式,結合具體應用,構建相應的ECA規(guī)則。
3.2.3 執(zhí)行ECA規(guī)則
規(guī)則確定后,工作流的執(zhí)行過程即為處理ECA規(guī)則的過程。一方面可在工作流應用程序中構建規(guī)則引擎,利用解釋或編譯的方式進行解析,處理過程可簡單地描述為:接收事件,匹配ECA規(guī)則,執(zhí)行ECA規(guī)則中的操作。其優(yōu)點是可以解析規(guī)則中復雜的事件運算、條件表達式以及較強的語義表達能力,方便執(zhí)行;缺點是難以圖形化,不易理解,不方便用戶直觀地使用。另一方面可以將規(guī)則模型轉換為其他表達形式的工作流模型,如本文首先將其轉換為基于活動網(wǎng)絡的過程模型,然后將模型移植至工作流平臺執(zhí)行。
基于活動網(wǎng)絡的工作流模型組成元素主要包括過程、活動、連接弧和條件。模型過程可看作是一個有向無環(huán)圖,圖中的節(jié)點元素表示可執(zhí)行的活動任務和邏輯,節(jié)點間的連接弧代表了過程中的控制流和數(shù)據(jù)流。節(jié)點類型分為標志節(jié)點、任務節(jié)點和邏輯節(jié)點。根據(jù)ECA規(guī)則中的活動類型及依賴關系的特點,對照活動網(wǎng)絡中的組成要素進行如下轉換:
1)標志節(jié)點的轉換和生成。標志節(jié)點包含開始和結束節(jié)點,任何一個工作流模型必須有唯一開始節(jié)點(無前驅)。一個流程開始執(zhí)行時,最先被激活的就是“開始節(jié)點”;而結束節(jié)點(可有多個,但無后繼)被激活意味著過程實例中所有的活動都處于完成狀態(tài),整個流程結束。因此,將ECA規(guī)則中的開始活動AS(Activity Start)和結束活動AE(Activity End)轉換為標志節(jié)點。
2)任務節(jié)點的轉換和生成。任務節(jié)點代表了組成一個過程實例所需的各種類型的活動與任務,包括人工參與的交互活動、 自動活動以及非原子級的子過程活動。對活動初始參數(shù)(包括數(shù)據(jù)參數(shù)和狀態(tài)參數(shù))的賦值操作視為人工參與的交互活動,因此將新增一個賦值交互活動。由于DSS子模型求解算子已經(jīng)生成為工作流活動,將其直接轉換為自動活動。規(guī)則中的與匯出分支活動中包含多個原子活動,可視為非原子級的子過程活動的一部分。
3)邏輯節(jié)點的轉換和生成。邏輯節(jié)點并不代表真正需要執(zhí)行的活動,它是為了表示任務節(jié)點之間的邏輯關系而設立的,對應ECA規(guī)則中出現(xiàn)的與或分支,可相應轉換或增加節(jié)點。由于或匯出節(jié)點需根據(jù)條件選擇一個符合條件的后繼節(jié)點執(zhí)行,因此將ECA規(guī)則中的狀態(tài)參數(shù)判斷這一過程轉換為或匯出節(jié)點;而與匯出節(jié)點、與匯聚節(jié)點無需條件的判斷,直接增加即可。
4)連接弧的生成。邏輯節(jié)點體現(xiàn)了控制流和數(shù)據(jù)流的分離,而ECA規(guī)則中通過依賴關系也已實現(xiàn)了數(shù)據(jù)和控制狀態(tài)的分離,因此將控制連接弧、數(shù)據(jù)連接弧合二為一。
前述的建模系統(tǒng)包含了自定義工作流設計平臺,它提供:1)圖形化的建模環(huán)境,可快速構建或導入工作流模型;2)基本的流程元素,如流程圖的開始節(jié)點、條件分支節(jié)點等,提供基本的邏輯控制路由,包含順序、并行、選擇以及異常處理等;3)能導入自定義的DSS模型活動;4)提供活動參數(shù)設置窗口,可對數(shù)據(jù)參數(shù)及狀態(tài)參數(shù)設置初值以及建立依賴關系;5)內嵌的工作流引擎完成流程的解析和執(zhí)行。因此移植圖形化的活動網(wǎng)絡圖將變得非常簡單,通過拖拽的方式將各個元素節(jié)點進行組合,參數(shù)賦值則通過參數(shù)屬性窗口設置。一旦工作流模型構造完畢,輸入必要的參數(shù)值,流程將自動執(zhí)行。
已知DSS模型被廣泛應用于作物生長模擬模型的構建。以蘋果葉片生長模型的復合過程為例,根據(jù)工作流活動對象及依賴關系,構建相應的ECA規(guī)則,利用工作流平臺對模型的復合求解過程進行驗證和分析。
4.1 實驗模型
蘋果葉片生長模型主要包括7個子模型:
1)有效積溫子模型:
ATM=1 790.236+1 876.935 cos(0.015D+3.472)
(1)
2)單枝葉面積子模型:
(2)
3)單枝葉片日齡子模型:
(3)
4)單枝葉片數(shù)量子模型:
NL=15.494-14.671e-0.000 1ATM1.466
(4)
5)單樹葉片總面積模型:
St=N×Sz
(5)
6)單樹葉片數(shù)量模型:
Qt=N×NL
(6)
7)單樹葉片日齡模型
At=AL
(7)
以上模型中,D為自變量,e、N為常量,計算目標是求出單樹葉片的總面積、數(shù)量以及日齡。
4.2 ECA規(guī)則
由于模型變量之間存在著清晰的輸入/輸出關系,因此根據(jù)依賴關系,構建參數(shù)傳遞表1(注:參數(shù)名后面的數(shù)字1和2僅代表該參數(shù)的輸出和輸入兩種身份狀態(tài),其實質為同一個參數(shù))。表1中包含了各類參數(shù)的名稱以及傳遞的方向。
表1 蘋果葉片生長模型參數(shù)傳遞表
將表1中的數(shù)據(jù)和狀態(tài)參數(shù)的流轉融入到ECA規(guī)則中去,并將每個子模型活動命名為ATM、Sz、AL、NL、St、Qt和At;同時增加一個開始AS和結束活動AE(下同)。每個活動的結束意味著下一活動的開始,由此構造相應的ECA規(guī)則集合為{ECA1,ECA2,ECA3,ECA4},具體內容如下:
ECA1規(guī)則內容為:
即Causality規(guī)則。當開始活動結束后,執(zhí)行ATM活動。
ECA2規(guī)則內容為:
①
②
該規(guī)則是OR-Split和And-split組成的混合路由規(guī)則。根據(jù)狀態(tài)參數(shù)ATM_T的值進行或匯出,當其值為False時,表明ATM活動執(zhí)行有問題,重新執(zhí)行ATM一遍。當值為True時,進入與匯出,將數(shù)據(jù)參數(shù)傳遞給Sz、AL、NL,同時開始Sz,AL,NL活動。
ECA3規(guī)則內容為:
①
②
該規(guī)則是And-join、OR-Split、And-split混合路由規(guī)則。根據(jù)Sz_T、AL_T、NL_T的狀態(tài)進行與匯聚以及或匯出。當它們的值為False時,重新執(zhí)行Sz、AL、NL一遍;否則進入與分支,將數(shù)據(jù)參數(shù)傳遞給St、Qt、At,同時執(zhí)行這些活動。
ECA4規(guī)則內容為:
①
該規(guī)則是And-join和OR-Split組成的混合路由規(guī)則,根據(jù)St_T、Qt_T、At_T的狀態(tài)進行與匯聚以及或匯出,值為False時,重新執(zhí)行St、At、Qt,若值為True,整個活動結束。
4.3 規(guī)則轉換
以蘋果葉片生長模型復合的ECA規(guī)則為例,根據(jù)3.2.3節(jié)提供的方式轉換,最后得到活動網(wǎng)絡圖如圖4所示。其中:P1和P2分別代表開始節(jié)點和結束節(jié)點;T1代表賦值操作的人工活動節(jié)點,T2、T7、T8、T9、T14、T15、T16分別代表7個葉片生長子模型的自動活動節(jié)點,T5、T12代表其中兩個與分支活動節(jié)點;T4、T11、T18分別代表三個或匯出節(jié)點,T6、T13代表兩個與匯出節(jié)點,T10、T17代表兩個與匯聚節(jié)點。
圖4 蘋果葉片生長模型活動網(wǎng)絡圖
4.4 規(guī)則執(zhí)行及結果分析
最后一步是在工作流平臺中創(chuàng)建相應的流程圖,并由內嵌的工作流引擎完成解析執(zhí)行?;具^程如下:
1)平臺把由模型創(chuàng)建子系統(tǒng)所生成的各個子模型活動(如模型ATM,模型Sz等)加載至活動窗口。
2)根據(jù)圖4,將各類活動節(jié)點拖拽至復合窗口形成流程圖(圖5),流程圖主要由開始活動,基本活動(如條件IF分支、并行Parallel、輸出WriteLine等),子模型活動以及流程箭頭線構成。
圖5 蘋果葉片生長模型復合流程
3)根據(jù)參數(shù)傳遞表,在參數(shù)窗口中創(chuàng)建數(shù)據(jù)和狀態(tài)中間參數(shù),并在參數(shù)屬性窗口中構建它們之間的相互依賴關系(例如依據(jù)ECA2,ATM和Sz活動對應的輸出和輸入?yún)?shù)之間的傳遞關系通過中間參數(shù)TE_ATM橋聯(lián)起來)。分別將參數(shù)數(shù)據(jù)輸入至對應的參數(shù)變量中,運行流程可得結果。
蘋果葉片生長模型的復合過程中的數(shù)據(jù)參數(shù)值、實測值均來源于文獻[19],模擬時間跨度保持一致,即以4月10日為有效積溫的日期起點,每隔10d,至7月20日對該模型進行了模擬。本文選取了其中蘋果單樹葉片數(shù)量模型Qt至5月20日的模擬結果與文獻中的模擬值及實測值進行對比,并采用檢驗模型時常用的統(tǒng)計方法均方根誤差(RootMeanSquaredError,RMSE)對三個值之間的符合度進行統(tǒng)計分析。從表2結果可以看出,本文的模擬值與文獻模擬值、實際測試值的標準誤差分別為3.62和22.28。分析其誤差主要源于數(shù)據(jù)精度以及模型自身的擬合程度,但均在合理范圍內, 且隨著模擬時間的推移,模擬值與另外兩種值之間的偏差并沒有擴大,表明了模擬過程比較穩(wěn)定。此外還對另一作物生長率模型[22]進行了模擬,結果同樣符合要求,說明該方法完全可行。與文獻采用傳統(tǒng)的面向對象方法、僅依賴特定的模型復合環(huán)境(無可視化建模界面、靜態(tài)編譯、高耦合,不易移植)相比,本文方法及復合環(huán)境具備如下優(yōu)點:
1)模型活動與ECA規(guī)則、復合環(huán)境之間耦合程度低?;顒拥臉嫿?、規(guī)則的制定、模型的復合這三個過程相分離,模型活動可根據(jù)規(guī)則中狀態(tài)和數(shù)據(jù)之間的依賴關系動態(tài)組合。
2)通用性強,可復用程度高。模型活動作為獨立的構件,既可以是符合XML標準的文件,也能動態(tài)編譯成程序集,方便移植。
3)自動化程度較高,可擴展性強。模型參數(shù)類型及個數(shù)自動識別,能在復合階段動態(tài)地創(chuàng)建輔助參數(shù),而且稍加改進即可與面向本體或Agent方法相結合。
4)模型活動構建和復合的實現(xiàn)細節(jié)對建模者而言是透明的,使得他們能更多地關注于規(guī)則的制定以及模型復合的意義,提高了復合效率。因此本文方法具備一定的通用性,能解決一般性模型的復合問題。
表2 單樹葉片數(shù)量模擬值、文獻模擬值、實測值及預測誤差
本文針對DSS模型的復合問題,提出了一種狀態(tài)和數(shù)據(jù)雙因素驅動,并采用ECA規(guī)則來定義復合流程的方法。該方法側重底層模型活動的構建和復合,每個子模型活動即為一個可移植的獨立單元,內部包含模型的求解算法,對外提供了參數(shù)的接口,模型之間的復合過程就是構建活動之間依賴關系的過程。此外ECA規(guī)則容易構建復雜的事件運算和條件表達式,能表達更強的語義以及活動之間的同步關系。所描述的觸發(fā)活動的事件和內部條件, 對應著活動的執(zhí)行依賴關系。模型實驗表明ECA規(guī)則易于擴展,且容易轉化為網(wǎng)絡活動圖等其他方式。
進一步思考及改進:1)結合Agent的思想,完善模型內部的求解算法,提高效率;2)引入回調、暫停等機制,尤其是考慮ECA規(guī)則與模糊Petri網(wǎng)結合,使異常處理更靈活并考慮引入對條件代數(shù)表達式[23]和實時系統(tǒng)[24]的處理,讓模型的復合流程控制更加完善和智能;3)引入數(shù)據(jù)庫存取機制,滿足大規(guī)模數(shù)據(jù)的處理和Web應用,或進一步對數(shù)據(jù)庫進行知識挖掘[25],滿足動態(tài)DSS的需要。
)
[1]MUZAFFARZ,AHMEDMA.Softwaredevelopmenteffortprediction:astudyonthefactorsimpactingtheaccuracyoffuzzylogicsystems[J].InformationandSoftwareTechnology, 2010, 52(1): 92-109.
[2] 劉東玉,唐忠,邱超,等.雷達電子戰(zhàn)仿真模型庫構建方法研究[J].艦船電子工程,2009,29(5):32-34.(LIUDY,TANGZ,QIUC,etal.StudyonconstructionmethodofradarEWsimulationmodel-base[J].ShipElectronicEngineering, 2009, 29(5): 32-34.)
[3] 黃宏勝,岳天祥.基于流程圖的資源環(huán)境模型復合方法[J].計算機工程,2008,34(3):72-74.(HUANGHS,YUETX.Resourceandenvironmentalmodelcompositionmethodbasedonflowchart[J].ComputerEngineering, 2008, 34(3): 72-74.)
[4] 李牧南,彭宏.基于Agent的模型表示與模型復合[J].計算機應用,2006,26(4):891-894.(LIMN,PENGH.ModelrepresentationandmodelcompositebasedonAgent[J].JournalofComputerApplications, 2006, 26(4): 891-894.)
[5]LIM-N,XIONGJ-X.Anovelmethodofmodelcompositeindecisionsupportsystem[J].AdvancesinInformationSciences&ServiceSciences, 2012, 4(15): 317-324.
[6]DOTOLIM,HAMMADIS,JERIBIK,etal.Amulti-Agentdecisionsupportsystemforoptimizationofco-modaltransportationrouteplanningservices[C]//CDC2013:Proceedingsofthe2013IEEEConferenceonDecisionandControl.Piscataway,NJ:IEEE, 2013: 911-916.
[7] 楊滿喜,賈樂朋,柳少軍.一種新的DSS中模型復合方法研究[J].科學技術與工程,2009(10):2793-2797.(YANGMX,JIALP,LIUSJ.ResearchonakindofnewmethodaboutmodelcombinationinDSS[J].ScienceTechnologyandEngineering, 2009(10): 2793-2797.)
[8]CHIUN-H,HUANGS-J.Theadjustedanalogy-basedsoftwareeffortestimationbasedonsimilaritydistances[J].TheJournalofSystemsandSoftware, 2007, 80(4): 628-640.
[9]BECKH,MORGANK,JUNGY,etal.Ontology-basedsimulationinagriculturalsystemsmodeling[J].AgriculturalSystems, 2010, 103(7): 463-477.
[10]LIYF,XIEM,GOHTN.Astudyofmutualinformationbasedfeatureselectionforcasebasedreasoninginsoftwarecostestimation[J].ExpertSystemswithApplications, 2009, 36(3,Part2): 5921-5931.
[11] 劉松.事件和參數(shù)雙因素驅動的智能模型集成機制[J].計算機工程與應用,2012,48(8):28-31.(LIUS.Intelligentmodelintegrationmechanismdrovebydoublefactorsofeventsandparameters[J].ComputerEngineeringandApplications, 2012, 48(8): 28-31.)
[12]YEY,JIANGZ,DIAOX,etal.Extendedevent-condition-actionrulesandfuzzyPetrinetsbasedexceptionhandlingforworkflowmanagement[J].ExpertSystemswithApplications, 2011, 38(9): 10847-10861.
[13]LALIT,SINGHH.Advancereservationofresourcesinworkflowsystem[J].InternationalJournalofComputerScience&MobileComputing, 2014, 3(12): 140-145.
[14] 賀春林,滕云,彭仁明.一種基于ECA規(guī)則的WebService工作流模型的研究[J].計算機科學,2009,36(8):112-115.(HECL,TENGY,PENGRM.WebserviceorientedworkflowmodelbasedonECArules[J].ComputerScience, 2009, 36(8): 112-115.)
[15]OUYANGB,ZHONGF,LIUH.AnECA-basedcontrol-ruleformalismfortheBPELprocessmodularization[J].ProcediaEnvironmentalSciences, 2011, 11(PartA): 511-517.
[16]ZHAOZ,PASCHKEA.Arule-basedAgentframeworkforweakly-structuredscientificworkflows[C]//BIS2013:Proceedingsofthe2013InternationalWorkshopsonBusinessInformationSystemsWorkshops,Volume160oftheSeriesLectureNotesinBusinessInformationProcessing.Berlin:Springer-Verlag, 2013: 290-301.
[17]ZHAOZ,PASCHKEA.Event-drivenscientificworkflowexecution[C]//BPM2012:Proceedingsofthe2012InternationalWorkshopsonBusinessProcessManagement,Volume132oftheSeriesLectureNotesinBusinessInformationProcessing.Berlin:Springer-Verlag, 2013: 390-401.
[18]WANGS,ZHANGY,PENGY.FlexiblemechanismresearchofworkflowsystembasedonSOA[C]//ISCTCS2013:Proceedingsofthe2013InternationalConferenceonTrustworthyComputingandServices,Volume426oftheSeriesCommunicationsinComputerandInformationScience.Berlin:Springer-Verlag, 2013: 86-92.
[19] 田雪亮,胡小平,楊家榮.蘋果葉片生長模擬模型的建立[J].西北農(nóng)林科技大學學報(自然科學版),2006,34(4):105-109.(TIANXL,HUXP,YANGJR.Developmentofsimulativemodelforgrowthofappleleaf[J].JournalofNorthwestSci-TechUniversityofAgricultureandForestry(NaturalScienceEdition), 2006, 34(4): 105-109.)
[20] 趙文,胡文蕙,張世琨,等.工作流元模型的研究與應用[J].軟件學報,2003,14(6):1052-1059.(ZHAOW,HUWH,ZHANGSK,etal.Studyandapplicationofaworkflowmeta-model[J].JournalofSoftware, 2003, 14(6): 1052-1059.)
[21] 胡錦敏,張申生,余新穎.基于ECA規(guī)則和活動分解的工作流模型[J].軟件學報,2002,13(4):761-767.(HUJM,ZHANGSS,YUXY.AworkflowmodelbasedonECArulesandactivitydecomposition[J].JournalofSoftware, 2002, 13(4): 761-767.)
[22]LIUF,LIUX,DINGC,etal.Thedynamicsimulationofricegrowthparametersundercadmiumstresswiththeassimilationofmulti-periodspectralindicesandcropmodel[J].FieldCropsResearch, 2015, 183: 225-234.
[23]WEDEMEIJERL.Transformationofimperativeworkflowstodeclarativebusinessrules[C]//BMSD2013:Proceedingsofthe2013ThirdInternationalSymposiumonBusinessModelingandSoftwareDesign,Volume173oftheSeriesLectureNotesinBusinessInformationProcessing.Berlin:Springer-Verlag, 2013: 106-127.
[24]LALIT,Dr.SINGHH.Advancereservationofresourcesinworkflowsystem[J].InternationalJournalofComputerScience&MobileComputing, 2014, 3(12): 140-145.
[25]LTIFIH,KOLSKIC,AYEDMB.CombinationofcognitiveandHCImodelingforthedesignofKDD-basedDSSusedindynamicsituations[J].DecisionSupportSystems, 2015, 78: 51-64.
ThisworkispartiallysupportedbytheNationalNaturalScienceFoundationofChina(61363071, 61379145),theNaturalScienceFoundationofHainanProvince(20156247).
TANG Chaosheng, born in 1975, Ph.D.candidate, associate professor.His research interests include crop information, numerical simulation.
LIU Shihong, born in 1960, Ph.D., research fellow.His research interests include computer agricultural application, agricultural information standard.
CHENG Jieren, born in 1974, Ph.D., professor.His research interests include cloud computing, network security.
Model composition method of decision support system driven by double factors of state and data
TANG Chaosheng1,2, LIU Shihong1*, CHENG Jieren2
(1.InstituteofAgriculturalInformation,ChineseAcademyofAgriculturalSciences,Beijing100081,China;2.CollegeofInformationScienceandTechnology,HainanUniversity,HaikouHainan570228,China)
In the Decision Support System (DSS) model composition project, the single factor-driven method has a narrow range of application and low efficiency; the multi-factor-driven method lacks the description of the logical relationship between the algorithm and sub-model level and has low level of abstraction of the black box.Therefore, a composition method driven by the double factors of state and data was proposed.Based on the definition of workflow process model, the DSS submodel was generated as a workflow activity firstly, which was used as a portable and independent unit, containing the algorithm for solving the model inside and providing the external interface parameters.Secondly, according to the dependencies of activities performed, the corresponding Event-Condition-Action (ECA) rules were formulated to bind the composition relation between them dynamically.Finally, with the network activity diagram converted, combined work was completed by the aid of workflow platform.Experimental results show that the proposed method can solve the general problems of the model composition and has good generality and expansibility compared with other methods.
Decision Support System (DSS); model composition; workflow process model; activity; Event-Condition-Action (ECA) rule; workflow platform
2016- 07- 21;
2016- 09- 17。
國家自然科學基金資助項目(61363071, 61379145);海南省自然科學基金資助項目(20156247)。
唐朝勝(1975—),男,湖南資興人,副教授,博士研究生,主要研究方向:作物信息、數(shù)值模擬; 劉世洪(1960—),男,山東臨朐人,研究員,博士,主要研究方向:計算機農(nóng)業(yè)應用、農(nóng)業(yè)信息標準; 程杰仁(1974—),男,湖南資興人,教授,博士, CCF會員,主要研究方向:云計算、網(wǎng)絡安全。
1001- 9081(2017)02- 0581- 06
10.11772/j.issn.1001- 9081.2017.02.0581
TP311.52
A