999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于改進A*算法和DFS算法的割草機器人遍歷路徑規劃*

2023-03-04 03:45:42王新彥盛冠杰張凱易政洋
中國農機化學報 2023年2期
關鍵詞:規劃區域

王新彥,盛冠杰,張凱,易政洋

(江蘇科技大學機械工程學院,江蘇鎮江,212100)

0 引言

近年來,隨著移動機器人技術的迅速發展,智能化設備已被廣泛應用于社會的各個領域,給人們的生產生活帶來了極大的便利[1-3]。割草機器人作為農業機器人的一種,不僅用于市政綠地、機場、高爾夫球場等場地的草坪修剪工作,還用于耕地和林地的除草工作,因此受到廣泛關注,而遍歷路徑規劃在割草機器人應用過程中起著至關重要的作用[4-6]。

全覆蓋遍歷路徑規劃是一種在二維環境中特殊的路徑規劃,指在滿足某種性能指標最優的前提下,在設定區域內尋找一條從起點到終點且經過所有可達點的連續路徑[7-9]。該技術發展至今已涌現出了大量研究成果,Balch采用隨機遍歷算法進行目標區域遍歷,使機器人沿直線移動,當遇到障礙物時隨機轉動一個角度繼續前進,該方法原理簡單、易于實現,但要達到高覆蓋率需要很多時間,工作效率低。張赤斌等[10]將蟻群算法應用到遍歷路徑規劃中,通過牛耕式分解法將目標區域分解成若干個不含障礙物的子區域,采用蟻群算法搜索出子區域的遍歷順序,該方法覆蓋率高,但算法運算量大且跨區域轉移路徑長。李楷等[11]提出了一種局部區域覆蓋和回溯機制相結合的遍歷方法,利用回溯機制對局部覆蓋過程中存在的遺漏區域進行回溯遍歷,以此提高遍歷覆蓋率,但存在遍歷重復率較高的問題。Le等[12]提出了一種基于螺旋生成樹的遍歷方法,該方法遍歷重復率低,但其規劃的遍歷路徑轉向次數多且易陷入死區。馬全坤等[13]提出了一種基于記憶模擬退火和A*算法的遍歷方法,采用記憶模擬退火算法確定各子區域的遍歷順序,通過A*算法規劃跨區域轉移路徑,該方法性能較優,但跨區域轉移路徑較長。

上述研究成果對遍歷路徑規劃技術的發展起到了積極的推動作用,但仍存在遍歷重復率高、遺漏區域多、普適性弱的問題。為此,本文提出一種改進A*算法與DFS算法相結合的遍歷算法,通過DFS算法確定目標區域劃分后的子區域遍歷順序,然后使用改進A*算法進行跨區域轉移路徑規劃,從而實現割草機器人的遍歷路徑規劃。

1 環境建模

1.1 建立柵格地圖

本文采用柵格法[14]進行環境建模,將割草機器人的工作環境全局信息分解成一系列具有二值信息的等大小正方形網格單元,單元格邊長為割草機器人割幅。接著每個柵格被賦予環境信息值:若某個柵格內不含障礙物,則稱該柵格為自由柵格并賦值為0,反之被稱為障礙柵格并賦值為1。本文結合市政綠地的現實情況,對環境做如下假定:(1)假定市政綠地環境全局信息已知;(2)假定灌木植物為圓形障礙物;(3)假定石塊、垃圾桶等為多邊形障礙物;(4)假定積水區、小土丘等為形狀不規則障礙物。

建立的柵格地圖如圖1所示,把環境信息賦予對應的柵格,相當于將環境地圖離散化,每個單元格映射出環境信息的一部分。

圖1 柵格地圖

1.2 障礙物膨脹處理

在柵格地圖中存在一些障礙物的邊緣不完全與柵格單元邊界重合,如圖1所示,此時需要進行圖像處理,通過二值形態學中的膨脹運算對這些障礙物的邊緣區域進行膨脹處理,使其邊緣在柵格化的地圖中與柵格單元邊界重合,以防止割草機器人陷入死角以及智能算法陷入局部最優[15],以便后續遍歷算法在此基礎上進行路徑規劃。

(1)

根據上述膨脹數學模型,邊緣不完全與柵格單元邊界重合的障礙物目標經過膨脹處理后得到的新障礙物柵格M,如圖2所示。

