陳進,張志巧,廖彩淇,唐學明
(江蘇大學機械工程學院,江蘇鎮江,212013)
氣振盤式播種流水線作為一種自動化程度較高的農業機械,機械臂排種是其中重要環節。目前,本團隊研制的氣振盤式精密播種流水線在作業過程中,受二自由度機械臂運動限制,育秧盤需在排種位等待吸種盤完成排種[1]。由于原二自由度機械臂不支持動態改變既定規劃并與其他裝置相協調,需操作人員縱向協調流水線播種進程,導致機械臂與流水線的協調性成為影響播種效率的重要因素。為代替二自由度機械臂靈活高效地完成播種相關動作,提高播種效率,亟需開展關節式機械臂動態自主運動規劃算法研究。
伴隨著人工智能技術研究的發展,強化學習的應用逐漸廣泛[2]。強化學習的優越性體現在智能體能夠通過與環境的交互,從過去的經驗中不斷改進行為,使得智能體能夠完全自主[3]。Deng等[4]基于深度強化學習算法,添加額外獎勵和外部獎勵優化控制策略用于輔助手操作學習。Wang等[5]采用無精確模型的強化學習算法引導飛機向某一方向移動,通過設置連續動作獎勵函數和位置獎勵函數來提高訓練效率。Tang等[6]證明在近端策略優化算法中加入動作掩碼可剔除動作集中的無效動作,提高訓練效果。Kim等[7]提出模塊化獎勵塑造的方法可用于解決機械手復雜操作任務。Sangiovanni等[8]采用深度強化學習中的NAF連續控制算法成功實現機械臂的動態避障。國內外研究表明,深度強化學習在連續控制上具有顯著成效,但當深度強化學習系統變得越來越普通時,引發期望行為的獎勵函數的設計將會變得更加重要[9]。
本文的研究重點是基于深度強化學習與環境交互獲得機械臂控制策略,制定自適應運動規劃策略以適應目標動作,實現機械臂與流水線上目標物體的協調運動。特別是,針對改進后的近端策略優化(PPO),測試該算法在播種平臺中的有效性。
氣振盤式播種流水線主要包括流水線、加種裝置和播種裝置(圖1)。其中流水線沿作業方向依次設置鋪底土機構、掃底土機構、壓穴機構、覆表土機構、掃表土機構和灑水機構[1]。播種裝置由六軸機械臂、吸種盤、振動供種構成。本文研究對象為機械臂、吸種盤及流水線上的育秧盤。機械臂底座固定在支架上,位于振動種盤左側;吸種盤固定在機械臂末端。當育秧盤進入流水線后,依次經過鋪底土、掃底土、壓穴環節;同時,機械臂帶動吸種盤下行吸種,吸種完成后,吸種盤攜種至流水線正上方,在跟隨育秧盤同步運動過程中將籽粒排入育秧盤中;此時,育秧盤依次進入覆表土、掃表土、灑水環節,吸種盤返回初始位置,等待下一播種周期。
1.2.1 二自由度播種機械臂存在問題
本團隊現有的氣振盤式播種流水線采用二自由度直角坐標式機械臂帶動吸種盤完成播種。吸種盤的運動過程如圖2所示。因為吸種盤只能在面YOZ內移動,而育秧盤沿X軸負方向移動,所以育秧盤需在排種位停止等待吸種盤到達排種位后,再進行排種。受二自由度機械臂運動路徑的限制,排種時,流水線上育秧盤需暫停移動,影響整體播種效率。
1.2.2 六軸播種機械臂運動規劃
本文采用六軸機械臂帶動吸種盤完成吸種、攜種、排種動作,任務規劃流程為①-②-③-④,如圖3所示。由P0(x0,y0,z0)下降至吸種位Pi(xi,yi,zi),其中i=1,2,…;氣泵開啟正壓,吸種完成后,吸種盤運行至預排種位P′i(x′i,y′i,z′i);控制吸種盤在跟隨育秧盤作同步運動過程中完成排種;排種結束后,吸種盤從P″i(x″i,y″i,z″i)運行至初始位置P0(x0,y0,z0),完成一個播種周期。在吸種盤運動過程中,Pi為吸種位,由種層厚度決定;P′i為預排種位,取決于育秧盤的位置;P″i為排種結束位。

