<a id="readme-top"></a>

<!-- PROJECT LOGO -->
<div align="center">
  <img src="assets/github-logo.png" alt="Logo" width="550">
  
  <p>
  </p>
    <b>[<a href="docs/RUN_SIMULATION.md">Documentation</a> | <a href="docs/RUN_SIMULATION_CN.md">中文说明</a>]</b>
  <hr>
  <img src="assets/boston_thomas_park.gif" width="800" style="display: block; margin: 0 auto;">
  <img src="assets/singapore.gif" width="800" style="display: block; margin: 0 auto;">
  <img src="assets/boston.gif" width="800" style="display: block; margin: 0 auto;">
	

  <br>

  <p align="left">
    This is the official project repository of <b>DriveArena: A Controllable Generative Simulation Platform for Autonomous Driving</b>.
  </p>
</div>

---


## Table of Contents:
- [Table of Contents:](#table-of-contents)
- [🤩 Running DriveArena](#-running-drivearena)
- [:fire: Highlights](#fire-highlights)
- [Acknowledgments](#acknowledgments)
- [📝 License](#-license)




## 🤩 Running DriveArena
**To run the closed-loop / open-loop simulation, please refer to the [[Documentation](docs/RUN_SIMULATION.md)|[中文说明](docs/RUN_SIMULATION_CN.md)].**

Just for three steps, and you will be able to launch DriveArena as the window below:


<div align="center">
  <img width=800px src="assets/simulation.png">
</div>

## :fire: Highlights

<b> DriveArena </b> is a simulation platform that can

* Provide closed-loop high-fidelity testing environments for vision-based driving agents.
* Dynamically control the movement of all vehicles in the scenarios.
* Generate realistic simulations with road networks from any city worldwide.
* Follow a modular architecture, allowing the easy replacement of each module.

<div align="center">
  <img width=600px src="assets/pipeline_2.png">
</div>

The <b>DriveArena</b> is pretrained on nuScenes dataset. All kinds of vision-based driving agents, such as UniAD and VAD, can be combined with <b>DriveArena</b> to evaluate their actual driving performance in closed-loop realistic simulation environments.


<!-- ACKNOWLEDGMENTS -->
## Acknowledgments

We utilized the following repos during development:

* [LimSim](https://github.com/PJLab-ADG/LimSim/tree/LimSim_plus)
* [MagicDrive](https://github.com/cure-lab/MagicDrive)
* [UniAD](https://github.com/OpenDriveLab/UniAD)

Thanks for their Awesome open-sourced work!

<!-- LICENSE -->
## 📝 License

Distributed under the [Apache 2.0 license](./LICENSE).


<p align="right">(<a href="#readme-top">back to top</a>)</p>
