最美情侣中文字幕电影,在线麻豆精品传媒,在线网站高清黄,久久黄色视频

歡迎光臨散文網(wǎng) 會員登陸 & 注冊

【強化學(xué)習(xí)】強化學(xué)習(xí)環(huán)境ISAAC GYM(二)-再探索(Docker + 4090)

2023-02-22 16:13 作者:西湖大學(xué)空中機器人  | 我要投稿

全文1658字,預(yù)計閱讀時間4分鐘

原創(chuàng) | 汪治堃

背景介紹

Isaac Gym是一款由NVIDIA在2021年開發(fā)的,用于強化學(xué)習(xí)研究的物理環(huán)境,當(dāng)前仍然處于Preview Release的階段 [1]。自從上一篇文章(強化學(xué)習(xí)環(huán)境ISAAC GYM初步入門)介紹Isaac Gym之后,它已經(jīng)從Preview2 升級到 Preview4。雖然依舊還是Preview Release的階段,但是框架結(jié)構(gòu)已經(jīng)改變了很多啦。這篇文章主要是向大家介紹一下改動的部分,同時進一步研究其環(huán)境相關(guān)內(nèi)容。

Factory: Fast Contact for Robotic Assembly [2]
Factory: Fast Contact for Robotic Assembly [2]


ISAAC GYM Preview4 環(huán)境安裝

ISAAC GYM Preview4的訓(xùn)練環(huán)境的框架主要由兩部分組成,第一部分是環(huán)境構(gòu)建(GYM Frame,也就是直接下載的部分),第二部分是訓(xùn)練算法(RL Frame,需要從Github上下載),鏈接如下所示:

GYM Frame

https://developer.nvidia.com/isaac-gym

RL Frame

https://github.com/NVIDIA-Omniverse/IsaacGymEnvs

當(dāng)我們下載好了相關(guān)的文件后,這次我們采用Docker的方式對相關(guān)環(huán)境進行配置,關(guān)于Docker的作用與其特點,讀者們可以參考以下文章[強化學(xué)習(xí)環(huán)境ISAAC GYM初步入門]。

本次安裝使用的硬件環(huán)境是Nvidia 4090 和 i9-13900K,相關(guān)安裝步驟如下所示:

1.首先安裝Linux 20.04的系統(tǒng),然后安裝Nvidia的525版本驅(qū)動和Docker驅(qū)動,確保主機下Docker可以正常運行。

2.下載上面鏈接中的文件,分別解壓,然后定位到下載的GYM Frame下的文件夾isaacgym中。將github中的RL Frame的文件夾IsaacGymEnvs放置在isaacgym目錄下,方便后面進行文件夾映射。

3.接下來需要修改其中幾個Docker配置參數(shù),因此需要進入isaacgym/docker文件夾中,修改Dockerfile文件:1)因為我使用的4090顯卡需要比較新的驅(qū)動版本,所以我們需要將首行加載舊顯卡驅(qū)動版本的命令行修改為最新的驅(qū)動版本FROM nvcr.io/nvidia/pytorch:22.12-py3。

2)因為我操作中喜歡使用直接獲得管理員權(quán)限,所以我會將其中創(chuàng)建用戶的部分命令刪除。

3)因為我期望使用Docker環(huán)境和Linux其他環(huán)境共同使用同一個文件而非獨立環(huán)境,所以我也會將其中拷貝文件的部分刪除。由于刪除了其中的目錄,環(huán)境自動安裝部分的內(nèi)容就需要我們后面再手動進行。

4.然后我們需要修改同一目錄下的運行文件run.sh。Isaac gym環(huán)境需要使用圖像進行顯示,因此,我們只修改else后面的部分。

1)將我們想要共享的文件夾映射到docker環(huán)境中,即將-v /home/Username/Documents/IsaacGym:/isaacgym命令插入到docker run指令之后。其中,/home/Username/Documents/IsaacGym是下載的安裝環(huán)境所在的目錄,需要各位自行修改。

2)docker環(huán)境的名字在--name后面,可以修改為自己項目的名字,方便區(qū)別。

5. 最后,我們就可以在isaacgym文件夾內(nèi)運行bash docker/build.sh來建立一個支持4090顯卡配置環(huán)境的Isaac gym的image。然后我們運行bash docker/run.sh 0,其中0表示顯示器的編號。

6. 然后我們打開docker環(huán)境,手動安裝相關(guān)環(huán)境。由于我們前面沒有建立用戶,我們的命令行具有root權(quán)限,可以直接運行pip等指令。

1)定位到共享文件夾中的isaacgym/python目錄下,運行pip install -q -e . 。

