fix visualization problem
This commit is contained in:
parent
c39a73cc07
commit
34339ef68e
|
@ -144,8 +144,8 @@ Test Video on Unitree Go2: https://www.bilibili.com/video/BV1tQ4y1c7ZG/?spm_id_f
|
|||
**Please star this repository if it does help you! Thanks!**
|
||||
|
||||
## Acknowledgements
|
||||
* Many thanks to [XiaoxiaoMeitou](https://github.com/Chicken-wings-programing), who provide Nvidia 3060ti and supporting.
|
||||
* Many thanks to Jony for his support and encourage me to learn basic kownledge about RL.
|
||||
* Many thanks to [Leolar](https://github.com/NihaoyaLeolar), who provide Nvidia 3060ti and supporting.
|
||||
* Many thanks to [Jony](https://github.com/jonyzhang2023) for his support and encourage me to learn basic kownledge about RL.
|
||||
* Many thanks to [Simonforyou](https://github.com/Simonforyou), who provide Go2 pretrained model.
|
||||
|
||||
## TO DO
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -27,7 +27,7 @@ def config_go1(Cnfg: Union[Cfg, Meta]):
|
|||
}
|
||||
|
||||
_ = Cnfg.control
|
||||
_.control_type = 'P'
|
||||
_.control_type = 'P' # P
|
||||
_.stiffness = {'joint': 20.} # [N*m/rad]
|
||||
_.damping = {'joint': 0.5} # [N*m*s/rad]
|
||||
# action scale: target angle = actionScale * action + defaultAngle
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,25 @@
|
|||
charts:
|
||||
- yKey: train/episode/rew_total/mean
|
||||
xKey: iterations
|
||||
- yKey: train/episode/rew_tracking_lin_vel/mean
|
||||
xKey: iterations
|
||||
- yKey: train/episode/rew_tracking_contacts_shaped_force/mean
|
||||
xKey: iterations
|
||||
- yKey: train/episode/rew_action_smoothness_1/mean
|
||||
xKey: iterations
|
||||
- yKey: train/episode/rew_action_smoothness_2/mean
|
||||
xKey: iterations
|
||||
- yKey: train/episode/rew_tracking_contacts_shaped_vel/mean
|
||||
xKey: iterations
|
||||
- yKey: train/episode/rew_orientation_control/mean
|
||||
xKey: iterations
|
||||
- yKey: train/episode/rew_dof_pos/mean
|
||||
xKey: iterations
|
||||
- yKey: train/episode/command_area_trot/mean
|
||||
xKey: iterations
|
||||
- yKey: train/episode/max_terrain_height/mean
|
||||
xKey: iterations
|
||||
- type: video
|
||||
glob: "videos/*.mp4"
|
||||
- yKey: adaptation_loss/mean
|
||||
xKey: iterations
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -0,0 +1,564 @@
|
|||
══════════════════════════════════════════
|
||||
[33m AC_Args [0m
|
||||
────────────────────┬─────────────────────
|
||||
init_noise_std │ 1.0
|
||||
actor_hidden_dims │ [512, 256, 128]
|
||||
critic_hidden_dims │ [512, 256, 128]
|
||||
activation │ elu
|
||||
adaptation_module_branch_hidden_dims│ [256, 128]
|
||||
use_decoder │ False
|
||||
════════════════════╧═════════════════════
|
||||
[33m PPO_Args [0m
|
||||
────────────────────┬─────────────────────
|
||||
value_loss_coef │ 1.0
|
||||
use_clipped_value_loss│ True
|
||||
clip_param │ 0.2
|
||||
entropy_coef │ 0.01
|
||||
num_learning_epochs │ 5
|
||||
num_mini_batches │ 4
|
||||
learning_rate │ 0.001
|
||||
adaptation_module_learning_rate│ 0.001
|
||||
num_adaptation_module_substeps│ 1
|
||||
schedule │ adaptive
|
||||
gamma │ 0.99
|
||||
lam │ 0.95
|
||||
desired_kl │ 0.01
|
||||
max_grad_norm │ 1.0
|
||||
selective_adaptation_module_loss│ False
|
||||
════════════════════╧═════════════════════
|
||||
[33m RunnerArgs [0m
|
||||
────────────────────┬─────────────────────
|
||||
algorithm_class_name│ RMA
|
||||
num_steps_per_env │ 24
|
||||
max_iterations │ 1500
|
||||
save_interval │ 400
|
||||
save_video_interval │ 100
|
||||
log_freq │ 10
|
||||
resume │ False
|
||||
load_run │ -1
|
||||
checkpoint │ -1
|
||||
resume_path │ None
|
||||
resume_curriculum │ True
|
||||
════════════════════╧═════════════════════
|
||||
[33m Cfg [0m
|
||||
────────────────────┬─────────────────────
|
||||
env │ {'num_envs': 40, 'num_observations': 70, 'num_scalar_observations': 70, 'num_privileged_obs': 2, 'privileged_future_horizon': 1, 'num_actions': 12, 'num_observation_history': 30, 'env_spacing': 3.0, 'send_timeouts': True, 'episode_length_s': 20, 'observe_vel': False, 'observe_only_ang_vel': False, 'observe_only_lin_vel': False, 'observe_yaw': False, 'observe_contact_states': False, 'observe_command': True, 'observe_height_command': False, 'observe_gait_commands': True, 'observe_timing_parameter': False, 'observe_clock_inputs': True, 'observe_two_prev_actions': True, 'observe_imu': False, 'record_video': True, 'recording_width_px': 360, 'recording_height_px': 240, 'recording_mode': 'COLOR', 'num_recording_envs': 1, 'debug_viz': False, 'all_agents_share': False, 'priv_observe_friction': True, 'priv_observe_friction_indep': False, 'priv_observe_ground_friction': False, 'priv_observe_ground_friction_per_foot': False, 'priv_observe_restitution': True, 'priv_observe_base_mass': False, 'priv_observe_com_displacement': False, 'priv_observe_motor_strength': False, 'priv_observe_motor_offset': False, 'priv_observe_joint_friction': True, 'priv_observe_Kp_factor': False, 'priv_observe_Kd_factor': False, 'priv_observe_contact_forces': False, 'priv_observe_contact_states': False, 'priv_observe_body_velocity': False, 'priv_observe_foot_height': False, 'priv_observe_body_height': False, 'priv_observe_gravity': False, 'priv_observe_terrain_type': False, 'priv_observe_clock_inputs': False, 'priv_observe_doubletime_clock_inputs': False, 'priv_observe_halftime_clock_inputs': False, 'priv_observe_desired_contact_states': False, 'priv_observe_dummy_variable': False, 'priv_observe_motion': False, 'priv_observe_gravity_transformed_motion': False, 'priv_observe_foot_displacement': False, 'priv_observe_gravity_transformed_foot_displacement': False, 'max_episode_length': 1001.0}
|
||||
terrain │ {'mesh_type': 'trimesh', 'horizontal_scale': 0.1, 'vertical_scale': 0.005, 'border_size': 0.0, 'curriculum': False, 'static_friction': 1.0, 'dynamic_friction': 1.0, 'restitution': 0.0, 'terrain_noise_magnitude': 0.0, 'terrain_smoothness': 0.005, 'measure_heights': False, 'measured_points_x': [-0.8, -0.7, -0.6, -0.5, -0.4, -0.3, -0.2, -0.1, 0.0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8], 'measured_points_y': [-0.5, -0.4, -0.3, -0.2, -0.1, 0.0, 0.1, 0.2, 0.3, 0.4, 0.5], 'selected': False, 'terrain_kwargs': None, 'min_init_terrain_level': 0, 'max_init_terrain_level': 5, 'terrain_length': 1.0, 'terrain_width': 1.0, 'num_rows': 30, 'num_cols': 30, 'terrain_proportions': [0, 0, 0, 0, 0, 0, 0, 0, 1.0], 'slope_treshold': 0.75, 'difficulty_scale': 1.0, 'x_init_range': 0.2, 'y_init_range': 0.2, 'yaw_init_range': 3.14, 'x_init_offset': 0.0, 'y_init_offset': 0.0, 'teleport_robots': False, 'teleport_thresh': 0.3, 'max_platform_height': 0.2, 'center_robots': True, 'center_span': 4, 'proportions': [0, 0, 0, 0, 0, 0, 0, 0, 1.0], 'num_sub_terrains': 900, 'env_origins': array([[[ 0.5, 0.5, 0. ],
|
||||
[ 0.5, 1.5, 0. ],
|
||||
[ 0.5, 2.5, 0. ],
|
||||
...,
|
||||
[ 0.5, 27.5, 0. ],
|
||||
[ 0.5, 28.5, 0. ],
|
||||
[ 0.5, 29.5, 0. ]],
|
||||
|
||||
[[ 1.5, 0.5, 0. ],
|
||||
[ 1.5, 1.5, 0. ],
|
||||
[ 1.5, 2.5, 0. ],
|
||||
...,
|
||||
[ 1.5, 27.5, 0. ],
|
||||
[ 1.5, 28.5, 0. ],
|
||||
[ 1.5, 29.5, 0. ]],
|
||||
|
||||
[[ 2.5, 0.5, 0. ],
|
||||
[ 2.5, 1.5, 0. ],
|
||||
[ 2.5, 2.5, 0. ],
|
||||
...,
|
||||
[ 2.5, 27.5, 0. ],
|
||||
[ 2.5, 28.5, 0. ],
|
||||
[ 2.5, 29.5, 0. ]],
|
||||
|
||||
...,
|
||||
|
||||
[[27.5, 0.5, 0. ],
|
||||
[27.5, 1.5, 0. ],
|
||||
[27.5, 2.5, 0. ],
|
||||
...,
|
||||
[27.5, 27.5, 0. ],
|
||||
[27.5, 28.5, 0. ],
|
||||
[27.5, 29.5, 0. ]],
|
||||
|
||||
[[28.5, 0.5, 0. ],
|
||||
[28.5, 1.5, 0. ],
|
||||
[28.5, 2.5, 0. ],
|
||||
...,
|
||||
[28.5, 27.5, 0. ],
|
||||
[28.5, 28.5, 0. ],
|
||||
[28.5, 29.5, 0. ]],
|
||||
|
||||
[[29.5, 0.5, 0. ],
|
||||
[29.5, 1.5, 0. ],
|
||||
[29.5, 2.5, 0. ],
|
||||
...,
|
||||
[29.5, 27.5, 0. ],
|
||||
[29.5, 28.5, 0. ],
|
||||
[29.5, 29.5, 0. ]]]), 'width_per_env_pixels': 10, 'length_per_env_pixels': 10, 'border': 0, 'tot_cols': 300, 'tot_rows': 300, 'row_indices': array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
|
||||
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
|
||||
26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
|
||||
39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
|
||||
52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
|
||||
65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
|
||||
78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
|
||||
91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
|
||||
104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
|
||||
117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
|
||||
130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
|
||||
143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
|
||||
156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
|
||||
169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
|
||||
182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
|
||||
195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
|
||||
208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
|
||||
221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
|
||||
234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
|
||||
247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
|
||||
260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
|
||||
273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
|
||||
286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
|
||||
299]), 'col_indices': array([ 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12,
|
||||
13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25,
|
||||
26, 27, 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38,
|
||||
39, 40, 41, 42, 43, 44, 45, 46, 47, 48, 49, 50, 51,
|
||||
52, 53, 54, 55, 56, 57, 58, 59, 60, 61, 62, 63, 64,
|
||||
65, 66, 67, 68, 69, 70, 71, 72, 73, 74, 75, 76, 77,
|
||||
78, 79, 80, 81, 82, 83, 84, 85, 86, 87, 88, 89, 90,
|
||||
91, 92, 93, 94, 95, 96, 97, 98, 99, 100, 101, 102, 103,
|
||||
104, 105, 106, 107, 108, 109, 110, 111, 112, 113, 114, 115, 116,
|
||||
117, 118, 119, 120, 121, 122, 123, 124, 125, 126, 127, 128, 129,
|
||||
130, 131, 132, 133, 134, 135, 136, 137, 138, 139, 140, 141, 142,
|
||||
143, 144, 145, 146, 147, 148, 149, 150, 151, 152, 153, 154, 155,
|
||||
156, 157, 158, 159, 160, 161, 162, 163, 164, 165, 166, 167, 168,
|
||||
169, 170, 171, 172, 173, 174, 175, 176, 177, 178, 179, 180, 181,
|
||||
182, 183, 184, 185, 186, 187, 188, 189, 190, 191, 192, 193, 194,
|
||||
195, 196, 197, 198, 199, 200, 201, 202, 203, 204, 205, 206, 207,
|
||||
208, 209, 210, 211, 212, 213, 214, 215, 216, 217, 218, 219, 220,
|
||||
221, 222, 223, 224, 225, 226, 227, 228, 229, 230, 231, 232, 233,
|
||||
234, 235, 236, 237, 238, 239, 240, 241, 242, 243, 244, 245, 246,
|
||||
247, 248, 249, 250, 251, 252, 253, 254, 255, 256, 257, 258, 259,
|
||||
260, 261, 262, 263, 264, 265, 266, 267, 268, 269, 270, 271, 272,
|
||||
273, 274, 275, 276, 277, 278, 279, 280, 281, 282, 283, 284, 285,
|
||||
286, 287, 288, 289, 290, 291, 292, 293, 294, 295, 296, 297, 298,
|
||||
299]), 'x_offset': 0, 'rows_offset': 0, 'env_length': 1.0, 'env_width': 1.0, 'max_terrain_level': 30, 'terrain_origins': tensor([[[ 0.5000, 0.5000, 0.0000],
|
||||
[ 0.5000, 1.5000, 0.0000],
|
||||
[ 0.5000, 2.5000, 0.0000],
|
||||
...,
|
||||
[ 0.5000, 27.5000, 0.0000],
|
||||
[ 0.5000, 28.5000, 0.0000],
|
||||
[ 0.5000, 29.5000, 0.0000]],
|
||||
|
||||
[[ 1.5000, 0.5000, 0.0000],
|
||||
[ 1.5000, 1.5000, 0.0000],
|
||||
[ 1.5000, 2.5000, 0.0000],
|
||||
...,
|
||||
[ 1.5000, 27.5000, 0.0000],
|
||||
[ 1.5000, 28.5000, 0.0000],
|
||||
[ 1.5000, 29.5000, 0.0000]],
|
||||
|
||||
[[ 2.5000, 0.5000, 0.0000],
|
||||
[ 2.5000, 1.5000, 0.0000],
|
||||
[ 2.5000, 2.5000, 0.0000],
|
||||
...,
|
||||
[ 2.5000, 27.5000, 0.0000],
|
||||
[ 2.5000, 28.5000, 0.0000],
|
||||
[ 2.5000, 29.5000, 0.0000]],
|
||||
|
||||
...,
|
||||
|
||||
[[27.5000, 0.5000, 0.0000],
|
||||
[27.5000, 1.5000, 0.0000],
|
||||
[27.5000, 2.5000, 0.0000],
|
||||
...,
|
||||
[27.5000, 27.5000, 0.0000],
|
||||
[27.5000, 28.5000, 0.0000],
|
||||
[27.5000, 29.5000, 0.0000]],
|
||||
|
||||
[[28.5000, 0.5000, 0.0000],
|
||||
[28.5000, 1.5000, 0.0000],
|
||||
[28.5000, 2.5000, 0.0000],
|
||||
...,
|
||||
[28.5000, 27.5000, 0.0000],
|
||||
[28.5000, 28.5000, 0.0000],
|
||||
[28.5000, 29.5000, 0.0000]],
|
||||
|
||||
[[29.5000, 0.5000, 0.0000],
|
||||
[29.5000, 1.5000, 0.0000],
|
||||
[29.5000, 2.5000, 0.0000],
|
||||
...,
|
||||
[29.5000, 27.5000, 0.0000],
|
||||
[29.5000, 28.5000, 0.0000],
|
||||
[29.5000, 29.5000, 0.0000]]], device='cuda:0')}
|
||||
commands │ {'command_curriculum': True, 'max_reverse_curriculum': 1.0, 'max_forward_curriculum': 1.0, 'yaw_command_curriculum': False, 'max_yaw_curriculum': 1.0, 'exclusive_command_sampling': False, 'num_commands': 15, 'resampling_time': 10, 'subsample_gait': False, 'gait_interval_s': 10.0, 'vel_interval_s': 10.0, 'jump_interval_s': 20.0, 'jump_duration_s': 0.1, 'jump_height': 0.3, 'heading_command': False, 'global_reference': False, 'observe_accel': False, 'distributional_commands': True, 'curriculum_type': 'RewardThresholdCurriculum', 'lipschitz_threshold': 0.9, 'num_lin_vel_bins': 30, 'lin_vel_step': 0.3, 'num_ang_vel_bins': 30, 'ang_vel_step': 0.3, 'distribution_update_extension_distance': 1, 'curriculum_seed': 100, 'lin_vel_x': [-1.0, 1.0], 'lin_vel_y': [-0.6, 0.6], 'ang_vel_yaw': [-1.0, 1.0], 'body_height_cmd': [-0.25, 0.15], 'impulse_height_commands': False, 'limit_vel_x': [-5.0, 5.0], 'limit_vel_y': [-0.6, 0.6], 'limit_vel_yaw': [-5.0, 5.0], 'limit_body_height': [-0.25, 0.15], 'limit_gait_phase': [0.0, 1.0], 'limit_gait_offset': [0.0, 1.0], 'limit_gait_bound': [0.0, 1.0], 'limit_gait_frequency': [2.0, 4.0], 'limit_gait_duration': [0.5, 0.5], 'limit_footswing_height': [0.03, 0.35], 'limit_body_pitch': [-0.4, 0.4], 'limit_body_roll': [-0.0, 0.0], 'limit_aux_reward_coef': [0.0, 0.01], 'limit_compliance': [0.0, 0.01], 'limit_stance_width': [0.1, 0.45], 'limit_stance_length': [0.35, 0.45], 'num_bins_vel_x': 21, 'num_bins_vel_y': 1, 'num_bins_vel_yaw': 21, 'num_bins_body_height': 1, 'num_bins_gait_frequency': 1, 'num_bins_gait_phase': 1, 'num_bins_gait_offset': 1, 'num_bins_gait_bound': 1, 'num_bins_gait_duration': 1, 'num_bins_footswing_height': 1, 'num_bins_body_pitch': 1, 'num_bins_body_roll': 1, 'num_bins_aux_reward_coef': 1, 'num_bins_compliance': 1, 'num_bins_stance_width': 1, 'num_bins_stance_length': 1, 'heading': [-3.14, 3.14], 'gait_phase_cmd_range': [0.0, 1.0], 'gait_offset_cmd_range': [0.0, 1.0], 'gait_bound_cmd_range': [0.0, 1.0], 'gait_frequency_cmd_range': [2.0, 4.0], 'gait_duration_cmd_range': [0.5, 0.5], 'footswing_height_range': [0.03, 0.35], 'body_pitch_range': [-0.4, 0.4], 'body_roll_range': [-0.0, 0.0], 'aux_reward_coef_range': [0.0, 0.01], 'compliance_range': [0.0, 0.01], 'stance_width_range': [0.1, 0.45], 'stance_length_range': [0.35, 0.45], 'exclusive_phase_offset': False, 'binary_phases': True, 'pacing_offset': False, 'balance_gait_distribution': True, 'gaitwise_curricula': True}
|
||||
curriculum_thresholds│ {'tracking_lin_vel': 0.8, 'tracking_ang_vel': 0.7, 'tracking_contacts_shaped_force': 0.9, 'tracking_contacts_shaped_vel': 0.9}
|
||||
init_state │ {'pos': [0.0, 0.0, 0.34], 'rot': [0.0, 0.0, 0.0, 1.0], 'lin_vel': [0.0, 0.0, 0.0], 'ang_vel': [0.0, 0.0, 0.0], 'default_joint_angles': {'FL_hip_joint': 0.1, 'RL_hip_joint': 0.1, 'FR_hip_joint': -0.1, 'RR_hip_joint': -0.1, 'FL_thigh_joint': 0.8, 'RL_thigh_joint': 1.0, 'FR_thigh_joint': 0.8, 'RR_thigh_joint': 1.0, 'FL_calf_joint': -1.5, 'RL_calf_joint': -1.5, 'FR_calf_joint': -1.5, 'RR_calf_joint': -1.5}}
|
||||
control │ {'control_type': 'actuator_net', 'stiffness': {'joint': 20.0}, 'damping': {'joint': 0.5}, 'action_scale': 0.25, 'hip_scale_reduction': 0.5, 'decimation': 4}
|
||||
asset │ {'file': '{MINI_GYM_ROOT_DIR}/resources/robots/go2/urdf/go2.urdf', 'foot_name': 'foot', 'penalize_contacts_on': ['thigh', 'calf'], 'terminate_after_contacts_on': ['base'], 'disable_gravity': False, 'collapse_fixed_joints': True, 'fix_base_link': False, 'default_dof_drive_mode': 3, 'self_collisions': 0, 'replace_cylinder_with_capsule': True, 'flip_visual_attachments': True, 'density': 0.001, 'angular_damping': 0.0, 'linear_damping': 0.0, 'max_angular_velocity': 1000.0, 'max_linear_velocity': 1000.0, 'armature': 0.0, 'thickness': 0.01}
|
||||
domain_rand │ {'rand_interval_s': 4, 'randomize_rigids_after_start': False, 'randomize_friction': True, 'friction_range': [0.1, 3.0], 'randomize_restitution': True, 'restitution_range': [0.0, 0.4], 'randomize_base_mass': True, 'added_mass_range': [-1.0, 3.0], 'randomize_com_displacement': False, 'com_displacement_range': [-0.15, 0.15], 'randomize_motor_strength': True, 'motor_strength_range': [0.9, 1.1], 'randomize_Kp_factor': False, 'Kp_factor_range': [0.8, 1.3], 'randomize_Kd_factor': False, 'Kd_factor_range': [0.5, 1.5], 'gravity_rand_interval_s': 8.0, 'gravity_impulse_duration': 0.99, 'randomize_gravity': True, 'gravity_range': [-1.0, 1.0], 'push_robots': False, 'push_interval_s': 15, 'max_push_vel_xy': 0.5, 'randomize_lag_timesteps': True, 'lag_timesteps': 6, 'restitution': 0.5, 'randomize_friction_indep': False, 'randomize_ground_friction': True, 'ground_friction_range': [0.0, 0.0], 'randomize_motor_offset': True, 'motor_offset_range': [-0.02, 0.02], 'tile_height_range': [-0.0, 0.0], 'tile_height_curriculum': False, 'tile_height_update_interval': 1000000, 'tile_height_curriculum_step': 0.01, 'push_interval': 751.0, 'rand_interval': 201.0, 'gravity_rand_interval': 401.0, 'gravity_rand_duration': 397.0}
|
||||
rewards │ {'only_positive_rewards': False, 'only_positive_rewards_ji22_style': True, 'sigma_rew_neg': 0.02, 'reward_container_name': 'CoRLRewards', 'tracking_sigma': 0.25, 'tracking_sigma_lat': 0.25, 'tracking_sigma_long': 0.25, 'tracking_sigma_yaw': 0.25, 'soft_dof_pos_limit': 0.9, 'soft_dof_vel_limit': 1.0, 'soft_torque_limit': 1.0, 'base_height_target': 0.3, 'max_contact_force': 100.0, 'use_terminal_body_height': True, 'terminal_body_height': 0.05, 'use_terminal_foot_height': False, 'terminal_foot_height': -0.005, 'use_terminal_roll_pitch': True, 'terminal_body_ori': 1.6, 'kappa_gait_probs': 0.07, 'gait_force_sigma': 100.0, 'gait_vel_sigma': 10.0, 'footswing_height': 0.09}
|
||||
reward_scales │ {'termination': -0.0, 'tracking_lin_vel': 1.0, 'tracking_ang_vel': 0.5, 'lin_vel_z': -0.02, 'ang_vel_xy': -0.001, 'orientation': 0.0, 'torques': -0.0001, 'dof_vel': -0.0001, 'dof_acc': -2.5e-07, 'base_height': 0.0, 'feet_air_time': 0.0, 'collision': -5.0, 'feet_stumble': -0.0, 'action_rate': -0.01, 'stand_still': -0.0, 'tracking_lin_vel_lat': 0.0, 'tracking_lin_vel_long': 0.0, 'tracking_contacts': 0.0, 'tracking_contacts_shaped': 0.0, 'tracking_contacts_shaped_force': 4.0, 'tracking_contacts_shaped_vel': 4.0, 'jump': 10.0, 'energy': 0.0, 'energy_expenditure': 0.0, 'survival': 0.0, 'dof_pos_limits': -10.0, 'feet_contact_forces': 0.0, 'feet_slip': -0.04, 'feet_clearance_cmd_linear': -30.0, 'dof_pos': -0.0, 'action_smoothness_1': -0.1, 'action_smoothness_2': -0.1, 'base_motion': 0.0, 'feet_impact_vel': -0.0, 'raibert_heuristic': -10.0, 'estimation_bonus': 0.0, 'feet_clearance': -0.0, 'feet_clearance_cmd': -0.0, 'orientation_control': -5.0, 'tracking_stance_width': -0.0, 'tracking_stance_length': -0.0, 'hop_symmetry': 0.0}
|
||||
normalization │ {'clip_observations': 100.0, 'clip_actions': 10.0, 'friction_range': [0, 1], 'ground_friction_range': [0, 1], 'restitution_range': [0, 1.0], 'added_mass_range': [-1.0, 3.0], 'com_displacement_range': [-0.1, 0.1], 'motor_strength_range': [0.9, 1.1], 'motor_offset_range': [-0.05, 0.05], 'Kp_factor_range': [0.8, 1.3], 'Kd_factor_range': [0.5, 1.5], 'joint_friction_range': [0.0, 0.7], 'contact_force_range': [0.0, 50.0], 'contact_state_range': [0.0, 1.0], 'body_velocity_range': [-6.0, 6.0], 'foot_height_range': [0.0, 0.15], 'body_height_range': [0.0, 0.6], 'gravity_range': [-1.0, 1.0], 'motion': [-0.01, 0.01]}
|
||||
obs_scales │ {'lin_vel': 2.0, 'ang_vel': 0.25, 'dof_pos': 1.0, 'dof_vel': 0.05, 'imu': 0.1, 'height_measurements': 5.0, 'friction_measurements': 1.0, 'body_height_cmd': 2.0, 'gait_phase_cmd': 1.0, 'gait_freq_cmd': 1.0, 'footswing_height_cmd': 0.15, 'body_pitch_cmd': 0.3, 'body_roll_cmd': 0.3, 'aux_reward_cmd': 1.0, 'compliance_cmd': 1.0, 'stance_width_cmd': 1.0, 'stance_length_cmd': 1.0, 'segmentation_image': 1.0, 'rgb_image': 1.0, 'depth_image': 1.0}
|
||||
noise │ {'add_noise': True, 'noise_level': 1.0}
|
||||
noise_scales │ {'dof_pos': 0.01, 'dof_vel': 1.5, 'lin_vel': 0.1, 'ang_vel': 0.2, 'imu': 0.1, 'gravity': 0.05, 'contact_states': 0.05, 'height_measurements': 0.1, 'friction_measurements': 0.0, 'segmentation_image': 0.0, 'rgb_image': 0.0, 'depth_image': 0.0}
|
||||
viewer │ {'ref_env': 0, 'pos': [10, 0, 6], 'lookat': [11.0, 5, 3.0]}
|
||||
sim │ {'dt': 0.005, 'substeps': 1, 'gravity': [0.0, 0.0, -9.81], 'up_axis': 1, 'use_gpu_pipeline': True, 'physx': {'num_threads': 10, 'solver_type': 1, 'num_position_iterations': 4, 'num_velocity_iterations': 0, 'contact_offset': 0.01, 'rest_offset': 0.0, 'bounce_threshold_velocity': 0.5, 'max_depenetration_velocity': 1.0, 'max_gpu_contact_pairs': 8388608, 'default_buffer_size_multiplier': 5, 'contact_collection': 2}}
|
||||
command_ranges │ {'command_curriculum': True, 'max_reverse_curriculum': 1.0, 'max_forward_curriculum': 1.0, 'yaw_command_curriculum': False, 'max_yaw_curriculum': 1.0, 'exclusive_command_sampling': False, 'num_commands': 15, 'resampling_time': 10, 'subsample_gait': False, 'gait_interval_s': 10.0, 'vel_interval_s': 10.0, 'jump_interval_s': 20.0, 'jump_duration_s': 0.1, 'jump_height': 0.3, 'heading_command': False, 'global_reference': False, 'observe_accel': False, 'distributional_commands': True, 'curriculum_type': 'RewardThresholdCurriculum', 'lipschitz_threshold': 0.9, 'num_lin_vel_bins': 30, 'lin_vel_step': 0.3, 'num_ang_vel_bins': 30, 'ang_vel_step': 0.3, 'distribution_update_extension_distance': 1, 'curriculum_seed': 100, 'lin_vel_x': [-1.0, 1.0], 'lin_vel_y': [-0.6, 0.6], 'ang_vel_yaw': [-1.0, 1.0], 'body_height_cmd': [-0.25, 0.15], 'impulse_height_commands': False, 'limit_vel_x': [-5.0, 5.0], 'limit_vel_y': [-0.6, 0.6], 'limit_vel_yaw': [-5.0, 5.0], 'limit_body_height': [-0.25, 0.15], 'limit_gait_phase': [0.0, 1.0], 'limit_gait_offset': [0.0, 1.0], 'limit_gait_bound': [0.0, 1.0], 'limit_gait_frequency': [2.0, 4.0], 'limit_gait_duration': [0.5, 0.5], 'limit_footswing_height': [0.03, 0.35], 'limit_body_pitch': [-0.4, 0.4], 'limit_body_roll': [-0.0, 0.0], 'limit_aux_reward_coef': [0.0, 0.01], 'limit_compliance': [0.0, 0.01], 'limit_stance_width': [0.1, 0.45], 'limit_stance_length': [0.35, 0.45], 'num_bins_vel_x': 21, 'num_bins_vel_y': 1, 'num_bins_vel_yaw': 21, 'num_bins_body_height': 1, 'num_bins_gait_frequency': 1, 'num_bins_gait_phase': 1, 'num_bins_gait_offset': 1, 'num_bins_gait_bound': 1, 'num_bins_gait_duration': 1, 'num_bins_footswing_height': 1, 'num_bins_body_pitch': 1, 'num_bins_body_roll': 1, 'num_bins_aux_reward_coef': 1, 'num_bins_compliance': 1, 'num_bins_stance_width': 1, 'num_bins_stance_length': 1, 'heading': [-3.14, 3.14], 'gait_phase_cmd_range': [0.0, 1.0], 'gait_offset_cmd_range': [0.0, 1.0], 'gait_bound_cmd_range': [0.0, 1.0], 'gait_frequency_cmd_range': [2.0, 4.0], 'gait_duration_cmd_range': [0.5, 0.5], 'footswing_height_range': [0.03, 0.35], 'body_pitch_range': [-0.4, 0.4], 'body_roll_range': [-0.0, 0.0], 'aux_reward_coef_range': [0.0, 0.01], 'compliance_range': [0.0, 0.01], 'stance_width_range': [0.1, 0.45], 'stance_length_range': [0.35, 0.45], 'exclusive_phase_offset': False, 'binary_phases': True, 'pacing_offset': False, 'balance_gait_distribution': True, 'gaitwise_curricula': True}
|
||||
════════════════════╧═════════════════════
|
||||
╒═════════════════════════════════════════════════════╤════════════════════╕
|
||||
│ train/episode/rew tracking lin vel/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew tracking ang vel/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew lin vel z/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew ang vel xy/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew torques/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew dof vel/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew dof acc/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew collision/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew action rate/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│train/episode/rew tracking contacts shaped force/mean│ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew tracking contacts shaped vel/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew jump/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew dof pos limits/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew feet slip/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew feet clearance cmd linear/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew action smoothness 1/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew action smoothness 2/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew raibert heuristic/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew orientation control/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew total/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command duration/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command duration/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command bound/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command bound/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command offset/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command offset/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command phase/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command phase/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command freq/mean │ 2.015 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command freq/mean │ 3.997 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command x vel/mean │ -1.17 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command x vel/mean │ 1.09 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command y vel/mean │ -0.599 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command y vel/mean │ 0.593 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command yaw vel/mean │ -1.124 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command yaw vel/mean │ 0.995 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command swing height/mean │ 0.032 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command swing height/mean │ 0.35 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area pronk/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area trot/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area pace/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area bound/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min action/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max action/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ time elapsed/mean │ 0.923 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ time iter/mean │ 0.923 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ adaptation loss/mean │ 1.604 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean value loss/mean │ 0.044 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean surrogate loss/mean │ -0.013 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder loss/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder loss student/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder test loss/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder test loss student/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean adaptation module test loss/mean │ 1.987 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ timesteps │ 960 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ iterations │ 0 │
|
||||
╘═════════════════════════════════════════════════════╧════════════════════╛
|
||||
|
||||
══════════════════════════════════════════
|
||||
[33m job [0m
|
||||
────────────────────┬─────────────────────
|
||||
status │ running
|
||||
runTime │ 2024-03-01 07:51:05.406978
|
||||
════════════════════╧═════════════════════
|
||||
╒═════════════════════════════════════════════════════╤════════════════════╕
|
||||
│ train/episode/rew tracking lin vel/mean │ 0.52 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew tracking ang vel/mean │ 0.349 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew lin vel z/mean │ -0.007 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew ang vel xy/mean │ -0.014 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew torques/mean │ -0.141 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew dof vel/mean │ -0.064 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew dof acc/mean │ -0.878 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew collision/mean │ -0.359 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew action rate/mean │ -0.629 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│train/episode/rew tracking contacts shaped force/mean│ -1.949 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew tracking contacts shaped vel/mean │ -0.943 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew jump/mean │ -0.609 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew dof pos limits/mean │ -0.007 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew feet slip/mean │ -0.082 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew feet clearance cmd linear/mean │ -2.894 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew action smoothness 1/mean │ -0.292 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew action smoothness 2/mean │ -0.876 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew raibert heuristic/mean │ -6.801 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew orientation control/mean │ -6.358 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew total/mean │ 0.011 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command duration/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command duration/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command bound/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command bound/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command offset/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command offset/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command phase/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command phase/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command freq/mean │ 2.015 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command freq/mean │ 3.997 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command x vel/mean │ -1.17 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command x vel/mean │ 1.071 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command y vel/mean │ -0.599 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command y vel/mean │ 0.593 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command yaw vel/mean │ -1.139 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command yaw vel/mean │ 0.995 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command swing height/mean │ 0.032 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command swing height/mean │ 0.342 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area pronk/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area trot/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area pace/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area bound/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min action/mean │ -2.346 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max action/mean │ 2.414 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ time elapsed/mean │ 5.046 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ time iter/mean │ 0.736 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ adaptation loss/mean │ 0.383 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean value loss/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean surrogate loss/mean │ -0.07 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder loss/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder loss student/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder test loss/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder test loss student/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean adaptation module test loss/mean │ 0.567 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ timesteps │ 10560 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ iterations │ 10 │
|
||||
╘═════════════════════════════════════════════════════╧════════════════════╛
|
||||
|
||||
══════════════════════════════════════════
|
||||
[33m job [0m
|
||||
────────────────────┬─────────────────────
|
||||
status │ running
|
||||
runTime │ 2024-03-01 07:51:12.817287
|
||||
════════════════════╧═════════════════════
|
||||
╒═════════════════════════════════════════════════════╤════════════════════╕
|
||||
│ train/episode/rew tracking lin vel/mean │ 1.498 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew tracking ang vel/mean │ 1.246 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew lin vel z/mean │ -0.011 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew ang vel xy/mean │ -0.026 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew torques/mean │ -0.337 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew dof vel/mean │ -0.095 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew dof acc/mean │ -1.203 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew collision/mean │ -0.944 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew action rate/mean │ -1.607 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│train/episode/rew tracking contacts shaped force/mean│ -7.334 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew tracking contacts shaped vel/mean │ -1.369 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew jump/mean │ -1.004 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew dof pos limits/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew feet slip/mean │ -0.144 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew feet clearance cmd linear/mean │ -6.431 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew action smoothness 1/mean │ -0.753 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew action smoothness 2/mean │ -2.239 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew raibert heuristic/mean │ -7.354 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew orientation control/mean │ -5.074 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/rew total/mean │ 0.053 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command duration/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command duration/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command bound/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command bound/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command offset/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command offset/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command phase/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command phase/mean │ 0.5 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command freq/mean │ 2.015 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command freq/mean │ 3.997 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command x vel/mean │ -1.17 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command x vel/mean │ 1.096 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command y vel/mean │ -0.599 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command y vel/mean │ 0.593 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command yaw vel/mean │ -1.142 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command yaw vel/mean │ 0.995 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min command swing height/mean │ 0.032 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max command swing height/mean │ 0.338 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area pronk/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area trot/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area pace/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/command area bound/mean │ 0.057 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/min action/mean │ -3.379 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ train/episode/max action/mean │ 3.626 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ time elapsed/mean │ 12.453 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ time iter/mean │ 0.747 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ adaptation loss/mean │ 0.125 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean value loss/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean surrogate loss/mean │ -0.071 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder loss/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder loss student/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder test loss/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean decoder test loss student/mean │ 0. │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ mean adaptation module test loss/mean │ 0.194 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ timesteps │ 20160 │
|
||||
├─────────────────────────────────────────────────────┼────────────────────┤
|
||||
│ iterations │ 20 │
|
||||
╘═════════════════════════════════════════════════════╧════════════════════╛
|
||||
|
||||
══════════════════════════════════════════
|
||||
[33m job [0m
|
||||
────────────────────┬─────────────────────
|
||||
status │ running
|
||||
runTime │ 2024-03-01 07:51:20.288577
|
||||
════════════════════╧═════════════════════
|
Binary file not shown.
|
@ -70,7 +70,9 @@ def load_env(label, headless=False):
|
|||
|
||||
Cfg.domain_rand.lag_timesteps = 6
|
||||
Cfg.domain_rand.randomize_lag_timesteps = True
|
||||
Cfg.control.control_type = "actuator_net"
|
||||
Cfg.control.control_type = "actuator_net" #"actuator_net"
|
||||
Cfg.asset.flip_visual_attachments = True
|
||||
|
||||
|
||||
from go1_gym.envs.wrappers.history_wrapper import HistoryWrapper
|
||||
|
||||
|
@ -94,20 +96,24 @@ def play_go1(headless=True):
|
|||
import glob
|
||||
import os
|
||||
|
||||
label = "gait-conditioned-agility/pretrain-v0/train"
|
||||
# label = "gait-conditioned-agility/pretrain-v0/train"
|
||||
label = "gait-conditioned-agility/pretrain-go2/train"
|
||||
|
||||
|
||||
env, policy = load_env(label, headless=headless)
|
||||
|
||||
num_eval_steps = 250
|
||||
num_eval_steps = 250 #250
|
||||
gaits = {"pronking": [0, 0, 0],
|
||||
"trotting": [0.5, 0, 0],
|
||||
"bounding": [0, 0.5, 0],
|
||||
"pacing": [0, 0, 0.5]}
|
||||
|
||||
# x_vel_cmd, y_vel_cmd, yaw_vel_cmd = 1.5, 0.0, 0.0
|
||||
x_vel_cmd, y_vel_cmd, yaw_vel_cmd = 1.5, 0.0, 0.0
|
||||
body_height_cmd = 0.0
|
||||
step_frequency_cmd = 3.0
|
||||
gait = torch.tensor(gaits["trotting"])
|
||||
step_frequency_cmd = 3.0 #3.0
|
||||
# gait = torch.tensor(gaits["trotting"])
|
||||
gait = torch.tensor(gaits["pronking"])
|
||||
footswing_height_cmd = 0.08
|
||||
pitch_cmd = 0.0
|
||||
roll_cmd = 0.0
|
||||
|
@ -116,6 +122,8 @@ def play_go1(headless=True):
|
|||
measured_x_vels = np.zeros(num_eval_steps)
|
||||
target_x_vels = np.ones(num_eval_steps) * x_vel_cmd
|
||||
joint_positions = np.zeros((num_eval_steps, 12))
|
||||
###### -----------ldt---------------
|
||||
joint_torques = np.zeros((num_eval_steps, 12))
|
||||
|
||||
obs = env.reset()
|
||||
|
||||
|
@ -137,10 +145,12 @@ def play_go1(headless=True):
|
|||
|
||||
measured_x_vels[i] = env.base_lin_vel[0, 0]
|
||||
joint_positions[i] = env.dof_pos[0, :].cpu()
|
||||
###### -----------ldt---------------
|
||||
joint_torques[i] = env.torques.detach().cpu().numpy()
|
||||
|
||||
# plot target and measured forward velocity
|
||||
from matplotlib import pyplot as plt
|
||||
fig, axs = plt.subplots(2, 1, figsize=(12, 5))
|
||||
fig, axs = plt.subplots(3, 1, figsize=(12, 5))
|
||||
axs[0].plot(np.linspace(0, num_eval_steps * env.dt, num_eval_steps), measured_x_vels, color='black', linestyle="-", label="Measured")
|
||||
axs[0].plot(np.linspace(0, num_eval_steps * env.dt, num_eval_steps), target_x_vels, color='black', linestyle="--", label="Desired")
|
||||
axs[0].legend()
|
||||
|
@ -153,6 +163,11 @@ def play_go1(headless=True):
|
|||
axs[1].set_xlabel("Time (s)")
|
||||
axs[1].set_ylabel("Joint Position (rad)")
|
||||
|
||||
axs[2].plot(np.linspace(0, num_eval_steps * env.dt, num_eval_steps), joint_torques, linestyle="-", label="Measured")
|
||||
axs[2].set_title("Joint Torques")
|
||||
axs[2].set_xlabel("Time (s)")
|
||||
axs[2].set_ylabel("Joint Torques (Nm)")
|
||||
|
||||
plt.tight_layout()
|
||||
plt.show()
|
||||
|
||||
|
|
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue