/CityBrainLab

Primary LanguagePythonMIT LicenseMIT

News

2022/10/31: We have released the user interface for the visualization of our simulation. See the documentation for more details.

docs/figs/logo.png

City Brain Lab (CBLab) is a toolkit for scalable traffic simulation. CBLab consists of three components: CBEngine, CBData, and CBScenario, with which we make it possible to run large-scale traffic simulation on city-level road networks based on only raw traffic data.

docs/figs/overview.png

Learn more about three components respectively:

  • CBEngine: Scalable traffic simulator
  • CBData: Pipelines providing simulation inputs and learning to simulate
  • CBScenario: Benchmark framework for large-scale traffic policies

Why CBLab?

Traffic policies has made great progress in enhancing the performance of urban traffic. However, limited by the efficiency of traffic simulators and shortage in large-scale road network data, these policies are only trained over small road networks (e.g. 4x3 or 4x4).

CBLab supports very efficient traffic simulation and enriched large-scale road network data source for simulation. With CBLab, users can run traffic simulation and train traffic policies on real world road networks with 1,000-10,000 intersections, which brings about real improvement to the urban traffic.

Installation

CBEngine, the simulator, is implemented as a Python package cbengine. Use our Docker image for quick start.

docker pull citybrainlab/cbengine:latest

CBData and CBScenario are both based on easy-to-use Python scripts. Download our source code and view our `documentation`_ for instruction.