PJLab-ADG / LimSim

LimSim & LimSim++: Integrated traffic and autonomous driving simulators with (M)LLM support
https://pjlab-adg.github.io/LimSim/
GNU General Public License v3.0
415 stars 35 forks source link

logo-full.svg

Custom badge Custom badge Custom badge Custom badge

🚀News:

LimSim

LimSim is a Long-term Interactive Multi-scenario traffic Simulator, which aims to provide a continuous simulation capability under the complex urban road network.

Quick Start

After configuring the runtime environment, download the LimSim source code to your local machine:

git clone https://github.com/PJLab-ADG/LimSim.git

Finally, you need to install the required Python extensions:

cd LimSim
pip install -r requirements.txt

Now, the local installation and deployment of LimSim are complete.

1. Real-time Sim

Real-time simulation following the Ego vehicle is the fundamental feature of LimSim. To experience it, run the following command:

python ModelExample.py

2. Simulation replay

In the root directory, running the following command will invoke LimSim's replay feature:

python ReplayExample.py

For more information of our code, please see our Online Documentation.

If you have any problem when installing and deployment, feel free to open an issue here!

🎁 Main Features

🖥️ GUI

LimSim has a cross-platform user-friendly GUI, which includes not only a beautiful simulation interface, but also information on road network and ego-vehicle status.

limsim_gui.png

🛣️ Multi-scenarios support

LimSim supports road scenarios not limited to freeways, signalized intersections, roundabouts and overpasses.

scenarios.gif

📊 Scenario Evaluation

After running a long-term simulation with all kinds of scenarios contained in it, LimSim generates a log report and extract the key scenarios via the evaluation results.

evaluation.gif

💡Co-sim with SUMO & CARLA

LimSim supports co-simulation with CARLA and SUMO, guaranteeing that all three softwares show identical vehicle status. Please see [the docs](https://pjlab-adg.github.io/LimSim/zh/GettingStarted/carla_cosim/) for more information.

cosim.gif

➕Additional Maps

LimSim supports the freewayB and Expressway_A maps from the CitySim datasets. However, we have not included these two road network files in this library due to copyright.

To run these two maps, you need to:

  1. Go to CitySim Repo and submit the data access form.
  2. Get access to the dataset and download the .net.xml files in both the freewayB and Expressway_A data folders.
  3. Copy the road network files (.net.xml) to the relevant networkFiles/CitySim folder and ensure that your file paths are as follows:
    networkFiles/CitySim/freewayB/freewayB.net.xml
    networkFiles/CitySim/Expressway_A/Expressway_A.net.xml

Acknowledgments

We would like to thank the authors and developers of the following projects, this project is built upon these great projects.

Contact

If you have any suggestions or collaboration about this repo, feel free to create a issue/PR or send email to us (wenlicheng@pjlab.org.cn).

Citation

If you use LimSim in your research , please use the following BibTeX entry.

@misc{wen2023limsim,
      title={LimSim: A Long-term Interactive Multi-scenario Traffic Simulator}, 
      author={Licheng Wen and Daocheng Fu and Song Mao and Pinlong Cai and Min Dou and Yikang Li and Yu Qiao},
      year={2023},
      eprint={2307.06648},
      archivePrefix={arXiv},
      primaryClass={eess.SY}
}

License

LimSim is released under the GNU GPL v3.0 license.