개발 · 컴퓨터공학

ASE github 코드 환경 설정하기 - 1 [ASE: Large-Scale Reusable Adversarial Skill Embeddings for Physically Simulated Characters]

2024. 10. 30. 11:31
728x90
반응형

 

 

 

GitHub - nv-tlabs/ASE

Contribute to nv-tlabs/ASE development by creating an account on GitHub.

github.com

ASE라는 논문은 애니메이션 동작을 학습하는 논문 중 적대적 기법을 이용한 방법을 제안하는 논문이다.

논문에 대한 상세적인 내용은 생략하고 이 실험 코드를 세팅해볼 것이다.

 

Isaac Gym 설치

우선 물리 시뮬레이션 학습을 isaac gym이라는 엔비디아의 프로그램을 설치해달라고 되어있다.

 

하지만 이런.. deprecated되었다.

논문이 불과 2022 게시인데, 2022버전까지 isaac gym이 나오고 나서 다른 프로그램으로 변경되었다.

isaac lab이라는 것을 사용해야하나보다.

 

물론 이전 버전을 아카이브에서 다운받을 수 있는 모양이지만, 이렇게 된 거 isaac-sim으로 진행을 해보자.

 

Isaac Sim

isaac sim을 사용하기 위한 여러 세팅도 찾아보니 있는 모양이다.

하나의 엔진과도 같은 규모이기 때문에 좀 찾아보고 시도해보자. 

 

Omniverse Launcher 설치

일단 옴니버스라는 런처를 설치해야한다.

 

Isaac Gym 한국어 자료

https://www.youtube.com/playlist?list=PL77aT3OTHDbV_1rSKGjcVTMSpdMPC44yp

 

Isaac Gym 프로그래밍 예제 분석 기초

Isaac Gym 강의

www.youtube.com

 

... 좀 찾아보니 한국인 연구자분이 올려놓은 isaac gym 자료가 있었다.

isaac gym, isaac sim, isaac lab 

많은데 어떤 것을 해야할지 아직은 모르겠으니, isaac gym으로 먼저 시도해보자.

 

Isaac Gym설치 

다시 isaac gym을 설치하고 진행하자.

만약 이 방법이 안된다는게 입증되면 그때 다른 방법을 시도해보는 걸로.

 

deprecated 되었다는 창에서 archive 다운로드 버튼을 누른다.

 

밑에 라이선스 동의를 해주고.

 

isaac gym 다운로드를 받는다.

여기서 이후 나온 버전인 isaac sim의 경우 window를 지원하지만,

isaac gym은 윈도우 버전이 없으므로 윈도우에서는 WSL2로 ubuntu 환경을 만들고 진행할 것이다.

 

WSL2는 window powershell에서 다운 받고 업데이트 해주면 설치 가능하다.

 

WSL 설치

wsl --install
wsl --set-default-version 2

powershell에서 WSL 2 설치 

sudo apt update && sudo apt upgrade

계정 생성 후 apt 업데이트 

 

WSL로 우분투를 정상적으로 설치하였다면, 

파일 탐색기에서도 찾을 수 있는데,

 

다운로드 받은 isaac gym tar.gz 파일을 WSL ubuntu 환경으로 옮겨준다. 

 

Isaac Gym 설치

조금 걸리는게 있다면 isaac gym의 제공 버전은 ubuntu 18.04, 20.04 인데 

현재 WSL로 설치한 ubuntu가 22.04인 것이다. 

불안하긴 하지만 시도해보자.

 

tar -xf IsaacGym_Preview_4_Package.tar.gz

isaac gym 패키지를 푼다.

 

풀면 내부 구조는 이렇게 되어있다.

 

Isaac Gym test 

테스트를 해보는 방법이 있다는데, 

 

일단 모듈 설치를 하자.

 

conda 환경 만들기

conda create --name issacgym python=3.8

 

conda activate issacgym

 

Issac Gym Install

index.html 로 docs 페이지를 들어가면 설치 방법을 알려준다.

 

pip install -e .

python 폴더로 들어가서 pip로 설치. 

 

pip show isaacgym

이렇게 isaacgym 설치를 확인한다.

 

그리고 python joint_monkey.py를 실행해봤지만, 안된다.

 

conda 환경 재설정

보니까 isaac gym에서 제공하는 conda 생성 코드가 있었다.

 

./create_conda_env_rlgpu.sh

이걸로 실행해보자.

 

 

https://ricespoon.tistory.com/m/42

 

[번역] Isaac Gym - docs 문서 살펴보기

Isaac Gym을 다운로드 및 설치 후 파일을 열면 docs라는 이름의 폴더를 확인할 수 있다. 폴더 아래에는 html 형식의 파일들이 여러개 있는데 파일 하나를 선택하여 더블클릭하면 브라우저에서 GUI에서

ricespoon.tistory.com

 

참고로 한국어 사용자 중에서도 isaac gym에 대한 참고할 만한 포스팅이 꽤나 많았다.

역시 로봇 공학 분야와 관련된 툴이라서 그런가?

 

여기서도 흔히 발생하는 아나콘다 에러들에 대해서 다루고 있는데 많은 도움이 될 것 같다.

 

conda activate rlgpu

설치가 되었다면 만든 환경 rlgpu로 들어가자

 

isaac gym example 실행

이 환경에서 다시 예제를 실행해보자. 

 

여전히 libpython3.7m.so.1.0 에러가 난다.

아까 참고한다는 포스팅에 이 에러에 대한 해결책을 제시해주었다.

 

sudo apt install libpython3.7

apt로 libpython을 설치한다는 것.

하지만 아쉽게도 ubuntu 20.04 버전부터 해당 라이브러리는 없다고 한다.

 

\home\사용자명\anaconda3\envs\rlgpu\lib

찾아보면 이 위치에 libpython3.7이 있어서 export 명령어로 

 

export LD_LIBRARY_PATH=/home/사용자명/anaconda3/envs/rlgpu/lib

이렇게 설정해주면,

 

이전의 에러는 해결 되었지만, 또 다른 에러다.

 

nvidia-smi를 통해 확인해보니 driver버전이 470.73인데,

 

https://www.youtube.com/watch?v=15yEX0ksN3A&list=PL77aT3OTHDbV_1rSKGjcVTMSpdMPC44yp&index=3

GPU driver가  470.74 이상이어야 한다는 내용이 있었다. 

근데 영상을 보면 그게 문제는 또 아닌 것 같다.

 

문제 원인

https://forums.developer.nvidia.com/t/isaac-gym-on-windows-subsystem-for-linux-wsl/201208/3

 

Isaac Gym on Windows Subsystem for Linux (WSL)

isaacgym docker can run on WSL2

forums.developer.nvidia.com

isaac gym 포럼을 좀 보면 window subsystem WSL에서는 지원하지 않는다는 말이 있다.

그래서 추천하는 방식이 dual booting을 해보라고 한다.

 

듀얼 부팅이라.. 한 번도 해본 적은 없지만, 어려울 것 같진 않다. 

 

https://forums.developer.nvidia.com/t/wsl2-and-isaac-gym-problem/192069

 

Wsl2 and Isaac Gym problem

Hi! I’m actually find some problem running Isaac Gym. I got a nvidia 2070, windows 11 (so there is no problem running graphics application), but when I start an example In python i got: *** Warning: failed to preload CUDA lib *** Warning: failed to prelo

forums.developer.nvidia.com

여기에 나와 동일한 에러가 나는 사람도 있었다. 

 

해결 방법

일단 정리하자면, 포럼에서도 많은 사람들이 WSL2로 시도하였지만, 다들 실패하였다.

 

 

할 수 있는 방법은

첫 번째 듀얼 부팅으로 ubuntu를 설치하는 것.

두 번째 isaac sim으로 실행하는 방법을 찾는 것.

 

일단 첫번 째 방법을 위해서 듀얼 부팅을 해보자. 

728x90
반응형