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

基于改進BIT算法的農業機器人路徑優化研究

2022-11-03 12:39:10陸宇豪1劉義亭2郁漢琪4偉5
儀器儀表用戶 2022年11期
關鍵詞:優化

陸宇豪1,劉義亭2,3,郁漢琪4,余 偉5

(1.南京工程學院 研究生院,南京 211167;2.南京工程學院 自動化學院,南京 211167;3.東南大學 信息科學與工程學院,南京 210096;4.南京工程學院 工業中心,南京 211167;5.華齡和平南京智能科技有限公司,南京 210000)

0 引言

路徑規劃技術作為農業機器人領域的重要技術,其目的在于尋找源與目標之間的最佳路徑,并要求路徑安全無碰撞、算法收斂速度快[1]。目前,路徑規劃算法種類較多,主要有基于圖搜索的A星(A-star)算法和基于采樣的快速搜索隨機樹(Rapidly Exploring Random Trees,RRT)算法。

其中,以A星為代表的基于圖搜索的路徑規劃算法主要是通過設定合適的啟發函數指導柵格點的搜索,從而獲取最優路徑[2]。此類算法在小地圖環境下響應極快,且生成路徑最短。但在農業大場景下,A星算法的計算量會迅速上升,搜索效率降低,且實時性差。

以RRT為代表的基于采樣的路徑規劃算法主要通過對空間點進行隨機采樣,將初始點作為隨機樹的根節點,在約束條件下擴展隨機樹并最終形成一條連通路徑[3]。此類方法無需對地圖進行預處理,適用于大型平面或高維空間的路徑搜索,搜索速度較快,但在沒有適當采樣指導的情況下搜索較為盲目,性能不穩定且耗時較長,獲取的路徑也并非最優[4]。

針對上述A星算法與RRT算法的優缺點,Jonathan D. Gammell提出了一種將圖搜索和隨機采樣思想相結合的批量通知樹(Batch Informed Trees,BIT)算法[5]。該算法能夠在獲得移動成本最優路徑的同時避免大空間環境下搜索效率低、實時性差的問題[6,7],但并未考慮行車的安全問題,且生成的路徑折角較多,并不符合機器人的實際運動需求。因此,在BIT算法的基礎上增加障礙物膨脹與曲線優化,進而提升機器人移動的安全性和穩定性。

1 BIT算法原理

1.1 BIT算法基本原理

與傳統的基于圖搜索的A星算法與基于隨機采樣的RRT算法均不同,BIT算法結合兩者優勢,其首先對自由空間進行隨機采樣,利用采樣點、起點與終點構建起隱式隨機幾何圖(Random Geometric Graph,RGG),隨后通過啟發式搜索擴展搜索樹,在成功找到路徑后,縮小采樣范圍。與RRT相比,其構造樹的過程不直接對邊進行碰撞檢測,而是只有當邊線為隊列最佳邊時,才對其進行碰撞檢測,由此減少非必要的運算[8],同時在每次批量采樣前,對搜索樹進行修剪,刪去無助于提高路徑成本的節點與邊線,進而極大提升算法的運算速度和收斂速度。其主體的偽代碼見表1,其主要包括批量采樣、擴展及修剪樹模塊等,詳細步驟可見參考文獻[5]。

1.2 數學約定

為便于算法講解,對Alg1中的相關參數進行數學約定。

Alg1.Line1:SettingUpPlanning()為初始化函數,該函數所涉及的數學約定,QE為有序連線集合,其序列第一個元素表示代價值最小的邊及其代價值。QV為有序節點集合,其序列第一個元素表示代價值最小的節點及其代價值。E為樹模型中的連線集合,E集合中的每個元素用(v,w)表示,且v,w∈V。V為樹模型中的頂點集合。φ為空集;xstart表示起點坐標;xgoal表示終點坐標;Xsamples為采樣點集合;r為隱式RGG算子。

Alg1.Line4:gT(xgoal)為根據隨機樹搜索路徑到達目標點所需的代價。

Alg1.Line5:m為每次采樣點的個數,表示集合的并操作。

Alg1.Line6:Vold為舊頂點集合。

Alg1.Line7:Vnum表示V集合元素的個數,Xsamplesnum表示Xsamples集合元素的個數。

Alg1.Line10:vm、xm表示邊隊列中代價值最小邊對應的兩個頂點。

Alg1.Line13-22:g'(v)為v點與起始點的歐拉距離;c'(v,x)為v點與x點之間的歐拉距離;h'(x)為x點與終點的歐拉距離;c(vm,xm)為vm點與xm點之間的實際距離(包含碰撞檢測)。

