diff --git a/README.md b/README.md index 74bcccc9..4c24e962 100644 --- a/README.md +++ b/README.md @@ -31,22 +31,44 @@ --> ------ -### 💡 Notice -DriveArena V1.0 is currently under active development and will be open-sourced soon. -**If you want to get informed once the code is released, please fill out this Google form.** ### :new: Updates +`[2024-09-05]:` **We are happy to announce the release of DriveArena V1.0 🎊🎊** + `[2024-08-02]:` The paper can be accessed at [arxiv](https://arxiv.org/abs/2408.00415). `[2024-07-30]:` We've released the [project page](https://pjlab-adg.github.io/DriveArena/) of DriveArena! ------ -## 🤩 Run DriveArena Demo + +## Table of Contents: +- [Table of Contents:](#table-of-contents) +- [🤩 Running DriveArena](#-running-drivearena) +- [:fire: Highlights](#fire-highlights) +- [🏁 Leaderboard of Driving Agents](#-leaderboard-of-driving-agents) + - [1. Open-loop Evaluation Leaderboard](#1-open-loop-evaluation-leaderboard) + - [2. Closed-loop Evaluation Leaderboard](#2-closed-loop-evaluation-leaderboard) +- [📌 Roadmap](#-roadmap) +- [Acknowledgments](#acknowledgments) +- [📝 License](#-license) +- [🔖 Citation](#-citation) + + + + +## 🤩 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: + + +
+ +
+ ## :fire: Highlights DriveArena is a simulation platform that can @@ -112,7 +134,7 @@ We provide a leaderboard to present the driving performance evaluation of drivin -### 2. Closed-loop Evaluation Leaderboard with DriveArena +### 2. Closed-loop Evaluation Leaderboard @@ -157,15 +179,16 @@ We provide a leaderboard to present the driving performance evaluation of drivin ## 📌 Roadmap - [x] Demo Website Release -- [ ] V1.0 Release - - [ ] Traffic Manager Code - - [ ] World Dreamer - - [ ] Inference Code - - [ ] Training Code - - [ ] Pretrained Weights +- [x] V1.0 Release + - [x] Traffic Manager Code + - [x] World Dreamer + - [x] Inference Code + - [x] Training Code + - [x] Pretrained Weights - [ ] Evaluation Code +- [ ] Development Turtorial - [ ] Driving Agent Support - - [ ] UniAD + - [x] UniAD - [ ] VAD - [ ] LeapAD - [ ] Video Autoregression Dreamer @@ -175,19 +198,19 @@ We provide a leaderboard to present the driving performance evaluation of drivin We utilized the following repos during development: -* [LimSim++](https://github.com/PJLab-ADG/LimSim/tree/LimSim_plus) +* [LimSim (Ours!)](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). -## Citation +## 🔖 Citation If you find our paper and codes useful, please kindly cite us via: diff --git a/config.yaml b/TrafficManager/config.yaml similarity index 90% rename from config.yaml rename to TrafficManager/config.yaml index 6d29310d..e32f9409 100644 --- a/config.yaml +++ b/TrafficManager/config.yaml @@ -1,7 +1,7 @@ # Server Configuration servers: - diffusion: "http://127.0.0.1:11000/" - driver: "http://127.0.0.1:11001/" + diffusion: "http://127.0.0.1:11002/" + driver: "http://127.0.0.1:11003/" # Simulation Configuration simulation: diff --git a/TrafficManager/sim_manager.py b/TrafficManager/sim_manager.py index ee2282e7..2df7e5ad 100644 --- a/TrafficManager/sim_manager.py +++ b/TrafficManager/sim_manager.py @@ -296,7 +296,7 @@ def cleanup(self): def main(): - sim_manager = SimulationManager('config.yaml') + sim_manager = SimulationManager('./TrafficManager/config.yaml') sim_manager.run_simulation() diff --git a/assets/simulation.png b/assets/simulation.png index 1b9a0341..76778c0a 100644 Binary files a/assets/simulation.png and b/assets/simulation.png differ diff --git a/docs/RUN_SIMULATION.md b/docs/RUN_SIMULATION.md index 6650d6cf..d26d9a31 100644 --- a/docs/RUN_SIMULATION.md +++ b/docs/RUN_SIMULATION.md @@ -1,8 +1,10 @@ # 🤩 Run DriveArena Demo! -The communication between TrafficManager, WorldDreamer and DrivingAgent is based on **FastAPI**. **WorldDreamer** and **DrivingAgent** can be run on the **remote server**, while **TrafficManager** needs to be run on **a local machine with a screen**. +The communication between TrafficManager, WorldDreamer and DrivingAgent is based on **FastAPI**. -## Launch WorldDreamer Service +⚠️⚠️**WorldDreamer** and **DrivingAgent** can be run on the **remote server**, while **TrafficManager** needs to be run on **a local machine with a screen**. + +## Step 1: Launch WorldDreamer Service Please follow the [README.md](../WorldDreamer/README.md) to prepare the environment and download the weights. Then you can run the following code. @@ -10,14 +12,14 @@ Then you can run the following code. cd WorldDreamer && python tools/dreamer_fast_api.py --resume=path/to/your/weight ``` -## Launch DrivingAgent Service +## Step 2: Launch DrivingAgent Service Please follow the [README.md](../DrivingAgents/UniAD/README.md) to prepare the environment and download the weights. ```shell cd DrivingAgents/UniAD && python demo/fast_api_uniad.py ``` -## Launch TrafficManager and Start Simulation +## Step 3: Launch TrafficManager and Start Simulation Please follow the [README.md](../TrafficManager/README.md) to start the simulation. If everything is all right, you can see a window like this! diff --git a/docs/RUN_SIMULATION_CN.md b/docs/RUN_SIMULATION_CN.md index 01557df3..2324a0da 100644 --- a/docs/RUN_SIMULATION_CN.md +++ b/docs/RUN_SIMULATION_CN.md @@ -1,8 +1,10 @@ # 🤩 运行 DriveArena 模拟! -TrafficManager、WorldDreamer 和 DrivingAgent 之间的通信基于 **FastAPI。WorldDreamer** 和 **DrivingAgent** 可以在**远程服务器**上运行,而 **TrafficManager** 需要在**带有显示器的本地机器**上运行。 +TrafficManager、WorldDreamer 和 DrivingAgent 之间的通信基于 **FastAPI**。 -## 启动 WorldDreamer 服务 +⚠️⚠️**WorldDreamer** 和 **DrivingAgent** 可以在**远程服务器**上运行,而 **TrafficManager** 需要在**带有显示器的本地机器**上运行。 + +## 步骤一:启动 WorldDreamer 服务 请按照 [README.md](../WorldDreamer/README.md) 准备环境并下载权重。 @@ -11,7 +13,7 @@ TrafficManager、WorldDreamer 和 DrivingAgent 之间的通信基于 **FastAPI cd WorldDreamer && python tools/dreamer_fast_api.py --resume=path/to/your/weight ``` -## 启动 DrivingAgent 服务 +## 步骤二:启动 DrivingAgent 服务 请按照 [README.md](../DrivingAgents/UniAD/README_CN.md) 准备环境并下载权重。 @@ -19,7 +21,7 @@ cd WorldDreamer && python tools/dreamer_fast_api.py --resume=path/to/your/weight cd DrivingAgents/UniAD && python demo/fast_api_uniad.py ``` -## 启动 TrafficManager 并开始模拟 +## 步骤三:启动 TrafficManager 并开始模拟 请按照 [README.md](../TrafficManager/README.md) 启动模拟。 如果一切顺利,你将看到一个类似这样的窗口!