diff --git a/docs/generate_task_docs.py b/docs/generate_task_docs.py index fb7f0f8e2..aaf84952c 100644 --- a/docs/generate_task_docs.py +++ b/docs/generate_task_docs.py @@ -31,19 +31,22 @@ "mobile_manipulation": """# Mobile Manipulation Tasks -These are tasks where a mobile manipulator is used to manipulate objects. This cateogry primarily uses robots with mobile bases like Fetch or Stretch robots""", +These are tasks where a mobile manipulator is used to manipulate objects. This cateogry primarily uses robots with mobile bases like Fetch or Stretch robots. + +For additional tasks, including scene-level mobile manipulation, please check out the [community contributions page](../community_contributions/index.md). +""", "quadruped": """# Quadruped Tasks -These are tasks where a quadruped robot is used for locomotion and/or manipulation. This cateogry primarily uses robots with four legs like the ANYmal or Unitree go robots""", +These are tasks where a quadruped robot is used for locomotion and/or manipulation. This cateogry primarily uses robots with four legs like the ANYmal or Unitree go robots.""", "control": """# Control Tasks -These are classic control tasks where the objective is to control a robot to reach a particular state, similar to the [DM Control suite](https://github.com/deepmind/dm_control) but with GPU parallelized simulation and rendering""", +These are classic control tasks where the objective is to control a robot to reach a particular state, similar to the [DM Control suite](https://github.com/deepmind/dm_control) but with GPU parallelized simulation and rendering.""", "drawing": """# Drawing Tasks -These are tasks where the robot is controlled to draw a specific shape or pattern""", +These are tasks where the robot is controlled to draw a specific shape or pattern.""", } import urllib.request import mani_skill.envs diff --git a/docs/source/_static/env_thumbnails/ManiSkill-HAB_rt_poster.png b/docs/source/_static/env_thumbnails/ManiSkill-HAB_rt_poster.png new file mode 100644 index 000000000..46b148c8d Binary files /dev/null and b/docs/source/_static/env_thumbnails/ManiSkill-HAB_rt_poster.png differ diff --git a/docs/source/_static/env_thumbnails/ManiSkill-HAB_rt_thumb.png b/docs/source/_static/env_thumbnails/ManiSkill-HAB_rt_thumb.png new file mode 100644 index 000000000..9d7738a78 Binary files /dev/null and b/docs/source/_static/env_thumbnails/ManiSkill-HAB_rt_thumb.png differ diff --git a/docs/source/tasks/community_contributions/index.md b/docs/source/tasks/community_contributions/index.md new file mode 100644 index 000000000..cfe1f4143 --- /dev/null +++ b/docs/source/tasks/community_contributions/index.md @@ -0,0 +1,78 @@ + +[asset-badge]: https://img.shields.io/badge/download%20asset-yes-blue.svg +[dense-reward-badge]: https://img.shields.io/badge/dense%20reward-yes-green.svg +[sparse-reward-badge]: https://img.shields.io/badge/sparse%20reward-yes-green.svg +[no-dense-reward-badge]: https://img.shields.io/badge/dense%20reward-no-red.svg +[no-sparse-reward-badge]: https://img.shields.io/badge/sparse%20reward-no-red.svg +[demos-badge]: https://img.shields.io/badge/demos-yes-green.svg +# Community Contributed Projects + +These are tasks and external libraries contributed by the community, built in ManiSkill. +The document here has both a high-level overview/list of each project in a table as well as detailed task cards with video demonstrations after. + +## Task Table +Table of all tasks/environments in this category. Task column is the environment ID, Preview is a thumbnail pair of the first and last frames of an example success demonstration. Max steps is the task's default max episode steps, generally tuned for RL workflows. + + + + + + + + + + + + + + + + + + + + + +

Task

Preview

Dense Reward

Success/Fail Conditions

Demos

Max Episode Steps

ManiSkill-HAB

ManiSkill-HAB

Full Task: 1200-2000

Subtasks: 200

