在深度强化学习中,使用连续动作空间,为什么在代理执行之前钳制动作似乎是一种常见的做法?
例子:
OpenAI Gym 山地车 https://github.com/openai/gym/blob/master/gym/envs/classic_control/continuous_mountain_car.py#L57
这样做不会丢失信息吗?就像模型为速度(移动)输出 +10,然后将其限制为 +1,动作本身的行为相当离散(仅考虑其执行)。对于细粒度的运动,将输出乘以 0.1 之类的东西不是更有意义吗?