2)定位到第2步中的RL Frame的文件夾IsaacGymEnvs中,運行pip install -q -e .。

至此,我們就完成了Isaac Gym相關(guān)文件和系統(tǒng)的安裝。我們可以到isaacgym/pyhton/examples文件夾內(nèi)運行相關(guān)指令查看簡單的環(huán)境,具體指令可參考前文[強化學(xué)習(xí)環(huán)境ISAAC GYM初步入門]。

環(huán)境運行與修改

因為當(dāng)前RL Frame使用了全新的框架,所以之前的訓(xùn)練命令不再適用。基本的訓(xùn)練可以使用pyhton train.py task = Taskname的方式,新框架下多個指令也可以疊加使用。常用的幾個指令如下所示:

如果當(dāng)前指令與的配置文件的值沖突,程序會以當(dāng)前命令行的指令為準(zhǔn)。

注意:一條完整指令中間不可以有空格,不同指令之間需要留空格。

當(dāng)前的Isaac Gym與之前的Preview2版本在環(huán)境編寫上存在一些區(qū)別,因此可以參考Github的docs中的framework文件進行修改,幾個重要地點如下所示:

1. 將原有的task class中的VecTask修改為BaseTask。

2. 將原有的reset函數(shù)修改為為reset_idx()函數(shù)。

3. Task下的___init__()函數(shù)和super().___init__()現(xiàn)在修改了輸入的參數(shù)數(shù)量。

4. 原來的模型和材質(zhì)文件被整合到了isaacgym/assets/目錄下。

5. 新的訓(xùn)練和環(huán)境配置文件被放在了上文提到的RL Frame下的isaacgymenvs/cfg文件夾中,環(huán)境需要同時訓(xùn)練參數(shù)和環(huán)境參數(shù)文件。

6. 需要在tasks文件夾中的___init__.py文件內(nèi)添加新創(chuàng)建的環(huán)境信息。

由于版本的區(qū)別,其中很多很好用的函數(shù)被改寫,部分無法使用,同時也不再提供一個完整的函數(shù)參考目錄。因此盡管GitHub項目中說可以無縫遷移,但我依舊碰到了部分函數(shù)不存在的報錯,可以說有一些遺憾了。

結(jié)論與展望

Nvidia開發(fā)的Isaac Gym環(huán)境現(xiàn)在已經(jīng)不再是一個小眾的平臺,由于其具有良好的環(huán)境計算能力,越來越多的使用者都在嘗試使用它來開發(fā)機器人與強化學(xué)習(xí)相關(guān)的內(nèi)容(比如ANYmal)。希望未來,它能夠更加的易于開發(fā),更加兼容不同的環(huán)境需求,可以提供幫助我們實現(xiàn) Sim to Real。

參考資料

[1] Viktor Makoviychuk, Lukasz Wawrzyniak, Yunrong Guo, Michelle Lu, Kier Storey, Miles Macklin, David Hoeller, Nikita Rudin, Arthur Allshire, Ankur Handa and Gavriel State. "Isaac Gym: High Performance GPU-Based Physics Simulation For Robot Learning.", arXiv preprint arXiv:2108.10470, 2021.

[2] Narang, Y. , et al. "Factory: Fast Contact for Robotic Assembly.", arXiv preprint arXiv:2205.03532, ?2022.

封面:https://developer.nvidia.com/isaac-gym

本文由西湖大學(xué)智能無人系統(tǒng)實驗室博士后汪治堃原創(chuàng),申請文章授權(quán)請聯(lián)系后臺相關(guān)運營人員。

▌公眾號:空中機器人前沿

▌知乎:空中機器人前沿(本文鏈接:https://zhuanlan.zhihu.com/p/607132488)

▌Youtube:Aerial robotics @ Westlake University

▌實驗室網(wǎng)站:https://shiyuzhao.westlake.edu.cn


【強化學(xué)習(xí)】強化學(xué)習(xí)環(huán)境ISAAC GYM(二)-再探索(Docker + 4090)的評論 (共 條)

分享到微博請遵守國家法律
都匀市| 双鸭山市| 乐昌市| 灵丘县| 澄江县| 洱源县| 越西县| 怀仁县| 大新县| 青冈县| 思茅市| 五大连池市| 太谷县| 谷城县| 临猗县| 斗六市| 连城县| 搜索| 固安县| 大姚县| 图们市| 通榆县| 扎赉特旗| 札达县| 榆林市| 扎鲁特旗| 陇西县| 岱山县| 句容市| 乌恰县| 鄢陵县| 南漳县| 双辽市| 四平市| 尉氏县| 宜丰县| 资溪县| 和林格尔县| 绥江县| 左贡县| 兴安县|