Giter Site home page Giter Site logo

mbappe-nuplan's Introduction

MBAPPE: Mcts-Built-Around Prediction for Planning Explicitly

This repository contains the code for the MBAPPE paper: MBAPPE: Mcts-Built-Around Prediction for Planning Explicitly.

mbappe

This video presents a vizualisation of MBAPPE's exploration process and choice in different scenarios:

Vizualisation video

Installation

Download the nuPlan dataset

You can download the dataset here: https://www.nuscenes.org/nuplan#download.

We advise you to use the mini dataset for personal workstation (lighter version of the nuPlan dataset).

Add nuPlan dataset path to environnement

Define NUPLAN_DATA_ROOT, NUPLAN_MAPS_ROOT and NUPLAN_EXP_ROOT in the running enviromnent. The nuplan dataset should be in the home user $HOME.

export NUPLAN_DATA_ROOT="$HOME/nuplan/dataset"
export NUPLAN_MAPS_ROOT="$HOME/nuplan/dataset/maps"
export NUPLAN_EXP_ROOT="$HOME/nuplan/exp"

Clone MBAPPE

git clone [email protected]:raphychek/mbappe-nuplan.git
cd mbappe-nuplan

Install the packages

The project have been tested with Python 3.9.

# Using conda
conda env create -f environment.yml
conda activate nuplan

# Or using venv
python3 -m venv venv
source venv/bin/activate
pip install -r requirements.txt
pip install -r requirements-torch.txt

# Then install the project
pip install -e .

Run caching to prepare for Urban Driver training

python run_caching.py

Train a Urban Driver for multi-agent model

python run_training.py

Run simulation with MCTS

First, set the variable "MODEL_PATH" in run_simulator.py to the trained weights path of the Urban Driver multi agents. Then:

python run_simulation.py

Run nuBoard

First, set the variable "experiment_path" in run_nuboard.py to the logs path of the simulation. Then:

python run_nuboard.py

Note

This is a simplified implementation of MBAPPE. MCTS functions are in regular Python instead of jax to avoid compatibility issues and compilation requirements.

Code related to the nuPlan devkit comes from https://github.com/motional/nuplan-devkit.

Current limitations

Internal MCTS simulations suppose lane width to be constant. This sometimes leads to nearly impossible situations with extremely narrow turns. Real lane width can be fetched from the API, but it has not been implemented yet. This should significantly improve results.

If you find our code or paper useful, please cite:

@misc{chekroun2023mbappe,
      title={MBAPPE: MCTS-Built-Around Prediction for Planning Explicitly}, 
      author={Raphael Chekroun and Thomas Gilles and Marin Toromanoff and Sascha Hornauer and Fabien Moutarde},
      year={2023},
      eprint={2309.08452},
      archivePrefix={arXiv},
      primaryClass={cs.RO}
}

This repository is managed by Raphael Chekroun (raphychek), Thomas Gilles (Thomas0Gilles) and Valentin Charraut (vcharraut).

mbappe-nuplan's People

Contributors

raphychek avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.