圖2 膨脹處理后的障礙物

1.3 目標區域劃分

柵格地圖建立后,由于障礙物分布毫無規律,割草機器人工作時易出現漏割、重復遍歷、效率低等情況。為提高工作效率,采用牛耕式分解法將目標區域劃分成多個不含障礙物的子區域,使割草機器人通過遍歷單個子區域并進行子區域之間路徑轉移,來達到全覆蓋遍歷路徑規劃。

牛耕式分解法[16]是從梯形單元分解法[17]上改進而來,該方法假設一條垂直的切割線從左往右掃描整個有界區域,每當遇到障礙物上的臨界點或邊時便進行分割,目標區域中的非障礙物部分進而被分割成多個子區域。

相比梯形單元分解法,該方法使目標區域劃分過程中產生的子區域數量更少,可有效降低遍歷重復率。子區域劃分后,按照從上到下、從左到右的原則對各子區域進行數字標號,如圖3所示,以便后續子區域遍歷順序的規劃。

圖3 目標區域劃分

2 基于柵格地圖的遍歷方法

目標區域完成劃分后,割草機器人要實現對目標區域的全覆蓋遍歷可通過以下兩個步驟:(1)根據子區域之間連通關系確定子區域的遍歷順序,保證每個子區域在遍歷路徑規劃中有且僅被訪問一次;(2)按照給定的遍歷順序依次訪問每個子區域,完成子區域間路徑轉移。

2.1 子區域遍歷順序規劃

子區域的遍歷順序規劃采用DFS算法[18],該算法是圖算法中一種著名的搜索算法,經常被用來遍歷連通圖中每個節點,找到一條詳盡可靠的覆蓋路徑,算法步驟如表1所示。

將目標區域劃分得到的每個子區域看作連通圖中節點,按照子區域間相鄰關系建立連通圖,如圖4(a)所示。根據目標區域劃分中切割線移動方向,將①設置為遍歷起始區域,圖4(b)是使用DFS算法規劃的子區域遍歷順序圖。

表1 DFS算法步驟Tab. 1 DFS algorithm steps

(a) 連通圖

(b) 遍歷順序圖

2.2 子區域間路徑轉移

為了使割草機器人有序地完成對每個子區域的遍歷,就需要解決子區域之間路徑轉移的問題。針對該問題,本文采用改進A*算法規劃從上一個子區域遍歷終點到下一個子區域遍歷起點的最短路徑。

2.2.1 A*算法的評價函數

A*算法是人工智能中一種典型的啟發式搜索算法,被廣泛應用于靜態路網中兩點間最優路徑的求解。其評價函數如式(2)所示。

f(n)=g(n)+h(n)

(2)

式中:f(n)——從起始節點到目標節點的評價函數;

g(n)——起始節點到當前節點n的實際代價函數;

h(n)——當前節點n到目標節點的啟發代價函數。

在二維地圖中,代價函數的值通常指兩個節點之間的歐幾里得距離,即

(3)

(4)

式中: (xs,ys)——起始點位置;

(xn,yn)——當前點位置;

(xt,yt)——目標點位置。

2.2.2 改進A*算法

A*算法規劃所得到的是一系列相鄰的路徑節點,將各相鄰節點用直線連接起來即為所得到的路徑。由于A*算法規劃的路徑存在冗余的路徑節點且轉向次數多[19],導致路徑平滑性較差且路徑長度不是最短,同時路徑穿過障礙物邊界點時易發生碰撞。針對上述問題,本文通過路徑平滑性優化和添加防碰撞安全間距對A*算法進行改進,改進A*算法的流程圖如圖5所示。

圖5 改進A*算法流程圖

防碰撞預處理是通過計算障礙物邊界點到路徑的垂直距離l,與設置的安全間距η進行對比,判斷路徑是否安全。防碰撞安全間距η的大小與柵格單元邊長γ有關,滿足η∈(0,0.5γ),η的值可根據實際情況進行調節。如圖6所示,路徑節點A、B坐標分別為(xa,ya)、(xb,yb),障礙物邊界點H坐標為(xe,ye),直線BC垂直于H點所在的橫軸,垂足為C點,連接CH,直線AB與直線CH相交于F點,H點到直線AB的垂直距離DH即為l的長度,線段FH長度為t,θ為直線AB與直線BC所夾銳角。由于A、B、H三點坐標已知,可求解障礙物邊界點H到路徑AB的垂直距離l。

