티스토리 뷰

Study/AI

[RL] MuJoCo 2.1.0 무료 공개

생각많은 소심남 2021. 10. 21. 17:33

며칠전에 DeepMind에서 강화학습 벤치마크로 많이 쓰이는 물리엔진인 MuJoCo를 무료로 공개했다.

 

Opening up a physics simulator for robotics

As part of DeepMind's mission of advancing science, we have acquired the MuJoCo physics simulator and are making it freely available for everyone, to support research everywhere.

deepmind.com

이 MuJoCo 엔진이 참 뭐한게 가격은 가격대로 비싸면서, 지원도 잘 안해주고, 뭔가 뒷단에서 필요로 하는 패키지들이 너무 많아 사용하는데 벽이 좀 있었다. 물론 학생들한테는 1년 라이센스를 무료로 제공하기도 했지만, 가끔 이상한 라이센스가 날아오기도 하고, 문제가 생겨도 제대로 지원해주지 않았다. 그와중에 DeepMind에서 이를 무료로 공개하면서 버전도 2.1.0으로 올렸다. (참고로 이전에 포스트로 소개했을때의 버전은 2.0 대 버전으로 해당 버전에서는 여전히 라이센스가 필요하다.)

사실 이 엔진만큼이나 중요한게, Python에서 돌아갈 수 있게끔 Wrapper 패키지인데, 이는 OpenAI에서 mujoco-py라는 패키지로 만들어서 유용하게 사용했었다. 이 패키지도 더이상 관리가 되지 않았었는데, 다행히도 DeepMind 사람이 무료 버전을 mujoco-py에 연결시킬 수 있는 패치를 올려놨다.

 

Update mujoco-py to MuJoCo 2.1 by nimrod-gileadi · Pull Request #640 · openai/mujoco-py

MuJoCo has been updated to version 2.1 (see announcement). Activation keys are no longer required, and there are some minor API changes. This PR updates code generation to support the API changes, ...

github.com

일단 리눅스에서만 확인해봤는데, 잘 되는 것 같다. 만약 리눅스에서 해보려고 하는 사람은 github CLI가 설치되어 있는 상태에서 mujoco py를 source build를 하면 된다. 우선은 source를 받고, 위의 issue를 checkout 해온다.

gh repo clone openai/mujoco-py
gh pr checkout 640

아 그리고 나만 그런건지는 모르겠는데, 아마 설치하다보면 해당 패키지도 필요해서 설치하면 좋을 듯 하다.

sudo apt install libosmesa6-dev
sudo apt install patchelf

그리고 마지막으로 inline으로 mujoco_py 패키지를 import 시키면 빌드가 된다. (물론 빌드를 위한 compile가 설정되어 있어야 한다)

python -c "import mujoco_py"

역시 sample을 돌려보면 정상적으로 수행되는 것을 확인할 수 있다.

import mujoco_py
import gym

env = gym.make('HalfCheetah-v2')
env.reset()

for _ in range(1000):
    env.render()
    env.step(env.action_space.sample())
    
env.close()

사실 Berkeley Deep RL lecture도 계속 강의듣다가 꺼려지는 이유가 MuJoCo 라이센스로 인해서 과제를 할 수 없다는 것이었는데, 이제는 라이센스의 제한없이도 MuJoCo를 마음껏 가지고 놀 수 있다! 만세!!


추가로 기존 버전도 roboti LLC에서 2033년까지 쓸 수 있는 무료 라이센스를 배포하고 있다. 설치 방법은 이전과 동일하게 하면 된다.

 

License

Free license DeepMind has granted Roboti LLC license to provide an unlocked activation key for legacy versions of MuJoCo (2.0 and earlier). This key is available to everyone on the terms of the free license below. It expires on October 18, 2031. Activation

roboti.us

 

댓글