-
Mayank Mittal authored
# Description The caching of terrains with the terrain generator did not work as expected even when the curriculum was enabled (which should have yielded the same terrain every time). On deeper investigation, it appears that the terrain generator samples a range when using the curriculum to avoid having the same sub-terrain in columns of the same terrain type. Thus, the terrain `difficulty` was stochastic between runs, which affected the caching of the terrain. This MR fixes the following: - Adds documentation of the above behavior - Modifies the generator to use `np.random.Generator` (RNG) instead of setting the seed globally - Adds a warning if the user wants to cache the terrain and the seed is not set - Adds tests to check caching works for the terrain generator with and without curriculum Note: Right now, complete determinism (i.e., the same terrain is generated) is only possible when seed is set and caching is enabled. If caching is disabled, it is possible that the terrain may have small differences. To fix this, the RNG needs to be propagated to all the generation functions as well. I leave that as a future TODO. ## Type of change - Bug fix (non-breaking change which fixes an issue) - This change requires a documentation update ## Checklist - [x] I have run the [`pre-commit` checks](https://pre-commit.com/) with `./isaaclab.sh --format` - [x] I have made corresponding changes to the documentation - [x] My changes generate no new warnings - [x] I have added tests that prove my fix is effective or that my feature works - [x] I have updated the changelog and the corresponding version in the extension's `config/extension.toml` file - [x] I have added my name to the `CONTRIBUTORS.md` or my name already exists there
| Name |
Last commit
|
Last update |
|---|---|---|
| .. | ||
| test_assets.py | ||
| test_circular_buffer.py | ||
| test_configclass.py | ||
| test_delay_buffer.py | ||
| test_dict.py | ||
| test_math.py | ||
| test_string.py | ||
| test_timer.py |