ChangeLog
generated on 2014-03-11 15:45:47.532766 from the wiki page for ChangeLog for SUMO 0.20.0
Contents |
Version 0.20.0 (11.03.2014)
Bugfixes
- Simulation
- Fixed bug in the computation of safe velocities. Sometimes the velocity was too high (causing collisions) but most times it was too low (degrading traffic flow).
- Vehicles now move to the right lane after passing instead of staying on the passing lane. (see #1139)
- Fixed simulation crash related to lane-changing.
- Fixed bug where vehicles would no longer stop on the correct lane if they already stopped on the wrong lane.
- Fixed bug which would cause collisions due to unsafe lane changes
- Fixed crash when terminating the simulation while vehicles were performing continuous lane changing maneuvers (using option --lanechange.duration)
- Fast vehicles can now be correctly inserted closely in front of slow vehicles (#1176).
- Rerouting fixed for vehicles which are on internal lanes when the rerouting is requested (#1128).
- SUMO-GUI
- Fixed crash when using the object locator on some versions of Ubuntu.
- Fixed bug where brake lights were shown even though the vehicle was not braking
- Fixed bug where train carriages where sometimes drawn onto the wrong lane
- The vehicle option 'select foes' now works correctly for foe vehicles on internal lanes
- Fixed rare graphical glitch when drawing concave junction shapes
- Fixed drawing of segmented vehicles (trains) which are longer than their departPos
- NETCONVERT
- Fixed bug which gave some links the wrong priority thus causing collisions (see ticket #1096)
- Fixed crash when specifying connections from/to edges which are removed during network building
- OSM import no longer fails when encountering empty strings in places where numerical values are expected.
- Fixed bug where permissions involving the vClasses custom1 and custom2 were not written correctly.
- Fixed bug where connections from a lane were sometimes indexed in the wrong order.
- Disconnected nodes can no longer be joined into a cluster when using the option --junctions.join.
- Fixed crash when using option --ramps.guess
- option --ramps.guess no longer creates ramps if one of the involved connections is a turnaround
- traffic lights which get new programs are no longer renamed (see ticket 1157)
- DFRouter
- Fixed crash/infinite loop when using option --guess-empty-flows. Use of this option is not (yet) recommended (see ticket 1198)
- JTRRouter
- Fixed handling of empty flows (no vehicles) together with a specified start time (see ticket 1109)
- TraCI
- instantInductionLoops are no longer included when calling calling traci.inductionloop.getIDList()
- Tools
- Fixed bug which prevented traceExporter.py from running
- Fixed bug which caused all speed values in NS2 output to be 0
- Fixed bug which prevented traceExporter.py option --penetration <FLOAT> from taking effect
Enhancements
- Simulation
- The summary of teleporting vehicles now lists all teleports according to their reason
- Vehicles now perform an emergency braking maneuver to prevent driving across a red light. If this happens in a simulation it usually indicates that the length of the yellow-phase is to short in relation to the road speed and the braking capabilities. To enable driving across red lights, additional TraCI flags were added (see below).
- Improved intersection model which results in less conflicts between vehicles with intersecting trajectories while on internal lanes.
- Added a first version of the PHEMlight emission model (contribution of TU Graz)
- Rerouting now keeps existing stops and adds new stops which are part of the new route even in cyclic routes
- SUMO-GUI
- Reworked drawing of trains to have more realistic carriage lengths. Also some busses are drawn with flexible segments now.
- The vehicle parameter dialog now lists the maximum speed of the vehicle's type and the the time headway to the vehicle's current leader
- added vehicle coloring mode by time headway
- Traffic light colors now distinguish between green major (code G) and green minor (code g) by coloring the minor state with a darker color.
- The lane color scheme by vClass now gives fine-grained control over coloring by using the permission bitmask to select the color.
- Added menu option Edit->Select lanes which allow...->vClass. Together with the street-coloring option by selection this allows an easy overview of the road network permitted for a given vClass.
- Added junction visualization option to disable drawing of junction shapes.
- The vehicle coloring mode by max speed now factors in the speed limit on the current lane and the speedFactor of the vehicle. The same color thresholds as in coloring by speed are now used.
- NETCONVERT
- added option --osm.elevation <BOOL> which imports elevation data from OSM input (default false).
- Conflicts between connections originating from the same edge are now recognized. This can be used to model interaction between right turning vehicles and straight moving non-vehicular traffic on a lane further right.
- improved the heuristic for determining junction clusters to be joined when using option --junctions.join. This results in fewer invalid joins. Candidate clusters for manual intervention are indicated.
- TraCI
- added method traci.simulation.convert3D() which converts a road position to either x,y,z or lon,lat,alt
- added additonal bits to the traci command Change Vehicle State/speed mode to configure the behavior at intersections. This can be used to make vehicles ignore right-of-way rules and also to force them to drive across a red light.
- added optional argument 'flags' to traci.vehicle.setStop() in accordance with the Vehicle modification API specification
- the API to Areal Lane Detectors was added; thanks to Mario Krumnow and Robbin Blokpoel
- it is now possible to retrieve the leading vehicle within a specified range Vehicle API specification
- a vehicle may be added using a full specification (which is available via XML input)
- Tools
- added tool xml2csv.py which converts all of the XML-output files written by SUMO to a flat-file (CSV) format which can by opened with most spread-sheet software
- added tool csv2xml.py for the opposite conversion, requiring an XML schema and also for conversion to Google's protocol buffers xml2protobuf.py
- osm/osmGet.py now supports retrieving very large areas by bounding box using the option --tiles <INT>. (previously this option was only supported together with option --oldapi which has severe size limitations}}
- added option --gpx-output <FILE> to traceExporter.py which allows exporting vehicle trajactories as GPX files
- added option --poi-output <FILE> to traceExporter.py which allows exporting vehicle trajectories as POIs
- added option --vclass <STRING> to randomTrips.py which ensures that generated trips only depart and arrive at edges permitted for vclass
- randomTrips.py now recognizes the network fringe even if the network contains turn-around connections (An edge belongs to the fringe if it contains only incoming or outgoing connections excepting turnarounds). This is important when using the option --fringe-factor <FLOAT> for generating plausible through-traffic in small networks.
- added two tools for visualising emission behaviour
- added some visualisation tools
Other
- TraCI
- TraCI version is now 8
- fixed documentation of of command slow down: It changes speed smoothly over the given number of milliseconds (in contrast to command speed which changes using maximum acceleration/deceleration).
- All Applications
- Added option --xml-validation <STRING> with possible values never, always and auto defaulting to auto. This causes all input files to be validated against their respective schema, provided the schema-URL is declared in the toplevel XML-Tag (always requires the schema-URL to be present).
- Added option --xml-validation.net <STRING> to all applications which read .net.xml-files which works like option --xml-validation <STRING> but applies only to sumo networks (default never since network validation is computationally expensive).
- Most of the input and output files have an XML schema now, see http://www.sumo-sim.org/trac.wsgi/browser/trunk/sumo/data/xsd
Version 0.19.0 (27.11.2013)
Bugfixes
- Simulation
- Fixed broken xml in vtk-output
- Fixed crash when using calibrators with discontinuous intervals
- instantInductionLoops no longer miscount vehicles which change lanes on the detector edge.
- instantInductionLoops now write events in the correct order
- instantInductionLoops now propperly register vehicles staying on the detector
- fixed invalid speeds when running with step-length < 1 (see [ticket 1024])
- the departSpeed value of a vehicle can now be as high as laneSpeed * speedFactor
- fixed error in a car-following related formula which was causing collisions (see [ticket 1026])
- queue-output now correctly measures the length from the start of the queue to the rear of the last standing vehicle and no longer includes one additional minGap
- when using speedDev and departSpeed, the distribution will be adapted so that a vehicle can use the specified speed.
- The attribute emitted of the summary output was renamed to inserted
- fixed bug which caused vehicles to brake without good reason (see [ticket 1052])
- flow on a highway will no longer come to standstill just to let vehicles from an on-ramp merge.
- vehicles now manage to change to the necessary lanes much more often and thus avoid having to stop and block upstream traffic.
- vehicles now use all lanes of a multi-lane roundabout instead of only the outer lane.
- fixed tripinfo output for teleporting vehicles (ticket 990)
- fixed handling of stops before starting position (ticket 1056)
- fixed state loading with vehicle type distributions (ticket 1080)
- fixed memory leak of route distributions together with route probes (ticket 1077)
- fixed reference counts for routes in state save
- SUMO-GUI
- Right-click now always resolves to the correct object again. The problem was introduced in 0.18.0 and was triggered by drawing railways
- The object locator no longer jumps to an arbitrary location if the requested object is not found
- TraCI
- TraCI now returns the "netto" occupancy (without minGap) as other outputs do (was ticket#932)
- Traffic light program changes via TraCI now takes effect immediately instead of one step later. (Thanks to Christoph Sommer for reporting and fixing this problem)
- TraCI respects now the begin time option of a simulation (ticket 1049)
- DUAROUTER
- fixed crash when repairing routes with intermediate dead-end edges
- fixed generation of route distributions with 0 probability for trips where the starting and ending edge were connected
- NETCONVERT
- fixed bug where roundabouts sometimes had incorrect right-of-way rules
- option --keep-edges.in-geo-boundary now works when giving a .net.xml file as input
- OSM import no longer fails for non-standard input data (i.e. empty key attribute or non-numerical value for tracks attribute)
- option --junctions.join no longer causes edges with a length above --junctions.join-dist <FLOAT> to be removed.
- DFROUTER
- handling end times correctly (ticket 428)
Enhancements
- Simulation
- Increased Simulation performance when handling lots of traffic lights (rewrote code which was updating traffic lights more often than necessary)
- added vType-attribute laneChangeModel for customizing the lane changing behavior. Allowed values are DK2008 (the model used until version 0.18.0), JE2013 and LC2013 (the new default model).
- Vehicles moving across junctions now consider the exact crossing points at which their paths intersect with other vehicles when deciding on their speed. This leads to smoother traffic flow across junctions.
- Vehicles may now change lanes while driving across junctions if the edge they were coming from has priority (only on networks with merged internal lanes, see NETCONVERT changes). This improves simulation performance, particualarly on multi-lane roundabouts.
- Teleport warnings now always include a reason. For a vehicle that is teleported because its waitingTime exceeds time-to-teleport the reason can be:
- wrong lane when the vehicle was stuck on a lane which did not allow it to continue its route,
- yield when the vehicle was stuck on an unprioritized road and did not find a gap in traffic or
- jam when the vehicle could not continue because there was no space on the next lane
- conflicts between speed deviation and departure speed are handled more gracefully (ticket 1035)
- SUMO-GUI
- now drawing blinkers to visualize a vehicles desire to change lanes (this is only noticable if a vehicle cannot change lanes immediately).
- added vehicle coloring modes by offset from best lane and by acceleration
- when drawing a vehicles route, the lanes which the vehicle intends to use are highlighted where this is known (previously the rightmost lane was always used).
- Added hotkeys Ctrl-A, Ctrl-S, Ctrl-D for running, stopping and stepping the simulation
- Added a menu for opening the object locator dialogs. Using the menu hotkeys allows searching for simulation objects without using the mouse.
- The vehicle parameter dialog now also contains informations related to the vehicle type.
- TraCI
- lane change requests now have a higher priority by default and will thus succeed much more frequently.
- added the possibility to get the number/IDs of vehicles that begin or end to park or stop, see TraCI/Simulation_Value_Retrieval (was ticket#353)
- added new command lane change mode (0xb6) to control conflict resolution between TraCI-lane-changing request and lane-changing decisions by the laneChangeModel. It also allows to override safety constrainst and to trigger cooperative speed adjustments to better fulfill change requests.
- The python API throws now a TraCIException on recoverable errors (such as an unknown vehicle id) and brings the system in a consistent state (ticket 1043)
- added possibility to remove waiting cars inspired by Bob Holcomb (ticket 942)
- improved execution speed of context subscriptions
- NETEDIT
- added option for reversing the direction of edges
- lanes can now be selected based on their index
- NETCONVERT
- when specifying connections it is now possible to refer to edges which got split (ticket 492)
- added new projection option to convert Gauss-Krueger to UTM
- DUAROUTER
- major refactoring of input parsing, it is now possible to mix trips, flows and vehicles in one file
- stops are respected on routing (ticket 988)
Other
- NETCONVERT
- reworked type-related warnings when importing OSM data to increase readability
- modified naming conventions for internal lanes: previously every internal lane had its own internal edge. The id of this internal edge was ":<junction_id>_<link_index>" and the id of the internal lane was ":<junction_id>_<link_index>_0". Now Internal lanes with the same start and end edge have a common internal edge (except for lanes following an internal junction). The id of this internal edge is ":<junction_id>_<link_index_of_first_lane>" and the id of the internal lanes is ":<junction_id>_<link_index>_<lane_index>". The following relation still holds between link indices of internal lanes and their ids: <interal_edge_id> + <internal_lane_id> == <link_index>. The change was done to allow lane changing on internal lanes. As a side effect of merging internal lanes into a single edge, lane lengths may differ compared to the previous release. This is because the simulation length of a lane is always the average of the geometrical length of all lanes of an edge.
- TraCI
- The documentation for vehicle value retrieval/modification now includes information on setting/retrieving vehicle-type related values for individual vehicles (i.e. length, maxSpeed).
- removed obsolete vehicle add command
- TraCI version is now 7
- reworked checks for gdal and fox in configure
- documentation now contains links to the wiki pages it was generated from
Version 0.18.0 (28.08.2013)
Bugfixes
- Simulation
- fixed crash/hangup if a step-length below the minimum of 0.001 is given
- fixed bug that caused visual collisions (vehicles on different lanes occupying the same space while on a junction)
- fixed bug where vehicles were inserted with unsafe speeds on minor roads causing collisions
- removed arrival attribute from vehicle routes output for non arrived vehicles
- now saving all routes if a vehicle is rerouted multiple times
- fixed crash when using calibrators
- TraCI
- the return values for link direction and link state are now working for lane variable: link (0x33)
- routes are now preloaded before the first simulation step such that getMinExpectedNumber gives good results from the very start
- Fixed documentation bug that stated geodetic positions have the format LAT,LON whereas they actually use LON,LAT. TraCI behavior remains unchanged.
- Fixed rerouting for not departed vehicles (change target, change route and change route id)
- NETCONVERT
- street-names will no longer be missing from the output when importing a net.xml or edg.xml file which has them
- using option --ramps.no-split <BOOL> no longer creates networks with faulty connections.
- fixed bug that caused invalid connections to be generated where roads split or merge
- fixed invalid traffig light logics and occasional crashes when importing a .net.xml file along with split elements
- when importing sumo networks, dangerous connections (multiple connections from the same edge to the same lane) are no longer silently discarded
- fixed bug that caused invalid node geometries when using --junctions.join together with ramp building options --ramps.*.
- DUAROUTER
- option --ignore-errors <BOOL> now works correctly when a vehicle is not allowed to drive on its depart edge
- SUMO-GUI
- vehicles with guiShape="pedestrian" now have the same size in all levels of detail
- traffic lights and lane-to-lane connections are now drawn for railways
Enhancements
- Simulation
- improved simulation speed
- added option --link-output <FILE> for recording the approach of vehicles at junctions. This option addresses the need of developers when investigating junction control.
- added new abstract vehicle classes "custom1" and "custom2" for user defined purposes.
- drivers on a minor road now grow impatient while waiting for a gap in the traffic. After a while they will drive even if it means that another car has to slow down to accommodate them (as before, they will only drive if it is safe to do so).
- added vType attribute impatience which affects the willingness of drivers to cut into traffic even if it forces other drives to brake.
- added support for stop-signs at minor roads
- added support for the intersection type allway_stop. [This corresponds to an intersection type found in north america]
- added option --fcd-output.signals <BOOL> for including a vehicles signal state in the output (brake lights etc.)
- implemented "expected" attribute for stops, which expects IDs of people that have to enter the vehicle to allow the vehicle to leave the stop. Should be used with "triggered='true'" (would not work otherwise). Thanks to Shubham Jain for pointing out the wrong description of the possibilities in [1].
- added options for saving and loading simulation states. Simulation states can
be saved at predetermined times and then loaded to initialize a new simulation (this also requires loading the network and routes of the original simulation). When the filename for saving ends with .sbx the file will be saved in a binary format instead of xml.
- SUMO-GUI
- it is now possible to toggle the simulation time display between 'seconds' and 'hour-minute-seconds' by clicking on the 'Time'-button next to the time display. The state of this setting persists across GUI sessions.
- it is now possible to toggle between alternate delay values by clicking on the 'Delay'-button next to the delay dial. Clicking causes the current delay value to be saved as the alternative value. The alternative delay value persists across GUI sessions.
- parking vehicles are now being drawn (at the side of the road)
- the vehicle parameter table now contains information about the status of stopped vehicles
- vehicles can now be colored by their selection state
- added option for selecting a vehicles foes at the next junction to the vehicle popup menu (useful when coloring by selecting)
- brake lights will no longer be triggered when the route ends unless the vehicle actually has to slow down.
- now providing separate options for customizing the visualization of persons
- NETCONVERT
- when using the option --no-internal-links the edge lengths are now increased to compensate for the missing internal links. Thus, route lengths will correspond better to physical distances and roundabouts are less prone to congestions.
- added option --keep-edges.in-geo-boundary which works similar to option --keep-edges.in-boundary but uses geodetic coordinates instead of cartesian.
- added new node type priority_stop. This works similar to type priority but minor links now require a stop
- added new node type allway_stop. [This corresponds to an intersection type found in north America]
- added option --ignore-errors.edge-type for ignoring unknown edge types during loading. This happens frequently when dealing with plain xml files based on OSM data.
- now parsing the OSM-Attribute "tracks" to determine whether a railway element is unidirectional or bidirectional.
- added option --osm.railway.oneway-default <BOOL> for setting the default behavior when importing railways without "tracks" attribute. The appropriate value depends on the mapping style of the regional OSM comunity.
- added option --geometry.max-angle <FLOAT> which warns about sharp turns on an edge. This is enabled by default for turns above 99 Degrees.
- added option --geometry.min-radius <FLOAT> which warns about sharp turns at the start and end of an edge. This is enabled by default for radii below 9 meters
- added option --geometry.min-radius.fix <BOOL> which prunes geometry to avoid sharp turns at the start and end of an edge. This is disabled by default.
- added option --check-lane-foes.all <BOOL> (default=false) for lifting junction restrictions for vehicles which exit on different lanes of the same edge without crossing paths. This improves junction throughput in many cases but is a more aggressive interpretation of german traffic laws.
- added option --check-lane-foes.roundabout <BOOL> (default=true) for lifting some junction restrictions at roundabouts. This conforms to the typical layout of roundabouts where restrictions on lane-changing allow such movements.
- TraCI
- added optional flags for cmd stop (0x12) to set the parking and triggered status
- added command stop state (id 0xb5) for retrieving the stopped,parking and triggered status
- added command resume (0x19) for resuming from the current stop
- reduced verbosity on connection close (no more good byes)
Other
- Simulation
- The elements <vehicle>, <flow> and <vType> now support child elements of the form <param key="myKey" value="myValue/>. These can be used when implementing custom functionality (see Developer/How_To/Device).
- code for messaging functionality removed (was disabled by default anyway)
- Contributed/SmallMaps tools was removed because it was outdated
- switched all references in code and documentation to sumo-sim.org
- TraCI version is now 6
Older Versions
- z/Changes from Version 0.13.1 to Version 0.14.0
- z/Changes from Version 0.13.0 to Version 0.13.1
- z/Changes from Version 0.12.3 to Version 0.13.0
- z/Changes from Version 0.12.2 to Version 0.12.3
- z/Changes from Version 0.12.1 to Version 0.12.2
- z/Changes from Version 0.12.0 to Version 0.12.1
- z/Changes from Version 0.11.1 to Version 0.12.0
- z/Changes from Version 0.10.2 to Version 0.10.3
- z/Changes from Version 0.10.1 to Version 0.10.2
- z/Changes from Version 0.10.0 to Version 0.10.1
- z/Changes from Version 0.9.10 to Version 0.10.0
- z/Changes from version 0.9.9 to version 0.9.10
- z/Changes from version 0.9.8 to version 0.9.9
- z/Changes from version 0.9.7 to version 0.9.8
- z/Changes from version 0.9.6 to version 0.9.7
- z/Changes from version 0.9.5 to version 0.9.6
- z/Changes from version 0.9.3 to version 0.9.4
- z/Changes from version 0.9.2 to version 0.9.3
- z/Changes from version 0.9.1 to version 0.9.2
- z/Changes from version 0.9.0 to version 0.9.1
- z/Changes from version 0.8.x to version 0.9.0
- z/Changes from version 0.8.2.2 to version 0.8.3
- z/Changes from version 0.8.2.1 to version 0.8.2.2
- z/Changes from version 0.8.0.2 to version 0.8.2.1
- z/Changes from version 0.8.0.1 to version 0.8.0.2
- z/Changes from version 0.8.0 to version 0.8.0.1
This page was last modified on 10 March 2014, at 23:26.