圖3 吸種盤運動路徑
(1)
式中:df——距離權重;
af——加速度權重;
of——角度偏差權重;


q——關節位置,rad;


根據攜種運動學要求,在攜種過程中無籽粒脫落的條件下[10]:由牛頓第二定律可獲得吸種盤的最大加速度如式(2)所示,并建立吸種盤在第t+1時刻下的速度約束如式(3)所示。
(2)
(3)
式中:amax——吸種盤最大加速度,m/s2;
m——籽粒質量,kg;
P——氣流場對籽粒的作用力,N;
g——重力加速度,取值9.8 m/s2;
Sf——吸附系數,取值0.66;
ts——采樣時間,s;

運動規劃算法需要滿足跟隨排種的定位及姿態要求。文中機械臂末端執行器為吸種盤,采用的育秧盤規格為590 mm×290 mm,孔距為18 mm。在排種過程中,吸種盤底面的排種孔需在育秧盤的穴孔范圍內,方可排種成功。根據圖4對吸種盤位置誤差范圍進行分析,半徑為9 mm的圓形區域為排種有效區域,C為吸種盤上排種孔中心點,O為穴孔中心點,ΔX,ΔY分別為點C與點O在X,Y軸上的位置偏差。定位要求為:吸種盤底面中心點與育秧盤中心點在X,Y軸上位置偏差的絕對值均小于9 mm,且兩點距離小于9 mm。根據圖5對吸種盤旋轉角度誤差范圍進行分析。圓形表示育秧盤上的穴孔位置,當吸種盤偏轉角大于θ時,排種位置超出穴孔區域。通過計算θ的反正切值可知,θ為1.78°,即要求吸種盤在Z軸上的偏轉角度誤差的絕對值小于1.78°。同理可求得吸種盤在X,Y軸上的偏轉角度誤差的絕對值需小于3.69°和1.78°。

圖4 排種區域

圖5 Z軸偏轉角范圍
近端策略優化(PPO)屬于一種新型深度強化學習算法,基于信任區域策略梯度(TRPO)[11]改進而來,結合了Q-learning和深度神經網絡的優勢[12],滿足強化學習的馬爾可夫性,可通過梯度下降對參數進行優化,最大化期望獎勵。
馬爾可夫決策過程[13]可用于描述智能體與環境交互的過程,是一種強化學習的數學模型[14]。假設狀態轉化和動作概率均具有馬爾可夫性,即狀態轉化到下一狀態的概率僅與前一狀態有關,且當前狀態采取的動作的概率僅與當前狀態有關。智能體根據t時刻的環境狀態st決定執行動作at;當動作執行后,智能體獲得延遲獎勵值rt,此時動作at對環境產生一個新的狀態st+1;智能體根據新的環境狀態St+1再決定執行動作at+1,依次循環。智能體通過神經網絡與環境進行交互而產生的序列τ={…st,at,rt,st+1,at+1,rt+1,…}可構成馬爾可夫決策的動態過程。馬爾可夫模型可由{s,a,r}簡單描述[15]。其中,狀態s包括環境中機械臂關節位置及轉速,末端執行器位置,目標位置,末端執行器與目標姿態間的偏轉角度,目標物體的移動速度,末端執行器的速度,碰撞信息;動作a由關節角速度描述;獎勵r由獎勵函數給出,具體設計方法將在后續內容中做詳細介紹。
智能體對于給定狀態下要執行的動作具有一定的隨機性,計算期望獎勵值如式(4)所示。
(4)
式中:rt——t時刻的獎勵值;
pθ(τ)——當神經網絡參數為θ時,序列τ發生的概率。
PPO中假設存在參數為θk的策略,用θk與環境互動采樣數據來訓練θ??紤]到在實際應用中,無法對τ直接求導,所以用st,at替換τ。為最大化期望獎勵值,修改獎勵對應的梯度更新公式如式(5)所示。

