ELF is an extensive, lightweight, and flexible platform for game research that allows researchers and developers to train and test their algorithms in various game environments from board games to custom real-time strategy games.

Enabling AI game research for everyone

ELF provides an end-to-end solution for game research. It includes miniature real-time strategy game environments, concurrent simulation, distributed training over thousands of machines, intuitive APIs, web-based visualizations, and a reinforcement learning framework powered by PyTorch.

ELF works with any game that has a C or C++ interface, and is designed to run fast with minimal overhead on a single or multiple CPUs and GPUs.

ELF OpenGo

ELF OpenGo is a reimplementation of AlphaGoZero / AlphaZero. It was trained on 2,000 GPUs over a two week period, and has achieved high performance. With only a single GPU, the ELF OpenGo bot played with four top 30 professional players and won 14-0 in slow games that impose no constraints on time spent for human players.

Read more about ELF OpenGo on our Engineering Blog.

Get Started


  • Install ELF by following the instructions on GitHub.

  • 2

  • Review documentation to familiarize yourself with training, evaluating, and visualizing models on ELF.

  • 3

  • Build, train, and test new algorithms and approaches with the ELF platform.

  • More Tools


    House3D is a rich environment containing thousands of 3D scenes of visually realistic houses with full labeling.

    ELF OpenGo

    ELF OpenGo is an AI bot from Facebook AI Research (FAIR) that has defeated world champion professional Go players.

    Join Us

    Tackle the world's most complex technology challenges

    Join Our Team

    Latest News

    Visit the AI Blog for updates on recent publications, new tools, and more.

    Visit Blog