張 磊 朱 琳 章華平
(1.海軍指揮學院 南京 210016)(2.海軍潛艇學院 青島 266071)
艦艇編隊的防空作戰活動可以理解為眾多防空任務流程的組合,這些任務流程都是需要防空資源來完成的。但是防空資源的數量是有限的,所以在需要完成的防空任務(作戰流程)和可用的資源之間必須進行協調,可以稱之為資源管理。資源管理主要解決的問題就是資源調度和分配。一個防空作戰流程系統究竟是優是劣,不是看作戰流程系統是否復雜,而是判斷是否符合防空行動實際需要,更是要注重該流程系統的實際運行效果。實際上,一個高質量和實用的防空作戰流程系統是能夠幫助編隊實現其作戰流程優化和重構的。為了實現這一目的,需要通過多層面的指標對防空作戰流程進行系統和客觀的評價。
防空作戰行動的資源分配是一個復雜的系統工程。作戰目的(意圖)、編隊任務、防空流程項、資源類型、資源數量、作戰單元、指揮控制等,這些問題都和分配相關。每個作戰流程可以有一個或多個分配,一個分配要綜合考慮上述一個或多個問題。
防空作戰流程系統的目標就是盡可能快捷地完成流程項,畢竟某些防空作戰流程項的延遲會影響到整個任務流程的完成時間。想要實現防空任務到作戰行動的轉化,必須要做出以下兩個方面的決定:
1)防空任務依照什么樣的次序分解轉化為作戰行動。如果在一個特定的時間存在著大量的防空任務,那么就很難立刻把它們都轉化成作戰行動。畢竟,防空任務太多,而可用的資源有限。如果這種情況發生,就必須進行選擇作戰流程應該按照什么樣的次序獲取資源。
2)任務流程的執行需要哪些資源。由于資源是有差別的,這就涉及到對于一個特定的作戰流程,到底把哪些資源分配給它。例如一個共享系統,可以更加快捷高效地執行特定作戰流程。
作戰流程的資源分配,有很多不同的啟發式的方法可以拿來參考,特別是可以借用多種在企業的生產管理里面采用的排隊規則。實際上,編隊防空作戰流程與企業生產部門中的工藝路線非常相似,下面是一些常用的排隊規則:
·先到先服務規則
·后到先服務規則
·最短處理時間規則
·最短剩余處理時間規則
·最早截止期限規則
以上各種排隊規則所需要的信息量存在著很大的不同。先到先服務事實上不需要信息,最短剩余處理時間需要期望處理時間和流程信息。事實上,還存在一些更高級的排隊規則,它們充分考慮正在進行的防空任務、預期到來的來襲目標、資源可用性等等。
由于防空作戰資源管理是編隊防空作戰指揮系統不可或缺的一部分,并且防空資源管理的水平直接影響防空作戰系統的效率。防空作戰指揮系統對于防空資源的管理使用可以有兩種不同的機制,一種是著眼于防空資源管理可靠性和穩定性方面,方法是在防空任務流程實施或執行前,將該任務流程所需要的防空資源全部分配給該任務流程,直到任務流程結束才釋放這些資源,這確保了任務流程的正常進行;另一種是著眼于資源管理系統性能方面,方法是實時動態調用系統中的資源,任務流程中某個防空作戰活動需要某些資源,動態調用,用完釋放,再交給其他任務流程使用。雖然這很大程度上提高了資源的利用率,但是這也降低了防空作戰系統的安全性和增大了系統的復雜性,系統很可能因為資源沖突而導致資源管理異常。
顯然對于防空作戰資源的分配都是基于管理系統性能,所以當資源發生沖突時,就需要相應的資源協調機制,分析了影響資源分配的幾大因素,所以在防空資源分配的問題上,很多時候都是基于這些規則來協調的。但是單一使用某一規則往往不能很好地滿足編隊防空作戰這樣一個復雜系統的資源調度,有時候需要多個規則共同使用,才能使防空資源分配更加合理有效。
建立防空作戰資源模型,把與模型相關的信息與數據經過整理和抽象加工以后,便可以提取出來進行形式化表示。資源模型使用的目的不同,也就是需求不同,對模型所采取的描述形式也不盡相同。任務流程使用防空資源需要在滿足一定的規則下,防空資源才能被使用的,它是對使用資源的某種限制。它不依附于防空資源,目的為了避免任務流程因相互競爭資源而導致使用沖突而采取的相互約束。
對于基于規則的表示方法,可以采用RCE[3]形式的定義語言形式來表示,即“IF CONDITION THEN EXECUTION”,其中RESOURCE表示防空作戰資源的情況,CONDITION是防空作戰資源的使用條件,EXECUTION是指滿足上述條件后可對防空作戰資源進行的操作(行動)。防空作戰資源的規則可定義成如下形式:


