Unity의 obstacle-tower-env를 위한 실행 환경 준비(Mac)

3445 단어 ObstacleTowerMacUnity

입문


https://create.unity3d.com/obstacletower의Obstacle Tower환경구조(Mac)노트.

환경

  • PC: MacBook Pro (Retina, 13-inch, Early 2015)
  • OS: macOS Mojave(10.14.3)
  • pipenv: version 2018.11.26
  • brew install pipenv 등에 pipenv를 설치할 수 있습니다.
  • Setup On Mac


    https://github.com/Unity-Technologies/obstacle-tower-env를 참고하여 준비하세요.

    디렉터리 및 Python 준비


    ml-agents는python3.6만 지원하기 때문에python3.6를 사용합니다.
    mkdir obstacle_tower
    cd obstacle_tower
    pipenv --python 3.6
    

    Install Requirements


    필요한 라이브러리를 중앙 집중식으로 설치합니다.
    pipenv install jupyter tensorflow gym Pillow
    

    Unity ML-Agents v0.6


    GitHub에서 직접 설치합니다.
    pipenv install 'git+https://github.com/Unity-Technologies/ml-agents.git#egg=ml-agents&subdirectory=ml-agents'
    

    Install Environments


    obstacletower_v1_osx


    Unity 응용 프로그램의 OSX용 unzip을 다운로드합니다.
    curl -LO https://storage.googleapis.com/obstacle-tower-build/v1/obstacletower_v1_osx.zip
    unzip obstacletower_v1_osx.zip
    rm obstacletower_v1_osx.zip
    

    Clone & Install obstacle-tower-env


    여기 노트북은 나중에 열고 싶으니까 Local에서 Clone을 하고 설치하세요.
    git clone [email protected]:Unity-Technologies/obstacle-tower-env.git
    pipenv install -e obstacle-tower-env
    

    현재 Dir 구성


    다음 Dir 구성은 위 단계에 따라 수행됩니다.
    % tree -L 2
    .
    ├── Pipfile
    ├── Pipfile.lock
    ├── obstacle-tower-env
    │   ├── LICENSE
    │   ├── README.md
    │   ├── banner.png
    │   ├── examples
    │   ├── obstacle_tower_env.egg-info
    │   ├── obstacle_tower_env.py
    │   └── setup.py
    └── obstacletower.app
        └── Contents
    

    가져오기 시작 실행

    obstacle-tower-env/examples/basic_usage.ipynb 환경 설정 여부를 확인합니다.
    우선,jupyter를 시작합니다.
    notebook에서 지정obstacletower.app한 PATH가 필요하므로 PRJ_ROOT 이 환경 변수에서 현재 Dir의 PATH를 설정합니다.
    ※ 예에서는 obstacle-tower-env/examples/ObstacleTower 에서 전개되지만 나중에 사용하는 것을 고려하면 배치하고 싶지 않습니다.
    PRJ_ROOT=$(pwd) pipenv run jupyter-notebook
    
    브라우저가 일어날 것 같아서 엽니다obstacle-tower-env/examples/basic_usage.ipynb.
    다시 쓰기obstacletower.app에 지정된 PATH 섹션입니다.
    env = ObstacleTowerEnv('./ObstacleTower/obstacletower', retro=False)
    
    import os
    env = ObstacleTowerEnv(f'{os.environ["PRJ_ROOT"]}/obstacletower', retro=False)
    
    이런 느낌.
    그리고 만약 직접 실행한다면 나는 움직일 것이라고 생각한다.
    전체적으로 이런 느낌..

    마지막


    나는 Linux에서 Headless 설정을 사용하고 싶지만, xvfb라면 Opengl은 움직일 수 없고, 어떤 것도 일반적인 방법을 사용할 수 없다.
    본 문서에 따르면 AWS에서도 움직일 수 있을 것 같고 열심히 하면 될 것 같지만 하루 정도 걸릴 것 같은 예감이 들기 때문에 일단 간단한 환경부터...

    좋은 웹페이지 즐겨찾기