Add forward velocity gating to curriculum advancement#71
Merged
Conversation
…ooks Organize training results by species and algorithm in results/<species>/<algo>/ with GIFs and machine-readable summary.json files. Move existing GIFs from Images/ into the new structure. Each notebook now calls save_results_json() at the end of training to automatically persist metrics. https://claude.ai/code/session_01VN2X7mivN5EPYq69rw1BqA
Replace ppo_apex.gif with the raptor balance GIF on the homepage simulation preview. Also fix the mislabeled "SAC Stage 2" caption to correctly read "PPO Stage 1 — Balance". https://claude.ai/code/session_01VN2X7mivN5EPYq69rw1BqA
Prevent the raptor from passing stage 2 (locomotion) by simply standing still and accumulating alive_bonus. Adds min_avg_forward_vel = 0.5 m/s threshold that must be met alongside reward and episode length checks. - Add min_avg_forward_vel field to StageThreshold dataclass - Update should_advance() and record_eval() to track forward velocities - Update CurriculumCallback to collect forward_vel from step infos - Update thresholds_from_configs() to extract new field from TOML - Add velocity gate to velociraptor notebook eval and stage summary - Add 3 new tests for forward velocity gating scenarios https://claude.ai/code/session_01VN2X7mivN5EPYq69rw1BqA
Split pytest, pytest-cov, and scipy out of [dev] into a new [test] extra so CI and contributors can run tests with `pip install -e ".[test]"` without pulling in linting/formatting tools. [dev] now includes [test] so existing workflows are unaffected. https://claude.ai/code/session_01V5ikATv6o1bCq5sfNy21yS
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
This pull request adds a new curriculum threshold for minimum average forward velocity to support more robust gating of locomotion training stages. It updates the curriculum logic, configuration, and tests to ensure that stage advancement now requires meeting this velocity threshold when specified.
Curriculum logic improvements:
min_avg_forward_velas a new field in theStageThresholdclass and updated its default value handling. [1] [2]record_evalandshould_advancemethods to accept and process per-episode forward velocity data, and to enforce the forward velocity threshold when set. [1] [2] [3] [4] [5]Configuration changes:
min_avg_forward_velto the Velociraptor locomotion stage config file and ensured it is parsed from config files into curriculum thresholds. [1] [2]Testing enhancements:
Documentation updates:
README.mdto clarify the organization of training result files and to reference the new results directory for GIFs. [1] [2]