{"about":{"site":"https://codewithpapers.app","non_affiliation":"Code with Papers and Syntology are not affiliated with, endorsed by, or sponsored by Papers with Code, Meta, or the pwc-archive mirror.","licence":"CC BY-SA 4.0","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","attribution":"https://codewithpapers.app/attribution","modified":"archive material modified by Syntology; see the attribution page"},"url":"/paper/elf-an-extensive-lightweight-and-flexible","title":"ELF: An Extensive, Lightweight and Flexible Research Platform for Real-time Strategy Games","arxiv_id":"1707.01067","date":"2017-07-04","proceeding":"NeurIPS 2017 12","authors":["Yuandong Tian","Qucheng Gong","Wenling Shang","Yuxin Wu","C. Lawrence Zitnick"],"abstract":"In this paper, we propose ELF, an Extensive, Lightweight and Flexible\nplatform for fundamental reinforcement learning research. Using ELF, we\nimplement a highly customizable real-time strategy (RTS) engine with three game\nenvironments (Mini-RTS, Capture the Flag and Tower Defense). Mini-RTS, as a\nminiature version of StarCraft, captures key game dynamics and runs at 40K\nframe-per-second (FPS) per core on a Macbook Pro notebook. When coupled with\nmodern reinforcement learning methods, the system can train a full-game bot\nagainst built-in AIs end-to-end in one day with 6 CPUs and 1 GPU. In addition,\nour platform is flexible in terms of environment-agent communication\ntopologies, choices of RL methods, changes in game parameters, and can host\nexisting C/C++-based game environments like Arcade Learning Environment. Using\nELF, we thoroughly explore training parameters and show that a network with\nLeaky ReLU and Batch Normalization coupled with long-horizon training and\nprogressive curriculum beats the rule-based built-in AI more than $70\\%$ of the\ntime in the full game of Mini-RTS. Strong performance is also achieved on the\nother two games. In game replays, we show our agents learn interesting\nstrategies. ELF, along with its RL platform, is open-sourced at\nhttps://github.com/facebookresearch/ELF.","url_abs":"http://arxiv.org/abs/1707.01067v2","url_pdf":"http://arxiv.org/pdf/1707.01067v2.pdf","source":{"archive":"pwc-archive (Hugging Face), CC BY-SA 4.0","snapshot":"2025-07-28","licence_url":"https://creativecommons.org/licenses/by-sa/4.0/legalcode","row_kind":"abstracts"},"code_links":[{"paper_slug":"elf-an-extensive-lightweight-and-flexible","repo_url":"https://github.com/facebookresearch/ELF","is_official":1,"mentioned_in_paper":1,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}},{"paper_slug":"elf-an-extensive-lightweight-and-flexible","repo_url":"https://github.com/GaoFangshu/ELF-example","is_official":0,"mentioned_in_paper":0,"mentioned_in_github":1,"framework":"pytorch","reach":{"status":"unanswered"}}],"tasks":[{"task_slug":"atari-games","task_name":"Atari Games"},{"task_slug":null,"task_name":"GPU"},{"task_slug":"real-time-strategy-games","task_name":"Real-Time Strategy Games"},{"task_slug":"reinforcement-learning","task_name":"Reinforcement Learning"},{"task_slug":"reinforcement-learning-1","task_name":"Reinforcement Learning (RL)"},{"task_slug":"starcraft","task_name":"Starcraft"},{"task_slug":"reinforcement-learning-2","task_name":"reinforcement-learning"}],"methods":[{"method_slug":"batch-normalization","method_name":"Batch Normalization"},{"method_slug":"relu","method_name":"ReLU"}],"datasets_introduced":[],"methods_introduced":[],"results":[],"syntology":{"syntology_url":"https://syntology.ai/paper/1707.01067","atlas_url":"https://app.syntology.ai/?focus=1707.01067","mcp":null,"developers":"https://syntology.ai/developers"},"arxiv_metadata":null,"syntology_extracted_results":null}