直線AB與直線BC所夾銳角

(5)

線段FH長度

(6)

障礙物邊界點H到路徑AB的垂直距離

l=t·cosθ

(7)

圖6 防碰撞路徑圖

A*算法的改進是在獲取A*算法規劃的路徑節點后進行,如圖7所示,Ni(i=1~13)是A*算法規劃的路徑節點,i為路徑節點的標號。改進算法的步驟如下。

步驟1:從起點G往終點E方向,取初始路徑的第一個節點Ni(i=1)。

步驟2:若節點Ni+1是終點E,轉至步驟6;若節點Ni+1既不是終點E,也不是起點G,轉至步驟3;若節點Ni+1是起點G,轉至步驟7。

步驟3:判斷直線NiNi+1與直線Ni+1Ni+2斜率是否相等。若斜率相等,節點Ni、Ni+1、Ni+2共線,刪除節點Ni+1并使Ni后面節點的標號均減1,返回步驟2;若斜率不相等,節點Ni、Ni+1、Ni+2不共線,轉至步驟4。

步驟4:判斷節點Ni和Ni+2之間是否存在障礙物。若有障礙物,路徑節點不變,轉至步驟5;若無障礙物,由式(5)~式(7)計算障礙物邊界點到路徑NiNi+2的垂直距離l并判斷與安全間距η的大小:如果l≤η,路徑節點不變,轉至步驟5;如果l>η,刪除節點Ni+1并使Ni后面節點的標號均減1,返回步驟2。

步驟5:令i=i+1,更新i的值并返回步驟2。

步驟6:從終點E往起點G方向,取初始路徑的第一個節點Ni(i=1),返回步驟2。

步驟7:輸出優化路徑Path,算法結束。如圖7所示,優化后路徑為:G→N6→M1→E。從起點G往終點E正向取點,處理后路徑為:G→N6→N11→E;從終點E往起點G反向取點,處理后路徑為:E→N7→N4→N3→G。

圖7 路徑平滑性處理

3 遍歷路徑規劃仿真

通過使用牛耕式分解法將目標區域劃分成多個不含障礙物的子區域;其次,使用DFS算法確定子區域的遍歷順序;然后,采用改進A*算法搜索出最短、無碰撞的跨區域轉移路徑并對子區域內部進行往復前進式遍歷,最終實現對整個柵格地圖的遍歷路徑規劃。

為了直觀、清晰地顯示仿真結果,柵格地圖由23×23 個柵格組成,其中黑色區域為障礙物占據的柵格,其他白色區域是自由柵格。圖8為遍歷路徑規劃仿真結果圖,由圖可知,不論在上文建立的普通環境模型中,還是在特殊的復雜環境模型中,本文提出的遍歷路徑規劃算法的覆蓋率都達到100%且遍歷重復率為0。

圖9為A*算法改進前后規劃的跨區域轉移路徑對比圖,其中每個子區域的遍歷起點用“●”表示,每個子區域的遍歷終點用“★”表示。遍歷整個柵格地圖需進行九次跨區域路徑轉移,這里主要對比其中三條轉移路徑:⑩—⑨區域、⑨—⑥區域、⑥—③區域,對應路徑在圖9中用加粗黑線表示。

結合圖9、表2和表3可以看出,改進后的A*算法所規劃的路徑刪除了冗余的路徑節點,使路徑長度縮短了3.26%,轉向次數減少了62.5%,提高了路徑的平滑性,同時,由于添加了防碰撞安全間距,改進后的A*算法所規劃的路徑不會出現穿過障礙物邊界點的情況,路徑安全性得到提高。

(a) 普通環境

(b) 復雜環境

(a) A*算法

(b) 改進A*算法

表2 路徑轉移距離對比Tab. 2 Comparison of path transfer distance

表3 路徑轉移轉向次數對比Tab. 3 Comparison of the number of times of path transfer

4 結論

針對割草機器人大面積作業時遍歷路徑規劃覆蓋率低、重復率高、普適性弱的問題,本文提出了一種改進A*算法與DFS算法相結合的遍歷算法。

