openfront-rl-agent / README.md
JoshuaFreeman's picture
Upload README.md with huggingface_hub
e6e5733 verified
|
raw
history blame
1.91 kB
---
license: mit
tags:
- reinforcement-learning
- ppo
- openfront
- game-ai
---
# OpenFront RL Agent
PPO-trained agent for [OpenFront.io](https://openfront.io), a multiplayer territory control game.
## Training Details
- **Algorithm:** PPO (Proximal Policy Optimization)
- **Architecture:** Actor-Critic with shared backbone (512→512→256)
- **Observation dim:** 80
- **Max neighbors:** 16
- **Maps:** plains, big_plains, world, giantworldmap, ocean_and_land, half_land_half_ocean, europe, europeclassic, northamerica, africa, asia, australia, southamerica, mediterranean, britannia, britanniaclassic, eastasia, oceania, pangaea, mena, aegean, alps, amazonriver, amazonriverwide, arctic, baikal, beringstrait, betweentwoseas, blacksea, bosphorusstraits, deglaciatedantarctica, falklandislands, faroeislands, fourislands, gatewaytotheatlantic, gulfofstlawrence, halkidiki, hawaii, iceland, italia, japan, lemnos, lisbon, manicouagan, niledelta, passage, sanfrancisco, straitofgibraltar, straitofhormuz, surrounded, thebox, theboxplus, tourney1, tourney2, tourney3, tourney4, tradersdream, twolakes, worldrotated, yenisei, achiran, mars, milkyway, montreal, newyorkcity, pluto, reglaciatedantarctica (random per episode)
- **Opponents:** 2 Easy bots
- **Parallel envs:** 8
- **Learning rate:** 0.00015
- **Rollout steps:** 512
- **Updates trained:** 2750
- **Global steps:** 11264000
- **Best mean reward:** 2761.6309762120245
## Final Training Metrics
- **Mean reward:** 1866.676198823452
- **Mean episode length:** 35228.65
- **Loss:** 17.78866958618164
## Usage
```python
from train import ActorCritic
import torch
model = ActorCritic(obs_dim=80, max_neighbors=16, hidden_sizes=[512, 512, 256])
model.load_state_dict(torch.load("best_model.pt", weights_only=True))
model.eval()
```
## Repository
Trained from [josh-freeman/openfront-rl](https://github.com/josh-freeman/openfront-rl).