Perturbed Utility Route Choice (PURC)
- Perturbed Utility Route Choice (PURC) is a network-based model that assigns link flows based on utility maximization with flow conservation constraints.
- It incorporates a convex perturbation function to induce overlap-dependent substitution, allowing for zero flows on less attractive links without route set enumeration.
- PURC supports sensitivity analysis and equilibrium assignment, with empirical validation on large-scale networks and applications in mobility hub design.
Searching arXiv for the core PURC paper and a few later developments to ground the article in current arXiv literature. Perturbed Utility Route Choice (PURC) is a route choice model in which traveler behavior is represented as a utility-maximizing assignment of flow over an entire network subject to flow conservation. For a single origin–destination demand, the decision variable is a nonnegative link-flow vector rather than a probability on an enumerated route set, and the objective combines linear link utility with a convex perturbation that discourages concentration of flow on few links. In the original formulation, this yields overlap-dependent substitution across routes, allows corner solutions with zero flows on many links, avoids route choice set generation, admits estimation by linear regression, and supports prediction by convex optimization on large networks (Fosgerau et al., 2021). Subsequent work has extended PURC toward equilibrium assignment algorithms, sensitivity analysis, convex duality, and bilevel design applications (Yao et al., 2023, Fosgerau et al., 2024, Fosgerau et al., 22 Apr 2026, Yang et al., 18 Aug 2025).
1. Network-native formulation
PURC is defined on a directed network with node set and link set . The node–link incidence matrix has entries if link leaves node , if link enters node , and 0 otherwise. For a given origin 1 and destination 2, the OD demand vector 3 is defined by 4, 5, and zeros elsewhere, and PURC solves a separate assignment for each OD pair. Link 6 has length 7, observed attributes 8, and deterministic utility rate 9, with all 0 negative because they represent disutility such as time or generalized cost (Fosgerau et al., 2021).
The traveler chooses nonnegative link flows 1 subject to flow conservation 2. The utility function is
3
where 4 applies a scalar convex function componentwise and sums with length weights. The assumptions are that 5 is strictly convex and satisfies 6. A specific functional form used in the original paper is the modified entropy
7
This choice is reported to ensure strict convexity, satisfy 8, and yield good empirical fit (Fosgerau et al., 2021).
A distinctive property of the specification is invariance to link splitting. Because every term in 9 is weighted by link length 0, splitting a link into contiguous pieces preserves utility and predictions. The original paper presents this as robustness to introducing dummy nodes, which makes the model insensitive to a common representation artifact in network construction (Fosgerau et al., 2021).
2. Optimization structure and overlap-dependent substitution
PURC solves the concave program
1
With Lagrange multipliers 2, the first-order conditions for active links 3 with 4 are
5
Since 6 is increasing, the original paper interprets higher-flow links as requiring smaller flow adjustments to re-satisfy the first-order conditions when utilities change; this is the mechanism controlling substitution strength across links (Fosgerau et al., 2021).
Although PURC is posed in link space, any flow-conserving link flow can be expressed as a mixture over loop-free routes between the OD pair. Let 7 denote the finite set of loop-free routes and 8 the route-flow mixture. The equivalent route-space representation is
9
with
0
The perturbation term for a link depends on the total probability mass assigned to routes that use that link. The resulting behavioral implication is that all routes are substitutes, and substitution is stronger the more links they share. The paper presents this as an endogenous overlap mechanism derived from the network and the convex perturbation, rather than from an ad hoc path-size correction (Fosgerau et al., 2021).
This distinguishes PURC from route logit models with explicit choice sets. The original formulation states that there is no closed-form logit formula at the route level, and no need for dynamic programming or Bellman equations. It also distinguishes PURC from stochastic user equilibrium formulations in which the convex term represents congestion; in PURC, the perturbation is part of preferences. The model therefore remains a representative-agent assignment over a single OD at a time, while still allowing many zero flows on links where 1 does not bind locally (Fosgerau et al., 2021).
3. Estimation without route choice set generation
Direct estimation from the first-order conditions is hindered by OD-specific Lagrange multipliers. The original paper removes these multipliers using a Moore–Penrose inverse of 2, where 3 selects rows of links used and can also drop small positive flows to reduce noise. With
4
the transformed first-order condition becomes
5
For each OD pair, the transformed dependent vector and regressor matrix are
6
which leads to the linear regression
7
Under mean-zero, OD-independent noise terms, with heteroskedasticity allowed, OLS with robust standard errors consistently estimates 8 (Fosgerau et al., 2021).
A central feature of this procedure is that no route choice set enumeration is required. Estimation uses observed or reconstructed link flows 9 only. The paper further states that computational complexity is independent of the number of individual trips per OD and scales linearly in the number of ODs because the main cost is computing 0 for each OD. In the reported Matlab implementation, computing 1 took under 2 seconds per OD (Fosgerau et al., 2021).
Three specifications were estimated on the Copenhagen data. Model A used 3 and obtained adjusted 4. Model B added a constant for links with outdegree at least 5, interpreted as a penalty for entering intersections, and obtained adjusted 6. Model C interacted pace with road-type dummies such as motorways, ramps, urban, and rural, and obtained adjusted 7. The paper reports that all coefficients had intuitive signs and were precisely estimated (Fosgerau et al., 2021).
Later estimation work on perturbed utility models generalizes the convex-analytic side of this problem. A Fenchel–Young framework defines the loss
8
with gradient 9, and establishes global convexity and bounded gradients for perturbed utility estimation. A Wasserstein distributionally robust extension is then used to connect 0-regularization and margin-enforcing hinge losses to the same framework (Lin et al., 24 Feb 2026). This suggests a broader statistical agenda for PURC-type models beyond OLS in the original link-flow formulation.
4. Empirical validation on the Greater Copenhagen road network
The original empirical study used a large map-matched GPS dataset from the Greater Copenhagen road network. The raw data comprised 1 GPS points and 2 trips over three months on a network with 3 links and 4 nodes. After trimming trips to common pseudo-OD nodes and removing non-sensical observations, the estimation set comprised 5 OD pairs and 6 trips (Fosgerau et al., 2021).
The fitted model is reported to predict realistic network-wide flow patterns, many unused links, and overlap-aware substitution. For a sample OD from the airport to the Technical University of Denmark, the model identifies two main corridors, described as a western motorway bypass versus inner-city alternatives, and adapts their usage as 7 varies. Summed over all ODs, predicted link flows closely matched observed flows, with adjusted 8 between predicted and observed total link counts (Fosgerau et al., 2021).
The paper also emphasizes sparsity in predicted use. It reports 9 links unused in predictions versus 0 unused in observations, with 1 overlap between the two unused sets. For OD-specific active sets, about 2 of observed trips lie completely within the predicted active links, and nearly all observed trips have less than 3 of utility outside the predicted active sets. These results are presented as evidence that PURC does not merely smooth probability mass across the network but can produce zero flows on implausible or unattractive segments (Fosgerau et al., 2021).
The overlap mechanism is also illustrated by a perturbation experiment on the Kalvebod bridge. Increasing travel time on that link by 4 minutes shifts flow toward routes that share links with the affected routes more than toward distant alternatives. The paper uses this example to demonstrate network-induced substitution rather than route-level independence (Fosgerau et al., 2021).
5. Computational, dual, and sensitivity developments
Subsequent work has developed PURC into a larger computational framework. For stochastic traffic assignment, one paper formulates the equilibrium PURC assignment problem as a convex minimization problem, derives a closed-form stochastic network loading expression, and solves the dual with a quasi-Newton accelerated gradient descent algorithm, qN-AGD*. Numerical evidence in that paper states that qN-AGD* clearly outperforms a conventional primal algorithm and a plain accelerated gradient descent algorithm, and that runtime scales about linearly with problem size. Reported runtimes include 5 seconds for Sioux Falls, 6 for Anaheim, 7 for Berlin Central, and 8 for Chicago Sketch (Yao et al., 2023).
A general convex duality treatment later recasts PURC as a constrained convex program in link flows with a separable perturbation 9, and shows that the dual problem is an unconstrained concave maximization
0
Under the stated conditions, the unique optimal flow is recovered link by link via
1
That paper presents the smooth dual objective as the basis for efficient gradient-based optimization and fast computation for sensitivity analysis, and develops a structural analogy between PURC and current flow in electrical circuits (Fosgerau et al., 22 Apr 2026).
Sensitivity analysis has also been made explicit. For the individual PURC program
2
one later paper derives the Jacobian of the optimal expected link-flow vector with respect to link costs:
3
This paper states that the entries of the Jacobian quantify the marginal responses of expected link flows to marginal cost changes anywhere in the active network. It further shows that if the active network for an OD is tree-shaped, then all active paths are substitutes, while complementarity can occur in more general networks. The same paper identifies an Erratum to an earlier proposition that had claimed general path-level substitutability under PURC, attributing the problem to non-unique decomposition of link flows into path flows (Fosgerau et al., 2024).
6. Comparative position, applications, and limitations
Within route choice modeling, PURC occupies a specific position. Compared with multinomial logit on enumerated routes, it does not require route choice set generation and does not impose route-level IIA in the same manner. Compared with path-size logit and APSL, it does not require computation of path-size factors on an explicit consideration set. Compared with cross-nested logit, it does not require an explicit route set. Compared with recursive logit and its MEV generalizations, it avoids maximum-likelihood estimation with dynamic programming and logsum recursions. Compared with stochastic user equilibrium, it treats the convex perturbation as part of preferences rather than congestion (Fosgerau et al., 2021).
Later applications have used this link-based structure in more elaborate optimization settings. A bilevel mobility hub design model embeds a lower-level PURC assignment with a strictly convex quadratic objective and reformulates the bilevel problem to a single-level program via the KKT conditions of the lower level. Numerical experiments on a toy network and a Long Island Rail Road case with 4 nodes, 5 links, and 6 ODs are reported to attain sub-7 optimality gaps in minutes. In that application, the model is used to quantify the social surplus value of a mobility hub, the value of enabling subsidy, and the value of regulating a microtransit operator’s pricing; link-based subsidies are found to be computationally faster, while hub-based subsidies offer an easier mechanism for comparison and control (Yang et al., 18 Aug 2025).
The original PURC paper also states several limitations. Results depend on the chosen functional form for 8; modified entropy worked well empirically, but other convex forms may be explored. GPS map-matching and aggregation error can make small-flow links noisy, which is one reason for allowing the matrix 9 to drop small flows. The formulation is static and does not model time dependence or dynamic congestion. There is no explicit congestion or interaction across ODs because flows are assigned per OD representative traveler. Proposed extensions include time-dependent networks, dynamic OD assignment, coupling ODs through congestion, taste heterogeneity, mixture models, and learning or information effects (Fosgerau et al., 2021).
A common misconception is to treat PURC as merely a link-based implementation of path logit. The original formulation does not do this: it estimates on link flows, predicts by convex optimization, allows zero flows on unrealistic links, and derives overlap-dependent substitution from the perturbation and the network itself rather than from route enumeration. Subsequent dual, equilibrium, and sensitivity results reinforce that the natural analytical domain of PURC is link space rather than an explicit list of alternatives (Fosgerau et al., 2021, Fosgerau et al., 22 Apr 2026, Fosgerau et al., 2024).