ABOUT ME

-

Today
-
Yesterday
-
Total
-
  • 4. Malmo 설치 (우분투, 윈도우)
    Reinforcement Learning/마인크래프트로 배우는 강화학습 2021. 7. 19. 00:36

    Malmo Platform
    Go to the Pig Envrionment
    MazeRunner Envrionment

     

    Malmo는 마이크로소프트에서 개발한 마인크래프트 인공지능 플랫폼입니다. 

    파이썬, C++, JAVA를 통해 구현한 코드로 게임의 에이전트를 제어할 수 있게 됩니다.

    그럼 Malmo를 설치해보겠습니다. 

     

    (1) 우분투에서의 Malmo 설치

    터미널을 실행해서 다음과 같이 코드를 입력합니다. 

    sudo apt-get install libboost-all-dev libpython3.5 openjdk-8-jdk ffmpeg python-tk python-imaging-tk
    
    sudo update-ca-certificates -f

    저희는 이미 앞서 우분투에 필요한 패키지들을 설치할 때 미리 설치를 다 했습니다. 혹시나 빠진 것이 있을 수 있으니 다시 터미널에 입력해보세요. 

     

    https://github.com/microsoft/malmo/releases/tag/0.37.0

     

    Release MalmoEnv · microsoft/malmo

    With new Python only implementation of Open AI gym environment.

    github.com

    이제 마이크로소프트의 malmo github 링크로 들어갑니다. 

    저희는 우분투 20.04를 설치했지만 위 리스트에 없으므로 가장 최신인 Malmo-0.37.0-Linux-Ubuntu-18.04-64bit 버전을 눌러서 다운로드 합니다. 경로는 home으로 해주세요 :)

     

    그리고 압축을 풀어주고 압축을 푼 폴더의 이름을 MalmoPlatform으로 바꿉니다. 

    그리고 터미널을 실행하고 다음과 같이 커맨드를 입력합니다. 

    gedit ~/.bashrc

     

    맨 아랫줄에 다음과 같이 입력합니다. 

    export JAVA_HOME=/usr/lib/jvm/java-8-openjdk-amd64/
    export MALMO_XSD_PATH=~/MalmoPlatform/Schemas

    저장 후, 터미널에 다음과 같이 입력합니다. 변경사항을 적용하기 위한 커맨드입니다. 

    source ~/.bashrc

    그 후, MalmoPlatform/Minecraft로 들어가셔서 터미널을 열어줍니다. 

    cd 커맨드를 이용해 이동하셔도 됩니다.

    cd MalmoPlatform/Minecraft

    이제 클라이언트를 실행해줍니다. 

    ./launchClient.sh

    그러면 Malmo가 설치되기 시작합니다. 설치가 다 되면 자동으로 실행이 되며, 종료 후 또 실행을 할 때 lauchClient.sh를 입력하시면 됩니다. 

     

    이제 Malmo가 잘 설치되었는지 테스트 해보겠습니다. 

    Ctrl + Shift + E로 터미널을 분리시킨 다음 한 곳에서는 ./launchClient.sh를 입력하고 다른 터미널에서는 다음과 같이 입력해서 파이썬 예제 폴더로 이동해주세요

    cd ..
    cd Python_Examples
    ls

    그리고 ls를 입력하시면 다음 그림과 같이 수많은 예제파일들이 나오게 됩니다. 

    MazeRunner.py 라는 파일이 왠지 실행하고 싶어지네요. 한 번 실행해봅시다!

    python MazeRunner.py

    그러면 Malmo 플랫폼이 반응하면서 MazeRunner 환경이 실행됩니다. 

    스스로 움직이는 에이전트가 신기하지 않나요?

    나중에 에이전트가 어떠한 원리로 학습을 하는지 배울 것입니다. 

    여기까지 설치가 완료되었다면 거의 절반은 한 것입니다!!!

    더 흥미로운 환경들도 있으니 다음 포스트를 기대해주세요 ㅎㅎ

     

     

    (2) 윈도우에서의 Malmo 설치

    저희는 추후에 설치할 MineRL 환경을 위해 우분투 환경을 사용하고 있었습니다. 

    하지만 윈도우에서도 Malmo와 MineRL 환경을 사용할 수 있습니다. 단지 설치가 우분투보다 조금 더 번거롭습니다. 

    Malmo 환경을 사용하는 것은 상관없지만 MineRL 환경의 경우 윈도우에서 버그가 있는 편이라, 우분투를 사용하는 것을 권장드립니다. 

     

    [1] 7-Zip 설치

    https://www.7-zip.org/

    위 링크로 들어가서 자신의 운영체제의 비트에 맞게 설치파일을 다운로드 받고 설치해줍니다. 

     

    [2] FFMpeg 설치 및 환경변수 설정

    https://www.gyan.dev/ffmpeg/builds/ffmpeg-git-essentials.7z

    마찬가지로 위 링크를 클릭해서 파일을 다운받은 후 C 드라이브에 압축을 풀어줍니다. 

    이제 환경변수를 설정해주어야 합니다. 윈도우키를 눌러서 환경 변수라고 검색한 후 실행해주세요

    환경 변수를 눌러줍니다. 그리고 Path를 더블 클릭합니다. 

    그리고 새로 만들기를 누른 후 다음의 경로를 복사해서 붙여넣습니다. 

    C:\ffmpeg-2021-07-18-git-694545b6d5-essentials_build\bin

    확인을 누르시면 환경변수가 설정된 것입니다. 

     

    [3] OpenJDK-8 설치 및 환경변수 설정

    마찬가지로 OpenJDK 8을 설치해서 환경변수를 설정해야 합니다. 

    https://github.com/ojdkbuild/ojdkbuild

    위 링크로 들어가셔서 java-1.8.0-openjdk-1.8.0.292-1.b10.ojdkbuild.windows.x86_64.msi (sha256) 파일을 다운받고 설치합니다. 그러면 자바의 경로가 다음과 같을 것입니다. 

    C:\Program Files\ojdkbuild\java-1.8.0-openjdk-1.8.0.292-1

    환경변수 편집에서 JAVA_HOME 이라는 변수 이름을 만들고 경로를 입력해서 확인을 누릅니다. 

     

    [4] 윈도우용 MALMO 설치 및 MALMO_XSD_PATH 환경변수 설정

    https://github.com/microsoft/malmo/releases/tag/0.37.0

    우분투 버전을 설치했던 것처럼 Malmo-0.37.0-Windows-64bit_withBoost_Python3.7.zip 버전을 다운받은 후 아무 곳에나 압축을 풀어줍니다. 

    압축을 풀고 마찬가지로 이름을 MalmoPlatform으로 바꿔준 후, 환경변수를 추가합니다. 저의 경우에는 바탕화면에 압축을 풀었습니다. 

    이제 Minecraft 경로로 이동해서 launchClient.bat을 실행하고 Malmo를 설치합니다.

     

    [5] 파이썬 예제 테스트

    설치가 완료되었다면 명령 프롬프트를 실행해서 파이썬 예제가 잘 실행되는지 확인합니다.

    댓글

Designed by Tistory.