Skip to content

priest-yang/Deep-Tracking-Control

Repository files navigation

Deep Tracking Control with Lite3

Main contribution

To summarize, this project aims at combining the traditional MPC-based and terrain-aware foothold planner with the deep reinforcement learning(DRL) . The goal is to achieve robust control in extremely risky terrains such as stepping stone.

You can find the modifications in legged_robot_dtc.py and legged_robot_config.py.

Foothold Planner

In this project, we adapt a method similar to TAMOLS and Mini-Cheetah.

An estimated foothold will firstly be calculated by the formula:

r i c m d = p s h o u l d e r , i + p s y m m e t r y + p c e n t r i f u g a l

where

p s h o u l d e r , i = p k + R z ( Ψ k ) l i

p s y m m e t r y = t s t a n c e 2 v + k ( v v c m d )

The centrifugal term is omitted. p k is body position at k-timestep. l i is the shoulder position for i t h leg with respect to local frame. R z ( Ψ k ) is the rotation matrix translating velocity to global frame. t s t a n c e is time cycle and k = 0.03 is the feedback gain.

However, we choose the footholds solely based on quantitative score from various aspects (distance current pos, terrain variance/gradient, support area etc.), rather than solving a optimization problem.

DRL

We use the framework from isaac-gym, with PPO algorithm. With the following feature added:

  • Remove teacher-student framework

  • Add GRU and CE-net as terrain encoder. Latent dimension was increased from 64 to 512.

  • TODO: symmetric data augmentation

To integrate the foothold into DRL, the relative position to the optimized foothold was fed as observations for both actor and critic network. Moreover, a sparse reward term was also added, which will be triggered in the touch-down time.

Estimated training time is 10 hours.

Set up

pip install -e rsl_rl

pip install -e .

Reference

  1. DTC: Deep Tracking Control