+ +## ManiSkill-HAB + +**[Paper](https://arxiv.org/abs/2412.13211)** | **[Website](https://arth-shukla.github.io/mshab)** | **[Code](https://github.com/arth-shukla/mshab)** | **[Models](https://huggingface.co/arth-shukla/mshab_checkpoints)** | **[Dataset](https://arth-shukla.github.io/mshab/#dataset-section)** + +![dense-reward][dense-reward-badge] +![sparse-reward][sparse-reward-badge] +![demos][demos-badge] +:::{dropdown} Task Card +:icon: note +:color: primary + +**Task Description:** + +ManiSkill-HAB contains 3 long-horizon tasks: +- **TidyHouse**: Move 5 target objects to different open receptacles (e.g. table, counter, etc). +- **PrepareGroceries**: Move 2 objects from the opened fridge to goal positions on the counter, +then 1 object from the counter to the fridge. +- **SetTable**: Move 1 bowl from the closed drawer to the dining table and 1 apple from the +closed fridge to the same dining table. + +These tasks are split into 4 subtasks: Pick Place, Open, and Close. + +**Randomizations:** +- Target object/articulation/goal (depending on subtask) +- Base x/y position and z rotation, arm and torso qpos noise + +**Success Conditions:** +- Pick: Object grasped, end-effector at rest position, robot static +- Place: Object within 15cm of goal position, end-effector at rest position, robot static +- Open: Articulation open, end-effector at rest position, robot static +- Close: Articulation closed, end-effector at rest position, robot static + +**Fail Conditions:** +- Robot exceeds cumulative collision force threshold (5000N for Pick, 7500N for Place, 10,000N for Open/Close) +::: + +
+ +
diff --git a/docs/source/tasks/control/index.md b/docs/source/tasks/control/index.md index 419816b4c..239a2dbb9 100644 --- a/docs/source/tasks/control/index.md +++ b/docs/source/tasks/control/index.md @@ -7,7 +7,7 @@ [demos-badge]: https://img.shields.io/badge/demos-yes-green.svg # Control Tasks -These are classic control tasks where the objective is to control a robot to reach a particular state, similar to the [DM Control suite](https://github.com/deepmind/dm_control) but with GPU parallelized simulation and rendering +These are classic control tasks where the objective is to control a robot to reach a particular state, similar to the [DM Control suite](https://github.com/deepmind/dm_control) but with GPU parallelized simulation and rendering. The document here has both a high-level overview/list of all tasks in a table as well as detailed task cards with video demonstrations after. ## Task Table diff --git a/docs/source/tasks/drawing/index.md b/docs/source/tasks/drawing/index.md index ef36f21fb..2246211d2 100644 --- a/docs/source/tasks/drawing/index.md +++ b/docs/source/tasks/drawing/index.md @@ -7,7 +7,7 @@ [demos-badge]: https://img.shields.io/badge/demos-yes-green.svg # Drawing Tasks -These are tasks where the robot is controlled to draw a specific shape or pattern +These are tasks where the robot is controlled to draw a specific shape or pattern. The document here has both a high-level overview/list of all tasks in a table as well as detailed task cards with video demonstrations after. ## Task Table diff --git a/docs/source/tasks/index.md b/docs/source/tasks/index.md index 8d589de85..699595f5a 100644 --- a/docs/source/tasks/index.md +++ b/docs/source/tasks/index.md @@ -38,4 +38,5 @@ mobile_manipulation/index dextrous/index digital_twins/index drawing/index +community_contributions/index ``` diff --git a/docs/source/tasks/mobile_manipulation/index.md b/docs/source/tasks/mobile_manipulation/index.md index e0f9f97ae..1ee4618cb 100644 --- a/docs/source/tasks/mobile_manipulation/index.md +++ b/docs/source/tasks/mobile_manipulation/index.md @@ -7,7 +7,10 @@ [demos-badge]: https://img.shields.io/badge/demos-yes-green.svg # Mobile Manipulation Tasks -These are tasks where a mobile manipulator is used to manipulate objects. This cateogry primarily uses robots with mobile bases like Fetch or Stretch robots +These are tasks where a mobile manipulator is used to manipulate objects. This cateogry primarily uses robots with mobile bases like Fetch or Stretch robots. + +For additional tasks, including scene-level mobile manipulation, please check out the [community contributions page](../community_contributions/index.md). + The document here has both a high-level overview/list of all tasks in a table as well as detailed task cards with video demonstrations after. ## Task Table diff --git a/docs/source/tasks/quadruped/index.md b/docs/source/tasks/quadruped/index.md index ee5eb8347..dc43c3b20 100644 --- a/docs/source/tasks/quadruped/index.md +++ b/docs/source/tasks/quadruped/index.md @@ -7,7 +7,7 @@ [demos-badge]: https://img.shields.io/badge/demos-yes-green.svg # Quadruped Tasks -These are tasks where a quadruped robot is used for locomotion and/or manipulation. This cateogry primarily uses robots with four legs like the ANYmal or Unitree go robots +These are tasks where a quadruped robot is used for locomotion and/or manipulation. This cateogry primarily uses robots with four legs like the ANYmal or Unitree go robots. The document here has both a high-level overview/list of all tasks in a table as well as detailed task cards with video demonstrations after. ## Task Table diff --git a/figures/environment_demos/ManiSkill-HAB_rt.mp4 b/figures/environment_demos/ManiSkill-HAB_rt.mp4 new file mode 100644 index 000000000..c5710e539 Binary files /dev/null and b/figures/environment_demos/ManiSkill-HAB_rt.mp4 differ diff --git a/pyrightconfig.json b/pyrightconfig.json deleted file mode 100644 index a573e4464..000000000 --- a/pyrightconfig.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "exclude": [ - "**/__pycache__", - "mani_skill/assets", - ], -} \ No newline at end of file