readme: ---
  library_name: stable-baselines3
  tags:
  - LunarLander-v2
  - deep-reinforcement-learning
  - reinforcement-learning
  - stable-baselines3
  model-index:
  - name: PPO
    results:
    - task:
        type: reinforcement-learning
        name: reinforcement-learning
      dataset:
        name: LunarLander-v2
        type: LunarLander-v2
      metrics:
      - type: mean_reward
        value: -54.39 +/- 27.31
        name: mean_reward
        verified: false
  ---
  
  # **PPO** Agent playing **LunarLander-v2**
  This is a trained model of a **PPO** agent playing **LunarLander-v2**
  using the [stable-baselines3 library](https://github.com/DLR-RM/stable-baselines3).
  
  ## Usage (with Stable-baselines3)
  ```python
  from huggingface_sb3 import load_from_hub
  from stable_baselines3 import PPO
  from stable_baselines3.common.evaluation import evaluate_policy
  
  repo_id = "juierror/ppo-LunarLander-v2"
  filename = "ppo-LunarLander-v2.zip"
  
  custom_objects = {
              "learning_rate": 0.0,
              "lr_schedule": lambda _: 0.0,
              "clip_range": lambda _: 0.0,
  }
  
  checkpoint = load_from_hub(repo_id, filename)
  model = PPO.load(checkpoint, custom_objects=custom_objects, print_system_info=True)
  
  eval_env = gym.make("LunarLander-v2")
  mean_reward, std_reward = evaluate_policy(model, eval_env, n_eval_episodes=10, deterministic=True)
  print(f"mean_reward={mean_reward:.2f} +/- {std_reward}")
  ```
  
  ## Render
  ```python
  from colabgymrender.recorder import Recorder
  
  directory = './video'
  env = Recorder(eval_env, directory)
  
  obs = env.reset()
  done = False
  while not done:
    action, _state = model.predict(obs)
    obs, reward, done, info = env.step(action)
  env.play()
  ```