(5)
其中,Aθk(st,at)是修改后的優勢函數,用于評估st。若優勢函數為正,則需要增加策略梯度;若優勢函數為負,則需減小策略梯度[4]。
當更新前后的分布差異較大時,容易導致最終結果無法收斂。為保證參數為θ的神經網絡輸出動作概率分布與更新后策略的動作概率分布相差不會太大,PPO給出兩種解決方案:(1)引入KL散度來表示兩個動作概率分布之間的差異,自動調整KL散度的懲罰因子;(2)采用剪裁構造新的目標函數控制概率比。本文采用截斷(clip)機制將新舊策略的概率比限制在(1-ε,1+ε)內,將目標函數近似為式(6)[16]。
(6)
式中:ε——新舊策略的最大差值,取值0.2;
pθ(at|st)——當環境狀態為st時,參數為θ的神經網絡輸出動作為at的概率;
pθk(at|st)——當環境狀態為st時,參數為θk的神經網絡輸出動作為at的概率。
強化學習的缺點是收斂時間長[17]。獎勵塑造是人為設計獎勵函數加快訓練過程的方法。強化學習的最終目標是最大化長期累積的獎勵,所以獎勵函數設計的好壞直接影響強化學習算法性能的好壞及收斂速度的快慢。針對播種機械臂,若采用是否成功到達目標點作為獎勵,由于獎勵過于稀疏,很容易使得智能體無法識別關鍵動作,導致訓練效果不佳,此類稀疏獎勵問題也一直是深度強化學習在解決實際任務中面臨的核心問題[18]。故本文提出一種基于過程動作的獎勵函數設計方法,利用機械臂末端執行器及目標物體的位姿及速度引導機械臂按照期望姿態運動,完成預定動作。
在本研究中,需遵循以下規則。
1) 在排種過程中,吸種盤底面需平行于育秧盤上表面。
2) 吸種盤需盡可能朝著靠近目標點的方向運動,禁止大幅度翻轉動作的出現。
根據Ng[19]提出:存在一個真值函數Φ使得改變后的獎勵函數構成的馬爾可夫過程的最優控制不變。結合最優控制目標函數,可得Φ(st)公式如式(7)所示。
Φ(st)=RS(st)+RP(st)
(7)
式中:RS(st)——狀態st下的單值獎勵函數;
RP(st)——狀態st下的過程獎勵函數。
根據上述規則,單值獎勵和過程獎勵均由機械臂和環境交互產生,用戶可以根據任務要求來量化。當過程關鍵動作完成時,給出正向及時獎勵;當機械臂與環境實體發生碰撞時,給出反向懲罰。終止狀態設置為機械臂完成目標動作或在指定時間內未完成規定動作。針對跟隨階段,根據跟隨時間與采樣時間的比值可知,若連續存在固定數據點的位置及偏角誤差均在誤差范圍內,則表明機械臂完成跟隨排種,結束本次訓練周期,并給予單次正向獎勵。單值獎勵函數定義如式(8)所示。
(8)
式中:a1——正向獎勵,取值2;
a2,a3——負向獎勵,分別取值-0.1,-0.2。
過程獎勵函數包含距離獎勵和姿態獎勵,具體操作如下。
RP=RD(st,st-1)+Rθ(st)
(9)
式中:RD(st,st-1)——距離獎勵函數;
Rθ(st)——姿態獎勵函數。
距離獎勵函數與當前狀態和前一狀態的距離值有關。用相鄰兩個時刻間的距離差判斷吸種盤的運動方向,當距離差小于零,表明吸種盤正靠近目標點,正向獎勵值變大;反之,表明吸種盤正遠離目標點,給予反向獎勵值。
(10)
(11)
式中:df、σ——距離參數,分別取值為5.3,0.56;



