天天看點

OpenAI釋出開源軟體Roboschool,模拟機器人的控制訓練

OpenAI釋出開源軟體Roboschool,模拟機器人的控制訓練

雷鋒網(公衆号:雷鋒網) ai 科技評論消息,openai 今日釋出了一個用于模拟機器人的控制訓練的開源軟體 roboschool,根據介紹,其整合了前段時間釋出的 openai gym。

openai gym 是一款研發與比較強化算法的工具包,此前使用者回報的問題在于價格。雖然已經向個人或有課程學習需要的學生免費開放,但負責機器人控制的 mujoco 元件依然需要收費。

不過在基于

openai gym 環境的 roboschool 裡,使用者不必再擔心這一額外花費。據雷鋒網了解,有八個模拟器可以作為 mojoco

元件的免費替代品,還能進行重新調試,以産生更多逼真的動作。另外四個任務則提供了更具挑戰的任務,比如類人直立行走的任務,或是多玩家乒乓賽(multiplayer

pong)。

這樣一來,roboschool 得以讓使用者更友善地在同一個場景中同時訓練多個智能體。openai 表示,他們希望随着時間推移,能夠獲得更多的集合拓展,此外也期待社群後續的産出貢獻。

openai

團隊已經将 mujoco 上的一些模拟器移植到 bullet 上,并做了逼真化的處理。下圖的三個模拟器都有了不同程度的改進。比如

walker2d

在緩慢走動時,細節更加真實;而原有的螞蟻(ant)變得更「重」了一些,這樣它就需要借助四條腿來前進;人類行走者甚至還借鑒了能量損耗原則(=轉矩×角速度),并以「跑偏」的形式顯現出來。

OpenAI釋出開源軟體Roboschool,模拟機器人的控制訓練

此前的 openai gym 模拟器旨在掌握步行控制的要義,隻需要學會簡單地前進就夠了。但實際情況可能複雜許多,且有很多地方尚未被探索過,是以模拟器的單循環政策開始變得不管用, 可能輕輕推模拟器一把,都會讓機器人摔個狗啃泥而動彈不得,更不要說完成任務了。

為了解決這一問題,在全新的 roboschool 中,openai 的研究者設計了兩個 3d 類人的模拟器,而在訓練任務 humanoidflagrun 中,機器人需要朝着不斷變動位置的旗子跑去,這一過程能夠訓練機器人學會放緩速度并轉動方向。

而在「困難模式」的 humanoidflagrunharder 中,機器人被賦予「跌倒」的權利,并嘗試用雙腿站起來。是以,任務的一開始,很可能機器人是躺在地上的。此外,機器人還要抵禦不時的「攻擊」(見視訊),防止因為來自四面八方砸來的小白塊而摔倒。

github

上開源。雖然機器人的步伐看上去并不那麼快,形态也不像人般自然,但它所采取的政策已經足以應對非常多的狀況,也知道如何控制機器人。我們可以把這個政策當作一個多層感覺機,甚于它沒有内部狀态,我們認為,在某些情況下,智能體應該是采用了自己的手臂存儲資訊。

就像雷鋒網在前文所提及的一樣,roboschool 緻力于讓使用者在同一模拟器上訓練多個智能體,而 roboschoolpong 就是一個很好的開始,與此同時,還有一大波模拟器正在路上。

通過「左右互博」的乒乓球賽,使用者得以在兩方同時訓練同一個智能體,或是采用同樣的算法訓練兩個不同的智能體,甚至,你也可以讓兩個獨立智能體自行訓練(如下面視訊所示)。

多智能體的設定也帶來了一些有意思的挑戰。如果你同時訓練兩方玩家,你很可能會看到如下圖所示的曲線圖:

OpenAI釋出開源軟體Roboschool,模拟機器人的控制訓練

政策更新與政策梯度同時進行

将會呈現如下結果:

智能體 1(綠線)學到在頂部可以成功回球,是以它經常往頂部移動;

智能體 2(紫線)發現對手經常往頂部移動,是以會試着往底部回球;

智能體 1 随後也學會要往底部移動才能成功回球,而且智能體 2 經常往底部回球,是以它也經常「駐守」底部了。

經曆這樣的循環後,政策開始震蕩,而經曆了數小時的訓練後,雙方都沒法再學到什麼有用的内容了。而在

gans 中,在對抗性中進行學習屢試不爽,而 openai

團隊的人認為這是一個非常有意思的研究問題。即便是在簡單的環境中,雙方的互動也會産生複雜的政策,也能提供符合實際的借鑒。

除了上文介紹的 roboschool 外,openai 團隊也在 openai gym 中做了不少研究工作。詳情可以參考以下連結:

本文作者:奕欣

繼續閱讀