-
4. Malmo 설치 (우분투, 윈도우)Reinforcement Learning/마인크래프트로 배우는 강화학습 2021. 7. 19. 00:36
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
이제 마이크로소프트의 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 설치
위 링크로 들어가서 자신의 운영체제의 비트에 맞게 설치파일을 다운로드 받고 설치해줍니다.
[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] 파이썬 예제 테스트
설치가 완료되었다면 명령 프롬프트를 실행해서 파이썬 예제가 잘 실행되는지 확인합니다.
'Reinforcement Learning > 마인크래프트로 배우는 강화학습' 카테고리의 다른 글
5. 가상환경 설정 및 라이브러리 설치 (우분투) (0) 2021.08.07 3. 개발도구 설치 (0) 2021.07.18 2. 우분투 작업 환경 세팅 (0) 2021.07.17 1. 우분투 설치 (0) 2021.07.17 0. 마인크래프트로 배우는 강화학습 (0) 2021.07.16