







摘" 要: 傳統的人工勢場法(APF)在路徑規劃領域因其簡單性和高效性而被廣泛采用,然而,這種方法往往會遇到局部最小值的問題,并且在動態環境中的適應性有限。為了解決這些問題,文中提出一種基于模擬退火算法(SA)改進的人工勢場法。該改進方法結合人工勢場法的實時避障能力和模擬退火法的全局優化特性,在所提出的改進方法中,通過在局部極小值附近添加隨機目標點,使用模擬退火算法進行優化,從而有助于跳出局部最小值,并逐漸逼近全局最優或近似最優解。通過一系列的仿真實驗表明,與傳統人工勢場法相比,基于模擬退火法的改進方法能夠顯著減少陷入局部最小值的情況,并在多種動態場景中表現出更強的魯棒性和更優的路徑規劃效果。此外,該方法還展現了良好的實時性和適應性,能夠滿足車輛在復雜動態環境中進行避障和路徑規劃的需求。
關鍵詞: 車輛路徑規劃; 人工勢場法; 模擬退火算法; 動態避障; 局部極小值; 隨機目標點
中圖分類號: TN911?34; TP242" " " " " " " " " " "文獻標識碼: A" " " " " " " " " " 文章編號: 1004?373X(2025)01?0117?06
Research on obstacle avoidance path planning based on improved"artificial potential field method
JI Suning, CAO Jingsheng, LIU Shijiang, LI Gang
(College of Automobile and Traffic Engineering, Liaoning University of Technology, Jinzhou 121001, China)
Abstract: The traditional artificial potential field (APF) method has been widely adopted in the field of path planning because of its simplicity and efficiency. However, the application of this method often generates local minima. In addition, this method has limited adaptability in dynamic environments. Therefore, an improved APF method based on the simulated annealing (SA) algorithm is proposed to eliminate the above problems. The improved method combines the real?time obstacle avoidance capability of the APF method and the global optimization property of the SA method. The improved method is optimized with the SA algorithm by adding a random object point near the local minima, so as to help the improved method jump out of the local minima and gradually approach the global optimum or near?optimum solution. A series of simulation experiments show that the improved method based on SA significantly reduces the cases of falling into local minima and exhibits stronger robustness and better path planning results in a variety of dynamic scenarios in comparison with the traditional APF method. In addition, the proposed method demonstrates good real?time performance and adaptability, so it can meet the needs of vehicles for obstacle avoidance and path planning in complex dynamic environments.
Keywords: vehicle path planning; APF method; SA algorithm; dynamic obstacle avoidance; local minima; random object point
0" 引" 言
隨著科技進步,環境變得更加復雜和多變,這就要求路徑規劃算法能夠快速適應這些變化。路徑規劃可以劃分為全局路徑規劃和局部路徑規劃兩個方面。全局路徑規劃亦稱為導航規劃,其目的是借助衛星定位等技術,在地圖上制定一條從起始點至目的地點的最優或可行路徑。當自動駕駛車輛[1]沿著全局路線導航時,可能會遭遇靜止或移動的障礙物,此時必須對原先規劃的路徑進行調整以避免這些障礙,這一調整過程稱為局部路徑規劃。涉及到基于時間和位置信息的路徑規劃[2]被稱為軌跡規劃。目前,人工勢場(APF)方法是車輛路徑規劃領域的一個強大工具。它的簡潔性和直觀性使得該方法不僅在學術研究中受到歡迎,而且在實際工業應用中也備受青睞。特別是在實時避障[3]和快速反應的場景下,APF方法因其相對較低的計算復雜度而極具吸引力。
人工勢場法[4]的核心概念是將車輛的運動環境抽象成一個虛擬的勢能場,在這種設置中,目標點被賦予了較低的勢能值,障礙物則被賦予了較高的勢能值。這樣的勢能差異會形成一股吸引力[5],引導車輛向目標點移動,同時障礙物產生的排斥力[6]則將車輛推離障礙。車輛在綜合這些力的作用下,沿著勢能下降最快的方向朝目標點前進。人工勢場法以其計算簡便并能產生連續安全的路徑而得到應用。然而,該方法并非沒有缺點,最突出的問題是它有時會導致車輛陷入局部最小值[7],或在面對復雜環境時出現路徑規劃失敗的情況。這些問題源于勢場方法本質上是基于貪婪策略的,即車輛總是向局部的最小勢能方向移動,這可能并不總是指向全局最優解。此外,當目標和障礙物相對位置不理想時,車輛可能會遇到“路徑不可達”的情況。對于這些問題,學者們已經開發出了多項解決方法,例如引入路徑平滑技術,或者與其他路徑規劃方法如A*或RRT[8]結合,以規避局部最小值。還可以通過調整勢場參數的動態性來適應不同的環境條件,或者引入新的勢場元素來提供更復雜的環境建模。
為了應對傳統人工勢場法在路徑規劃中易遇到的局部極小值問題,該問題可能導致車輛無法順利到達目標位置,以及其對動態路徑規劃的不適應性,引入動態障礙物[9],運用模擬退火算法,在局部極值點鄰近引入隨機目標位置,從而引導車輛逐漸擺脫局部極值點的吸引。該方法可以克服局部極小值和目標不可達性的問題,并成功將車輛引導到目標點位置。通過考慮障礙物的速度和加速度等動態因素,改進了傳統的人工勢場法,使其能夠應對動態路徑規劃的場景,確保在變化的環境中實現有效的障礙物規避。
1" 傳統人工勢場
1.1" 基本原理
人工勢場法路徑規劃由Khatib提出,是一種基于虛擬力的概念。這種方法將智能車輛在環境中的移動視為在一個人造的勢能場內的運動,在這個勢能場中目標點對智能車輛產生引力,吸引智能車輛向其移動,而障礙物則產生斥力,防止智能車輛與它們發生碰撞。接下來本文將介紹傳統人工勢場法勢場函數的構造。
1) 合力勢場
設車輛當前位置為[X],合力勢場為[U(X)],其表達式如下:
[U(X)=Uatt(X)+i=1nUrep(X)] (1)
式中:[n]為當前位置對車輛起排斥作用的障礙物數量;[Uatt(X)]為引力勢場;[Urep(X)]為斥力勢場。
在復雜環境中,障礙物較多,因此斥力勢場也往往不止一個。
車輛在當前位置所受的合力為合力勢場[U(X)]的負梯度,其表達式如下:
[F(X)=-?U(X)=Fatt(X)+i=1nFrep(X)] (2)
式中:[Fatt(X)]為目標對車輛的引力;[Frep(X)]為障礙物對車輛的斥力。由表達式(2)可知,引力與斥力共同控制著車輛運動,車輛的受力分析如圖1所示。
2) 引力勢場
引力勢場[10]映射為目標點對智能車輛的吸引效應,其勢能的強度與車輛和目標點之間的距離成反比。當車輛距離目標點越近時,引力勢能越小;當車輛距離目標點越遠時,引力勢能越大。以下給出引力勢場函數的具體表達式:
[Uatt(X)=12Kattρ2(q,qg)] (3)
式中:[Katt]為引力增益函數;[qg]為目標點位置;[ρ(q,qg)]是矢量。引力的方向從車輛指向目標點,其強度由智能車輛的當前位置與目標點間的間隔來確定。
引力[Fatt]為引力勢場[Uatt(X)]的負梯度,表達式如下:
[Fatt(X)=-?Uatt(X)=Kattρ(q,qg)] (4)
3) 斥力勢場
斥力勢場[11]代表障礙物對車輛的排斥作用,其勢能大小與障礙物的影響區域及車輛距離障礙物的遠近相關。障礙物周圍設有一個影響區域,在這個區域之外,車輛不會感受到來自障礙物的斥力,而當車輛靠近障礙物時,斥力勢能隨之增大,當車輛遠離目標點時,斥力勢能隨之減小。以下給出斥力勢場函數的具體表達式:
[Urep(X)=12Krep1ρ(q,q0)-1ρ02," " " " ρ0≥ρ(q,q0)0," " " " "ρ0lt;ρ(q,q0)] (5)
式中:[Krep]為斥力增益函數;[ρ0]為受斥力函數作用的最大距離;[ρ(q,q0)]是矢量,斥力的方向從障礙物指向車輛,其大小取決于車輛當前位置與障礙物之間的距離。
斥力[Frep]為斥力勢場[Urep(X)]的負梯度,表達式如下:
[Frep(X)=-?Urep(X)=Krep1ρ(q,q0)-1ρ01ρ2(q,q0)?ρ(q,q0)," " ρ0≥ρ(q,q0)0," " " " "ρ0lt;ρ(q,q0)] (6)
1.2" 傳統人工勢場存在的主要問題
傳統人工勢場存在的主要問題有:目標不可達、局部最優情況以及難以應用到動態避障[12]路徑規劃。圖2a)為當目標不可達時的情況,從圖中可以看出,障礙物與目標點距離太近時,引力很小,而障礙物的斥力合力可能較大,因此可能會無法在目標點停下來。圖2b)為局部最優情況,當只有一個障礙物且車輛處于某個位置時,如果障礙物產生的總斥力與目標點產生的吸引力大小相同,并且作用方向互為相反,那么車輛受到的合力將會互相抵消,導致車輛受到的凈力為零,此時陷入局部最優,車輛不再向前搜索路徑。有多個障礙物時,如圖2c)所示,當車輛處于某個位置時,來自多個障礙物的合成斥力大于或等于目標點對車輛的引力,并且方向相反,導致車輛無法向前搜索避障路徑,陷入局部最優[13]情況。除此之外,傳統APF在靜態避障路徑規劃中有較好的效果,但在動態障礙物的環境中,無法規劃出動態避障路徑。
2" 基于模擬退火法的人工勢場法
2.1" 針對局部最優陷阱的改進
當出現目標不可達或陷入局部極小陷阱時,車輛將停止運動并陷入振蕩,本文采用模擬退火[14]的思想解決該問題。這種結合了隨機性和確定性的搜索策略使得模擬退火算法能夠有效地探索解空間,并且具有避免陷入局部最優解的優勢。
如圖3所示,當車輛進入局部勢能極小[A]點時,車輛認為已到目標點,而實際目標點為[C]點。此時模擬退火法便會在[A]點附近隨機生成新點,若新點的勢能比[A]點小則直接接受該點作為新解;若生成點的勢能比[A]點大,例如點[B],則車輛會以一定概率接受該新點,然后車輛在新解的基礎上再進行路徑的搜索。模擬退火法的核心思想為隨機搜索新解,并逐漸向全局最優解靠近。
模擬退火法的算法流程如下。
1) 設置初始溫度[T]、局部極小值點[X]、退火速度[μ(0.85lt;μlt;1)]。
2) 在[X]點附近產生一個隨機點[Xi],[Xi=X+ΔX],其中[ΔX]為一個隨機擾動。
3) 計算在點[Xi]處的勢場值與點[X]處的勢場值之差[ΔU],[ΔU=Ui-UX]。
4) 判斷[ΔU]的正負,若[ΔUlt;0],則說明找到了勢能更低的點,逃出局部極小值陷阱,接受該新解,車輛駛向[Xi]點,并退出模擬退火法;若[ΔUgt;0],則以概率[P=e-ΔUT]接受該解,否則,在降低溫度[T]后返回步驟2)繼續尋找新的隨機點,若在[T]到達某一設定溫度[Tf]還沒有找到新解時,則說明沒有逃出局部極小值陷阱,則重置[T]值,返回步驟2)。
模擬退火算法流程圖如圖4所示。
2.2" 基于模擬退火法的人工勢場路徑規劃
通過以上對傳統人工勢場方法的分析以及對模擬退火法的介紹,本文提出了對于目標點較遠導致的避障失靈、局部極小值陷阱、目標不可達[15]以及難以應用到避障這四種不足的改進方案,并提出適用于車輛局部路徑規劃的基于模擬退火法的人工勢場算法。
本文設計的車輛全局路徑規劃算法的主要流程如下。
1) 設置起始點、目標點、動態障礙物等信息。
2) 計算車輛所受的合力。
3) 判斷車輛是否進入局部極小值陷阱,若進入陷阱,則運用模擬退火算法逃出陷阱;若沒有進入局部極小值,則轉入步驟4)。
4) 計算下一步的坐標,并移動至該點。
5) 判斷是否到達目標點,若是,則結束算法;否則,返回步驟2),直至找到目標點。
基于模擬退火法的人工勢場法流程圖如圖5所示。
3" 實驗仿真結果
為了檢驗基于模擬退火算法改進的人工勢場法在路徑規劃中的實用性,利用Matlab 2022軟件對結合模擬退火法的人工勢場法進行了動態和靜態障礙物混雜環境仿真測試,初始參數設置如表1所示。
為更好地驗證改進人工勢場法的動態避障效果,在仿真場景中加入2個半徑為0.5 m的空心圓作為動態障礙物,其起始位置坐標分別為(1,3)與(6.25,4),速度分別為0.24 m/s與0.25 m/s,運動方向分別為0.4π與-0.25π,在這種仿真場景設定下可以使動態障礙物1從側面靠近車輛的行駛方向,動態障礙物2在車輛行駛方向的正前方且與車輛同向行駛,車輛的初始坐標點為(0,1),終點坐標點為(10,8)。由于規避動態障礙物是一個動態過程,為了深入理解避障過程中的運動機制,因此,將仿真過程細分為四個主要階段,各階段詳情可參見圖6~圖9。
表1" 實驗仿真初始參數設定
[參數 數值 定義網格地圖/[m2] 12×12 斥力增益常數[Krep] 15 引力增益常數[Katt] 5 靜態障礙物半徑[r]/[m] 0.5、1、1.5 障礙物最大影響距離[ρ0]/[m] 1.5 車輛步長/[m] 0.1 模擬退火法初始值[T0] 10 最大迭代次數 1 000 ]
從圖6可知,在第一階段,車輛從起始點(0,1)向目標點(10,8)行駛,同時動態障礙物1以一定速度從左側靠近車輛,隨著車輛逐漸接近動態障礙物1,它進入了動態障礙物1的斥力影響范圍,在改進的人工勢場法的影響下,車輛受到合力作用,在保持安全距離的前提下,成功地避開了動態障礙物1,順利完成了避障過程。在成功規避了動態障礙物1之后,車輛沿著預定路線穩步向目標位置前進。動態障礙物1從車輛的側后方逐漸遠去。與此同時,車輛逐步接近路途中的第一個靜態障礙物,并進入了其斥力影響的區域。
從圖7可知,在第二階段,車輛駛入靜止障礙物的排斥力影響區,此時車輛受到排斥力和吸引力的共同作用,開始轉向左側以規避障礙物,避開第一個靜態障礙物后,車輛繼續向目標點駛去,同時正逐漸靠近右前方動態障礙物2,車輛逐漸接近動態障礙物2,并進入了動態障礙物2的斥力影響區域。
從圖8可知,在階段三,車輛與動態障礙物2同向行駛,隨著車輛逐漸靠近動態障礙物2,在障礙物2的影響區,車輛受到來自動態障礙物2的斥力作用,該斥力引導車輛進行規避動作,并最終超越動態障礙物2。車輛成功規避動態障礙物2后,向第二個靜態障礙物靠近,并進入其斥力作用區域,此時后方的動態障礙物2正在逐漸接近車輛,在動態障礙物2與第二個靜態障礙物所生成的排斥勢場共同作用下,需規劃一條能夠有效避開這兩種障礙物的路徑。
從圖9可知,在階段四,車輛成功避開了動態障礙物2和第二個靜態障礙物,并最終到達了目標點,但在動態障礙物2與第二個靜態障礙物間車輛陷入局部最優情況,但此時根據引入模擬退火法的人工勢場法,通過增設隨機點引導車輛逃出局部極小值點,圖中點狀部分為模擬退火算法,增設隨機目標點,通過模擬退火算法合理地規劃轉向和避障路徑。觀察整個路徑規劃過程,車輛合理地避免了與任何障礙物的碰撞。因此,在一個包含動態和靜態障礙物混雜環境中,該規劃能確保避障路徑的安全性。
通過上述仿真實驗的驗證,可以觀察到經過改進的人工勢場法無論是在遇到動態還是靜態障礙物時,都能夠規劃出一條既安全又可靠的避障路徑,且當車輛同時受到靜態障礙物和動態障礙物斥力影響時,車輛仍能通過改進后的人工勢場憑借增設隨機點的方法規劃出安全逃離局部極小值點的路徑。因此,本文提出的經改進的人工勢場方法,能夠有效的在包含動態及靜態障礙物的綜合環境中合理地規劃出一條安全的避障路徑。
4" 結" 語
在傳統的人工勢場法中,路徑規劃過程可能會遇到局部極小值問題,導致車輛不能順利到達目標點,且在動態障礙物的環境中,無法規劃出動態避障路徑。通過模擬退火算法,在車輛當前所處的局部極小值點附近增設隨機目標點,進而指導車輛逐漸擺脫局部極小值區域。在動態路徑規劃方面,改進后的人工勢場法也考慮到了動態障礙物的因素,利用Matlab 2022軟件進行模擬實驗,以驗證本文提出的基于模擬退火優化的人工勢場方法,能夠有效地幫助車輛擺脫局部極小值點的困擾,并順利抵達目標點,且改進后的人工勢場法在動靜態結合的復雜環境中,對于不同形狀、大小和速度的障礙物都能夠實現有效的避障。盡管改進后的人工勢場法在動態避障仿真中取得了較好的效果,但仍然存在一些局限性,如在高維空間中搜索效率較低,對參數設置較為敏感等。因此,未來研究可以繼續探索更高效的優化算法,以提高動態避障仿真的性能。
注:本文通訊作者為曹景勝。
參考文獻
[1] 封碩,吉現友,程博,等.融合動態障礙物運動信息的路徑規劃算法[J].計算機工程與應用,2022,58(21):279?285.
[2] 陳志瀾,唐昊陽.改進RRT?Connect算法的機器人路徑規劃研究[J/OL].計算機科學與探索:1?14[2024?04?24].http://kns.cnki.net/kcms/detail/11.5602.TP.20240424.1112.002.html.
[3] 姜佩賀,王敬,桑忠啟,等.改進A*與DWA的室內服務機器人路徑規劃研究[J].計算機工程與應用,2024,60(15):327?335.
[4] 周振,耿晨晨,崔若庚,等.基于改進融合蟻群算法的AGV路徑規劃[J].計算機仿真,2024,41(4):441?445.
[5] 黃澤霞,邵春莉.深度學習下的視覺SLAM綜述[J].機器人,2023,45(6):756?768.
[6] 吳宇,郝萬君,曹選,等.改進蟻群與勢場融合算法的平滑路徑規劃[J].計算機仿真,2023,40(3):141?146.
[7] 姬鵬,郭明皓.基于Frenet坐標下改進人工勢場法的無人車局部路徑規劃[J].兵工學報,2024,45(7):2097?2109.
[8] WANG D S, CHEN S L, ZHANG Y D, et al. Path planning of mobile robot in dynamic environment: Fuzzy artificial potential field and extensible neural network [J]. Artificial life and robotics, 2021, 26(1): 129?139.
[9] 孟凡齊,孫瀟瀟,朱金善,等.基于雙向A*?APF算法的船舶路徑規劃研究[J].大連海洋大學學報,2024,39(3):506?515.
[10] QI Y Q, KE Y, MATEOS C. Fast path planning for on?water automatic rescue intelligent robot based on constant thrust artificial fluid method [J]. Scientific programming, 2020, 20(1): 1?13.
[11] LI X X, HU F C, LIU C J, et al. Robot 3D path planning algorithm based on improved elitist potential field ant colony algorithm [J]. Computer science and application, 2021, 11(4): 849?858.
[12] 鮮斌,宋寧.基于模型預測控制與改進人工勢場法的多無人機路徑規劃[J].控制與決策,2024,39(7):2133?2141.
[13] 黃鄭,謝彧穎,張欣,等.基于運動預測與改進APF的無人機路徑規劃方法[J].電子測量技術,2023,46(24):103?111.
[14] 杜云,劉小雨,賈科進,等.改進蟻群算法的火災環境疏散路徑規劃研究[J].計算機工程與應用,2024,60(8):309?319.
[15] 郭明皓,姬鵬,黃海威.基于改進人工勢場法的無人車路徑規劃與跟蹤控制[J/OL].系統仿真學報:1?10[2023?09?15].https://doi.org/10.16182/j.issn1004731x.joss.23?0768.
基金項目:國家自然科學基金項目(51675257);國家自然科學基金青年基金項目(51305190);遼寧省教育廳基本科研項目面上項目(LJKMZ20220976);遼寧省自然科學基金指導計劃項目(20180550020)
作者簡介:紀蘇寧(2000—),男,遼寧沈陽人,碩士研究生,研究方向為智能駕駛技術。
曹景勝(1984—),男,山東陽谷人,副教授,碩士生導師,研究方向為智能汽車關鍵技術、新能源汽車驅動與控制。