update better default training settings; update new policy and results; update readme.
This commit is contained in:
19
README.md
19
README.md
@@ -73,12 +73,12 @@ It is an official [MoE-CTS](https://robogauge.github.io/static/files/arxiv.pdf)
|
|||||||
<img src="resources/results/robogauge_compare.png" width="100%"/>
|
<img src="resources/results/robogauge_compare.png" width="100%"/>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
### Algorithm Results (Best of 150k training steps)
|
### Algorithm Results (Best Checkpoint Results)
|
||||||
|
|
||||||
| Model | Score | Tracking | Safety | Quality | Level |
|
| Model | Score | Tracking | Safety | Quality | Level |
|
||||||
| --- | --- | --- | --- | --- | --- |
|
| --- | --- | --- | --- | --- | --- |
|
||||||
| go2_moe_cts (go2_rl_robotlab) | **0.6828** | **0.6785** | 0.7552 | **0.7645** | **8.17** |
|
| go2_moe_cts (go2_rl_robotlab) | **0.6984** | **0.7055** | **0.8159** | **0.7693** | **8.30** |
|
||||||
| go2_moe_cts (go2_rl_gym) | **0.6713** | 0.6669 | **0.7857** | 0.7392 | 7.85 |
|
| go2_moe_cts (go2_rl_gym) | 0.6713 | 0.6669 | 0.7857 | 0.7392 | 7.85 |
|
||||||
| [CTS](https://arxiv.org/pdf/2405.10830) vanilla | 0.5786 | 0.5755 | 0.7066 | 0.6624 | 6.83 |
|
| [CTS](https://arxiv.org/pdf/2405.10830) vanilla | 0.5786 | 0.5755 | 0.7066 | 0.6624 | 6.83 |
|
||||||
| [HIM](https://github.com/InternRobotics/HIMLoco) | 0.5379 | 0.5453 | 0.6476 | 0.6050 | 6.19 |
|
| [HIM](https://github.com/InternRobotics/HIMLoco) | 0.5379 | 0.5453 | 0.6476 | 0.6050 | 6.19 |
|
||||||
| [DreamWaQ](https://arxiv.org/abs/2301.10602) | 0.5054 | 0.5105 | 0.6149 | 0.5730 | 5.74 |
|
| [DreamWaQ](https://arxiv.org/abs/2301.10602) | 0.5054 | 0.5105 | 0.6149 | 0.5730 | 5.74 |
|
||||||
@@ -251,16 +251,17 @@ xml_path: "{ROOT_DIR}/resources/go2/your-custom-scene.xml"
|
|||||||
## Differences from `go2_rl_gym`
|
## Differences from `go2_rl_gym`
|
||||||
|
|
||||||
- Motor:
|
- Motor:
|
||||||
- use official unitree motor model instead of simple PD controller
|
- use official unitree motor model instead of simple PD controller.
|
||||||
- Rewards:
|
- Rewards:
|
||||||
- different tracking reward form (fixed sigma vs. dynamic sigma)
|
- 2x tracking reward weights due to better performance.
|
||||||
- lower joint_acc_l2 weight in Lab due to physics-step level implementation and sensitivity to outliers
|
- different tracking reward form (fixed sigma vs. dynamic sigma).
|
||||||
- extra joint_pos_penalty_l1 reward in Lab due to better performance
|
- lower joint_acc_l2 weight in Lab due to physics-step level implementation and sensitivity to outliers.
|
||||||
|
- extra joint_pos_penalty_l1 reward in Lab due to better performance.
|
||||||
- Domain randomization:
|
- Domain randomization:
|
||||||
- no randomized action delay, use motor-level delay instead
|
- no randomized action delay, use motor-level delay instead.
|
||||||
- no motor strength randomization due to implementation constraints in Lab.
|
- no motor strength randomization due to implementation constraints in Lab.
|
||||||
- History length: 10 in Lab vs. 5 in Gym, due to better performance with longer history in Lab.
|
- History length: 10 in Lab vs. 5 in Gym, due to better performance with longer history in Lab.
|
||||||
|
- Terrain Difficulty: use lab's continuous difficulty levels.
|
||||||
---
|
---
|
||||||
|
|
||||||
## Acknowledgements
|
## Acknowledgements
|
||||||
|
|||||||
@@ -1,4 +1,4 @@
|
|||||||
policy_path: "{ROOT_DIR}/deploy/pre_train/go2/go2_moe_cts_185k_0.6828.pt" # policy.pt exported by running scripts/rsl_rl/play.py
|
policy_path: "{ROOT_DIR}/deploy/pre_train/go2/go2_moe_cts_176k_0.6984.pt" # policy.pt exported by running scripts/rsl_rl/play.py
|
||||||
|
|
||||||
xml_path: "{ROOT_DIR}/resources/go2/stairs_and_slope.xml"
|
xml_path: "{ROOT_DIR}/resources/go2/stairs_and_slope.xml"
|
||||||
|
|
||||||
|
|||||||
BIN
deploy/pre_train/go2/go2_moe_cts_176k_0.6984.onnx
Normal file
BIN
deploy/pre_train/go2/go2_moe_cts_176k_0.6984.onnx
Normal file
Binary file not shown.
BIN
deploy/pre_train/go2/go2_moe_cts_176k_0.6984.pt
Normal file
BIN
deploy/pre_train/go2/go2_moe_cts_176k_0.6984.pt
Normal file
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
Before Width: | Height: | Size: 896 KiB After Width: | Height: | Size: 304 KiB |
@@ -350,12 +350,12 @@ class RewardsCfg:
|
|||||||
|
|
||||||
track_lin_vel_xy_exp = RewTerm(
|
track_lin_vel_xy_exp = RewTerm(
|
||||||
func=mdp.track_lin_vel_xy_exp,
|
func=mdp.track_lin_vel_xy_exp,
|
||||||
weight=1.0,
|
weight=2.0,
|
||||||
params={"command_name": "base_velocity", "std": 0.5}
|
params={"command_name": "base_velocity", "std": 0.5}
|
||||||
)
|
)
|
||||||
track_ang_vel_z_exp = RewTerm(
|
track_ang_vel_z_exp = RewTerm(
|
||||||
func=mdp.track_ang_vel_z_exp,
|
func=mdp.track_ang_vel_z_exp,
|
||||||
weight=0.5,
|
weight=1.0,
|
||||||
params={"command_name": "base_velocity", "std": 0.5}
|
params={"command_name": "base_velocity", "std": 0.5}
|
||||||
)
|
)
|
||||||
lin_vel_z_l2 = RewTerm(func=mdp.lin_vel_z_l2, weight=-2.0)
|
lin_vel_z_l2 = RewTerm(func=mdp.lin_vel_z_l2, weight=-2.0)
|
||||||
@@ -466,7 +466,7 @@ class Go2EnvCfg(ManagerBasedRLEnvCfg):
|
|||||||
"""Merged configuration for the Go2 robot on rough terrain."""
|
"""Merged configuration for the Go2 robot on rough terrain."""
|
||||||
|
|
||||||
# Scene settings
|
# Scene settings
|
||||||
scene: Go2SceneCfg = Go2SceneCfg(num_envs=8192, env_spacing=0.5)
|
scene: Go2SceneCfg = Go2SceneCfg(num_envs=16384, env_spacing=0.5)
|
||||||
# Basic settings
|
# Basic settings
|
||||||
observations: ObservationsCfg = ObservationsCfg()
|
observations: ObservationsCfg = ObservationsCfg()
|
||||||
actions: ActionsCfg = ActionsCfg()
|
actions: ActionsCfg = ActionsCfg()
|
||||||
|
|||||||
@@ -178,7 +178,7 @@ TERRAIN_CFG = Go2TerrainGeneratorCfg(
|
|||||||
# slope correction = 0.75 ~ 36.9 degrees by default,
|
# slope correction = 0.75 ~ 36.9 degrees by default,
|
||||||
# but recommended to set for each terrain type separately using with_slope_threshold
|
# but recommended to set for each terrain type separately using with_slope_threshold
|
||||||
slope_threshold=0.75,
|
slope_threshold=0.75,
|
||||||
use_gym_difficulty=True,
|
use_gym_difficulty=False,
|
||||||
use_cache=False,
|
use_cache=False,
|
||||||
sub_terrains={
|
sub_terrains={
|
||||||
"wave": with_slope_threshold(
|
"wave": with_slope_threshold(
|
||||||
|
|||||||
Reference in New Issue
Block a user