Output - SUMO Documentation (2024)

Output

sumo allows to generate a large number of differentmeasures. All write the values they collect into files or a socketconnection following the common rules for writing files.Per default, all are disabled, and have to be triggered individually.Some of the available outputs (raw vehicle positionsdump, tripinformation, vehicle routesinformation, and simulationstate statistics) are triggeredusing command line options, the others have to be defined within additional-files.

Converting Outputs#

All output files written by SUMO are in XML-format by default. However,with the python tool xml2csv.py youcan convert any of them to a flat-file (CSV) format which can be openedwith most spread-sheet software. If you need a more compressed but still"standardized" binary version, you can usexml2protobuf.py. Furthermore allfiles can be written and read in compressed form (gzip) which is triggered by thefile extension .gz.

Separating outputs of repeated runs#

To keep the outputs of multiple simulation runs separate, the option --output-prefix <STRING>can be used to prefix all output file names. When setting --output-prefix TIME alloutputs will be prefixed using the time at which the simulation wasstarted which keeps them separated automatically.

Below, the available outputs are listed, joined into groups oftopic/aggregation type. Further information about each output can befound by following its link.

vehicle-based information, disaggregated#

  • raw vehicle positions dump: all vehicle positions over time contains: positions and speeds for all vehicles for all simulated time steps used for: obtaining movements of nodes (V2V, for ns-2)
  • emission output: emission values of all vehicles for every simulation step
  • full output: various information for all edges, lanes and vehicles (good for visualization purposes)
  • vtk output: generates Files in the well known VTK (Visualization Toolkit) format, to show the positions the speed value for every vehicle
  • fcd output: Floating Car Data includes name, position, angle and type for every vehicle
  • trajectories output: Trajectory Data following includes name, position, speed and acceleration for every vehicle following the Amitran standard
  • lanechange output: Lane changing events with the associated motivation for changing for every vehicle
  • surrogate safety measures (SSM): Output of safety related measures, headway, brake rates, etc
  • vehicle type probe: positions of vehicles over time for a certain vehicle type (deprecated, use vType filters with FCD-output instead)

simulated detectors#

  • Inductive loop detectors (E1): simulated induction loops
  • Instant induction loops: simulated unaggregated induction loops
  • Lane area detectors (E2): detectors that capture a lane segment (i.e. simulated vehicle tracking cameras)
  • Multi-Entry-Exit detectors (E3): simulators that track traffic in an area by detecting entry and exit events at defined locations
  • Route Detectors: detector for sampling route distributions

values for edges or lanes#

  • edgelane traffic: edge/lane-based network performance measures
  • aggregated Amitran measures: edge/lane-based network performance measures following the Amitran standard
  • edgelane emissions: edge/lane-based vehicular pollutant emission
  • edgelane noise: edge/lane-based vehicular noise emission; based on Harmonoise
  • queue output: lane-based calculation of the actual tailback in front of a junction

values for junctions#

There is no dedicated output format for traffic at junctions. Instead junction related traffic can be measured by placing detectors that measure traffic at the intersection.

  • Tools/Output#generateTLSE1Detectors.py script for generating induction loop detectors around all TLS-controlled intersections (point-based detected on individual lanes)
  • Tools/Output#generateTLSE2Detectors.py script for generating lane-area detectors around all TLS-controlled intersections (area-based detection on individual lanes)
  • Tools/Output#generateTLSE3Detectors.py script for generating multi-entry-exit detectors around all TLS-controlled intersections or for an arbitrary list of intersections. The detectors can be configured to either aggregate or separate the approaching edges and to include or exclude the junction interior. (area-based detection on edges)

Alternatively, the values for edges or lanes can be aggregated to obtain the flow at at a junction by using edgeData attribute edges and aggregate="true".

vehicle-based information#

  • trip information: aggregated information about each vehicle's journey (optionally with emission data)
  • vehicle routes information: information about each vehicle's routes over simulation run
  • stop output: information about vehicle stops and loading/unloading of persons and containers
  • battery usage: information about battery state for electric vehicles
  • collision output: information about collisions among vehicles and between vehicles and pedestrians

simulation(network)-based information#

  • simulation state summary statistics: information about the current state of the simulation (vehicle count etc.)
  • simulation state person summary statistics: information about the current state of persons the simulation (person count etc.)
  • statistic output: overall statistics of the simulation (vehicles, teleports, safety, persons, vehicleTripStatistics, rideStatistics, etc.)

traffic lights-based information#

  • traffic light states: information about the state (lights) of a traffic light
  • stream-based traffic light switches: information about the switches of a traffic light signal responsible for a certain link
  • traffic light states, by switch: information about the states (lights) of a traffic light signal, written only when changed
  • lane area detectors coupled to tls: simulated vehicle tracking cameras triggered by tls

Additional Debugging Outputs#

  • The option --link-output <FILE> saves debugging data for the intersection model. Thisdata reveals how long each vehicle intends to occupy an upcomingintersection.
  • The option --movereminder-output <FILE> saves debugging data for the interaction between vehicledevices, lanes and output facilities. It is only available whencompiling sumo with debug flags.
  • The option --railsignal-block-output <FILE> saves information about rail signal blocks. For eachcontrolled railSignal link the following information is generated:
    • forwardBlock: all lanes that are reached from the signalized link in forward direction up to the next rail signal
    • bidiBlock: all lanes that make up the reverse-direction track encountered within the forward block and followed up to the next railSignal beyond a railway switch which allows passing
    • backwardBlock: all lanes that enter the forwardBlock or bidiBlock from outside followed upstream to the entry rail signal
    • conflictLinks: all controlled links that enter the conflict area (forwardBlock, bidiBlock, backwardBlock) from outside, encoded as <SIGNALID>_<LINKINDEX>

