Road Network
The road network is used to route between origins and destinations, taking into regard the maximum allowed speed as well as mode-related restrictions. UrMoAC uses an own road network representation.
The following attributes describe a road:
- ID: the ID of the road;
- from node: the numeric ID of the node (intersection) the road starts at;
- to node: the numeric ID of the node (intersection) the road ends at;
- foot: whether pedestrians may use this road;
- bike: whether bicyclists may use this road;
- car: whether motorised vehicles may use this road;
- speed: the maximum velocity allowed on this road in km/h;
- length: the length of this road in meters;
- geometry: a line strip defining this road's geometry.
Roads are unidirectional. The geometry is a line strip (multiple line segments). The length should cover the length of the complete line strip.
The following options are used in combination with this data type:
- --net <NETWORK>.
We usually use road networks from OpenStreetMap. A tool for importing them into a database is supported.
Database Format
A road network is defined by the roads it consists of, and each road is represented using the following attributes in a database:
| Column Name | Type | Purpose |
|---|---|---|
| oid | String | The name of the road |
| geom | PostGIS MultiLineString | The shape of the road |
| nodefrom | long | The ID of the node the road starts at |
| nodeto | long | The ID of the node the road ends at |
| mode_walk | boolean | Whether the road can be used by the mode “walking”/“foot” |
| mode_bike | boolean | Whether the road can be used by the mode “bicycling”/“bike” |
| mode_mit | boolean | Whether the road can be used by the mode “motorised individual traffic”/“car”/“car” |
| vmax | double | The maximum speed allowed on this road in km/h |
| length | double | The length of this road |
Use --net jdbc:postgresql:<DB_HOST>,<SCHEMA>.<TABLE>,<USER>,<PASSWORD> to load a network from a database. See Origins and Destinations for an explanation.
File (.csv) Format
You may load networks from .csv-files. Within a network .csv-file, every (always unidirectional) road is stored in a single line.
The following example defines a road with the ID “10000” connecting nodes 0 and 1, where all modes are allowed. The maximum velocity is 50 km/h, the length is 500 m. The geometry simply spans between the connected nodes.
10000;0;1;true;true;true;50;500;-250;0;250;0
The boolean values for “foot”, “bike”, and “car” may be encodes as “true” or “1” when the respective mode is allowed, “false” or “0” otherwise.
Please note that no projection is applied to networks stored in .csv files, thereby you should set --epsg 0.
The file type is recognized by the extension, i.e. use --net <MYFILE>.csv to load a network from a .csv-file.
File (.wkt) Format
You may load networks from .wkt-files. Within a network .wkt-file, every road is stored in a single line.
The following example defines a road with the ID “10000” connecting nodes 0 and 1, where all modes are allowed. The maximum velocity is 50 km/h, the length is 500 m. The geometry simply spans between the connected nodes.
10000;0;1;true;true;true;50;500;LINESTRING(-250 0, 250 0)
The boolean values for “foot”, “bike”, and “car” may be encodes as “true” or “1” when the respective mode is allowed, “false” or “0” otherwise.
Please note that no projection is applied to aggregation areas stored in .wkt files, thereby you should set --epsg 0.
The file type is recognized by the extension, i.e. use --net <MYFILE>.wkt; to load a network from a .wkt-file.
SUMO (.net.xml)
You may directly load a SUMO network.
Please note that no projection is applied to SUMO networks, thereby you should set --epsg 0.
The file type is recognized by the extension, i.e. use --net <MYFILE>.net.xml to load a SUMO networks.