谷歌 AI 提出雙重策略強化學習框架,幫助機器人安全學習動作技能

谷歌 AI 提出雙重策略強化學習框架,幫助機器人安全學習動作技能

深度強化學習在自主解決複雜、高維問題方面的前景,引起了機器人、遊戲和自動駕駛汽車等領域的極大興趣。但是,要想有效地進行強化學習策略的訓練,需要對大量的機器人狀態和行為進行研究。這其中存在一定的安全風險,比如,在訓練一個有腿機器人時,由於這類機器人自身不穩定,機器人在學習時很容易發生跌倒,這可能會造成機器人的損害。

透過在計算機模擬中學習控制策略,然後將其部署在現實世界中,可以在一定程度上降低機器人發生損害的風險。但是,該方法往往要求解決模擬到現實的差距,即在模擬中訓練的策略由於各種原因不能隨時部署在現實世界中,比如部署中的感測器噪音或模擬器在訓練中不夠真實。解決這個問題的另一種方法,就是在現實世界中直接學習或微調控制策略。當然,最主要的挑戰還是如何在學習過程中確保安全。

在《腿部運動的安全強化學習《Safe Reinforcement Learning for Legged Locomotion》的論文中,我們提出了一個安全的強化學習框架,用於學習腿部運動,同時滿足訓練期間的安全約束。

我們的目標是讓機器人在現實世界中自主學習動作技巧,並且在學習過程中不會跌倒。我們的學習架構使用了一種雙重策略的強化學習框架:一種將機器人從近乎不安全的狀態中恢復過來的“安全恢復策略”,以及一種為執行所需控制任務而最佳化的“學習者策略”。安全學習框架在安全恢復策略和學習者策略之間進行切換,使機器人能夠安全地獲得新的、敏捷的動作能力。

雙重策略的強化學習框架

我們的目標是確保在整個學習過程中,無論使用何種學習者策略,機器人都不會跌倒。

與兒童學騎車一樣,我們的做法是,在使用“訓練輪”的同時,教會智慧體一種策略,即安全恢復策略。我們首先定義了一組狀態,我們稱之為“安全觸發集”,在這些狀態下,機器人在接近於違反安全約束的情況下,但能透過安全恢復策略來挽救。

例如,安全觸發集可以被定義為:機器人的高度低於某個閾值,並且滾動、俯仰、偏航角度過大的一組狀態,這是一個跌倒的跡象。當學習者策略的結果是機器人處於安全觸發集內(即有可能跌倒的地方),我們就切換到安全恢復策略,驅動機器人回到安全狀態。

我們透過利用機器人的近似動力學模型來預測未來的機器人軌跡,從而確定何時切換回學習者策略。例如,基於機器人腿部的位置和基於滾動、俯仰和偏航感測器的機器人的當前角度,它在未來是否有可能跌倒?如果所預測的未來狀態都是安全的,我們就把控制權交還給學習者策略,否則,我們就繼續使用安全恢復策略。

谷歌 AI 提出雙重策略強化學習框架,幫助機器人安全學習動作技能

上圖是我們所提方法的狀態圖

如果學習者策略違反了安全約束,我們就切換到安全恢復策略。

如果切換到安全恢復策略後,短期內無法保證學習者策略的安全時,我們將繼續使用安全恢復策略。這樣,機器人就能更好地進行探索,而又能保證安全。

這種方法確保了複雜系統的安全,而不需要藉助於不透明的神經網路,這些神經網路可能對應用中的分佈改變很敏感。此外,學習者策略能夠探索接近安全違規的狀態,這對於學習一個穩健的策略很有用。

由於我們使用“近似”動力學來預測未來的運動軌跡,所以我們也在探討,在機器人的動力學方面,採用更精確的模型時,會有多大的安全性。我們對這個問題進行了理論分析強化學習 leggedlocomotion/),顯示出我們的方法與對系統動力學有充分了解的方法相比,可以實現最小的安全效能損失。

腿部運動任務

為驗證該演算法的有效性,我們考慮學習三種不同的腿部動作能力:

高效步態:機器人學習如何以低能耗的方式行走,並因消耗較少的能量而得到獎勵。

貓步:機器人學習一種貓步的步態,在這種步態中,左、右兩隻腳相互靠近。這很有挑戰性,因為透過縮小支撐多邊形,機器人會變得不太穩定。

兩腿平衡:機器人學習兩腿平衡策略,在這個策略中,右前腳和左後腳處於站立狀態,另外兩隻腳被抬起。如果沒有精確的平衡控制,由於接觸多邊形會“退化”成一條線段,所以機器人很可能會跌倒。

谷歌 AI 提出雙重策略強化學習框架,幫助機器人安全學習動作技能

本文所討論的運動任務。上圖:高效步態。中間:貓步。下圖:兩腿平衡。

實施細節

我們使用一個分層策略框架,將強化學習和傳統控制方法相結合,用於學習者和安全恢復策略。這個框架包括一個高階的強化學習策略,它產生步態引數(例如,踏步頻率)和腳的位置,並將其與一個稱為模型預測控制(model predictive control,MPC)的低階過程控制器配對,該控制器接收這些引數並計算出機器人中每個電機的理想扭矩。

