From 30.000 feet#
jtrrouter computes routes that may be used by sumo based on traffic volumes and junction turning ratios.
- Purpose: Building vehicle routes from demand definitions using junction turning percentages
- System: portable (Linux/Windows is tested); runs on command line
-
Input (mandatory):
A) a road network as generated via netconvert or netgenerate, see Building Networks
B) a demand definition, see Demand Modelling
C) Junction turning definitions
-
- Output: Definition of Vehicles, Vehicle Types, and Routes usable by sumo
- Programming Language: C++
Usage Description#
jtrrouter is made for routing based on turn-ratios.
Options#
You may use a XML schema definition file for setting up a jtrrouter configuration: jtrrouterConfiguration.xsd.
Configuration#
All applications of the SUMO-suite handle configuration options the same way. These options are discussed at Basics/Using the Command Line Applications#Configuration Files.
Option | Description |
---|---|
-c <FILE> --configuration-file <FILE> |
Loads the named config on startup |
-C <FILE> --save-configuration <FILE> |
Saves current configuration into FILE |
--save-configuration.relative <BOOL> | Enforce relative paths when saving the configuration; default: false |
--save-template <FILE> | Saves a configuration template (empty) into FILE |
--save-schema <FILE> | Saves the configuration schema into FILE |
--save-commented <BOOL> | Adds comments to saved template, configuration, or schema; default: false |
Input#
Option | Description |
---|---|
-n <FILE> --net-file <FILE> |
Use FILE as SUMO-network to route on |
-d <FILE> --additional-files <FILE> |
Read additional network data (districts, bus stops) from FILE(s) |
-r <FILE> --route-files <FILE> |
Read sumo routes, alternatives, flows, and trips from FILE(s) |
--phemlight-path <FILE> | Determines where to load PHEMlight definitions from; default: ./PHEMlight/ |
--phemlight-year <INT> | Enable fleet age modelling with the given reference year in PHEMlight5; default: 0 |
--phemlight-temperature <FLOAT> | Set ambient temperature to correct NOx emissions in PHEMlight5; default: 1.79769e+308 |
--junction-taz <BOOL> | Initialize a TAZ for every junction to use attributes toJunction and fromJunction; default: false |
-t <FILE> --turn-ratio-files <FILE> |
Read turning ratios from FILE(s) |
Output#
Option | Description |
---|---|
-o <FILE> --output-file <FILE> |
Write generated routes to FILE |
--vtype-output <FILE> | Write used vehicle types into separate FILE |
--keep-vtype-distributions <BOOL> | Keep vTypeDistribution ids when writing vehicles and their types; default: false |
--emissions.volumetric-fuel <BOOL> | Return fuel consumption values in (legacy) unit l instead of mg; default: false |
--named-routes <BOOL> | Write vehicles that reference routes by their id; default: false |
--write-license <BOOL> | Include license info into every output file; default: false |
--output-prefix <STRING> | Prefix which is applied to all output files. The special string 'TIME' is replaced by the current time. |
--precision <INT> | Defines the number of digits after the comma for floating point output; default: 2 |
--precision.geo <INT> | Defines the number of digits after the comma for lon,lat output; default: 6 |
-H <BOOL> --human-readable-time <BOOL> |
Write time values as hour:minute:second or day:hour:minute:second rather than seconds; default: false |
--exit-times <BOOL> | Write exit times (weights) for each edge; default: false |
Processing#
Option | Description |
---|---|
--max-alternatives <INT> | Prune the number of alternatives to INT; default: 5 |
--with-taz <BOOL> | Use origin and destination zones (districts) for in- and output; default: false |
--unsorted-input <BOOL> | Assume input is unsorted; default: false |
-s <TIME> --route-steps <TIME> |
Load routes for the next number of seconds ahead; default: 200 |
--no-internal-links <BOOL> | Disable (junction) internal links; default: false |
--randomize-flows <BOOL> | generate random departure times for flow input; default: false |
--remove-loops <BOOL> | Remove loops within the route; Remove turnarounds at start and end of the route; default: false |
--repair <BOOL> | Tries to correct a false route; default: false |
--repair.from <BOOL> | Tries to correct an invalid starting edge by using the first usable edge instead; default: false |
--repair.to <BOOL> | Tries to correct an invalid destination edge by using the last usable edge instead; default: false |
--mapmatch.distance <FLOAT> | Maximum distance when mapping input coordinates (fromXY etc.) to the road network; default: 100 |
--mapmatch.junctions <BOOL> | Match positions to junctions instead of edges; default: false |
--bulk-routing <BOOL> | Aggregate routing queries with the same origin; default: false |
--routing-threads <INT> | The number of parallel execution threads used for routing; default: 0 |
--restriction-params <STRING[ ]> | Comma separated list of param keys to compare for additional restrictions |
--weights.minor-penalty <FLOAT> | Apply the given time penalty when computing routing costs for minor-link internal lanes; default: 1.5 |
--weights.tls-penalty <FLOAT> | Apply the given time penalty when computing routing costs across a traffic light; default: 0 |
--weights.turnaround-penalty <FLOAT> | Apply the given time penalty when computing routing costs for turnaround internal lanes; default: 5 |
--max-edges-factor <FLOAT> | Routes are cut off when the route edges to net edges ratio is larger than FLOAT; default: 2 |
-T <STRING[ ]> --turn-defaults <STRING[ ]> |
Use STR[] as default turn definition; default: 30,50,20 |
--sink-edges <STRING[ ]> | Use STR[] as list of sink edges |
-A <BOOL> --accept-all-destinations <BOOL> |
Whether all edges are allowed as sink edges; default: false |
-i <BOOL> --ignore-vclasses <BOOL> |
Ignore road restrictions based on vehicle class; default: false |
--allow-loops <BOOL> | Allow to re-use a road; default: false |
-S <BOOL> --sources-are-sinks <BOOL> |
Use all source edges as sink edges.; default: false |
-D <BOOL> --discount-sources <BOOL> |
Subtract upstream flow when inserting a new flow. When option --sources-are-sinks is set, the upstream flow is limited to the value of the source flow and the remaining part terminates.; default: false |
Defaults#
Option | Description |
---|---|
--departlane <STRING> | Assigns a default depart lane |
--departpos <STRING> | Assigns a default depart position |
--departspeed <STRING> | Assigns a default depart speed |
--arrivallane <STRING> | Assigns a default arrival lane |
--arrivalpos <STRING> | Assigns a default arrival position |
--arrivalspeed <STRING> | Assigns a default arrival speed |
--defaults-override <BOOL> | Defaults will override given values; default: false |
Time#
Option | Description |
---|---|
-b <TIME> --begin <TIME> |
Defines the begin time; Previous trips will be discarded; default: 0 |
-e <TIME> --end <TIME> |
Defines the end time; Later trips will be discarded; Defaults to the maximum time that SUMO can represent; default: -1 |
Report#
All applications of the SUMO-suite handle most of the reporting options the same way. These options are discussed at Basics/Using the Command Line Applications#Reporting Options.
Option | Description |
---|---|
-v <BOOL> --verbose <BOOL> |
Switches to verbose output; default: false |
--print-options <BOOL> | Prints option values before processing; default: false |
-? <BOOL> --help <BOOL> |
Prints this screen or selected topics; default: false |
-V <BOOL> --version <BOOL> |
Prints the current version; default: false |
-X <STRING> --xml-validation <STRING> |
Set schema validation scheme of XML inputs ("never", "local", "auto" or "always"); default: local |
--xml-validation.net <STRING> | Set schema validation scheme of SUMO network inputs ("never", "local", "auto" or "always"); default: never |
--xml-validation.routes <STRING> | Set schema validation scheme of SUMO route inputs ("never", "local", "auto" or "always"); default: local |
-W <BOOL> --no-warnings <BOOL> |
Disables output of warnings; default: false |
--aggregate-warnings <INT> | Aggregate warnings of the same type whenever more than INT occur; default: -1 |
-l <FILE> --log <FILE> |
Writes all messages to FILE (implies verbose) |
--message-log <FILE> | Writes all non-error messages to FILE (implies verbose) |
--error-log <FILE> | Writes all warnings and errors to FILE |
--log.timestamps <BOOL> | Writes timestamps in front of all messages; default: false |
--log.processid <BOOL> | Writes process ID in front of all messages; default: false |
--language <STRING> | Language to use in messages; default: C |
--ignore-errors <BOOL> | Continue if a route could not be build; default: false |
--stats-period <INT> | Defines how often statistics shall be printed; default: -1 |
--no-step-log <BOOL> | Disable console output of route parsing step; default: false |
Random Number#
All applications of the SUMO-suite handle randomisation options the same way. These options are discussed at Basics/Using the Command Line Applications#Random Number Options.
Option | Description |
---|---|
--random <BOOL> | Initialises the random number generator with the current system time; default: false |
--seed <INT> | Initialises the random number generator with the given value; default: 23423 |