Files
pytorch-soft-actor-critic/normalized_actions.py
T

17 lines
473 B
Python

import gym
class NormalizedActions(gym.ActionWrapper):
def action(self, action):
action = (action + 1) / 2 # [-1, 1] => [0, 1]
action *= (self.action_space.high - self.action_space.low)
action += self.action_space.low
return action
def _reverse_action(self, action):
action -= self.action_space.low
action /= (self.action_space.high - self.action_space.low)
action = action * 2 - 1
return action