1
Fork 0
This repository has been archived on 2026-08-15. You can view files and clone it, but you cannot make any changes to it's state, such as pushing and creating new issues, pull requests or comments.
2026SEL3-project-Brittle_St.../README.md

2.2 KiB

Brittle Star

What is the impact of different levels of controller-modularity on the learning-speed, coordination and tolerance for defects (e.g. amputations) in brittle-star-like robots trained with Reinforcement Learning?

Quick start

Local setup

To set up the UV module, you can run the following command:

uv sync --frozen

Repository Structure

.
├── configs/                # Hydra configuration files (YAML)
├── docs/                   # Comprehensive documentation and API guides
├── runs/                   # Default output directory for Hydra and training artifacts
├── scripts/                # High-level entrypoints for training, simulation, and evaluation
├── src/
│   ├── brittle_star_project/ # Core library and environment logic
│   │   ├── evaluation/     # Checkpoint evaluation, rollout logic, and metrics persistence
│   │   └── trainers/       # Training loop implementations (e.g., PPO)
│   └── experiment_logger/  # Standalone logging package
└── tests/                  # Unit and integration tests

Usage

For detailed instructions on how to use the project, please refer to the API Documentation.

Quick Start

  1. Train a model:

    uv run python scripts/train.py ppo.learning_rate=0.001 logging.track=true
    
  2. Monitor progress: See Tracking & Monitoring.

  3. Simulate a trained model: See Simulation & Evaluation.

  4. Compare fault tolerance of models: See Checkpoint & Model Evaluation

Results & Reproduction

See docs/api/reproduction.md to learn how to access our public Weights & Biases (WandB) project, retrieve specific run parameters, and run the training/evaluation reproduction workflow.

HPC

See docs/HPC.md for the full guide, including environment setup, cluster selection, interactive debugging, and job submission.

Documentation

Please find all documentation and a starting point for more information in corresponding README.