Skip to content

Commit 405abed

Browse files
committed
495 Docs Updated (#498)
1 parent 0857df9 commit 405abed

File tree

4 files changed

+66
-41
lines changed

4 files changed

+66
-41
lines changed

docs/source/contributing_guide/index.rst

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -9,6 +9,9 @@ Publishing your contribution
99
If you added something to Revolve2 that you would like to share with other people, you can do so by creating a `pull request <https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests>`_ (PR) on `GitHub <https://github.com/ci-group/revolve2/pulls>`_.
1010
The first time you make a contribution to a Revolve2 package your PR should add your name to the ``authors`` list in that package's ``pyproject.toml``.
1111

12+
Note that a general heuristic is, if your addition adds a dependency of another revolve package to the existing dependencies, you might not want to structure it that way.
13+
For a guideline what can depend on what, look at the package diagram on the main page.
14+
1215
----------------------
1316
Developer installation
1417
----------------------

docs/source/getting_started/index.rst

Lines changed: 56 additions & 41 deletions
Original file line numberDiff line numberDiff line change
@@ -20,63 +20,78 @@ Based on your research topic, certain functionalities in Revolve2 may be of inte
2020
A good starting point to delve deeper into Revolve2's inner workings is the example directory found in the repository.
2121
Some examples come in two versions: one with and one without a database.
2222
It is recommended to explore the examples without the database first to better grasp the significance of this addition.
23+
The examples are structured in order of progression.
24+
Starting from the beginning will give you a good understanding once you reached the part that is relevant to you.
25+
You will find a more thorough explanation of the examples in their respective readme`s.
2326

2427
.. list-table:: Revolve2 examples
2528
:widths: 25 50 25
2629
:header-rows: 1
2730

2831
* - Example
2932
- Contents
30-
- Prequisite examples
31-
* - **Simulation**
33+
- Prerequisite examples
34+
* - **1 Simulator Basics**
3235
-
3336
-
34-
* - simulate single robot
37+
* - 1a simulate single robot
3538
- Simulate and visualize a single modular robot.
3639
- \-
37-
* - evaluate single robot
38-
- Evaluate a robot by simulating it and calculating its displacement.
39-
- :code:`simulate single robot`
40-
* - evaluate multiple isolated robots
41-
- Evaluate multiple non-interacting robots concurrently.
42-
- :code:`evaluate single robot`
43-
* - evaluate multiple interacting robots
44-
- Evaluate multiple interacting robots.
45-
- :code:`evaluate single robot`
46-
* - evaluate multiple isolated robots
47-
- Evaluate multiple non-interacting robots concurrently.
48-
- :code:`evaluate single robot`
49-
* - custom brain
50-
- Design your own brain and test it in simulation.
51-
- :code:`simulate single robot`
52-
* - custom terrain
40+
* - 1b custom terrain
5341
- Design your own terrain and test it in simulation
54-
- :code:`simulate single robot`
55-
* - **Experiments**
56-
-
57-
-
58-
* - experiment setup
42+
- :code:`1a simulate single robot`
43+
* - **2 Modular Robot Basics**
44+
-
45+
-
46+
* - 2a custom brain
47+
- Design your own brain and test it in simulation.
48+
- :code:`1a simulate single robot`
49+
* - 2b brain with feedback
50+
- Design a custom brain that takes sensory input.
51+
- :code:`1a simulate single robot`, :code:`2a custom brain`
52+
* - **3 Experiment Foundation**
53+
-
54+
-
55+
* - 3a experiment setup
5956
- Set up your first experiment.
6057
- \-
61-
* - simple ea xor
58+
* - 3b evaluate single robot
59+
- Evaluate a robot by simulating it and calculating its displacement.
60+
- :code:`1a simulate single robot`
61+
* - 3c evaluate multiple isolated robots
62+
- Evaluate multiple non-interacting robots concurrently.
63+
- :code:`3b evaluate single robot`
64+
* - 3d evaluate multiple interacting robots
65+
- Evaluate multiple interacting robots.
66+
- :code:`3b evaluate single robot`
67+
* - **4 Example Experiment Setups**
68+
-
69+
-
70+
* - 4a simple ea xor
6271
- Use an evolutionary algorithm to train a neural network to perform XOR.
63-
- :code:`experiment setup`
64-
* - simple ea xor database
65-
- Similar to :code:`simple ea xor`, but now using a database to store experiment results.
72+
- :code:`3a experiment setup`
73+
* - 4b simple ea xor database
74+
- Similar to :code:`4a simple ea xor`, but now using a database to store experiment results.
6675
Learn how to read the database for e.g. plotting or recovering crashed experiments.
67-
- :code:`simple ea xor`
68-
* - robot bodybrain ea
76+
- :code:`4a simple ea xor`
77+
* - 4c robot bodybrain ea
6978
- Optimize the bodies and brains of modular robots using an evolutionary algorithm.
70-
- :code:`evaluate multiple isolated robots`, :code:`simple ea xor`
71-
* - robot bodybrain ea database
72-
- Similar to :code:`robot bodybrain ea`, but now using a database to store experiment results.
73-
- :code:`robot bodybrain ea`, :code:`simple ea xor database`
74-
* - robot brain cmaes
79+
- :code:`3c evaluate multiple isolated robots`, :code:`4a simple ea xor`
80+
* - 4d robot bodybrain ea database
81+
- Similar to :code:`4c robot bodybrain ea`, but now using a database to store experiment results.
82+
- :code:`4c robot bodybrain ea`, :code:`4b simple ea xor database`
83+
* - 4e robot brain cmaes
7584
- Optimize the brains of modular robots using CMA-ES.
76-
- :code:`evaluate multiple isolated robots`, :code:`simple ea xor`
77-
* - robot brain cmaes database
78-
- Similar to :code:`robot brain cmaes`, but now using a database to store experiment results.
79-
- :code:`robot brain cmaes`, :code:`simple ea xor database`
80-
* - run physical robot manually
85+
- :code:`3c evaluate multiple isolated robots`, :code:`4a simple ea xor`
86+
* - 4f robot brain cmaes database
87+
- Similar to :code:`4e robot brain cmaes`, but now using a database to store experiment results.
88+
- :code:`4e robot brain cmaes`, :code:`4b simple ea xor database`
89+
* - **5 Physical Modular Robots**
90+
-
91+
-
92+
* - 5a physical robot remote
93+
- Learn how to use your evolved robots in the physical world.
94+
- :code:`1a simulate single robot`
95+
* - 5b compare simulated and physical robot
8196
- Learn how to use your evolved robots in the physical world.
82-
- :code:`simulate single robot`
97+
- :code:`5a physical robot remote`

docs/source/index.rst

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,6 +4,13 @@ Revolve2 documentation
44

55
Revolve2 is a collection of Python packages used for researching evolutionary algorithms and modular robotics.
66
Its primary features are a modular robot framework, an abstraction layer around physics simulators, and evolutionary algorithms.
7+
The structure of the packages in Revolve2 is as follows:
8+
9+
.. image:: package_diagram.png
10+
:width: 700px
11+
:height: 500px
12+
:align: center
13+
714

815
Revolve2's code resides at `<https://github.com/ci-group/revolve2>`_.
916

docs/source/package_diagram.png

150 KB
Loading

0 commit comments

Comments
 (0)