Skip to content

Commit

Permalink
Added DMC to docs
Browse files Browse the repository at this point in the history
  • Loading branch information
TheEimer committed Jul 5, 2023
1 parent 818c262 commit fa80e3d
Show file tree
Hide file tree
Showing 10 changed files with 125 additions and 6 deletions.
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -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:
Expand Down
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
4 changes: 4 additions & 0 deletions docs/source/environments/data/tab_overview_environments.csv
Original file line number Diff line number Diff line change
Expand Up @@ -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)"
7 changes: 6 additions & 1 deletion docs/source/environments/environment_families/box2d.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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.

Expand Down
28 changes: 24 additions & 4 deletions docs/source/environments/environment_families/classic_control.rst
Original file line number Diff line number Diff line change
Expand Up @@ -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.
Expand All @@ -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.
Expand All @@ -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.
Expand All @@ -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,
Expand Down
81 changes: 81 additions & 0 deletions docs/source/environments/environment_families/dmc.rst
Original file line number Diff line number Diff line change
@@ -0,0 +1,81 @@
CARL DMC Environments
######################
CARL includes the Finger, Fish, Quadruped and Walker environments from the `DeepMind Control Suite <https://github.com/deepmind/dm_control>`_.
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
9 changes: 9 additions & 0 deletions docs/source/environments/environment_families/index.rst
Original file line number Diff line number Diff line change
Expand Up @@ -46,6 +46,15 @@ like joint strength or torso mass

brax

DeepMind Control Suite
----
Selected environment from the `DeepMind Control Suite <https://github.com/deepmind/dm_control>`_ with controllable physics.

.. toctree::
:maxdepth: 2

dmc

Mario
-----
`Super Mario (TOAD-GAN) <https://github.com/Mawiszus/TOAD-GAN>`_, a procedurally generated jump'n'run game with control
Expand Down

0 comments on commit fa80e3d

Please sign in to comment.