Road Network

Type: object

Description of the vehicles and the road-network graph.

Type: object

Type: array of array

Edges of the graph, represented as a tuple (s, t, e), where s is the id of the source node, t is the id of the target node and e is the description of the edge.

Must contain a minimum of 1 items

Each item of this array must be:

Type: array

Must contain a minimum of 3 items

Must contain a maximum of 3 items

Tuple Validation

Item at 1 must be:
Type: integerFormat: uint32

Value must be greater or equal to 0.0

Item at 2 must be:
Type: integerFormat: uint32

Value must be greater or equal to 0.0

Item at 3 must be:
Type: object

An edge of a road network that connects two nodes.


Example:

{
    "base_speed": 13.88888888888889,
    "bottleneck_inflow": 0.4,
    "bottleneck_outflow": 0.4,
    "constant_travel_time": 4.0,
    "lanes": 2,
    "length": 100.0,
    "speed_density": {
        "type": "ThreeRegimes",
        "value": {
            "beta": 2.0,
            "jam_density": 0.8,
            "jam_speed": 2.7777777777777777,
            "min_density": 0.3
        }
    }
}

Type: number

The base speed of the edge.

Value must be greater or equal to 0.0

Type: number Default: "Infinity"

Maximum inflow of vehicle at the beginning of the edge.

Type: number Default: "Infinity"

Maximum outflow of vehicle at the end of the edge.

Type: number Default: "0"

Constant travel time penalty for the runnning part of the edge.

Type: integerFormat: uint8 Default: 1

The number of lanes on the edge.

Value must be greater or equal to 1.0

Type: number

The length of the edge, from source node to target node.

Value must be greater or equal to 0.0

Type: object

Speed-density function for the running part of the edge.

Type: object

Vehicles always travel at free-flow speed.

Type: enum (of string)

Must be one of:

  • "FreeFlow"
Type: object

Vehicles travel at free-flow speed when flow is below edge capacity. Then, speed is inversely proportional to flow.

The parameter represents the capacity of each lane of the edge, in length unit per time unit.

Type: enum (of string)

Must be one of:

  • "Bottleneck"

Type: numberFormat: double
Type: object

A speed-density function with three regimes: free flow, congested and traffic jam.

Type: enum (of string)

Must be one of:

  • "ThreeRegimes"

Type: object

A speed-density function with three regimes.

The three regimes are:

  1. Free-flow regime. If density on the edge is smaller than min_density, travel time is equal to free-flow travel time.

  2. Congested regime. If density on the edge is between min_density and jam_density, speed is equal to v = v0 * (1 - c) + jam_speed * c, where v0 is the free-flow speed and c = ((density - min_density) / (jam_density - min_density))^beta.

  3. Traffic jam. If density on the edge is larger than jam_density, travel time is equal to tt = distance / jam_speed.

Type: numberFormat: double

Parameter to compute the speed in the congested regime.

Type: numberFormat: double

Density on the edge (between 0.0 and 1.0) above which the speed is equal to jam speed.

Type: number

Speed at which the vehicle travel in case of traffic jam.

Type: numberFormat: double

Density on the edge (between 0.0 and 1.0) below which the speed is equal to free-flow speed.

Type: array

Must contain a minimum of 1 items

Each item of this array must be:

Type: object

A road vehicle with a given length, passenger car equivalent and speed function.


Examples:

{
    "length": 8.0,
    "pce": 1.0,
    "speed_function": {
        "type": "Multiplicator",
        "value": 0.8
    }
}
{
    "length": 20.0,
    "pce": 3.0,
    "speed_function": {
        "type": "Piecewise",
        "value": [
            [
                0.0,
                0.0
            ],
            [
                90.0,
                90.0
            ],
            [
                130.0,
                90.0
            ]
        ]
    }
}

Type: number

Headway length of the vehicle, used to compute vehicle density on the edges.

Type: number

Passenger car equivalent of the vehicle, used to compute bottleneck flow.

Type: object

Speed function that gives the vehicle speed as a function of the edge base speed.

Type: object

The identity function.

Type: enum (of string)

Must be one of:

  • "Base"
Type: object

A linear function: f(s) = a * s.

Type: enum (of string)

Must be one of:

  • "Multiplicator"

Type: numberFormat: double
Type: object

A piecewise-linear function, represented by a vector of breakpoints (x, y), where x is the base speed on the edge and y is the effective speed.

The breakpoints (x, y) must be ordered by increasing x.

If the edge's base speed is out of bound (i.e., smaller than the smaller x value or larger than the largest x value), the base speed is used as the effective speed.

Type: enum (of string)

Must be one of:

  • "Piecewise"

Type: array of array

Each item of this array must be:

Type: array

Must contain a minimum of 2 items

Must contain a maximum of 2 items

Each item of this array must be:

Type: number

Representation of a speed, expressed in meters per second.