| --- |
| library_name: stable-baselines3 |
| tags: |
| - FetchPickAndPlaceDense-v4 |
| - deep-reinforcement-learning |
| - reinforcement-learning |
| - stable-baselines3 |
| model-index: |
| - name: TQC |
| results: |
| - task: |
| type: reinforcement-learning |
| name: reinforcement-learning |
| dataset: |
| name: FetchPickAndPlaceDense-v4 |
| type: FetchPickAndPlaceDense-v4 |
| metrics: |
| - type: mean_reward |
| value: -2.07 +/- 1.16 |
| name: mean_reward |
| verified: false |
| license: mit |
| language: |
| - en |
| --- |
| |
| # **TQC** Agent playing **FetchPickAndPlaceDense-v4** |
| - [Github Repository](https://github.com/kuds/rl-fetch) |
| - [Google Colab Notebook](https://colab.research.google.com/github/kuds/rl-fetch/blob/main/Fetch/Pick%20and%20Place/%5BFetch%20Pick%20%26%20Place%5D%20Truncated%20Quantile%20Critics%20(TQC).ipynb) |
| - [Finding Theta - Blog Post](https://www.findingtheta.com/blog/mastering-robotic-manipulation-with-reinforcement-learning-tqc-and-ddpg-for-fetch-environments) |
|
|
|
|
| Then, you can load the model using the following Python code: |
|
|
| ```python |
| import gymnasium as gym |
| from sb3_contrib import TQC |
| from stable_baselines3.common.env_util import make_vec_env |
| |
| gymnasium.register_envs(gymnasium_robotics) |
| |
| # Load the trained model |
| model = TQC.load("best-model.zip") |
| |
| # Create the environment |
| env = make_vec_env("FetchPickAndPlaceDense-v4", n_envs=1) |
| |
| # Reset the environment |
| obs, info = env.reset() |
| |
| # Enjoy the trained agent |
| for _ in range(1000): |
| action, _states = model.predict(obs, deterministic=True) |
| obs, rewards, terminated, truncated, info = env.step(action) |
| if terminated or truncated: |
| obs, info = env.reset() |
| env.render() |
| env.close() |
| ``` |
|
|
| ### Hugging Face Hub |
|
|
| You can also use the Hugging Face Hub to load the model. First, you need to install the Hugging Face Hub library: |
|
|
| ```bash |
| pip install huggingface_hub |
| ``` |
|
|
| Then, you can load the model from the hub using the following code: |
|
|
| ```python |
| from huggingface_hub import hf_hub_download |
| import torch as th |
| from sb3_contrib import TQC |
| from stable_baselines3.common.env_util import make_vec_env |
| |
| gymnasium.register_envs(gymnasium_robotics) |
| |
| # Download the model from the Hub |
| model_path = hf_hub_download(repo_id="kuds/fetch-pick-place-dense-tqc", filename="best-model.zip") |
| |
| # Load the model |
| model = TQC.load(model_path) |
| |
| # Create the environment |
| env = make_vec_env("FetchPickAndPlaceDense-v4", n_envs=1) |
| |
| # Enjoy the trained agent |
| obs = env.reset() |
| for i in range(1000): |
| action, _states = model.predict(obs, deterministic=True) |
| obs, rewards, dones, info = env.step(action) |
| env.render("human") |
| ``` |