機械臂抓取擺放及堆疊物體是智能工廠流水線上常見的工序,可以有效的提升生產效率,本文針對機械臂的抓取擺放、抓取堆疊等常見任務,結合深度強化學習及視覺反饋,采用AprilTag視覺標簽、后視經驗回放機制
實現了稀疏獎勵下的機械臂的抓取任務,并針對本文的抓取場景提出了結合深度確定性策略梯度及后視經驗回放的分段學習的算法,相比于傳統控制算法,強化學習提高了抓取的準確度及穩定性,在仿真與實際系統中驗證了效果。
一.仿真與物理環境搭建
本文采用大象機器人的6自由度的串聯型機械手臂myCobot Pro-600,根據myCobot Pro-600的機械結構,采用標準D-H參數法建立機械臂連桿坐標系,如圖所示:
根據上圖建立的機械臂連桿坐標系,得到D-H參數表:
根據模型參數,使用Pybullet搭建抓取擺放任務仿真環境如下:
在抓取擺放任務中,機械臂要實現的就是抓取紫色的物塊,并穩定的放置在綠色的目標點處
仿真環境的狀態、目標、獎賞和動作的設置如下:
(1) 狀態(States):包括機械臂的末端位置、姿態;待抓取物塊位置、姿態(紫色長方體);目標點位置。
注:仿真環境中為了減輕算力,沒有使用AprilTag進行姿態解算,實物中使用AprilTag來定位待抓取物塊位置。
(2) 目標(Goals)(綠色圓錐區域):目標描述了目標的期望位置,具有一定固定的容差,也就是在這個公式中,表示物體在狀態s時的位置。
(3) 獎賞(Rewards):獎賞是二進制值,即稀疏獎賞,通過其中是機械臂在狀態s下執行動作a后的狀態。
(4) 動作(Actions):X(前后),Y(左右),(夾爪旋轉)方向的運動速度。Z(高度)由時間步控制。
二.基于DDPG與HER的機械臂搬運任務分段學習算法
DeepMind在2016年提出深度確定性策略梯度(Deep Deterministic Policy Gradient,DDPG)算法,是結合了深度學習和確定性策略梯度方法的一種算法
DDPG在具有連續動作空間的決策任務中已經成功應用,但是對于一些復雜的技能學習任務,不能設計合適的獎勵函數,所以不能得到較好的學習效果。
然而,將DDPG和HER結合,可以解決稀疏獎勵的不可學習問題。
HER只通過改變經驗池中數據的狀態和獎勵,增大正向獎勵的密度,利用DDPG的主策略網絡采集完軌跡數據,再將軌跡數據重組為經驗形式的數據,利用目標選擇策略修改其中的狀態和獎勵,最后將經驗存放在經驗池中。
在實際應用中,為了減少內存需求,則HER的實施方式也不同,經驗池中一般存放的是軌跡,只有再采集小批量數據更新網絡或者歸一化器時才使用目標選擇策略。
在抓取任務中,開始時DDPG算法在動作空間隨機采樣運動,由于獎勵的稀疏,在多次探索后可能仍然無法獲得獎勵,而HER加入后,在已經探索的軌跡中加入虛擬獎勵,刺激價值函數的增長,以加速強化學習的學習速率。
針對抓取任務,本文采用分段學習的技巧,第一階段為接近物塊階段,第二階段為物塊搬運階段,有效的消除了傳統HER算法對不需要獎勵的步數的替換,從而加速了學習過程。
結合HER的DDPG算法的偽代碼如圖所示:
由于抓取擺放任務的獎勵稀疏性與任務的層次性,使用傳統的DDPG+HER算法會引起重疊虛假獎勵(OSR)問題
如下圖所示,具體來說當HER算法將目標位置虛擬到與物塊位置相同給與虛擬獎勵時,會引起強化學習抓取而不搬運的錯誤學習,這會嚴重影響學習過程的穩定性,導致價值網絡不穩定甚至無法收斂。
為了解決此問題,本文提出了針對抓取擺放等分層任務的分段學習算法。
分段學習是指通過將問題分解成多個子問題,并針對每個子問題獨立地解決,從而提高了算法的效率和魯棒性。分段學習是將原問題分解成若干個子問題,每個子問題對應一個狀態空間和一個動作空間。
然后,針對每個子問題,使用強化學習算法進行學習和探索,以得到最優的策略。
最后,將所有子問題的策略組合起來,得到解決原問題的最優策略。分段學習算法的優點在于,它可以針對復雜的大規模問題進行分解,從而使得每個子問題的狀態空間和動作空間更小,更易于學習和探索。
此外,由于子問題之間是獨立的,因此分段學習算法具有很好的可擴展性和可并行性。
針對抓取擺放任務,利用分段學習將任務分為抓取階段與擺放階段,下圖為抓取擺放任務分段學習過程示意圖,抓取階段與擺放階段各自采用DDPG+HER進行訓練,抓取階段以抓取到物塊作為獎勵
擺放階段以正確擺放作為獎勵,最終得到抓取決策1與擺放決策2,使用機械爪是否抓取到物塊作為策略的切換標志,最終完成了機械臂靠近物塊(決策1),機械爪夾取物塊,機械臂擺放物塊(決策2)的任務。
三.基于AprilTag的視覺識別與定位
AprilTag是一個基準視覺庫,通過在物體上粘貼Apriltag標簽,利用識別算法,確定標簽坐標系和攝像頭坐標系的關系,即可得到物體的位姿,在增強實現、機器人和相機校準等領域廣泛使用。
AprilTag視覺標簽與二維碼有相似之處,但是降低了視覺標簽的復雜度,抗光和抗遮擋性能比較好,能夠快速的檢測視覺標簽信息,并計算相機與標識碼之間的相對位置。
AprilTag的特點是高速、高精度、高穩定性。它的高速性表現在在實時應用中,AprilTag可以快速地識別目標,并輸出其位姿信息,響應速度可以達到幾十毫秒。
常用的AprilTag視覺標簽有以下幾個族:Tag16h5、Tag25h9和Tag36h11,如下所示。
從圖中,我們可以看到Tag16h5族的數量相對比較少,當處于光照較強的環境中或者被遮擋時容易被誤識別,但在遠距離定位中有較高的精度。
Tag36h11與Tag16h5對比,其族數量較多,應用在復雜環境時魯棒性較強,但是在遠距離定位中精度較低。
這里通過AprilTagROS庫來進行定位與目標姿態解算
通過深度相機經過目標物塊Tag的檢測與世界坐標系下的映射,可以得出待抓取物塊的位置坐標和姿態信息,此時將該目標位姿作為所提決策算法的輸入
經過機械臂板載計算機的計算輸出各關節動作,該動作經過機械臂逆運動學的解算映射成機械臂末端位置到達目標物塊位置實現一次的抓取動作
在運行該決策流程時,目標位置可隨時變化,深度相機再次解算目標物塊變化之后的位姿并輸入給決策算法,如此循環,直到終止程序。視覺反饋系統工作流程圖如下所示。
四.機械臂抓取仿真與物理實驗
仿真實驗
在仿真中采用結合HER的DDPG算法,其網絡設計如下。DDPG有策略網絡和值網絡兩種。
策略網絡是以輸入作為狀態,輸出作為動作;而值網絡的輸入是狀態-動作對,輸出的是一維的Q值,在引入HER后,狀態則變為了狀態-目標對。
在此次實驗中,所用到的狀態信息主要是機械臂和目標物等的狀態信息,所以網絡結構只包含全連接層,策略網絡的輸出層的激活函數選擇雙曲正切函數
則動作值的映射區間為-1到1,其余的各層激活函數用修正線性單元(Recitified Linear Unit,ReLU)。策略網絡和值網絡的結構如表所示。
在學習和策略更新中使用的學習率為0.001。使用Adam優化器訓練網絡,學習率為2.5e-4,訓練批次大小是256。后視經驗的回放策略為未來策略(future)。
使用百度飛槳(PaddlePaddle)深度學習框架進行訓練,在16GB內存,8核心i7-7700處理器,Tesla V100顯卡的Linux的系統下進行訓練,訓練輪數為2000,單個算法的運行時間10小時,仿真訓練效果如圖所示,截取訓練次數在第200、440、680和840次的效果。
從圖的仿真結果可以看到,在訓練200、440次的時候,機械臂能夠成功抓取b并放置在目標點的成功率并不高,隨著訓練次數的增加,對于隨機的物塊放置位置,機械臂成功抓取并放置的概率越來越大。
(1) 深度確定性策略梯度算法在抓取擺放任務環境中并不收斂,成功率一直為0。說明在沒有后視經驗回放(HER)的機制下算法很難探索到目標區域,經驗池中有限的目標點不足以支持算法的計算收斂。
(2) 在兩個算法中DDPG+HER相比于DDPG收斂速度更快,成功率更高,說明本文提出針對機械臂抓取任務分段學習的后視回放機制算法相比于傳統的強化學習算法性能有了較大提升。
物理實驗
為了將仿真訓練的網絡能夠用于實際機械臂系統,本文搭建了和仿真中較為一致的抓取實驗平臺。采用的是大象機器人的myCobot Pro600協作機械臂,其采用樹莓派微處理器,內嵌robotFlow可視化編程軟件,操作簡單。
上位機采用的是ThinkPad T490筆記本電腦。在硬件方面,采用D435i的RGBD相機作為手眼相機,D435i結合了寬視場和全局快門傳感器,在機器人導航和物體識別等領域廣泛應用。
在軟件方面,在Windows10系統中使用Python3.6、paddlepaddle2.3.0版本搭建神經網絡,與訓練時配置一致,則可以直接載入訓練好的模型參數運行控制程序。
在機械臂的抓取放置實驗中,抓取物為一個長方體的物塊,在該物塊上粘貼AprilTag碼,實驗目標是將該物塊放置到目標位置的盒子中:
機械臂抓取堆疊的任務是將兩個相同的物塊堆疊放置,即將白色的物塊安全的放置在藍色物塊上,在白色和藍色物塊上貼有不同的AprilTag碼,實現過程如圖所示:
通過物理實驗驗證了強化學習算法的有效性,在實物上實現了與仿真相同的效果,能夠實現將物塊穩定的堆疊放置在另一個物塊上,具體實驗效果視頻請查看。
審核編輯:湯梓紅
-
機器人
+關注
關注
210文章
28191瀏覽量
206505 -
機械臂
+關注
關注
12文章
509瀏覽量
24491 -
智能工廠
+關注
關注
3文章
986瀏覽量
42370 -
深度強化學習
+關注
關注
0文章
14瀏覽量
2295
原文標題:基于深度強化學習的視覺反饋機械臂抓取系統
文章出處:【微信號:vision263com,微信公眾號:新機器視覺】歡迎添加關注!文章轉載請注明出處。
發布評論請先 登錄
相關推薦
評論