def reset(self): high = np.array([np.pi, 1]) self.state = self.np_random.uniform(low=-high, high=high) self.last_u = None return self._get_obs()
时间: 2024-04-04 09:35:25 浏览: 114
python将txt文件读入为np.array的方法
1. np_random是什么?
np_random是PendulumEnv环境中的一个随机数生成器,它是一个NumPy的RandomState对象,用于生成随机数。在这个reset函数中,通过self.np_random.uniform函数生成一个在[-high, high]之间的随机数作为初始状态。
2. _get_obs()函数是干什么的?
_get_obs()函数是PendulumEnv环境中的一个私有函数,用于获取当前状态的观测值。在PendulumEnv环境中,状态由三个连续实数表示,分别表示摆杆的角度、角速度和杆尖速度。而观测值是对状态的一种压缩,通常是对状态进行线性变换或非线性变换得到的。在PendulumEnv环境中,观测值就是状态本身,因此_get_obs()函数返回的就是当前的状态。
3. 为什么要用last_u变量?
last_u是PendulumEnv环境中的一个变量,用于保存上一次施加在摆杆上的力。在PendulumEnv环境中,每次step函数调用时都需要传入一个力,而通常情况下,当前时刻的力往往与前一时刻的力有关,因此需要用last_u变量保存前一时刻的力,以便于计算当前时刻的力。在reset函数中,由于没有上一时刻的力,因此将last_u变量置为None。
阅读全文