由於我們不直接控制電機的角度,這種方法提供了更穩定的操作,由於較小的行動空間而簡化了策略訓練,併產生了更強大的策略。強化學習策略網路的輸入包括先前的步態引數、機器人的高度、基座方向、線性、角速度和反饋,這些資訊可以顯示機器人是否已經接近設定的安全觸發器。對於每個任務,我們都會採用同樣的設定。

我們訓練一個安全恢復策略,對儘快達到穩定狀態給予獎勵。此外,在設計安全觸發集時,我們也從可捕捉性理論中得到了靈感。尤其是,最初的安全觸發器集被定義為,確保機器人的腳不會踩在能夠利用安全恢復策略進行安全恢復的位置之外。我們使用了一個隨機策略,在一個真實的機器人上對安全觸發集進行了微調,以防止機器人跌倒。

現實世界的實驗結果

我們報告了現實世界的實驗結果,顯示了獎勵學習曲線和高效步態、貓步和兩腿平衡任務中安全恢復策略啟用的百分比。為了確保機器人能夠學會安全,我們在觸發安全恢復策略時增加了一個懲罰。這裡,所有的策略都是從頭開始訓練的,除了兩腿平衡任務,由於需要更多的訓練步驟,所以在模擬中進行了預訓練。

總的來說,我們發現,在這些任務中,獎勵增加了,而當策略更新時,安全恢復策略的適用百分比也會下降。比如,在高效步態任務中,安全恢復策略的使用比例從 20% 下降到接近 0%。對於兩腿平衡任務,百分比從接近 82。5% 下降到 67。5%,這表明兩腿平衡比前兩個任務要難得多。

儘管如此,該策略確實提高了獎勵。研究結果顯示,在不觸發安全恢復策略的情況下,學習者可以可以逐步學習任務。另外,這說明在不影響效能的情況下,可以設計一套安全觸發器集和安全恢復策略。

谷歌 AI 提出雙重策略強化學習框架,幫助機器人安全學習動作技能

在現實世界中使用我們的安全強化學習演算法的獎勵學習曲線(藍色)和安全恢復策略啟用的百分比(紅色)。

此外,下面的動圖顯示了兩腿平衡任務的學習過程,包括學習者策略和安全恢復策略之間的相互作用,以及當一個情節結束時重置到初始位置。

我們可以看到,當機器人跌倒時,它會試著抬起腿並伸出去(左前腿和右後腿),把自己拉起來,從而形成一個支撐多變形。在學習一段時間後,機器人會自動走回重置的位置。這使得我們自主、安全地進行無人監督的策略訓練。

谷歌 AI 提出雙重策略強化學習框架,幫助機器人安全學習動作技能

https://static001。infoq。cn/resource/image/b3/88/b3f06afb721a3c107198ac1160306a88。gif

早期訓練階段

谷歌 AI 提出雙重策略強化學習框架,幫助機器人安全學習動作技能

https://static001。infoq。cn/resource/image/60/af/600113888c053704a6eab2700100b0af。gif

後期訓練階段

谷歌 AI 提出雙重策略強化學習框架,幫助機器人安全學習動作技能

沒有安全的恢復策略

最後,我們將學習到的一些策略進行演示。首先,在貓步任務中,兩邊腿的距離為 0。09 米,比額定距離小 40。9%。第二,在兩腿平衡任務中,機器人可以透過兩腿跳動來保持平衡,而從模擬中預先訓練的策略只跳了一次。

谷歌 AI 提出雙重策略強化學習框架,幫助機器人安全學習動作技能

最終,機器人學會了兩腿平衡。

結語

我們提出了一種安全的強化學習框架,並展示了在學過程中,不會跌倒或手動復位的情況下,如何訓練機器人的策略進行高效步態和貓步任務。這種方法甚至能夠在只有四次跌倒的情況下訓練兩腿平衡任務。只有當需要時,才會觸發安全恢復策略,使得機器人可以更好地進行環境的探索。

我們的研究結果顯示,在現實世界中,能夠自主、安全地掌握腿部動作的技巧是有可能的,這將為我們提供一個新的機遇,其中包括離線收集機器人學習的資料集。

沒有任何模型是沒有限制的。我們目前在理論分析中,忽略了來自環境和非線性動態的模型不確定性。把這些納入其中,可以使我們的方法更加通用。另外,當前,切換標準中的某些超引數也以啟發式方法進行調整。若能根據學習的進度,自動地決定切換的時間,則更會有效。如果把這種安全的強化學習框架擴充套件到其他的機器人應用,如機器人操縱,將會很有意思。

最後,在考慮到安全恢復策略時,設計一個適當的獎勵,將會影響學習效能。我們使用了一種基於懲罰的方法,在這些實驗中獲得了合理的結果,但我們計劃在未來的工作中對此進行研究,以進一步提高效能。

原文連結:

https://ai。googleblog。com/2022/05/learning-locomotion-skills-safely-in。html

TAG: 機器人安全策略學習學習者