Using an original robot similar to TurtleBot, we are doing reinforcement learning with reference to the Tutorial.
The following error occurs, although the code is the same as Tutorial. Data type conversion could not solve the problem. How can I fix this? It looks like an API issue.
def pre_physics_step(self, actions) -> None:
reset_env_ids = self.resets.nonzero(as_tuple=False).squeeze(-1)
if len(reset_env_ids) > 0:
self.reset(reset_env_ids)
#
actions = torch.tensor(actions)
raw_forward = actions[0]
raw_angular = actions[1]
#
forward = (raw_forward + 1.0) / 2.0
forward_velocity = forward * self._max_velocity
#
angular_velocity = raw_angular * self._max_angular_velocity
for i in range(self._skip_frame):
self._tr.apply_wheel_actions(
self._tr_controller.forward(
command=[forward_velocity, angular_velocity])
)
Traceback (most recent call last):
File "o_ppo_train.py", line 27, in <module>
model.learn(total_timesteps=100000)
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/kit/python/lib/python3.7/site-packages/stable_baselines3/ppo/ppo.py", line 313, in learn
reset_num_timesteps=reset_num_timesteps,
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/kit/python/lib/python3.7/site-packages/stable_baselines3/common/on_policy_algorithm.py", line 250, in learn
continue_training = self.collect_rollouts(self.env, callback, self.rollout_buffer, n_rollout_steps=self.n_steps)
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/kit/python/lib/python3.7/site-packages/stable_baselines3/common/on_policy_algorithm.py", line 178, in collect_rollouts
new_obs, rewards, dones, infos = env.step(clipped_actions)
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/kit/python/lib/python3.7/site-packages/stable_baselines3/common/vec_env/base_vec_env.py", line 162, in step
return self.step_wait()
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/kit/python/lib/python3.7/site-packages/stable_baselines3/common/vec_env/dummy_vec_env.py", line 44, in step_wait
self.actions[env_idx]
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/kit/python/lib/python3.7/site-packages/stable_baselines3/common/monitor.py", line 90, in step
observation, reward, done, info = self.env.step(action)
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/exts/omni.isaac.gym/omni/isaac/gym/vec_env/vec_env_base.py", line 135, in step
self._task.pre_physics_step(actions)
File "/home/sfai/RL_work/SAC_test/o_robot_task.py", line 352, in pre_physics_step
command=[forward_velocity, angular_velocity])
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/exts/omni.isaac.wheeled_robots/omni/isaac/wheeled_robots/robots/wheeled_robot.py", line 136, in apply_wheel_actions
self.apply_action(control_actions=joint_actions)
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/exts/omni.isaac.core/omni/isaac/core/articulations/articulation.py", line 409, in apply_action
self._articulation_controller.apply_action(control_actions=control_actions)
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/exts/omni.isaac.core/omni/isaac/core/controllers/articulation_controller.py", line 88, in apply_action
joint_indices=control_actions.joint_indices,
File "/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/exts/omni.isaac.core/omni/isaac/core/articulations/articulation_view.py", line 774, in apply_action
control_actions.joint_velocities, device=self._device
RuntimeError: Index put requires the source and destination dtypes match, got Float for the destination and Double for the source.
/home/sfai/.local/share/ov/pkg/isaac_sim-2022.1.1/python.sh: 40 行: 893833 Segmentation fault (コアダンプ) $python_exe "$@" $args
There was an error running python