董 鵬,黃佳帥,石懷斌
(海軍工程大學(xué)管理工程與裝備經(jīng)濟(jì)系,武漢 430033)
隨著我國(guó)海上權(quán)益的進(jìn)一步主張,海上軍事力量建設(shè)的重要性日益凸顯,艦艇編隊(duì)作為海上軍事力量的直接體現(xiàn),為其提供有效的后勤保障不可或缺。因此,合理規(guī)劃海上補(bǔ)給過(guò)程,提高海上補(bǔ)給效率,具有重要意義。
目前,海上橫向補(bǔ)給規(guī)劃的研究有很多,張泉先等人[1]利用海洋氣象信息,建立了基于時(shí)長(zhǎng)步進(jìn)的算法模型,對(duì)戰(zhàn)時(shí)存在補(bǔ)給時(shí)間窗情況下的艦船編隊(duì)海上補(bǔ)給路徑進(jìn)行了規(guī)劃。文獻(xiàn)[2-4]通過(guò)采用一種改進(jìn)旅行商問(wèn)題,構(gòu)建了橫向補(bǔ)給的路徑規(guī)劃的數(shù)學(xué)模型,通過(guò)蟻群算法進(jìn)行求解,從而對(duì)單補(bǔ)給艦的編隊(duì)海上補(bǔ)給路徑進(jìn)行了優(yōu)化。秦芙蓉等[5]針對(duì)巡回牧師策略下的海上補(bǔ)給規(guī)劃問(wèn)題建立模型,運(yùn)用啟發(fā)式算法求解最優(yōu)補(bǔ)給路徑。周曉光等[6]根據(jù)網(wǎng)絡(luò)流理論,分別將橫向補(bǔ)給的3 種補(bǔ)給策略進(jìn)行了數(shù)學(xué)描述,并將3 種策略下的優(yōu)化結(jié)果進(jìn)行對(duì)比。王城超等[7-8]通過(guò)預(yù)測(cè)接收艦船的補(bǔ)給時(shí)間窗,構(gòu)建最小化補(bǔ)給時(shí)間的整數(shù)規(guī)劃模型,分別通過(guò)改進(jìn)遺傳算法與C-W 算法修正后的動(dòng)態(tài)規(guī)劃方法進(jìn)行求解,對(duì)多補(bǔ)給艦情況下的編隊(duì)海上補(bǔ)給路徑進(jìn)行優(yōu)化。Brown 等[9]通過(guò)二維的坐標(biāo)輸入以及谷歌地球的信息共享,以路徑優(yōu)化為目標(biāo),以作戰(zhàn)艦艇的最低物資需求補(bǔ)給為約束條件,通過(guò)使用整數(shù)規(guī)劃以及啟發(fā)式算法進(jìn)行求解。根據(jù)文獻(xiàn)的整理,在現(xiàn)有的海上補(bǔ)給組織架構(gòu)下,考慮物資的特殊性及其出入庫(kù)時(shí)間的物資補(bǔ)給順序優(yōu)化問(wèn)題研究較少。
本文采用多智能體與整數(shù)規(guī)劃模型相結(jié)合的方法,通過(guò)多智能體系統(tǒng)的信息傳遞及相互協(xié)作,解決海上物資補(bǔ)給過(guò)程中的物資排隊(duì)問(wèn)題,通過(guò)整數(shù)規(guī)劃模型準(zhǔn)確計(jì)算海上補(bǔ)給的艦船補(bǔ)給順序。
橫向補(bǔ)給是航行補(bǔ)給的一種海上補(bǔ)給方法,指的是艦船在航行狀態(tài)下,補(bǔ)給艦與接收艦保持橫列編隊(duì),通過(guò)艦船上的橫向補(bǔ)給裝置對(duì)補(bǔ)給艦及接收艦進(jìn)行連接,進(jìn)行物資的傳送。橫向補(bǔ)給是航行補(bǔ)給方式中目前應(yīng)用最廣的方法,本文也以橫向補(bǔ)給作為研究對(duì)象。
編隊(duì)補(bǔ)給中,由于艦隊(duì)行進(jìn)過(guò)程中都保持著特定的戰(zhàn)位,艦與艦之間的距離和方向也都有著明確的規(guī)定,因而橫向補(bǔ)給出現(xiàn)了3 種常見的補(bǔ)給策略,即送報(bào)男孩策略、加油站策略、巡回牧師策略,如圖1 所示。其中,送報(bào)男孩策略(以下簡(jiǎn)稱DB 策略),由于操作簡(jiǎn)單,且可以最大限度地保持艦艇編隊(duì)的整體作戰(zhàn)陣型,應(yīng)用最為廣泛,是本文的研究對(duì)象。該策略下,補(bǔ)給艦暫時(shí)離開原有的戰(zhàn)位,按照既定的補(bǔ)給次序,依次駛向各艘接收艦位置進(jìn)行補(bǔ)給,接收艦保持特定的航向及航速行進(jìn)。
圖1 海上橫向補(bǔ)給策略
橫向補(bǔ)給過(guò)程需要執(zhí)行接收艦或補(bǔ)給艦向補(bǔ)給陣位航行、架設(shè)、撤除傳送裝置等作業(yè),這部分作業(yè)會(huì)消耗一定比例的時(shí)間,在實(shí)際的補(bǔ)給過(guò)程中,為了提高補(bǔ)給效率,減少補(bǔ)給裝備架設(shè)等作業(yè)的重復(fù),在物資數(shù)量能夠滿足所有接收艦物資需求時(shí),實(shí)際補(bǔ)給作業(yè)中,會(huì)選擇將當(dāng)前接收艦的所有物資需求都補(bǔ)充完畢后,再進(jìn)行下一艘接收艦的物資補(bǔ)給,因而可以將單艘接收艦的物資補(bǔ)給順序和編隊(duì)內(nèi)的接收艦的補(bǔ)給順序分步驟進(jìn)行研究,先求解單艦的最優(yōu)物資補(bǔ)給順序,再將物資補(bǔ)給順序帶入整體模型中,求解接收艦最優(yōu)補(bǔ)給順序,從而將橫向補(bǔ)給規(guī)劃轉(zhuǎn)換為兩階段優(yōu)化問(wèn)題。
海上補(bǔ)給作為維持海上力量的根本途徑,其戰(zhàn)略意義突出,同時(shí)其被敵對(duì)力量海上打擊優(yōu)先級(jí)也處于前列,在不考慮颶風(fēng)、暴雨等極端自然情況下,可以將海上補(bǔ)給所處外界環(huán)境分為平時(shí)環(huán)境及戰(zhàn)時(shí)環(huán)境。
平時(shí)環(huán)境下,由于既不存在敵對(duì)力量對(duì)補(bǔ)給進(jìn)行干擾和打擊,又不考慮海況等自然環(huán)境因素,因而不存在外界因素會(huì)影響補(bǔ)給進(jìn)程,海上補(bǔ)給除了文中所考慮的排隊(duì)情況以外,不存在其他情況使補(bǔ)給進(jìn)入等待狀態(tài),所有的補(bǔ)給需求都能夠被滿足。這種環(huán)境下,不同補(bǔ)給方案實(shí)施的最大區(qū)別就在于實(shí)施補(bǔ)給所消耗的時(shí)間長(zhǎng)短,因此,平時(shí)環(huán)境下通過(guò)衡量時(shí)間成本要素來(lái)評(píng)價(jià)運(yùn)輸方案的優(yōu)劣,本文以最小化的補(bǔ)給完成時(shí)間為平時(shí)環(huán)境下的補(bǔ)給目標(biāo)。
在戰(zhàn)時(shí)環(huán)境下,由于海上補(bǔ)給進(jìn)程會(huì)被敵對(duì)力量的襲擊所打斷,而且由于敵襲時(shí)間的隨機(jī)性,補(bǔ)給需求能夠被全部完成的可能性較小,因而需要對(duì)補(bǔ)給物資及艦船進(jìn)行優(yōu)化。由于戰(zhàn)場(chǎng)環(huán)境復(fù)雜多變,且無(wú)法獲取實(shí)際數(shù)據(jù),為了便于建立研究模型,對(duì)戰(zhàn)時(shí)情況采取簡(jiǎn)化處理,在不考慮敵方打擊順序和我方戰(zhàn)斗損失的前提下,假設(shè)作為約束條件的補(bǔ)給中斷時(shí)間已知,同時(shí)考慮戰(zhàn)時(shí)環(huán)境中作戰(zhàn)效能的重要性,本文將最大化補(bǔ)給的邊際作戰(zhàn)效能作為戰(zhàn)時(shí)環(huán)境的補(bǔ)給目標(biāo)。
在平時(shí)的補(bǔ)給規(guī)劃中,通過(guò)構(gòu)建單艦物資補(bǔ)給仿真模型,求解平時(shí)情況下的單艦物資補(bǔ)給順序。根據(jù)單艦物資運(yùn)輸僅需對(duì)物資出庫(kù)、物資運(yùn)輸、載具返回、物資入庫(kù)4 個(gè)環(huán)節(jié)進(jìn)行仿真的特點(diǎn),以及海上補(bǔ)給多目標(biāo)接收艦的實(shí)際情況,分別建立“補(bǔ)給艦”單一智能體、“接收艦”智能體群。
2.1.1 “補(bǔ)給艦”智能體
“補(bǔ)給艦”智能體,主要完成物資出庫(kù)作業(yè)以及協(xié)同“接收艦”智能體完成物資運(yùn)輸作業(yè)?!把a(bǔ)給艦”智能體設(shè)置有各類物資出庫(kù)速率、各“接收艦”物資需求等參數(shù),設(shè)置有甲板物資數(shù)量、目標(biāo)接收艦、運(yùn)輸順序、補(bǔ)給完成數(shù)量、出庫(kù)物資數(shù)量、當(dāng)前運(yùn)輸物資、當(dāng)前出庫(kù)物資等變量?!把a(bǔ)給艦”智能體根據(jù)其需要實(shí)現(xiàn)的行為及判斷,設(shè)置有甲板狀態(tài)圖,甲板工作狀態(tài)圖,物資運(yùn)輸狀態(tài)圖,運(yùn)輸判斷狀態(tài)圖4個(gè)狀態(tài)圖。甲板狀態(tài)圖,負(fù)責(zé)判斷甲板物資數(shù)量是否達(dá)到“補(bǔ)給艦”甲板容量上限,造成甲板擁堵。甲板工作圖,負(fù)責(zé)物資的出庫(kù)作業(yè)。物資運(yùn)輸狀態(tài)圖,負(fù)責(zé)協(xié)同“接收艦”智能體完成物資運(yùn)輸作業(yè)。運(yùn)輸判斷狀態(tài)圖,負(fù)責(zé)通過(guò)檢查“接收艦”甲板是否產(chǎn)生擁堵,判斷是否能夠進(jìn)行物資的運(yùn)輸[10]。
圖2 “補(bǔ)給艦”智能體狀態(tài)圖
2.1.2 “接收艦”智能體
“接收艦”的智能體群,主要負(fù)責(zé)協(xié)同“補(bǔ)給艦”智能體進(jìn)行物資運(yùn)輸作業(yè)及物資的入庫(kù)作業(yè)?!敖邮张灐敝悄荏w設(shè)置有各類物資入庫(kù)速率參數(shù),設(shè)置有當(dāng)前運(yùn)輸物資、當(dāng)前入庫(kù)物資、甲板物資數(shù)量、物資入庫(kù)排列等變量。“接收艦”智能體根據(jù)其需要實(shí)現(xiàn)的行為及判斷,設(shè)置有甲板工作圖、接收狀態(tài)圖及補(bǔ)給狀態(tài)圖。其中甲板工作圖,負(fù)責(zé)物資的入庫(kù)作業(yè)。接受狀態(tài)圖,負(fù)責(zé)接收“補(bǔ)給艦”發(fā)送的運(yùn)輸物資信息。補(bǔ)給狀態(tài)圖,負(fù)責(zé)判斷甲板物資數(shù)量是否達(dá)到甲板容量上限,導(dǎo)致補(bǔ)給進(jìn)程暫停,并將消息傳遞給“補(bǔ)給艦”智能體[10]。
圖3 “接受艦”智能體狀態(tài)圖
在戰(zhàn)時(shí)的補(bǔ)給規(guī)劃中,由于補(bǔ)給時(shí)間的限制,為了最大化作戰(zhàn)效能,引入“效時(shí)比”的概念,通過(guò)計(jì)算效時(shí)比=作戰(zhàn)效能/(出庫(kù)時(shí)間+運(yùn)輸時(shí)間+入庫(kù)時(shí)間),將每艘接收艦的需求物資進(jìn)行效時(shí)比排序,優(yōu)先補(bǔ)給效時(shí)高的物資,從而得出單艦的物資運(yùn)輸順序,再將其帶入整體仿真模型中,求解具體時(shí)間限制下的最優(yōu)補(bǔ)給順序。
平時(shí)情況下,海上補(bǔ)給規(guī)劃目標(biāo)為盡快滿足艦艇編隊(duì)的物資需求,即海上補(bǔ)給總時(shí)間最小,因?yàn)榻邮张炇冀K未離開自身補(bǔ)給陣位,因而定義補(bǔ)給總時(shí)間為自補(bǔ)給艦離開自身艦位開始,至最后一個(gè)輪次物資在接收艦上入庫(kù)完成為止所消耗的總時(shí)間。
根據(jù)補(bǔ)給過(guò)程分析,設(shè)定如下參數(shù)變量:
其中,式(1)表示補(bǔ)給目標(biāo)函數(shù),補(bǔ)給總時(shí)間最??;約束條件式(2)表示每一補(bǔ)給輪次只補(bǔ)給一艘接收艦;約束條件式(3)表示一次補(bǔ)給作業(yè)中,一艘接收艦僅能被補(bǔ)給一次;式(4)表示每一輪次補(bǔ)給時(shí)間的計(jì)算,由兩部分組成,分別為補(bǔ)給艦前往補(bǔ)給陣位的航行時(shí)間以及補(bǔ)給艦對(duì)當(dāng)前接收艦進(jìn)行物資補(bǔ)給的時(shí)間。式(5)~式(6)表示補(bǔ)給艦位置隨著補(bǔ)給輪次改變而相應(yīng)地變化,第1 輪次開始前補(bǔ)給艦位置就在其初始位置,第1 輪之后的其他輪次補(bǔ)給開始之前,補(bǔ)給艦位置就是上一輪次接收艦所在位置,因?yàn)镈B 策略下的海上補(bǔ)給,接收艦相對(duì)位置不發(fā)生改變,補(bǔ)給艦前往各個(gè)接收艦相對(duì)位置進(jìn)行補(bǔ)給,其當(dāng)前輪次補(bǔ)給結(jié)束的位置即下一輪次補(bǔ)給開始的位置與當(dāng)前的接收艦坐標(biāo)一致。
戰(zhàn)時(shí)情況下,出于作戰(zhàn)的需求以及敵襲的影響,海上補(bǔ)給目標(biāo)為限定時(shí)間內(nèi)通過(guò)補(bǔ)給規(guī)劃,使得補(bǔ)給生成的邊際作戰(zhàn)效能最大。邊際作戰(zhàn)效能為補(bǔ)給一個(gè)批次物資,引起總作戰(zhàn)效能的增加值。
在上文設(shè)置的變量基礎(chǔ)上,追加設(shè)定以下參數(shù)與變量:
其中,式(7)即為戰(zhàn)時(shí)情況下的目標(biāo)函數(shù),即限定時(shí)間內(nèi)海上補(bǔ)給作業(yè)生成的邊際作戰(zhàn)效能最大;約束式(8)表示每一輪次最多只會(huì)補(bǔ)給一艘接收艦;約束式(9)表示在一次海上補(bǔ)給連續(xù)作業(yè)中,一艘接收艦最多只能被補(bǔ)給一次;式(10)表示每一輪次補(bǔ)給時(shí)間的計(jì)算,為補(bǔ)給艦前往補(bǔ)給陣位的航行時(shí)間,以及補(bǔ)給艦對(duì)當(dāng)前接收艦進(jìn)行物資補(bǔ)給的時(shí)間求和;式(11)~式(12)表示隨著補(bǔ)給輪次的變化,補(bǔ)給艦位置的更新;約束條件式(13)表示補(bǔ)給的總時(shí)間不得超過(guò)截止時(shí)間;約束條件式(14)表示每一艘接收艦的補(bǔ)給截止輪次不得超過(guò)其物資總需求。
任務(wù)設(shè)定一個(gè)海上艦艇編隊(duì),有一艘補(bǔ)給艦進(jìn)行伴隨補(bǔ)給,攜帶有4 種補(bǔ)給物資,編號(hào)物資[1~4],各物資出入庫(kù)速度已知,且在當(dāng)前作戰(zhàn)方案下的作戰(zhàn)效能值已知;編隊(duì)內(nèi)有6 艘作戰(zhàn)艦艇需要補(bǔ)給,編號(hào)接收艦[0~5],需要尋找出平時(shí)補(bǔ)給時(shí)間最短目標(biāo)下的補(bǔ)給順序,以及特定時(shí)間下作戰(zhàn)效能最大目標(biāo)下的補(bǔ)給順序。為了方便衡量作戰(zhàn)效能,物資計(jì)量單位為橫向補(bǔ)給運(yùn)輸批次,橫向補(bǔ)給一次載具運(yùn)輸作業(yè)所能夠運(yùn)輸?shù)奈镔Y量即為一批次物資,作戰(zhàn)效能為每類物資每批次邊際作戰(zhàn)效能,物資的出/入庫(kù)速度計(jì)量單位統(tǒng)一為min/ 每批次物資,即每批物資出/入庫(kù)所需要多少分鐘。編隊(duì)內(nèi)的各接收艦所需物資數(shù)量如表1 所示,合計(jì)需要59批次的物資。
表1 物資需求表
補(bǔ)給艦初始位置設(shè)定為(300,300),4 類物資的出庫(kù)速度為(7.5,10,20,12),補(bǔ)給艦甲板物資容量設(shè)定為4 個(gè)批次物資。
接收艦位置信息,4 類物資的入庫(kù)速度、作戰(zhàn)效能如表2 所示,各個(gè)接收艦的甲板物資容量都設(shè)定為2 個(gè)批次物資。
表2 接收艦信息
物資計(jì)量單位為橫向補(bǔ)給運(yùn)輸批次,即橫向補(bǔ)給一次運(yùn)輸所能夠運(yùn)輸?shù)奈镔Y量,物資在傳送裝置上的運(yùn)輸時(shí)間統(tǒng)一為15 min,帶入單艦物資補(bǔ)給多智能體模型,求解平時(shí)情況下的每艘接收艦的補(bǔ)給時(shí)間最小的最優(yōu)物資補(bǔ)給順序。
通過(guò)參數(shù)變化實(shí)驗(yàn),對(duì)補(bǔ)給時(shí)間最小化目標(biāo)下的每艘接收艦最優(yōu)物資補(bǔ)給順序進(jìn)行求解,實(shí)驗(yàn)結(jié)果顯示每艘接收艦的最優(yōu)物資補(bǔ)給順序并不唯一,這里僅展示其中一個(gè)最優(yōu)解,結(jié)果如下所示。
接收艦[0]:補(bǔ)給完成所需要補(bǔ)給的最小時(shí)間為175.133 min,補(bǔ)給物資順序?yàn)閧物資[1],物資[1],物資[4],物資[1],物資[3],物資[2],物資[1],物資[3],物資[1]}。
接收艦[1]:補(bǔ)給完成所有物資需求最小時(shí)間為246.15 min,補(bǔ)給物資順序?yàn)閧物資[物資[2],物資[3],物資[2],物資[3],物資[3],物資[4],物資[4],物資[3],物資[4],物資[1]};
接收艦[2]:補(bǔ)給完成所需要補(bǔ)給的最小時(shí)間為277.167 min,補(bǔ)給物資順序?yàn)閧物資[1],物資[3],物資[3],物資[3],物資[4],物資[4],物資[2],物資[4],物資[4],物資[2],物資[2]};
接收艦[3]:補(bǔ)給完成所有物資需求最小時(shí)間為258.15 min,補(bǔ)給物資順序?yàn)閧物資[2],物資[3],物資[2],物資[2],物資[3],物資[4],物資[4],物資[4],物資[4],物資[1]};
接收艦[4]:補(bǔ)給完成所需要補(bǔ)給的最小時(shí)間為209.067 min,補(bǔ)給物資順序?yàn)閧物資[1],物資[1],物資[4],物資[1],物資[4],物資[2],物資[3],物資[2],物資[2],物資[2],物資[2]};
接收艦[5]:補(bǔ)給完成所需要補(bǔ)給的最小時(shí)間為165.083 min,補(bǔ)給物資順序?yàn)閧物資[2],物資[2],物資[2],物資[3],物資[2],物資[4],物資[1],物資[1]}。
求解戰(zhàn)時(shí)情況下的每艘接收艦的物資效時(shí)比順序,計(jì)算結(jié)果如表3 所示。
表3 物資效時(shí)比
根據(jù)表3 所示,接收艦[0]的物資效時(shí)比排序由高至低分別為{物資[4],物資[3],物資[1],物資[2]},接收艦[1~5]的物資效時(shí)比排序由高至低分別為{物資[4],物資[3],物資[2],物資[1]}。
根據(jù)物資效時(shí)比的物資排序,可以得出單艘艦艇進(jìn)行海上補(bǔ)給的物資出庫(kù)順序,即物資效時(shí)比由高至低順序,帶入單艦物資補(bǔ)給仿真模型,可以得出每艘接收艦根據(jù)效時(shí)比物資排序進(jìn)行運(yùn)輸?shù)拿恳慌挝镔Y所耗費(fèi)的出庫(kù)時(shí)間、總運(yùn)輸時(shí)間及生成的邊際作戰(zhàn)效能,分別記為出,,,結(jié)果如表4所示。
表4 各接收艦補(bǔ)給輪次信息
將單艦物資優(yōu)化結(jié)果分別帶入平時(shí)、戰(zhàn)時(shí)整數(shù)規(guī)劃模型,利用LINGO11.0 平臺(tái)運(yùn)算。平時(shí)環(huán)境下,采用DB 策略進(jìn)行海上物資補(bǔ)給,補(bǔ)給完所有物資需求所需最小時(shí)間為1 472.093 min,補(bǔ)給順序由前至后分別為接收艦[4]、接收艦[5]、接收艦[3]、接收艦[0]、接收艦[2]、接收艦[1],物資補(bǔ)給順序即為上文中所求各艦的單艦物資補(bǔ)給順序。
戰(zhàn)時(shí)環(huán)境下,采用DB 策略進(jìn)行海上物資補(bǔ)給,700 min 時(shí)通過(guò)海上物資補(bǔ)給能夠達(dá)到的邊際作戰(zhàn)效能增加值最大為320 效能值,艦船補(bǔ)給順序由前至后分別為接收艦[4]、接收艦[2]、接收艦[3],在有限的時(shí)間內(nèi),為最大化補(bǔ)給作戰(zhàn)效能,僅對(duì)3 艘接收艦進(jìn)行補(bǔ)給,補(bǔ)給的物資數(shù)量分別為接收艦[4]補(bǔ)給7 批次物資,接收艦[2]補(bǔ)給11 批次物資,接收艦[3]補(bǔ)給6 個(gè)批次物資。
結(jié)果可得,通過(guò)將海上橫向補(bǔ)給轉(zhuǎn)換為兩階段海上補(bǔ)給規(guī)劃問(wèn)題,利用多智能體模型以及整數(shù)規(guī)劃模型能夠有效進(jìn)行求解。
本文通過(guò)分析海上橫向補(bǔ)給的作業(yè)特點(diǎn),將海上橫向補(bǔ)給問(wèn)題轉(zhuǎn)換為兩階段補(bǔ)給規(guī)劃問(wèn)題,通過(guò)多智能體模型與整數(shù)規(guī)劃模型,對(duì)橫向補(bǔ)給方案進(jìn)行了優(yōu)化,有效提高了橫向補(bǔ)給效率。但本文還有部分不足,兩階段模型分別采用不同的建模手段,利用不同的仿真軟件運(yùn)算,給數(shù)據(jù)轉(zhuǎn)換輸入帶來(lái)了困難;戰(zhàn)時(shí)僅通過(guò)限定時(shí)間來(lái)反映出戰(zhàn)時(shí)環(huán)境的約束,并不能夠完全體現(xiàn)出實(shí)際情況。