Welcome to CityFlow.

A Multi-Agent Reinforcement Learning Environment
for Large Scale City Traffic Scenario
Learn More

What is CityFlow?

CityFlow is a new designed open-source traffic simulator, which is much faster than SUMO (Simulation of Urban Mobility).

CityFlow can support flexible definitions for road network and traffic flow based on synthetic and real-world data. It also provides user-friendly interface for reinforcement learning. Most importantly, CityFlow is more than twenty times faster than SUMO and is capable of supporting city-wide traffic simulation with an interactive render for monitoring. Besides traffic signal control, CityFlow could serve as the base for other transportation studies and can create new possibilities to test machine learning methods in the intelligent transportation domain.


Great features you'll love.


Compared the performance with SUMO, CityFlow outperforms in all scenarios and even speedups about 25 times on large scale road networks.


Compared the average duration of vehicles under different traffic volume settings with SUMO, the difference is lower than 0.1% in some scenarios.

For large traffic

CityFlow is designed for large scale city traffic scenario, which includes hundreds of intersections and tens of thousands of running vehicles.

Python Interface

User can fully control the traffic signals and get various kinds of information about current state through a python interface.


All simulations from CityFlow are reproducible. Make it easy to debug and improve reinforcement algorithm.

Open Source

CityFlow is an open source project under Apache 2.0 license. Welcome to feedback your issues and suggestions.

Get started now.

Pull the docker container, or download and compile the source code.