Closed JingJerry closed 5 years ago
It normalizes actions to the range -> (action_space.high, action_space.low)
Why do you need to normalizes actions ?
For example, Humanoid-v2 env has action_space.high, action_space.low = 0.4, -0.4 The neural network outputs actions in -1 to 1 range -> {tanh(actions)} if the actions output of the network is [1, 0.8, -0.7, -1] then NormalizedActions will normalize it between 0.4, -0.4 i.e. [0.4, 0.32, 0.28, -0.4]. To scale the actions between action_space.high and action_space.low we use NormalizedActions()
I see. Thanks!
Excuse me, I don't understand that why do you need to use NormalizedActions()? Can you explain it ? Thank you!
Environment
env = NormalizedActions(gym.make(args.env_name))
class NormalizedActions(gym.ActionWrapper):