1 Introduction

Context

Making a trip by means of an individual vehicle—say a private car—requires a parking space at the trip’s end or near it. Every car user that also holds a garage inside or near their houses has the opportunity to use it whenever he needs it. The rest of car users rely on public parking either on street or off street. However, as public parking is available to anybody, it may be occupied—hence unavailable—at the instant of user arrival. A parking user can adapt to the saturation of a parking lot either (i) by diverting to another lot that is still available—probably at the expense of more walking, driving or higher tariffs, (ii) by scheduling the time of his trip in order to park his car before the lot gets saturated—at the expense of schedule delay at his destination, or (iii) by some trade-off between diversion in space and trip scheduling. User costs resulting from parking congestion impede car trips making the management of parking supply an important lever in urban transportation policies.

Problem statement

The filling up of parking capacity (indeed a storage capacity) is a physical phenomenon, as is the diversion from one parking lot to another. In an urban area on a typical working day, parking demand has a temporal profile that can be taken as an exogenous physical condition. Under these physical conditions, is there a state equation to describe the joint evolution of parking supply and demand? Such an equation would be a partial differential equation since the phenomenon extends in both time and space. It could be used to simulate the traffic effects of parking plans and to aid decision-making in urban mobility planning.

Literature review

There are two related scientific streams that deal with the interplay of parking supply and demand: network simulation models vs. theoretical economic models.

A network simulation model involves both a supply representation in terms of lots that are situated, capacitated and priced, and a demand representation in terms of a population of users with individual behavior for the selection of a parking lot and maybe also of a parking time if the setting is dynamic. In such a model, the “physical behavior” of the lots and the economic behaviors of the users are put together on a one-to-many basis, i.e. each constituent interplays with other ones but there is no local state equation.

Previous work in this stream includes macroscopic traffic models of route choice and parking lot choice under user equilibrium. Huang et al [9] and Li et al [12] modelled a multimodal network with capacity constraints on both road segments and parking facilities under user equilibrium: the system state is characterized by a set of equations, one by system constituent (or by relation between a choice option and a user). Related but time-extended formulations have been developed later on to model system dynamics by Lam et al [10], Li et al [13] and Li et al [14].

A quasi-dynamic model by Gallo et al [7] addresses parking choice and cruising by distinguishing three trip phases of, first, main car path, second, cruising part and, third, pedestrian access; each phase is dealt with in a dedicated network layer. Parking search loops have been modelled in a static, traffic equilibrium of route choice and parking choice by Leurent and Boujnah [11]: lot diversion is dealt with explicitly and each lot has a status either saturated or available, yet with no timing of the saturation events.

Microscopic, multi-agent traffic models have also been developed to study the search of a parking space in an area where some lots are saturated: the Parkagent model of Benenson et al [5] and Martens et al [15], the Sustapark model of Dieussaert et al [6] and the Matsim-based parking model of Horni et al [8] and Waraich and Axhausen [19]. All of these involve a two stage process of individual behaviour, first for main access to search starting point then for effective search; each stage has its own set of specific rules. But the agent paradigm belongs to the one-to-many kind of interplay between supply and demand and provides no insight into a local state equation.

The other scientific stream pertains to the economic theory of parking. Models simplified in space and time have been elaborated to capture the interplay of supply and demand. Anderson and De Palma [1] modeled a corridor giving access to a city centre with parking capacity uniformly distributed along it and that is filled up progressively, starting from the centre: all of the users are destined to the centre only and park at the closest available position, yielding a state equation that is both simple and restricted to this particular situation. Arnott and Inci [4] put forward a pseudo-dynamic model of parking choice, more precisely of delay time to get a space under saturated lots and in stationary regime: their conditions are homogenous in space as in time and their state equation does not address diversion in space nor dynamic changes. Qian et al. [17]) studied a traffic bottleneck giving access to two parking lots more or less close to one downtown destination, during the morning peak; his state equation pertains to the bottleneck rather than to the parking lots and their filling up. This dynamic user equilibrium is further linked to the parking market determining parking fees, locations and capacities. Effects of public regulation on reaching the System Optimal (SO) are the main concern of this paper.

In a spatial configuration of a uniformly and continuously distributed parking supply along an access route between a residential origin and the CBD as a single destination, Zhang et al [20] extend the model developed by Arnott et al [2], dealing with the effects of parking fees and road tolling policies on the morning peak, to study coupled dynamics of morning and evening commutes linked through the parking location choice. Bottleneck dynamics rather than parking saturation is, again, of main concern.

Qian et al [18] study, in a quasi-static framework, discrete parking lots treated as links between origin and destination nodes with exogenous time-dependent demand. Time-varying parking fee, constant during each discrete time period, and parking search time related to lot saturation, stem the generalized cost of parking at a given lot, driving temporal distribution of demand among available lots in a context of perfect information.

Literature review of the two main scientific streams which the present work refers to allows us to position the present work in the following manner.

Network simulation models, although allowing for an explicit treatment of a detailed spatial configuration of parking supply as well as cruising for parking, do not lead to local state equations, requiring a one-to-many treatment of supply/demand interaction. Parking model presented in this paper elicits a key state variable: instant of parking lot saturation, linking supply and demand. This enables to reduce the one-to-many complexity to the search of a finite vector, governing supply and demand interaction.

Parking models in the economic theory of parking stream are mainly analytical models of the supply and demand interaction, described through state equations. These models allow for the study of parking policies and their socio-economic impacts. This analytical treatment is permitted by a spatial simplification of the parking supply. The model presented in the present paper, seeks to increase the spatial resolution of the parking supply and the disaggregation both spatial and temporal of the parking demand, but still preserving a reasonable level of complexity allowing for the treatment of strategic decisions, such as parking policies, at the local level.

Paper objective

This paper brings about a model of parking supply and demand. Parking supply is broken down into local lots situated along an axis, each one with given capacity and tariff. Regarding parking demand, it is made up of a population of users disaggregated by destination place along the spatial axis and by preferred time of arrival, according to a continuous joint statistical distribution. Every user behaves as a selfish individual decision-maker to select a parking lot and a parking time, on the basis of a disutility function with respect to walking distance, in-vehicle distance, schedule delay and parking price. A single disutility function is taken for all users. The model further assumes perfect knowledge and therefore no cruising on behalf on the users.

This setting has medium complexity compared to the simplistic description in an economic model and the realistic one in a network simulation model. It enables us to derive the salient features of the parking lots subjected to the users’ arrivals, in the analytical form of wave propagation in the space-time plane. The waves delineate the frontiers between the respective attractive basins of the lots – in other words, their market areas. Thus our model blends up the kinematic theory of traffic waves à la Lighthill-Whitham-Roberts, together with the economic theory of market areas à la Alfred Weber (cf. [16]).

Method and outcome

Key to our analysis are the lot saturation times, since each user must adapt his parking time to the period of availability. Assuming a peak parking period where no user leaves the parking lots, parking capacity is only filled up and does not become available again during the period under study. Based on the vector of lot saturation times, we derive the efficiency regions (i.e. the market areas) of the lots in a bi-dimensional plane of destination position and preferred time of arrival – which is an intentional time, distinct from the physical time of parking. Knowing the efficiency regions, it is then easy to derive the user flows directed to each lot and to determine the saturation times. These make up the crucial variables in the interplay of supply and demand.

It is shown that the problem of deterministic, dynamic user equilibrium of parking traffic amounts to a fixed point problem with respect to the lot saturation times. Although the associated function lacks continuity at some points, it is demonstrated that an equilibrium must exist provided that the parking capacity suffices to accommodate the demand volumes. An event-based algorithm is provided to determine the efficiency regions at a reduced computational cost. Several computation schemes are put forward to solve the fixed point problem and to get an equilibrium state.

Paper outline

The rest of the paper is organized in seven parts. After introducing the body of assumptions (Section 2), we address the uncongested case to reveal the interval structure of the efficiency domains of the lots under stationary conditions (Section 3). We then turn to dynamic analysis in two stages, by dealing first with a single parking lot that provides timed options to a given user depending on his target endpoint and preferred instant of arrival (Section 4), second with the temporal structure of the efficiency regions of the lots (Section 5). Following that, parking equilibrium is stated and cast into a fixed-point problem with respect to the saturation times of the parking lots; the existence of an equilibrium is demonstrated and computation schemes are put forward (Section 6). After dealing with an instance (Section 7), we conclude and point to a range of issues for further research (Section 8). The Appendix provides the algorithms to determine the set of efficiency regions, together with some mathematical details.

 = [t min, t max]:

Period under study, encompassing all arrivals at destination such that no parking occurs outside this period

α/ β :

Marginal value of a unit car time / Marginal value of a unit walk time

γ/ γ + :

Marginal value of a unit time of earliness/lateness

D :

Schedule cost

E ij / E i / E I :

Domain in the \( \left(\tilde{x},\tilde{t}\right) \) plane where lot i dominates lot j / Efficiency domain of the option i where it dominates all other options / Set of efficiency domains for the lots i ∈ I

G s (i, t):

Generalized cost of the parking option (i, t) to a user in the segment \( s=\left(\tilde{x},\tilde{t}\right) \)

\( {g}_i\left(\tilde{x},\tilde{t}\right) \) :

Optimal cost of parking at the lot i to a user in the segment \( s=\left(\tilde{x},\tilde{t}\right) \) at the optimal parking time \( {t}_i^{\ast}\left(\tilde{x},\tilde{t}\right) \)

\( H\left(\tilde{x},\tilde{t}\right) \)/ \( h\left(\tilde{x},\tilde{t}\right) \) :

Joint cumulative distribution function of \( \tilde{x} \) and \( \tilde{t} \) in the population of users / Joint probability density function associated to \( H\left(\tilde{x},\tilde{t}\right) \)

I :

Set of parking lots numbered i ∈ I

k i / m i :

Capacity of the parking lot i / Tariff of the parking lot i

L :

Street length

Q :

Total number of users

\( \tilde{q}\left(\tilde{t}\right) \)/ \( {\tilde{q}}_i\left(\tilde{t}\right) \) :

Flow rate of users at preferred arrival time \( \tilde{t} \)/ Flow rate of users at preferred arrival time \( \tilde{t} \) parking at the lot i

q i (t)/ Q i (t):

Flow rate of users arriving at the lot i at time t / Cumulated flow of arrivals in the lot i up to time t

s :

Demand segment given by \( s=\left(\tilde{x},\tilde{t}\right) \)

t/ \( {t}_i^{\ast}\left(\tilde{x},\tilde{t}\right) \) :

Parking time / optimal parking time at the lot i for a user in the segment \( s=\left(\tilde{x},\tilde{t}\right) \)

\( {\overline{t}}_i \) / \( {\overline{\mathbf{t}}}_I \) :

Lot i saturation time, when cumulated parking flow reaches lot capacity / Vector of lot saturation times

\( \tilde{t} \) / t ':

Preferred time of arrival / Effective instant of arrival at destination endpoint