姿態獎勵與吸種盤的偏轉角度有關,具體公式如式(12)所示。
(12)
式中:θf——偏轉角參數,取值0.25;


(13)
(14)



采用上述方法可依次求解第t時刻吸種盤在Y軸和Z軸方向上的夾角
將UG中建立的機械臂及流水線三維模型導入V-REP,為機械臂添加六個旋轉關節及環境碰撞檢測功能,將吸種盤固定于機械臂末端,編寫流水線傳送功能子腳本,建立氣振盤式播種流水線仿真平臺,構建類似OpenAI Gym的交互環境,采用Remote API實現V-REP 和Python間的通訊[20-21],評價運動規劃算法的有效性。仿真環境如圖6所示。建立世界坐標系,其中流水線沿X軸方向放置,育秧盤沿X軸負方向勻速運動。機械臂為伯朗特六軸工業機械臂BRTIRUS0707A,最大負載為7 kg,最大運動半徑為700 mm,重定位精度為±0.03 mm,各關節轉角范圍分別為(-170°,+170°),(-100°,+100°),(-60°,+140°),(-180°,+180°),(-115°,+115°),(-360°,+360°)。由于本文只考慮運動規劃算法的應用性能,不考慮仿真環境與真實環境的誤差問題,故通過V-REP 獲取的目標位姿信息可直接應用于參數計算。
為研究機械臂運動規劃問題,對環境做如下假設。
1) 吸種盤的預排種位設置在距離育秧盤中心點正上方0.05 m處的矩形平面內。
2) 不考慮吸種盤排種的瞬間動作,當吸種盤底面中心點跟隨育秧盤中心點移動固定時間后,則認定吸種盤完成排種動作。

圖6 仿真環境
設置端口號為19999,啟動服務器V-REP,與客戶端使用socket套接字進行通訊[21]。當python計算出一組控制序列后,通過Remote API發送給V-REP,控制機械臂運動,并采集育秧盤及吸種盤的運行參數返回給客戶端,更新算法中機械臂與環境的交互狀態進行訓練。為驗證算法的收斂速度、跟隨性能及整體播種效果,首先設置算法收斂速度對比試驗,采用吸種盤和目標點間距離的相反數表示獎勵值,進行訓練,保存模型;采用本文提出的基于過程動作的獎勵函數,對機械臂進行訓練,對比獎勵值的收斂情況。接著將訓練好的模型載入聯合仿真,設置育秧盤進入待排種區域內的運行速度為-0.2 m/s,連續進行20盤跟隨排種測試,當育秧盤運動到(0.67, -0.326, 0.823)時開始記錄育秧盤的坐標、吸種盤的坐標及偏轉角,當育秧盤到達(-0.6, -0.326, 0.823)時結束記錄,數據用于評價算法的跟隨效果。最后采用混合式運動規劃方法,對氣振盤式播種機械臂的運動過程進行規劃,由于下行和返回原點屬于典型的點對點運動,故直接采用快速探索隨機樹(RRT)算法對該過程進行路徑規劃;針對攜種過程及排種過程,采用改進后的PPO算法,連續進行30盤播種測試,記錄吸種盤的運行速度,計算平均播種周期。
3.3.1 收斂速度
采用吸種盤和目標點間距離的相反數表示獎勵值,整個訓練過程的獎勵值如圖7所示,訓練28 000步后,獎勵值仍無法收斂,表明智能體暫未學習到可以完成預定動作的方法。而采用過程動作匹配設計的獎勵函數,獎勵值如圖8所示,在約18 000步后,累積獎勵值可收斂至最大值,表明智能體已成功習得一種可完成任務的方法;且獎勵值在早期上升到最大獎勵值的速度明顯快于常用獎勵函數設置方法,說明基于過程動作的獎勵函數的設計方法可在早期引導機械臂進行有效學習,減少算法在早期的探索時間,加快收斂速度。

