Release date: 16.02.2017
Bugfixes#
- Simulation
- Fixed emergency braking and collisions related to opposite-direction driving. #2652
- Fixed crashing related to opposite-direction driving. #2664
- Fixed implausible behavior related to opposite-direction driving. #2665
- Fixed error where vehicles could not stop at the end of a lane for numerical reasons. #2670
- Generic parameters of vehicles and vehicle types are now handled when saving and loading simulation state. #2690
- Stopped and parking vehicles are now handled when saving and loading simulation state. #1301
- All vehicle parameters and vehicle stops are now handled when saving and loading simulation state. #2720
- Fixed extreme vehicle angles during lane changing when using the sublane model. #2741
- Fixed error when defining flows without vehicles. #2823
- Fixed issue where the heuristic to prevent junction blocking caused a vehicle to block itself. #2834
- Fixed bug that was causing pedestrian collisions. #2840
- The last vehicle from a flow is no longer missing if the flow duration is not a multiple of the period parameter. #2864
- netconvert
- Fixed errors when exporting elevation data to OpenDRIVE. #2641
- Fixed format conformity issues when exporting OpenDRIVE networks. #2673, #2674, #2682
- Networks exported in the DlrNavteq format are now written with --numerical-ids by default.
- Fixed crash when importing OpenDrive and using edge-removal options. #2685
- Improved connection guessing at roads with a lane reduction.
- Fixed crash when specifying a
<split>
-element for a roundabout-edge. #2737 - The option --geometry.max-segment-length is now working when importing OSM data. #2779
- Improved heuristic for option osm.layer-elevation to reduce unrealistic up-and-down geometries.
- Fixed steep grades near intersections in networks with 3D-geometry. #2782
- Geometry fixes for output in DlrNavteq format. #2785, #2786
- netedit
- Fixed crash when doing undo/redo connection changes at a newly created junction. #2662
- Fixed slow operation when switching between move-mode and other modes in a large network.
- Fixed slow operation when move junctions in large networks. #2699
- Selecting objects by matching against attributes now works on windows. #2675
- Fixed crash when setting custom geometry endpoints. #2693
- Fixed shortcuts #2694
- Fixed crash when using option --numerical-ids.
- Fixed visualization errors when using --offset.disable-normalization false
- When adding sidewalks to selected lanes, pedestrians are now automatically forbidden on the other lanes. #2708
- Fixed an inconsistency with the definition of SUMO Time in Inspector mode. #2625
- sumo-gui
- Fixed bug that was causing interface lag when right-clicking in networks with detailed geometry.
- Configuring the visualisation of generated induction loops for actuated traffic lights is now working. #2639
- Fixed crash when coloring lanes by occupancy. #2850
- MESO
- when using option --meso-tls-penalty the maximum flow at controlled intersections is now scaled according to fraction of available green time. #2753
- Fixed various issues related to inconsistent handling of net and gross time gaps. This was causing exaggerated speeds. The option --meso-taujf <TIME> now corresponds to the net time-gap (as do --meso-taufj, --meso-tauff). It's default value has been reduced from 2.0 to 1.73 correspondingly (reproducing the old behavior at 100km/h).
- MESO-GUI
- Fixed invalid coloring of the gap between lanes. #1428
- duarouter
- The default vehicle class is now passenger (as in the simulation). Note, that non-passenger classes such as trains now need an explicit type definition to be able to use rail edges. #2829
- The last vehicle from a flow is no longer missing if the flow duration is not a multiple of the period parameter. #2864
- Various fixes to intermodal routing functionality. #2852, #2857
- TraCI
- Fixed crash when trying to reroute vehicles before their departure.
- Fixed inefficiency when calling vehicle.rerouteTravelTime() multiple times per simulation step (edge weights are now updated at most once per step).
- Various fixes to vehicle.moveToXY mapping behavior.
- unsubscribing now works in the python client. #2704
- The C++ client now properly closes the simulation when calling close()
- Subscriptions to 2D-Positions are now working in the C++ client
- Deleting vehicles that have not yet departed is now working. #2803
- Brake lights and blinkers can now be set for the current simulation step. #2804
- Vehicle function move to XY now works for edges with custom length. #2809
- Vehicle function move to XY now actually uses the 'edgeID' and 'lane index' parameters to resolve ambiguities. It uses the 'origID' parameter if set and the lane id otherwise.
- Function edge.adaptTravelTime(begin=... end=...) is now working as expected with times in seconds. #2808
- Tools
- netdiff.py now correctly
handles changes to
spreadType
and other optional attributes. #2722 - sumolib.net now returns consistent values for edge.getShape(): the center-line of all lanes. Previously, the raw edge shape used in netconvert was returned.
- randomTrips.py now works correctly when giving the options --via, --validate at the same time. #2821
- netdiff.py now correctly
handles changes to
- Miscellaneous
- The special sub-string TIME in output file names is now working on Windows.
- Various fixes concerning the binary XML format #2650, #2651
Enhancements#
- Simulation
- Added definition of parking areas and functionality for rerouting in search of a free parking space. Many thanks to Mirco Sturari for this contribution.
- Added new output option --stop-output <FILE> for generating output on vehicle stops (for public transport, logistics, etc.)
- Vehicles that are inserted with
departPos="last"
now depart at the end of the lane when there are no leader vehicles. This reduces the overall variance in depart positions. #2571 - The --step-log-output now includes statistics on time spend in TraCI functions. #2698
- When a vClass is specified for a vehicle type, this information is used to assign a default emissionClass from the HBEFA3 model (Before all vehicles had class "HBEFA2/P_7_7" by default, even bicycles). The default class for passenger vehicles is now "HBEFA3/PC_G_EU4".
- Output files of the MultiEntryExitDetector now include timeLoss information. #2703
- Output files of the LaneAreaDetector now include timeLoss information. #2703
- Added option --load-state.remove-vehicles ID1[,ID2]* for removing vehicles from a loaded state. #2774
- Pedestrians now use the speedDev attribute of their type to vary their walking speed. #2792
- tripinfo-output now includes the attribute speedFactor which may have been chosen randomly when loading the vehicle.
- Output precision is automatically increased whenever simulating with step-lengths below 10ms. #2816
- E1 detectors now support the attribute vTypes for collecting type specific measurements. The attribute splitByType is no longer supported.
- sumo-gui
- Added new option --window-pos <INT>,<INT> for specifying the initial window placement.
- Added new button to the object locator dialog that allows toggling selection status. #2687
- Parking vehicles are now listed in the vehicle locator dialog. This can be disabled using a new menu option. Teleporting vehicles can optionally be listed as well #2750
- Vehicles can now be colored by time loss (accumulated over the whole route). The time loss is also shown in the vehicle parameter dialog.
- MESO
- Added new option --meso-minor-penalty <TIME> for applying a time penalty when passing a minor link. This may be used to model slow down on approach or even intersection delays when running without --meso-junction-control. #2640
- When using the option --meso-tls-penalty <FLOAT> to model mesoscopic traffic lights, the maximum capacity of edges is now reduced according to the proportion of green-time and cycle time at controlled intersection. #2753
- MESO-GUI
- The number of queues for the current segment is now shown in the edge parameter dialog
- The latest headway for the current segment is now shown in the edge parameter dialog
- netconvert
- Pedestrian rail crossings are now working. #2654
- Added new option --geometry.check-overlap <FLOAT> for finding edges with overlapping lanes. This is typically a sign of faulty inputs. The accompanying option --geometry.check-overlap.vertical-threshold <FLOAT> filters out edges that are separated vertically by at least the given value (default 4.0). #2648
- The options --keep-edges.explicit, --keep-edges.input-file now allow for white-listing in combination with other removal options (edges are kept if listed explicitly or if any other keep-condition is met). #2680
- Added new option --osm.oneway-spread-right <BOOL> for setting the default spreadType to right for one-way edges (i.e. motorways).
- The
<split>
-element now supports the new attributes idBefore, idAfter to determine the ids of the newly created edges. #2731 - Added new option --reserved-ids <FILE> for loading a selecting of node and edge ids that shall be avoided in the output network.
- When importing networks from DlrNavteq format, the new option --construction-date YYYY-MM-DD can now be used to interpret the readiness of roads under construction.
- Networks exported to DlrNavteq format now contain additional information: bridge/tunnel information, form of way, ZIP code, prohibited_manoeuvres, connected_lanes
- Warnings are now issued when steep grades are present in the road network. The warning threshold can be configured using the new option geometry.max-grade <FLOAT>.
- <laneOffset> data is now imported from OpenDrive networks
- netedit
- od2trips
- Added new option --flow-output.probability <BOOL> for generating probabilistic flows instead of evenly spaced flows. Thanks to Dominik Buse for the patch.
- duarouter
- Added option persontrip.walkfactor <FLOAT> to account for pedestrian delays in intermodal routing. #2856
- TraCI
- Added functions person.getStage, person.getRemainingStages, person.getVehicle and person.getEdges to the API, the python client and the C++ client. #1595
- Added functions person.add, person.appendWalkingStage, person.appendDrivingStage, person.appendWaitingStage, person.removeStage'', person.removeStages, person.setColor, person.setLength, person.setHeight, person.setWidth, person.setMinGap, person.setType and person.setSpeed to the API, the python client and the C++ client. #2688
- The python client now supports vehicle.getPosition3D.
- Added the functions vehicle.getLine and vehicle.setLine to the python client and the C++ client (to be used for public transport) #2719
- Added the functions vehicle.getVia and vehicle.setVia to the python client and the C++ client (affects subsequent rerouting calls) #2729
- Added the functions polygon.getFilled and polygon.setFilled to the python client
- Tools
- route_departOffset.py now supports additional options for departure time modification based on arrival edge. #2568
- sumolib.net now supports the new function edge.getRawShape() to retrieve the shape used by netconvert. #2742
- Miscellaneous
Other#
- Documentation
- Added description of the Object Locator-menu
- Added documentation of visualizing road access permissions
- Added documentation of crossings in netedit
- Added documentation for the MESO-model
- Extended documentation of the sublane-model
- Added TraCI performance information
- The TraCI command reference now includes links to the corresponding python method(s).
- Fixed inconsistencies in TraCI command reference (mostly methods that were available in the python client but not yet documented in the wiki).
- Simulation
- A warning is now issued when trying to define a vehicle with vClass=pedestrian as this vClass should only be used for persons. #2830
- TraCI
- TraCI version is now 14
- Binary format
- SBX has now version number 2 #2651