OpenAI開(kāi)源機(jī)器人模擬Python庫(kù)的新功能及性能
推薦 + 挑錯(cuò) + 收藏(0) + 用戶評(píng)論(0)
在過(guò)去一年的研究中,OpenAI團(tuán)隊(duì)開(kāi)源一個(gè)使用 MuJoCoengine開(kāi)發(fā)的用于機(jī)器人模擬的高性能Python庫(kù)。雷鋒網(wǎng)了解到, 該P(yáng)ython庫(kù)是OpenAI團(tuán)隊(duì)深入學(xué)習(xí)機(jī)器人研究的核心工具之一,現(xiàn)在該團(tuán)隊(duì)發(fā)布的是作為MuJoCo的主要版本的mujoco-py(Python 3 的 MuJoCo 綁定)。 Mujoco-py 1.50.1.0帶來(lái)了許多新的功能和顯著的性能提升。雷鋒網(wǎng)獲悉,新功能包括以下幾點(diǎn):
高效處理并行模擬
GPU加速的自動(dòng)3D渲染
直接訪問(wèn)MuJoCo函數(shù)和數(shù)據(jù)結(jié)構(gòu)
支持所有的MuJoCo 1.50功能,比如改進(jìn)的接觸求解器
批量模擬
軌跡(trajectory)優(yōu)化和強(qiáng)化學(xué)習(xí)中的許多方法(如LQR,PI2和TRPO)可以從并行運(yùn)行多個(gè)模擬中受益。 mujoco-py通過(guò)OpenMP使用數(shù)據(jù)并行,并通過(guò)Cython和NumPy直接訪問(wèn)內(nèi)存管理,從而使批量模擬更有效率。
新版本的MjSimPool接口的初步使用顯示,速度超過(guò)舊版本的 400%,并且在一個(gè)已優(yōu)化和受限的使用模式中(通過(guò) Python 的多處理工具包獲取相同水平的并行計(jì)算)仍然大約為舊版本的180%。提速的大部分原因在于MuJoCo各種數(shù)據(jù)結(jié)構(gòu)的訪問(wèn)時(shí)間縮短。
可以以這個(gè)案例了解MjSimPool:github.com/openai/mujoco-py/blob/master/examples/simpool.py
高性能紋理隨機(jī)化
在OpenAI的許多項(xiàng)目中都使用域隨機(jī)化技術(shù)。 最新版本的mujoco-py支持支持自動(dòng)的(headless)GPU 渲染,與基于CPU的渲染相比,它的速度有40倍的提升,可以每秒產(chǎn)生數(shù)百幀的合成圖像數(shù)據(jù)。 在上述(減速)動(dòng)畫(huà)中,OpenAI使用理隨機(jī)化技術(shù)來(lái)改變一個(gè)機(jī)器人的紋理,幫助這個(gè)機(jī)器人辨識(shí)其身體(在將其從模擬器轉(zhuǎn)移至現(xiàn)實(shí)時(shí))。 請(qǐng)查看examples / disco_fetch.py以獲取隨機(jī)紋理生成的示例。
采用mujoco-py實(shí)現(xiàn)VR
由mujoco-py公開(kāi)的API足以使虛擬現(xiàn)實(shí)交互而無(wú)需任何額外的C ++代碼。 OpenAI使用mujoco-py將MuJoCo的C ++ VR示例移植到Python。 如果您有HTC Vive VR設(shè)置,您可以嘗試使用這一示例(此支持被認(rèn)為是實(shí)驗(yàn)性的,但是OpenAI已經(jīng)在內(nèi)部使用它了)。
API和用法
開(kāi)始使用mujoco-py的最簡(jiǎn)單的方式是使用MjSim class。 它是圍繞模擬模型和數(shù)據(jù)的包裝(wrapper),可讓您輕松地進(jìn)行模擬并從相機(jī)傳感器中渲染圖像。 下面是一個(gè)簡(jiǎn)單的例子:
from mujoco_py import load_model_from_path, MjSim
model = load_model_from_path(“xmls/tosser.xml”)
sim = MjSim(model)
sim.step()
print(sim.data.qpos)
# =》 [ -1.074e-05 1.043e-04 -3.923e-05 0.000e+00 0.000e+00]
對(duì)于高階用戶,OpenAI提供了大量的低水平接口以直接訪問(wèn)MuJoCo C結(jié)構(gòu)體和內(nèi)部函數(shù)。
非常好我支持^.^
(0) 0%
不好我反對(duì)
(0) 0%
下載地址
OpenAI開(kāi)源機(jī)器人模擬Python庫(kù)的新功能及性能下載
相關(guān)電子資料下載
- Bulbea:用于股票市場(chǎng)預(yù)測(cè)和建模的Python庫(kù) 73
- Python庫(kù)中oloredlogs的使用 210
- 如何安裝常用Python庫(kù) 517
- 介紹5個(gè)常用的Python庫(kù) 305
- 通過(guò)RPi.GPIO Python庫(kù)使用Raspberry Pi GPIO引腳 962
- 分享5個(gè)用于圖像處理的Python庫(kù) 777
- 發(fā)現(xiàn)一個(gè)寶藏Python庫(kù),玩社區(qū)發(fā)現(xiàn)算法的不能錯(cuò)過(guò)! 687
- 5個(gè)常用Python庫(kù) 332
- 居然有比requests更強(qiáng)大Python庫(kù)出現(xiàn) 888
- 能夠0.052秒打開(kāi)100GB數(shù)據(jù)的一個(gè)高性能Python庫(kù) 1386