HD-PPO Agent playing Acrobot-v1

This is a trained HD-PPO (Hyperdimensional Proximal Policy Optimization) agent playing Acrobot-v1 using gradient-adaptive Fractional Power Encoding (FPE) with a prune-and-fine-tune pipeline.

Published by LTU-AI.

Pipeline

  1. Train a teacher at D=256 with gradient-adaptive single-beta FPE.
  2. Prune by actor-weight importance through D=256 → 64 → 16.
  3. Fine-tune each pruned checkpoint with PPO.

Published checkpoint: seed 123, compact D=16 model (held-out eval mean reward -84.60 ± 11.41).

Usage

Install dependencies:

pip install -r requirements.txt

Evaluate the local checkpoint:

python enjoy.py --weights hdppo-Acrobot-v1/weights.npz --episodes 10

Render episodes:

python enjoy.py --weights hdppo-Acrobot-v1/weights.npz --render --episodes 3

Record a replay video:

python record_video.py --weights hdppo-Acrobot-v1/weights.npz --output replay.mp4

Load from Hugging Face Hub:

python enjoy.py --weights LTU-AI/hdppo-Acrobot-v1 --episodes 10

Training pipeline

Reproduce the teacher → prune → fine-tune workflow:

python run_prune_finetune_5seed.py

Hyperparameters

{
    "env": "Acrobot-v1",
    "algo": "HD-PPO (gradient-adaptive FPE, discrete)",
    "teacher_D": 256,
    "pruned_D": 16,
    "timesteps_per_stage": 1000000,
    "seed": 123
}

Environment Arguments

{
    "render_mode": "rgb_array"
}

Model files

File Description
hdppo-Acrobot-v1/weights.npz Published actor (+ critic if HD) and FPE encoder (D=16)
hdppo-Acrobot-v1/weights_D256_teacher.npz Teacher checkpoint (D=256)
replay.mp4 Sample rollout video from the published min-D checkpoint
results.json Evaluation summary for the published checkpoint
results_D256_teacher.json Evaluation summary for the teacher
config.yml Training hyperparameters
train_hdppo.py / training modules Self-contained training code

Citation

If you use this model, please cite the HD-PPO / Hybrid-HD-PPO work.

Downloads last month

-

Downloads are not tracked for this model. How to track
Video Preview
loading

Evaluation results