當前位置:
首頁 > 新聞 > UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

雷鋒網 AI 科技評論按:本文的作者是來自加州大學伯克利分校人工智慧實驗室(BAIR)的博士生 Vitchyr Pong,他的主研方向為深度強化學習。在本篇博客中作者介紹了自己發表於正在進行的 ICLR 2018 的一項最新工作——時間差分模型(Temporal Difference Models),該模型屬於強化學習中的一種,並且很好地綜合了無模型方法與基於模型方法兩種策略各自的優點,雷鋒網 AI 科技評論根據原文進行了編譯。

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

假設你想從伯克利加州大學旁的房子騎行前往金門大橋。雖然這將會是一段風景優美的20英里騎行,但是卻存在一個嚴重的問題:你從來沒有騎過自行車!更糟糕的是,你剛搬來灣區所以你對這裡一點都不熟悉,而你所能依賴的唯一工具就是一份製作精良的最新地圖。那麼你該如何開始這趟旅程?

首先我們需要弄清楚自行車是怎麼騎的。其中一種策略是進行大量的學習和規劃,閱讀關於如何騎自行車的書籍,以及學習物理學和人體結構,規劃好你為了應對每種擾動而做出的所有不同的肌肉運動。這種方法儘管乍看之下非常系統和高級,但是對於任何學過自行車的人來說,他們都知道這種策略註定是要失敗的。事實上學習如何騎自行車只有唯一一種方法:嘗試和犯錯。因為像騎自行車這樣的任務實在是太過於複雜了,它遠遠超出了你所能規劃的範圍。

而一旦你學會了如何騎自行車,你又將如何前往金門大橋?你可以再次使用嘗試和犯錯策略(Trial-and-error strategy)。你開始嘗試著漫無目的地在周圍瞎轉了幾圈,看看是否能碰巧找到金門大橋。可是不幸的是,採取這一策略會消耗你大量的時間。對於這樣的問題,規劃(Planning)就是一種來得更快的策略,並且只需要相當少的現實世界的經驗(Real-world experience)和試錯(Trial-and-error)次數。在強化學習的術語中,這就是具有更好的採樣效率(Sample-efficient)。

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

左圖:某些技能需要你通過不斷嘗試和犯錯進行學習掌握;右圖:而某些時候,提早做好規劃會來的更好

剛剛這項思維實驗雖然很簡單,但是它卻突出了人類智能的一些重要方面。對於某些任務,我們會使用嘗試和犯錯的方法,而對於其它的一些任務我們則使用規劃的策略。強化學習(Reinforcement learning, RL)中似乎存在類似的現象。按照強化學習的說法,實驗結果證明,一些任務更適合於無模型(嘗試和犯錯)方法,而另外一些任務則更適合於基於模型的方法(規劃)

然而,騎自行車的類比也強調了這兩個系統並不是完全獨立的。特別是,說學騎自行車的過程只是試錯法的說法也是過於簡化。事實上,當通過反覆試錯學習騎車時,你也會採用一些規劃方法。也許你的初始計劃是「不要摔倒」,然後隨著你的進步,你會制定更加雄心勃勃的計劃,比如「自行車向前走兩米卻不會摔倒」,最終,你的自行車騎行技巧開始變得嫻熟,所以你開始給自己制定一些非常抽象的計劃(「騎到路的盡頭」),在這個階段你所需要做的事情就是進行規劃,而不需要再去擔心關於騎自行車的細節問題。通過這個過程,我們可以看到,這中間我們逐漸從無模型(嘗試和犯錯)策略過渡到基於模型(規劃)的策略。那麼如果我們可以開發出能模擬這種行為的人工智慧演算法(特別是強化學習演算法),該演算法就有可能同時具備高性能(演算法學習早期的時候採用試錯方法)和高採樣效率(之後切換到規劃方法來實現更加抽象的目標)的優點

這篇文章介紹了時間差分模型(Temporal difference model, TDM),它屬於強化學習的一種,並且能夠實現無模型和基於模型的強化學習之間的平滑過渡。在介紹時間差分模型之前,我們將首先介紹一個典型的基於模型的強化學習是如何工作的?

基於模型的強化學習

在強化學習演算法中,我們有一些狀態空間 S 和動作空間 A。如果在時間 t 我們處於狀態

,然後採取動作

,我們將根據動態模型(Dynamics model)

轉移到新狀態

。然後我們的目標是最大化之前所有達到過的狀態的獎勵之和:

。基於模型的強化學習演算法假設我們已經給出(或者學習)動態模型 f。鑒於這個動態模型,現實中已經存在有許多基於模型的演算法。對於本文,我們考慮執行以下優化的方法來選擇一系列動作和狀態以最大化獎勵:

這個優化函數將指導演算法選擇一系列狀態和動作以最大化獎勵,同時還將確保軌跡是可行的。在這裡軌跡可行意味著,每一個當前狀態到下一個狀態的轉換都是有效的。例如,在下面的圖片中,如果你從 st狀態開始並採取動作,則只有最上面一行的 st+1狀態是可行的轉換。

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

如果你能藐視物理規則,那麼你前往金門大橋的旅行規劃可能會來得容易得多。但是,基於模型的優化問題中的約束確保了只能輸出最上面一行的軌跡。雖然剩下的兩條軌跡可能帶來更高的獎勵,但它們是不可行的。

在我們的自行車問題中,優化結果可能產生如下圖這樣一條路線規劃,自行車從伯克利出發(右上角),最終到達金門大橋(左側中部):

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

一個規劃(狀態和動作)的例子輸出了優化問題

雖然這在概念上而言挺好的,但是這個規劃在現實中卻不太現實。基於模型的方法在每一次時間步(Time step)使用模型 f(s, a) 來預測下一次的狀態。在機器人技術中,一個時間步長通常相當於十分之一秒或百分之一秒。因此,對於最終規劃的更現實描述可能如下所示:

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

一個更加現實的規劃

如果我們稍微思考一下自己在每天日常生活中是如何進行規劃的,我們就會意識到我們計劃的時間更為抽象。我們並沒有規劃自行車在接下來的十分之一秒將所處的位置,而是制定了更長期的計劃,例如「我將走到路的盡頭」。此外,我們只有在開始的時候已經學會了如何騎自行車,才能制定出這些時間抽象規劃(Temporally abstract plans)。正如前面所述,我們需要一些方法來(1)剛開始學習時採用試錯方法;然後(2)提供一種機制來逐步提高我們規劃的抽象程度。為此,我們引入了時間差分模型。

時間差分模型(Temporal Difference Models)

時間差分模型可以寫成 Q(s, a, sg, τ),這個函數的含義是,給定一個狀態 s,動作 a 和目標狀態 sg,去預測智能體在 τ 時間步內能夠在多大程度上去接近目標。直觀而言,時間差分模型回答了這樣的問題「如果我要在 30 分鐘內騎自行車前往舊金山,那麼我能走到距離舊金山多遠的距離?」。對於機器人技術,測量接近程度的一種很自然的方法就是歐幾里得距離。

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

時間差分模型預測在一段固定的時間之後,你還距離目標(金門大橋)有多遠。騎自行車行走 30 分鐘後,也許你只能到達上圖中的灰色騎行者圖標的位置。在這種情況下,灰色線條表示時間差分模型應該預測到的距離。

對於那些熟悉強化學習的人來說,事實證明時間差分模型可以被看做有限期馬爾科夫決策過程(Finite-horizon Markov Decision Process)中的目標條件 Q 函數。因為時間差分模型只是另一個 Q 函數,所以我們可以使用無模型(試錯法)演算法對其進行訓練。我們使用深度確定性策略梯度(Deep deterministic policy gradient, DDPG)來訓練時間差分模型,並追溯性地重新標記目標和時間範圍,以提高學習演算法的採樣效率。雖然理論上講,任何 Q 學習演算法都可以用來訓練時間差分模型,但是我們發現這麼做是更加有效的。讀者們如何想要了解更多的細節請閱讀我們的論文。

通過時間差分模型進行規劃

如果我們完成了時間差分模型的訓練之後,我們要如何使用它來進行規劃呢?事實證明,我們可以通過以下優化來進行規劃:

直觀來看,該公式與基於模型的公式非常相似,都是選擇能夠最大化獎勵並且軌跡可行的一系列動作和狀態。而一個關鍵的區別就是我們只規劃每 K 個時間步,而不是對每個時間步進行規劃。Q(st, at, st+K, K) = 0 的約束限制了軌跡的可行性。視覺上而言,針對每個時間步進行規劃的情況就像下圖:

取而代之的是,我們可以針對這 K 個時間步直接進行規劃,如下圖:

隨著 K 值的增大,我們將得到在時間上越來越抽象的規劃。在 K 個時間步之間,我們使用無模型方法來採取動作,從而允許無模型策略「抽象出」 達到目標過程中的實現細節。對於騎車問題,採用足夠大的 K 值,最終優化的結果可能會生成如下圖的一個規劃:

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

基於模型的規劃者可以被用於選擇時間抽象目標,而無模型演算法則可以被用於實現這一目標。

一個需要注意的點是,這個公式只能在每 K 個步驟中優化獎勵。然而,許多任務只關心一些狀態,例如最終狀態(比如說「達到金門大橋」),因此該方法依然能捕獲到各種各樣有趣的任務。

相關工作

