Quentin Gallouédec
Initial commit
c6929e4
metadata
library_name: stable-baselines3
tags:
  - HalfCheetah-v3
  - deep-reinforcement-learning
  - reinforcement-learning
  - stable-baselines3
model-index:
  - name: RecurrentPPO
    results:
      - task:
          type: reinforcement-learning
          name: reinforcement-learning
        dataset:
          name: HalfCheetah-v3
          type: HalfCheetah-v3
        metrics:
          - type: mean_reward
            value: 792.63 +/- 537.36
            name: mean_reward
            verified: false

RecurrentPPO Agent playing HalfCheetah-v3

This is a trained model of a RecurrentPPO agent playing HalfCheetah-v3 using the stable-baselines3 library and the RL Zoo.

The RL Zoo is a training framework for Stable Baselines3 reinforcement learning agents, with hyperparameter optimization and pre-trained agents included.

Usage (with SB3 RL Zoo)

RL Zoo: https://github.com/DLR-RM/rl-baselines3-zoo
SB3: https://github.com/DLR-RM/stable-baselines3
SB3 Contrib: https://github.com/Stable-Baselines-Team/stable-baselines3-contrib

Install the RL Zoo (with SB3 and SB3-Contrib):

pip install rl_zoo3
# Download model and save it into the logs/ folder
python -m rl_zoo3.load_from_hub --algo ppo_lstm --env HalfCheetah-v3 -orga qgallouedec -f logs/
python -m rl_zoo3.enjoy --algo ppo_lstm --env HalfCheetah-v3  -f logs/

If you installed the RL Zoo3 via pip (pip install rl_zoo3), from anywhere you can do:

python -m rl_zoo3.load_from_hub --algo ppo_lstm --env HalfCheetah-v3 -orga qgallouedec -f logs/
python -m rl_zoo3.enjoy --algo ppo_lstm --env HalfCheetah-v3  -f logs/

Training (with the RL Zoo)

python -m rl_zoo3.train --algo ppo_lstm --env HalfCheetah-v3 -f logs/
# Upload the model and generate video (when possible)
python -m rl_zoo3.push_to_hub --algo ppo_lstm --env HalfCheetah-v3 -f logs/ -orga qgallouedec

Hyperparameters

OrderedDict([('batch_size', 64),
             ('clip_range', 0.1),
             ('ent_coef', 0.000401762),
             ('gae_lambda', 0.92),
             ('gamma', 0.98),
             ('learning_rate', 2.0633e-05),
             ('max_grad_norm', 0.8),
             ('n_envs', 1),
             ('n_epochs', 20),
             ('n_steps', 512),
             ('n_timesteps', 1000000.0),
             ('normalize', True),
             ('policy', 'MlpLstmPolicy'),
             ('policy_kwargs',
              'dict( log_std_init=-2, ortho_init=False, activation_fn=nn.ReLU, '
              'net_arch=dict(pi=[256, 256], vf=[256, 256]) )'),
             ('vf_coef', 0.58096),
             ('normalize_kwargs', {'norm_obs': True, 'norm_reward': False})])