1 Introduction

Link-based tolls charge the road users according to the usage of the road, such that for each tolled link of the network used in a trip a certain toll cost is applied. The toll perceived during a trip is then the sum of all the link-based tolls encountered during this trip. For example, the link toll may be proportional to the length of the link, also known as distance-based tolls. Link-based tolls proportional to the link length have been successfully implemented in Australia, Canada, and Taiwan for light vehicles and in Germany for heavy trucks. Several papers considered the impact of such tolls on the travelers’ behavior (see May and Milne 2000; Wen and Tsai 2005; Balwani and Singh 2009; Joua et al. 2012; Meng et al. 2012; Natzel et al. 2011).

Some feasibility studies for current toll road projects require the ability to model different variants of link-based tolls, such as capped maximum toll, minimum toll and different fees per entry ramp, which are added to the link-dependent tolls. When a maximum toll (cap) scheme is used, toll road users pay a fee for up to a certain value and the rest of the trip does not incur an additional charge. Minimum link-based tolls require a minimum payment, regardless of the distance traveled on the tolled road. Since most of the link-based detection systems have entry/exit ramps readings, some models require the ability to model additional flat fees on top of the link-based tolls, which may depend as well on the entry ramp chosen.

If toll capping is not applied, then link-based tolls are just link additive; that is, the toll cost along a path is the sum of the tolls corresponding to the links that belong to the path. This type of tolls can be modeled by extensions of the classic traffic equilibrium methods by solving for the user equilibrium (see Wardrop 1952) with a fixed link cost term added to the objective function (see for example Larsson and Patriksson 1998; Hagstrom 1998; Florian 2006). In the presence of capping, the toll cost along a path is the sum of the tolls corresponding to the links that belong to the path up to a cap value; this implies that such link-based tolls are not link additive. General algorithms for the non-additive traffic equilibrium problem have been considered in several papers, using path enumeration (see for example Bernstein and Gabriel 1997; Lo and Chen 2000, Chen et al. 2010; Larsson et al. 2002; Qian et al. 2013). Of particular interest is Lawphongpanich and Yin (2012), who consider this problem for piecewise linear toll functions with a path-space formulation, along with conditions which allow to convert the problem into a link-based formulation. Their method requires the solution of a path generation sub-problem, which is not trivial. The method presented in this paper uses a network construction, which results in a link-additive network equilibrium model with non-separable cost functions. This modified model may be solved by the adaptation of any suitable method for computing network equilibrium flows. An alternative way to model link-based tolls is a method referred to as “ramp-to-ramp” tolls, which also avoids the enumeration of complete paths between the origin and destination (see Yang et al. 2004).

This article presents a new model and algorithm for link-based toll modeling which directly uses the toll cost per link instead of the cost of entry/exit ramp pairs. Similar to the ramp-to-ramp method, the algorithm is based on the construction of additional links, which span the toll road, with the significant difference that the original links are kept as well and are used during the equilibration process. To solve the static traffic assignment problem on this augmented network, a multi-threaded version of the bi-conjugate linear approximation method (Mitradjieva and Lindberg 2013) has been adapted for the particular network structure considered. The new method is illustrated with an example of capped link-based toll modeling on a simple application and another which originates from practice.

The paper is organized as follows. The next section introduces the notation used and the model formulation. Section 3 explains the conversion of the non-additive path cost problem into an additive one via a network construction, along a proof of the cost function symmetry. Section 4 describes the main steps of the method along with a proof of model equivalency. In Sect. 5, a small numerical example is given. In Sect. 6, a large-scale application is given, where the influence of the toll cap is illustrated with an application for the Sydney M2 toll highway. Section 7 offers some conclusions.

2 Model formulation