事實上,我們並不是第一個看到基於模型和無模型強化之間聯繫的人。Parr"08和Boyan"99特別相關,儘管他們主要關注表格式和線性函數逼近器。在Sutton"11和Schaul"15中,在機器人導航和 Atari 遊戲的背景下,還探索了訓練目標條件 Q 函數的想法。最後,我們使用的再次標籤方案(Relabelling scheme)則是受到了Andrychowicz"17工作的啟發。

實驗

我們在五個模擬連續控制的任務和一個真實世界的機器人任務上測試了時間差分模型。其中一項模擬任務是訓練機器人手臂將氣缸推送到目標位置。下面展示了最終實現推動氣缸的時間差分模型策略和相關的學習曲線:

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

成功達成了目標任務的時間差分模型策略

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

學習曲線,時間差分模型的曲線是藍色的(穩定時,曲線越低說明性能越好)

在學習曲線中,我們繪製了到達目標最終距離(Final distance to goal)與環境採樣(Environment Samples)量之間的關係圖(曲線越低越好)。我們的模擬環境以 20 Hz 的頻率控制著機器人,這意味著模擬環境中 1000 個時間步等價於真實世界中的 50 秒。這種環境的動態模型相對容易學習,這意味著基於模型的方法將取得優良的表現。正如預期的那樣,基於模型的方法(紫色曲線)擬合得非常快(大約 30000 個時間步,或者說約 25 分鐘)並且效果也非常好。時間差分模型方法(藍色曲線)也可以快速擬合(大約 20000 步或者說約 17 分鐘)。無模型的深度確定性策略梯度(DDPG,不採用時間差分模型)基準最終也解決這一任務,但是它需要更多的訓練樣本。而時間差分模型方法能夠如此之快地實現擬合的原因之一是,它的有效性是一種偽裝的基於模型的方法。

當我們轉向運動型任務時,無模型方法的結果看起來好多了,而運動型任務的動態性更強。其中一項運動型任務涉及訓練一個四足機器人移動到特定位置。由此產生的時間差分模型策略(TDM)在下圖的左側做了展示,然後右側的曲線是相對應的學習曲線。

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

應用於運動型任務的 TDM 策略

UC伯克利 ICLR 論文:論如何教強化學習模型騎自行車去金門大橋?

學習曲線,TDM 為藍色(曲線越低越好)

正如我們使用嘗試和犯錯策略而不是規劃策略來學習騎自行車一樣,我們期望無模型方法在這些運動型任務中的表現要比基於模型的方法來的更好。這正是我們在學習曲線中看到的:基於模型的方法在性能上保持平穩。雖然無模型的 DDPG 方法學習速度更慢,但最終的性能卻優於基於模型的方法。時間差分模型能夠快速學習(擬合)並獲得最佳的性能。在這篇論文中還進行了更多的實驗研究,包括訓練一個真實世界中具有 7 自由度的鋸木工機器人來找到目標位置。我們鼓勵讀者自己去閱讀論文!

未來的方向

時間差分模型為從無模型到基於模型的控制插值提供了一種形式化和實用的演算法。但是,未來還有很多工作要做。首先,我們求導時假設環境和策略都是確定性的。而實際上,大多數環境下這些都是隨機的。即便它們是確定性的,在實踐中採用隨機策略也有令人信服的理由(可以參見這篇博客,裡邊舉了一個例子)。然後如果把 TDM 擴展到此設置將有助於實現把 TDM 應用到更真實的環境中去。另外一個想法就是把 TDM 與可選的基於模型的規劃優化演算法(Alternative model-based planning optimization algorithms)相結合,這個演算法我們在本篇論文中使用過。最後,我們希望將 TDM 應用於真實世界的機器人身上去實現更難的挑戰,比如運動、操作,當然還有騎自行車去金門大橋。

這項工作將在 ICLR 2018 上展示。想要了解更多關於 TDM 的信息,請查看以下鏈接,也歡迎你在溫哥華 ICLR 的海報展區中與作者們交流:

  • ArXiv 預印本:《Temporal Difference Models: Model-Free Deep RL for Model-Based Control》

  • 開源代碼

補充:我們之所以將該方法命名為時間差分模型是因為,我們使用時間差分學習(Temporal difference learning)訓練 Q,然後將 Q 作為模型使用。

Via TDM: From Model-Free to Model-Based Deep Reinforcement Learning,雷鋒網 AI 科技評論編譯。

喜歡這篇文章嗎?立刻分享出去讓更多人知道吧!

本站內容充實豐富,博大精深,小編精選每日熱門資訊,隨時更新,點擊「搶先收到最新資訊」瀏覽吧!


請您繼續閱讀更多來自 雷鋒網 的精彩文章:

PlusAI 與奇瑞達成自動駕駛技術合作,在乘用車領域開始布局
東方網力:「另類」安防巨獸

TAG:雷鋒網 |