On Inconsistent Training Results of Identical Training Tasks #5937
-
Beta Was this translation helpful? Give feedback.
Replies: 2 comments 1 reply
-
|
I would not expect TensorBoard curves from two PPO training runs to overlap perfectly just because the task config and seed match. Isaac Lab can seed the environment and agent config, but GPU physics, PyTorch/CUDA kernels, parallel resets, and optimizer updates can still introduce tiny differences that compound quickly. A useful separation is: deterministic environment transitions are a narrower claim than deterministic end-to-end RL training. Isaac Lab has environment determinism tests for fixed observations/rewards, but the RSL-RL training script also sets the env seed from the agent seed, changes it per rank for distributed runs, and trains with randomized initial episode lengths. I would check in this order:
If you need bitwise repeatability for an experiment, also avoid changing GPU model/driver and check whether the backend you use exposes deterministic Torch settings. Even then, Isaac Gym-style perfectly overlapping curves are not something I would assume for the whole Isaac Lab training stack. |
Beta Was this translation helpful? Give feedback.
-
|
Great, that result is useful. It means the first thing to trust is the saved run configuration: once I would keep those three values explicit in future comparison runs and compare the saved |
Beta Was this translation helpful? Give feedback.



I would not expect TensorBoard curves from two PPO training runs to overlap perfectly just because the task config and seed match. Isaac Lab can seed the environment and agent config, but GPU physics, PyTorch/CUDA kernels, parallel resets, and optimizer updates can still introduce tiny differences that compound quickly.
A useful separation is: deterministic environment transitions are a narrower claim than deterministic end-to-end RL training. Isaac Lab has environment determinism tests for fixed observations/rewards, but the RSL-RL training script also sets the env seed from the agent seed, changes it per rank for distributed runs, and trains with randomized initial episode lengths.
I wo…