1) 針對目標區域劃分后的子區域間路徑轉移,采用改進A*算法規劃轉移路徑。通過路徑平滑性優化與添加防碰撞安全間距對A*算法進行改進,使之規劃的路徑更平滑、更安全,路徑長度更短。MATLAB仿真試驗表明,采用改進A*算法所規劃的跨區域轉移路徑長度和轉向次數比A*算法分別減少了3.26%和62.5%,路徑不會穿過障礙物邊界點。

2) 針對割草機器人遍歷路徑規劃,提出了一種改進A*算法與DFS算法相結合的遍歷算法。通過DFS算法確定目標區域劃分后的子區域遍歷順序,然后使用改進A*算法進行跨區域轉移路徑規劃。通過仿真試驗表明,遍歷路徑規劃覆蓋率達到100%,遍歷重復率為0,本文遍歷算法具備有效性和可行性。由于本文算法只適用于靜態環境,下一步將在此工作基礎上進一步展開動態環境中遍歷路徑規劃的探討與研究。

猜你喜歡
規劃區域
永久基本農田集中區域“禁廢”
今日農業(2021年9期)2021-11-26 07:41:24
分割區域
發揮人大在五年規劃編制中的積極作用
規劃引領把握未來
快遞業十三五規劃發布
商周刊(2017年5期)2017-08-22 03:35:26
多管齊下落實規劃
中國衛生(2016年2期)2016-11-12 13:22:16
十三五規劃
華東科技(2016年10期)2016-11-11 06:17:41
關于四色猜想
分區域
迎接“十三五”規劃
主站蜘蛛池模板: 国产成人喷潮在线观看| 99re在线视频观看| 狠狠亚洲婷婷综合色香| 国产真实二区一区在线亚洲| 亚洲色图综合在线| 欧美三级日韩三级| 一本无码在线观看| 亚洲国模精品一区| 在线看片中文字幕| 青青草国产在线视频| 青草视频久久| 丁香六月激情婷婷| 国产一在线观看| 欧美激情视频二区| 视频一区亚洲| 爱爱影院18禁免费| 五月激情综合网| 小13箩利洗澡无码视频免费网站| 国产自在线播放| 亚洲欧洲日韩久久狠狠爱| 色综合手机在线| 国产精品久久自在自2021| 在线看片免费人成视久网下载 | 97精品国产高清久久久久蜜芽| 欧美日本在线| 欧美亚洲香蕉| 97在线碰| 日本一区二区不卡视频| 天堂亚洲网| 亚洲av无码成人专区| 试看120秒男女啪啪免费| 久久 午夜福利 张柏芝| 国产新AV天堂| 国产欧美中文字幕| 黑人巨大精品欧美一区二区区| 国产视频一区二区在线观看| 日韩一级二级三级| 91精品综合| 91在线一9|永久视频在线| 无码精品一区二区久久久| 中文字幕日韩视频欧美一区| 四虎永久在线视频| 亚洲人成人伊人成综合网无码| 国产精品成人AⅤ在线一二三四 | 国产H片无码不卡在线视频 | 亚洲综合精品香蕉久久网| 91亚洲视频下载| 精品亚洲欧美中文字幕在线看| 日韩a级片视频| 婷婷午夜影院| 秋霞一区二区三区| 54pao国产成人免费视频| 中文字幕 日韩 欧美| 国产粉嫩粉嫩的18在线播放91| 亚洲色图在线观看| 99视频在线观看免费| 国产99视频精品免费观看9e| 亚洲精品动漫| 久久精品国产精品国产一区| 亚洲swag精品自拍一区| 亚洲色偷偷偷鲁综合| 国产精品免费福利久久播放| 国产成人成人一区二区| 九九九精品成人免费视频7| 18禁黄无遮挡免费动漫网站| 黄网站欧美内射| 性喷潮久久久久久久久| 久久国产高潮流白浆免费观看| 深爱婷婷激情网| 日韩a级毛片| 中文毛片无遮挡播放免费| 在线观看国产网址你懂的| 国产h视频免费观看| 欧美一区二区福利视频| 国产情侣一区二区三区| 无码精品一区二区久久久| 久久人妻系列无码一区| 亚洲最新地址| 成年人国产网站| 精品无码一区二区三区电影| 精品色综合| 国产女人爽到高潮的免费视频|