劉澳霄 周永錄 劉宏杰



摘 要:隨著科技的高速發展和近幾年新冠疫情的影響,醫療配送機器人開始逐步出現在各大醫療機構中,然而傳統醫療配送機器人在使用人工勢場算法進行路徑規劃時存在局部最優解和目標不可達問題。因此,針對局部最優解問題,提出了設計虛擬目標點的方法,將機器人從局部最優狀態解救出來;針對目標不可達問題,在障礙物斥力勢場函數中引入了目標距離函數對障礙物斥力進行限制,從而解決目標不可達問題。最后將該方法在多種復雜環境中與傳統算法進行比較驗證,實驗結果表明,該改進算法能夠解決傳統算法存在的局部最優解和目標不可達問題,在算法效率上也提高了5%~9%,并且能夠有效運用于實際場景。
關鍵詞:路徑規劃; 人工勢場法; 醫療配送機器人; 局部最優; 目標不可達
中圖分類號:TP242.6?? 文獻標志碼:A
文章編號:1001-3695(2024)03-029-0842-06
doi:10.19734/j.issn.1001-3695.2023.07.0298
Path planning of medical delivery robot based onimproved artificial potential field method
Liu Aoxiao, Zhou Yonglu, Liu Hongjie
(School of Information Technology, Yunnan University, Kunming 650500, China)
Abstract:With the rapid development of science and technology and the impact of the novel coronavirus epidemic in recent years, medical delivery robots have gradually appeared in major medical institutions. However, traditional medical delivery robots have local optimal solution problems and target unreachable problems when using artificial potential field algorithms for path planning. Therefore, for the local optimal solution problem, this paper proposed a method of designing virtual target points to rescue the robot from the local optimal state. It introduced the target distance function into obstacle repulsion potential field function to limit obstacle repulsion, to solve the problem of target unreachable. Finally, it compared the proposed method with the traditional algorithm in a variety of complex environments. The results show that the improved algorithm can solve the local optimal solution and target unreachable problems existing in the traditional algorithm, and the efficiency of the algorithm is also increased by 5%~9% and can be effectively applied to practical scenarios.
Key words:path planning; artificial potential field method; medical delivery robots; local optimality; target unreachable
0 引言
隨著醫療技術的不斷發展和醫療服務需求的增加,醫療機構面臨著更高效、更準確的物流管理和配送需求。以往的醫療物品和藥品配送通常由醫護人員手動完成,需要耗費大量時間和勞動力,并且存在工作人員操作不當導致物品受損的風險。為了解決這些問題,醫療配送機器人應運而生。醫療配送機器人主要用于醫院、診所和其他醫療機構內部進行物品配送。它們可以將藥品從藥房運送到各個病房或診所,確保及時供應,也可以將采集的樣本從病房或診所送往實驗室進行檢測。同時可以協助將醫療設備從存儲區域運送到手術室或其他需要的地方,或者用于醫院內部的餐飲服務,將食物和飲料送到病人或員工的位置。醫療配送機器人提供了快速、準確和高效的物流服務,幫助醫療機構有效提高了工作效率,減輕了醫護人員的負擔,并改善了整體醫療服務質量。醫療配送機器人如圖1所示。
通常機器人的路徑規劃可以分為全局路徑規劃和局部路徑規劃兩種。全局路徑規劃算法有動態規劃算法、啟發A*算法[1]、遺傳算法[2]、蟻群算法[3]和迪杰斯特算法[4]等。局部路徑算法有多項式曲線法[5]、人工勢場法[6]、粒子群算法[7]、B樣條曲線法和模擬退火算法等。Abadlla等人提出將人工勢場法與模糊邏輯法進行結合得到新的方法,該方法在一定程度上解決了傳統人工勢場法存在的局部最優解問題,但是卻存在機器人反復振蕩的問題[8]。Feng等人[9]提出在人工勢場法中引入正六邊形引導方法,通過對障礙物進行繞行以此避免陷入局部最優解問題,但這在復雜環境中極大增加了機器人運行時間。姬偉等人[10]在人工勢場中引入虛擬障礙物,利用虛擬障礙物打破平衡進而解決局部最優解問題,然而在實際運用中不易選取合適的障礙物。張建英等人[11]針對人工勢場法存在的局部最優解問題,提出了一種附加控制力的方法,當障礙物對機器人的排斥力與目標點對機器人的吸引力位于同一直線上時,通過在障礙物中添加控制力進而解決局部最優解問題。Yuan等人[12]使用矢量疊加法在斥力勢場函數中添加機器人與目標點相對位置的權重因子,解決了目標不可達問題。任彥等人[13]在傳統人工勢場法中目標點產生吸引力的前提下,提出一種對比閾值,建立虛擬牽引點的方法,以此解決局部極小問題。段建民等人[14]針對傳統人工勢場法存在的目標不可達問題,提出將人工勢場法和遺傳算法兩種方法相結合,利用人工勢場法來優化采用遺傳算法所得到的全局路徑。
針對局部最優解問題,本文提出引入虛擬目標點,當機器人陷入局部最優解時通過設置虛擬目標點來施加一個外力,使機器人打破現狀跳出局部最優解狀態,進而繼續向目標點前進;針對目標不可達問題,本文提出了在斥力函數中引入目標距離函數,利用機器人和目標點之間的距離來對斥力勢場函數進行限制,進而解決人工勢場法存在的目標不可達問題。
1 人工勢場算法
人工勢場算法的主要思想是將整個環境設為一個虛擬力場,將主體機器人設為一個帶負電荷的粒子,將目標點設為一個帶正電荷的粒子,產生引力勢場。它會對主體產生一個方向朝向目標點的吸引力,這個吸引力會驅使主體向目標點方向運動[15]。然后將環境中的各種障礙物設為帶負電的粒子,產生斥力勢場。當主體與障礙物的范圍過近時,障礙物會對主體產生一個反方向的排斥力,會驅使主體遠離障礙物。通過這種方法來約束機器人的行動軌跡,并將其引導至目標點。機器人的受力圖如圖2所示。
1.1 引力函數
引力勢場是由目標點產生的一種全局范圍性的勢場,勢場的大小會根據機器人與目標點的距離大小而進行變化。當機器人距離目標點越遠時,其受到的引力勢場也將越大,即機器人受到的引力也會越大;當機器人距離目標點越近時,其受到的引力勢場會變得越小,機器人受到的引力也會越來越小。通常將引力勢場函數定義為
為了能夠使目標距離函數起到最佳的效果,可調節參數n的取值則變得尤其重要,因為參數n取值的不同將會導致整個目標距離函數對斥力函數產生不同的效果。當0<n<1時,如果機器人與目標點之間的距離大于1,那么隨著機器人與目標點之間的距離越小,斥力函數也會變得越小;而如果機器人與目標點之間的距離小于1,那么隨著機器人與目標點之間的距離縮小,斥力函數將會變得越大。當1n時,如果機器人與目標點之間的距離大于1,那么隨著機器人與目標點之間的距離越小,斥力函數也會變得越小;如果機器人與目標點之間的距離小于1,那么隨著機器人與目標點之間的距離縮小,斥力函數將會變得越小。從分力式(8)和(9)可以看出,當機器人近目標點時,受到的排斥力將越接近0,這樣便限制了在機器人接近目標點時,障礙物對機器人產生的排斥影響,讓機器人能夠不受到斥力干擾順利進入目標地點,進而解決了目標不可達問題。
4 仿真實驗與分析
4.1 仿真實驗
為了對改進后的人工勢場法進行分析和驗證,本文使用MATLAB平臺作為實驗平臺來進行仿真和驗證。用二維環境來模擬醫療配送機器人在運行過程中的行動軌跡,對于機器人在運行中會遇見的各種障礙物形狀都不規則的情況,將其視為帶有一定半徑的圓形圖像作為障礙物,這樣更加符合實際情況。本文首先在簡單環境下驗證了改進算法對目標不可達問題和局部最優解問題的處理效果。然后為了更加貼近實際運用場景,又在復雜環境下對改進算法進行測試。最后與文獻[16]的算法進行比較,進一步測試本文算法。
本次實驗對傳統的人工勢場算法存在的局部最優解問題和目標不可達問題分別進行改進。在實驗中將機器人的起點位置設置為綠色圓圈,目標點設置為紅色六邊形,中間的運行過程用紅色線段進行表示,靜態障礙物用圓形物體表示,動態障礙物用粉紅色的圓形物體表示(參見電子版)。當機器人在運行中所受到障礙物的總排斥力和受到來自目標點的引力大小相同、方向相反時,就會陷入局部最優解狀態,如圖8所示。針對這個問題,本文提出了設置虛擬目標點的方法。虛擬目標點會對機器人產生一個額外的引力,以至于使機器人打破先前的受力平衡,走出局部最優解狀態,向著真正的目標點前進。改進后的實驗結果如圖9所示,其中藍色圖形為設置的虛擬目標點(參見電子版)。
隨著機器人靠近目標點,所受到的引力勢場將會越來越小,如果這時在終點附近存在障礙物,將可能導致機器人受到的斥力勢場越來越大,進而最終出現機器人在目標點前面靜止不動或者往返重復運動的現象,這便是目標不可達狀態,如圖10所示。針對目標不可達問題,本文提出了在斥力勢場中引入目標距離函數,隨著機器人與目標點的距離越小,目標距離函數也將會以指數的形式逐漸減小,進而約束周圍的障礙物斥力大小,解決目標不可達問題,如圖11所示。
為了更加貼合實際運用場景,本文將改進前后的算法分別在不同復雜環境中進行模擬仿真,并且在靜態障礙物的基礎上再引入動態障礙物,以此模擬現實情況中的不穩定因素。首先本文設置了障礙物分布密集集中型場景,如圖12所示,使用傳統算法很快便陷入了局部最優解狀態,機器人在障礙物前面不動。隨后在同樣的場景中使用改進后的算法,優化效果非常明顯。機器人成功擺脫了局部最優解狀態,并且安全避開了設置的所有靜態障礙物和動態障礙物,順利到達了目標點,如圖13所示。
除此之外,本文還設置了障礙物分布離散型復雜場景。首先使用了傳統算法進行實驗,實驗效果如圖14所示。機器人雖然也避開了各種障礙物,但是卻最終止步于目標點前,陷入了目標不可達狀態。在實際場景中,機器人停止不動和來回往返運動的這些情況將會浪費非常多的時間,尤其是在醫療工作中,時間就是生命,每浪費一秒鐘都很有可能導致患者病情惡化甚至威脅其生命安全。而改進后的算法順利解決了目標不可達狀態,能夠使機器人安全準時地到達目的地,避免了以上情況的出現,如圖15所示。
本文采用文獻[16]所提出的人工勢場改進算法,在復雜環境中進行模擬對比實驗。此算法為新提出的人工勢場改進算法,在其文獻中提出使用新的勢能函數來代替傳統人工勢場法中的勢能函數,并且增加虛擬吸引點,進而達到擺脫局部最優解的情況。仿真結果如圖16所示,雖然其解決了局部最優解問題,但是在即將到達目標點時也陷入了目標不可達狀態,在此之前一共迭代222次。而在同樣的環境中,使用本文改進算法效果如圖17所示。機器人順利解決了目標不可達和局部最優解問題,到達了目標點位置。整個過程一共只迭代了204次,再經過多次實驗后得出在算法效率上提高了約9%。
最后,將本文算法與傳統APF算法、基于全局路徑規劃的A*算法和文獻[16]所提出的APF*算法分別在上文的離散復雜環境和密集復雜環境中進行仿真實驗,將得到的結果和本文算法結果進行比較。表1為不同算法在不同環境下機器人從起點到終點所需要的迭代步數,表2為不同算法在不同環境下路徑中的算法運行時間。其中*表示在環境中存在動態障礙物,沒有*則表示為靜態障礙物環境。為了保證數據的準確性,本文對動態障礙物的初始狀態和移動軌跡進行隨機設置,并且進行多次實驗,取其平均值作為最終數值。
A*算法是一種啟發式搜索的全局路徑規劃算法,它會對可能前進的方向進行最優遍歷,因此當處于復雜的環境時,它會需要迭代更多的步驟進而到目標點,算法消耗時間也會變多。由表1可以看出,當處于密集靜態和動態環境中時,本文算法相較于A*算法減少了約31%的迭代次數,當處于離散環境中時,本文算法相較于A*算法減少了約23%的迭代次數。本文算法相比于傳統APF算法在密集靜態環境和離散環境中,在迭代次數方面有著一定的優化,而在密集動態環境中,因為受到動態障礙物的影響,導致轉角次數過多,所以使得優化效果不是很明顯。相比于APF*算法在密集環境中減少了約6%的迭代次數,當處于離散環境中時,減少了約7%的迭代次數。由表2可知,本文算法相較于A*算法在密集復雜環境中的運行效率提高了約31%,在離散環境中算法運行效率提高了約25%。本文算法與APF*算法相比,在密集環境中的運行效率提高了約5%,結合上文可知,本文算法相比于APF*算法不僅解決了目標不可達問題,并且在算法效率上提高了5%~9%。因此本文算法不僅能有效解決傳統人工勢場法存在的局部最優解問題和目標不可達問題,而且在算法運行效率上也有提高。
4.2 實驗研究
為了驗證本文算法在實際應用場景中的實用性和可行性,本次實驗使用Ubuntu操作系統中的ROS機器人系統進行操作,同時將本文改進算法應用到Turtlebot移動機器人上,如圖18所示。Turtlebot機器人通過移動底盤Kobuki進行移動,再運行Rplidar A1激光雷達對周圍環境進行掃描,并結合ROS操作系統中的Gmapping模塊完成定位和二維地圖的構建,最后通過Move_base模塊中的Global_planner和Local planner分別完成Turtlebot機器人的全局路徑規劃和局部路徑規劃。
為了驗證本文算法的實用性,本文取現實中一家醫院的內部一段樓道區域作為實驗場景,如圖19(a)所示。隨后使用Turtlebot移動機器人上的激光雷達對周圍環境進行掃描,然后使用ROS系統的可視化模塊Rviz來構建場景二維地圖,如圖19(b)所示。
最后將原始人工勢場法和本文提出的改進人工勢場法先后應用到Turtlebot機器人進行對比實驗,設置相同的起點A和終點B,經過實驗得到圖19(c)(d)。由圖19(c)可以看出,機器人整體路徑較為曲折,由于在機器人前進過程中存在行人走動的情況,導致機器人轉彎角度過大,容易造成碰撞風險;或者使機器人靜止不動和往返迂回,導致整個移動路徑顯得非常曲折。由圖19(d)可以看出,改進后的算法相較于傳統算法,整個移動路徑顯得更加平滑,沒有那么多的迂回曲折,在避開障礙物時轉彎角度也相對更小,有效減少了機器人的碰撞風險,解決了傳統算法中存在的機器人停止不動和往返移動的問題,整體路徑長度和移動時間也比傳統算法所需要的更少,與上文仿真結果基本一致。
實驗結果證明,本文提出的改進人工勢場算法能夠有效應用于實際醫療配送機器人路徑規劃中,相比于傳統人工勢場法,改進算法優化了避障策略,解決了傳統算法存在的一系列問題,并且提高了路徑的平滑程度,縮短了機器人行進路徑,并縮短了運行時間,能夠在實際的復雜環境中更加高效和快速地完成工作。
5 結束語
人工勢場法作為傳統的局部路徑算法,整個運行原理不僅簡單,而且實驗耗材也少,整個避障運行效果也較為優秀,因此被廣泛用于機器人路徑規劃上,但是由于算法本身的局限性,存在著局部最優解和目標不可達這兩大問題。針對局部最優解問題,本文提出了設計虛擬目標點的方法來對機器人額外施加一個引力,打破現有的受力平衡狀態,將機器人從局部最優狀態解救出來。針對目標不可達問題,本文在障礙物斥力勢場函數中引入了目標距離函數,通過使用機器人與目標點的歐氏距離來對障礙物斥力進行限制,解決了目標不可達問題。最后進行實驗驗證,由結果可知,改進后的算法相比于傳統算法,已經解決了所存在的問題,算法運行效果有很大的提升。在機器人實際運行中,還存在機器人轉向次數過多和轉向曲率過大等問題,在后續的研究中會繼續優化,并且進一步提高算法的運行效率。
參考文獻:
[1]汪四新, 譚功全, 蔣沁,等. 基于改進A~*算法的移動機器人路徑規劃[J]. 計算機仿真, 2021,38(9): 386-389,404. (Wang Sixin, Tan Gongquan, Jiang Qin, et al. Path planning of mobile robot based on improved A~* algorithm[J]. Computer Simulation, 2021,38(9): 386-389,404.)
[2]李艷生, 萬勇, 張毅,等. 基于人工蜂群—自適應遺傳算法的倉儲機器人路徑規劃[J]. 儀器儀表學報, 2022,43(4): 282-290. (Li Yansheng, Wan Yong, Zhang Yi, et al. Based on artificial bees-warehouse robot path planning of adaptive genetic algorithm[J]. Journal of Instruments and Meters, 2022(4): 282-290.)
[3]吳慶洪, 張紀會, 徐心和. 具有變異特征的蟻群算法[J]. 計算機研究與發展, 1999 (10): 1240-1245. (Wu Qinghong, Zhang Jihui, Xu Xinhe. Ant colony algorithm with variation characteristics[J]. Journal of Computer Research and Development, 1999(10): 1240-1245.)
[4]王樹西, 吳政學. 改進的Dijkstra最短路徑算法及其應用研究[J]. 計算機科學, 2012,39(5): 223-228. (Wang Shuxi, Wu Zhengxue. Improved Dijkstra shortest path algorithm and its application[J]. Computer Science, 2012,39(5): 223-228.)
[5]楊連喜, 徐晨東. 一種用多項式曲線逼近有理曲線的新方法[J]. 浙江大學學報:理學版, 2015,42(1): 21-27. (Yang Lianxi, Xu Chendong. A new method for approximating rational curves by polynomial curves[J]. Journal of Zhejiang University:Science Edition, 2015,42(1): 21-27.)
[6]辛鵬, 王艷輝, 劉曉立,等. 優化改進RRT和人工勢場法的路徑規劃算法[J]. 計算機集成制造系統,2023,29(9): 2899-2907. (Xin Peng, Wang Yanhui, Liu Xiaoli,et al. Optimization and improvement of path planning algorithm of RRT and artificial potential field method[J]. Computer Integrated Manufacturing Systems,2023,29(9): 2899-2907.)
[7]郝琨, 鄧晁碩, 趙璐,等. 基于區域搜索粒子群算法的機器人路徑規劃[J]. 電子測量與儀器學報, 2022,36(12): 126-135. (Hao Kun, Deng Chaoshuo, Zhao Lu ,et al. Robot path planning based on region search particle swarm algorithm[J]. Journal of Electronic Measurement and Instrument, 2022,36(12): 126-135.)
[8]Abdalla T Y, Abed A A, Ahmed A A. Mobile robot navigation using PSO-optimized fuzzy artificial potential field with fuzzy control[J]. Journal of Intelligent & Fuzzy Systems, 2017,32(6): 3893-3908.
[9]Feng Ding, Yuxi Shi, Guopu Zhu, et al. Real-time estimation for the parameters of Gaussian filtering via deep learning[J]. Journal of Real-Time Image Processing, 2020,17(1): 17-27.
[10]姬偉, 程風儀, 趙德安, 等. 基于改進人工勢場的蘋果采摘機器人機械手避障方法[J]. 農業機械學報, 2013,44(11): 253-259. (Ji Wei,Cheng Fengyi,Zhao Dean,et al. Obstacle avoidance method of apple picking robot manipulator based on improved artificial potential field[J].Trans of the Chinese Society for Agricultural Machinery, 2013,44(11): 253-259.)
[11]張建英, 趙志萍, 劉暾. 基于人工勢場法的機器人路徑規劃[J]. 哈爾濱工業大學學報, 2006,38(8): 1306-1309. (Zhang Jian-ying, Zhao Zhiping, Liu Tun. Path planning of robot based on artificial potential field method[J]. Journal of Harbin Institute of Technology, 2006,38(8): 1306-1309.)
[12]Yuan Jiemin, Shen Haiyun. Research on local path planning of mobile robot based on artificial potential field method[C]//Proc of the 3rd IEEE Advanced Information Management, Communicates, Electronic and Automation Control Conference. Piscataway, NJ: IEEE Press, 2019: 785-789.
[13]任彥, 趙海波. 改進人工勢場法的機器人避障及路徑規劃[J]. 計算機仿真, 2020,37(2): 360-364. (Ren Yan, Zhao Haibo. Robot obstacle avoidance and path planning with improved artificial potential field method[J]. Computer Simulation, 2019,37(2): 360-364.)
[14]段建民, 陳強龍. 基于改進人工勢場—遺傳算法的路徑規劃算法研究[J]. 國外電子測量技術, 2019,38(3): 19-24. (Duan Jianmin, Chen Qianglong. Based on improved artificial potential field-path planning algorithm of genetic algorithm research[J]. Journal of Foreign Electronic Measurement Technology, 2019, 38(3): 19-24.)
[15]劉建娟, 薛禮啟, 張會娟,等. 融合改進A~*與DWA算法的機器人動態路徑規劃[J]. 計算機工程與應用, 2021, 57(15): 73-81. (Liu Jianjuan, Xue Liqi, Zhang Huijuan, et al. Robot dynamic path planning based on improved A~* and DWA algorithms[J]. Computer Engineering and Applications, 2019,57(15): 73-81.)
[16]薛陽, 俞志程, 吳海東,等. 基于改進人工勢場法的雙機械臂避障路徑規劃[J]. 機械傳動, 2020,44(3): 39-45. (Xue Yang, Yu Zhicheng, Wu Haidong, et al. Obstacle avoidance path planning for double robotic arms based on improved artificial potential field method[J]. Journal of Mechanical Transmission, 2020,44(3): 39-45.)
[17]Sun Yong, Chen Wen, Lyu Jun. UAV path planning based on improved artificial potential field method[C]//Proc of International Conference on Computer Network, Electronic and Automation. Pisca-taway, NJ: IEEE Press, 2022: 95-100.