1.3 BIT算法程序實現

BIT算法偽代碼見表1。

表1 BIT算法偽代碼Table 1 BIT Algorithm pseudo code

首先對算法進行初始化操作,將QE、QV、E置空,起始點xstart插入V,目標點xgoal加入采樣點集合Xsamples,并設置r=∞(Alg.1,Line1)。

隨后進入循環,若QV和QE為空,則進入修剪樹(Alg.1,Line4)和批量采樣(Alg.1,Line5)步驟。

修剪與批量采樣完成后,將當前頂點集合加入Vold中進行記錄,并將頂點集V加入QV頂點隊列進行排序,隊列最前端元素為代價值最小的頂點及其代價(Alg1.Line6)。

之后,計算r算子(Alg1.Line7),其可通過式(1)計算獲得:

式(1)中:λ()——一個集合的勒貝格測度。

Xf '——{x∈X│f '(x)≤cbest}。

n——求解空間的維度。

ζn——n維單位球的勒貝格測度。

q——Vnum+Xsamplesnum。

Vnum——V集合元素的個數。

Xsamplesnum——Xsamples集合元素的個數。

η——自適應調整參數,η≥1。

bestVertexValue與bestEdgeValue分 別 返 回QE、QV隊列中的最小代價值及其對應的頂點和邊,只要滿足循環條件,則持續對頂點隊列中代價值最小的點進行擴展,隨后提取邊隊列中的最優邊(vm,xm),將其從QE隊列中刪除(Alg1.Line8-11)。

CheckValues(vm,xm)用于檢驗獲得的(vm,xm)邊是否滿足gT(vm)+c'(vm,xm)+h'(xm)<gT(xgoal)、g'(vm)+c(vm,xm)+h'(xm)<gT(xgoal)、gT(vm)+c(vm,xm)<gT(xgoal)3個擴展條件,若均滿足則檢查點xm是否已在樹中,若樹中已存在點xm,則將E中所有與xm相連的邊(v,xm)去除(Alg1. Line14);若xm不在樹中,則從采樣點集合Xsamples中刪除點xm,并將點xm加入V、QV中(Alg1.Line16-Line17)。隨后將邊(vm,xm)加入集合E,遍歷QE中以xm為終點的邊,若滿足gT(v)+c'(v,xm)≥gT(xm),則將(v,xm)從QE中刪除(Alg1.Line18-19)。

若不滿足Alg1.Line12,則表示所有的采樣點都不可能對當前解進行優化,則將QE、QV置空,隨后進入Alg1.Line2重新采樣計算(Alg1.21)。

在滿足結束要求后,返回求解出的搜索樹T(V,E)(Alg1.Line22-23)。

1.4 修剪樹

修剪樹模塊的函數為Prune(gT(xgoal))。gT(xgoal)為根據搜索樹路徑到達目標點的實際代價。該步驟旨在去除搜索樹中對優化解無用的點和邊,以提升搜索效率,減少搜索的盲目性,其主要為剔除采樣點集合、樹頂點集合和樹連線頂點集合中從起點經過該點到達目標點所需預估代價大于當前最優路徑代價的點。

1.5 擴展

擴展模塊的函數為expandVertex(v),表示對v頂點進行擴展操作。其首先將bestInVertexValue()函數所獲得的最小代價值點v從隊列QV中取出,后計算采樣點中與點v的歐拉距離小于r的臨近點集合。遍歷臨近點集合,若此臨近點x與點v的連線能夠滿足g'(v)+c'(v,x)+h'(x)<gT(xgoal),則將兩點連線所形成的邊插入隊列QE。

1.6 批量采樣

Sample(m,gT(xgoal))為批量采樣功能函數,其在未找到可行路徑狀態下在全地圖自由空間進行批量采樣,在通過搜索樹成功尋找到路徑后,則縮小采樣范圍,轉變為在橢圓區域的自由空間內進行采樣。其橢圓采樣空間的計算方法如圖1。

圖1 橢圓采樣空間Fig.1 Elliptical sampling space

長軸為cbest,為當前到達目標點的最優路徑長度,短軸的計算方法為,cmin為起始點與目標點間的歐拉距離,在實際運算中,可先在標準圓中進行采樣,并對采樣點進行矩陣運算,使其平移旋轉至橢圓區域。

此方法能夠在尋找到初始解后有效地提升算法收斂速度。

2 Bezier曲線優化

