set boundary condition to None at reset() & end replanning if env is done

This commit is contained in:
Hongyi Zhou
2022-11-27 01:25:31 +01:00
parent 42863cee1c
commit bf0de5f54d
2 changed files with 7 additions and 7 deletions
+5 -5
View File
@@ -161,9 +161,7 @@ class BlackBoxWrapper(gym.ObservationWrapper):
self.plan_steps += 1
for t, (pos, vel) in enumerate(zip(position, velocity)):
current_pos = self.current_pos
current_vel = self.current_vel
step_action = self.tracking_controller.get_action(pos, vel, current_pos, current_vel)
step_action = self.tracking_controller.get_action(pos, vel, self.current_pos, self.current_vel)
c_action = np.clip(step_action, self.env.action_space.low, self.env.action_space.high)
obs, c_reward, done, info = self.env.step(c_action)
rewards[t] = c_reward
@@ -180,10 +178,10 @@ class BlackBoxWrapper(gym.ObservationWrapper):
if self.render_kwargs:
self.env.render(**self.render_kwargs)
if done or self.replanning_schedule(current_pos, current_vel, obs, c_action,
if done or self.replanning_schedule(self.current_pos, self.current_vel, obs, c_action,
t + 1 + self.current_traj_steps):
if self.max_planning_times is not None and self.plan_steps >= self.max_planning_times:
if not done and self.max_planning_times is not None and self.plan_steps >= self.max_planning_times:
continue
self.condition_pos = pos if self.condition_on_desired else None
@@ -214,4 +212,6 @@ class BlackBoxWrapper(gym.ObservationWrapper):
self.current_traj_steps = 0
self.plan_steps = 0
self.traj_gen.reset()
self.condition_vel = None
self.condition_pos = None
return super(BlackBoxWrapper, self).reset()