[Algorithm] Add a reproducible DreamerV3 DMC Walker benchmark - #4075
Conversation
[ghstack-poisoned]
🔗 Helpful Links🧪 See artifacts and rendered test results at hud.pytorch.org/pr/pytorch/rl/4075
Note: Links to docs will display an error until the docs builds have been completed. ❌ 5 Cancelled Jobs, 2 Unrelated FailuresAs of commit a42b53a with merge base d5a62cb ( CANCELLED JOBS - The following jobs were cancelled. Please retry:
BROKEN TRUNK - The following jobs failed but were present on the merge base:👉 Rebase onto the `viable/strict` branch to avoid these failures
This comment was automatically generated by Dr. CI and updates every 15 minutes. |
|
Update after the stack-level ghstack rebase: The full eight-PR Dreamer stack was checked out from #4075, rebased onto current Reviewed current PR head I checked the Gym/dm_control environment construction and transforms, replay-ratio-to-update conversion, step-aligned JSON metrics, median/IQR aggregation, Hydra preset composition, SOTA smoke overrides, and docs. Please resolve the stack conflict first, then run the optional-dependency suite for the new dm_control path. The three current bulk failures are the LBFGSConfig parity failure already reported against trunk/merge-base. |
[ghstack-poisoned]
Summary: - add a proprioceptive DMC Walker Walk preset for 1.1 million environment steps - support Gym and dm_control environments through one maintained training script - record evaluation return by environment step and aggregate multi-seed median/IQR curves - add optional-dependency and short end-to-end Walker smoke coverage Rationale: The existing Pendulum example validates wiring but cannot establish DreamerV3 training parity on a representative continuous-control task. A fixed Walker protocol, machine-readable curves, and a multi-seed acceptance check make the reference comparison reproducible while keeping full learning runs outside pull-request CI. Test plan: - pytest test/objectives/test_dreamer_v3.py -k 'dmc_benchmark or sota_shares' -q - pytest test/smoke_test_deps.py -k dreamer_v3_dmc_walker_env -q - compose config_dmc_walker with Hydra and inspect the resolved job config - run 20-step Pendulum and DMC Walker training smokes with JSON metrics - run benchmark.py for one shortened Walker seed and validate summary.json - run the full three-seed 1.1M-step benchmark as scheduled/manual validation ghstack-source-id: 09cc608 Pull-Request: #4075
Summary: - add a proprioceptive DMC Walker Walk preset for 1.1 million environment steps - support Gym and dm_control environments through one maintained training script - record evaluation return by environment step and aggregate multi-seed median/IQR curves - add optional-dependency and short end-to-end Walker smoke coverage Rationale: The existing Pendulum example validates wiring but cannot establish DreamerV3 training parity on a representative continuous-control task. A fixed Walker protocol, machine-readable curves, and a multi-seed acceptance check make the reference comparison reproducible while keeping full learning runs outside pull-request CI. Test plan: - pytest test/objectives/test_dreamer_v3.py -k 'dmc_benchmark or sota_shares' -q - pytest test/smoke_test_deps.py -k dreamer_v3_dmc_walker_env -q - compose config_dmc_walker with Hydra and inspect the resolved job config - run 20-step Pendulum and DMC Walker training smokes with JSON metrics - run benchmark.py for one shortened Walker seed and validate summary.json - run the full three-seed 1.1M-step benchmark as scheduled/manual validation ghstack-source-id: 09cc608 Pull-Request: #4075
[ghstack-poisoned]
Summary: - add a proprioceptive DMC Walker Walk preset for 1.1 million environment steps - support Gym and dm_control environments through one maintained training script - record evaluation return by environment step and aggregate multi-seed median/IQR curves - add optional-dependency and short end-to-end Walker smoke coverage Rationale: The existing Pendulum example validates wiring but cannot establish DreamerV3 training parity on a representative continuous-control task. A fixed Walker protocol, machine-readable curves, and a multi-seed acceptance check make the reference comparison reproducible while keeping full learning runs outside pull-request CI. Test plan: - pytest test/objectives/test_dreamer_v3.py -k 'dmc_benchmark or sota_shares' -q - pytest test/smoke_test_deps.py -k dreamer_v3_dmc_walker_env -q - compose config_dmc_walker with Hydra and inspect the resolved job config - run 20-step Pendulum and DMC Walker training smokes with JSON metrics - run benchmark.py for one shortened Walker seed and validate summary.json - run the full three-seed 1.1M-step benchmark as scheduled/manual validation ghstack-source-id: 1d0abdb Pull-Request: #4075
|
Addressed the optional-dependency collection failure and resubmitted the rebased stack. Hydra and OmegaConf are now detected at module scope, configuration-dependent tests skip when unavailable, and OmegaConf imports stay lazy. The targeted config tests pass, both modules import with Hydra/OmegaConf unavailable, and the full all-files lint suite passes at this PR boundary. |
Summary: - add a proprioceptive DMC Walker Walk preset for 1.1 million environment steps - support Gym and dm_control environments through one maintained training script - record evaluation return by environment step and aggregate multi-seed median/IQR curves - add optional-dependency and short end-to-end Walker smoke coverage Rationale: The existing Pendulum example validates wiring but cannot establish DreamerV3 training parity on a representative continuous-control task. A fixed Walker protocol, machine-readable curves, and a multi-seed acceptance check make the reference comparison reproducible while keeping full learning runs outside pull-request CI. Test plan: - pytest test/objectives/test_dreamer_v3.py -k 'dmc_benchmark or sota_shares' -q - pytest test/smoke_test_deps.py -k dreamer_v3_dmc_walker_env -q - compose config_dmc_walker with Hydra and inspect the resolved job config - run 20-step Pendulum and DMC Walker training smokes with JSON metrics - run benchmark.py for one shortened Walker seed and validate summary.json - run the full three-seed 1.1M-step benchmark as scheduled/manual validation ghstack-source-id: 1d0abdb Pull-Request: #4075
Stack from ghstack (oldest at bottom):
Summary:
Rationale:
The existing Pendulum example validates wiring but cannot establish DreamerV3
training parity on a representative continuous-control task. A fixed Walker
protocol, machine-readable curves, and a multi-seed acceptance check make the
reference comparison reproducible while keeping full learning runs outside
pull-request CI.
Test plan: