Arcade Learning Environment (ALE)

ALE is a well-known environment that simulates a series of more than 63 Atari games [Original Github]. The framework can work without ALE. However, to run successfully the sample codes, we need to install ALE.

It is not straightforward to install ALE on Windows and Mac OS. Therefore, we create a patch to allow ALE working properly in different operating systems. The patch applied the following changes:

  • It is not straightforward to install ALE on Windows and Mac OS. Moreover, the Visual Studio port of IslandMan93 uses outdated ALE (version 0.0.1). Therefore, we created this multi-platform patch for the latest ALE 0.6.0.
  • This patch supports the latest Mac OS (10.12 -> 10.15) and Windows 10 (with ALE 0.6.0).
  • Users can set a configuration for the environment using ale.setString(b'config', b'path_to_config_file').
  • Merge IslandMan93's Visual Studio 2013 port of the ALE 0.0.1 to ALE 0.6.0.
  • This patch is indexed as version 0.6.1.

Installation Guide

  1. Mac OS
    • The following steps are run successfully on Mac OS 10.12 with Python 3.6.3
    • Install Brew
    • /usr/bin/ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
                                                              
    • Install dependencies
    • brew install sdl sdl_image sdl_mixer sdl_ttf smpeg portmidi cmake
                                                              
    • Install ALE from our repository
    • git clone https://github.com/garlicdevs/Arcade-Learning-Environment.git
      cd Arcade-Learning-Environment
      mkdir build && cd build  
      cmake -DUSE_SDL=ON -DUSE_RLGLUE=OFF -DBUILD_EXAMPLES=ON -DMAC_OS=ON ..
      make -j 4
      cd ..
      env MACOSX_DEPLOYMENT_TARGET=10.9 pip3.6 install . 
                                                              

  2. Linux
    • Install dependencies
    • sudo apt-get install libsdl1.2-dev libsdl-gfx1.2-dev libsdl-image1.2-dev cmake
                                                              
    • Install ALE
    • git clone https://github.com/garlicdevs/Arcade-Learning-Environment.git
      cd Arcade-Learning-Environment
      mkdir build && cd build  
      cmake -DUSE_SDL=ON -DUSE_RLGLUE=OFF -DBUILD_EXAMPLES=ON ..
      make -j 4
      cd ..
      pip3.6 install .
                                                              

  3. Windows
    • We run the following steps successfully on Windows 10 (with Visual Studio 2017 and Python 3.6.2)
    • Clone our patch
    • git clone https://github.com/garlicdevs/Arcade-Learning-Environment.git
                                                              
    • Open Visual Studio 2017 -> Open solution ALE.sln in folder visual_studio -> Set configuration (Release|x64) -> build ALE -> build ale_python_interface. If the projects are built successfully, the library ale_python_interface.dll will appear in folder visual_studio\x64\Release\
    • Install ALE
    • cd Arcade-Learning-Environment
      python winsetup.py install
                                                              

Tensorflow

Tensorflow is a well-known deep learning library from Google. We developed the baselines in Fruit API by using Tensorflow. The framework is tested successfully with Tensorflow v1.3.0 - v1.12.0. It is straightforward to install Tensorflow without a GPU. However, with a GPU, it requires extra steps to install it successfully. It requires CUDA and cuDNN. Please note that a specific version of Tensorflow must match with a specific CUDA version. For example, Tensorflow 1.12.0 only works with CUDA 9. We recommend to refer the following link to install Tensorflow with GPUs correctly.

Fruit API

  • Download our library here and unzip it.
  • We recommend to use PyCharm to work with Fruit API. Download PyCharm Professional if you are a student otherwise using community version.
  • Use PyCharm to open the library as described in the following image.
  • figure 1

  • Install dependencies which are listed in requirements.txt. Please use the exact version described in the file.
  • In Mac OS, it may have a problem when installing psutil, please run this command in the terminal if the error occurs.
  • xcode-select --install
                                                            
  • In case of normal usage without modifying the framework, please run the following command to install Fruit API.
  • python setup.py install
                                                            
  • We only tested the framework with Python 3.6.2 and 3.6.3. Other versions are not checked. We recommend to use the same version.