在路徑規劃過程中,通常會產生一條具有多個銳角或拐角的路線,這種路徑不適合實際作業中攜帶大量物品的移動機器人[9]。因此,為了使搬運機器人能夠更加穩定地完成其任務,需要對生成的路徑進行平滑處理。

Bezier曲線是一種通過較少控制點便能生成復雜平滑路徑的方法,目前被廣泛應用于汽車車體工業設計、計算機輔助設計、路徑規劃等領域。以二階貝塞爾曲線為例,其生成過程如圖2。

為便于理解,圖2選取5個特殊比例來求解其對應的貝塞爾曲線點,在實際運算中,其選取線段長度與對應邊長度的比例為t(t∈[0,1]),可以取無窮多個,從而形成整條貝塞爾曲線。

圖2 二階貝塞爾曲線生成過程Fig.2 Generation process of third-order Bessel curve

如圖2所示,Pi(i=0,1,2)為形成貝塞爾曲線所需要的控制點,Li(i=0,1,…,3)為線段P0P1上的點,Ki(i=0,1,…,3)為線段P1P2上的點,Ti(i=0,1,…,3)為貝塞爾曲線上的點,其幾何關系滿足:

擴展到一般情況,其數學表達式如式(2)、式(3)表示:

式中:n——擬合點個數。

t——線性插值比例,t∈[0,1]。

i——i∈{0,1,…,n}。

由式(2)、式(3)可得,一階Bezier曲線的表達式為:

二階Bezier曲線為:

三階Bezier曲線為:

式中:Pi——第i個點。

k階Bezier曲線需要k+1個點進行求解。在實際運用中,隨著Bezier曲線階數的增加,其運算復雜度呈幾何倍增長,而三階Bezier曲線能夠保證機器人運行時其速度、加速度均為連續的同時,又不會嚴重影響運算速度,符合機器人的運動控制要求,因此采用三階Bezier曲線對點進行擬合。

將三階Bezier曲線進行擬合優化,則優化后的曲線點為:

式(7)中:xi——第i點的x坐標。

yi——第i點的y坐標。

x、y表示Bezier曲線的擬合點坐標。

三階貝塞爾曲線優化與BIT結合的具體算法步驟見表2。

表2 Bezier曲線優化偽代碼Table 2 Bezier curve optimization pseudo code

3 仿真實驗與結論

在Intel i7-6700HQ筆記本電腦上使用Python 3.9,并在Anaconda3環境下對原始BIT算法、障礙物膨脹及其Bezier曲線優化后的算法進行仿真實驗。

本文路徑規劃的障礙物仿真環境如圖3,其為幾何地圖,總尺寸為240m×240m,地圖中心為原點坐標(0,0),xstart=(-95,-95),xgoal=(60,85),每批次采樣點個數200個,r算子η系數為1.1,障礙物膨脹度為5m。本文以圓形機器人為仿真模型,其半徑為R,使機器人以1m/s的速度嚴格沿生成路徑行駛。通常情況下,障礙物的膨脹度應略大于機器人的半徑R,以此保證機器人在沿路徑行駛的過程中不會發生碰撞。

其中,圖3左下方為起點xstart,右上方為目標點xgoal,地圖中的圓形障礙物以(x,y,r)形式進行表示。其中,x、y為圓心坐標,r為半徑。

圖3 障礙物分布Fig.3 Obstacle distribution

圖4為BIT未經過障礙物膨脹和曲線優化,運行迭代10000次后生成的路徑,其生成路徑與障礙物距離過近,多個障礙物與路徑相切,因此在實際環境中無法滿足機器人安全行駛的需求。

圖4 原算法路徑圖Fig.4 Original algorithm path diagram

因此,對障礙物進行膨脹操作,膨脹后的障礙物地圖如圖5。

圖5 膨脹地圖Fig.5 Expansion map

圖6為對地圖障礙物向外膨脹5m后,算法運行迭代10000次后生成的路徑。由圖6可知,其求解出的路徑距離障礙物均大于5m,雖然能夠滿足機器人運行的安全性,但仍存在一定折角。

圖6中的路徑坐標見表3。

圖6 膨脹操作后的路徑圖Fig.6 Path map after expansion operation

取表3中每行兩點坐標形成連線,不考慮點(60.00,85.00),計算兩點連線的斜率,并繪制成折線圖如圖7。

表3 路徑點坐標Table 3 Path point coordinates

由圖7可知,其波動較大,在機器人實際運行過程中,會表現為運行至折角處速度發生突變并快速轉向,不利于機器人在真實搬運環境下的平穩運行。

圖7 斜率變化折線圖Fig.7 Line chart of slope change

