microrts-py
Science Score: 44.0%
This score indicates how likely this project is to be science-related based on various indicators:
-
✓CITATION.cff file
Found CITATION.cff file -
✓codemeta.json file
Found codemeta.json file -
✓.zenodo.json file
Found .zenodo.json file -
○DOI references
-
○Academic publication links
-
○Academic email domains
-
○Institutional organization owner
-
○JOSS paper metadata
-
○Scientific vocabulary similarity
Low similarity (14.6%) to scientific vocabulary
Repository
Basic Info
- Host: GitHub
- Owner: marcelo-lemos
- License: mit
- Language: Python
- Default Branch: master
- Size: 44.1 MB
Statistics
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
- Releases: 0
Metadata Files
README.md
Enhancing Deep Reinforcement Learning for Scale Flexibility in Real-Time Strategy Games
This repository contains the code and supplementary materials for the paper Enhancing Deep Reinforcement Learning for Scale Flexibility in Real-Time Strategy Games.
Cite us
If you find this work useful in your research, please consider citing our paper:
@article{lemos2025enhancing,
title={Enhancing deep reinforcement learning for scale flexibility in real-time strategy games},
author={Lemos, Marcelo Luiz Harry Diniz and Tavares, Anderson Rocha and Marcolino, Leandro Soriano and Chaimowicz, Luiz and others},
journal={Entertainment Computing},
volume={52},
pages={100843},
year={2025},
publisher={Elsevier}
}
Table of Contents
Abstract
Real-time strategy (RTS) games present a unique challenge for AI agents due to the combination of several fundamental AI problems. While Deep Reinforcement Learning (DRL) has shown promise in the development of autonomous agents for the genre, existing architectures often struggle with games featuring maps of varying dimensions. This limitation hinders the agent’s ability to generalize its learned strategies across different scenarios.
This paper proposes a novel approach that overcomes this problem by incorporating Spatial Pyramid Pooling (SPP) within a DRL framework. Leveraging the GridNet architecture’s encoder–decoder structure, the implementation integrates an SPP layer into the critic network of the Proximal Policy Optimization (PPO) algorithm. This SPP layer dynamically generates a standardized representation of the game state, regardless of the initial observation size. As a result, agents effectively adapt their decision-making process to any map configuration.
Our evaluations highlight significant enhancements in model flexibility and efficiency in training agents for various RTS game scenarios, paving the way for more robust and adaptable AI agents capable of excelling in sequential decision problems with variable-size observations.
Getting Started
Prerequisites
Before you begin, ensure you have the following installed: * Python 3.8+ * Poetry * Java 8.0+
Installation
To set up the project, run the following commands:
bash
$ git clone --recursive https://github.com/vwxyzjn/gym-microrts.git && \
cd gym-microrts
poetry install
python hello_world.py
Usage
Running experiments
The script for running the experiments described in our paper is located at experiments/ppogridnetspp.py.
To train and test a model, execute:
bash
python experiments/ppo_gridnet_spp.py
Customizing Parameters
You can customize various experiment parameters directly from the command line, including the maps used for training and evaluation, as well as the SPP layer size of the model. For example, to train the agent on an 8x8 map and test it on both 8x8 and 16x16 maps, use:
bash
python experiments/ppo_gridnet_spp.py --train-maps maps/8x8/basesWorkers8x8.xml --eval-maps maps/8x8/basesWorkers8x8.xml maps/16x16/basesWorkers16x16.xml
For a full list of adjustable parameters, refer to the beginning of the script file.
Reproducing Results
To reproduce our experiments, use the parameter settings specified for each experiment in our paper. Parameters not explicitly mentioned in the paper default to the values provided in the script.
Acknowledgment
This repository was based on the MicroRTS-Py repository by Farama-Foundation.
Owner
- Name: Marcelo Lemos
- Login: marcelo-lemos
- Kind: user
- Repositories: 15
- Profile: https://github.com/marcelo-lemos
Citation (CITATION.cff)
cff-version: 1.2.0 message: "If you use this software, please cite it as below." authors: - family-names: "Huang" given-names: "Shengyi" - family-names: "Ontañón" given-names: "Santiago" - family-names: "Bamford" given-names: "Chris" - family-names: "Grela" given-names: "Lukasz" title: "Gym-μRTS: Toward Affordable Full Game Real-time Strategy Games Research with Deep Reinforcement Learning" version: 0.3.2 doi: 10.13140/RG.2.2.18639.82081/1 date-released: 2021-07-28 url: "https://arxiv.org/abs/2105.13807"
GitHub Events
Total
- Push event: 1
Last Year
- Push event: 1
Dependencies
- nvidia/cuda 11.3.1-runtime-ubuntu20.04 build