基于規則的形式化表達方法Res.:Cond.=>Ex.是目前廣泛應用的表示方法之一,它適合表示由許多相對獨立的規則組成的集合,或者是表示具有因果關系的,由許多相對獨立的操作(行動)組成的過程[4]。
滿足防空資源的一個規則,它允許某個防空任務流程對資源執行多個操作,不滿足這個規則,也允許執行一些的操作。一個防空任務流程發送申請使用資源的請求時,要么滿足某個條件,要么不滿足,而滿足或不滿足規則所對應的活動集之間沒有必然的關系。同樣一個防空資源可以有多個約束條件,因此它可表示為:

其中“=>”和“∧”表示操作符。
“﹁”:不發生運算符,給定一個操作Ex(t),如果Ex(t)在某個時間點t未發生,則產生一個復合操作﹁Ex(t)。
“∧”:與運算符,表示需Exl和Ex2操作同時發生,該復合操作就發生。
由于系統本身對資源也有相應的限制,所以對于某艘遠程防空導彈艦載某型防空導彈資源Res:

從防空資源的角度看,艦艇編隊防空作戰是一個資源不斷使用和消耗的過程。前面第一部分我們引入資源類型和資源個體概念建立資源模型后,可以將艦艇編隊防空作戰任務流程和資源模型通過兩種方式關聯起來。一種方式是將防空作戰任務流程對防空資源的使用描述為作戰行動的一個屬性,借助于任務流程的屬性來表達資源占用、釋放和消耗等操作。另一種方式是引入資源服務器的概念,將任務流程對資源的占用、釋放和消耗解釋為資源服務器對資源的分配管理行為[5]。因此,防空資源的分配管理可描述為防空過程中的特殊活動,這類活動具有自執行的特性。它一方面向有關的防空任務流程發送諸如資源已滿足、資源短缺、資源消耗等消息;另一方面則操作防空資源數據庫,比如給防空資源加上“占用”、“消耗”、“空閑”、“技術準備”、“檢修”和“故障”等標志。防空作戰資源服務器結構模型如圖1所示。
防空作戰資源管理包括防空資源需求和防空資源分配。防空資源需求是由防空任務轉化為防空作戰行動或在執行防空活動時向資源服務器發出的請求。防空資源分配是指資源服務器在接收到防空作戰資源需求后,將一定數量的資源提供給該防空作戰活動,以使該任務流程正常進行。引入資源規則庫后,防空資源分配受到約束,只有滿足規則庫中該資源的相應使用條件,該任務流程才能對防空資源執行相應的操作。