To formulate the traffic assignment problem in the presence of capped link-based tolls, the following notation is used. A road network G = (NA) consists of nodes n ∊ N and directed arcs (also called links) a ∊ A which may carry vehicular traffic. The demand for origin–destination (O–D) pair i ∊ I ⊂ N × N is denoted by g i . These demands use paths k, k ∊ K i , where K i is the set of all paths available for O–D pair i. The set of all O–D paths is K = ∪  iI K i . The flow on link a ∊ A is denoted by v a . In its simplest form, the generalized cost c a on arc a is the sum of the volume-delay (travel time) function, denoted as s a (v a ), and a toll t a ; this toll is obtained by converting its monetary value into time units by an appropriate use of the value of time. The link volume-delay functions s a (v a ) are assumed to be differentiable and monotonically increasing. To distinguish between toll and non-toll links, the set of toll links is denoted by TT ⊆ A.

In the absence of tolls, the generalized cost c k of a path k, k ∊ K i is:

$$c_{k} = s_{k} = \sum\limits_{a \in A} {\delta_{ak} s_{a} \left( {v_{a} } \right)} ,$$
(1)
$$\delta_{ak} = \left\{ {\begin{array}{*{20}c} 1 & \!\!\!{\text{if} \,\,a \in k} \\ 0 & {\text{otherwise} } \\ \end{array} } \right..$$
(2)

If the path contains one or more toll links, subject to a cap t max and a minimum toll t min, then its toll cost in general is

$$\tau_{k} = \hbox{max} \left( {t^{\hbox{min} } ,\hbox{min} \left( {t^{\hbox{max} } ,\sum\limits_{a \in T} {\delta_{ak} t_{a} } } \right)} \right).$$
(3)

Note that (3) is valid as stated if a driver enters a toll facility only once. In the model we describe in this paper, a cap is applied each and every time the driver enters/exits a toll facility. For the simplicity of notation if the path contains more than one capped sub-path, the sub-paths are not identified explicitly; otherwise, a summation over all capped sub-paths in a path would be needed. Hence, the generalized cost of a path k is

$$c_{k}^{{}} = \sum\limits_{a \in A} {\delta_{ak} s_{a} \left( {v_{a} } \right)} + t_{k} ,$$
(4)

where t k is the sum of the capped tolls for each contiguous trip within a toll facility.

The path flows satisfy flow conservation and non-negativity

$$\sum\limits_{{k \in K_{i}^{{}} }} {h_{k} } = g_{i} \,\,\,,i \in I,\,\,\,h_{k} \ge 0,\,\,\,\,k \in K_{i} .$$
(5)

The link flows are

$$v_{a} = \sum\limits_{i \in I} {\sum\limits_{{k \in K_{i} }} {\delta_{ak} h_{k} } } .$$
(6)

Let u i , i ∊ I, be the value of shortest cost path for all O–D pairs:

$$u_{i} = \mathop {\hbox{min} }\limits_{{k \in K_{i}^{{}} }} \left( {c_{k} } \right),\,\,\,\,\,i \in I.$$
(7)

As usual, the user optimal flows (Wardrop 1952) satisfy

$$c_{k}^{*} - u_{i}^{*} \left\{ {\begin{array}{*{20}c} { = 0} & {{\text{if}}\,\,\,h_{k}^{*} > 0} \\ { \ge 0} & {{\text{if}}\,\,\,h_{k}^{*} = 0} \\ \end{array} } \right.,\,i \in I,$$
(8)

where * denotes the equilibrium values for path travel times and path flows. Equation 4 indicates that this is a network equilibrium model with non-additive costs.

3 Conversion into a link-additive network equilibrium model

To formulate this link-based toll network equilibrium model, it is assumed that the toll road forms a contiguous stretch of links. If the set of tolled links is not a contiguous stretch of links, it must be split into contiguous stretches of links, referred to as toll facilities, each of them capped separately. However, different toll facilities cannot have overlapping links. The method can be extended to toll facilities with links which form a directed acyclic graph. For the sake of presentation simplicity, turn penalties at nodes are not considered.

Consider now the sub-network shown in Fig. 1 where links a, b, c, and d are subject to link-based tolls.

Fig. 1
figure 1

Sub-network with link-based tolls

In the absence of toll caps, the toll paid by a road user traveling over the sequence of links from a to d is the sum of the toll paid on links a, b, c, and d, that is, t ad  = t a  + t b  + t c  + t d . If the tolls are capped to t max, t ad  = min(t maxt a  + t b  + t c  + t d ).

Hence, the classical network equilibrium formulation which adds a toll to each link is no longer valid since the tolls are non-additive due to the capping. To convert non-additive tolls to additive tolls, a network construction is used. It takes into account the path-dependent cost by enumerating all the possible sub-paths on the toll highway and adding new links for each of these sub-paths. For the example from Fig. 1, the auxiliary network construction is shown in Fig. 2 with dashed lines. The number of links added is usually small compared to the number of links in the entire network. On the other hand, this approach would not be efficient if one wanted to consider a large and dense part of the network, such as the central business district of a city, to be subjected to link-based capped tolls. In current applications, it is more common to impose a cordon-based toll for access to central parts of cities, rather than link-based tolls.

Fig. 2
figure 2

Additional links constructed on top of the sub-network

The added links, which form the set D, inherit the travel times of the spanned stretch of the road and the capped toll costs. Unlike the method described in Yang et al. (2004), which removes all the toll links prior to the ramp-to-ramp network construction, the original toll links of the network are not removed since a used path can contain only one single toll link. This construction converts a model with non-additive link costs to a model with additive but non-separable link costs on an augmented network.

The augmented network is denoted \(\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{G} = \left( {N,\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{A} } \right)\), where \(\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{A} = A \cup D\) is the set of links of the augmented network. The additional links in D are assigned a two-letter index, while links that belong to the base network A are referred to with only one index. For example, an additional link, which spans a toll road from link j to link k inclusively, is denoted by \(\widehat{jk} \in D\), j ≠ k. This partitions the network into three types of links: non-toll links in the base network a ∊ A – T, toll links in the base network \(a \in T\), and additional links \(\overset{\lower0.5em\hbox{$\smash{\scriptscriptstyle\frown}$}}{a} \in D\).

Denoting by v the flow vector over the links, the generalized cost of a link in set A–T depends only on its own flow:

$$c_{a} \left( {\mathbf{v}} \right) = s_{a} \left( {v_{a} } \right),\,\,\,a \in A - T.$$
(9)

Assuming that the toll links form a contiguous stretch numbered from 1 to n, the generalized cost c a of a toll link a ∊ T, 1 ≤ a ≤ n, can be expressed as:

$$c_{a} \left( {\mathbf{v}} \right) = s_{a} \left( {\sum\limits_{1 \le j \le a \le k \le n} {v_{\widehat{jk}} } + v_{a} } \right) + t_{a} ,{\mkern 1mu} {\mkern 1mu} {\mkern 1mu} a \in T,$$
(10)

where j ≠ k by the definition of links in D. Note that the generalized cost of a toll link a ∊ T is computed using the total flow on that link,

$$v_{a}^{\text{total}} = \sum\limits_{1 \le j \le a \le k \le n} {v_{\widehat{jk}} } + v_{a} ,$$
(11)

which includes all the trips that use it as part of the added links. For example, the cost of toll link b from Fig. 1 is

$$c_{b} = s_{b} \left( {v_{\widehat{ab}} + v_{\widehat{ac}} + v_{\widehat{ad}} + v_{\widehat{bc}} + v_{\widehat{bd}} + v_{b} } \right) + t_{b} .$$
(12)

The cost of an added link \(\widehat{lm} \in D\), which spans the original network links from link l to m, 1 ≤ l < m ≤ n, corresponds to the cost of a trip from link l to link m in the original network:

$$c_{\widehat{lm}} \left( {\mathbf{v}} \right) = \sum\limits_{a = l}^{m} {s_{a} \left( {\sum\limits_{1 \le j \le a \le k \le n} {v_{{\mathop {jk}\limits^{\frown } }} } + v_{a} } \right)} + t_{{\mathop {lm}\limits^{\frown } }} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} .$$
(13)

As stated in (4), if both a minimum cap and maximum cap are applied, the corresponding toll term is:

$$t_{{\mathop {lm}\limits^{\frown } }} = \hbox{max} \left( {t^{\hbox{min} } ,\hbox{min} \left( {t^{\hbox{max} } ,\sum\limits_{a = l}^{m} {t_{a} } } \right)} \right).$$
(14)

A single link a ∊ T in not capped unless t a  < t min or t a  > t max, in which case its toll value is changed to t min and t max, respectively.

It proves to be useful to extend the definition of v total a from (11) to all links in A as follows:

$$v_{a}^{total} = \left\{ {\begin{array}{*{20}c} \!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!{v_{a} ,} & \!\!\!\!\!\!\!\!{a \in A - T} \\ {\sum\limits_{1 \le j \le a \le k \le n} {v_{\widehat{jk}} } + v_{a} {\mkern 1mu} ,{\mkern 1mu} } & {a \in T,{\mkern 1mu} {\mkern 1mu} \widehat{jk} \in D} \\ \end{array} } \right.{\mkern 1mu} .$$
(15)

Therefore, the cost vector specified in (9), (10), and (13) can be defined directly in terms of v total a instead of the general flow vector variable v.

With this extension, the partial derivatives of v total a with respect to the link flows are:

$$\frac{{\partial v_{a}^{\text{total}} }}{{\partial v_{a} }} = 1,\,\,\,a \in A - T,$$
(16)
$$\frac{{\partial v_{a}^{\text{total}} }}{{\partial v_{a} }} = 1,\,\,\,a \in T,$$
(17)
$$\frac{{\partial v_{a}^{\text{total}} }}{{\partial v_{\widehat{lm}} }} = \left\{ {\begin{array}{*{20}c} {1,} & {{\text{if}}{\mkern 1mu} {\mkern 1mu}\,a \in T{\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\text{and}}{\mkern 1mu} {\mkern 1mu} {\mkern 1mu}\,l \le a \le m} \\ {0,} & \!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!\!{\text{elsewere}} \\ \end{array} } \right.,\,\widehat{lm} \in D.$$
(18)

A relevant question to pose at this stage is whether there exists an equivalent optimization model with such a cost vector. The following proposition proves that such a model exists.

Proposition 1

The Jacobian matrix of the link costs for links in T and D is symmetric.

Proof

The part of the Jacobian matrix related to links a ∊ A − T is diagonal since s a (v) depends only on v a . It remains to show that the other terms of the Jacobian matrix are symmetric. To show that the terms of the Jacobian matrix are symmetric for links in T and D, one has to show that

$$({\mathbf{a}}){\mkern 1mu} {\mkern 1mu} \frac{{\partial c_{\widehat{ij}} }}{{\partial v_{\widehat{kl}} }} = \frac{{\partial c_{\widehat{kl}} }}{{\partial v_{\widehat{ij}} }},$$
(19)
$$({\mathbf{b}}){\mkern 1mu} {\mkern 1mu} \frac{{\partial c_{a} }}{{\partial v_{\widehat{ij}} }} = \frac{{\partial c_{\widehat{ij}} }}{{\partial v_{a} }},$$
(20)
$$({\mathbf{c}})\,\,\frac{{\partial c_{a} }}{{\partial v_{b} }} = \frac{{\partial c_{b} }}{{\partial v_{a} }},$$
(21)

for all ab ∊ T, \(\widehat{ij} \in D,{\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} \widehat{lk} \in D,{\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} 1 \le i < j \le n,{\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\mkern 1mu} 1 \le l < k \le n\), assuming that the tolled links in T are contiguously numbered from 1 to n.

First, note that the contribution of the tolls to the generalized cost is constant and does not influence the derivatives. To prove (19), recall from (10) that the cost of toll links aT is evaluated at the total flow on a toll link v total a . The dependency of the total flow v total a on flows \(v_{\widehat{ij}}\) and \(v_{\widehat{kl}}\) can be described using the relative position of the four indices ijkl in the integer interval [1, n]. If the integer intervals [ij] and [kl] are disjoint, there is no dependency of cost \(c_{\widehat{ij}} \left( {\mathbf{v}} \right)\) on \(v_{\widehat{kl}}\), nor of cost \(c_{\widehat{kl}} \left( {\mathbf{v}} \right)\) on \(v_{\widehat{ij}}\), therefore the partial derivatives are zero. If they are not disjoint, there are as many partial derivative terms as many as the number of overlapping indices in the intersection of the two integer intervals. More formally, taking (10), (11), and (13) into account, the left term of (19) can be written as

$$\frac{{\partial c_{\widehat{ij}} }}{{\partial v_{\widehat{kl}} }} = \sum\limits_{i \le a \le j} {\frac{{\partial c_{a} }}{{\partial v_{\widehat{kl}} }}} = \sum\limits_{i \le a \le j} {\frac{{\partial c_{a} }}{{\partial v_{a}^{\text{total}} }}\frac{{\partial v_{a}^{\text{total}} }}{{\partial v_{\widehat{kl}} }}} = \sum\limits_{{a \in \left[ {i,j} \right] \cap \left[ {k,l} \right]}} {\frac{{\partial c_{a} }}{{\partial v_{a}^{\text{total}} }}} .$$
(22)

Analogously, the right term of (19) can be written as

$$\frac{{\partial c_{\widehat{kl}} }}{{\partial v_{\widehat{ij}} }} = \sum\limits_{k \le a \le l} {\frac{{\partial c_{a} }}{{\partial v_{\widehat{ij}} }}} = \sum\limits_{k \le a \le l} {\frac{{\partial c_{a} }}{{\partial v_{a}^{\text{total}} }}\frac{{\partial v_{a}^{\text{total}} }}{{\partial v_{ij} }}} = \sum\limits_{{a \in \left[ {i,j} \right] \cap \left[ {k,l} \right]}} {\frac{{\partial c_{a} }}{{\partial v_{a}^{\text{total}} }}} ,$$
(23)

and claim (a) holds.

According to (10) and using the same integer interval argument as above, the left term in (20) is

$$\frac{{\partial c_{a} }}{{\partial v_{\widehat{ij}} }} = \frac{{\partial c_{a} }}{{\partial v_{a}^{\text{total}} }}\frac{{\partial v_{a}^{\text{total}} }}{{\partial v_{\widehat{ij}} }} = \left\{ {\begin{array}{*{20}c} {\frac{{\partial c_{a} }}{{\partial v_{a}^{\text{total}} }}} & {{\mkern 1mu} {\text{if}}{\mkern 1mu} {\mkern 1mu}\,a \in \left[ {i,j} \right]} \\ 0 & {{\mkern 1mu} {\text{if}}{\mkern 1mu} {\mkern 1mu}\,a \notin \left[ {i,j} \right]} \\ \end{array} } \right. \, .$$
(24)

Using (10) and (13) for the right term in (20), it follows that

$$\frac{{\partial c_{\widehat{ij}} }}{{\partial v_{a} }} = \frac{{\partial \sum\limits_{l = i}^{j} {c_{l} } }}{{\partial v_{a} }} = \, \left\{ {\begin{array}{*{20}c} {\frac{{\partial c_{a} }}{{\partial v_{a} }}} & {{\text{if}}{\mkern 1mu} {\mkern 1mu}\,a \in \left[ {i,j} \right]} \\ 0 & {{\mkern 1mu} {\text{if}}{\mkern 1mu} {\mkern 1mu}\,a \notin \left[ {i,j} \right]} \\ \end{array} .} \right.$$
(25)

Since

$$\frac{{\partial c_{a} }}{{\partial v_{a} }}\, = \frac{{\partial c_{a} }}{{\partial v_{a}^{\text{total}} }}\frac{{\partial v_{a}^{\text{total}} }}{{\partial v_{a} }}\, = \frac{{\partial c_{a} }}{{\partial v_{a}^{\text{total}} }}\,,$$
(26)

claim (b) holds.

According to (10)

$$\frac{{\partial c_{a} }}{{\partial v_{b} }} = \frac{{\partial c_{b} }}{{\partial v_{a} }} = 0,\,\,\,a,b \in T,$$
(27)

such that claim (c) holds. □

Equations (9), (10), and (13) define a cost vector c(v) with non-separable cost functions over the links in A. Since c(v) is differentiable, as a sum of monotonically increasing functions, which are assumed to be differentiable, and the Jacobian matrix of the cost function is symmetric, there exists an equivalent optimization problem (see Ch. 2.5 in Patriksson 1994 or 4.1.5–4.1.6 in Ortega and Rheinboldt 1970) which can be stated as

$$\hbox{min} \int_{0}^{v} {c\left( {\mathbf{x}} \right)}^{T} d{\mathbf{x}},$$
(28)

subject to constraints in (5) and (6). The symmetry of the cost vector implies that a primitive exists. P.O. Lindberg (2014) suggested the following:

$$F\left( {\mathbf{v}} \right) = \sum\limits_{a \in A} {\int_{0}^{{v_{a}^{\text{total}} }} {s_{a} \left( x \right)dx} } + \sum\limits_{a \in T} {t_{a} v_{a} } + \sum\limits_{lm \in D} {t_{\widehat{lm}} v_{{\mathop {lm}\limits^{\frown } }} } .$$
(29)

The components of the gradient of F(v) with respect to link q in one of the three sets A − T, T, and D are:

$$\frac{{\partial F\left( {\mathbf{v}} \right)}}{{\partial v_{q} }} = s_{q} \left( {v_{q} } \right) = c_{q} \left( {\mathbf{v}} \right),\,\,\,{\text{for}}\,\,\,q \in A - T,$$
(30)
$$\frac{{\partial F\left( {\mathbf{v}} \right)}}{{\partial v_{q} }} = s_{q} \left( {v_{q}^{\text{total}} } \right) + t_{q} = c_{q} \left( {\mathbf{v}} \right),\,\,\,{\text{for}}\,\,\,q \in T,$$
(31)
$$\frac{{\partial F\left( {\mathbf{v}} \right)}}{{\partial v_{\widehat{lm}} }} = \sum\limits_{a = l}^{m} {s_{a} \left( {v_{a}^{\text{total}} } \right)} + t_{\widehat{lm}} = c_{\widehat{lm}} \left( {\mathbf{v}} \right),{\mkern 1mu} {\mkern 1mu} {\mkern 1mu} {\text{for}}{\mkern 1mu} {\mkern 1mu}\,\widehat{lm} \in D,$$
(32)

such that one obtains the cost vector as defined in (9), (10), and (13).

Note that, to solve this minimization problem for the link flows using a Frank–Wolf type algorithm, the explicit form of the objective function is not required since only its derivatives are used during such an algorithm, which yields the already known cost vector.

4 A solution algorithm

In this section, the solution algorithm including the network construction is described.

The steps of the solution algorithm may be summarized as follows:

  1. 1.

    Given G = (NA) construct \(\widehat{G} = \left( {N,\widehat{A}} \right)\) by adding the fictitious links in D.

  2. 2.

    From toll links in T ⊆ A compute the toll and define the cost functions on fictitious links in D.

  3. 3.

    Solve the traffic equilibrium problem in \(\widehat{G} = \left( {N,\widehat{A}} \right)\) with tolls as additional link cost by solving the minimization problem (28) subject to constraints (5) and (6).

  4. 4.

    Based on the flows on fictitious links in D compute the flows on the toll links in T ⊆ A using (11); the links in A − T from G inherit their flow from the corresponding arcs in \(\widehat{G}\).

Any algorithm for solving a network equilibrium problem can be adapted for solving the traffic equilibrium problem in \(\widehat{G} = \left( {N,\widehat{A}} \right)\) with tolls as additional link cost. In particular, the method used to produce the numerical results in this paper is a multi-threaded variant of the bi-conjugate linear approximation (Mitradjieva and Lindberg 2013). The interest in using the bi-conjugate variant of the linear approximation is that it yields path and class flows that are close to uniqueness (Florian and Morosan 2014).

The solution method has been extended for multiple traffic classes as well as for multiple toll facilities, each of them with different cap values. Some computational results are reported in the next sections. Finally, the equivalence of the original model and the transformed model is considered next.

Proposition 2

The transformation of the equilibrium flows from \(\widehat{G} = \left( {N,\widehat{A}} \right)\) to G = (N, A) using Step 4 of the algorithm induces equilibrium flows in G.

Proof

First note that, for every path in G, there exists a path in \(\widehat{G}\) which contains the same links. By recovering the flows in D and adding them to the uncapped flows in G using (11), one maintains the same equilibrium link flows and hence path costs. All paths in G have the same costs as those in \(\widehat{G}\), hence the equilibrium flows have been properly accounted for in G. □

5 A small numerical example

The influence of the cap value on the link-based tolls is illustrated on the small network shown in Fig. 3, which has only one origin–destination pair (1–2) with a demand of 4,800. The links marked in green (21→22→23→24→25→26) are subject to link-based tolls, which are all set to the same value, 4$ per link which sums up to 20$ for the whole trip on the tolled road. Simple BPR volume-delay functions are assigned to all the links in such a way that, at free flow traffic, a non-tolled trip would cost 22$ and a tolled trip along the green arcs would cost 5$ + 20$ = 25$.

Fig. 3
figure 3

Simple network with tolled links in green

The proposed method has been applied on five different toll scenarios, which share the same network. In the first scenario, there was no cap applied to the tolls (see Fig. 4). In blue is shown the non-tolled flow whereas in red is shown the tolled flow. The cost of link 13→14 has been set in such a way that the drivers are encouraged to use a link of the tolled road (23→24) at a toll cost of 4$.

Fig. 4
figure 4

No cap applied to the toll

In the next four scenarios different cap value was applied to the tolls: 18$, 15$, and 14$. The change in the flow distribution can be seen in Figs. 5, 6 and 7. At a cap of 14$ or less, all the flow is diverted to the tolled road (Fig. 6).

Fig. 5
figure 5

Flow distribution at a toll cap of 18$

Fig. 6
figure 6

Flow distribution at a toll cap of 15$

Fig. 7
figure 7

Flow distribution at a toll cap of 14$

6 Capped link-based toll study on Sydney M2 highway

The method was applied in the evaluation of different toll cap values over the flow pattern for the eastbound M2 toll highway in Sydney, Australia, which is shownFootnote 1 in blue in Fig. 8.

Fig. 8
figure 8

The M2 toll highway is shown in blue on the map

The main characteristics of the network model in this study were land area 4,700 km2, population 4.7 million, employment 2.3 million, zones 2,123, nodes 14,900, links 41,350. Due to the confidential nature of the analysis and the results, we are using a similar data set to that used in the actual application but modified appropriately.

This application uses 30 classes of traffic that correspond to different values of time for the private car and truck modes. These 30 classes were derived from continuous value of time distributions, which are shown in Fig. 9.

Fig. 9
figure 9

Lognormal distributions of the value of time by user class (LCV/HCV—light/heavy commercial vehicles)

In this particular case, the toll value on each link is direct proportional to the length of the tolled link. The computational results reported here use 10 different cap values, varying from 0$ to 60$ (0–1,000 % from the prevailing 6$ toll cap, respectively). The ten corresponding equilibrium assignments were executed using a relative gap of ~10−4 as a stopping criterion. The results obtained are shown for several links of the M2 highway. The monotonically decreasing volumes on four links, picked at random, are shown in Fig. 10.

Fig. 10
figure 10

The impact of cap value over link volume on the toll highway

The toll cap that was in effect at the time that these analyses were done was 6.00$. The results are easily interpreted to conclude that additional revenues may be realized by increasing the toll cap since certain classes of users with a high value of time are nearly indifferent to the value of the toll cap.

7 Conclusions

The method presented in this paper for computing link-based tolls with minimum and maximum cap values has the advantage that it can be solved by adapting any algorithm that computes user equilibrium flows. Other significant contributions in the literature that have addressed network equilibrium flows with non-additive tolls resort to far more complex algorithmic solutions or are restricted to uncapped linear-dependent distance toll. The same type of proof as the one from the end Sect. 4 can be applied in a straightforward way in order to show that the equilibrium problem formulated in Yang et al. (2004) is in fact equivalent to the original equilibrium problem with non-additive path cost for networks with entry–exit based tolls, but it has non-separable link costs as well. Last but not least, it is worth mentioning that we successfully extended the network model presented in this paper for feasibility studies of the ramp-to-ramp tolls.