By default, sumo will print some "heartbeat" information to indicate that it is still running. The following information will be printed every 100 simulation steps:

  • Step #: current simulation time
  • duration of the latest step in (ms)
  • real-time factor (step-length / duration). (RT)
  • number of vehicles updated per second (UPS)
  • TraCI: time spent with TraCI processing in the current step (including external script)
  • vehicles TOT: number of vehicles that departed so far
  • ACT: number of currently running vehicles
  • BUF: number of vehicles with delayed insertion

This output can be disabled with the option --no-step-log. Its period can be configured with the option --step-log.period TIME.

When running the simulation with option --verbose (short -v) the following datawill be printed (unless explicitly disabled with option --duration-log false):

Vehicle Counts#

  • Inserted: number vehicles that entered the simulation network
  • Loaded: number of vehicles that were loaded from route files. Thismay differ from emitted for two reason:
    • Running with option --scale with a value less than 1.0
    • Having a congested network where not all vehicles could be inserted before the simulation time ended
  • Running: number of vehicles currently active in the network atsimulation end
  • Waiting: number of vehicles which could not yet be inserted into thenetwork due to congestion
  • Teleports: number of of times that vehicles were teleported for anyof the following reasons (These reasons are given whenever ateleport warning is issued)
    • Collision: a vehicle violated its minGap requirement in relation to its leader vehicle
    • Timeout: a vehicle was unable to move for --time-to-teleport seconds (default 300)
      • wrong lane: a vehicle was unable to move because it could not continue its route on the current lane and was unable to change to the correct lane
      • yield: a vehicle was unable to cross an intersection where it did not have priority
      • jam: a vehicle could not continue because there was no space on the next lane

If the simulation contained persons the following output will be added:

  • Inserted: number of persons that were loaded from route files
  • Running: number of persons active in the network at simulation end
  • Jammed: number of times a person was jammed

Timing Data#

  • Duration: The amount of elapsed time (as measure by a clock hanging on the wall) while computing the simulation.
  • TraCI-Duration: The amount of elapsed time (as measure by a clock hanging on the wall) spent for processing TraCI-commands. This includes the time spent in the traci client script.
  • "Real time factor": The quotient of simulated time / computation time. If one hour is simulated in 360 seconds the real time factor is 10.
  • UPS: (updates per second). The number of vehicle updates that were performed on average per second of computation time. If a single vehicle update takes on average one millisecond, this will be 1000.

If routing took place in the simulation, Each routing algorithm instancewill report

  • The number of routing queries
  • The number of edges that were checked in order to find the best route
  • The total time spend routing and the average time per routing call

Aggregated Traffic Measures#

When setting the option --duration-log.statistics, (shortcut -t) verbose output is automatically enabled(unless explicitly set to false) and the following averages for allvehicle trips will be printed:

  • RouteLength: average route length
  • Speed: average trip speed
  • Duration: average trip duration
  • WaitingTime: average time spent standing (involuntarily)
  • TimeLoss: average time lost due to driving slower than desired (includes WaitingTime). The desired speed takes the vehicles speedFactor into account.
  • DepartDelay: average time vehicle departures were delayed due to lack of road space

    Note

    By default, only vehicles that have arrived are included in these statistics. If the option --tripinfo-output.write-unfinished is set, running vehicles will be included as well.

  • DepartDelayWaiting: average waiting time of vehicles which could not be inserted due to lack of road space by the end of the simulation. (only present if the option --tripinfo-output.write-unfinished is set)

If the simulation contained pedestrians (walking persons) the followingoutput will be added:

  • walks: the number of distinct <walk>-elements in the input
  • RouteLength: average walk length
  • Duration: average walk duration
  • TimeLoss: average time lost due to walking below maximum speed or stopping

If the simulation contained passengers (persons riding in vehicles) thefollowing output will be added:

  • Rides: the number of distinct <ride>-elements in the input
  • WaitingTime: average time spent waiting for ride
  • RouteLength: average ride length
  • Duration: average ride duration
  • Bus rides: number of rides with a public transport vehicle driving on roads (public transport is identified by having the line-attribute set).
  • Train rides number of rides with a public transport vehicle driving on rails
  • Bike rides: number of rides with vehicle class bicycle
  • Aborted rides: rides that could not be completed because no suitable vehicle was available

You can also take a look at statistic output for a more overall statistics of the entire simulation, including those mentioned above and additional ones safety-, ride- and transport-related.

When setting this option and using sumo-gui, thenetwork parameter dialog will also show a running average for thesetraffic measures (The dialog is accessible by right-clicking on thenetwork background).

Output - SUMO Documentation (2024)

References

Top Articles
Latest Posts
Recommended Articles
Article information

Author: Amb. Frankie Simonis

Last Updated:

Views: 5777

Rating: 4.6 / 5 (76 voted)

Reviews: 83% of readers found this page helpful

Author information

Name: Amb. Frankie Simonis

Birthday: 1998-02-19

Address: 64841 Delmar Isle, North Wiley, OR 74073

Phone: +17844167847676

Job: Forward IT Agent

Hobby: LARPing, Kitesurfing, Sewing, Digital arts, Sand art, Gardening, Dance

Introduction: My name is Amb. Frankie Simonis, I am a hilarious, enchanting, energetic, cooperative, innocent, cute, joyous person who loves writing and wants to share my knowledge and understanding with you.