\( {t}_i^{\#}\left(\tilde{x}\right) \) :

Instant on the \( \tilde{t} \) axis when the saturation wave will reach \( \tilde{x} \). Equivalently arrival time at destination when parking in a saturated parking lot

v / w :

Average car speed / Average walking speed

V i / W i :

Cost of in-vehicle parking access / Cost of pedestrian access from parking lot to destination endpoint

x / x i :

Curvilinear abscissa on the street / Position of the parking lot i on the street

\( \tilde{x} \) :

Destination location

\( {\widehat{x}}_{ij}\left(\tilde{t}\right) \)/ \( {\widehat{x}}_{ij}^0 \) :

Boundary function between domains where i/j dominates j/i / Initial constant boundary in the unsaturated configuration

\( {x}_i^{-}\left(\tilde{t}\right) \)/ \( {x}_i^{+}\left(\tilde{t}\right) \) :

Lower/upper boundary of the efficiency domain E i of the lot i, function of \( \tilde{t} \)

2 Model assumptions

The model assumptions pertain to either the parking supply or the parking demand. The spatial dimension is described by a curvilinear abscissa along the street, denoted x, which ranges from minimum value 0 to maximum value L. As for the temporal dimension, the continuous distribution of instants, denoted t, is considered during a period under study,  = [t min, t max] encompassing the period of preferred arrival at destination such that no parking occurs outside this period.

2.1 Supply side

On the supply side, we consider on-street or off-street parking spaces that are accessible from the street to every user. Parking spaces with similar position and same tariff conditions are grouped into a parking lot, say i, of which the main characteristics are its position x i , capacity k i and tariff, m i .

Thus, by grouping on-street lots similar in position and sharing the same tariff and management conditions into a higher-capacity lot, positioned at the mean location along the street, on-street supply can be described. The criterion for grouping lots according to their position should be based on the walking cost. On-street parking supply on very long streets should therefore be discretized into shorter sections of a few minutes of walking time.

The description of an off-street parking lot is also simplified since its internal geometry and access conditions from the street are neglected. So are the cost of search for an available space inside the lot and the pedestrian access from lot to street: however some related user cost can be included in the lot tariff, which is taken independent from the duration of parking. This additional search cost could be made dynamic, depending on the information provided, parking saturation level and spatial arrangement of the parking lot.

The parking capacity is the residual capacity that stems from the total capacity minus the number of spaces occupied at the beginning of the period and not vacated during it.

Due to the users’ arrivals during the period under study, the parking lot will progressively fill up until its capacity is reached at some time, denoted \( {\overline{t}}_i \) and called its saturation time. A default setting of t max is associated to a lot that does not get saturated. Thus, parking in lot i occurs at the latest at time t max.

On the one hand, higher capacity lots, rather than individualized parking spaces, are made compatible with the macroscopic description of the parking flows, discussed below. On the other hand, discretizing parking supply into a finite number of lots is necessary to reduce the complexity of the supply/demand interaction, through state variables—instants of saturation. Both of these conditions are core to the present model allowing a detailed spatial description of the parking supply and statistic spatio-temporal description of parking demand, while preserving analytical tractability of the problem.

2.2 Demand side

On the demand side, the parking users are disaggregated according to destination point, denoted \( \tilde{x}\in \left[0,L\right] \), and preferred instant of arrival, denoted \( \tilde{t}\in \aleph \). Both \( \tilde{x} \) and \( \tilde{t} \) are continuous variables. Their joint cumulative distribution function in the population of users is denoted \( H\left(\tilde{x},\tilde{t}\right) \) with joint probability density function \( h\left(\tilde{x},\tilde{t}\right) \). The total number of users is Q. From these assumptions stems the flow rate of users by preferred arrival time, \( \tilde{q}\left(\tilde{t}\right)=Q{\displaystyle {\int}_{\;\tilde{x}}h\left(\tilde{x},\tilde{t}\right)d\tilde{x}} \), and the marginal probability density conditional on \( \tilde{t} \),

\( \tilde{h}\left(\tilde{x}\left|\;\tilde{t}\right.\right)=h\left(\tilde{x},\tilde{t}\right)/{\displaystyle {\int}_{\;x}h\left(x,\tilde{t}\right)dx} \).

Apart from the endpoint and preferred instant of arrival, a single travel behavior is hypothesized for all users. Each user chooses an (i, t) pair of parking lot i and parking time t at that lot. He is assumed to have perfect information about the lot positions, tariffs and saturation times—arguably from past experience and reiterated situations. The hypothesis of perfect information involves no stress on the part of the user, therefore searching time is not penalized higher than travel in-vehicle time. Cruising for parking is not modelled in the present approach concentrating on the street level. A further statistical treatment of dynamic parking conditions on the street level would allow for the introduction of cruising for parking at the network level taking into account spatial and temporal diversion incurred by progressive parking saturation (building on static approaches developed in Leurent and Boujnah [11]). Imperfect information would result in a stochastic equilibrium. This approach is left for further research.

Denote by \( s=\left(\tilde{x},\tilde{t}\right) \) the particular demand segment of a user. To a user in segment s, a parking option (i, t) involves three travel phases as follows: first, car access from street entry point to lot position, x i ; second, pedestrian access from lot position to destination endpoint, \( \tilde{x} \); furthermore, to avoid saturation the user may adapt his instant of parking hence his instant of arrival, by re-scheduling his trip thus incurring some inconveniency.

Each travel phase induces a disutility, or generalized cost, to the user. First, the cost of parking access is a function V i that depends only on the lot position and tariff, both in an increasing way. Let us assume here that entry point is located at x = 0. For simplicity, let

$$ {V}_i={m}_i+\frac{\alpha .{x}_i}{v} $$
(2.1)

With v an average car speed, α the marginal value of a unit car time and m i the parking tariff.

Second, the cost of pedestrian access is a function \( {W}_i\left(\tilde{x}\right) \) that depends on the distance between the respective positions of parking lot and trip endpoint. For simplicity, let

$$ {W}_i\left(\tilde{x}\right)=\beta \frac{\left|\tilde{x}-{x}_i\right|}{w} $$
(2.2)

With w an average walk speed and β the marginal value of a unit walk time.

Third, the schedule cost is a function \( D\left({t}^{\prime },\tilde{t}\right) \) in which t′ is the effective instant of arrival at the destination endpoint. Denoting by t the instant of user parking at lot i, it holds that

$$ {t}^{\prime }=t+\frac{\left|\tilde{x}-{x}_i\right|}{w} $$
(2.3)

The schedule cost diminishes with t′ up to \( \tilde{t} \) and then it increases. For simplicity, a piecewise linear affine function is assumed:

$$ D\left({t}^{\prime },\tilde{t}\right)=\gamma {\left(\tilde{t}-{t}^{\prime}\right)}^{+}+{\gamma}^{+}{\left({t}^{\prime }-\tilde{t}\right)}^{+} $$
(2.4)

Wherein (x)+ = max{x, 0} and γ (resp. γ +) is the marginal value of a unit time of earliness (resp. lateness).

To sum up, the cost of parking option (i, t) to a user in segment \( s=\left(\tilde{x},\tilde{t}\right) \) amounts to

$$ {G}_s\left(i,t\right)={V}_i+{W}_i\left(\tilde{x}\right)+D\left(t+{\scriptscriptstyle \frac{\left|\tilde{x}-{x}_i\right|}{w}},\tilde{t}\right) $$
(2.5)

The disaggregation of demand into several segments with different socio-economic parameters α, β, γ/γ + and physical parameters v, w is discussed at the end of the section 5 (§5.4).

3 Supply and demand interaction in the uncongested case

Let us derive the consequences of the modeling assumptions in the uncongested case when no parking lot reaches its capacity during the studied period.

To a user in segment \( s=\left(\tilde{x},\tilde{t}\right) \), option i is available at reduced cost with no schedule delay on selecting a parking time t which matches the preferred time of destination arrival, \( \tilde{t} \):

$$ t=\tilde{t}-\left|\tilde{x}-{x}_i\right|/w $$
(3.1)

Thus, the schedule cost vanishes and the optimal cost is a function of \( \left(\tilde{x},\tilde{t}\right) \), that depends on \( \tilde{x} \) only:

$$ {g}_i\left(\tilde{x},\tilde{t}\right)={V}_i+{W}_i\left(\tilde{x}\right),\forall \tilde{t} $$
(3.2)

Then, the problem of selecting the best parking option merely amounts to solve:

$$ \min \kern0.5em \left\{{g}_i\left(\tilde{x},\tilde{t}\right):i\in I\right\} $$
(3.3)

This problem is easy to solve at each position \( \tilde{x} \) along the spatial axis. Furthermore, there is a collective pattern of cost minimization due to the shape of the reduced cost functions. Function g i is a V-shaped, piecewise affine function with minimum value V i at point x i . Between two options i < j to denote x i  < x j , as the half lines of their cost functions are parallel (by side), they do not intersect so either the two function graphs do not intersect (as illustrated in Fig. 1a) or there is only one intersection point (as shown in Fig. 1b). The condition for no intersection is that

Fig. 1
figure 1

Cost of two parking options w.r.t. destination location. a. No intersection: option i dominates option j everywhere. b. One intersection at \( {\widehat{x}}_{ij} \) separates the respective efficiency intervals

$$ {g}_i\left({x}_j,\tilde{t}\right)<{V}_j,\forall \kern0.18em \tilde{t},\kern0.28em \mathrm{i}.\mathrm{e}.\kern0.28em i\kern0.28em \mathrm{dominates}\kern0.28em j\kern0.28em \mathrm{everywhere} $$
(3.4a)

Or

$$ {g}_j\left({x}_i,\tilde{t}\right)<{V}_i,\forall \tilde{t},\;\mathrm{i}.\mathrm{e}.\;j\;\mathrm{dominates}\;i\;\mathrm{everywhere} $$
(3.4b)

If \( {g}_i\left({x}_j,\tilde{t}\right)\ge {V}_j \) and \( {g}_j\left({x}_i,\tilde{t}\right)\ge {V}_i \) then there is a unique intersection point, denoted \( {\widehat{x}}_{ij}^0 \), such that

$$ {g}_i\left({\widehat{x}}_{ij}^0,\tilde{t}\right)={g}_j\left({\widehat{x}}_{ij}^0,\tilde{t}\right),\forall \tilde{t} $$
(3.5)

From the V-shapes and the parallel half lines this point must be located in the region where g i increases and g j decreases, i.e. in [x i , x j ]. So (3.5) is equivalent to

$$ \begin{array}{l}{m}_i+{\scriptscriptstyle \frac{\alpha }{v}}{x}_i+{\scriptscriptstyle \frac{\beta }{w}}\left(\widehat{x}-{x}_i\right)={m}_j+{\scriptscriptstyle \frac{\alpha }{v}}{x}_j-{\scriptscriptstyle \frac{\beta }{w}}\left(\widehat{x}-{x}_j\right),\kern0.28em \mathrm{yielding}\\ {}{\widehat{x}}_{ij}^0={\scriptscriptstyle \frac{1}{2}}\left({x}_i+{x}_j\right)+{\scriptscriptstyle \frac{w}{2\beta }}\left[{m}_j-{m}_i+{\scriptscriptstyle \frac{\alpha }{v}}\left({x}_j-{x}_i\right)\right]\end{array} $$
(3.6)

Notation ^ indicates the frontier status and “0” stands for the absence of congestion.

Denote by E ij the domain of \( \tilde{x} \) where i dominates j, i.e. \( {g}_i\left(\tilde{x},\tilde{t}\right)\le {g}_j\left(\tilde{x},\tilde{t}\right) \). In the absence of intersection, either E ij  = [0, L] and E ji  = ∅, or the converse, whereas if there is an intersection then \( {E}_{ij}=\left[0,{\widehat{x}}_{ij}^0\right] \) and \( {E}_{ji}=\left[{\widehat{x}}_{ij}^0,L\right] \). Whatever the case, E ij is an interval for all \( \tilde{t} \).

When all parking lots are considered, for all \( \tilde{t} \), the efficiency domain of lot i on \( \tilde{x} \) is defined as

$$ \begin{array}{l}{E}_i=\left\{\tilde{x}\in \left[0,L\right]:\;{g}_i\left(\tilde{x},\tilde{t}\right)\le {g}_j\left(\tilde{x},\tilde{t}\right)\forall j\in I\right\}\\ {}\mathrm{Thus}\kern0.24em {E}_i={\displaystyle {\cap}_{j\in I-i}{E}_{ij}}\end{array} $$
(3.7)

Then being an intersection of intervals, E i is an interval. Thus the collection of parking choice problems parameterized by \( \tilde{x} \) amounts to a sequence of efficiency intervals: the sequence is ordered by the lot positions since a larger position induces an efficiency interval with larger values. Let us denote x i  = min E i and x + i  = max E i , with respective default values of L and 0, respectively, if E i is empty.

The usage pattern of the parking lot i is as follows: at instant t it receives the users in E i with preferred endpoint arrival at \( \tilde{t}=t+\left|\tilde{x}-{x}_i\right|/w \). Formally, their flow rate is

$$ {q}_i(t)=Q{\displaystyle {\int}_{\kern0.28em \left[{x}_i^{-},{x}_i^{+}\right]}h\left(\overset{\sim }{x},t+{\scriptscriptstyle \frac{1}{w}}\left|\overset{\sim }{x}-{x}_i\right|\right)\kern0.28em d\overset{\sim }{x}} $$
(3.8)

From this stems the cumulative flow of arrival in lot i up to t,

$$ {Q}_i(t)={\displaystyle {\int}_{\;u\le t}{q}_i(u)\;du}=Q{\displaystyle {\int}_{\;\left[{x}_i^{-},{x}_i^{+}\right]}{H}_{\tilde{x}}\left(t+{\scriptscriptstyle \frac{1}{w}}\left|\tilde{x}-{x}_i\right|\right)\;d\tilde{x}} $$
(3.9)

Wherein \( {H}_{\tilde{x}}(t)={\displaystyle {\int}_{\;u\le t}h\left(\tilde{x},u\right)\;du} \).

Property 1: In absence of parking congestion, the demand domain is divided into market areas of each parking option, separated exclusively by spatial limits based on relative positions of parking lots and tariffs.

In the Appendix, an algorithm Uncongested Efficiency Frontier is provided to determine the efficiency domains in the uncongested case.

If there are no tariffs i.e. m i  = 0, and if the parameters check that \( {\scriptscriptstyle \frac{\alpha }{v}}\le {\scriptscriptstyle \frac{\beta }{w}} \), then it holds that

$$ \forall i<j,\;{g}_i\left({x}_j,\tilde{t}\right)>{g}_j\left({x}_j,\tilde{t}\right),\forall \tilde{t} $$
(3.10a)

The reason is that \( {g}_i\left({x}_j,\tilde{t}\right)-{g}_j\left({x}_j,\tilde{t}\right)=\left({\scriptscriptstyle \frac{\beta }{w}}-{\scriptscriptstyle \frac{\alpha }{v}}\right)\left({x}_j-{x}_i\right) \), which is non negative since x i  < x j and β/w > α/v by assumption. Conversely, since \( {g}_j\left({x}_i,\tilde{t}\right)-{g}_i\left({x}_i,\tilde{t}\right)=\left({\scriptscriptstyle \frac{\beta }{w}}+{\scriptscriptstyle \frac{\alpha }{v}}\right)\left({x}_j-{x}_i\right) \),

$$ \forall j>i,\kern0.24em {g}_i\left({x}_i,\tilde{t}\right)<{g}_j\left({x}_i,\tilde{t}\right),\forall \tilde{t} $$
(3.10b)

The condition that β/w > α/v is consistent with the individual behaviors of most users because car speed v should be higher than walk speed w (which will be identified as H1), while walk time is likely to be less comfortable than car time, i.e. β > α (identified as H2). Under the two conditions of null tariffs and adequate values of the behavioral parameters, it follows that every parking lot is efficient around its location. This joint efficiency of all parking options holds if the structure of tariffs does not “distort” too much the preference structure of the parking lots based on their location (which will be identified as H3) (i.e. if the tariff of an option is too high compared to its neighbors, this option will become preferable only when other options are saturated). Then, it is not necessary to apply the algorithm Uncongested Efficiency Frontier.

4 A parking lot as a timed option for car users

Having solved the stationary problem with uncongested lots, let us now address the dynamic setting, at first for a single parking lot i with saturation time \( {\overline{t}}_i<{t}_{\max } \).

A user of segment \( s=\left(\tilde{x},\tilde{t}\right) \) minimizes his cost of parking at i by matching his instant of parking, t, to \( \tilde{t} \) in the following way (recall eqn. (3.1)): \( t=\tilde{t}-\left|\tilde{x}-{x}_i\right|/w \).

This is possible only if \( t\le {\overline{t}}_i \) hence if \( \tilde{t}\le {t}_i^{\#}\left(\tilde{x}\right)\equiv {\overline{t}}_i+\left|\tilde{x}-{x}_i\right|/w \).

Of course the shorthand \( {t}_i^{\#}\left(\tilde{x}\right) \), which defines the saturation wave in the demand space, is conditional on \( {\overline{t}}_i \). If \( \tilde{t}\ge {t}_i^{\#}\left(\tilde{x}\right) \) then the parking times that would match \( \tilde{t} \) are not available to the user. After parking at t the user arrives at his destination at \( {t}^{\prime }=t+\left|\tilde{x}-{x}_i\right|/w \), which is less than \( \tilde{t} \), meaning an early arrival, hence a schedule delay \( D\left({t}^{\prime },\tilde{t}\right) \) which is minimized by minimizing \( \left|{t}^{\prime }-\tilde{t}\right| \), yielding \( {t}^{\prime }={t}_i^{\#}\left(\tilde{x}\right) \) or equivalently \( t={\overline{t}}_i \). Late arrival could only occur after some parking capacity becomes available anew.

Property 2: To a user in segment \( s=\left(\tilde{x},\tilde{t}\right) \), the optimum instant of parking at i is either \( {t}_i^{\ast}\left(\tilde{x},\tilde{t}\right)=\tilde{t}-\left|\tilde{x}-{x}_i\right|/w \) if \( \tilde{t}\le {t}_i^{\#}\left(\tilde{x}\right) \) or \( {t}_i^{\ast}\left(\tilde{x},\tilde{t}\right)={\overline{t}}_i \) if \( \tilde{t}\ge {t}_i^{\#}\left(\tilde{x}\right) \). So, in general,

$$ {t}_i^{\ast}\left(\tilde{x},\tilde{t}\right)= \min\;\left\{\kern0.5em {\overline{t}}_i,\kern0.5em \tilde{t}-{\scriptscriptstyle \frac{1}{w}}\left|\tilde{x}-{x}_i\right|\right\} $$
(4.1)

This optimal parking time gives rise to the optimal cost of parking at i to the user,

$$ {g}_i\left(\tilde{x},\tilde{t}\right)={V}_i+{W}_i\left(\tilde{x}\right)+D\left({t}_i^{\ast}\left(\tilde{x},\tilde{t}\right)+{\scriptscriptstyle \frac{1}{w}}\left|\tilde{x}-{x}_i\right|,\;\tilde{t}\right) $$
(4.2)

Given \( \tilde{t}>{\overline{t}}_i \), on the spatial interval \( \tilde{x}\in {x}_i\pm w\left(\tilde{t}-{\overline{t}}_i\right) \), the user in segment \( s=\left(\tilde{x},\tilde{t}\right) \) must arrive early at his destination and he incurs a schedule cost \( D\left({\overline{t}}_i+{\scriptscriptstyle \frac{1}{w}}\left|\tilde{x}-{x}_i\right|,\;\tilde{t}\right) \) which decreases when \( {\overline{t}}_i+{\scriptscriptstyle \frac{1}{w}}\left|\tilde{x}-{x}_i\right| \) increases hence when \( \left|\tilde{x}-{x}_i\right| \) increases. It is highest at \( \tilde{x}={x}_i \). So its variations are opposite to those of \( {W}_i\left(\tilde{x}\right) \), which stems from the walk distance between the parking lot and the trip endpoint (time needed to walk from the parking lot to the destination partly reduces earliness). The overall effect of \( \tilde{x} \) on g i depends on the respective coefficients in W i and D in the detailed formula:

$$ {g}_i\left(\tilde{x},\tilde{t}\right)={m}_i+{\scriptscriptstyle \frac{\alpha }{v}}{x}_i+{\scriptscriptstyle \frac{\beta }{w}}\left|\tilde{x}-{x}_i\right|+\gamma {\left(\tilde{t}-{\overline{t}}_i-{\scriptscriptstyle \frac{1}{w}}\left|\tilde{x}-{x}_i\right|\right)}^{+} $$
(4.3)

If β ≥ γ then W i prevails upon D and g i is V-shaped as in the uncongested case, yet with reduced slope around its minimal point (Fig. 2). But if γ > β then g i is W-shaped with two minimum points and a local maximum at x i between them. In the rest of the paper we shall keep to the assumption (identified as H4) that β ≥ γ which not only makes things easier but also and above all is more behavioral since a unit walking time is less useful—hence more costly – to the user than a unit time at the destination where he can undertake a short complementary activity.

Fig. 2
figure 2

Generalized cost in the congested case for three values of preferred arrival time: when \( \tilde{t}>{\overline{t}}_i \), the slope is modified around x i

5 The temporal structure of efficiency domains

We are now ready to address the general case with several parking lots and eventual saturation. In this section, the main working assumption is to take the lot saturation times as exogenous parameters in order to derive from them the structure of the lots’ efficiency domains with respect to time: a bi-dimensional efficiency domain along time \( \tilde{t} \) as well as space by location \( \tilde{x} \) will be called an efficiency region.

We shall first study the bilateral competition between two lots (§ 5.1) and then the multilateral competition between all lots (§ 5.2). Next, the traffic consequences are established by deriving the lot instantaneous and cumulative flows (§ 5.3). Lastly, we will present the treatment of multiple classes of demand (§ 5.4). In the appendix, an event-based algorithm is provided to compute the efficiency regions in an efficient way.

5.1 Bilateral competition

Bilateral competition between two lots is analyzed according to parameter \( \tilde{t} \) and proceeds in 3 stages: first, departing at an initial \( \tilde{t} \) while both lots are unsaturated, then, while \( \tilde{t} \) increases it reaches the saturation wave of one lot which gets saturated while the other one remains unsaturated, then when the second lot reaches saturation two alternative outcomes are discussed. So the parametric analysis is conditioned by the saturation times of the two lots, which thus constitute fundamental parameters.

5.1.1 Initial uncongested configuration

Take two lots i and j in I such that x i  < x j , which can be denoted also as i < j. Assume that each lot has a non-empty efficiency domain at the initial instant \( \tilde{t}={t}_{\min } \) -a preferred time of arrival. As described in section 3, from their respective positions, lot i has an initial domain \( \left[0,{\widehat{x}}_{ij}^0\right] \) and that of lot j is \( \left[{\widehat{x}}_{ij}^0,\;L\right] \). Each domain is a specific side, left or right, with respect to the pivot value \( {\widehat{x}}_{ij}^0 \) where the lot costs are equal. Point \( {\widehat{x}}_{ij}^0 \) must lay between the two lots to ensure the joint efficiency; so the cost function g j decreases with \( \tilde{x} \) on \( \left[0,{\widehat{x}}_{ij}^0\right] \) whereas function g i increases with \( \tilde{x} \) on \( \left[{\widehat{x}}_{ij}^0,\;L\right] \) (as illustrated in Fig. 3). As \( \tilde{t} \) increases, under the behavioral condition that β ≥ γ (H4), the respective efficiency domains are maintained since, as described in section 3, the cost structure is independent of \( \tilde{t} \) until schedule delay is introduced due to saturation.

Fig. 3
figure 3

Bilateral competition between saturated lot i and unsaturated lot j: as preferred arrival time increases, \( {\widehat{x}}_{ij}\left(\tilde{t}\right) \) moves towards the saturated option, reducing its efficiency domain

5.1.2 Unilateral saturation of a lot

Efficiency domains start evolving when \( {\widehat{x}}_{ij}^0 \) is reached by a saturation wave from one lot (introduced in section 4), at instant \( {t}_i^{\#}\left({\widehat{x}}_{ij}^0\right) \). For users in the saturation area, parking time in the saturated lot is constrained by the saturation time \( {\overline{t}}_i \) which leads to an additional delay cost making the unsaturated lot more attractive. Some users will then switch from the saturated lot to the unsaturated lot to avoid the delay cost, moving the \( {\widehat{x}}_{ij} \) frontier as to extend the efficiency domain of unsaturated lot (see the \( {\widehat{x}}_{ij}\left(\tilde{t}\right) \) curve in Fig. 3 where lot i is saturated first). This holds because, until the saturation wave reaches \( {\widehat{x}}_{ij}^0 \), any congested point of option say i has position \( \tilde{x}\le {\widehat{x}}_{ij}^0 \) and an option cost less than that at \( {\widehat{x}}_{ij}^0 \). From the latter fact, it stems that

\( {g}_i\left(\tilde{x},\tilde{t}\right)\le {g}_i\left({\widehat{x}}_{ij}^0,\tilde{t}\right)={g}_j\left({\widehat{x}}_{ij}^0,\tilde{t}\right) \),

whereas the condition that \( \tilde{x}\le {\widehat{x}}_{ij}^0 \) implies that

$$ {g}_j\left(\tilde{x},\tilde{t}\right)\ge {g}_j\left({\widehat{x}}_{ij}^0,\tilde{t}\right) $$

On combining, it follows that

$$ {g}_i\left(\tilde{x},\tilde{t}\right)\le {g}_j\left(\tilde{x},\tilde{t}\right) $$

Let us then consider the first instant when lot saturation reaches \( {\widehat{x}}_{ij}^0 \):

$$ {\mathrm{t}}_{ij}^{\ast }= \min\;\left\{\kern0.5em {t}_i^{\#}\left({\widehat{x}}_{ij}^0\right),\kern0.5em {t}_j^{\#}\left({\widehat{x}}_{ij}^0\right)\right\} $$

Assuming that t # i  < t # j (case 1) at \( {\widehat{x}}_{ij}^0 \), after t ij and at \( \tilde{x} \) around \( {\widehat{x}}_{ij}^0 \) the cost of lot i is increased yet still V-shaped whereas that of lot j is maintained along a half-line where it decreases with \( \tilde{x} \) (as shown in Fig. 3). So there is a unique intersection of the two cost functions, at \( {\widehat{x}}_{ij}\left(\tilde{t}\right)\le {\widehat{x}}_{ij}^0 \).

5.2 Bilateral frontier evolution in case of unilateral saturation

For case 1, \( {\widehat{x}}_{ij}\left(\tilde{t}\right) \) is a decreasing function of \( \tilde{t} \) (as shown in Fig. 3), it is defined by the equality of the congested cost of i and the uncongested cost of j, as follows: \( {g}_i\left(\widehat{x},\tilde{t}\right)={g}_j\left(\widehat{x},\tilde{t}\right) \) or

$$ {m}_i+{\scriptscriptstyle \frac{\alpha }{v}}{x}_i+{\scriptscriptstyle \frac{\beta }{w}}{\varepsilon}_i\left(\widehat{x}-{x}_i\right)+\gamma \left(\tilde{t}-{\overline{t}}_i-{\scriptscriptstyle \frac{\varepsilon_i}{w}}\left(\widehat{x}-{x}_i\right)\right)={m}_j+{\scriptscriptstyle \frac{\alpha }{v}}{x}_j+{\scriptscriptstyle \frac{\beta }{w}}{\varepsilon}_j\left(\widehat{x}-{x}_j\right) $$
(5.1)

Wherein ε i  = + 1 if \( \widehat{x}>{x}_i \) or -1 if \( \widehat{x}\le {x}_i \) and ε j  = + 1 if \( \widehat{x}>{x}_j \) or -1 if \( \widehat{x}\le {x}_j \).

Let us denote α′ = α/v, β′ = β/w, γ′ = γ/w and ζ k  = ζ′. ε k for ζ ∈ {α, β, γ} and k ∈ {i, j}.

In abridged form,

$$ \begin{array}{l}{m}_i+{\alpha}^{\prime }{x}_i+{\beta}_i^{\prime}\left(\widehat{x}-{x}_i\right)+\gamma \left(\tilde{t}-{\overline{t}}_i\right)-{\gamma}_i^{\prime}\left(\widehat{x}-{x}_i\right)={m}_j+{\alpha}^{\prime }{x}_j+{\beta}_j^{\prime}\left(\widehat{x}-{x}_j\right)\\ {}\mathrm{So}\kern0.28em \left({\beta}_i^{\prime }-{\beta}_j^{\prime }-{\gamma}_i^{\prime}\right)\widehat{x}={m}_j-{m}_i+{\alpha}^{\prime}\left({x}_j-{x}_i\right)+{\beta}_i^{\prime }{x}_i-{\beta}_j^{\prime }{x}_j-{\gamma}_i^{\prime }{x}_i-\gamma \left(\tilde{t}-{\overline{t}}_i\right)\end{array} $$
(5.2a)

After \( {t}_i^{\#}\left({\widehat{x}}_{ij}^0\right) \), the function \( \tilde{t}\mapsto {\widehat{x}}_{ij}\left(\tilde{t}\right) \) decreases at slope − /(2β − γ) as long as \( {\widehat{x}}_{ij}\ge {x}_i \), then at slope − w (since β i  = β j  = − β′ and γ i  = − γ/w if \( {\widehat{x}}_{ij}<{x}_i \)). The instant at which \( {\widehat{x}}_{ij}={x}_i \) is \( {t}_i^{\#}\left({\widehat{x}}_{ij}^0\right)+{\scriptscriptstyle \frac{2\beta -\gamma }{\gamma w}}\left({\widehat{x}}_{ij}^0-{x}_i\right) \).

Conversely in case 2, if t # i  ≥ t # j then the function \( {\widehat{x}}_{ij}\left(\tilde{t}\right) \) increases with \( \tilde{t} \) after \( {t}_j^{\#}\left({\widehat{x}}_{ij}^0\right) \). It is defined by interchanging the i and j indices in (5.1), which yields that \( {m}_i+{\alpha}^{\prime }{x}_i+{\beta}_i^{\prime}\left(\widehat{x}-{x}_i\right)={m}_j+{\alpha}^{\prime }{x}_j+{\beta}_j^{\prime}\left(\widehat{x}-{x}_j\right)+\gamma \left(\tilde{t}-{\overline{t}}_j\right)-{\gamma}_j^{\prime}\left(\widehat{x}-{x}_j\right) \), hence that

$$ \left({\beta}_j^{\prime }-{\beta}_i^{\prime }-{\gamma}_j^{\prime}\right)\widehat{x}={m}_i-{m}_j+{\alpha}^{\prime}\left({x}_i-{x}_j\right)+{\beta}_j^{\prime }{x}_j-{\beta}_i^{\prime }{x}_i-{\gamma}_j^{\prime }{x}_j-\gamma \left(\tilde{t}-{\overline{t}}_j\right) $$
(5.2b)

After \( {t}_j^{\#}\left({\widehat{x}}_{ij}^0\right) \), the function \( {\widehat{x}}_{ij}\left(\tilde{t}\right) \) increases with \( \tilde{t} \) at slope /(2β − γ) up to value x j at time \( {t}_j^{\#}\left({\widehat{x}}_{ij}^0\right)+\left({x}_j-{\widehat{x}}_{ij}^0\right){\scriptscriptstyle \frac{2\beta -\gamma }{\gamma w}} \), then at slope w.

5.2.1 Joint saturation of both lots

There remains the issue of the joint saturation of both lots. From previous arguments, this has an effect at time \( \tilde{t} \) only if it affects the limit point \( {\widehat{x}}_{ij}\left(\tilde{t}\right) \): in that case, the equality of the two lot costs will be maintained there at all subsequent times (leading to domain stabilization of the saturated lot) since each cost function at \( \tilde{x} \) will increase with time at slope γ. The limit time satisfies that

$$ \tilde{t}={t}_j^{\#}\left({\widehat{x}}_{ij}\left(\tilde{t}\right)\right)\; if\;{\widehat{x}}_{ij}\left(\tilde{t}\right)\;\mathrm{is}\ \mathrm{decreasing}\ \left(\mathrm{case}\ 1\right) $$
(5.3a)

Or

$$ \tilde{t}={t}_i^{\#}\left({\widehat{x}}_{ij}\left(\tilde{t}\right)\right)\; if\;{\widehat{x}}_{ij}\left(\tilde{t}\right)\;\mathrm{is}\ \mathrm{increasing}\ \left(\mathrm{case}\ 2\right) $$
(5.3b)

In the latter case, as the saturation wave from lot i has slope w, the equality can take place only at \( \widehat{x}\le {x}_j \) since beyond x j the \( \widehat{x} \) has the same slope so there can be no intersection. A similar condition applies to the former case.

By continuity, the condition for a limit time to exist is that the saturation wave of the other lot should reach the lot position before it is passed by the frontier function:

$$ {t}_j^{\#}\left({x}_i\right)\le {t}_i^{\#}\left({\widehat{x}}_{ij}^0\right)+{\scriptscriptstyle \frac{2\beta -\gamma }{\gamma w}}\left({\widehat{x}}_{ij}^0-{x}_i\right)\; if\;{\widehat{x}}_{ij}\left(\tilde{t}\right)\;\mathrm{is}\ \mathrm{decreasing}\ \left(\mathrm{case}\ 1\right) $$
(5.4a)

Or

$$ {t}_i^{\#}\left({x}_j\right)\le {t}_j^{\#}\left({\widehat{x}}_{ij}^0\right)+{\scriptscriptstyle \frac{2\beta -\gamma }{\gamma w}}\left({x}_j-{\widehat{x}}_{ij}^0\right)\; if\;{\widehat{x}}_{ij}\left(\tilde{t}\right)\;\mathrm{is}\ \mathrm{increasing}\ \left(\mathrm{case}\ 2\right) $$
(5.4b)

5.3 Two alternative outcomes: domain stabilization or domain closure

From (5.4), the event of domain stabilization can easily be predicted. If it occurs, then the efficiency region of each lot is defined by a frontier function \( \tilde{t}\mapsto {\widehat{x}}_{ij}\left(\tilde{t}\right) \) in three pieces, first a constant at \( {\widehat{x}}_{ij}^0 \), then an affine function, third another constant at \( {\widehat{x}}_{ij}^{\max } \) characterized by (5.3). This configuration is shown in Fig. 4a where the saturation wave of lot i is first to reach \( {\widehat{x}}_{ij}^0 \) (case 1). If the saturation wave of lot j was the first to reach \( {\widehat{x}}_{ij}^0 \) (case 2), the graph would be symmetrical.

Fig. 4
figure 4

The two possible configurations of efficiency domains, illustrated for case 1. a. With domain stabilization. b. Without domain stabilization leading to a definitive elimination of the option i

The alternative situation without domain stabilization is another kind of efficiency region for each lot: the frontier function is still in three pieces (corresponding to the “undisturbed” bilateral frontier described in the section 5.1.2), first at \( {\widehat{x}}_{ij}^0 \), then an affine function with slope ε b /(2β − γ), third another affine function with slope ε b w (ε b = + 1 in case 2 and -1 in case 1). This second possible configuration of efficiency regions is shown in Fig. 4b (again, case 1 is illustrated, the graph for the case 2 would be symmetrical).

In both situations, the function \( \tilde{t}\mapsto \widehat{x}\left(\tilde{t}\right) \) is piecewise affine and continuous (Fig. 4a and b for case 1, symmetrical figures for case 2). At any \( \tilde{t} \) the efficiency domain of each option is an interval.

5.3.1 Synthesis

Summarizing previous results, under the behavioral condition β ≥ γ (H4) and on the basis of property 1, in the initial configuration both lots have an efficiency domain, which is maintained until its frontier is reached by the saturation wave from one lot (as discussed in section 5.1.1). A parametric analysis with respect to \( \tilde{t} \) yields the evolution of the bilateral frontier in the demand space \( \left(\tilde{x},\tilde{t}\right) \) (as described in section 5.1.2). This frontier is only modified when it is met by the second lot’s saturation wave, as discussed in section 5.1.3. Altogether, based on this parametric study, two possible configurations are identified in section 5.1.3: domain stabilization of the first saturated lot or its closure, based on the moment when the second lot saturates. This analysis results in the following proposition.

Proposition 1. In a situation of bilateral competition, the efficiency domains of the competing options are separated by a frontier in three affine pieces. For a given set of saturation times and parking lot positions, there are only two possible configurations for this frontier (depicted in Fig. 4): efficiency domain stabilization or definitive elimination of one option.

These properties depend crucially on the initial joint efficiency of all options (H3). If only one lot is efficient at the beginning, then after its saturation instant the saturation wave could make the other lot efficient, but on a specific interval that would split the efficiency domain of the first lot in two parts, thereby breaking the interval structure.

5.4 Multilateral competition

Let us denote the efficiency regions of the lot i that result from the bilateral competition between options i and j such as j < i as E ij and the efficiency regions of the lot i in its competition with lots j such as j > i as E + ij .

In the general case, the efficiency region of lot i is the domain in the \( \left(\tilde{x},\tilde{t}\right) \) plane where g i is less than any other g j for j ∈ I:

$$ {E}_i=\left\{\left(\tilde{x},\tilde{t}\right):\kern0.5em {g}_i\left(\tilde{x},\tilde{t}\right)\le {g}_j\left(\tilde{x},\tilde{t}\right)\kern1em \forall j\in I\;\right\} $$
(5.5)

From its definition, \( {E}_i={\displaystyle {\cap}_{j\in I}\left\{\left(\tilde{x},\tilde{t}\right):\kern0.5em {g}_i\le {g}_j\right\}} \). Note that given \( \tilde{t} \), \( \forall \tilde{x} \), ∃ i such that \( \left(\tilde{x},\tilde{t}\right)\in {\mathrm{E}}_i \).

Definition that can also be written as:

$$ {E}_i=\left({\displaystyle {\cap}_{j<i}{E}_{ij}^{-}}\right)\cap \left({\displaystyle {\cap}_{j>i}{E}_{ij}^{+}}\right) $$
(5.6)

As \( {E}_{ij}^{-}=\left\{\left(\tilde{x},\tilde{t}\right):\kern0.5em \tilde{x}\ge {\widehat{x}}_{ij}\left(\tilde{t}\right)\right\} \), it turns out that \( {\displaystyle {\cap}_{j<i}{E}_{ij}^{-}}=\left\{\left(\tilde{x},\tilde{t}\right):\kern0.5em \tilde{x}\ge { \max}_{j<i}{\widehat{x}}_{ij}\left(\tilde{t}\right)\right\} \).

Let us define \( {x}_i^{-}\left(\tilde{t}\right)={ \max}_{j<i}{\widehat{x}}_{ij}\left(\tilde{t}\right) \) (or 0 if i has the smallest x i ). Then it holds that:

$$ {\displaystyle {\cap}_{j<i}{E}_{ij}^{-}}=\left\{\left(\tilde{x},\tilde{t}\right):\kern0.5em \tilde{x}\ge {x}_i^{-}\left(\tilde{t}\right)\right\} $$

Similarly, as \( {E}_{ij}^{+}=\left\{\left(\tilde{x},\tilde{t}\right):\kern0.5em \tilde{x}\le {\widehat{x}}_{ij}\left(\tilde{t}\right)\right\} \) it turns out that \( {\displaystyle {\cap}_{j>i}{E}_{ij}^{+}}=\left\{\left(\tilde{x},\tilde{t}\right):\kern0.5em \tilde{x}\le { \min}_{j>i}{\widehat{x}}_{ij}\left(\tilde{t}\right)\right\} \)

Let us define \( {x}_i^{+}\left(\tilde{t}\right)={ \min}_{j>i}{\widehat{x}}_{ij}\left(\tilde{t}\right) \) (or L if i has the largest x i ). Then it also holds that:

$$ {\displaystyle {\cap}_{j>i}{E}_{ij}^{+}}=\left\{\left(\tilde{x},\tilde{t}\right):\kern0.5em \tilde{x}\le {x}_i^{+}\left(\tilde{t}\right)\right\} $$

By combination of the two sides, it follows that

$$ {E}_i=\left\{\left(\tilde{x},\tilde{t}\right):\kern0.5em \tilde{x}\in \left[{x}_i^{-}\left(\tilde{t}\right),\;{x}_i^{+}\left(\tilde{t}\right)\right]\right\} $$
(5.7)

Hence

$$ {E}_i\left(\tilde{t}\right)=\left[{x}_i^{-}\left(\tilde{t}\right),\;{x}_i^{+}\left(\tilde{t}\right)\right] $$
(5.8)

As the \( {\widehat{x}}_{ij} \) functions are piecewise affine and continuous, so is the maximum (or the minimum) of a subset of them: thus the x i and x + i as functions of \( \tilde{t} \) are piecewise affine and continuous.

The width function \( \tilde{t}\mapsto {\left({x}_i^{+}\left(\tilde{t}\right)-{x}_i^{-}\left(\tilde{t}\right)\right)}^{+} \) is also piecewise and continuous. It decreases to zero on only if there is a limit instant from which option i is no longer efficient. In the Appendix, it is shown that each efficiency region is a single connected region.

5.5 Assignment functions

Knowing the respective efficiency regions of the parking lots, it is easy to assign each user with \( \left(\tilde{x},\tilde{t}\right) \) to the option which is optimal to him. For every lot, the user flow results from the aggregation of the flow elements across the population of users.

Denote by \( {\tilde{q}}_i\left(\tilde{t}\right) \) the flow rate of users with \( \tilde{t} \) as preferred arrival time and that select lot i: \( {\tilde{q}}_i\left(\tilde{t}\right)=\tilde{q}\left(\tilde{t}\right){.1}_{\left\{{x}_i^{+}\left(\tilde{t}\right)\ge {x}_i^{-}\left(\tilde{t}\right)\right\}}.{\displaystyle {\int}_{\;{x}_i^{-}\left(\tilde{t}\right)}^{\;{x}_i^{+}\left(\tilde{t}\right)}\;\tilde{h}\left(\tilde{x}\Big|\tilde{t}\right)d\tilde{x}} \), hence

$$ {\tilde{q}}_i\left(\tilde{t}\right)=\tilde{q}\left(\tilde{t}\right).{\left(\tilde{H}\left({x}_i^{+}\left(\tilde{t}\right)\Big|\tilde{t}\right)-\tilde{H}\left({x}_i^{-}\left(\tilde{t}\right)\Big|\tilde{t}\right)\right)}^{+} $$
(5.9)

By construction, \( \forall \tilde{t} \) all demand elements \( Q\tilde{h}\left(\tilde{x}\Big|\tilde{t}\right) \) are assigned between the parking lots, so that \( {\displaystyle {\sum}_{i\in \mathrm{I}}{\tilde{q}}_i\left(\tilde{t}\right)=\tilde{q}\left(\tilde{t}\right)} \).

By time integration we get the cumulative flow of users selecting i up to a ceiling value t of \( \tilde{t} \):

$$ {\tilde{Q}}_i(t)={\displaystyle {\int}_{\;\tilde{t}\le t}{\tilde{q}}_i\left(\tilde{t}\right)d\tilde{t}} $$
(5.10)

The total demand for option i based on the lot saturation times amounts to \( {\tilde{Q}}_i\left({t}_{\max}\right) \).

By aggregation over \( \tilde{t} \), it stems that \( {\displaystyle {\sum}_{i\in \mathrm{I}}{\tilde{\mathrm{Q}}}_i(t)={\displaystyle {\int}_{\;\tilde{t}\le t}\tilde{q}\left(\tilde{t}\right)d\tilde{t}}} \), hence that:

$$ {\displaystyle {\sum}_{i\in \mathrm{I}}{\tilde{\mathrm{Q}}}_i\left({t}_{\max}\right)=Q} $$

Formulae (5.9) and (5.10) combined to the regularity properties of \( {x}_i^{-}\left(\tilde{t}\right) \) and \( {x}_i^{+}\left(\tilde{t}\right) \) yield obvious regularity properties for the option flow rate and cumulative flow.

These flows depend on the preferred time of arrival at the destination: this time is intentional in nature.

With respect to the time of parking, let us distinguish between times prior to saturation i.e. \( t<{\overline{t}}_i \) and the saturation time, \( {\overline{t}}_i \). Prior to saturation, the parking time and the preferred arrival time are linked by \( \tilde{t}=t+\left|\tilde{x}-{x}_i\right|/w \). Given \( \tilde{x} \), there is a time shift with no effect of time distortion between t and \( \tilde{t} \) so the flow of users with \( \tilde{t} \) that park at t in lot i is simply

$$ {q}_i\left(\tilde{x},t\right)={\tilde{q}}_i\left(\tilde{x},\tilde{t}\right)=\tilde{q}\left(\tilde{t}\right).\tilde{h}\left(\tilde{x}\Big|\tilde{t}\right), \kern0.5em \mathrm{wherein}\kern0.24em \tilde{t}=t+\left|\tilde{x}-{x}_i\right|/w $$
(5.11)

Define the frontier set \( {F}_{i,t}=\left\{\left(\tilde{x},\tilde{t}\right):\tilde{t}=t+{w}^{-1}\left|\tilde{x}-{x}_i\right|\right\} \).

The users who park at t are those in E i  ∩ F i,t , so

$$ {q}_i(t)={\displaystyle {\int}_{\;{E}_i\cap {F}_{i,t}}{\tilde{q}}_i\left(x,{\tilde{t}}_x\right)dx}={\displaystyle {\int}_{\;{E}_i\cap {F}_{i,t}}\tilde{q}\left({\tilde{t}}_x\right).\tilde{h}\left(x\Big|{\tilde{t}}_x\right)dx} $$
(5.12)

The cumulative flow at t stems from the region below the frontier, i.e. set E i  ≤ F i,t :

$$ {Q}_i(t)={\displaystyle {\int}_{\;{E}_i\le {F}_{i,t}}\tilde{q}\left(\tilde{t}\right).\tilde{h}\left(\tilde{x}\Big|\tilde{t}\right)d\tilde{x}d\tilde{t}} $$
(5.13)

At a given t, define the functions \( {y}_{it}^{-}\left(\tilde{t}\right)={x}_i-w\left(\tilde{t}-t\right) \) and \( {y}_{it}^{+}\left(\tilde{t}\right)={x}_i+w\left(\tilde{t}-t\right) \) of \( \tilde{t}\ge t \). A point \( \left(\tilde{x},\tilde{t}\right) \) is below F i,t if \( \tilde{t}<t \) or if \( \tilde{t}\ge t \) and \( \tilde{x}\notin \left]{y}_{it}^{-}\left(\tilde{t}\right),{y}_{it}^{+}\left(\tilde{t}\right)\right[ \). So

$$ {Q}_i(t)={\tilde{Q}}_i(t)+{\displaystyle {\int}_{\;\tilde{t}>t}\left[\tilde{q}\left(\tilde{t}\right){\displaystyle {\int}_{\;\left[{x}_i^{-}\left(\tilde{t}\right),{x}_i^{+}\left(\tilde{t}\right)\right]-\left]{y}_{it}^{-}\left(\tilde{t}\right),{y}_{it}^{+}\left(\tilde{t}\right)\right[}\;\tilde{h}\left(\tilde{x}\Big|\tilde{t}\right)d\tilde{x}}\right]d\tilde{t}} $$
(5.14)

The inner integral amounts to:

$$ {1}_{\left\{{x}_i^{+}\left(\tilde{t}\right)\ge {x}_i^{-}\left(\tilde{t}\right)\right\}}.\left[{\left(\tilde{H}\left({x}_i^{+}\left(\tilde{t}\right)\Big|\tilde{t}\right)-\tilde{H}\left({y}_{it}^{+}\left(\tilde{t}\right)\Big|\tilde{t}\right)\right)}^{+}+{\left(\tilde{H}\left({y}_{it}^{-}\left(\tilde{t}\right)\Big|\tilde{t}\right)-\tilde{H}\left({x}_i^{-}\left(\tilde{t}\right)\Big|\tilde{t}\right)\right)}^{+}\right] $$

As for the flow of users that park at the saturation time \( {\overline{t}}_i \), it is cumulated over the time interval of \( \tilde{t}\ge {t}_i^{\#}\left(\tilde{x}\right) \) for each destination point \( \tilde{x} \). With respect to \( \tilde{t} \), \( \tilde{x} \) must belong to \( \left[{x}_i^{-}\left(\tilde{t}\right),{x}_i^{+}\left(\tilde{t}\right)\right]\cap \left[{y}_{it}^{-}\left(\tilde{t}\right),{y}_{it}^{+}\left(\tilde{t}\right)\right] \) for \( t={\overline{t}}_i \). So each \( \tilde{t}\ge {\overline{t}}_i \) yields flow rate of

$$ {z}_i\left(\tilde{t}\right)=\tilde{q}\left(\tilde{t}\right).{\displaystyle {\int}_{\;\left[{x}_i^{-}\left(\tilde{t}\right),{x}_i^{+}\left(\tilde{t}\right)\right]\cap \left[{y}_{it}^{-}\left(\tilde{t}\right),{y}_{it}^{+}\left(\tilde{t}\right)\right]}\;\tilde{h}\left(\tilde{x}\Big|\tilde{t}\right)d\tilde{x}} $$
(5.15)

Then the cumulative flow is (under \( t={\overline{t}}_i \)):

$$ {Z}_i(t)={\displaystyle {\int}_{\;\tilde{t}\ge t}{z}_i\left(\tilde{t}\right)d\tilde{t}}={\displaystyle {\int}_{\;\tilde{t}\ge t}\left[\tilde{q}\left(\tilde{t}\right){\displaystyle {\int}_{\; \max \left\{{x}_i^{-}\left(\tilde{t}\right),{y}_{it}^{-}\left(\tilde{t}\right)\right\}}^{\; \min \left\{{x}_i^{+}\left(\tilde{t}\right),{y}_{it}^{+}\left(\tilde{t}\right)\right\}}\kern0.5em \tilde{h}\left(\tilde{x}\Big|\tilde{t}\right)d\tilde{x}}\right]d\tilde{t}} $$
(5.16)

Based on these formulas, regularity properties for \( {z}_i\left(\tilde{t}\right) \) and Z i (t) follow from those of their operands.

At \( {\overline{t}}_i \) the overall cumulative flow is

$$ {Q}_i\left({\overline{t}}_i\right)={Z}_i\left({\overline{t}}_i\right)+{ \lim}_{t\to {\overline{t}}_i^{-}}{Q}_i(t) $$
(5.17)

5.6 Multiple demand classes

Sections 5.1 to 5.3 apply specifically to one class of demand, say A, sharing the same behavioral characteristics (α, β, γ, v, w) and entry point (the 0- extremity). From an exogenous set of lot saturation times, the treatment derives the dynamic market areas of the parking lots and the assignment of demand to their preferred parking options. At the street level it is easy to deal with multiple classes of demand, for instance a class B of users entering by L, sharing parameters (α′, β′, γ′, v′, w′) and distributed along time and space with \( {h}^{\prime}\left(\tilde{x},\tilde{t}\right) \) and \( {H}^{\prime}\left(\tilde{x},\tilde{t}\right) \). We also assume, as in sections 5.1 to 5.3, the set of lot saturation time is exogenous, therefore demand classes do not interact directly in their choice of preferred parking option. Parking quality of service and resulting market areas for each demand class are entirely derived from the parking saturation times and the class-specific behavioral characteristics as well as entry point. The first step is then to adapt the algorithm determining parking options efficiency domains.

5.6.1 Class-specific parking costs

In general, for a class B of users, the costs of parking at one of the lots offered on the street level would be specific: \( {V}_i^{\prime },{W}_i^{\prime}\left(\tilde{x}\right),{D}^{\prime}\left({t}^{{\prime\prime} },\tilde{t}\right) \). Transposing previously presented reasoning for the class A to the characteristics of the class B would provide class-specific efficiency domains E’ i .

In the particular case of a class B, differing from the class A by the entry point only, the in-vehicle cost of parking access to a given lot is solely modified. Indeed, \( {V}_i={m}_i+\frac{\alpha .{x}_i}{v} \) becomes \( {V}_i^{\prime }={m}_i+\frac{\alpha \left(L-.{x}_i\right)}{v} \), therefore increasing the minimal cost of parking at lots such that \( {x}_i<\frac{L}{2} \) and decreasing it for lots \( {x}_i>\frac{L}{2} \). Therefore following properties of the bilateral frontier between two lots can be easily derived.

5.6.2 Class-specific efficiency domains

Property 3: In the uncongested case, the position of the bilateral frontier between lots i and j depends on the user class. The B-frontier is closer to 0-extremity than the A-frontier.

The reason for that is that lot j, being closer to the L-extremity, has a larger efficiency interval for class B than for class A.

This is summarized in the following expression, to be compared with the equation (3.6) pertaining to the class A:

$$ \widehat{x}{\hbox{'}}_{ij}^0={\scriptscriptstyle \frac{1}{2}}\left({x}_i+{x}_j\right)+{\scriptscriptstyle \frac{w}{2\beta }}\left[{m}_j-{m}_i-{\scriptscriptstyle \frac{\alpha }{v}}\left({x}_j-{x}_i\right)\right]<{\widehat{x}}_{ij}^0 $$

Then, since the saturation wave of a parking lot depends only on the saturation time and walking speed (shared by the classes A and B) it is identical for both classes A and B. Indeed, recalling its expression (case 1, lot i saturates first), \( {t}_i^{\#}\left(\tilde{x}\right)\equiv {\overline{t}}_i+\left|\tilde{x}-{x}_i\right|/w \) and keeping in mind that \( {x}_i<\widehat{x}{\hbox{'}}_{ij}^0<{\widehat{x}}_{ij}^0 \), leads to, since \( {t}_i^{\#}\left(\tilde{x}\right) \) is increasing on this interval:

$$ {t}_i^{\#}\left(\widehat{x}{\hbox{'}}_{ij}^0\right)<{t}_i^{\#}\left({\widehat{x}}_{ij}^0\right) $$

Conversely, in the case 2, when lot j saturates first, \( {t}_j^{\#}\left(\tilde{x}\right) \) is decreasing for \( \tilde{x}<{x}_j \) leading to \( {t}_j^{\#}\left(\widehat{x}{\hbox{'}}_{ij}^0\right)>{t}_j^{\#}\left({\widehat{x}}_{ij}^0\right) \). This leads to property 4.

Property 4: In the case of unilateral saturation of the lot i (case 1), the saturation wave will be met sooner by users in class B – they will switch earlier to the unsaturated lot j which is closer to their entry point. Conversely, in the case of unilateral saturation of lot j (case 2), the saturation wave will be met later, users in the class B are keeping their preference for lot j, closer to their entry point, for a longer period.

This stronger preference for the lot closer to the entry point L is also seen in the further evolution of the bilateral frontier. It has the same piecewise structure and conserves the characteristic slopes. After t '  * ij , the function \( \tilde{t}\mapsto \widehat{x}{\hbox{'}}_{ij}\left(\tilde{t}\right) \) evolves at slope ε b /(2β − γ) as long as \( \widehat{x}{\hbox{'}}_{ij}\ge {x}_i \), then at slope ε b w (where ε b  = − 1 for case 1 and ε b  = + 1 for case 2).

Property 5: These slope expressions lead to identical values as for class A, since behavioral characteristics are kept identical. Although, the instant at which \( \widehat{x}{\hbox{'}}_{ij}={x}_i \) is \( {t}_i^{\#}\left(\widehat{x}{\hbox{'}}_{ij}^0\right)+{\scriptscriptstyle \frac{2\beta -\gamma }{\gamma w}}\left(\widehat{x}{\hbox{'}}_{ij}^0-{x}_i\right) \), lower than for class A (case 1). Conversely, in case 2, the instant at which \( \widehat{x}{\hbox{'}}_{ij}={x}_j \) is \( {t}_j^{\#}\left(\widehat{x}{\hbox{'}}_{ij}^0\right)+\left({x}_j-\widehat{x}{\hbox{'}}_{ij}^0\right){\scriptscriptstyle \frac{2\beta -\gamma }{\gamma w}} \), higher than for class A.

Domain stabilization of the first saturated lot can also occur if the condition (5.4) is met. Although, the general shift to the left of the bilateral frontier (property 3), and subsequent modifications of the moment at which the saturation waves meet this frontier (properties 4 and 5) lead to the following property 6:

Property 6: The general shape (stabilized or closed) of the efficiency domains might be different for users in the classes A and B.

5.6.3 Joint assignment and cumulated flows

Property 7: Once the parking lots efficiency domains are established independently for the demand classes, based on common lot saturation times, the demand classes are assigned jointly to their preferred options.

Then for every lot, the user flow results from the aggregation of the flow elements across the population of users, summed over the demand classes:

\( {\tilde{q}}_i\left(\tilde{t}\right)={\tilde{q}}_{i,A}\left(\tilde{t}\right)+{\tilde{q}}_{i,B}\left(\tilde{t}\right) \) using equation (5.9) and specific efficiency frontiers and joint cumulative distribution functions.

With respect to time of parking, using equations (5.12), (5.13) and (5.16) to define respective contributions of categories A and B, the instantaneous flow of users parking at a lot i is:

q i (t) = q i,B (t) + q i,B (t), the cumulative flow at t is Q i (t) = Q i,A (t) + Q i,B (t) for \( t<{\overline{t}}_i \), and the cumulative flow at the saturation moment is \( {Z}_i\left({\overline{t}}_i\right)={Z}_{i,A}\left({\overline{t}}_i\right)+{Z}_{i,B}\left({\overline{t}}_i\right) \).

Dealing with the particular class of users entering through the L-extremity of the street is a step towards route choice integration, though, to be complete, it would need to take into account departure time choice due to dynamically varying traffic conditions at the network level, possibly different for each entry point according to the route choice. Hints of further developments are presented in the conclusion section.

6 Parking traffic equilibrium

A parking user makes his decision of parking lot and parking time based on the costs of the options available to him. He evaluates the option costs from their physical characteristics, including the saturation time but probably not the capacity which he is unlikely to know accurately. Thus the saturation times are macroscopic parameters that induce the assignment of demand to parking options. This makes the demand side of parking traffic equilibrium. On the supply side, by parking lot the saturation time is determined by the filling up of the lot capacity.

We shall first define precisely the traffic equilibrium of parking demand and supply, then analyze it mathematically as a Fixed Point Problem and demonstrate the existence of an equilibrium state, and lastly provide a solution algorithm.

6.1 Demand and supply in equilibrium

Conditional on the vector \( {\overline{\mathbf{t}}}_I=\left[{\overline{t}}_i:i\in I\right] \) of lot saturation times, the determination of the efficiency regions E I  = [E i  : i ∈ I] yields the preferred option (i s , t s ) of each demand segment \( s=\left(\tilde{x},\tilde{t}\right) \). As each demand segment has a flow element \( Qh\left(\tilde{x},\tilde{t}\right) \), the assignment of the flow elements to the preferred options induces the lot flow functions \( {\tilde{q}}_i\left(\tilde{t}\right) \) and \( {\tilde{Q}}_i\left(\tilde{t}\right) \) with respect to preferred time of arrival and q i (t) and Q i (t) with respect to parking time. Let Q I  = [Q i  : i ∈ I] be the vector of cumulative flow functions with respect to parking times.

Definition: Parking Traffic User Equilibrium (PTUE) is a system state \( {\overline{\mathbf{t}}}_I,{\mathbf{E}}_I,{\mathbf{Q}}_I \) such that

  1. (i)

    The efficiency regions E I are based on \( {\overline{\mathbf{t}}}_I \).

  2. (ii)

    ∀ i ∈ I, function t ↦ Q i (t) satisfies (5.14) and (5.17) based on \( {\overline{\mathbf{t}}}_I \).

  3. (iii)

    ∀ i ∈ I, \( {\overline{t}}_i= \inf \left\{\kern0.5em t\le {t}_{\max }:\;{Q}_i(t)\ge {k}_i\right\} \).

Condition (i) states that every demand segment is associated to its preferred option. Condition (ii) means that the lot flows stem from demand assignment under the principle of selfish user behavior. Condition (iii) states that the saturation time of lot i is the instant at which lot i saturates due to the demand flows.

6.2 Mathematical analysis

Denote by \( {\overline{\mathbf{t}}}_{I-i}=\left[{\overline{t}}_j:j\in I,j\ne i\right] \) the vector \( {\overline{\mathbf{t}}}_I \) deprived from its i-th component, \( {\overline{t}}_i \). Let us also define from (5.10),

$$ {\widehat{Q}}_i\left(t\left|\;{\overline{\mathbf{t}}}_{I-i}\right.\right)={\tilde{Q}}_i\Big({t}_{\max}\left|{\overline{\mathbf{t}}}_I\Big)\right.\;\mathrm{with}\;{\overline{\mathbf{t}}}_I=\left({\overline{t}}_i,{\overline{\mathbf{t}}}_{I-i}\right)\;\mathrm{and}\;{\overline{t}}_i=t $$
(6.1)

Conditional on \( {\overline{\mathbf{t}}}_{I-i} \), \( {\widehat{Q}}_i \) evaluated at \( t={\overline{t}}_i \) yields the flow of lot i cumulated over the period and conditional on \( {\overline{\mathbf{t}}}_I=\left({\overline{\mathbf{t}}}_{I-i},t\right) \). From its definition, function \( {\widehat{Q}}_i \) increases with t. It is continuous everywhere except at critical points where a change in t induces a radical shift from one typical situation of bilateral competition to the other, i.e. when some \( {\widehat{x}}_{ij} \) or \( {\widehat{x}}_{ji} \) reaches a lot position x i or x j (cf. § 5.1).

Time \( t={\overline{t}}_i \) is a correct saturation time for lot i conditional on the other saturation times \( {\overline{\mathbf{t}}}_{I-i} \) if and only if it solves the following conditions of complementary slackness:

$$ t\le {t}_{\max } $$
(6.2a)
$$ {\widehat{Q}}_i\left(t\left|\;{\overline{\mathbf{t}}}_{I-i}\right.\right)\le {k}_i $$
(6.2b)
$$ \left({t}_{\max }-t\right)\;.\;\left({k}_i-{\widehat{Q}}_i\left(t\left|\;{\overline{\mathbf{t}}}_{I-i}\right.\right)\right)=0 $$
(6.2c)

For this set of conditions (notably 6.2b) to hold, it requires that Q ≤ ∑ i ∈ I k i . Recalling that \( Q={\displaystyle {\sum}_{i\in \mathrm{I}}{\tilde{Q}}_i\left({t}_{\max}\right)} \) from subsection 5.3. This condition will be identified as H5.

Proposition 2. Given \( {\overline{\mathbf{t}}}_{I-i} \), as \( {\widehat{Q}}_i \) is monotone there is a unique solution to (6.2), namely

$$ {T}_i\left({\overline{\mathbf{t}}}_{I-i}\right)= \inf \left\{\kern0.5em t\le {t}_{\max }:\;{\widehat{Q}}_i\left(t\left|\;{\overline{\mathbf{t}}}_{I-i}\right.\right)\ge {k}_i\right\} $$
(6.3)

Proof. Existence. Given \( {\overline{\mathbf{t}}}_{I-i} \), \( {\widehat{Q}}_i \) is monotone increasing. If there is a t < t max for which \( {\widehat{Q}}_i(t)={k}_i \) , then t is a solution to (6.2). Else \( {\widehat{Q}}_i \) increases without reaching the lot’s capacity k i , then t max verifies the conditions (6.2) and is therefore a solution to the problem. Uniqueness. Following the definition (6.3) points to the minimal solution, hence unique.

Definition: the Fixed Point Problem (FPP) on saturation times, \( {\overline{\mathbf{t}}}_I \), is made up of the set of conditions as follows:

$$ {\overline{t}}_i={T}_i\left({\overline{\mathbf{t}}}_{I-i}\right),\forall i\in I $$
(6.4)

Proposition 3. For PTUE to have a solution, it must hold that \( {\displaystyle \sum_{i\in I}{\widehat{Q}}_i(t)}=Q \) (where Q is the total demand), hence that \( Q\le {\displaystyle \sum_{i\in I}{k}_i} \). Under that condition, the FPP and the PTUE problem are equivalent in that any solution to the FPP gives rise to a solution of the PTUE and any solution to PTUE satisfies the FPP.

Proof. A vector \( {\overline{\mathbf{t}}}_I \) that solves the FPP satisfies (6.2) on each of its components: so its \( {\overline{t}}_i \) is a correct saturation time for lot i. From the definition of T i and in turn of \( {\widehat{Q}}_i \), the efficiency regions E I based on \( {\overline{\mathbf{t}}}_I \) and the associated flow functions Q I jointly satisfy conditions (i), (ii) and (iii) that define a PTUE. Conversely, a traffic equilibrium must check (6.2) for every lot, hence (6.4) which is equivalent to the system of (6.2) ∀ i ∈ I.

6.2.1 Set of assumptions

  • H1: v > w Car speed is higher than walk speed

  • H2: β > α A unit walk time is less comfortable than a unit drive time

  • H3: The tariff structure allows for initial joint efficiency of all lots

  • H4: β ≥ γ A unit walk time is less useful (more costly) than a unit (early) time at destination

  • H5: Q ≤ ∑ i ∈ I k i Total demand does not exceed total capacity

Proposition 4. Given the set of assumptions, there exists an equilibrium state for the parking problem.

Proof. The mapping T I  = (T i ) i ∈ I is defined on the closed convex domain I and onto it. Also \( \forall {\overline{\mathbf{t}}}_I,{\mathbf{T}}_I\left({\overline{\mathbf{t}}}_I\right) \) is a singleton, hence non void and closed. Additionally, we show in the Appendix that, under complementary assumption of \( \tilde{H}\left(x\Big|\tilde{t}\right) \) being continuous, T I is upper semi continuous with respect to \( {\overline{\mathbf{t}}}_I \). Therefore the Kakutani theorem applies and T I must have a fixed point, which is an equilibrium state. Thus an equilibrium must exist.

6.3 Solution algorithm

A parking equilibrium may be computed using any of the following iterative schemes.

First, a naïve algorithm is to compute a sequence \( {\left({\overline{\mathbf{t}}}_I^{(n)}\right)}_{n\ge 0} \) such that

$$ {\overline{t}}_i^{\left(n+1\right)}={T}_i\left({\overline{\mathbf{t}}}_{I-i}^{(n)}\right),\forall i\in I $$
(6.5)

This simple scheme can work well if the T I mapping is a contraction.

Second, a slightly more sophisticated scheme is to get the next state by progressive updating the components in it, à la Gauss-Seidel:

$$ {\overline{t}}_i^{\left(n+1\right)}={T}_i\left({\overline{\mathbf{t}}}_{j<i}^{\left(n+1\right)},{\overline{\mathbf{t}}}_{j>i}^{(n)}\right),\forall i\in I $$
(6.6)

In (6.5) or (6.6), function T i is evaluated by solving for (6.3) which amounts to search for t such that \( {\widehat{Q}}_i \) is equal to the capacity or t = t max. As \( {\widehat{Q}}_i \) is increasing, this can be done simply e.g. by dichotomy.

Third, a more sophisticated and more robust algorithm is a Method of Successive Averages that updates only a fraction of the current state. It utilizes a sequence (ζ n ) n ≥ 0 of positive numbers that decrease to zero and on the following updating rule:

$$ {\overline{t}}_i^{\left(n+1\right)}=\left(1-{\zeta}_n\right)\;.\;{\overline{t}}_i^{(n)}+{\zeta}_n{T}_i\left({\overline{\mathbf{t}}}_{I-i}^{(n)}\right),\forall i\in I $$
(6.7)

As each of the equilibration schemes deals with the saturation times as basic variables, it is a dual approach to parking equilibrium. Whatever the scheme, the FPP formulation provides a convergence criterion which is both simple and rigorous:

$$ C=\left\Vert {\mathbf{T}}_I\left({\overline{\mathbf{t}}}_I^{(n)}\right)-{\overline{\mathbf{t}}}_I^{(n)}\right\Vert $$
(6.8)

The relaxation scheme was used to obtain the equilibrium demonstrated in the next section.

7 Instance

An instance of application of the model developed in this paper will be presented in this section. For clarity reasons, we will keep to one class of demand only, entering through the 0-extremity of the street. First the theoretical case study will be described and hypothesis on parameter values will be introduced. Then the model will be applied to the case study and the analysis of the results will be presented.

7.1 Case study and hypotheses

In this example users are willing to park in a street of 400 meters of total length where 3 parking lots are available. The parking options are numbered 1,2 and 3 and located respectively at 50, 200 and 300 meters from the entry node. Their respective capacities are 30, 10 and 60 vehicles during the parking period and to make this example easier to interpret, tariffs were taken null.

Total demand for parking is 80 vehicles and users’ destination locations are uniformly distributed on the entire street stretch. Additionally, users are willing to arrive at destination between 8 h and 9 h and demand is also uniformly distributed in time during this one-hour period. Such a demand can be characterized by a rectangular demand domain in the \( \left(\tilde{x},\tilde{t}\right) \) plane with a uniform demand density function \( \tilde{h}\left(\tilde{x},\tilde{t}\right)=\tilde{h} \) constant over the entire demand domain and null elsewhere.

All users are assumed to have identical walking and driving speeds given by: w = 4km/h and v = 20km/h. Users are also assumed to value their time identically and characteristic parameters of their generalized cost function are given as follows: α = 1, β = 1.5 and γ = 0.5.

Figure 5 shows on the \( \left(\tilde{x},\tilde{t}\right) \) plane the configuration of the demand domain and the efficiency domains of the three lots in the first iteration of the algorithm, where saturation has not been detected. In this case, the choice of parking lot is exclusively based on its location with respect to the destination location and entry node. The efficiency conditions between the three parking options divide the demand domain in three domains of roughly similar width.

Fig. 5
figure 5

Demand and efficiency domains at the first iteration

The assignment of the demand to the parking lots according to the efficiency domains, leads to a progressive filling of the parking lots. The time evolution of the cumulated parking flow on each parking option is represented in Fig. 6. As expected, the demand is almost evenly distributed among parking options.

Fig. 6
figure 6

Cumulated parking flows on the three parking lots

Table 1 gives the total number of vehicles received in each parking lot. These numbers can be compared with the capacity of each parking option:

Table 1 Cumulated parking flows on the three parking lots and their respective capacities
  • Lot 1 received less vehicles than its maximum capacity and therefore is not saturated;

  • Lot 2 received more vehicles than allowed by its capacity, it is expected to be saturated in the solution;

  • Lot 3 received less vehicles than its maximum capacity and is not saturated.

It is obvious that, given the capacity of parking lot 2, all vehicles will not be able to park at this parking lot and some of them will transfer to other available options. Final equilibrium is not trivial though, as vehicles could transfer to lot 1 and lead to its saturation or transfer to lot 3, in which case options 1 and 3 will not be saturated whereas lot 2 will reach its capacity. We will now apply the algorithm presented in this paper and analyze resulting equilibrium.

7.2 Results and analysis

The search for a solution consists of looking for a vector of saturation times of the three parking lots that jointly provide a parking assignment within the parking capacity constraints. As explained previously this problem is essentially a fixed-point problem. Table 2 provides the final values of the saturation times and Fig. 7 illustrates the convergence of the saturation times during the application of the relaxation algorithm. It should be reminded that in the algorithm, whenever a parking is not saturated, its saturation time is assigned the value of the maximum preferred arrival time in the demand domain, as it has no consequence on the assignment process. A saturation time of 9 h is therefore equivalent to no saturation.

Table 2 Saturation times of the three parking lots
Fig. 7
figure 7

Convergence of the saturation times

It can be seen that saturation times stabilize approximately after 60 iterations. The most constrained parking lot 2, is saturated at 8 h22’ approximately (8.3605 hours). The parking option 1 is second to be saturated at 8 h45’ approximately (8.757 hours). The third option is never saturated as its capacity allows it to absorb the remaining users.

Figure 8 shows the efficiency domains of the three parking lots, at the solution of the fixed-point problem. In particular the frontier between lot 1 and lot 2 is made up of two segments (out of three present in the entire frontier resulting from bilateral competition between these options): a vertical segment where \( {\widehat{x}}_{12}^0 \) is a constant and a tilted segment where \( d{\widehat{x}}_{12}/d\tilde{t}=w\gamma /\left(2\beta -\gamma \right)=0.8\mathrm{km}/\mathrm{h} \). The corresponding bilateral frontier is incomplete as it is intersected by the bilateral frontier \( {\widehat{x}}_{23}\left(\tilde{t}\right) \) which is made up of three linear segments of which the last one, which intersects \( {\widehat{x}}_{12}\left(\tilde{t}\right) \), has a characteristic slope of \( d{\widehat{x}}_{23}/d\tilde{t}=-w=-4\mathrm{km}/\mathrm{h} \) meaning that \( {\widehat{x}}_{23}\left(\tilde{t}\right) \) decreases w.r.t. preferred time of arrival. Once the efficiency domain of lot 2 is closed, competition occurs between options 1 and 3 and results in a bilateral frontier \( {\widehat{x}}_{13}\left(\tilde{t}\right) \) made up of three segments (in order of increasing \( \tilde{t} \)): constant \( {\widehat{x}}_{13}^0 \); tilted segment with slope \( d{\widehat{x}}_{13}/d\tilde{t}=-w\gamma /\left(2\beta -\gamma \right)=-0.8\mathrm{km}/\mathrm{h} \); and tilted segment with slope \( d{\widehat{x}}_{13}/d\tilde{t}=-w=-4\mathrm{km}/\mathrm{h} \). Saturation waves \( {t}_1^{\#}\left(\tilde{x}\right) \), \( {t}_2^{\#}\left(\tilde{x}\right) \) and \( {t}_3^{\#}\left(\tilde{x}\right) \) present a characteristic slope \( \left|d\tilde{t}/d\tilde{x}\right|=1/w=0.25\mathrm{h}/\mathrm{km} \) or equivalently \( \left|d\tilde{x}/d\tilde{t}\right|=w=4\mathrm{km}/\mathrm{h} \).

Fig. 8
figure 8

Demand and efficiency domains, solution of the fixed-point problem

As the third lot is closer to the second lot (their relative distance is 100 meters) than the first one (150 meters away from the second lot), a simplistic reasoning would suggest that all users who cannot park in the second lot would transfer to the third lot leaving the first parking lot unsaturated. As it turns out, users’ transfers are more complex. If we compare the configuration of efficiency domains presented in Fig. 8 with the very simple efficiency domains of the first iteration presented in Fig. 5, the following kinematics of transfer can be inferred:

  • When lot 2 gets saturated, vehicles are partly transferred to lot 1 and, in almost equal proportion to lot 3;

  • This additional parking flow on lot 1 leads to its saturation, subsequent users are then transferred from lot1 1 to lot 3.

Once efficiency domains are built, users (characterized by their destination point \( \tilde{x} \) and preferred arrival time \( \tilde{t} \)) choosing each parking option are known and it is possible to perform parking assignment on the three parking options. Figure 9 provides the time evolution of the cumulated parking flow on each parking lot, calculated at discrete times, where the solid lines guide the eye. A few general observations on this time evolution:

Fig. 9
figure 9

Cumulated parking flows on the three parking lots, solution of the fixed-point problem

  • Cumulated flows of parking lots 1 and 2 present a steady increase up to their saturation times where a discontinuity appears: a group of users arrive to the parking at the same time in a “final rush”;

  • Saturation of lot 2 is followed by an increase of the cumulated flow slopes for parking lots 1 and 3: users transferred from the saturated parking lot 2, add to the users willing to park at the parking options 1 and 3;

  • In the same manner when parking lot 1 gets saturated, it is followed by an increase in lot 3 cumulated flow’s slope.

As a reminder, users choose not only the parking option but also the parking time, within time saturation constraints of the parking option, allowing them to minimize their generalized cost. It is equivalent to minimizing the gap between their preferred arrival time and possible early arrival. When unconstrained, they will park at a time such that walking time from the parking lot to their destination will make them reach their destination exactly on time. When constrained they will park at the saturation time of the parking option. Constrained users will therefore arrive at the same time, forming a group of “final rush” to the parking lot, saturating it completely. This group is formed by approximately 6 vehicles for the parking option 1 and 1 vehicle for the parking option 2.

Table 3 provides total cumulated parking flows on the three parking lots. Parking lots 1 and 2 are saturated and their total cumulated flow is equal to their capacity of 30 and 10 vehicles respectively. Parking lot 3 is not saturated, its total cumulated flow is equal to 40 vehicles, less than its capacity of 60 vehicles. Compared to the initial demand given in the table 1, net variation of the demand was calculated. 14 users were transferred from the parking option 2 to the other lots, 3 net additional vehicles were transferred to lot 1 (the actual positive transfers might be more important but negative transfers occur too), 11 additional vehicles were transferred to lot 3 (both from parking lots 1 and 2 as described in Fig. 8).

Table 3 Cumulated parking flows, solution of the fixed-point problem

Assignment at equilibrium leads to the generalized cost for different users that is depicted in Fig. 10. Continuity of the generalized cost at the efficiency domains boundaries between the three options can be noted. Lower values of generalized cost are observable for abscissae equal to the location of the parking lots at respectively 50, 200 and 300 meters, in the unconstrained region of these lots. Indeed for users in these points, generalized cost is only due to driving time from the entry node to the parking lot. In the unconstrained regions, generalized cost increases when destination location is located further away from the parking lot due to the additional walking time from there to the destination. In the constrained regions additional cost is due to the gap between preferred arrival time and early arrival time.

Fig. 10
figure 10

Generalized cost (hours) incurred by different users according to their preferred arrival time and destination location

Maximum cost is observed for users whose destination is the entry node and who are willing to arrive at 9 h. These users either have to park at the parking lot 1 at 8h45min, which implies driving 50 meters (0.15 minutes with a marginal cost of 1/min), walk 50 meters back (0.75 minutes with a marginal cost of 1.5/min) and arrive very early at the destination (approximately 14 min early with a marginal cost of 0.5/min) leading to a generalized cost of approximately 9 min or 0.15 hours. Alternatively they can park at the parking lot 3 located at the opposite end of the street, which implies driving there and then walking back 300 meters (4.5-minute walk with a marginal cost of 1.5/min and approximately 1-min drive with a marginal cost of 1/min) leading to a generalized cost of approximately 8 min or 0.13 hours. Parking at the parking lot 2 is even more costly as it would imply parking at 8 h22’ with a preceding 0.6-min drive and a subsequent 3-min walk, arriving approximately 35 min early, which would lead to a generalized cost of 23 min or 0.38 hours. This result is counter-intuitive as parking lot 2 is closer to the entry node than the parking lot 3, it would therefore be expected that users choose between parking lots 1 and 2 rather than between lots 1 and 3.

8 Conclusion

To summarize, the interplay of parking supply and demand has been modeled in a framework of deterministic, dynamic user equilibrium. Parking demand is continuously disaggregated according to destination point and preferred time of arrival. Every user behaves as a selfish, individual decision-maker in the choice of parking lot and time. The pattern of preferences for the options’ attributes is homogenous. Parking supply is made up of a set of lots each with a position, a capacity and a saturation time. Based on the saturation times, to each lot is associated an efficiency region in the plane of destination places and preferred times. In turn, the aggregation of user flows according to their selected lot and parking time yields the lot saturation times. The user equilibrium of parking traffic amounts to a fixed point problem with respect to the saturation times: when parking capacity exceeds demand volume then there exists an equilibrium state. Computation schemes have been provided for efficiency regions and for equilibrium saturation times.

The two main properties are, first, the structure of the lots’ efficiency regions in space and time, second, the fundamental role of the saturation times as the basic state variables of the parking system. These endogenous variables act as dual variables for market coordination. A lot saturation time bears some resemblance to a critical time at which a traffic bottleneck gets saturated: parking capacity, however, is a storage capacity that enables for the joint arrival of the last customers, contrarily to the bottleneck capacity which is a flow capacity that preserves the order of vehicles [3].

Our model contributes to bridging a gap between theoretical economic models of parking, on the one hand, and network simulation models, on the other hand. The microeconomic theory of parking relies upon simplified models where supply is stylized with one or two places or a uniform distribution along an interval, whereas demand is stylized with one or two destination places and a homogenous pattern of behavior. Our model of supply is much richer as it can accommodate any set of lots along an axis – yet for trips from one or two origins only and with no route choice, while network simulation models cover multiple origins and routes. Our model of demand is richer than in economic models, too, as both the destination places and the preferred times of arrival are disaggregated continuously: yet with homogenous behavior and no issue of parking duration, while network simulation models can address several types of behaviors and distributed duration.

Further research along our lines can be developed in diverse directions:

  • To model the influences of complex parking tariff schemes on the efficiency regions, by adapting our event-based algorithm.

  • To model a network structure with multiple routes and origin-destination pairs.

  • To theorize system optimum for the modeled parking system, paying consideration to optimal pricing and capacity sizing.

  • To theorize imperfect information and compare it to the present model under perfect information

  • To differentiate several user classes in terms of walk / drive / delay / tariff preferences and of parking duration.

  • To model within-day dynamics and the tidal cycle of parking lots during the day and night.

  • Keeping to the street level, to model parking supply continuously in order to derive local state equations.