Changes from Version 0.30.0 to Version 0.31.0

Release date: 14.09.2017

Bugfixes#

  • Simulation

    • Sublane-model
      • Lane changing to clear the overtaking lane (motivation keepRight) is now working properly. #3106
      • Fixed error that prevented violating right-of-way rules in the sublane-model. #3140
      • Fixed bug that was preventing speed adaptations for strategic changing. #3183
      • Fixed error that prevented changing for speed gain #3107, #3186
      • Insertion with departPosLat="random" departPos="last" is now working. #3191
      • Fixed bug that could cause deadlocks on an intersection #3189
      • Fixed collisions #3195, #3213, #3050, #2837
      • Fixed invalid angles when lane-changing at low speeds or low step-length. #3220
      • Fixed oscillation. #3333
      • Fixed too-late changing for speed gain when approaching a slow leader. #3375
      • Fixed bug that was causing sublane-changing despite speed loss. #3372
    • Lane-changing
      • Fixed behavior problems in regard to the rule that prohibits overtaking on the right under some circumstances (by default this is prohibited in free-flowing motorway traffic). Vehicles now avoid overtaking whenever braking is possible and they overtake on the left instead if there is a third lane. #1214, #2547, #3115, #3379
      • Fixed time loss due to late overtaking in some situations. #2126
      • Fixed invalid overtaking to the left. #3337
    • Persons
      • Attribute arrivalPos is no longer ignored for person <ride> elements. #2811
      • Fixed crash when pedestrian routes contain disallowed edges #3248 #3381
      • Fixed collision at prioritized crossings because pedestrians ignored some vehicles #3393
    • Calibrators now respect the option --ignore-route-errors. #3089
    • departLane="allowed" no longer selects an invalid departLane on multimodal edge. #3065
    • Acquired waiting time of vehicles is now properly loaded from a simulation state. #2314
    • Fixed output of meso calibrator (regression in 0.30.0). #3132
    • Modified meanTimeLoss output of lane area (e2) detector. Semantics is now average time loss *per vehicle* #3110
    • Fixed invalid stop state and invalid position of vehicles that cannot resume from parking due to blocking traffic. #3153
    • Fixed erroneous calculation of occupancy in meandata output for vehicles being only partially on the corresponding lane. #153
    • Fixed collision detection of junctions (some collisions were not registered). #3171
    • Options --collision.stoptime is now working when collisions are detected on a junction (using Option --collision.check-junctions). #3172
    • FCD-output now contains z-data if the network includes elevation information. #3191
    • Fixed crash when loading invalid <busStop> definition with <access> element. #3214
    • Fixed invalid errors on loading stops on looped routes. #3231
    • Fixed crash on invalid <e2Detector> definition. #3233
    • Fixed crash on saving and loading simulation state in conjunction with vehroute-output. #3237, #3238
    • Fixed too high density values in meandata output. #3265
    • Fixed invalid routeLength in tripinfo-output. #3355
  • sumo-gui
    • Fixed visual glitch when drawing vehicles with multiple carriages as raster images. #3049
    • Fixed crash when reloading a simulation after editing the network. #3059
    • Fixed crash when using invalid routes in calibrator. #3060
    • The number of nodes listed in the network parameter dialog no longer includes internal nodes. #3118
    • Fixed crash when multiple vehicles start and end parking on the same edge #3152
    • All parking vehicles and empty parking spaces of a <parkingArea> are now accessible via right-click. #3169
    • Fixed rendering position of <busStop>, <containerStop>, <chargingStation>, <parkingArea> on curved roads. #3200
    • Fixed drawing position of vehicles with lateral offset and of passengers if a vehicle is on a very short lane (also affects fcd-output). #3249
    • Corrected drawing of sublane borders in case the lane width is not a multiple of the lateral-resolution.
    • Fixed wrong occupancy values in Parameter Window for short lanes.
    • Pre-configured screenshots are now taken at the correct time regardless of simulation speed. #1340
    • Fixed visual glitches when drawing waiting pedestrians, parking vehicles and parkingAreas in left-hand networks. #3382
    • The list of additional simulation objects no longer includes POIs and polygons (they have their own locator lists). #3384
  • netconvert
    • --ptstop-output now exports stop lanes with the appropriate vClass. #3075
    • --ptstop-output now exports stop lanes in the correct road direction #3101, #3212
    • Fixed invalid geo-reference when loading lefthand .net.xml files #3198
    • Fixed bug that was causing an error when patching a .net.xml file with a .tll.xml file along with other connection-affecting patches. #2868
    • Fixed insufficient precision of internal lane elevation in OpenDrive output.
    • Fixed overly long yellow duration in generated tls plans. #3239
    • Fixed invalid lengths of internal turning lanes. As a side effect lane-changing is not possible any more while on these lanes. The old behavior can be enabled by setting option --junctions.join-turns <BOOL>. #2082.
    • Variable phase durations are no longer lost when importing from .net.xml or .tll.xml files.
    • Information about edges without connections is no longer lost when exporting with option --plain-output-prefix. #3332
    • Fixed invalid edge shape after importing a .net.xml file with custom node shape. #3385
    • Fixes related to importing OpenDRIVE networks
      • Fixed error when loading <roadMark><type>-data. #3163
      • Fixed crash when loading OpenDRIVE networks with attribute pRange. #3164
      • Fixed invalid traffic lights. #3203
      • Fixed invalid connections when importing OpenDRIVE networks
      • Fixed invalid internal-lane speed when importing OpenDRIVE networks or setting lane-specific speeds. #3240
  • netedit
    • Fixed rendering slowdown (regression in 0.30.0) #3167
    • Fixed error when loading pois with attributes lane and pos (regression in 0.30.0) #3199
    • Fixed crash when trying to filter selection of additionals by ID (regression in 0.30.0). #3068
    • The z-Coordinate of junctions is now properly displayed again in inspect mode (regression in 0.30.00). #3134
    • The z-Coordinate of junctions is no longer reset to 0 when moving them with move mode. #3134
    • busStop and chargingStation elements with negative startPos or endPos can now be loaded.
    • Undo now restores the selection status of deleted additionals. #3073
    • Loading color schemes is now working (only schemes saved by netedit are valid). #2936
    • Fixed invalid geo-reference when editing lefthand networks #3198
    • The cycle time is now always shown for selected traffic lights in tls-mode. #3206
    • Output precision set in the Options dialog now take effect. #3219
    • When selecting edges (or lanes) that allow a specific vehicle class, edges (and lanes) with allow="all" are now matched. #3168
    • Fixed crash when <ctrl>-clicking on invalid lanes in connection-mode.
    • Fixed invalid edge shape after setting a custom node shape. #3276
    • Function replace by geometry node now preserves connections, crossings and custom geometry endpoints. If the function is disabled, the reason is shown in the menu. #3287
    • Joining junctions now always preserves edge endpoints. #3257
    • Fixed invalid network after deleting traffic light and a junction with pedestrian crossings. #3346
    • Fixed crash when joining tls. #3365
    • The junction visualization option Show lane to lane connections now takes effect.
  • duarouter
    • Fixed bugs that were causing intermodal routing failures. #3119, #3226
    • Fixed invalid speedFactor output when specifying both speedFactor and speedDev in the input files. #3121
    • Fixed (almost) infinite loop when specifying <flow> without end. #3225
    • Fixed handling of departPos and arrivalPos for persons. #3246
  • marouter
    • Fixed crash due to error in matrix parsing. #3366
  • TraCI
    • After sending command traci.load() the simulation now keeps running until sending traci.close() instead of terminating when there are no more vehicles or the end time is reached. #3048
    • Vehicle state change retrieval (simulation.getDepartedIDList, simulation.getArrivedNumber, ...) are now working after sending command traci.load(). #3051
    • Vehicle commands getDistance and getDrivingDistance now return correct values when the current vehicle edge or the target edge are junction-internal edges. #2321
    • Fixed invalid lane occupancy values when calling moveToXY. #3185
    • traci.load() is now working if the previous simulation had errors. #3204
    • Invalid edge ids in traci.vehicle.setRoute() no longer cause crashing. #3205
    • Fixed moveToXY mapping failures. #3263
    • Person context subscriptions are now working. #3304
    • Fixed invalid behavior after canceling stop. #3348
    • Fixed freeze when calling gui.screenshot #3362
  • Tools
    • netdiff.py now correctly handles junctions that had their radius or z attributes changed to the (unwritten) default value.
    • randomTrips.py now correctly handles --trip-attributes that contain a space in the value (i.e. modes). #3117
    • Fixed bug that was causing insufficient flow when using flowrouter.py. #3285
    • Fixed flowrouter.py crash. #3356

