LunarLander-v2 deep-reinforcement-learning reinforcement-learning stable-baselines3

PPO Agent playing LunarLander-v2

A trained model of a PPO agent playing LunarLander-v2 using the stable-baselines3 library.

Usage (with Stable-baselines3)

from stable_baselines3 import PPO
from stable_baselines3.common.env_util import make_vec_env
from stable_baselines3.common.evaluation import evaluate_policy

from huggingface_sb3 import load_from_hub


# Download the model checkpoint
model_checkpoint = load_from_hub("ckandemir/ppo-LunarLander-v2", "ppo-LunarLander-v2.zip")
# Create a vectorized environment
env = make_vec_env("LunarLander-v2", n_envs=1)

# Load the model
model = PPO.load(model_checkpoint, env=env)

# Evaluate
print("Evaluating model")
mean_reward, std_reward = evaluate_policy(
    model,
    env,
    n_eval_episodes=10,
    deterministic=True,
)
print(f"Mean reward = {mean_reward:.2f} +/- {std_reward}")

# Start a new episode
obs = env.reset()

try:
    while True:
        action, state = model.predict(obs, deterministic=True)
        obs, reward, done, info = env.step(action)
        env.render()

except KeyboardInterrupt:
    pass