1
Fork 0

Deployed f569f4c with MkDocs version: 1.6.1

This commit is contained in:
github-actions[bot] 2026-05-20 13:05:42 +00:00
parent f1a349ed55
commit 3cd3e9ea81
56 changed files with 9292 additions and 11367 deletions

View file

@ -9,10 +9,10 @@
<link rel="prev" href="../tracking/">
<link rel="prev" href="../environment/">
<link rel="next" href="../../design/actor-critic/">
<link rel="next" href="../tracking/">
@ -205,7 +205,7 @@
<span class="md-ellipsis">
Documentation
Home
@ -224,15 +224,62 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_2" >
<label class="md-nav__link" for="__nav_2" id="__nav_2_label" tabindex="0">
<span class="md-ellipsis">
Design & Architecture
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_2_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_2">
<span class="md-nav__icon md-icon"></span>
Design & Architecture
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../CONTRIBUTING/" class="md-nav__link">
<a href="../../design/actor-critic/" class="md-nav__link">
<span class="md-ellipsis">
Contribution Guidelines
Actor-Critic Architecture
@ -244,22 +291,23 @@
</li>
<li class="md-nav__item">
<a href="../../DEVELOPMENT/" class="md-nav__link">
<a href="../../design/communication/" class="md-nav__link">
<span class="md-ellipsis">
Development Guide
Communication Scheme
@ -271,22 +319,23 @@
</li>
<li class="md-nav__item">
<a href="../../HPC/" class="md-nav__link">
<a href="../../design/controllers/" class="md-nav__link">
<span class="md-ellipsis">
HPC Guide
Modularity & Topology
@ -298,6 +347,98 @@
</li>
<li class="md-nav__item">
<a href="../../design/input_action_spaces/" class="md-nav__link">
<span class="md-ellipsis">
Input & Action Spaces
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../design/learning_algorithm/" class="md-nav__link">
<span class="md-ellipsis">
Reinforcement Learning Algorithm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../design/reward_function/" class="md-nav__link">
<span class="md-ellipsis">
Reward Function & Observation Space
</span>
</a>
</li>
</ul>
</nav>
</li>
@ -316,17 +457,17 @@
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_5" checked>
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_3" checked>
<label class="md-nav__link" for="__nav_5" id="__nav_5_label" tabindex="0">
<label class="md-nav__link" for="__nav_3" id="__nav_3_label" tabindex="0">
<span class="md-ellipsis">
Api
API Reference
@ -337,12 +478,12 @@
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_5_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_5">
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_3_label" aria-expanded="true">
<label class="md-nav__title" for="__nav_3">
<span class="md-nav__icon md-icon"></span>
Api
API Reference
</label>
@ -354,34 +495,6 @@
<li class="md-nav__item">
<a href="../analysis/" class="md-nav__link">
<span class="md-ellipsis">
Analysis &amp; Plotting Tools
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../environment/" class="md-nav__link">
@ -390,91 +503,7 @@
<span class="md-ellipsis">
Brittle star environment
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../evaluation/" class="md-nav__link">
<span class="md-ellipsis">
Checkpoint &amp; Model Evaluation
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../simulation/" class="md-nav__link">
<span class="md-ellipsis">
Simulation &amp; Evaluation
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../tracking/" class="md-nav__link">
<span class="md-ellipsis">
Tracking &amp; Monitoring
Brittle Star Environment
@ -641,60 +670,6 @@
</ul>
</nav>
</li>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_6" >
<label class="md-nav__link" for="__nav_6" id="__nav_6_label" tabindex="0">
<span class="md-ellipsis">
Design
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_6_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_6">
<span class="md-nav__icon md-icon"></span>
Design
</label>
<ul class="md-nav__list" data-md-scrollfix>
@ -702,14 +677,14 @@
<li class="md-nav__item">
<a href="../../design/actor-critic/" class="md-nav__link">
<a href="../tracking/" class="md-nav__link">
<span class="md-ellipsis">
Actor-Critic Architecture
Tracking & Monitoring
@ -730,14 +705,14 @@
<li class="md-nav__item">
<a href="../../design/communication/" class="md-nav__link">
<a href="../evaluation/" class="md-nav__link">
<span class="md-ellipsis">
Communication scheme (Message Passing)
Checkpoint & Model Evaluation
@ -758,14 +733,14 @@
<li class="md-nav__item">
<a href="../../design/controllers/" class="md-nav__link">
<a href="../simulation/" class="md-nav__link">
<span class="md-ellipsis">
Levels of modularity and topology
Interactive Simulation & Visualization
@ -786,14 +761,14 @@
<li class="md-nav__item">
<a href="../../design/input_action_spaces/" class="md-nav__link">
<a href="../analysis/" class="md-nav__link">
<span class="md-ellipsis">
Input (state) and output (action) spaces
Analysis & Plotting Tools
@ -814,42 +789,14 @@
<li class="md-nav__item">
<a href="../../design/learning_algorithm/" class="md-nav__link">
<a href="../reproduction/" class="md-nav__link">
<span class="md-ellipsis">
Reinforcement Learning Algorithm
</span>
</a>
</li>
<li class="md-nav__item">
<a href="../../design/reward_function/" class="md-nav__link">
<span class="md-ellipsis">
Reward function and observation space
Results & Reproduction
@ -876,109 +823,15 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7" >
<label class="md-nav__link" for="__nav_7" id="__nav_7_label" tabindex="0">
<span class="md-ellipsis">
Scripts
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_7_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7">
<span class="md-nav__icon md-icon"></span>
Scripts
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_7_1" >
<label class="md-nav__link" for="__nav_7_1" id="__nav_7_1_label" tabindex="0">
<span class="md-ellipsis">
Analysis
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_7_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_7_1">
<span class="md-nav__icon md-icon"></span>
Analysis
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../scripts/analysis/" class="md-nav__link">
<a href="../../HPC/" class="md-nav__link">
<span class="md-ellipsis">
Experiment Analysis Tools
HPC Guide
@ -990,22 +843,6 @@
</li>
</ul>
</nav>
</li>
</ul>
</nav>
</li>
@ -1013,109 +850,15 @@
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8" >
<label class="md-nav__link" for="__nav_8" id="__nav_8_label" tabindex="0">
<span class="md-ellipsis">
Src
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="1" aria-labelledby="__nav_8_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_8">
<span class="md-nav__icon md-icon"></span>
Src
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item md-nav__item--nested">
<input class="md-nav__toggle md-toggle " type="checkbox" id="__nav_8_1" >
<label class="md-nav__link" for="__nav_8_1" id="__nav_8_1_label" tabindex="0">
<span class="md-ellipsis">
Experiment logger
</span>
<span class="md-nav__icon md-icon"></span>
</label>
<nav class="md-nav" data-md-level="2" aria-labelledby="__nav_8_1_label" aria-expanded="false">
<label class="md-nav__title" for="__nav_8_1">
<span class="md-nav__icon md-icon"></span>
Experiment logger
</label>
<ul class="md-nav__list" data-md-scrollfix>
<li class="md-nav__item">
<a href="../../src/experiment_logger/" class="md-nav__link">
<a href="../../CONTRIBUTING/" class="md-nav__link">
<span class="md-ellipsis">
Experiment Logger
Contribution Guidelines
@ -1127,19 +870,30 @@
</li>
</ul>
</nav>
</li>
<li class="md-nav__item">
<a href="../../DEVELOPMENT/" class="md-nav__link">
<span class="md-ellipsis">
Development Guide
</ul>
</nav>
</span>
</a>
</li>
@ -1269,6 +1023,7 @@
<p>This guide covers how to configure and run training experiments for the Brittle Star project using Hydra-based configurations.</p>
<h2 id="configuration">Configuration</h2>
<p>The project uses a modular configuration system powered by <a href="https://hydra.cc/">Hydra</a>. Instead of passing many command-line flags, you select and override configuration groups.</p>
<p>For a detailed guide on the structure, validation, and usage of our Hydra configuration files, see the <strong><a href="../../configs/">Brittle Star Configuration System Guide</a></strong>.</p>
<h3 id="creating-a-custom-experiment">Creating a Custom Experiment</h3>
<ol>
<li>
@ -1301,31 +1056,9 @@
<div class="highlight"><pre><span></span><code>uv<span class="w"> </span>run<span class="w"> </span>python<span class="w"> </span>scripts/train.py<span class="w"> </span>evaluation.evaluate_checkpoints<span class="o">=</span><span class="nb">true</span>
</code></pre></div>
<h2 id="reproducing-experiments">Reproducing Experiments</h2>
<p>To ensure scientific validity and allow other researchers to reproduce your training runs, follow these steps:</p>
<ol>
<li>
<p><strong>Lock Environment Dependencies</strong>:
Always use the exact environment lockfile when running experiments. Run:
<div class="highlight"><pre><span></span><code>uv<span class="w"> </span>sync<span class="w"> </span>--frozen
</code></pre></div>
This guarantees that the same package versions (including JAX, Flax, and MuJoCo) are used.</p>
</li>
<li>
<p><strong>Save and Locate Configuration Metadata</strong>:
Every time you start a training run, the configuration is fully resolved by Hydra and saved as a metadata YAML file:</p>
</li>
<li>For checkpointed steps: <code>runs/&lt;run_dir&gt;/checkpoints/&lt;prefix&gt;_step_&lt;step&gt;_metadata.yaml</code></li>
<li>For the final model: <code>runs/&lt;run_dir&gt;/final_model_metadata.yaml</code></li>
</ol>
<p>This metadata file contains every active hyperparameter (e.g., learning rate, morphology configuration, PPO parameters, etc.) for that specific run.</p>
<ol>
<li><strong>Re-Run with Pinning</strong>:
To reproduce a run, execute the training script with the configuration parameters specified in the metadata file, making sure to reuse the same seed:
<div class="highlight"><pre><span></span><code>uv<span class="w"> </span>run<span class="w"> </span>python<span class="w"> </span>scripts/train.py<span class="w"> </span><span class="nv">experiment</span><span class="o">=</span>my_experiment<span class="w"> </span>ppo.learning_rate<span class="o">=</span><span class="m">0</span>.001<span class="w"> </span>experiment.seed<span class="o">=</span><span class="m">42</span>
</code></pre></div></li>
</ol>
<p>For detailed steps on how to reproduce training runs, locate run configuration metadata, or reproduce our experiments using Weights &amp; Biases (WandB), see the <strong><a href="../reproduction/">Results &amp; Reproduction Guide</a></strong>.</p>
<hr />
<p>For more details on evaluation metrics and comparison tools, see <a href="../evaluation/">Evaluation</a>.</p>
<p>For more details on evaluation metrics and comparison tools, see <a href="../evaluation/">Checkpoint &amp; Model Evaluation</a>.</p>
<p>For more details on tracking your experiments, see <a href="../tracking/">Tracking &amp; Monitoring</a>.</p>