圖1 防空作戰資源服務器結構模型
在艦艇編隊防空作戰過程中,各個任務流程往往會競爭資源,導致資源沖突,從而使資源服務器無法正常調度。針對這種情況,下面給出一種資源沖突的檢測算法,將潛在資源沖突的任務流程找出,然后利用優先權函數為存在資源沖突的不同的任務流程賦予不同的優先權,從而消除了潛在的資源沖突。在介紹資源沖突之前,先介紹幾個相關的概念[6]。
1)資源依賴(Resource Dependency):在編隊防空作戰中有兩個任務流程Tm、Tn,如果Res(Tm)∩Res(Tn)≠φ,則m和n存在資源依賴關系。
如果m和n有資源依賴,那么任務流程m和n不能同時執行,否則就會引起資源沖突。
2)資源沖突(Resource Conflict):在編隊防空作戰中有兩個任務流程Tm和Tn,如果它們存在資源依賴,并且這兩個任務流程在執行過程中[Start(Tm),End(Tm)]∩[Start(Tn),End(Tn)]≠φ,那么 Tm和 Tn之間存在資源沖突。其中Start(Tm),End(Tm)分別代表任務流程Tm執行開始時間和結束時間,且Start(Tm)≤End(Tm)。
一個防空任務流程的實際執行時間只有在其執行完成時才能確定。假設有兩個存在資源依賴的活動,如果它們已執行完成,那么就可以知道它們的執行時間段是否相交,但是當這兩個防空任務流程己經開始執行后意識到資源沖突時,采取修改或阻止行動已經為時已晚了。因此非常有必要在艦艇編隊防空作戰資源模型構建期間發現潛在的資源沖突,通過對每個防空任務流程的資源使用時間的估計,根據這些估計值來判斷防空模型內是否有潛在的資源沖突存在,如果有,則應該相應地調整或修改,消除潛在的資源沖突。
在艦艇編隊防空任務轉化為防空作戰行動之前對資源沖突的檢測,主要體現在根據防空任務或作戰計劃進行的資源預先分配上,這里先介紹與資源沖突檢測緊密相關的一些概念和算法[7~8]。
5.2.1 算法一:檢測同一任務流程中的資源沖突
Step1:Initialize
進行初始化,令Task是所有任務流程的集合。將Path中的所有任務流程存放到Task中,定義一個Form表f,f是一個變量,f=False。
Step2:Repeat
(1)從Task中移出一個元素,記為Pm。
(2)對于Task中的每個元素Pn,執行下列操作:
a)如果Res(Pm)∩ Res(Pn)=φ,返回Step2(2);
b)如果Transitable(Pm,Pn)=Ture(調用算法一),返回Step2(2);
c)如果Transitable(Pn,Pm)=Ture(調用算法一),返回Step2(2);
d)如果Pm需要的每個資源,[Start(Pm),End(Pm)]∩[Start(Pn),End(Pn)]= φ,返回Step2(2),否則有可能發生資源沖突,將這兩個記錄到Form表f中;
直到Task集合為空。
Step3:Return f。
如果是不可傳遞的,則再判斷它們所需要的防空資源在使用時間上是否重疊,如果重疊則有可能存在資源沖突,需要進行調整,避免發生資源沖突。
而對于不同防空任務流程間的資源沖突情況,由于不同任務流程間不存在傳遞性問題,所以要判斷資源沖突就不能通過上述的方法,需要對該算法進行一定的改進,一般來說不同任務流程間的資源沖突是由于有不斷產生的新的任務流程,使得資源使用時間上有疊交,這樣就可能在任務真正執行時發生資源沖突,由于在艦艇編隊這樣復雜防空系統中眾多任務流程在同時運行,所以有時潛在的資源沖突往往不可避免,所以對于不同任務流程間的資源沖突,只能避免最大的資源沖突量。算法二是用來檢測不同任務流程間的資源沖突,雖然這里資源的沖突往往不可避免,但是通過調整時間可以在一定的程度上減少了潛在資源沖突的發生。
5.2.2 算法二:檢測不同任務流程的資源沖突
Step1:Initialize
進行初始化,令Resource是模型中新產生的任務流程所需的資源的集合。將其所需的資源全部存放到集合Resource中,同時定義一個Form表f,f是一個變量,f=False。
Step2:Repeat
(1)從集合Resource中移出一個元素,記為Resm;
(2)執行下列操作;
a)搜尋防空作戰資源屬性數據庫中該資源的相關的信息;
b)如果該任務流程的資源需求時間和數據庫中的資源需求信息不相交,返回a),否則就有可能發生資源沖突,將這兩個記錄到Form表f中;
直到Resource集合為空。
Step3:Return f。
在執行任務之前可以檢測和避免潛在的防空資源沖突,但是由于這里對防空資源的使用時間,包括開始時間、持續時間和結束時間都是估計得來的,同時某些防空任務流程對資源的消耗或占用的延遲,使得防空資源的矛盾在防空作戰過程中依舊存在,所以這里給出一種基于規則的資源協調方法。防空資源的分配和協調由防空資源服務器來處理,防空資源服務器分為兩部分:資源規則庫和資源協調器。而資源規則庫就是存儲和管理這些規則的場所,這里的規則來自于兩部分,一部分是該防空資源固有的(如某型防空導彈的數量,戰技術參數等)或根據防空作戰經驗人為事先規定好的[9];另一部分是由防空任務流程執行過程中使用資源時動態添加的,主要是為了避免引起防空資源沖突或防空作戰流程異常,一旦該防空任務完成,相應的規則也被取消[10]。如作戰任務流程P正在使用資源RF,如果該任務流程不可被剝奪,則會在規則庫生成相應的記錄。
本文圍繞資源管理中心,詳細闡述了艦艇編隊防空資源的使用規則、方法和策略,并對規則進行了形式化表達。介紹了防空資源服務器的結構模型和功能,通過分析防空資源沖突,給出了資源沖突的檢測方法和算法,用來避免可能潛在的資源沖突。針對艦艇編隊防空作戰這樣高度復雜的任務流程間資源調度,給出一種基于規則的防空資源沖突協調方法,運用規則約束防空資源的競爭。重新分配資源時,資源服務器調用相關函數,實時計算動態優先權,然后根據這個優先權計算值來分配防空資源。因此就有了一個很直觀的思路:艦艇編隊防空作戰過程中哪個任務流程對資源需求的優先權高就優先得到資源的配置。另外,如果要做更深入細致的研究,還要考慮資源的諸多因素,比如資源的成本,配置防空資源亦要適當考慮防空作戰的收益成本比。
[1]阿斯特,等.工作流管理—模型、方法和系統[M].王建民,等譯.北京:清華大學出版社,2004:64-65.
[2]王澄澄.基于時序ECA的分布式工作流管理系統研究與應用[D].濟南:山東大學,2005:18-22.
[3]姜躍平,等.ECA規則的模型和行為特定理論[J].Joural of Software,1997,8(3):191-196.
[4]王杏林,曹曉東.概念建模[M].北京:國防工業出版社,2007:95-99.
[5]范珂,查杰民.基于Agent的工作流管理系統資源沖突解決方案[J].計算機工程與設計,2005,(02):501-522.
[6]劉勝,等.基于工作流模型的資源配置優化方法[J].計算機集成制造系統,2005,11(9):1272-1278.
[7]周穎.工作流中并發流程間資源沖突的研究[D].濟南:山東大學,2005:23-29.
[8]陳蘭,等.機群環境中一種基于工作流關系的作業調度算法[J].信息工程大學學報,2007,8(2):227-230.
[9]許騰.海軍合同戰術運籌分析[M].北京:海潮出版社,2002:126-140.
[10]李登峰,許騰.海戰運籌分析及應用[M].北京:國防工業出版社,2007:66-80.