增加障礙物膨脹后的算法迭代過程如圖8,其橫坐標為時間,單位:秒(s),縱坐標為路徑代價。算法在0.09678s后成功尋找到最初路徑,并快速收斂,在2.037s后尋找到次優路徑,與最優路徑259.1的代價值相差僅為4,并最終在9.57s時收斂至最優。

圖8 增加障礙物膨脹后的迭代過程Fig.8 Iteration process after adding obstacle expansion

圖9為本文在圖6基礎上加入Bezier曲線優化后得到的路徑,其路徑代價值為258.88,與原先最優路徑相比,其代價值減少了0.22,路徑更加平滑,更適合機器人的平穩運行。

圖9 Bezier曲線優化后的路徑Fig.9 Optimized path of Bezier curve

仿真實驗結果表明,經過障礙物膨脹和曲線優化后的BIT算法在復雜環境和大場景范圍下仍能夠快速求解出路徑并迅速收斂,并能在減小路徑的代價值的同時使得機器人的運行更加平穩,能夠滿足農業大場景下的路徑規劃要求。

猜你喜歡
優化
超限高層建筑結構設計與優化思考
房地產導刊(2022年5期)2022-06-01 06:20:14
PEMFC流道的多目標優化
能源工程(2022年1期)2022-03-29 01:06:28
民用建筑防煙排煙設計優化探討
關于優化消防安全告知承諾的一些思考
一道優化題的幾何解法
由“形”啟“數”優化運算——以2021年解析幾何高考題為例
圍繞“地、業、人”優化產業扶貧
今日農業(2020年16期)2020-12-14 15:04:59
事業單位中固定資產會計處理的優化
消費導刊(2018年8期)2018-05-25 13:20:08
4K HDR性能大幅度優化 JVC DLA-X8 18 BC
幾種常見的負載均衡算法的優化
電子制作(2017年20期)2017-04-26 06:57:45
主站蜘蛛池模板: 91人妻日韩人妻无码专区精品| 亚洲成人在线免费观看| 亚洲性视频网站| 日韩一二三区视频精品| 免费人欧美成又黄又爽的视频| 欧美亚洲一区二区三区导航| 天堂岛国av无码免费无禁网站| 欧美激情伊人| 手机在线国产精品| 福利视频久久| 日本国产精品| 成人毛片在线播放| 亚洲国产成熟视频在线多多| 青青草久久伊人| 成人毛片免费在线观看| 在线精品视频成人网| 97色婷婷成人综合在线观看| 一级一级一片免费| 国产亚洲欧美在线人成aaaa| 国产乱子精品一区二区在线观看| 色综合久久无码网| 亚洲欧美不卡| 久久久四虎成人永久免费网站| 一本久道久综合久久鬼色| 中文字幕精品一区二区三区视频| 91在线激情在线观看| 亚洲一区二区约美女探花| 欧洲亚洲一区| 日韩毛片免费视频| 欧美国产综合视频| 2020精品极品国产色在线观看| 热久久国产| 成人韩免费网站| 成人国产免费| 日本免费新一区视频| 毛片免费在线视频| 久草热视频在线| 国产精品福利社| 国产原创演绎剧情有字幕的| a级毛片毛片免费观看久潮| 91视频日本| 国产精品人人做人人爽人人添| 自拍偷拍欧美日韩| 国产一区成人| 欧美精品伊人久久| 亚洲黄色高清| 国产91九色在线播放| 午夜国产精品视频黄| 一级毛片在线播放| 国产亚洲一区二区三区在线| 欧美视频在线第一页| 欧美在线一二区| 午夜日b视频| 69国产精品视频免费| 日本a级免费| 激情综合激情| 五月激情婷婷综合| 日韩黄色大片免费看| 国产亚洲欧美日韩在线一区二区三区 | 在线观看无码av免费不卡网站| 19国产精品麻豆免费观看| 啦啦啦网站在线观看a毛片| 国产又粗又爽视频| 国内精品小视频在线| www.亚洲色图.com| 一级香蕉视频在线观看| 亚洲综合色在线| 国产精品9| 欧美特黄一免在线观看| 香蕉久人久人青草青草| 精品亚洲麻豆1区2区3区| 亚洲嫩模喷白浆| www.国产福利| 日本高清视频在线www色| 一本二本三本不卡无码| 激情六月丁香婷婷| 日本少妇又色又爽又高潮| 中文字幕不卡免费高清视频| 亚洲国产精品美女| 国产呦视频免费视频在线观看| 中文字幕 欧美日韩| 成人综合久久综合|