本發(fā)明涉及一種基于混合鴿群算法的非線性航跡規(guī)劃方法,屬于無人機航跡規(guī)劃技術領域。
背景技術:
無人機(unmannedaerialvehicle,uav)是當前國內外人們研究的武器裝備,具有自動起降、自動駕駛、自動導航等功能,適合代替人在危險、惡劣和極限的環(huán)境下完成特定的工作和任務,于是在軍事、商業(yè)、航空航天等領域都有著廣泛的應用。其中航跡規(guī)劃是無人機任務規(guī)劃系統(tǒng)中的核心之一。航跡規(guī)劃的目的是在限定的條件下(避開威脅和禁飛區(qū),燃油最省,路徑最短等),選擇一條從起點到達任務地點的最優(yōu)或非常接近最優(yōu)的次優(yōu)路徑。目前,已存在較多的航跡規(guī)劃方法,大致可以分為兩大類:
1、確定性計算法方法。比如a*算法:啟發(fā)式搜索a*算法優(yōu)點是收斂性較強與運算快速等,缺點是它只能生成一條航跡,不適合需要多條參考航跡的任務要求;
2、隨機搜索優(yōu)化算法,包括蟻群算法、遺傳算法、粒子群算法等。這類算法是模擬自然界的物質變化過程,及生物活動和進化過程。蟻群算法是通過螞蟻的信息交流和相互協(xié)作來實現(xiàn)路徑搜索,具有動態(tài)特性,比較適應威脅環(huán)境的多變性;遺傳算法是基于自然選擇和基因遺傳原理的搜索方法,不受搜索空間的約束,也不需要優(yōu)化函數(shù)的連續(xù)性和導數(shù)存在等條件,而且存在并行性,比較適合較多復雜約束和模糊信息的航跡規(guī)劃問題。粒子群算法是通過個體間的相互協(xié)作,同時利用生物體的自我學習和社會學習的思想來完成搜索最優(yōu)解,該算法實施起來非常簡單,也有較好的全局性和局部性,因此在航跡規(guī)劃方法被廣泛地使用。具備隨機特點的遺傳算法和蟻群算法等智能算法雖然大體上都有較好的全局性和局部性,也能克服確定性算法的局限生成多個解,但是計算量較大,收斂速度較慢,很難滿足工程的實際需要
為了克服上述方法的缺點,不斷有一些新的自然啟發(fā)方法提出。比如duanh,等人提出了一種新的群體智能算法——鴿群算法來進行無人機的航跡規(guī)劃,參見duanh,qiaop.pigeon-inspiredoptimization:anewswarmintelligenceoptimizerforairrobotpathplanning[j].internationaljournalofintelligentcomputingandcybernetics,2014,7(1):24-37。zhangb等人用捕食逃逸的鴿群算法來進行無人機的三維路徑規(guī)劃,參見zhangb,duanh.predator-preypigeon-inspiredoptimizationforuavthree-dimensionalpathplanning[m]//advancesinswarmintelligence.2014:96-105。鴿群算法容易實現(xiàn),而且最顯著的優(yōu)點是收斂速度快,比較適合工程應用。但基本的鴿群算法也存在陷入局部最優(yōu)的缺點。
技術實現(xiàn)要素:
本發(fā)明的目的是為解決無人機航跡規(guī)劃速度慢且易陷入局部最優(yōu)的問題,提出了一種基于混合鴿群算法的非線性航跡規(guī)劃方法。
本發(fā)明的目的是通過下述技術方案實現(xiàn)的:
1)將uav飛行環(huán)境規(guī)劃的二維規(guī)劃空間表示為幾何空間區(qū)域:
2)設置無人機航跡規(guī)劃的初始條件,包括起始點、目標點、威脅分布。將飛行任務中的威脅模型化:將威脅的地理位置、影響范圍、威脅等級等威脅指數(shù)轉化為離散化規(guī)劃空間的矩陣信息;
3)初始化算法的各種參數(shù),比如種群數(shù)量、地圖和指南針算子最大迭代次數(shù)、地標算子的最大迭代次數(shù)等。同時將飛行范圍內的橫坐標進行等間距離散化,即確定飛行航跡點的橫坐標矩陣;
4)用隨機區(qū)間法生成初始種群的位置,并隨機產生鴿群的初始位置;
5)通過目標函數(shù)
6)進入地圖和指南針算子循環(huán),結合粒子群算法中自我學習和社會學習的思想,通過以下公式更新種群的位置和速度:
其中,
7)計算每條航跡的代價值,并記錄此次迭代的全局最優(yōu)航跡和每個個體的最優(yōu)航跡;
8)判斷迭代次數(shù)是否達到該算子的最大迭代次數(shù),若達到,則結束循環(huán),進入地標算子,否則重復步驟6)到步驟8);
9)進入地標算子,按照目標函數(shù)的代價值為每條航路按從小到大的循序進行排序;
10)用公式:
11)利用公式:
12)利用公式:
13)計算每條航跡的代價值,并記錄此次迭代的全局最優(yōu)航跡;
14)判斷迭代次數(shù)是否達到算子的最大迭代次數(shù),達到則結束該循環(huán),否則重復步驟9)到步驟14);
15)輸出最優(yōu)航跡。
附圖說明
圖1是本發(fā)明實驗步驟的流程框圖。
圖2是無人機雷達威脅計算的示例圖。
圖3是為無人機規(guī)劃的路線圖。
圖4是航跡規(guī)劃過程中適應度值的變化曲線圖。
具體實施方式
下面結合具體實施方式對本發(fā)明做進一步的詳細說明:
1)將uav飛行環(huán)境規(guī)劃的二維規(guī)劃空間表示為幾何空間區(qū)域
2)將飛行任務中的威脅模型化:將威脅的地理位置、影響范圍、威脅等級等威脅指數(shù)轉化為離散化規(guī)劃空間的矩陣信息,這里主要是指雷達威脅,用一個
3)初始化算法的各種參數(shù),比如種群數(shù)量、地圖和指南針算子最大迭代次數(shù)、地標算子的最大迭代次數(shù)等。同時將飛行范圍內的橫坐標進行等間距離散化,即確定飛行航跡點的橫坐標矩陣。航跡點的個數(shù)也是規(guī)劃的空間維度
4)用隨機區(qū)間法生成初始種群的位置,即將飛行范圍的縱坐標劃分為
5)通過目標函數(shù)
其中
6)通過適應度值
7)在地圖和指南針算子,利用個體最優(yōu)
其中,
8)判斷更新后的速度和位置是否在事先約定的范圍內,若是,進入下一步;否則在規(guī)定地范圍內隨機產生一個值賦給它;
9)為了使uav不朝起點方向飛行,要嚴格控制
10)通過適應度值找出并記錄全局最優(yōu)航跡和個體最優(yōu)航跡;
11)判斷是否達到最大迭代次數(shù),若是,進入地標算子中,否則重復執(zhí)行步驟7)到步驟11);
12)進入地標算子,計算個體適應度值并個體進行排序,適應度值越大(即目標函數(shù)值越?。┪恢迷娇壳埃?/p>
13)利用公式:
14)利用公式:
15)利用公式:
16)執(zhí)行步驟8)和步驟9);
17)判斷是否達到最大迭代次數(shù),若是,結束循環(huán),進入下一步,否則重復執(zhí)行步驟12)到步驟17);
18)通過適應度值找出并記錄全局最優(yōu)航跡和個體最優(yōu)航跡;
19)輸出全局最優(yōu)航跡。
本發(fā)明的效果可以通過以下仿真進一步說明:
仿真條件及仿真內容:程序仿真的地圖大小為