Changes in the 2016 releases (versions 0.26.0, 0.27.0, 0.27.1 and 0.28.0)

Version 0.28.0 (01.11.2016)#

Bugfixes#

  • Simulation
    • Fixed bug that was causing insufficient overtaking on a single-lane road when using sublane simulation (most noticeable with small step-lengths). #2518
    • Fixed invalid count of insertion-backlog for flows. #2535
    • Added check for possibility to stop at scheduled stops during insertion. #2543
    • Fixed invalid timeLoss values in tripinfo-output (last step was counted twice for some vehicles).
    • Fixed bug that would prevent a vehicle from reaching the end of its route after rerouting while being teleported. #2554
    • Fixed erroneous detector output for a special situation. #2556
    • Fixed computation of energy loss for subsecond simulation. #2559
    • Fixed crash when using closing-rerouters that prevent vehicles from departing after being loaded (related to #2561).
    • Fixed invalid permissions when using multiple closing-rerouters that modify permissions of the same edge #2560.
    • Fixed crash when using the sublane model with varying lane widths. #2585
    • The option --ignore-errors now properly ignores vClass-related errors. #2148
    • Vehicles are now properly angled during lane-changing in sublane-simulation. #2525
  • MESO
    • Tripinfo-output now has appropriate timeLoss values. #2570
  • netconvert
    • Fixed invalid lane permissions when setting lane-specific attributes without specifying lane-specific permissions. #2515
    • Fixed invalid elevation values at junctions when importing OpenDRIVE networks.
    • Fixed crash when importing OpenDRIVE networks.
    • Fixed invalid internal-lane geometries when exporting OpenDRIVE networks. #2562
    • Fixed various specification conformity issues when exporting OpenDRIVE networks.
    • Option --street-sign-output now only generates signs at real intersections.
    • Fixed error when loading a .net.xml file and patching lane numbers with an .edg.xml file. #2459
  • sumo-gui
    • The visulization option show lane borders is now working.
    • Fixed crash when user loads an empty E3 detector #2249
  • netedit
    • Geometry nodes are no longer drawn when set to full transparency (alpha = 0).
    • Geometry nodes are now colored for selected edges.
    • All textures are now loaded instead of a white square or a netedit crash. #2594 #2476 #2597
  • TraCI
    • Vehicles added via method add() of the python client now have the correct departDelay value. #2540
    • Vehicle type value retrieval via the C++ API is now working.
    • Setting and retrieving edge travel times and efforts via the C++ API is now working.
    • It is now possible to specify routes that contain TAZ-edges. #2586

Enhancements#

  • netedit
    • Added new option --new <BOOL> for starting with an empty network.
    • Added new option --window-size <INT>,<INT> for specifying the initial window size. #2514
    • Junction attribute tltype is now supported.
    • Joined TLS can now be defined by setting the junction attribute tl following the same rules as in .nod.xml files. #2389
    • Added support for restricted lanes (Sidewalks, buslanes and bikelanes). #1568
    • Now junction visualization can be toggled between bubbles and their real shape when in Move-mode.
    • Connections can now be shown in inspect mode (by activating a check-box) and their attributes can be edited. They can also be selected in select-mode and deleted in delete mode. When inspecting edges or lanes, controls for accessing their connections are now available. #2067
    • Now delete mode has a frame with information and options for deleting. #2432
    • Intervals of Rerouters can be edited using a dialog #2480
  • sumo-gui
    • Added new option --window-size <INT>,<INT> for specifying the initial window size. #2514
    • Added new visualization setting for drawing right-of-way rules (colored bars).
    • Background images (decals) now support the new Boolean attribute screenRelative. When set to true, position and size are relative to the drawing window instead of being relative to the network. #2438
  • dfrouter
    • Vehicle types are now included in the emitters-output by default. The new option --vtype-output <FILE> allows redirection the vTypes into a separate file.
    • If the average measured speeds are systematically above the speed limit of the respective roads, the written vTypes use attribute speedFactor to reflect systematic speeding.
    • Added new option --speeddev <FLOAT> to set a speed deviation for the generate vTypes
  • TraCI
    • Added new convenience function traci.start that automatically selects a port, starts sumo on that port and connects. #2236
    • Added new get/set command height (0xbc) to retrieve and modify vehicle height (applicable to vehicles and vehicle types). #2573
    • When adapting edge travel times and efforts, the (optional) parameters begin and end are now supported by the python client and the C++ client. #2584
  • Tools
    • The tool route_departOffset.py (previously undocumented) now supports additional options for departure time modification based on departure edge and for shifting departures within one time interval to another interval. #2568
    • randomTrips.py supports the new alias --edge-permission for former option --vclass.

Other#

  • TraCI
    • TraCI version is now 13
  • Miscellaneous
    • The full 24h-dataset for the TAPASCologne scenario is now available
    • The deprecated option --lanechange.allow-swap is no longer supported. #2116
    • The laneChangeModel="JE2013" has been removed due to strong similarity with LC2013. Using the model is deprecated and now defaults to LC2013
    • SUMOPy has been added to the SUMO repository and to the relase. Many thanks to Joerg Schweizer.
    • The libraries for the Windows build and release were updated to Fox 1.6.52 and Xerces-C 3.1.4 (with an additional fix for XERCESC-2052)

Version 0.27.1 (27.07.2016)#

Bugfixes#

  • netconvert
    • Original IDs are no longer lost when splitting edges. #2497
    • Elevation data is now correctly imported from OpenDRIVE networks. #2239
  • netedit
    • Fixed crash when increasing the number of lanes by setting numLanes. #2505
    • Fixed slow loading of large networks.
    • Custom colors for selected junctions and edges are now working. #2386
  • duarouter
    • Fixed crash when using option --ignore-error with invalid via-edges. #2494

Enhancements#

  • Simulation
    • Added new option save-state.period <TIME> to save simulation state periodically. #2441
    • Added new option save-state.suffix <STRING> to determine the suffix of saved state files. The default is .sbx which saves in a binary format. Alternatively, .xml may be used which makes the state files human-readable.
  • netconvert
    • Networks exported to OpenDRIVE now use parametric curves to represent smooth geometry in place of straight-line segments. #2041
    • Networks exported to OpenDRIVE now contain elevation data. #2240
    • Parametric curves as specified in OpenDRIVE version 1.4 can now be imported. #2478
    • Revised default OpenDRIVE typemap. Now imports additional lane types such as tram and rail. #2492
    • Added new option osm.layer-elevation <FLOAT> to import implicit elevation data from OSM-layering information.
    • Networks imported from OpenDRIVE now contain edge type information based on the OpenDRIVE lane types. #2509
  • sumo-gui
    • Added Visualization options for drawing intersections with exaggerated size and disable edge drawing based on custom widths. #2140
    • Added Visualization option for indicating the driving direction of lanes. #2180
    • Added Visualization option for drawing sublane boundaries
    • Lanes can now be colored according to the number of vehicles that are delayed from entering the network. #2489
  • netedit
    • Added Visualization options for drawing intersections with exaggerated size and disable edge drawing based on custom widths. #2140
    • Added Visualization option for indicating the driving direction of lanes. #2180

Version 0.27.0 (12.07.2016)#

Bugfixes#

  • Simulation
    • Attribute via is now used when routing trips and flows within the simulation. #1272
    • Vehicles stopping at a <stop> now reach the exact location when using sub-second step-lengths. #1224
    • Vehicles are no longer considered stopped at a <stop> while still driving with high speed. #1846
    • Scheduled stops no longer count towards waitSteps and timeLoss in tripinfo-output. #2311
    • Fixed bug where vehicles would not depart from a triggered stop #2339
    • Fixed deadlock when vehicles with triggered stops could not load passengers or containers due to capacity constraints.
    • Fixed invalid edge travel times used for dynamic routing in case flow differs among the lanes. #2362
    • Fixed invalid edge travel times used for dynamic routing due to invalid averaging #2351
    • Fixed invalid time stamps for leave times and an off by one for instant induction loops #1841
  • MESO
    • The jam-front back-propagation speed now reaches realistic values (it was illogically low before). Note that default value of option --meso-taujj changes as well as its semantics. #2244
    • Fixed bug where the simulation would not terminate when using calibrators. #2346
    • The options --meso-tauff and --meso-taufj now define net time gaps (default values were changed accordingly). The gross time gaps are computed based on vehicle lengths and edge speed to allow for more realistic flow in networks with widely varying speed limits. This also affects the threshold that defines jamming when using default options (thresholds based on allowed speeds). #2364
  • netconvert
    • Fixed connection-guessing heuristic. #1992, #1219, #1633, #2398
    • Option --remove-edges.by-vclass is now working when loading a .net.xml file. #2280
    • Fixed bugs when importing cycleways from OSM. #2324
    • Option --output.original-names now records original edge ids even if input edges were joined. #2369
    • Fixed invalid road types when exporting OpenDRIVE networks. #2487
    • Fixed invalid lane permissions due to invalid removal of geometry-like nodes. #2488
  • sumo-gui
    • Fixed crash when loading a large number of background images.
    • Fixed persons showing up too early in the locator. #1673
  • netedit
    • Fixed crash when trying to set an empty string as edge length or edge width. #2322
    • Fixed crash when deleting the last lane of an edge.
  • duarouter
    • Trips and flows that use attribute via to loop over the destination edge more than once are now working. #2271
  • marouter
    • The output is now correctly sorted when using trips as input. #2361
  • polyconvert
    • polyconvert output files can now be imported again by polyconvert (i.e. for further transformations). #1715
  • TraCI
    • Fixed route.add, gui.screenshot and gui.trackVehicle and various lane commands for the C++ TraCI API client
    • Fixed crash when trying to set invalid routes. #2285
    • Fixed invalid values when retrieving edge mean speed and edge travel time in case flow differs among the lanes. #2362
    • Fixed retrieval of exit times for vehicles that spend multiple steps on an inductionloop when retrieving last step vehicle data (0x17). #2326

Enhancements#

  • Simulation
    • Added model for sublane-simulation. This is activated by setting the option --lateral-resolution <FLOAT>. When using this option, vehicles may move laterally within their lanes. This is influenced by the new vType-attributes latAlignment, maxSpeedLat, minGapLat. Lane changing is performed according to the new lane changing model SL2005.
    • Lane-changing models can now be configured with additional vType parameters. There exists one parameter for each of the lane-changing motivations strategic,cooperative,speedGain and keepRight which can be used to increase or reduce that type of lane changing. #1136
    • Added capabilities for overtaking through the opposite-direction lane.
    • Added new option --collision.action <STRING> for configuring the action to take on vehicle collision. Allowed actions are none,warn,teleport and remove. The default is teleport which moves the rear vehicle involved in a collision onto a subsequent lane (as before).
    • Added new option --collision.check-junctions <BOOL> to enable geometrical collision checking on junctions. By default this option is set to false and collisions between non-consecutive lanes are ignored as before. This option may slow down the simulation. #984
    • ChargingStations can now be used to declare vehicle stops. #2248
    • the vehicle route output now includes optional vehicle parameters as param entries
    • Added new option --device.rerouting.adaptation-steps <INT> to switch the default algorithm for averaging edge travel times from exponential averaging to a moving average over the given number of steps. #2374
    • Added new option --tls.all-off <BOOL> for switching off all traffic lights (the traffic lights can still be switched on via GUI or TraCI). #2442
    • Added new output for tracking lane change events. This is enabled using the new option --lanechange-output <FILE>. #2461
  • MESO
    • The option --meso-jam-threshold <FLOAT> now gives additional freedom when configuring a speed dependent jam-threshold. When an value below 0 is given the absolute value is taking as a factor for the minimum unjammed speed. Thus, negative values closer to 0 result in less jamming. The default value remains at -1 and results in the original behaviour (values above 0 set the occupancy fraction threshold independent of edge speed as before).
  • sumo-gui
    • The number of running vehicles and persons is now shown in the status bar. This display also acts as a button for opening the network parameter dialog. #1943
    • Charging stations are now shown in a different color when active.
    • Persons are now more visible when selecting Draw with constant size when zoomed out.
    • Added the averaged speeds that are used for simulation routing to the lane parameter dialog.
    • Added new option --demo <BOOL> which automatically reloads and starts the simulation every time it ends. #1645
  • MESO-GUI
    • Can now color edges by the averaged speeds that are used for simulation routing.
    • Can now color edge segments (mesoscopic vehicle queues) individually by various traffic measures. #2243
  • netconvert
    • Added option default.lanewidth <FLOAT> for setting the default width of lanes (also applies to netgenerate).
    • Added option numerical-ids <BOOL> for forcing all node and edge IDs to be integers (also applies to netgenerate). #1742
    • Added Option speed.minimum to avoid negative speeds when using Option --speed.offset. #2363
  • netedit
    • Many additional network structures such as busStops, detectors and variable speed signs can now be defined and manipulated. #1916
  • netgenerate
    • Added option grid.alphanumerical-ids <BOOL> for using a chess-like intersection naming scheme (A1, B3, etc).
  • TraCI
    • Added vehicle command next TLS to retrieve upcoming traffic lights along a vehicles route. #1760
    • The vehicle command move to XY (formerly move to VTD) now supports an additional flag which selects whether the original route shall be kept or the route may change and whether the vehicle may leave the road network. #2033, #2258
    • The vehicle command move to XY now allows moving vehicles that are still in the insertion buffer.
    • Added functions vehicle.add, vehicle.remove and vehicle.moveToXY to the C++ TraCI API client
    • Added object variable subscriptions and context subscriptions to the C++ TraCI-library (subscribe, getSubscriptionResults, subscribeContext, getContextSubscriptionResults). Thanks to Erik Newton for the patch.
    • Added person value retrieval functions to the C++ TraCI API client. Thanks to Caner Ipek for the patch.
    • Added vehicle command get speedmode 0xb3 to retrieve the speed mode of vehicles. #2455
    • Added vehicle command get slope 0x36 to retrieve the slope at its current position #2071
    • Added vehicle, lane and edge command get electricity consumption 0x71 to retrieve the electricity consumption if the emission model supports it. #2211
    • Multiple subscriptions for the same object are now merged. #2318
  • Tools
    • Added new tool createVehTypeDistributions.py to simplify definition of heterogeneous vehicle fleets by sampling numerical attributes from configurable distributions. Thanks to Mirko Barthauer for the contribution.
    • parsing xml files with sumolib.output.parse() is now much faster. #1879

Other#

  • netconvert
    • Network version is now 0.27.0
  • TraCI
    • TraCI version is now 12.
    • The vehicle command move to VTD is now referred to as move to XY in client code. #2032

Version 0.26.0 (19.04.2016)#

Bugfixes#

  • Simulation
    • Fixed crash when rerouting a large number of vehicles in parallel. #2169, #2180
    • Fixes related to zipper nodes.
      • Fixed deadlock #2075
      • Fixed collision #2165
      • Fixed undesired non-determinism.
    • Fixed collision of a vehicle with itself when departing at an edge that forms a tight circle. #2087
    • Fixed bug that was causing wrong vehicle counts in summary output and was preventing the simulation from terminating automatically when continuing from a loaded state. #1494
    • Fixed route errors and crashing when continuing from a loaded state and using routing devices. #2102
    • Fixed bug that was causing false positives when calling traci.inductionloop.getLastStepVehicleIds and traci.inductionloop.getLastStepVehicleNumber. #2104
    • Induction loop detectors now count vehicles which occupy the detector position during insertion.
    • Fixed collisions when using using continuous lane-changing.
    • Fixed bug that was causing erratic emission behavior for stopped vehicles when using the PHEMlight emission model. #2109
    • Fixed unsafe traffic light plans when building networks without exclusive left-green phase. #2113
    • When using the striping model, pedestrians now avoid moving with near-zero speed. #2143
    • Fixed pedestrian collisions. #2145
    • Intersections with more than 64 connections can now be loaded.
    • When approaching a double-connection vehicles now prefer the lane with the prioritized connection. #2160
    • Fixed collision at double-connection. #2170
    • The default vehicle class is now passenger when using the default vehicle type DEFAULT_VEHTYPE. #2181
    • Fixed stuck vehicles when teleporting past an closed edge with a rerouter. #2194
    • Fixed invalid route lengths in tripinfo-output. #2201
    • Rerouters rerouters that combine closingReroute and destProbReroute now only apply to vehicles that are affected by the closed edges. #2208
    • Rerouting devices can now be specified with generic parameters. #2209
    • Fixed invalid waiting position of pedestrians after walking. #2220
    • Fixed detector data for teleporting vehicles. #1452
    • Fixed meandata for circular networks. #1032
  • sumo-gui
    • Fixed bug that was causing slightly exaggerated exit times to be shown when activating Show Link Items from the vehicle context menu. #2022
    • Fixed flickering brake lights due to small random decelerations. #2177
    • Areal detectors can now be hidden by setting their size exaggeration to 0.
    • Fixed invalid occupancy value for lane area detectors (was exaggerated by a factor of 100). #2217
    • Fixed crashing related to showing and tracking parameters of arrived vehicles. #2226, #2227
    • Fixed glitch when drawing rail carriages on edges with customized length. #2192
    • Fixed coordinate update without mouse movement. #2076
    • Fixed time display switch in initial view. #2069
    • Vehicle shape and size are now correctly updated when set via TraCI. #2791
  • MESO
    • Fixed bug that broke --meso-multi-queue behavior (regression in 0.25.0). #2150
    • vClass-specific speed limits are now used. #2205
    • tripinfo-output now contains valid timeLoss values. #2204
    • Fixed invalid travel time computation during simulation routing (was averaging segments instead of vehicles).
  • MESO-GUI
    • Fixed crash. #2187
    • Coloring vehicles by selection is now working. #2149
  • netedit
    • Fixed bug that made it impossible to modify numerical attributes (lane numbers, phase duration etc.) on some computers. #1966
    • Fixed error when modifying signal plans for joined traffic lights. #2185
    • Fixed invalid edge length attribute when inspecting networks without internal links. #2210
    • Fixed bug where junctions with uncommon shapes could not be selected.
  • netconvert
    • Fixed bug that was causing unsafe internal junctions to be built. #2086, #2097
    • Fixed bug that was causing z-information to become corrupted. Thanks to Mirco Sturari for the patch.
    • Fixed bug where pedestrians never got the green light when loading a .net.xml file and adding pedestrian crossings.
    • Fixed bug where pedestrian walkingarea edges were missing. (This could cause invalid routes to be generated). #2060
    • Multiple connections from the same edge to the same target lane can now be set in post-processing (i.e. after removal of geometry-like nodes). #2066
    • Option --tls.guess-signals now respects option --tls.unset. #2093
    • Fixed invalid traffic light plans for networks with pedestrian crossings. #2095
    • Loading custom traffic light plans now correctly affects the building of internal junctions. #2098
    • Several fixes in regard to OpenDrive networks:
      • Added missing contactPoint attribute when writing OpenDrive networks.
      • Fixed geometry of lanes within intersections when writing OpenDrive networks.
      • Fixed geometry of lanes when importing imprecise OpenDrive networks #2085.
    • Option --street-sign-output now writes xsd-conforming output.
    • Fixed bugs that were causing invalid TLS plans to be generated for joined traffic lights. #2106, #2107
    • Fixed crash when importing OSM networks related to self-looping edges. #2135
    • Fixed bug that was causing invalid junction shapes and extremely large network boundaries. #2141
    • Fixed crashing (on Windows) and invalid traffic lights (Linux) when loading a .net.xml file and adding splits. #2147
    • Fixed invalid connections at edges with vClass-exclusive lanes. #2157, #2158
    • Fixed invalid traffic light plans for node type traffic_light_right_on_red. #2162
    • Fixed unsafe junction logic when using custom tls plans with node type traffic_light_right_on_red. #2163
    • Connections from lanes that are added during ramp guessing can now be specified. #2175
    • User-defined connections are no longer discarded at guessed ramps. #2196
    • Fixed error when guessing overlapping off-ramps. #2213
    • Fixed error when computing edge shapes with unusual input geometries. #2218
  • TraCI
    • Multiple fixes to the C++ TraCI library
      • commands gui.setScheme, gui.getScheme, inductionloop.getVehicleData
      • various set-commands were not consuming all result bytes and thus corrupted the message stream. Thanks to Alexander Weidinger for the patch. #2007
    • Fixes to TraaS functions Simulation_getDistance2D and Simulation_getDistanceRoad. #2127
    • Fixed crash when using vehicle command move to VTD. #2129
    • vehicle command move to VTD can now position vehicles on internal lanes. #2130
    • Commands that return the road distance no longer return an exaggerated value in networks without internal links (distances across intersections were counted twice).
    • vehicle command distance now takes the depart position into account (was using 0 before). #2203

Enhancements#

  • sumo-gui
    • Adjusted zooming distance when centering on simulation objects to make objects easier to find. #2146
    • Added option --waiting-time-memory <TIME> for tracking accumulated waiting time of vehicles. The accumulated waiting time (seconds of waiting time within the configured interval, default 100s) can be inspected in the vehicle's parameter window and the vehicles can be colored according to this value. #999
    • Lanes can now be colored by routing device assumed speed. This is an exponential moving average of mean travel speeds used for dynamic rerouting. #2189
  • MESO
    • Added option --meso-tls-penalty <FLOAT> as an alternative way to model the delay effects of traffic lights. When this option is set to a positive value, the expected delay time for each controlled link (based on red duration and cycle duration) is added to the travel time, multiplied with the <FLOAT> argument. By calibrating the parameter, the quality of TLS coordination can be modeled. #2199
  • MESO-GUI
    • Coloring vehicles by depart delay is now working. Added depart delay to the vehicle parameter dialog.
    • Added event time, entry time and block time to the vehicle parameter dialog. These values record when a vehicle leaves, entered and was blocked on an edge segment.
  • polyconvert
    • Added default typemaps similar to netconvert. #1853
  • duarouter
    • Added person trips and IntermodalRouting
    • When a flow has a stop definition with attribute until, the time is shifted for each successive vehicle in the flow. #1514
  • marouter
    • Added bulk routing and better OD cell handling for speed improvements. #2167
  • TraCI
    • The python client is now thread safe when using multiple connections in parallel. Each opened connection returns an independent TraCI instance. #2091
    • Added support for vehicle commands to the C++ TraCI library Thanks to Alexander Weidinger for the patch. #2008
    • Added new TraaS commands Edge.getLastStepPersonIDs, Person.getNextEdge, Vehicle.getRouteIndex, Vehicle.getStopState, Vehicle.isStopped and some more stop-related vehicle commands.
    • The angle argument of vehicle command move to VTD now overrides the vehicle angle for drawing and fcd-output. #2131
    • Added new simulation command save state 0x95 for saving the current simulation state. #2191
  • Tools
    • tls_csv2SUMO.py now handles controlled edges within a joined traffic light definition automatically.
    • Added option --ignore-connections to netcheck.py. This can be used to compute all components in the node graph without considering lane-to-lane connections.
    • Added option --symmetrical to generateBidiDistricts.py (previously undocumented tool). This can improve opposite-finding in conjunction with option --radius.
    • Added option --geo to route2poly.py. This can be used to visualize routes from one network within another network.

Other#

  • Miscellaneous
    • Visual Studio project files have been updated MSVC12. While it is still possible to build SUMO with MSVC10, this support may be dropped in the future in favor of C++11.
  • Simulation
    • When saving simulation state as XML, lane elements now contain their id for easier inspection.
    • The departPos values maxSpeedGap, pwagSimple and pwagGeneric were removed since they never worked as intended.
    • Option lanechange.allow-swap is now deprecated.
  • sumo-gui
    • Vehicle type parameters were moved to a separate dialog box (Show Type Parameter). #2133
  • TraCI
    • TraCI version is now 11.