一種無人機(jī)群協(xié)作打擊目標(biāo)分配方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明設(shè)及一種無人機(jī)群協(xié)作打擊目標(biāo)分配方法,屬于實(shí)時(shí)嵌入式技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 隨著新軍事變革的不斷推進(jìn),基于實(shí)時(shí)嵌入式的無人機(jī)已經(jīng)向高智能,高精度,協(xié) 作化方向發(fā)展。作為協(xié)作化的關(guān)鍵技術(shù)之一的合作式攻擊,是指兩架或多架無人機(jī)之間通 過戰(zhàn)場(chǎng)信息網(wǎng)絡(luò)和制導(dǎo)網(wǎng)絡(luò)進(jìn)行相互合作,完成武器打擊,對(duì)超遠(yuǎn)距空中目標(biāo)、中/遠(yuǎn)距目 標(biāo)和地面目標(biāo)等進(jìn)行打擊的新型攻擊方式。
[0003] 目前無人機(jī)的火力控制及目標(biāo)分配方法要求具有很高的實(shí)時(shí)性,在盡可能短的時(shí) 間內(nèi)完成對(duì)目標(biāo)的攻擊。遺傳算法、蟻群算法也被廣泛應(yīng)用在無人機(jī)目標(biāo)分配問題上,但其 在解算的過程中容易產(chǎn)生不滿足約束條件的解,雖然可W利用約束中的啟發(fā)式信息對(duì)解進(jìn) 行檢查,但卻增加了算法的時(shí)間消耗,不利于實(shí)時(shí)性任務(wù)的及時(shí)響應(yīng),并局限于解決單機(jī)針 對(duì)單目標(biāo)的問題,不能實(shí)現(xiàn)單機(jī)多目標(biāo)的求解。
【發(fā)明內(nèi)容】
[0004] 本發(fā)明提供了一種無人機(jī)群協(xié)作打擊目標(biāo)分配方法,W用于解決無人機(jī)群對(duì)目標(biāo) 的分配問題,算法簡(jiǎn)便,耗時(shí)短,并實(shí)現(xiàn)單機(jī)對(duì)多目標(biāo)打擊,方法實(shí)現(xiàn)簡(jiǎn)單便捷。
[0005] 本發(fā)明無人機(jī)群協(xié)作打擊目標(biāo)分配方法是該樣實(shí)現(xiàn)的;所述方法的具體步驟如 下:
[0006] Stepl、初始化粒子群,將無人機(jī)群與目標(biāo)之間的關(guān)系轉(zhuǎn)化為粒子矩陣形式作為一 個(gè)粒子,并按照約束條件進(jìn)行隨機(jī)初始化;
[0007]Step2、根據(jù)評(píng)價(jià)標(biāo)準(zhǔn)制定適應(yīng)度函數(shù)f (X),并計(jì)算每個(gè)粒子的適應(yīng)度值;
[0008] Step3、保存每個(gè)粒子的適應(yīng)度值,并從所有的粒子適應(yīng)度值中選擇初始個(gè)體最佳 適應(yīng)度值和全局最佳適應(yīng)度值進(jìn)行保存;
[0009] St巧4、判斷是否達(dá)到最優(yōu)的目標(biāo)分配方案,即MAXf(X),MAXf(X)為攻擊收益與戰(zhàn) 損之差的最大值,若沒有計(jì)算得到適應(yīng)度函數(shù)f(X)的最大值MAXf(X),則進(jìn)行步驟St巧5, 如果計(jì)算得到適應(yīng)度函數(shù)f(x)的最大值MAXf(x),計(jì)算出該最大值MAXf(x)的粒子即為目 標(biāo)分配的最優(yōu)方法;
[0010] steps、分別用隨機(jī)函數(shù)、認(rèn)知函數(shù)和社會(huì)函數(shù)對(duì)粒子進(jìn)行更新,并計(jì)算當(dāng)前粒子 的適應(yīng)度值;
[0011] St巧6、更新個(gè)體最佳適應(yīng)度的粒子或全局最佳適應(yīng)度的粒子;用更新后的粒子 的個(gè)體適應(yīng)度值和整體適應(yīng)度值與初始個(gè)體的個(gè)體最佳適應(yīng)度值和全局最佳適應(yīng)度值比 較;
[0012] 若更新后的粒子的適應(yīng)度值超過初始保存的個(gè)體適應(yīng)度值,則用更新后的粒子的 適應(yīng)度值替換初始的個(gè)體適應(yīng)度值并保存,
[0013]若更新后的粒子群中選擇出的一個(gè)適應(yīng)度值超過了初始的整體適應(yīng)度值,則用更 新后的粒子群適應(yīng)度值替換初始的整體適應(yīng)度值并保存;
[0014] St巧7、所有粒子更新完后進(jìn)化至下一代,并轉(zhuǎn)步驟Step4重新判斷是否達(dá)到最優(yōu) 的目標(biāo)分配方案。
[0015] 所述步驟Stepl中的粒子,采用粒子矩陣構(gòu)成。
[0016] 所述步驟St巧2中的適應(yīng)度函數(shù)為f(x) =aT-0G;其中a,P為可調(diào)節(jié)參數(shù), 用來調(diào)整進(jìn)攻和存活的權(quán)重,a G (〇,1),P G (〇,l),T為總有益指標(biāo),G為總戰(zhàn)損指標(biāo)。
[0017] 本發(fā)明的有益效果是:本發(fā)明建立無人機(jī)群和目標(biāo)之間的粒子矩陣,通過不斷的 自我學(xué)習(xí),能夠快速高效的解決無人機(jī)群對(duì)目標(biāo)的分配問題,并實(shí)現(xiàn)單機(jī)對(duì)多目標(biāo)打擊,方 法實(shí)現(xiàn)簡(jiǎn)單便捷。
【附圖說明】
[001引圖1為本發(fā)明中的流程圖;
[0019] 圖2為本發(fā)明與遺傳算法的對(duì)比曲線圖。
【具體實(shí)施方式】
[0020] 實(shí)施例1 ;如圖1所示,一種無人機(jī)群協(xié)作打擊目標(biāo)分配方法,所述方法的具體步 驟如下:
[0021] Stepl、初始化粒子群,將無人機(jī)群與目標(biāo)之間的關(guān)系轉(zhuǎn)化為粒子矩陣形式作為一 個(gè)粒子,并按照約束條件進(jìn)行隨機(jī)初始化;
[0022]Step2、根據(jù)評(píng)價(jià)標(biāo)準(zhǔn)制定適應(yīng)度函數(shù)f (X),并計(jì)算每個(gè)粒子的適應(yīng)度值;
[0023] Step3、保存每個(gè)粒子的適應(yīng)度值,并從所有的粒子適應(yīng)度值中選擇初始個(gè)體最佳 適應(yīng)度值和全局最佳適應(yīng)度值進(jìn)行保存;
[0024]Step4、判斷是否達(dá)到最優(yōu)的目標(biāo)分配方案,即MAXf(X),MAXf(X)為攻擊收益與戰(zhàn) 損之差的最大值,若沒有計(jì)算得到適應(yīng)度函數(shù)f(X)的最大值MAXf(X),則進(jìn)行步驟St巧5, 如果計(jì)算得到適應(yīng)度函數(shù)f(x)的最大值MAXf(X),計(jì)算出該最大值MAXf(X)的粒子即為目 標(biāo)分配的最優(yōu)方法;
[00巧]steps、分別用隨機(jī)函數(shù)、認(rèn)知函數(shù)和社會(huì)函數(shù)對(duì)粒子進(jìn)行更新,并計(jì)算當(dāng)前粒子 的適應(yīng)度值;
[0026] Step6、更新個(gè)體最佳適應(yīng)度的粒子或全局最佳適應(yīng)度的粒子;用更新后的粒子 的個(gè)體適應(yīng)度值和整體適應(yīng)度值與初始個(gè)體的個(gè)體最佳適應(yīng)度值和全局最佳適應(yīng)度值比 較;
[0027] 若更新后的粒子的適應(yīng)度值超過初始保存的個(gè)體適應(yīng)度值,則用更新后的粒子的 適應(yīng)度值替換初始的個(gè)體適應(yīng)度值并保存,
[0028] 若更新后的粒子群中選擇出的一個(gè)適應(yīng)度值超過了初始的整體適應(yīng)度值,則用更 新后的粒子群適應(yīng)度值替換初始的整體適應(yīng)度值并保存;
[0029] St巧7、所有粒子更新完后進(jìn)化至下一代,并轉(zhuǎn)步驟Step4重新判斷是否達(dá)到最優(yōu) 的目標(biāo)分配方案。
[0030] 實(shí)施例2 ;如圖1所示,一種無人機(jī)群協(xié)作打擊目標(biāo)分配方法,所述方法的具體步 驟如下:
[0031] Stepl、初始化粒子群,將無人機(jī)群與目標(biāo)之間的關(guān)系轉(zhuǎn)化為粒子矩陣形式作為一 個(gè)粒子,并按照約束條件進(jìn)行隨機(jī)初始化;
[0032]Step2、根據(jù)評(píng)價(jià)標(biāo)準(zhǔn)制定適應(yīng)度函數(shù)f (X),并計(jì)算每個(gè)粒子的適應(yīng)度值;
[0033] Step3、保存每個(gè)粒子的適應(yīng)度值,并從所有的粒子適應(yīng)度值中選擇初始個(gè)體最佳 適應(yīng)度值和全局最佳適應(yīng)度值進(jìn)行保存;
[0034]St巧4、判斷是否達(dá)到最優(yōu)的目標(biāo)分配方案,即MAXf(X),MAXf(X)為攻擊收益與戰(zhàn) 損之差的最大值,若沒有計(jì)算得到適應(yīng)度函數(shù)f(X)的最大值MAXf(X),則進(jìn)行步驟St巧5, 如果計(jì)算得到適應(yīng)度函數(shù)f(x)的最大值MAXf(x),計(jì)算出該最大值MAXf(x)的粒子即為目 標(biāo)分配的最優(yōu)方法;
[0035] steps、分別用隨機(jī)函數(shù)、認(rèn)知函數(shù)和社會(huì)函數(shù)對(duì)粒子進(jìn)行更新,并計(jì)算當(dāng)前粒子 的適應(yīng)度值;
[0036] St巧6、更新個(gè)體最佳適應(yīng)度的粒子或全局最佳適應(yīng)度的粒子;用更新后的粒子 的個(gè)體適應(yīng)度值和整體適應(yīng)度值與初始個(gè)體的個(gè)體最佳適應(yīng)度值和全局最佳適應(yīng)度值比 較;
[0037] 若更新后的粒子的適應(yīng)度值超過初始保存的個(gè)體適應(yīng)度值,則用更新后的粒子的 適應(yīng)度值替換初始的個(gè)體適應(yīng)度值并保存,
[0038] 若更新后的粒子群中選擇出的一個(gè)適應(yīng)度值超過了初始的整體適應(yīng)度值,則用更 新后的粒子群適應(yīng)度值替換初始的整體適應(yīng)度值并保存;
[0039] St巧7、所有粒子更新完后進(jìn)化至下一代,并轉(zhuǎn)步驟Step4重新判斷是否達(dá)到最優(yōu) 的目標(biāo)分配方案。
[0040] 具體實(shí)施步驟如下:
[0041] 步驟S1 ;初始化粒子群;
[0042] 利用約束條件對(duì)粒子群進(jìn)行初始化,將無人機(jī)與目標(biāo)的關(guān)系轉(zhuǎn)化為粒子矩陣,粒 子矩陣中的元素只能為0或1,即無人機(jī)對(duì)目標(biāo)是否進(jìn)行攻擊,每一個(gè)粒子矩陣代表一種攻 擊分配方式,同時(shí)也作為粒子群中一個(gè)粒子。約束條件為;1、每個(gè)目標(biāo)只能分配給一架無人 機(jī)且每架無人機(jī)都要分配目標(biāo);2、無人機(jī)攻擊目標(biāo)的數(shù)量由攜彈量決定;3、所有的目標(biāo)都 要分配給無人機(jī)群;
[0043] 步驟S2;制定適應(yīng)度函數(shù)并計(jì)算每個(gè)粒子的適應(yīng)度值;
[0044] 為了對(duì)計(jì)算結(jié)果進(jìn)行評(píng)價(jià),需要制定適應(yīng)度函數(shù);評(píng)價(jià)標(biāo)準(zhǔn)包括有益指標(biāo)和戰(zhàn)損 指標(biāo);設(shè)目標(biāo)Sj.的價(jià)值為V j.,無人機(jī)Ai命中目標(biāo)S j.的概率為P U,則整個(gè)無人機(jī)群的總有 益指標(biāo)為
?,設(shè)無人機(jī)Ai攻擊目標(biāo)S J的存活概率為Q U,無人機(jī)Ai的價(jià) 值為Ui,則整個(gè)無人機(jī)群的總戰(zhàn)損指標(biāo)關(guān)
適應(yīng)度函數(shù)f(x)= aT-0G,差值越大收益越高,根據(jù)適應(yīng)度函數(shù)f(x) = aT-0G計(jì)算出每個(gè)粒