Skip to content

Latest commit

 

History

History
executable file
·
118 lines (91 loc) · 2.9 KB

README.md

File metadata and controls

executable file
·
118 lines (91 loc) · 2.9 KB

MPPI Playground

This repository contains an implementation of Model Predictive Path Integral Control (MPPI) with PyTorch to accelerate computations on the GPU.

Tested Native Environment

  • Ubuntu Focal 20.04 and 22.04
  • NVIDIA Driver 510 or later due to PyTorch 2.x (optional for GPU acceleration)

Dependencies

Docker Setup

Install Docker

Installation guide

# Install from get.docker.com
curl -fsSL https://get.docker.com -o get-docker.sh
sudo sh get-docker.sh
sudo groupadd docker
sudo usermod -aG docker $USER

Setup GPU for Docker

Installation guide

curl -fsSL https://nvidia.github.io/libnvidia-container/gpgkey | sudo gpg --dearmor -o /usr/share/keyrings/nvidia-container-toolkit-keyring.gpg \
  && curl -s -L https://nvidia.github.io/libnvidia-container/stable/deb/nvidia-container-toolkit.list | \
    sed 's#deb https://#deb [signed-by=/usr/share/keyrings/nvidia-container-toolkit-keyring.gpg] https://#g' | \
    sudo tee /etc/apt/sources.list.d/nvidia-container-toolkit.list 

sudo apt-get update

sudo apt-get install -y nvidia-container-toolkit nvidia-container-runtime

sudo nvidia-ctk runtime configure --runtime=docker

sudo systemctl restart docker

Installation

with Docker (Recommend)

# build container with GPU support
make build-gpu
# or build container without GPU support
# make build-cpu

# Open remote container via Vscode (Recommend)
# 1. Open the folder using vscode
# 2. Ctrl+P and select 'devcontainer rebuild and reopen in container'
# Then, you can skip the following commands

# Or Run container via terminal with GPU support
make bash-gpu
# or Run container via terminal without GPU support
# make bash-cpu

with venv

python3 -m venv .venv
source .venv/bin/activate
pip3 install -e .[dev]

Examples

Navigation 2D

python3 app/navigation2d.py

navigation2d

Racing

python3 app/racing.py

racing

circuit course information (Japan Automotive AI Challenge 2024)

Pendulum

python3 app/pendulum.py

pendulum

Cartpole

python3 app/cartpole.py

cartpole

Mountain car

python3 app/mountaincar.py

mountaincar

Reference