Tutorials

Note

These tutorials assume minor computer skills. If you run into any questions please read the page Basics/Basic Computer Skills.

Beginner Tutorials#

SUMO User Conference Tutorials#

The SUMO User Conference is an annual event organized by the German Aerospace Center (DLR) in Berlin. Since 2015, each conference begins with a SUMO tutorial session. Below you can find the tutorial material (slide deck and input files). Since 2019, the tutorials have also been recorded on video.

Files#

  • SUMO 2015: network editing with xml patch, persons,
  • SUMO 2016: network editing, meso, containers, New Features 2016 (Slides)
  • SUMO 2017: network editing, randomTrips, calibrators (xml only), public transport (obsolete)
  • SUMO 2018: fixing intermodal junctions, calibrators in netedit, junction model parameters, editing shapes
  • SUMO 2019: network editing, visualizing traffic data, public transport from OSM, parking, netgenerate
  • SUMO 2020: turn lanes, routeSampler.py, defining counting data in netedit, taxi/DRT
  • SUMO 2021: traffic light layout, indirect left turn, TAZ, OD-traffic, GTFS
  • SUMO 2022: network editing, flows, opposite driving, pedestrian crossings, parking search
  • SUMO 2023: graphical diff, personFlow, plotting tools, analyzing repeated runs
  • SUMO 2024: debugging simulation warnings, pedestrian models, flying taxis (a transcription is available here)

Videos#

Watch the 2019 Tutorial

Watch the 2020 Tutorial

Watch the 2021 Tutorial

Watch the 2022 Tutorial (a transcription is available here)

Watch the 2023 Tutorial (a transcription is available here)

Watch the 2024 Tutorial (a transcription is available here)

Advanced Tutorials#

  • Hello SUMO - The simplest net and a single car set up "by hand"
  • ScenarioGuide - High level outline of the steps needed to build a simulation scenario
  • HighwayDetector - How to create a highway scenario based on induction loop data
  • FundamentalDiagram - How to compute a fundamental diagram with SUMO
  • PT from OpenStreetMap - Creating a runnable public transit scenario entirely from OpenStreetMap
  • Importing GTFS - Importing public transport schedules from public sources using the General Transit Feed Specification
  • Port - Creating a scenario that simulates the port logistics of an arbitrary port from OpenStreetMap

TraCI Tutorials#

These tutorials use the Python-TraCI Library for interfacing a python script with a running sumo simulation.

Other#

Curso de Simulação em Mobilidade#

Udemy tutorial in Portuguese courtesy of Ednardo Ferreira.

ITSC 2015#

Im- and Export#

  • Trace File Generation - Shows how to obtain vehicular trace files, usable for simulating vehicular communication

Calibration/Validation#

  • Calibration/San Pablo Dam - Calibration of car-following parameter using vehicle passing times on observation points as used during the NEARCTIS summer school

Misc#

Further Sources for Examples#

Using Examples from the Test Suite#

SUMO comes with a large set of tests, just browse them at <SUMO_HOME>/tests. They are set up to be running by using a testing environment, but it is also possible to extract them and execute using sumo and/or the other tools of the package. In order to do so you can either download the complete sumo package or use the online test extraction. In the online tool you enter the path to the test you like (e.g. <SUMO_HOME>/tests/sumo/extended/rerouter/use_routing_device) into the form and get a zip containing all the files.

If you have downloaded and unzipped the all inclusive package, you do not need the online form. Just go into the folder and execute the "extractTest.py" script. For example, you may get the same example of using rerouters as following:

cd <SUMO_HOME>/tests
../tools/extractTest.py -o /tmp/test sumo/extended/rerouter/use_routing_device

will extract you an example for rerouting vehicles into /tmp/test.

Unfinished Tutorials#

The following tutorials are not yet completed

  • Output Parsing - A complex tutorial using rerouters to drive in circles and analyzing simulation output

Outdated Tutorials#

The following tutorials are kept for completeness but are superseded by other tutorials/documentation