haosulab / ManiSkill

SAPIEN Manipulation Skill Framework, a GPU parallelized robotics simulator and benchmark
https://maniskill.readthedocs.io/en/latest/
Apache License 2.0
561 stars 97 forks source link

Align CPU and GPU simulation seed based reconfigurations #393

Open StoneT2000 opened 2 weeks ago

StoneT2000 commented 2 weeks ago

Currently some tasks use torch randomness for loading assets. This is problematic since the assets loaded into the environment is dependent on a fixed seed and a variable number of environments. Moreover, CPU and GPU torch randomness do not generate the same results when given the same seed.

Two ways to fix:

Regardless a list of seeds are required in some form. This will also update the reset function options argument to accept a per_env_seeds key to directly determine each envs used seed instead of auto generate the list of env seeds given one seed.