isaac-sim/IsaacGymEnvs

The purpose of isaacgymenvs/learning/common_player.py since rl_games has it as well?

Opened this issue · 0 comments

When I do a straightforward loading test such as this:

python train.py task=Ant test=True num_envs=64

Since no checkpoint is specified, I believe it will just try and load with default weights. The code will refer to a "player" code, and the code that gets called is from rl_games, specifically this one, the PpoPlayerContinuous:

https://github.com/Denys88/rl_games/blob/d8645b2678c0d8a6e98a6e3f2b17f0ecfbff71ad/rl_games/algos_torch/players.py#L18-L82

which also calls the parent class BasePlayer:

https://github.com/Denys88/rl_games/blob/d8645b2678c0d8a6e98a6e3f2b17f0ecfbff71ad/rl_games/common/player.py#L9-L288

However I noticed that in this repo, there is also a "player" code here:

https://github.com/NVIDIA-Omniverse/IsaacGymEnvs/blob/ca7a4fb762f9581e39cc2aab644f18a83d6ab0ba/isaacgymenvs/learning/common_player.py#L37-L196

This has some very similar functions as the one in rl_games and there seems to be a lot of shared code among the two, such as in the run() method which is the one that takes steps into the environment. Is there a reason for this difference?