About CityTrafficSimulator

CityTrafficSimulator is a microscopic traffic simulation software for small- to medium-sized traffic networks, such as intersections or small urban areas.

Based on the idea of traffic-simulation.de, CityTrafficSimulator implements the Intelligent Driver Model. However, its main goal is to be as flexible and universal as possible so that the user can model almost any situation, including real-world scenarios. Therefore, CityTrafficSimulator uses Bezier curves for defining routes. They connect multiple nodes, creating a network of paths on which the traffic will be simulated. The Signal Light Editor allows to define signal lights with arbitrary signal times (red and green phases) and arrange them in groups. Each signal can then be assigned to one or more network nodes to control the traffic flow.

CityTrafficSimulator modeling a large intersection in downtown Hamburg.
CityTrafficSimulator modeling a large intersection in downtown Hamburg.

CityTrafficSimulator offers the following main features:

  • Microscopic traffic simulation using the Intelligent Driver Model as car-following model
  • Own line changing model offering both forced and voluntary line changes
  • Four different vehicle types (Car, Truck, Bus, Tram)
  • Arbitrary road network design with shared or distinct routes (e.g. bus lane) for each vehicle group
  • Road network can be arranged on different layers for grade separation
  • Real-time per-vehicle destination routing considering network layout and traffic volume
  • User-defined number of signal lights with arbitrary signal times
  • Evaluation of different statistics, such as average velocity, number of stops, number of line changes, etc.
  • Selectable simulation speed and granularity


Make sure to have a look at the demo networks and manual.

Development and Download

The original C# version of CityTrafficSimulator is no longer in active development. The source code is hosted on my Github profile. You can download the latest version (0.7-2) here:
PDF Download program: citytrafficsimulator_0.7-2.zip
PDF Download sources: Github Repository

I'm currently developing a complete re-implementation of the software in modern C++ 11. While the core mechanics will be very similar to the original version and still implement a microscopic traffic simulation software for small- to medium-sized traffic networks, the main motivation of this version is to provide a much better software architecture. This should make implementing custom extensions and integrating CTS into third-party software easier. Furthermore, I have a couple of ideas for cool features that would not be implementable as easy in the original version. You find CityTrafficSimulator++ also on Github.