蟻群演算法的動態路徑規劃學習筆記

2021-09-11 15:04:02 字數 2909 閱讀 3862

1、靜態路徑規劃與動態路徑規劃的區別

以區域分割為指標的動態路徑規劃以區域分割為指標的動態路徑規劃 靜態路徑規劃是在已知的靜態環境中,規劃一條從起點至終點的路徑。一旦在規劃好的路徑途**現了未知障礙物,則放棄已規劃好的路徑,從起點重新規劃。浪費時間,浪費資源。

動態路徑規劃有效應用於未知環境中規劃一條從起點至終點的路徑,路徑中**現未知障礙,不必從起點重新規劃,而是在障礙點處重新規劃,避過障礙物後回到原來路徑。通常動態路徑規劃是基於靜態路徑規劃的區域性路徑規劃,即先進行靜態路徑規劃,無人車沿著靜態路徑行駛,若途中遇到位置障礙物,則在障礙物的兩端重新進行規劃,繞過障礙物回到原始路徑中。效率高,但可能會出現不必要路徑變長的情況。

2、從分析一篇**開始

基於蟻群演算法的動態路徑規劃及其在編隊中的**應用-趙峰

一、核心:改進的區域性資訊動態路徑規劃演算法(邊走邊規劃)。以定半徑路徑規劃演算法為基礎,使用了兩種方法:(1)以區域分割為指標;(2)以時間步長為指標。

說明:運動半徑:機械人每一步行走的距離。

定半徑:在一次完整的路徑規劃過程中每一步行走的距離保持不變。

g:機械人在二維平面內的運動區域。

機械人沿柵格內的中心點行走。

二、演算法過程:

1、柵格編號轉換為座標點,計算公式如下:

a:每個柵格邊長;mm:橫縱座標的最大柵格數值;(xi,yi):每個柵格的座標;i:每個小正方形的柵格編號;mod(a,b)取餘計算,即(a/b)結果取餘數;ceil(a,b) :(a/b)的結果向正方向取整。

2、邊走邊規劃策略流程圖:

流程**釋:左邊為t-aca(傳統蟻群演算法),會選擇最大概率最大的點作為下一可行節點,未避免陷入區域性最優,則呼叫c-aca(被呼叫蟻群演算法)採用輪盤賭進行概率選擇,解決此問題。t-aca與c-aca組成ld-aca(改進的蟻群演算法)

1:在c-aca種,如何判斷該點是最優區域性目標點?

答:最優區域性目標點的指標設定,有2種解決方法:(1)二次輪盤賭演算法,(2)最小值選擇策略演算法(借鑑貪婪演算法思想)。

(1)二次輪盤賭演算法:

其中,i:目標點集合;allowed:排除已經走過的節點後可以前往的目標點集合;pi:被選擇概率,如下式p:第k只螞蟻t時刻從城市i到城市j的概率。

解釋過程:1、計算從當前位置到區域性目標點集合中所有點的pij;2、將每乙個pij對應生成乙個隨機數rand,兩者比較,將pij>rand的區域性目標點保留下來組成i『,以避免陷入區域性最優點,3、加入傳統輪盤賭演算法,選擇最優的區域性目標點。

其中: α:資訊啟發式因子,反映資訊素對螞蟻選擇路徑的影響力,β:期望啟發式因子,反應啟發式資訊在指導蟻群搜尋過程中的相對重要程度。

問題:此處,**輪盤賭法原理,輪盤賭演算法如何用程式設計實現?(未解決)**在4中詳細解釋。

(2)最小值選擇策略演算法:確定全域性目標點(終點),在所有可行的區域性目標點中)選取距離全域性目標點最近的點為最優區域性目標點。(當前位置一步長的周圍鄰域終點)距離計算公式如下:

(ex,ey):全域性目標點的座標;z:區域性目標點到全域性目標點距離集合的最小值,取z為所在節點位置為最優區域性目標點。

2、c-aca中哪些節點為可行節點?

答:可行節點的選取依據主要有兩方面:(1)當前節點到可行節點路徑上的殘留資訊濃度(對應資訊素更新策略)。(2)可行解點的啟發式資訊ηij,公式如下。

ij:每個柵格中心座標,dij:當前節點i到可行節點j之間的距離。

3、c-aca資訊素更新策略只發生在從起點到最優區域性目標點的道路上,更新規則公式如下:

tij(t):t時刻,即當前從i到j的資訊素濃度;(1-r):資訊素永續性係數,r是資訊素蒸發係數;▲tij:資訊素從t-1到t時刻的增加值,計算公式如下:

q:資訊素強度,正常數;lk: 第k只螞蟻在本次迭代中所走的路徑長度長度。

4、輪盤賭策略

作用:在保證最大某節點有最大被選擇概率的同時,其他效率較低概率的節點也會被相對低概率選擇。

基本思想:個體被選中的概率與其計算出的概率值大小成正比。

幾個概念:

各點被選擇概率p(i),即為

積累概率如下,即為在[0,1]的橫軸上,每個點的概率即為pi依次寫在橫軸上方,軸下方將概率依次相加,為累積概率

在這裡插入描述

具體操作:

(1)產生乙個[0,1]的隨機數r

(2)若r<=q1,則allowedz中,節點1被選中

(3)若qs-1

蟻群演算法學習

特點 正反饋 不容易陷入區域性最優,易於找到全域性最優解 分布式計算特點 load citys distance pdist2 citys,citys 構建距離矩陣 m n size citys ant num 30 螞蟻數量 a 1 資訊素重要程度 b 5 啟發函式重要程度 r 0.1 資訊素揮發...

最大最小蟻群演算法的理解

維基百科 蟻群演算法 antcolonyoptimization,aco 又稱螞蟻演算法,是一種用來在圖中尋找優化路徑的機率型演算法。它由macro dorigo 與1992年的博士 中提出,其靈感 於螞蟻在尋找食物過程中發現路徑的行為。蟻群演算法是這一種模擬進化演算法,初步的研究表明該演算法具有許...

蟻群演算法電焊機械人三維路徑規劃,matlab程式

你好!這是你第一次使用markdown編輯器所展示的歡迎頁。如果你想學習如何使用markdown編輯器,可以仔細閱讀這篇文章,了解一下markdown的基本語法知識。全新的介面設計,將會帶來全新的寫作體驗 在創作中心設定你喜愛的 高亮樣式,markdown將 片顯示選擇的高亮樣式進行展示 全新的ka...