4339978cc6
fix(hpc): relax unbound variables
2026-04-04 20:04:05 +02:00
74e807472b
feat(hpc): update PBS script with renamed --env-config-path flag
2026-04-04 19:07:05 +02:00
ed20325fef
feat(hpc): rename config_path to env_config_path and support YAML configs
2026-04-04 19:07:01 +02:00
457a23e5cb
docs(hpc): correct Tyro flag in smoke test comment
2026-04-04 19:03:43 +02:00
798a8ee9e6
feat(hpc): correct Tyro flags in PBS submission script
2026-04-04 19:03:38 +02:00
2248d52e0b
chore: remove Scripts from .gitignore to allow project scripts/ dir
2026-04-04 19:02:37 +02:00
d1ca7a0f9f
feat(hpc): pass scratch directory as run_dir in PBS script
2026-04-04 19:02:26 +02:00
0aeff0f2da
feat(hpc): include git hash in run_name for traceability
2026-04-04 19:02:06 +02:00
bd06feea5f
chore: remove PDFs from git tracking and ignore them
2026-04-04 18:59:48 +02:00
92de38608f
chore(hpc): finalize hpc settings and scripts
...
- Update train.pbs to default to smoke test for safety
- Update .gitignore and ruff.toml
- Sync uv.lock (removing python 3.11 remnants)
- Refine smoke test config
2026-04-04 18:59:38 +02:00
92db8c2591
feat(hpc): support run_dir staging and update docs
...
- Add run_dir and checkpoint_frequency to PPOArgs
- Update train.py to use run_dir for SummaryBoard, model saving, and loss plots
- Create configs/production_training.yaml for HPC production runs
- Update HPC.md with run_dir staging strategy details
2026-04-04 18:59:05 +02:00
34a887cd58
refactor(hpc): use explicit PIP_CACHE_DIR/UV_CACHE_DIR, drop prose comments
...
Match comment style from previous cleanup commit:
- No section divider bars, no echo progress lines, no prose comments
on obvious commands
- Replace XDG_CACHE_HOME with explicit PIP_CACHE_DIR and UV_CACHE_DIR
- Drop MPLCONFIGDIR (matplotlib cache is negligible in size)
2026-04-04 18:48:06 +02:00
cd2e594d1b
docs(hpc): add storage overview, cache redirect instructions, update smoke test path
...
- Add storage table ($VSC_HOME / $VSC_DATA / $VSC_SCRATCH) with guidance
- Document cache redirect requirement in interactive sessions
- Update smoke test path to configs/hpc/smoke_test.yaml
- Describe train.pbs output staging behaviour
2026-04-04 18:39:53 +02:00
7bcfa66685
feat(hpc): route caches to $VSC_SCRATCH, outputs to $VSC_DATA
...
- Install: redirect XDG_CACHE_HOME, UV_CACHE_DIR, MPLCONFIGDIR to
$VSC_SCRATCH before any pip/module activity ($VSC_HOME is only ~3 GB)
- train.pbs:
- Set same cache env vars at job start
- Write run outputs and WandB cache to $VSC_SCRATCH during the run (fast I/O)
- Copy results to $VSC_DATA/runs/<jobid>/ on completion for persistence
- Redirect PBS stdout/stderr to $VSC_DATA/runs/<jobid>/job.{out,err}
- Add cd $PBS_O_WORKDIR as first step (HPC best practice)
2026-04-04 18:39:45 +02:00
8b068086c8
revert(build): restore python >=3.12 constraint
...
HPC module Python/3.12.3-GCCcore-13.3.0 satisfies >=3.12, so the
relaxation to >=3.11 was unnecessary. No package version changed.
2026-04-04 18:39:33 +02:00
08d54b73b4
refactor: comment cleanups
2026-04-04 18:30:10 +02:00
953e102483
docs(hpc): add docs/HPC.md and simplify README
...
- docs/HPC.md: cluster table, setup with vsc-venv, interactive debug
(shell + JupyterLab on donphan), PBS batch submission, dependency mgmt
- README.md: HPC section condensed to a single link to docs/HPC.md
2026-04-04 18:12:33 +02:00
9dce017525
refactor(hpc): migrate to PBS/vsc-venv, reorganise scripts under scripts/hpc/
...
- 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
2026-04-04 18:11:38 +02:00
14fd832283
ci(hpc): auto-update env/hpc/requirements.txt on pyproject.toml changes
2026-04-04 18:10:55 +02:00
23f0b45614
feat(hpc): add structured env/hpc config and requirements export script
...
- env/hpc/modules.txt: curated list of HPC EasyBuild modules loaded by vsc-venv
- env/hpc/requirements.txt: pip packages not covered by HPC modules (auto-generated)
- scripts/export_hpc_requirements.py: developer utility to regenerate requirements.txt
from pyproject.toml; to be called by CI when pyproject.toml changes
2026-04-04 18:10:38 +02:00
f2139fb419
fix(hpc): enable wandb tracking by default on compute nodes
2026-04-04 17:37:47 +02:00
205b284b96
feat(hpc): parse missing dependencies dynamically from pyproject
2026-04-04 17:37:47 +02:00
Robin Meersman
62e11ce243
fix(PPOTrainer.py): bug fixes regarding jax.jit
2026-04-03 15:22:51 +02:00
Robin Meersman
a9302cfd4e
fix(PPOTrainer.py): cleaned up + bug fixes regarding misuse of variable/wrong returns
2026-04-03 14:54:57 +02:00
Robin Meersman
4396c9ac4b
feat(train.py, PPOTrainer.py): cleaned up training loop to specialized class
2026-04-03 14:23:09 +02:00
Robin Meersman
24da8948c5
fix(merge): fixed merge conflict after popping local changes back in from stash
2026-04-03 13:01:05 +02:00
Robin Meersman
1cb0e2d95b
fix(merge): fixed merge conflict
2026-04-03 12:58:40 +02:00
Cedric Mekeirle
4956e1593d
Merge pull request #6 from SELab-3-2026/chore/MLP_Designs
...
Semi Generic MLP library.
2026-04-03 12:55:37 +02:00
cedric
3104678f96
fix: uniform naming
2026-04-03 08:11:50 +00:00
cedric
1c4e40b5fb
fix: uniform naming of models accross code
2026-04-02 18:37:37 +00:00
cedric
79221372df
fix: uniform generic network naming
2026-04-02 18:18:10 +00:00
cedric
40c7e32344
feat: more generic naming for critic, since messager will use the same
2026-04-02 18:11:49 +00:00
cedric
729f122be4
fix: removed useless comment
2026-04-02 18:00:53 +00:00
cedric
95840b789b
fix: usage of field because flax wont allow mutable class object
2026-04-02 17:59:48 +00:00
cedric
9879fea9e2
fix: refactored rl folder into mlps
2026-04-02 17:50:44 +00:00
cedric
15ae86796f
feat: generic network
2026-04-02 17:38:46 +00:00
2263c97fe8
style: ruff format
2026-04-02 17:36:41 +00:00
cmekeirl
4e3eee8ac6
Basic centralized model
2026-04-02 17:36:41 +00:00
cmekeirl
1ad940ce02
Initial proposal for structure
2026-04-02 17:36:41 +00:00
Robin Meersman
ba59361f97
chore(main.py): deleted redundant main.py, feat(plot.py): added plot file to group all visualization related code for the experiments
2026-04-02 15:20:47 +02:00
Robin Meersman
97eaa5c06b
chore(train.py): moved from package to experiments directory
2026-04-02 15:13:27 +02:00
Robin Meersman
45587c5620
fix: losses --> episodic returns
2026-04-02 15:11:39 +02:00
0e821cf251
docs: add HPC integration instructions
2026-04-01 19:34:47 +02:00
a774649ff0
test(hpc): add generic smoke test configuration
2026-04-01 19:34:47 +02:00
3c4f0b2ba3
fix(train): disable tqdm in batch mode to prevent log spam
2026-04-01 19:34:47 +02:00
e81708106d
ci(hpc): add slurm batch script for training
2026-04-01 19:34:47 +02:00
62e2adf97d
ci(hpc): add optimized installation script
2026-04-01 19:34:47 +02:00
d4529147cf
build(deps): relax python version constraint for HPC compatibility
2026-04-01 19:34:35 +02:00
RobinMeersman
f594cafead
Morphology/brittle star 2 arms ( #17 )
...
Provide the features to read in Environment (Morphology, arena, ...) config files in the JSON format. The example JSON file contains the config for a brittle star with 2 arms
2026-04-01 19:17:42 +02:00
ecdbe74df4
Merge pull request #9 from SELab-3-2026/chore/ppo
2026-04-01 18:11:59 +02:00