From fa80e3dda7af960db0270b3e86859c0b872ec5be Mon Sep 17 00:00:00 2001 From: Theresa Eimer Date: Wed, 5 Jul 2023 12:05:20 +0200 Subject: [PATCH] Added DMC to docs --- README.md | 2 +- .../environments/data/screenshots/finger.jpg | Bin 0 -> 26378 bytes .../environments/data/screenshots/fish.jpg | Bin 0 -> 14309 bytes .../data/screenshots/quadruped.jpg | Bin 0 -> 23720 bytes .../environments/data/screenshots/walker.jpg | Bin 0 -> 22365 bytes .../data/tab_overview_environments.csv | 4 + .../environment_families/box2d.rst | 7 +- .../environment_families/classic_control.rst | 28 +++++- .../environments/environment_families/dmc.rst | 81 ++++++++++++++++++ .../environment_families/index.rst | 9 ++ 10 files changed, 125 insertions(+), 6 deletions(-) create mode 100644 docs/source/environments/data/screenshots/finger.jpg create mode 100644 docs/source/environments/data/screenshots/fish.jpg create mode 100644 docs/source/environments/data/screenshots/quadruped.jpg create mode 100644 docs/source/environments/data/screenshots/walker.jpg create mode 100644 docs/source/environments/environment_families/dmc.rst diff --git a/README.md b/README.md index 10df90d5..88a75329 100644 --- a/README.md +++ b/README.md @@ -41,7 +41,7 @@ pip install . This will only install the basic classic control environments, which should run on most operating systems. For the full set of environments, use the install options: ```bash -pip install -e .[box2d, brax, mario, dm_control] +pip install -e .[box2d,brax,mario,dm_control] ``` These may not be compatible with Windows systems. Box2D environment may need to be installed via conda on MacOS systems: diff --git a/docs/source/environments/data/screenshots/finger.jpg b/docs/source/environments/data/screenshots/finger.jpg new file mode 100644 index 0000000000000000000000000000000000000000..b7aa5fc7e6d0d43ef5ed36396dca1e7d901fd4ca GIT binary patch literal 26378 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 aCgI;27c=vLz><0DupAIlT8;a1=Klbz{K};O literal 0 HcmV?d00001 diff --git a/docs/source/environments/data/screenshots/fish.jpg b/docs/source/environments/data/screenshots/fish.jpg new file mode 100644 index 0000000000000000000000000000000000000000..7bd88d1026dc21a7c75d1bd49521eafc0e038236 GIT binary patch literal 14309 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�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 literal 0 HcmV?d00001 diff --git a/docs/source/environments/data/tab_overview_environments.csv b/docs/source/environments/data/tab_overview_environments.csv index 2dec5e5a..be9f9498 100644 --- a/docs/source/environments/data/tab_overview_environments.csv +++ b/docs/source/environments/data/tab_overview_environments.csv @@ -13,5 +13,9 @@ brax,CARLHumanoid,5,"Box(-1.0, 1.0, (17,), float32)","Box(-inf, inf, (304,), flo brax,CARLFetch,9,"Box(-1.0, 1.0, (10,), float32)","Box(-inf, inf, (110,), float32)" brax,CARLGrasp,9,"Box(-1.0, 1.0, (19,), float32)","Box(-inf, inf, (141,), float32)" brax,CARLUr5e,9,"Box(-1.0, 1.0, (6,), float32)","Box(-inf, inf, (75,), float32)" +dmc,CARLDmcFishEnv,14,"Box(-1.0, 1.0, (5,), float64)","Box(-inf, inf, (24,), float32)" +dmc,CARLDmcFingerEnv,18,"Box(-1.0, 1.0, (2,), float64)","Box(-inf, inf, (9,), float32)" +dmc,CARLDmcQuadrupedEnv,14,"Box(-1.0, 1.1, (12,), float64)","Box(-inf, inf, (78,), float32)" +dmc,CARLDmcWalkerEnv,14,"Box(-1.0, 1.0, (6,), float64)","Box(-inf, inf, (24,), float32)" RNA,CARLRnaDesignEnv,5,Discrete(4),"Box(-inf, inf, (11,), float32)" Mario,CARLMarioEnv,4,Discrete(10),"Box(0, 255, (4, 64, 64), uint8)" diff --git a/docs/source/environments/environment_families/box2d.rst b/docs/source/environments/environment_families/box2d.rst index 5009db29..9000b36d 100644 --- a/docs/source/environments/environment_families/box2d.rst +++ b/docs/source/environments/environment_families/box2d.rst @@ -25,9 +25,14 @@ CARL LunarLander Environment ------------------------------ .. image:: ../data/screenshots/lunarlander.jpeg :width: 25% - :align: center + :align: left :alt: Screenshot of CARLLunarLanderEnv +.. image:: ../data/context_generalization_plots/plot_ecdf_CARLLunarLanderEnv.png + :width: 50% + :align: right + :alt: Influence of context settings on an agent trained on the default environment. + Here, the lunar lander should be safely navigated to its landing pad. The lander's body, physics and simulation dynamics can be manipulated via the context features. diff --git a/docs/source/environments/environment_families/classic_control.rst b/docs/source/environments/environment_families/classic_control.rst index 88a9890a..2150b2a7 100644 --- a/docs/source/environments/environment_families/classic_control.rst +++ b/docs/source/environments/environment_families/classic_control.rst @@ -9,9 +9,14 @@ CARL Pendulum Environment ------------------------- .. image:: ../data/screenshots/pendulum.jpeg :width: 25% - :align: center + :align: left :alt: Pendulum Environment +.. image:: ../data/context_generalization_plots/plot_ecdf_CARLPendulumEnv.png + :width: 50% + :align: right + :alt: Influence of context settings on an agent trained on the default environment. + In Pendulum, the agent's task is to swing up an inverted pendulum and balance it at the top from a random position. The action here is the direction and amount of force the agent wants to apply to the pendulum. @@ -25,9 +30,14 @@ CARL CartPole Environment ------------------------- .. image:: ../data/screenshots/cartpole.jpeg :width: 25% - :align: center + :align: left :alt: CartPole Environment +.. image:: ../data/context_generalization_plots/plot_ecdf_CARLCartPoleEnv.png + :width: 50% + :align: right + :alt: Influence of context settings on an agent trained on the default environment. + CartPole, similarly to Pendulum, asks the agent to balance a pole upright, though this time the agent doesn't directly apply force to the pole but moves a cart on which the pole ist placed either to the left or the right. @@ -41,9 +51,14 @@ CARL Acrobot Environment ------------------------- .. image:: ../data/screenshots/acrobot.jpeg :width: 25% - :align: center + :align: left :alt: Acrobot Environment +.. image:: ../data/context_generalization_plots/plot_ecdf_CARLAcrobotEnv.png + :width: 50% + :align: right + :alt: Influence of context settings on an agent trained on the default environment. + Acrobot is another swing-up task with the goal being swinging the end of the lower of two links up to a given height. The agent accomplishes this by actuating the joint connecting both links. @@ -57,9 +72,14 @@ CARL MountainCar Environment ---------------------------- .. image:: ../data/screenshots/mountaincar.jpeg :width: 25% - :align: center + :align: left :alt: MountainCar Environment +.. image:: ../data/context_generalization_plots/plot_ecdf_CARLMountainCarEnv.png + :width: 50% + :align: right + :alt: Influence of context settings on an agent trained on the default environment. + The MountainCar environment asks the agent to move a car up a steep slope. In order to succeed, the agent has to accelerate using the opposite slope. There are two versions of the environment, a discrete one with only "left" and "right" as actions, diff --git a/docs/source/environments/environment_families/dmc.rst b/docs/source/environments/environment_families/dmc.rst new file mode 100644 index 00000000..d29265de --- /dev/null +++ b/docs/source/environments/environment_families/dmc.rst @@ -0,0 +1,81 @@ +CARL DMC Environments +###################### +CARL includes the Finger, Fish, Quadruped and Walker environments from the `DeepMind Control Suite `_. +The context features control the MuJoCo physics engine, e.g. the floor friction. + + +CARL DMC Finger Environment +*************************** +.. image:: ../data/screenshots/finger.jpg + :width: 25% + :align: center + :alt: Screenshot of CARLDmcFinger + + +The agent needs to learn to spin an object using the finger. + + +.. csv-table:: Defaults and Bounds + :file: ../data/context_definitions/CARLDmcFinger.csv + :header-rows: 1 + + + +CARL DMC Fish Environment +********************** +.. image:: ../data/screenshots/fish.jpg + :width: 25% + :height: 100px + :align: center + :alt: Screenshot of CARLDmcFish + + +In Fish, the agent needs to swim as a simulated fish. + + +.. csv-table:: Defaults and Bounds + :file: ../data/context_definitions/CARLDmcFish.csv + :header-rows: 1 + + + +CARL DMC Quadruped Environment +********************** +.. image:: ../data/screenshots/quadruped.jpg + :width: 25% + :align: center + :alt: Screenshot of CARLDmcQuadruped + +.. image:: ../data/context_generalization_plots/plot_ecdf_CARLDmcQuadrupedEnv.png + :width: 50% + :align: right + :alt: Influence of context settings on an agent trained on the default environment. + + +The agent's goal is to walk efficiently with the quadruped robot. + + +.. csv-table:: Defaults and Bounds + :file: ../data/context_definitions/CARLDmcQuadruped.csv + :header-rows: 1 + + + +CARL DMC Walker Environment +***************************** +.. image:: ../data/screenshots/walker.jpg + :width: 25% + :align: left + :alt: Screenshot of CARLDmcWalker + +.. image:: ../data/context_generalization_plots/plot_ecdf_CARLDmcWalkerEnv.png + :width: 50% + :align: right + :alt: Influence of context settings on an agent trained on the default environment. + +The walker robot is supposed to move forward as fast as possible. + + +.. csv-table:: Defaults and Bounds + :file: ../data/context_definitions/CARLDmcWalker.csv + :header-rows: 1 \ No newline at end of file diff --git a/docs/source/environments/environment_families/index.rst b/docs/source/environments/environment_families/index.rst index 71d5f23b..4d390096 100644 --- a/docs/source/environments/environment_families/index.rst +++ b/docs/source/environments/environment_families/index.rst @@ -46,6 +46,15 @@ like joint strength or torso mass brax +DeepMind Control Suite +---- +Selected environment from the `DeepMind Control Suite `_ with controllable physics. + +.. toctree:: + :maxdepth: 2 + + dmc + Mario ----- `Super Mario (TOAD-GAN) `_, a procedurally generated jump'n'run game with control