本發明涉及湖泊水質采樣和路徑規劃技術領域,具體是指一種水質采樣巡航船路徑規劃最優化方法。
背景技術:
水是人類寶貴且不可或缺的自然資源。由于我國水污染問題日益嚴重,水環境的保護已經被國家列為一項重點實施的政策。水環境的治理與保護需要進行水質監測,而水質采樣是水質監測的重要組成部分,所以水質采樣的效率直接影響水環境治理的效率。為了提高采樣作業的效率,水質采樣巡航船進行采樣作業時,需要有一種能快速高效實現路徑的規劃的方法。一直以來,怎樣高效的解決巡航船的路徑規劃問題是該領域的一個難題。目前有很多智能方法可以解決這類問題。粒子群算法是智能算法中運算最簡單的一種,粒子群優化算法(pso算法)是由kennedy和eberhart(見參考文獻[1]:kennedyj,eberhartr.particleswarmoptimization[c]//ieeeinternationalconferenceonneuralnetworks,1995:1942-1948.)通過對鳥群社會行為的觀察研究,提出的一種新穎的進化算法。pso算法設置參數少,容易實現,可用于解決非線性、不可微和多峰值等復雜的優化問題,此外,該算法搜索效率高,收斂性能也很好。
技術實現要素:
為了提高水質采樣巡航船路徑規劃的速度,本發明將巡航船的路徑規劃問題簡單轉化為二維旅行商問題,用改進的粒子群優化算法規劃點與點之間的路徑,該方法可以結合實際情況實時規劃出水質采樣巡航船在所有采樣點之間的最優行駛路徑。
針對使用基本粒子群算法規劃路徑容易早熟和陷入局部最優的缺點,本發明提出了一種簡單而高效的自適應粒子群算法,并提出了一種基于自適應粒子群算法的水質采樣巡航船路徑規劃最優化方法,所述方法首先需要獲取目標水域的采樣點網絡,然后用自適應粒子群算法對采樣點網絡進行采樣點的路徑規劃,具體包括以下三步:
第一步:用無人機攝像頭采集湖面的圖像,然后進行圖像處理,得到湖面的二維坐標圖。
第二步:針對湖面的二維坐標圖,利用粒子群算法進行采樣點的選取與部署,選取出工作人員所期望的采樣點網絡。
第三步:采用自適應粒子群優化算法,規劃出采樣點網絡的最優路徑,輸出優化路徑。
其中,第三步所述的采用自適應粒子群算法得到路徑最優解的步驟如下:
步驟3.1:根據湖面采樣點網絡的坐標信息,設定自適應粒子群算法的相關參數,包括種群大小、采樣點個數、迭代次數、加速因子c1和加速因子c2和慣性權值w;
步驟3.2:初始化粒子種群產生隨機路徑序列,初始化所有粒子的速度產生隨機交換序;
步驟3.3:計算所有采樣點之間的距離,記錄最大距離。
步驟3.4:根據c1,c2,w和引入的自適應函數μ值四個參數自適應地保留路徑交換序;
步驟3.5:根據保留的交換序進行路徑更新;
步驟3.6:判斷是否連續迭代20次路徑長度保持不變,若是,則輸出路徑規劃的結果;若否,判斷是否達到最大迭代次數,若是,則輸出路徑規劃的結果,若否則回轉執行步驟3.4;
步驟3.4中,粒子群算法引入了自適應函數μ:
r=max/2
將自適應函數融合在粒子群算法中用以保留交換序,在路徑更新的過程中剔除相鄰兩點距離大于max/2的路徑,max代表相距最遠的兩采樣點之間的距離,也就是步驟3.3計算出來的最大距離,第i個采樣點的坐標可以表示為(xi,yi),d(i,j)代表第i個采樣點和第j個采樣點之間的距離,引入自適應函數μ后算法自動刪除μ值為0所對應的交換序,算法中d(i,j)與max/2的大小判斷提高了算法的收斂速度,同時有效避免了算法陷入局部最優。
多個采樣點形成的最優路徑不可能包含這樣一段路徑,即相距最遠的兩個采樣點連接在一起,這種情況下的路徑序列一定不是最優路徑。本發明基于這一點讓粒子群算法引入自適應函數,在路徑更新的時候剔除相鄰兩采樣點距離長度離譜的隨機路徑,并刪除相應的交換序。
步驟3.6中如果算法連續迭代20次路徑長度一直保持不變則算法停止,該方法最大限度的減少了算法的運行時間,限制次數20是根據水質采樣巡航船現場采樣時的運行經驗設計的,20次的設定值能同時保證算法的快速性和有效性。
本發明的優點在于:
(1)對獲取的目標湖面圖像進行圖像處理,把湖面圖像簡單的處理成二維坐標圖形,縮短了規劃巡航船路徑所需的時間。
(2)利用粒子群算法選取與部署采樣點使得巡航船根據規劃路徑采樣得到的水質更具有代表性,該方法可以任意設置采樣點網絡采樣點的數目,顯著提高了路徑規劃的靈活性。
(3)本發明用自適應粒子群算法搜索最優路徑,通過自適應保留交換序的方法使路徑規劃的效果得到了很大的改善,即規劃出的路徑更短,因此節省了水質采樣巡航船的電量消耗,使巡航船的續航能力更強,提高了巡航船采樣作業的性能。
(4)因為粒子群算法簡單而高效,本發明分步使用了兩次粒子群算法,所以路徑規劃的速度較其他方法有很大的優勢,路徑規劃的效果也更加穩定,解決了路徑規劃方法總是快而不穩的問題。
附圖說明
圖1為本發明中的水質采樣巡航船路徑規劃流程圖;
圖2為本發明中的自適應粒子群算法保留交換序流程圖。
具體實施方式
下面結合附圖對本發明進行詳細說明。
本發明提供一種水質采樣巡航船路徑規劃最優化方法,引入了一種保留交換序的自適應函數μ,粒子群算法引入此自適應函數后稱為自適應粒子群算法,自適應粒子群算法能更加快速而高效的實現水質采樣巡航船的路徑規劃。如圖1所示流程,本發明提供的水質采樣巡航船路徑規劃方法,具體包括如下步驟:
步驟一、采集湖面圖像,進行圖像處理,得到湖面的二維坐標圖。
步驟二、針對湖面的二維坐標圖,利用粒子群算法進行采樣點的選取與部署,選取出工作人員所期望的采樣點網絡。
步驟三、采用自適應粒子群優化算法,規劃出采樣點網絡的最優路徑,輸出優化路徑,具體包括如下步驟:
(3.1)根據采樣點網絡中的采樣點的坐標和個數n,設定自適應粒子群算法的種群大小為500,最大迭代次數為2000,加速因子c1設為0.5,加速因子c2設為0.7,慣性權值w隨迭代次數的增加而遞減。
(3.2)初始化粒子和粒子速度,初始化粒子產生路徑種群,初始化粒子速度就是初始化交換序,設n個采樣點的路徑序列為s=(ai),i=1,...n。定義交換子se(i1,i2)為交換路徑序列s中的兩節點ai1和ai2的順序,則s'=s+se(i1,i2)為解s經交換子se(i1,i2)操作后的新解,符號“+”代表交換的意思,交換序就是交換子組成的有序隊列。
(3.3)計算采樣點之間的距離,記錄最大距離;
計算任意的兩個采樣點之間的距離是自適應粒子群算法不可或缺的一步,是為了滿足自適應粒子群算法適應度的需要,計算時自適應粒子群算法會自動保留最大的采樣點間距max。
(3.4)保留交換序;
加速因子c1,加速因子c2,慣性權值w和引入的自適應函數μ值四個參數,都起到了保留交換序的作用,其中μ值分別同其他三個參數結合在一起按照順序依次保留交換序。
慣性權值w定義如下:
w=0.96-0.5×i/imax
i為當前迭代次數,imax為最大迭代次數,慣性權值w隨著算法迭代次數的增加而減小,它是根據公式實時變化的。在粒子群算法中,慣性權值w負責保留上一代交換序,其大小控制著全局搜索能力與局部搜索能力之間的平衡,為了提高自適應粒子群算法的性能和收斂速度,設置慣性權值w隨迭代次數的增加而遞減。
自適應函數值μ定義如下:
自適應函數值融合在自適應粒子群算法中作為保留交換序的判斷條件。
(3.5)根據步驟(3.4)中保留的路徑交換序更新路徑;
當前的路徑根據得到的交換序進行路徑序列的更新。路徑的更新同交換序的保留一樣分為三個步驟:
步驟一、根據加速因子c1和自適應函數μ保留的交換序更新路徑,當前路徑和對應交換序的交換子相加得到新的路徑,這里的相加“+”如上文所述是交換的含義。
步驟二、繼續根據加速因子c2和自適應函數μ保留的交換序更新路徑,更新方法和步驟一相同。
步驟三、最后根據慣性權值w和自適應函數μ保留的交換序更新路徑。更新方法和上述兩個步驟相同。
(3.6)檢查終止條件;
首先檢查當前路徑長度迭代20次后是否變化,如果無變化則終止迭代,并輸出當前路徑作為優化路徑;如果路徑變短則檢查是否達到最大迭代次數,達到最大迭代次數則終止迭代,未達到最大迭代次數則返回步驟(3.4)。
本發明在步驟3.4中引入了自適應函數保留交換序,如圖2所示流程,步驟如下:
步驟a、根據加速因子c1和μ保留粒子位置交換序;
加速因子c1是粒子對自身序列的作用因子,結合μ共同作用于交換序的保留。
步驟b、根據加速因子c2和μ保留粒子位置交換序;
加速因子c2是粒子對群體序列的作用因子,結合μ一起作用于交換序的選擇,步驟a和步驟b依次保留粒子的位置交換序。
步驟c、根據w和μ保留粒子速度交換序;
結束步驟a和步驟b兩個步驟的計算后,慣性權值w結合μ函數再共同作用于粒子速度交換序的保留,保留上一代粒子交換序。