65 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
			
		
		
	
	
			65 lines
		
	
	
		
			11 KiB
		
	
	
	
		
			Markdown
		
	
	
	
	
	
# Metaworld
 | 
						|
 | 
						|
[Metaworld](https://meta-world.github.io/) is an open-source simulated benchmark designed to advance meta-reinforcement learning and multi-task learning, comprising 50 diverse robotic manipulation tasks. The benchmark features a universal tabletop environment equipped with a simulated Sawyer arm and a variety of everyday objects. This shared environment is pivotal for reusing structured learning and efficiently acquiring related tasks.
 | 
						|
 | 
						|
## Step-Based Envs
 | 
						|
 | 
						|
`fancy_gym` makes all metaworld ML1 tasks avaible via the standard gym interface. To access metaworld environments using a different mode of operation (MT1 / ML100 / etc.) please use the functionality provided by metaworld directly.
 | 
						|
 | 
						|
| Name                                     | Description                                                                           | Horizon | Action Dimension | Observation Dimension | Context Dimension |
 | 
						|
| ---------------------------------------- | ------------------------------------------------------------------------------------- | ------- | ---------------- | --------------------- | ----------------- |
 | 
						|
| `metaworld/assembly-v2`                  | A task where the robot must assemble components.                                      | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/basketball-v2`                | A task where the robot must play a game of basketball.                                | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/bin-picking-v2`               | A task involving the robot picking objects from a bin.                                | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/box-close-v2`                 | A task requiring the robot to close a box.                                            | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/button-press-topdown-v2`      | A task where the robot must press a button from a top-down perspective.               | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/button-press-topdown-wall-v2` | A task involving the robot pressing a button with a wall from a top-down perspective. | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/button-press-v2`              | A task where the robot must press a button.                                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/button-press-wall-v2`         | A task involving the robot pressing a button with a wall.                             | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/coffee-button-v2`             | A task where the robot must press a button on a coffee machine.                       | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/coffee-pull-v2`               | A task involving the robot pulling a lever on a coffee machine.                       | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/coffee-push-v2`               | A task involving the robot pushing a component on a coffee machine.                   | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/dial-turn-v2`                 | A task where the robot must turn a dial.                                              | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/disassemble-v2`               | A task requiring the robot to disassemble an object.                                  | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/door-close-v2`                | A task where the robot must close a door.                                             | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/door-lock-v2`                 | A task involving the robot locking a door.                                            | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/door-open-v2`                 | A task where the robot must open a door.                                              | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/door-unlock-v2`               | A task involving the robot unlocking a door.                                          | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/hand-insert-v2`               | A task requiring the robot to insert a hand into an object.                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/drawer-close-v2`              | A task where the robot must close a drawer.                                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/drawer-open-v2`               | A task involving the robot opening a drawer.                                          | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/faucet-open-v2`               | A task requiring the robot to open a faucet.                                          | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/faucet-close-v2`              | A task where the robot must close a faucet.                                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/hammer-v2`                    | A task where the robot must use a hammer.                                             | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/handle-press-side-v2`         | A task involving the robot pressing a handle from the side.                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/handle-press-v2`              | A task where the robot must press a handle.                                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/handle-pull-side-v2`          | A task requiring the robot to pull a handle from the side.                            | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/handle-pull-v2`               | A task where the robot must pull a handle.                                            | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/lever-pull-v2`                | A task involving the robot pulling a lever.                                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/peg-insert-side-v2`           | A task requiring the robot to insert a peg from the side.                             | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/pick-place-wall-v2`           | A task involving the robot picking and placing an object with a wall.                 | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/pick-out-of-hole-v2`          | A task where the robot must pick an object out of a hole.                             | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/reach-v2`                     | A task where the robot must reach an object.                                          | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/push-back-v2`                 | A task involving the robot pushing an object backward.                                | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/push-v2`                      | A task where the robot must push an object.                                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/pick-place-v2`                | A task involving the robot picking up and placing an object.                          | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/plate-slide-v2`               | A task requiring the robot to slide a plate.                                          | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/plate-slide-side-v2`          | A task involving the robot sliding a plate from the side.                             | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/plate-slide-back-v2`          | A task where the robot must slide a plate backward.                                   | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/plate-slide-back-side-v2`     | A task involving the robot sliding a plate backward from the side.                    | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/peg-unplug-side-v2`           | A task where the robot must unplug a peg from the side.                               | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/soccer-v2`                    | A task where the robot must play soccer.                                              | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/stick-push-v2`                | A task involving the robot pushing a stick.                                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/stick-pull-v2`                | A task where the robot must pull a stick.                                             | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/push-wall-v2`                 | A task involving the robot pushing against a wall.                                    | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/reach-wall-v2`                | A task where the robot must reach an object with a wall.                              | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/shelf-place-v2`               | A task involving the robot placing an object on a shelf.                              | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/sweep-into-v2`                | A task where the robot must sweep objects into a container.                           | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/sweep-v2`                     | A task requiring the robot to sweep.                                                  | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/window-open-v2`               | A task where the robot must open a window.                                            | 500     | 4                | 39                    | 6                 |
 | 
						|
| `metaworld/window-close-v2`              | A task involving the robot closing a window.                                          | 500     | 4                | 39                    | 6                 |
 | 
						|
 | 
						|
## MP-Based Envs
 | 
						|
 | 
						|
All envs also exist in MP-variants. Refer to them using `metaworld_ProMP/<name-v2>` or `metaworld_ProDMP/<name-v2>` (DMP is currently not supported as of now).
 |