Towards better athletic intelligence
📦tbai
┣ 📂tbai_static # Static (high gain PD) controller
┣ 📂tbai_mpc_perceptive # Perceptive NMPC controller [1]
┣ 📂tbai_mpc_blind # Blind NMPC controller [1]
┣ 📂tbai_rl_perceptive # Perceptive RL controller [2]
┣ 📂tbai_rl_blind # Blind RL controller [2]
┣ 📂tbai_dtc # DTC controller (perceptive) [3]
┣ 📂tbai_joe # Perceptive NMPC controller with NN-based tracking controller [1],[3]
[1] Perceptive Locomotion through Nonlinear Model Predictive Control
https://arxiv.org/abs/2208.08373
[2] Learning robust perceptive locomotion for quadrupedal robots in the wild
https://arxiv.org/abs/2201.08117
[3] DTC: Deep Tracking Control
https://arxiv.org/abs/2309.15462
https://github.com/lnotspotl/tbai/assets/82883398/f451c12d-7525-4606-b722-726f63d852ca
https://github.com/lnotspotl/tbai/assets/82883398/1bf86da1-a3d4-44db-88c4-877ec78b06cc
https://github.com/lnotspotl/tbai/assets/82883398/7f6bdefa-4299-454b-a0ef-55e463e0c88d
https://github.com/lnotspotl/tbai/assets/82883398/ebc2d90d-5c03-4207-a868-2e9436c140d4
https://github.com/lnotspotl/tbai/assets/82883398/6cf672db-b737-4724-a6da-afa0c8dd19d5
https://github.com/lnotspotl/tbai/assets/82883398/e3455dd3-10e8-41da-bb02-87fbdf3de041
There are two steps to installing libtorch
. First, you need to download a suitable libtorch
version.
Once the library is downloaded, it's necessary to create a symlink to it in the dependencies
folder.
Here's how to do it:
Get your download link from the official PyTorch website. Note that opting for the (cxx11 ABI)
version is paramount.
If you download the (Pre-cxx11 ABI)
version, things won't work as necessary.
Now that you have your url, you can download the library, unzip it and create a symlink in the dependencies
folder.
wget <your-url>
unzip <downloaded-zip> -d <your-folder> # can be `dependencies`
ln -s <your-folder>/libtorch dependencies # Only necessary if, in the previous step, you did not unzip in `dependencies`
Your dependencies
folder should not look as follows:
That's it. You should now be able to compile the entire project. Enjoy 🤗
# Install dependencies
sudo apt install libmpfr-dev
# Download project
mkdir -p <your-file>/src && cd <your-file> && catkin init && cd src
git clone git@github.com:lnotspotl/tbai.git --recursive
# Install other dependencies using rosdep
cd .. && rosdep install --from-paths src --ignore-src -r -y && cd src/tbai
# !! Now install libtorch by following the installation guideline above
# Build tbai
catkin config -DCMAKE_BUILD_TYPE=Release
bash ./tbai.bash --build # This will only build the necessary packages
# Source tbai
cd ../.. && source devel/setup.bash
If any of the steps throws an error for you, please let use know and we will try to extend this guideline with a fix as soon as possible. Thanks 🤗
This project stands on the shoulders of giants. None of this would have been possible were it not for many amazing open-source projects. Here are a couple that most inspiration was drawn from and that were instrumental during the development:
Thank you all 🤗