圖7 PPO的獎勵值變化圖

圖8 改進PPO的獎勵值變化圖
3.3.2 跟隨性能


圖9 吸種盤及目標點的運動軌跡
以吸種盤與育秧盤間的三軸位置誤差及點間距離作為跟隨位置效果的評價標準,位置誤差結果如圖10所示。在跟隨運動過程中,變化較為顯著的為Y軸的位置誤差。由于在跟隨期間,吸種盤需要在X軸方向上保持較高控制精度,且不能碰撞到流水線支架,故習得的運動策略較為保守,導致Y軸測量值大于真實值,但由圖11可知,點間距離誤差可保持在(2.5 mm, 4.5 mm)范圍內,且吸種盤在X,Y,Z軸上的位置誤差的絕對值基本保持在2.5 mm,3.0 mm和1.1 mm,滿足跟隨排種的定位要求。

圖10 吸種盤和目標點間的三軸位置誤差
以吸種盤與育秧盤間的偏轉角度差作為跟隨姿態的評價標準,由于育秧盤的空間姿態始終與坐標軸保持一致,故直接求解吸種盤在X,Y,Z軸上的偏轉角。偏轉角的仿真數據如圖12所示,跟隨過程中,吸種盤在X,Y,Z軸上的偏轉角度誤差的絕對值分別保持在1.20°,1.14°和1.28°之內,滿足跟隨排種的姿態要求。

圖11 吸種盤和目標點間的距離誤差

圖12 吸種盤和目標點間的姿態誤差
3.3.3 整體播種效果
截取一個播種周期中吸種盤運動過程如圖13所示,機械臂在單個播種周期內可完成吸種、攜種、排種循環運動。吸種盤底面中心點運行速度如圖14所示,吸種盤下行吸種過程為直線運動,Z軸平均速度為-0.1 m/s,運動時間為0.8 s;在吸種位停留1 s,等待吸種完成;攜種過程為曲線運動;排種過程可近似為直線運動,在X軸上的平均速度為-0.202 m/s,跟隨排種過程持續1 s;最后返回初始位置。通過計算30盤播種時間的平均值可知平均播種周期約為5.1 s。
綜合上述分析,該方法可在保證控制精度的情況下,使得機械臂快速完成吸種、攜種、排種、返回原點等相關動作。

圖13 一組狀態測試流程圖

圖14 吸種盤的運行速度
本文提出一種基于深度強化學習的播種機械臂運動規劃算法,利用V-REP搭建氣振盤式播種仿真平臺,設計過程動作匹配獎勵函數,構建近端策略優化算法框架,并驗證規劃算法的有效性。該算法可減少機械臂的無效學習,滿足跟隨排種的位姿要求,為超級稻精密播種的智能化控制提供有效依據。
1) 根據氣振盤式播種流水線的工作特點,采用六軸機械臂設計跟隨式排種方法,可避免流水線在播種過程中暫停等待排種;最終平均播種周期由7.2 s減少至5.1 s,提高了播種效率。
2) 提出一種基于深度強化學習的播種機械臂運動規劃算法,設計基于過程動作的獎勵函數,構建近端策略優化算法框架,加快算法的收斂速度;利用V-REP 對氣振盤式播種機械臂運動規劃算法進行仿真,仿真結果表明,該算法可實現跟隨排種,且吸種盤在X,Y,Z軸上位置誤差的絕對值小于2.5、3.0、1.1 mm,跟隨距離誤差絕對值小于4.5 mm,偏轉角誤差的絕對值小于1.20°,1.14°,1.28°,滿足跟隨排種的定位及姿態要求。