Controller Modularity in Brittle-Star Robots
https://selab-3-2026.github.io/SEL3-2026-Groep-4/
- Replace Slurm headers with PBS (#PBS) directives - Replace manual module+venv logic with vsc-venv --activate - Cluster selection via 'module swap cluster/<name>' before qsub - MUJOCO_GL=egl retained: required for headless physics sim and video rendering - Delete deprecated scripts/hpc_install.sh and scripts/hpc_train.slurm |
||
|---|---|---|
| .agents | ||
| .devcontainer | ||
| .github/workflows | ||
| configs | ||
| docs | ||
| env/hpc | ||
| experiments | ||
| scripts | ||
| src | ||
| tests | ||
| .commitlintrc.json | ||
| .gitattributes | ||
| .gitignore | ||
| .pre-commit-config.yaml | ||
| .python-version | ||
| flake.lock | ||
| flake.nix | ||
| pyproject.toml | ||
| README.md | ||
| ruff.toml | ||
| uv.lock | ||
Brittle Star
Usage
UV
To set up the UV module, you can run the following command:
uv sync --frozen
example command:
uv run src/train.py --model_name my_model --epochs 50 --batch_size 32
HPC Integration
To run training on the VSC HPC (Ghent Tier 2):
Setup
Run the installation script once on a login node. This sets up a virtual environment in $VSC_DATA with the required system modules (JAX, Flax, WandB) and lightweight dependencies.
bash scripts/hpc_install.sh
Smoke Test
Verify everything runs on a compute node:
python src/train.py --config configs/hpc_smoke_test.yaml
Submitting Jobs
Submit long-running experiments via the provided Slurm script:
sbatch scripts/hpc_train.slurm