Enhancements#

  • Simulation
    • Behavior at intersections can now be configured with new junction model parameters. #3148
    • Emergency vehicles (vClass="emergency") may always overtake on the right.
    • The default car following model can now be specified on the command line with --carfollow.model. #3142
    • Routing with --routing-algorithm astar is now working efficiently when using traffic assignment zones. #3144
    • Lanechange-output now includes the type of the changing and the longitudinal gaps on the target lane. #3156
    • Stops on internal lanes may now be defined.
    • Aggregate trip information generated via option --duration-log.statistics now includes vehicles that were still running at simulation end if the option --tripinfo-output.write-unfinished is also set. #3209
    • Vehicles now react to pedestrians on the same lane. #3242
    • Pedestrians now react to vehicles that are blocking their path. #3138
    • Collisions between vehicles and pedestrians are now detected when setting the option --collision.check-junctions.
    • Pedestrian <walk>s may now be defined using attribute route. #3302
    • Summary-output now includes mean vehicle speed (absolute and relative) as well as the number of halting vehicles. #3312
    • Pedestrian statistics are now included in the aggregated traffic measures. #3306
    • Tripinfo-output now includes additional attributes for persons and containers stages (depart, waitingTime, duration, vehicle, arrivalPos, actType). #3305
    • Added new lanechangeModel parameter lcAccelLat to model lateral acceleration in the sublane model. #3371
  • sumo-gui

    • All <param> values of simulation objects (i.e. TLS) can now be inspected. #3098
    • Calibrators can now be defined for specific lanes not just for the whole edge. #2434

      Caution

      To obtain the old behavior, calibrators must use the attribute edge. When using the attribute lane the new behavior is activated.

    • When using the Sublane model, the lateral offset of left and right vehicle side as well as the rightmost and leftmost sublane are listed in the vehicle parameter dialog.
    • Added button for calibrating lane/edge colors to the current value range. #2464
    • POIs which are defined using attributes lane and pos now accept the optional attribute posLat for specifying lateral offset relative to the lane. #3339. These attributes are automatically added as generic parameters retrievable via TraCI.
    • Added option --tracker-interval <FLOAT> to configure the aggregation interval of value tracker windows. Previously this was fixed at 1s. Now it defaults to the --step-length value.
  • netconvert
    • <split>-definitions now support the attribute id to specify the id of the newly created node. Two-way roads can be split with the same node by using the same id in two split definitions. #3192
    • Variable lane widths are now taken into account when importing OpenDrive networks. The new option --opendrive.min-width <FLOAT> is used to determine which parts of a lane are not usable by the vehicles (default 1.8m). #3196
    • Added option --tls.red.time <TIME> for building a red phase at traffic lights that do not have a conflicting stream (i.e. roads with a a pedestrian crossing in a network that is not meant for pedestrian simulation). The new default value is 5 seconds. #1748
    • Added option --tls.allred.time <TIME> for building all-red phases after every yellow phase. #573
    • Added option --walkingareas to allow generation of walkingareas in networks without pedestrian crossings. #3253
    • Added option --opposites.guess.fix-lengths <BOOL> to ensure that opposite lane information can be set for curved roads. (see Simulation/OppositeDirectionDriving#Limitations).
    • Custom lane shapes can now be defined. #2250
    • Added options --tls.min-dur <TIME> and --tls.max-dur <TIME> for defining the time range of non-static traffic lights. #3329
    • The option --proj.scale now accepts arbitrary floats and can be used to scale the output network. #3351
  • netedit
    • POIs and Polygons can now be defined with a new editing mode. #1667
    • Minimum and maximum phase duration for actuated traffic lights can now be defined. #831
    • Added button for calibrating lane/edge colors to the current value range. #2464
  • duarouter
    • Routing with --routing-algorithm astar is now working efficiently when using traffic assignment zones. #3144
    • Stops on internal lanes are now supported. #3174
    • Pedestrian <walk>s may now be defined using attribute route. #3302
  • dfrouter
    • Added option --randomize-flows for randomizing the departure times of generated vehicles.

Other#

  • SUMO now uses C++11
  • specifying the car following model as nested element in a vType is now deprecated
  • trips without ids are deprecated
  • router options are now more consistent with simulation options
    • use -a for additional files
    • use -r or --route-files for all kinds of route input (trips, flows, routes, alternatives)
    • the old options --flows, --trips, -- alternatives are deprecated
    • The network argument for routeStats.py is now optional and set with option -n.
  • The option proj.shift which used to be an alias for --proj.scale is no longer supported. These option were used to set a scaling factor by negative powers of ten but now --proj.scale sets the scaling factor directly (the previous value 5 now corresponds to 1e-5)
  • default detector-gap for actuated traffic lights is now 2.0s. #3340
  • default minGapLat value (used by the sublane model is now 0.6m (down from 1.0m) to better match observations.
  • Documentation
  • TraCI
    • TraCI version is now 16