Computation and efficiency of potential function minimizers of combinatorial congestion games

We study the computation and efficiency of pure Nash equilibria in combinatorial congestion games, where the strategies of each player i are given by the binary vectors of a polytope Pi\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$P_i$$\end{document}. Our main goal is to understand which structural properties of such polytopal congestion games enable us to derive an efficient equilibrium selection procedure to compute pure Nash equilibria with attractive social cost approximation guarantees. To this aim, we identify two general properties of the underlying aggregation polytopePN=∑iPi\documentclass[12pt]{minimal} \usepackage{amsmath} \usepackage{wasysym} \usepackage{amsfonts} \usepackage{amssymb} \usepackage{amsbsy} \usepackage{mathrsfs} \usepackage{upgreek} \setlength{\oddsidemargin}{-69pt} \begin{document}$$P_N = \sum _i P_i$$\end{document} which are sufficient for our results to go through, namely the integer decomposition property (IDP) and the box-totally dual integrality property (box-TDI). Our main results for polytopal congestion games satisfying IDP and box-TDI are as follows: (i) we show that pure Nash equilibria can be computed in polynomial time. In fact, we obtain this result through a general framework for separable convex function minimization, which might be of independent interest. (ii) We bound the inefficiency of these equilibria and show that this provides a tight bound on the price of stability. (iii) We also prove that these results extend to strong equilibria for the “bottleneck variant” of polytopal congestion games. Examples of polytopal congestion games satisfying IDP and box-TDI include common source network congestion games, symmetric totally unimodular congestion games, non-symmetric matroid congestion games and symmetric matroid intersection congestion games (in particular, r-arborescences and strongly base-orderable matroids).

Motivation and background
Congestion games constitute an important class of strategic games which have been studied intensively since their introduction by Rosenthal [43] in 1973. In a congestion game, a (finite) set of players compete over a (finite) set of resources. Each resource is associated with a non-negative and non-decreasing cost (or delay) function which specifies its cost depending on the total number of players using it. Every player chooses a subset of resources from a set of available resource subsets (corresponding to the player's strategies) and experiences a cost equal to the sum of the costs of the chosen resources. The goal of each player is to minimize her individual cost. In this context, a pure Nash equilibrium is a strategy profile such that no player can decrease her cost by unilaterally deviating to another feasible resource subset. Congestion games are both theoretically appealing and practically relevant. For example, they find their applications in network routing, resource allocation and scheduling problems.
The study of the existence, computation and inefficiency of pure Nash equilibria of these games has led to a surge of novel methodologies and techniques. Rosenthal [43] establishes the existence of pure Nash equilibria in congestion games. He proves this result through the use of an exact potential function, which assigns a value to each strategy profile such that the difference in potential value of any two strategy profiles corresponding to a unilateral deviation of a player is equal to the difference in cost experienced by that player. He shows that every congestion game admits an exact potential function, also known as Rosenthal's potential. 1 As a consequence, every best response sequence, i.e., where players iteratively play their best response, must converge to a pure Nash equilibrium (if the game is finite). Further, this shows that the set of pure Nash equilibria corresponds to the set of local minima of Rosenthal's potential (where the neighborhood of a strategy profile is defined by all unilateral player deviations). Especially this latter correspondence has helped to shed light on several important aspects of congestion games in recent years.
One aspect that has been studied intensively is the computational complexity of finding pure Nash equilibria in congestion games. In a seminal paper, Fabrikant et al. [21] show that the problem of finding a pure Nash equilibrium is PLS-complete, both for symmetric congestion games and non-symmetric network congestion games. In particular, this suggests that a polynomial time algorithm for finding a pure Nash equilibrium is unlikely to exist for these games. In their proof they construct instances of non-symmetric network congestion games where any best response sequence has exponential length from certain initial configurations. Ackermann et al. [1] strengthen this result by exhibiting instances of symmetric network congestion games for which every best response sequence (from certain initial configurations) has exponential length. On the positive side, they prove that best response dynamics converge in polynomial time for non-symmetric matroid congestion games, where the available resource subsets of the players correspond to bases of a given matroid (see below for formal definitions). The authors also show that basically this is the only class of congestion games for which this property holds true.
Most previous works in this context focus on the analysis of decentralized dynamics to reach a pure Nash equilibrium (see, e.g., [1,9,12,20,21,24,34]); said differently, these works focus on finding a local minimum of Rosenthal's potential. Much less is known about the problem of computing a pure Nash equilibrium that corresponds to a global minimizer. Fabrikant et al. [21] use this idea to show that a pure Nash equilibrium can be computed in polynomial time for symmetric network congestion games. The authors observe that in this case a global minimizer of Rosenthal's potential can be computed by a reduction to a min-cost flow problem (assuming that the cost functions are non-decreasing). Note that this is in stark contrast with the fact that best response dynamics might take exponential time for this class of congestion games [1].
Only very recently, Del Pia et al. [16] make further progress along these lines. The authors consider congestion games where the strategy sets of the players are given implicitly by a polyhedral description (see also [8]). More precisely, for each player i the incidence vectors of the strategies are defined as the binary vectors in a polytope P i = {x i : A i x i ≤ b i }, where A i is an integral matrix and b i is an integral vector. They (mostly) focus on the case where the matrix A i is totally unimodular (see below for formal definitions) and thus the describing polytope P i is integral, i.e., all its extreme points are integral; they term these games totally unimodular (TUM) congestion games. For symmetric TUM congestion games, i.e., when all A i , b i are identical, they devise an aggregation/decomposition framework that reduces the problem of finding a global minimum of Rosenthal's potential to an integer linear programming problem. Using this framework, they show that pure Nash equilibria can be computed efficiently for symmetric TUM congestion games. The authors also show that this problem is PLScomplete for non-symmetric TUM congestion games. Further, they show that their framework can be adapted to the case of non-symmetric matroid congestion games.
Another important aspect that has has been the subject of intensive research in recent years is the inefficiency of pure Nash equilibria in congestion games (see, e.g., [3,5,7,10,11,17,22,24,29,35,36,45]). Here the goal is to assess the social cost (defined as the sum of the costs of the players) of a pure Nash equilibrium relative to an optimal outcome. Koutsoupias and Papadimitriou [35] introduced the price of anarchy as the ratio between the worst social cost of a Nash equilibrium and the social cost of an optimum. Anshelevich et al. [4] defined the price of stability as the ratio between the best social cost of a Nash equilibrium and the social cost of an optimum.
Fotakis [24] reveals an intriguing connection between the price of stability of network congestion games and the price of anarchy of their non-atomic counterparts. More specifically, he shows that for symmetric network congestion games the ratio between the social cost of a (global) minimizer of Rosenthal's potential and the optimal social cost is at most ρ(D), where ρ(D) is a bound on the price of anarchy for non-atomic network congestion games with cost functions in class D introduced by Correa et al. [13]. In particular, this implies that the price of stability of symmetric network congestion games with cost functions in D is at most ρ(D). For example, this parameter equals 4/3 for the class of affine functions and (27 + 6 √ 3)/23 ≈ 1.63 for quadratic functions. Further, Fotakis [24] also shows that for symmetric network con-gestion games on extension-parallel graphs, 2 every Nash equilibrium is a Rosenthal minimizer and thus the upper bound of ρ(D) even holds for the price of anarchy of these games.
Bounds of this type also fall within the smoothness framework of Roughgarden [45]. More recently, Feldman et al. [22] study the price of anarchy in large games. Basically, they show that the smoothness parameter introduced in [45] also provides an upper bound on the price of anarchy of many games (or mechanisms) when the number of involved players grows large.

Our contributions
In light of the discussion above a natural question that arises, and which we address in this paper, is: Which structural properties of the strategy sets of the players are sufficient to (A) efficiently compute a global minimum of Rosenthal's potential, and (B) bound the inefficiency of the resulting pure Nash equilibrium?
In order to tackle this question, we use a polyhedral approach similar to the ones used in [8,16]. But in contrast to these works, we do not restrict our attention to polyhedral descriptions arising from totally unimodular matrices only. Instead, we identify more general polyhedral properties of the describing systems that are sufficient to achieve (A) and (B). By doing so, we unify and extend the results in [16,24] to a much larger class of polytopal congestion games.
More specifically, we consider polytopal congestion games in which the incidence vectors of the strategies of player i are given by the binary vectors in a polytope where A is an integral matrix and b i is an integral vector. Given the polytopes of all players, a strategy profile naturally corresponds to an integral vector in the aggregation polytope P N = i P i . We identify two general properties of the aggregation polytope P N which are sufficient for our results to go through, namely the integer decomposition property (IDP) and the box-totally dual integrality property (box-TDI) (formal definitions are given below). The integer decomposition property is needed to decompose a load profile in P N to a respective strategy profile of the players; while this property is always satisfied for TUM games, it requires additional care if one wants to go beyond this class of games. Intuitively, the box-TDI property ensures that the intersection of P N with an arbitrary integer box is an integral polytope; this property is mostly needed for technical reasons. Our main contributions for polytopal congestion games are as follows: (1) We derive an efficient algorithm for computing a feasible load profile minimizing Rosenthal's potential for polytopal congestion games satisfying IDP and box-TDI (Sect. 3). The time complexity of this algorithm is polynomial in the number of players and resources, the enconding length of i b i and the complexity of a separation oracle for the aggregation polytope.
(2) We show that the price of stability of polytopal congestion games satisfying IDP and box-TDI is bounded by ρ(D) (Sect. 4). To this aim, we introduce a novel structural property (which we term the symmetric difference decomposition property) and show that it is satisfied by our games. We also prove that our bound is tight. (3) We give several examples of polytopal congestion games satisfying IDP and box-TDI (Sect. 5). These examples include symmetric TUM congestion games, common source network congestion games, non-symmetric matroid congestion games and certain symmetric matroid intersection congestion games (in particular, r -arborescences and strongly base-orderable matroids). (4) We show that our techniques can be used to extend some results on the computation and inefficiency of strong equilibria of the "bottleneck variant" of our polytopal congestion games (Sect. 6). In particular, we show that strong equilibria can be computed in (strongly) polynomial time for polytopal bottleneck congestion games satisfying IDP and box-TDI (see below for definitions).
To the best of our knowledge, all previous works addressed either (A) or (B), but not both. Note that the combination of our contributions (1) and (2) provides an efficient algorithm for the computation of a pure Nash equilibrium that comes with a provable inefficiency guarantee. Said differently, (1) and (2) can be seen as an efficient equilibrium selection procedure to find a pure Nash equilibrium whose social cost is at most ρ(D) times the optimal social cost.

Significance and implications of our results
Our algorithm in (1) unifies and extends the aggregation/decomposition framework of [16]. In particular, the symmetric TUM congestion games and non-symmetric matroid congestion games (considered separately in [16]) fall into our class of polytopal congestion games satisfying IDP and box-TDI. Similarly, all combinatorial TUM congestion games (i.e., network, matching, edge cover, vertex cover and stable set congestion games) and their respective extensions to the maximum (or minimum) cardinality versions considered in [16] can be handled by our framework.
Besides its implications for polytopal congestion games mentioned above, our algorithm (1) can alternatively be interpreted as an efficient approach to minimize a separable convex function over certain types of polytopes satisfying IDP and box-TDI, which might be of independent interest. We elaborate on this in more detail in Sect. 3.
By exploiting our symmetric difference decomposition property in (2), we can generalize the bound of Fotakis [24] on the price of stability for symmetric network congestion games to the larger class of polytopal congestion games satisfying IDP and box-TDI. Our bounds for polytopal congestion games (significantly) improve upon the ones known for general congestion games: For example, the price of stability of congestion games with cost functions from the class D d of polynomial functions of maximum degree d is well-understood (see [10]) and grows like d + 1. However, it is known that ρ(D d ) ≈ d/ log(d) for large d (see [44]). We thus obtain improved bounds for polytopal congestion games. Further, ρ(D) is well-understood for various classes of cost functions D and we can import these bounds without further analysis. For example, an exact (closed form) expression is known for ρ(D d ) (see preliminaries).
Our upper bound of ρ(D) on the price of stability is (asymptotically) tight even for symmetric singleton congestion games if the class of cost functions D contains all constant functions and is closed under dilations (see below for details). Note that singleton congestion games constitute a special case of all the examples of polytopal congestion games mentioned in (3). In particular, our results settle the exact price of stability for all these games.
Our contribution (4) generalizes a result by Harks et al. [32] who derive an algorithm to compute a strong equilibrium for certain special cases of bottleneck congestion games, using a strategy packing oracle as a subroutine (details are given in Appendix B). They give efficient packing oracles for symmetric network congestion games, non-symmetric matroid congestion games and a (slight) generalization of r -arborescences. We adapt their algorithm to compute a load profile of a strong equilibrium for bottleneck polytopal congestion games satisfying the IDP and box-TDI property. In particular, this leads to an improved algorithm (in terms of running time) to compute a strong equilibrium for this (larger) class of polytopal congestion games.
As a side result, which might be of independent interest, we derive a combinatorial approach for computing the symmetric difference decomposition for non-symmetric matroid congestion games. This also gives rise to a local search algorithm which can be seen as a natural generalization of best response dynamics. In particular, we show that, using a slightly altered neighborhood notion, every best response sequence arrives at a global optimum of Rosenthal's potential (in a polynomial number of steps). These results are presented in Appendix A.
Contribution (1) can also be regarded as a "black-box" approach for the computation of a pure Nash equilibrium. Given a congestion game that exhibits some combinatorial structure, checking whether our approach applies reduces to the following three tasks: (i) derive a polytopal description P i for the strategy set of each player i, (ii) verify whether the resulting aggregation polytope P N satisfies the IDP, (iii) check that the system describing the aggregation polytope P N is box-TDI. In particular, if the integer decomposition of P N can be done in polynomial time, then this approach provides an efficient algorithm to compute a pure Nash equilibrium. By exploiting this idea, we derive strongly polynomial time algorithms for the computation of potential function minimizers for all applications mentioned in (3).
It is interesting to note that the IDP seems to be the limiting property for our approach to apply. For example, non-symmetric network congestion games can naturally be modeled as polytopal congestion games satisfying box-TDI. But it is easy to see that the IDP does not hold. In fact, it is unlikely that an efficient algorithm to find a pure Nash equilibrium exists because this problem is PLS-complete [21].

Further comparison with related work
Our results in (1) regarding the computation of a minimizer of Rosenthal's potential function can also be interpreted as minimizing a separable convex function over a polytope described by a system Ax ≤ b. There is a large body of work on the latter problem and we elaborate only on a few related works in this context below.
Hochbaum and Shanthikumar [33] show that optimizing a separable convex function over a polytope described by a system Ax ≤ b is not much harder than solving a linear function over the same polytope if the maximum subdeterminant of the matrix A is polynomially bounded. In fact, the respective results in Fabrikant et al. [21] and Del Pia et al. [16] could alternatively have been derived from [33] (in combination with an efficient procedure to decompose the obtained solutions into strategy profiles), as in both cases the matrix A is totally unimodular (and, hence, has subdeterminants 0, ± 1). However, the setting of box-TDI systems that we consider here is not covered by the result in [33]. The column-doubling trick used in [33] is also exploited here (as well as in [16,21]); see Sect. 3 for details.
The special case of TUM systems where the underlying system describes a singlecommodity network flow problem has also been studied extensively. In particular, in this case it is folkore that the problem can be reduced to a minimum cost network flow problem. This idea dates back to the works by Dantzig [15] and Ford and Fulkerson [23] (see also [38,39]). This idea is (implicitly) also exploited in [16,21].
Moreover, there has been an extensive line of work regarding the minimization of a separable convex function over a polymatroid polytope, see, e.g., the work of Fujishige [26] or Groenevelt [30]. In particular, these algorithms can be used alternatively in our application regarding non-symmetric matroid congestion games in Sect. 5 (as the aggregation of base matroid polytopes is a polymatroid polytope).
Fujishige et al. [27] draw an interesting connection between the convergence of best response dynamics and Rosenthal's potential function. In particular, they show that the fast convergence of best response dynamics for congestion games on extensionparallel networks shown by Fotakis [24] follows from the M-convexity of the potential function in this case. In particular, these dynamics correspond to a greedy algorithm for minimizing an M-convex function.
De Jong et al. [17] initiated the study of the price of anarchy of k-uniform matroid congestion games with affine cost functions. Lücking et al. [36] proved a tight bound of 4 3 on the price of anarchy for singleton congestion games (k = 1) in this case. De Jong et al. [17] show that the price of anarchy is approximately 1.35188 for symmetric k-uniform matroid congestion games. In contrast, for the price of stability we provide a tight bound for general non-symmetric matroid congestion games with arbitrary cost functions.

Polytopes and describing systems
We review some basic definitions and results from polyhedral combinatorics which are used in this paper (see, e.g., [46] for a more detailed exposition).
A polytope P ⊂ R m is the convex hull of a finite set {q 1 , . . . , q s } ⊂ Q m , or, alternatively, P = {x : Ax ≤ b} is a bounded set described by a system of rational inequalities. 3 For a non-zero vector c with δ = max{c T x : Ax ≤ b}, the affine hyperplane {x : c T x = δ} is called a supporting hyperplane of P. A subset F of P is called a face if F is the intersection of P with some supporting hyperplane of P, or F = P. The minimal faces of P, i.e., faces not contained in another face, are the vertices (or extreme points) of P. Moreover, an edge of P is a one-dimensional face of P (which is the line-segment between two vertices). We say that P is integral if all its extreme points are integral vectors. P is said to be box-integral if the intersection of P with any integral box, i.e., P ∩ {x : c ≤ x ≤ d} for arbitrary integral c and d, yields an integral polytope.
A matrix A ∈ {0, ±1} r ×m is totally unimodular (TUM) if the determinant of each square submatrix of A is in {0, ±1}. If A is totally unimodular and b ∈ Z m is an integer vector, then the polyhedron P = {x : Ax ≤ b} is integral [46,Theorem 19.1].
The work [19] introduced the powerful notion of total dual integrality. A rational system Ax ≤ b with A ∈ Q r ×m and b ∈ Q r is totally dual integral (TDI) if for every integral c ∈ Z m , the dual of minimizing c T x over Ax ≤ b, i.e., has an integer optimum solution y, if it is finite. If Ax ≤ b is a TDI-system and b is integral, then the polyhedron P = {x : Ax ≤ b} is integral [46,Corollary 22.1c]. Note that TDI is a weaker sufficient condition for the integrality of P than TUM.
The system Ax ≤ b is box-totally dual integral (box-TDI) if the system Ax ≤ b, l ≤ x ≤ u is TDI for all rational vectors l and u. We say that a polytope P is box-TDI, if it can be described by a box-TDI system. If P has some box-TDI describing system, then every TDI-system describing P is also box-TDI [46,Theorem 22.8].
The main reason as to why box-TDI is useful, is that it serves as a sufficient condition to show that the polytope it describes is box-integral.

Proposition 2.1 If the system Ax ≤ b describing a polytope P is box-TDI and b is integral, then P is box-integral.
Proof By assumption, the describing system Ax ≤ b of P is box-TDI. Thus the system Ax ≤ b, l ≤ y ≤ u is TDI for all rational vectors l and u. In particular, Ax ≤ b, c ≤ y ≤ d is TDI for arbitrary integral vectors c and d. Because b, c and d are integral, we can conclude that the polytope P ∩ {y : c ≤ y ≤ d} is integral (see, e.g., [46,Corollary 22.1c]).
We will use the following properties of box-TDI descriptions: [46,Section 22.5] The following statements are equivalent:

where a is a column of A and ζ 0 is a new variable.
Moreover, if a polytope P is box-integral, then every edge of P is in the direction of a {0, ±1}-vector. 4 Finally, let N = [n] 5 and consider a finite collection of integral polytopes (P i ) i∈N with a common constraint matrix but possibly different right-hand side vectors, i.e., there exists a matrix A such that for every i ∈ N , We define the aggregation polytope P N induced by (P i ) i∈N as The aggregation polytope is said to have the integer decomposition property (IDP) if every integral z ∈ P N can be written as Note that in the symmetric case b i = b j for all i, j ∈ N this definition reduces to the integer decomposition property for a polytope P N = n P as introduced in [6]. Moreover, if P N has the IDP, then indeed P N = i P i , where the latter summation is the Minkowski sum of polytopes.
It seems that most 0/1-polytopes for which the integer decomposition property is known in the literature, also have a box-TDI describing system. We are not aware of any result showing that this is true in general, but it would imply that box-TDI, as an assumption, is redundant in all our statements in later sections.

Optimization over polytopes
We discuss some classical results regarding the problem of optimizing a linear function over a polytope, i.e., we consider the problem for some c ∈ Q m and polytope P ⊂ R m . We first introduce some additional (computational) notions [31].
The encoding length of an integer z ∈ Z, i.e., the space needed to represent z in binary representation, is The encoding length of a rational number p/q ∈ Q is 1+ log 2 For a positive integer φ, we say that polytope P has facet-complexity at most φ if there exists a system of inequalities with rational coefficients describing P such that every inequality has encoding length at most φ. A triple (P; m, φ) is called a well-described polytope if the polyope P ⊂ R m has facet-complexity at most φ.
Finally, a (strong) separation oracle for P is an algorithm that, given a vector y ∈ Q m , decides whether y ∈ P or not, and in the latter case returns a vector a ∈ Q m such that a T x < a T y for all x ∈ P. If a separation oracle is used as a subroutine in an algorithm, this is referred to as a call to the oracle.
The following theorem summarizes a fundamental result in [25,31]. We give a formulation in terms of polytopes based on Theorem 6.6.5 in [31].

Theorem 2.1
There exists an algorithm that, for any well-described polytope (P; m, φ) specified by a strong separation oracle, and for any given c ∈ Q m , The number of elementary arithmetic operations 6 and calls of the separation oracle executed by the algorithm is bounded by a polynomial in φ. All arithmetic operations are performed on numbers whose encoding length is bounded by a polynomial in φ + c .
We give two remarks related to Theorem 2.1.

Remark 2.1
For notational convenience, we use poly(·) to denote a function that is polynomial in all its arguments. The algorithm of Theorem 2.1 runs in strongly polynomial time (for a class of problems) if the facet-complexity φ can be upper bounded by a polynomial in m, i.e., φ = poly(m).

Remark 2.2
We do not always explicitly mention that all arithmetic operations are performed on numbers whose encoding length is bounded by a polynomial in φ + c . In all subsequent computational statements relying on Theorem 2.1, we implicitly assume that this property holds.

Congestion games and Rosenthal's potential
is a finite set of players, E = [m] is a finite set of resources (or facilities), S i ⊆ 2 E is a set of strategies of player i ∈ N , and c e : R ≥0 → R is a cost function of resource e ∈ E. Unless stated otherwise, the cost functions are assumed to be non-negative and non-decreasing.
For a strategy profile s = (s 1 , . . . , s n ) ∈ × i S i , we define x e (s) as the number of players using resource e, i.e., x e (s) = |{i ∈ N : e ∈ s i }|. We call x(s) = (x e (s)) e∈E the load profile corresponding to strategy profile s. More generally, we say that y ∈ N m is a fesible load profile for the tuple (N , The cost of player i ∈ N under a strategy profile s = (s 1 , . . . , The social cost C(s) of a strategy profile refers to the sum of the players' individual costs, i.e., We say that Φ : × i S i → R is an exact potential function for a congestion game Γ if for every strategy profile s ∈ × i S i , for every player i ∈ N and every unilateral deviation s i ∈ S i of i it holds that: Rosenthal [43] shows that is an exact potential function. Subsequently, we refer to this potential function simply as Rosenthal's potential. Further, a strategy profile minimizing Rosenthal's potential is said to be a Rosenthal minimizer.

Polytopal congestion games
is a congestion game where the set of strategies S i of each player i ∈ N is given implicitly by a polytopal representation. More precisely, let X i be the finite set of all incidence vectors of the strategies of player i, i.e., for every i ∈ N , The polytope P i representing the strategies of player i is defined as the convex hull of X i , i.e., P i = conv(X i ) ⊆ [0, 1] m . We assume that P i is given by where A ∈ Z r ×m is an integral r × m-matrix and b i ∈ Z r is an integral vector. Note that X i = P i ∩ {0, 1} m . For notational convenience, we subsequently use S i also to refer to the set of incidence vectors X i ; no confusion shall arise.
As defined above, the aggregation polytope induced by (P i ) i∈N is the polytopal congestion game given by (P i ) i∈N . For notational convenience, we often omit the explicit reference of the domain of the indices.

Two main properties: IDP and box-TDI
) be a polytopal congestion game with aggregation polytope P N . We identify two crucial properties that the aggregation polytope P N has to satisfy for our results to go through: If the aggregation polytope P N satisfies both the IDP and box-TDI property, we also say that Γ is a polytopal congestion game satisfying IDP and box-TDI.

Remark 2.3
Note that for a symmetric polytopal congestion games Γ = (N , E, S, (c e )) given by a common polytope P, we have P N = n P = {y : y/n ∈ P}. From Proposition 2.2(iii), it follows that the aggregation polytope P N has a box-TDI description if and only if P has a box-TDI description. In particular, whenever we require below that a symmetric polytopal congestion game is box-TDI, then all we need is that the common polytope P is box-TDI.
The IDP is crucial to establish a correspondence between feasible load profiles for (N , E, (S i )) and the integral vectors in P N . Proof Let s = (s 1 , . . . , s n ) ∈ × i S i be a strategy profile and let x be the load profile corresponding to s. It follows directly that x ∈ P N by definition of P N . Moreover, because of the IDP any integral vector z in P N can be decomposed as z = i∈N z i where z i ∈ P i ∩ Z m for all i ∈ N . This implies that for every i the vector z i is the incidence vector of some strategy of player i and thus z is a feasible load profile.

Inefficiency of equilibria and the smoothness parameter
A strategy profile s is a pure Nash equilibrium if for every player i ∈ N it holds that Further, a strategy profile s is a strong equilibrium if for every group of players I ⊆ N and every deviation s I ∈ × i∈I S i of the players in The price of anarchy (POA) and the price of stability (POS) of a game Γ are defined as where NE(Γ ) denotes the set of all pure Nash equilibria of Γ . For a collection of games H we define These notions naturally generalize to the solution concept of strong equilibria.
A non-atomic congestion game (see, e.g., [41]) can be seen as the continuous counterpart of Rosenthal's congestion game model. Here, there is a continuum of players that all control an infinitesimally small amount of flow (as opposed to one unit in Rosenthal's model). The price of anarchy of these games has been studied intensively and is well-understood. In particular, it turns out that the price of anarchy is completely determined by the class of cost functions being used. Correa et al. [13] show that for non-atomic network congestion games with cost functions in class D the price of anarchy of an instance is at most 3) The value of ρ(D) is well-understood for many important classes of cost functions. For example, let In particular, D d contains all polynomial cost functions with non-negative coefficients and maximum degree d. We have The parameter ρ(D) plays a crucial role in bounding the price of stability of our congestion games.
We say that a class of cost functions D is closed under dilations if for every d ∈ D and for every γ

Matroids
We introduce some general terminology and facts for matroids; a more extensive treatment of matroids can be found, e.g., in [47]. Let E = [m] be a finite set of elements and I ⊆ 2 E be a collection of subsets of E (called independent sets). The pair M = (E, I) is a matroid if the following three properties hold: An independent set B ∈ I of maximum size is called a basis. We use B to denote the set of all bases of M. The matroid M also has a rank function r : 2 E → [m] which maps every subset A ⊆ E to the cardinality of the largest independent set contained in A.
The base matroid polytope is given by It is the convex hull of the incidence vectors of the bases in B [47]. If in the description above the equality , we obtain the independent set polytope which is the convex hull of the incidence vectors of the independent sets. We assume that the matroid is given by an independence oracle that takes as input a subset A ⊆ 2 E and returns whether or not A ∈ I. Given an independence oracle, we can determine in time polynomial in |E| and the complexity of the oracle, whether a set is a basis and what the rank of a set is. Further, there exists a separation oracle for P M that runs in time polynomial in |E| and the complexity of an independence oracle. This follows from the fact that the most violated inequality problem can be solved in time polynomial in |E| and the complexity of an independence oracle. The most violated inequality problem takes as input a vector x ∈ Q m and returns whether or not x ∈ P, and if not, it returns a subset A for which r (A) − x(A) is minimized, see, e.g., [47,Section 40.3].
Given two matroids M 1 and M 2 on a common ground set E, the polytope is the convex hull of the common bases of matroids M 1 and M 2 , see, e.g., [47,Corollary 41.12d]. It follows directly that P M 1 ,M 2 also has a separation oracle which runs in time polynomial in |E| and the complexity of the independence oracles for M 1 and M 2 .
polytope of the joint set of polytopes has the IDP and box-TDI property. As we will show, this problem is equivalent to finding a minimizer of Rosenthal's potential.

General framework
Let n, m, r ∈ N be fixed and define N = [n]. Let f e : N → R be a convex function for every e ∈ [m], A ∈ {0, ±1} r ×m a matrix and b i ∈ Z r a vector for every i ∈ N .
The elements of the vector x i are indexed by x i,e for e ∈ E. We consider the following problem: In order to solve this problem, we will use the aggregation/decomposition framework of Del Pia et al. [16]. In particular, if we assume that the aggregation polytope P N = i P i has the integer decomposition property, we can use a two-step approach in which we first compute a solution minimizing the aggregation problem and then decompose the resulting solution into a solution for (P) (which is possible because of the IDP property). Throughout this section, we assume that the aggregation polytope P N is a welldescribed polytope (P N ; m, φ) (as defined in Sect. 2.2) for which we have a separation oracle. Further, all operations are performed on numbers whose encoding length is bounded by a polynomial in φ + c (see Remark 2.2). Theorem 3.1 Let (P i ) i∈N be as defined above and suppose that the aggregation polytope P N = i P i is a well-described polytope that has a box-TDI description. Then (Z ) can be solved optimally using at most poly(n, m, φ) arithmetic operations and separation oracle calls.
In particular, note that Theorem 3.1 implies that we can solve (P) efficiently if we can decompose a solution of (Z ) into a solution for (P) using at most poly(n, m, φ) arithmetic operations and separation oracle calls. We prove Theorem 3.1 in the remainder of this section.
By extending f e for every e ∈ [m] to a convex function that is also defined at zero, 7 we can write for every positive y e ∈ N, 1)).
Because f e is convex, the function c e : N → R defined by c e (k) = f e (k) − f e (k − 1) is non-decreasing, and, in fact, solving (Z ) is equivalent (by leaving out the constantvalued sum over the f e (0)) to solving This is a well-known reduction (see, e.g., [33] and references therein). We next show (using a column-doubling trick similar as in [15,23]) how to reduce (Z ) to a linear program. This idea is (implicitly) also exploited in the works [16,21]. Here we use the same idea for our (more general) setting. We is an optimal solution for (R), then the vector f defined by f e = n k=1 h k e is feasible for (Z ). Note that here we implicitly exploit that the functions c e are non-decreasing.
We show that the integer program (R) can be solved efficiently.  if and only if f ∈ P N . We now give a separation oracle for Q N . Let y = (y k e ) ∈ Q mn be an arbitrary rational vector and let f be defined as above with respect to y. We use the separation oracle of P N to check if f ∈ P N or not. If f ∈ P N , then also y ∈ Q N and we are done. Otherwise if f / ∈ P N the oracle returns a vector a ∈ Q m such that a T x < a T f for all x ∈ P N . In particular this means that (a T , a T , . . . , a T )z < (a T , a T , . . . , a T )y for all z = (z k e ) ∈ Q N . Thus, we obtain a separation oracle for Q N .
We conclude with an analysis of the running time. It is not hard to see that Q N has a facet complexity that is at most a polynomial (in m and n) factor larger than φ. The claim that we only need a number of arithmetic operations and calls to a separation oracle for P N , that is polynomial in n, m, and φ, now follows immediately from Theorem 2.1. This concludes the proof. Although we can solve (R) in (strongly) polynomial time as stated in Lemma 3.1, this does not directly imply that we can also solve (P) in (strongly) polynomial time. The IDP property guarantees that we can always decompose a solution to (R) into a solution of (P). However, to the best of our knowledge, there is no universal algorithm that can perform integer decomposition of an arbitrary polytope satisfying the IDP using at most poly(n, m, φ) arithmetic operations and separation oracle calls (even in the symmetric case when all right-hand side vectors b i are the same). So whether this decomposition can be done efficiently has to be investigated on a case-by-case basis. As we show next, such a decomposition can always be done in polynomial time if a slightly stronger integer decomposition property holds. Here, we focus on the symmetric case when b i = b j = b for all i, j ∈ N ; but these arguments can be extended to the non-symmetric case as well.
We say that a polytope P satisfies the middle integral decomposition property (MIDP) [37] if for n ∈ N and w ∈ Z m , the polytope P ∩ (w − (n − 1)P) is integral.
If this property is satisfied, the decomposition algorithm of Baum and Trotter [6] can be used to perform the integer decomposition (as described in the proof below).

Theorem 3.2 If the polytope P = {x : Ax ≤ b} satisfies MIDP and box-TDI. Then an optimal solution to (P) can be computed using at most poly(n, m, φ) arithmetic operations and separation oracle calls.
Proof Let f be a solution to (R). Then f can be decomposed into n integer solutions in P by using the following decomposition algorithm by Baum and Trotter [6]: We start by computing an integral vector x 1 ∈ P ∩ ( f − (n − 1)P). By the middle integral decomposition property, we know that P ∩( f −(n −1)P) is integral, and therefore we can find an integral (extreme) point in time polynomial in n, m, φ and the complexity of a separation oracle of P (using similar arguments as in the proof of Theorem 3.1). Using the same arguments, we can then find a vector x 2 ∈ P ∩ (( f − x 1 ) − (n − 2)P). By repeating this procedure, we find the desired decomposition in the stated running time.

Minimizing Rosenthal's potential
We use the results obtained in the previous section and apply them to the problem of computing a minimizer of Rosenthal's potential function for a polytopal congestion game Γ = (N , E, (S i ), (c e )).
In particular, the following theorem follows immediately from Theorem 3.1 by observing that for polytopal congestion games, computing a load profile minimizing Rosenthal's potential is equivalent to the program (Z ) stated above.

Theorem 3.3 Let Γ = (N , E, (S i ), (c e )) be a polytopal congestion game whose aggregation polytope P N satisfies IDP and box-TDI. Then a feasible load profile minimizing Rosenthal's potential can be computed using at most poly(n, m, φ) arithmetic operations and separation oracle calls.
As noted in Remark 3.1, if the facet-complexity φ can be upper bounded by a polynomial in n and m, and if P N has a separation oracle running in strongly polynomial time, then a feasible load profile minimizing Rosenthal's potential can be computed in strongly polynomial time.
Note that by applying Theorem 3.3 we obtain a feasible load profile. We can turn such a load profile into a feasible strategy profile (corresponding to a pure Nash equilibrium) if the integer decomposition can be done in (strongly) polynomial time. As noted before, a universal algorithm for this seems elusive and whether this can be done efficiently has to be verified case-by-case.
Also here, if we make the stronger assumption of having the middle integral decomposition property, we obtain the following result for symmetric games. Γ = (N , E, S, (c e )) be a symmetric polytopal congestion game for which the common polytope P satisfies MIDP and box-TDI. Then a feasible strategy profile minimizing Rosenthal's potential can be computed using at most poly(n, m, φ) arithmetic operations and separation oracle calls.

Theorem 3.4 Let
We remark that all results in this section also hold for computing a social optimum of congestion games with weakly convex cost functions, since this problem can be reduced to computing a global optimum of Rosenthal's potential (we refer to [16] for more details).

Price of stability
In this section, we will analyze the quality of a minimizer of Rosenthal's potential compared to a socially optimal outcome in terms of the price of stability.
Recall that ρ(D) is defined as in (2.3) and refers to the price of anarchy of nonatomic network congestion games with cost function in class D. The following is the main result of this section.

Theorem 4.1 Let Γ = (N , E, (S i ), (c e )) be a polytopal congestion game satisfying IDP and box-TDI with cost functions in class D. Then POS(Γ ) ≤ ρ(D). Further, this bound is (asymptotically) tight even for symmetric singleton congestion games, if D contains all non-negative constant functions and is closed under dilations.
The remainder of this section is devoted to the proof of Theorem 4.1. We first introduce a novel structural property, which we term the symmetric difference decomposition property. We then show that the IDP and box-TDI properties of the aggregation polytope are sufficient to establish that the polytopal congestion game satisfies the symmetric difference decomposition property. This in turn allows us to adapt the proof of Fotakis [24] to bound the price of stability of these games.

Symmetric difference decomposition property
Our novel property is defined as follows: As an example, let us consider symmetric network congestion games, where the common strategy set of all players is the set of all directed simple s, t-paths in some directed graph G = (V , A) with s, t ∈ V . Here each feasible load profile corresponds to an integral feasible s, t-flow of value n = |N |. The symmetric difference of two flows f and g can be written as the sum of unit circuit flows on cycles. 8 The incidence vectors of these unit circuit flows correspond to the vectors a k in Definition 4.1.
The following theorem establishes the symmetric difference decomposition property for polytopal congestion games satisfying IDP and box-TDI.

Theorem 4.2 If the aggregation polytope P N of a polytopal tuple (N , E, (S i )) satisfies IDP and box-TDI, then the tuple has the symmetric difference decomposition property.
Proof We start by adding slack-variables to the system Ay ≤ i∈N b i describing P N . Note that by Proposition 2.2(ii) box-TDI is preserved under adding slack variables. As a result, we obtain the polytope for which its describing system is box-TDI. Also, Q N is integral.
Let f and g be two feasible load profiles with f = g. By Proposition 2.3, we have f , g ∈ P N . Therefore, there are non-negative integral slack vectors τ, σ such that f = ( f , τ ), g = (g, σ ) ∈ Q N . Observe that τ and σ are integral because of the integrality of A, i b i and f and g.
Note that the pairs f = ( f , τ ) and g = (g, σ ) are vectors in Z m+r since A is an r × m-matrix. Let c, d ∈ Z m+r be vectors defined by c j = min{ f j , g j } and d j = max{ f j , g j } for j = 1, . . . , r + m, and let B be the integral box defined by B = {z : c ≤ z ≤ d} ⊆ R m+r . We first prove the following claim. Note that f , g ∈ Q N ∩ B. Further, both f and g are extreme points of this polytope because they are extreme points of the box B. We now fix some edge of Q N ∩ B containing f . Such an edge must exist because Q N ∩ B contains at least two elements (since f = g ). Let (a 1 ) = (a 1 , μ 1 ) be the non-zero {0, ±1}-vector describing the direction of the edge. 9 Since Q N ∩ B is an integral polytope, we can show that f +(a 1 ) ∈ Q N ∩ B. To see this, let h(λ) = f +λ·(a 1 ) be a parametrization of the edge for some range 0 ≤ λ ≤ λ * , where h = h(λ * ) is the other extreme point of the edge (a 1 ) . Since f is integral and (a 1 ) a {0, ±1}-vector, it must be that λ * is a strictly positive integer. Thus, f + (a 1 ) ∈ Q N ∩ B, as claimed.
It follows that A( f + a 1 ) + (τ + μ 1 ) = i b i . We have Aa 1 + μ 1 = 0 because A f + τ = i b i . Moreover, by construction of the box B it follows that for j = 1, . . . , r + m, and (a 1 ) j = 1 ⇒ g j − f j > 0. (4.2) Exploiting that Aa 1 + μ 1 = 0, it now also follows that g − (a 1 ) j ∈ Q N ∩ B. To see this, note that Moreover, we also have g − (a 1 ) ≥ 0 by construction, since if (a 1 ) j = 1 for some j then g j > f j ≥ 0, so in particular g j − 1 ≥ 0 (because of the integrality of g j ).
We can now apply the same argument to the vectors f and g − (a 1 ) in order to obtain a vector (a 2 ) satisfying (4.2) and for which f +(a 2 ) , g −(a 1 ) −(a 2 ) ∈ Q N . Repeating this procedure we find vectors (a 1 ) , . . . , (a q ) satisfying (4.2), and such 10 We argue that this process terminates. For the -th step of this procedure, we have by construction of the (a k ) where || · || 1 is the L 1 -norm. Since f , g and the a k are all integral this guarantees that the expression T ( ) decreases by at least one in every step. We conclude the proof by showing that f and g can be decomposed according to Definition 4.1. We have (a k ) = (a k , μ k ) as defined before. It then follows that a 1 , . . . , a q are vectors satisfying (4.1) such that g − f = q k=1 a k with f + a k ∈ P N for k = 1, . . . , q. Note that a k might be the zero-vector, if (a k ) only contained nonzero elements in the part of the vector corresponding to slack variables. These a k can be left out.
It remains to show that f + a k corresponds to a feasible strategy profile for k = 1, . . . , q. This follows directly from the fact that P N has the IDP. The decomposition yields the strategies of the players.

Upper bound on the price of stability
We prove the upper bound on the price of stability stated in Theorem 4.1. We first prove the following lemma, whose proof relies on the symmetric difference decomposition property. We can now prove the upper bound on the price of stability.
Proof (Theorem 4.1, upper bound) The upper bound proof follows a similar line of arguments as the proof of Lemma 3 in [24]. We repeat the arguments here for the sake of completeness. Let f be a minimizer of Rosenthal's potential and let g be an arbitrary feasible load profile. Note that f is a pure Nash equilibrium.
Consider a resource e ∈ E with f e > g e . We have where the inequality follows because c e is non-decreasing and f e +1 ≤ g e by assumption.
Combining these inequalities, we obtain where the first inequality follows from (4.4) and (4.5)

Lower bound on the price of stability
We complete the proof of Theorem 4.1 by showing that the stated bound is asymptotically tight.
Proof (Theorem 4.1, lower bound) Our lower bound construction is similar to the one used by Correa et al. [14] to show tightness of the price of anarchy bound ρ(D) for non-atomic network congestion games with cost functions in class D. But we need some adjustments to make it work for atomic (unsplittable) congestion games. Let d ∈ D and a ≥ b > 0 be chosen arbitrarily. We show that there exists an instance whose price of stability is arbitrarily close to Because of the continuity of d, we can take a, b ∈ Q without loss of generality. Let M ∈ N such that Ma, Mb ∈ N. Consider the instance depicted in Fig. 1 with Ma players. Note that this is a symmetric singleton congestion game instance. Further, note that c 1 ∈ D because it is a constant function and c 2 ∈ D because D is closed under dilations. A Nash equilibrium is given by the flow f = ( f 1 , f 2 ) = (0, Ma). A feasible (not necessarily socially optimal) flow is given by g = (g 1 , We have In order to get a lower bound on the price of stability, we make f the unique Nash flow of this game. This can be done by adding a small enough > 0 to the cost function of arc a 1 , i.e., we take c 1 (x) = d(a) + . Doing the same analysis and sending → 0, then shows that we can get arbitrarily close to the expression in (4.6).

Applications
We now give several examples of polytopal congestion games for which the aggregation polytope has the (middle) integer decomposition property, is box-TDI and admits an efficient separation oracle. As a consequence, our results on the price of stability (Theorem 4.1) and the computation of Rosenthal's potential minimizer (Theorems 3.3, 3.2) apply.

Remark 5.1
In all applications considered below, the facet complexity φ of the welldescribed (aggregation) polyhedra are polynomially bounded in n and m. In particular, all the matrices A considered are in fact {0, ± 1}-valued matrices, and the right-hand side vectors b i are always integral valued.

Common source network congestion games
In a common source network congestion game we are given a directed graph G = (V , A) and a source s ∈ V . The strategy set of player i ∈ N is the set of all directed s, t i -paths for some t i ∈ V . Ackermann et al. [1] already showed that one can compute a global optimum of Rosenthal's potential function for these games. We outline how this case can be cast in our framework. The strategies of player i can be described by a polytope P i = {x : where A is the arc-incidence matrix of the network G, and b is the vector with (b i ) s = 1, (b i ) t i = −1 and zero otherwise. 11 The aggregation polytope is then P N = {y : Ay = i∈N b i , 0 ≤ y ≤ n}. Any feasible load profile minimizing Rosenthal's potential can be decomposed efficiently into a feasible strategy profile, using a similar argument as in [1]. Further, the describing system of P N is totally unimodular and thus box-TDI. 12

Symmetric totally unimodular congestion games
Symmetric totally unimodular congestion games [16] capture a wide range of combinatorial congestion games. Here the common strategy set of the players is described by a polytope P = {x : Ax ≤ b} with a totally unimodular r × m-matrix A and an integral vector b. In particular, such a system satisfies the IDP and is box-TDI: The integer decomposition property was shown in [6]. We argue that the system is box-TDI. The constraint matrix describing the intersection of P with {x : c ≤ x ≤ d} for c, d ∈ Q m is again totally unimodular [48]. Any totally unimodular system is TDI (see, e.g., [46, Section 22.1]), and therefore the system We conclude that the system Ax ≤ b is box-TDI. If (as in [16]) the parameter r is considered as part of the input size as well, then there is a trivial (strongly) polynomial separation oracle that simply checks all inequalities of the system Ax ≤ b. For all combinatorial applications considered in [16] (i.e., network, matching, edge cover, vertex cover and stable set congestion games on bipartite graphs, and their respective extensions to the maximum (or minimum) cardinality versions) the parameter r is actually polynomially bounded in n and m, so then this assumption is justified.

Non-symmetric matroid congestion games
In a non-symmetric matroid congestion game Γ = (N , E, (S i ), (c e )), the strategy set of player i is given by the bases B i of a matroid M i = (E, I i ) for i ∈ N . 13 The incidence vectors of the bases of B i can be described by the base matroid polytope as introduced in the preliminaries. That is, for every player we have a polytope of the In particular, it follows that the aggregation polytope is given by The polytope P N has a box-TDI description, which follows from [47,Theorem 46.2]. 14 The integer decomposition property is also satisfied (see, e.g., [47,Corollary 46.2c]). Using similar arguments as for r -arborescences (see below), we derive a strongly polynomial time algorithm to compute a minimum of Rosenthal's potential.
We also prove a result that is of independent interest: For non-symmetric matroid congestion games, we can derive a local search algorithm to compute a global minimum of Rosenthal's potential in strongly polynomial time. This local search algorithm can be seen as a natural generalization of best response dynamics (which are known to arrive at a local optimum in polynomial time [1]). Our algorithm is based on a combinatorial approach to compute the symmetric difference decomposition for these games (which is of a specific form). The details are given in Appendix A.

Symmetric matroid intersection congestion games
In symmetric matroid intersection congestion games Γ = (N , E, S, (c e )) the (symmetric) strategy set S of all players is given by the common bases of two matroids M 1 = (E, I 1 ) and M 2 = (E, I 2 ) over a common element set E. The polytope P of the players corresponds to the common base polytope P M 1 ,M 2 as defined in (2.4), i.e., 13 Our framework also captures the independent set congestion games studied in [16]. However, we mainly focus on non-negative cost functions here (because of the inefficiency measures) and then these games are trivial. 14 To see this, we use the fact that the rank function is submodular and that the sum of submodular functions is again submodular. We can then apply Theorem 46.2 in [47].
The describing system of P is box-TDI (see, e.g., [47,Corollary 41.12e]). Further, as noted in the preliminaries there is a separation oracle for P (and thus P N ) which runs in time polynomial in |E| and the complexity of the independence oracles for M 1 and M 2 . However, it is not precisely known for which cases of matroid intersection the integer decomposition property holds. D = (V , A) be a directed graph. An rarboresence in D is a directed spanning tree rooted in r ∈ V . The set of all r -arboresences can be seen as the set of common bases of two matroids. The first matroid M 1 is the graphic matroid on the undirected graph D = (V , A ), where A is the set formed by replacing every directed arc in A with its undirected version, i.e., A = {{u, v} : (u, v) ∈ A}. The second matroid M 2 is the partition matroid in which independent sets are given by sets of arcs for which there is at most one incoming arc at every node v = r (we assume there are no incoming arcs at r ). Thus, the common base polytope P M 1 ,M 2 describes the arborescences of D and we let P = P M 1 ,M 2 . We argue that there is a strongly polynomial time algorithm for computing a minimum of Rosenthal's potential. First note that the describing system of P M 1 ,M 2 is box-TDI (see [47,Corollary 41.12e]). Also, P M 1 ,M 2 satisfies the integer decomposition property, which follows from Edmonds' Disjoint Arborescences Theorem [18]. By Theorem 3.3, we can compute a minimum of Rosenthal's potential in time polynomial in n, m, i b i and the complexity of a separation oracle for P M 1 ,M 2 . The elements of the vector b are bounded by |E|, by the definition of the rank functions. Moreover, it is not hard to see that there exist independence oracles for both M 1 and M 2 that run in time polynomial in m. These oracles can be used for separation oracles as described in the preliminaries. It is not hard to see that if both base matroid polytopes have a polynomial time separation oracle, then the intersection of these polytopes has one too. This shows that there is an algorithm for computing an optimal feasible load profile in time polynomial in n and m. Integer decomposition can also be done in time polynomial in n and m [28].

Example 5.2 (Intersection of strongly base-orderable matroids)
A matroid M = (E, I) is strongly base-orderable if for every pair of bases B 1 , B 2 ∈ B there exists a bijection τ : B 1 → B 2 such that for every X ⊆ B 1 , we have B 1 − X + τ (X ) ∈ B. As in the previous example, a box-TDI description follows from [47,Corollary 41.12e]. It is also known that the independent set polytope of the intersection of strongly baseorderable matroids has the integer decomposition property [37, Theorem 5.1]. 15 6 Bottleneck congestion games occupies. Formally, the cost of player i ∈ N under strategy profile s = (s 1 , . . . , s n ) is given by C i (s) = max e∈s i c e (x e (s)).
Harks et al. [32] give a dual greedy algorithm to compute a strong equilibrium, which uses a strategy packing oracle as a subroutine (see Appendix B for details). They give efficient packing oracles for symmetric network congestion games, nonsymmetric matroid congestion games and (a slight generalization of) r -arborescences. In particular, this leads to polynomial time algorithms for computing a strong equilibrium in these cases.
We adapt their algorithm to compute a load profile of a strong equilibrium for bottleneck polytopal congestion games satisfying the IDP and box-TDI property.
) be a polytopal bottleneck congestion game whose aggregation polytope P N satisfies IDP and box-TDI. Then a load profile of a strong equilibrium can be computed using at most poly(n, m, φ) arithmetic operations and separation oracle calls.
We first need to adapt the definition of the strategy packing oracle of [32] (see Appendix B) to load profiles. Below, we assume that P N is an aggregation polytope of a polytopal congestion game. Our adaptation of the dual greedy algorithm is given in Algorithm 1. Although the ideas are similar to the ones in [32], our algorithm only works with load profiles. In particular, we do not have to explicitly compute decompositions of feasible load profiles in intermediate steps of the algorithm, which (significantly) improves the running time. Intuitively, our algorithm works as follows. We start with capacities of n on every resource. In every step we pick a resource e ∈ L with maximum cost among all resources that are called loose, and check whether there is a feasible load profile if we reduce the capacity on e by one. If this is not possible, we remove e from L and add e to the set T of so-called tight resources. Note that after the algorithm has terminated, all resources are in the set T .
The following lemma shows that the load profile output by our algorithm corresponds to a strong equilibrium. Its proof is similar to the correctness proof of the dual greedy algorithm by Harks et al. [32]. to the load profile f . We define σ e = {i ∈ N : e ∈ s i } as the set of players using resource e. Moreover, we set N 1 = σ 1 , and define We show that players in N 1 will never participate in a coalitional deviation in which every player strictly improves.
Let D ⊂ N be a coalition of players that can profitably deviate to strategy profile t = (t D , s −D ). Remember that x e (t) denotes the number of players using resource e in strategy profile t. Let (u e ) e∈E be the capacity vector for which the load profile oracle returns no for the first time in line 5. We consider two cases: Case 1 x e (t) ≤ u e for all e ∈ E. In this case, there must be |N 1 | players using resource 1; otherwise, the oracle would have returned yes because the load profile of t would have been feasible for the capacities (u e ). Further, for all players i ∈ N 1 , we have C i (s) = c e (x e (s)), which is in particular the highest player cost in the strategy profile s. In particular, this implies that if a player in N 1 would strictly improve, then she cannot use resource 1 in t. This means that another player is now using resource 1 in t, but that player can never have strictly better cost than it had in s.
Case 2 x e (t) > u e for some e ∈ E. Using similar arguments, we can show that x 1 (t) < u 1 if some player in N 1 is also part of D (since c 1 (x 1 (s)) is the maximum cost resource in s). Since the algorithm iteratively reduces the capacities of resources with maximum cost, we must have that c e (x e (t)) ≥ c 1 (u 1 ). Further, since x e (t) > u e , at least one player in D must be using resource e in t. But this player cannot have strictly improved then.
We can now use induction to show that no player in N j will ever participate in a coalitional deviation. Assume that the players in N 1 ∪· · ·∪ N j−1 will never participate in a coalitional deviation. By using similar arguments as above, we can show that the players in N j will also never participate in a coalitional deviation.
Proof (Theorem 6.1) By Lemma 6.1, Algorithm 1 computes a load profile of a strong equilibrium in time polynomial in n, m and the complexity of a load profile oracle.
Based on a separation oracle of P N , we now show that there is an efficient load profile oracle. Given that P N has a box-TDI description, it follows that the polytope {y : Ay ≤ i∈N b i } ∩ {y e = u e : e ∈ T } ∩ {0 ≤ y e ≤ u e : e ∈ L} is integral. We can then use a separation oracle for P N to find an integral vector in this polytope using at most poly(n, m, φ) arithmetic operations and separation oracle calls. This concludes the proof.
Once we have obtained the feasible load profile, we can use an integer decomposition algorithm to find the corresponding strategies of the players. If the integer decomposition can be done within the same time bounds as stated in Theorem 6.1, we obtain a (strongly) polynomial algorithm for computing a strong equilibrium in a polytopal bottleneck congestion game. In particular, this applies to all applications mentioned in Sect. 5. We end this section by showing that for matroid bottleneck congestion games, we can use our techniques from the previous sections to derive an upper bound on the strong price of stability (SPoS).
The proof of the following theorem exploits that Algorithm 1 in fact computes a global optimum of Rosenthal's potential in the case of matroid bottleneck congestion games.

Theorem 6.2 Let Γ = (N , E, (S i ), (c e )) be a non-symmetric matroid bottleneck congestion game with cost functions in class D. Then SPoS(Γ ) ≤ ρ(D).
Proof Let f be the load profile returned by the algorithm. f is a strong equilibrium by Lemma 6.1. We prove that f is also a global optimum of Rosenthal's potential. We then obtain a bound of ρ(D) on the strong price of stability by using similar arguments as in the proof of Theorem 4.1.
Suppose for contradiction that f is not a global optimum. Then there exist resources a and b such that c a ( f a ) > c b ( f b + 1) and for which the load profile f , defined by f a = f a − 1, f b = f b + 1 and f e = f e for all e ∈ E\{a, b}, is feasible. This claim follows from similar arguments as given in the proof of Theorem A.2 (Appendix A). Now, consider the point in execution of the algorithm where the capacity of resource a was fixed at f a . Since c a ( f a ) > c b ( f b + 1), we must have had f b + 1 ≤ u b at that point (since the algorithm iteratively reduces the capacity of resources with maximum cost). But this contradicts the fact that the load profile oracle returned no at this point; to see this note that f would have been a feasible load profile for the capacity vector in which u a was reduced by 1 (as in line 4 of the algorithm).

Concluding remarks
We identified two structural properties of polytopal congestion games which are sufficient to efficiently compute a global minimizer of Rosenthal's potential: IDP and box-TDI. Further, we proved that the computed Nash equilibria obtain a social cost approximation guarantee of ρ(D) if the cost functions belong to class D. As we showed, this also establishes a tight bound on the price of stability for polytopal congestion games satisfying IDP and box-TDI. Intuitively, these games thus inherit the social cost approximation guarantee of non-atomic network routing games [13]. In our inefficiency proofs, we crucially exploited the symmetric difference decomposition property of polytopes; we believe that this new notion might be useful also in other contexts. Finally, we provided several examples of classes of congestion games that can be cast into our framework and showed that some of the results also extend to bottleneck congestion games.
For future work it would be interesting to see whether our techniques extend to other classes of games, e.g., to special cases of weighted congestion games. Note that, although having an exact potential function turned out to be convenient in this paper, our approach per se is not limited by this requirement. In fact, it would be interesting to see how different (ordinal) potential functions impact the inefficiency guarantee of the respective global potential function minimizers.
We feel that in general the power of polyhedral techniques to compute good Nash equilibria in games is not well-understood and worth being investigated more intensively. In particular, research in this direction opens up an intriguing connection between the fields of polyhedral combinatorics and computational game theory.
Let s = (s 1 , . . . , s n ) and t = (t 1 , . . . , t n ) be two feasible strategy profiles with (feasible) load profiles f and g, respectively. We need the following result for matroids. In particular, the graph G can be decomposed into K edge-disjoint paths (or chains) (P j ) j=1,...,K with the property that they start at an overloaded resource e with f e > g e and end at an underloaded resource e with g e > f e (and possibly some cycles). If follows that we can write x j , where for each path P j = (a j , . . . , b j ) we have The following proposition will be used below. We implicitly label every a ∈ A with a player i, namely the player for which a ∈ A M i (I i ). For a path Q = (e 1 , . . . , e p ) in D, we denote by A i Q the set of arcs corresponding to player i, i.e., A i Q = {a ∈ Q : a = (e j , e j+1 ) has label i}.
Further, we let T i Q and H i Q contain the tails and heads of the arcs in A i Q , respectively, i.e., We let σ i Q : T i Q → H i Q denote the bijection that maps every tail to its head. We say that a shift over the path Q is feasible, if for i = 1, . . . , n, it holds that I i −T i Q + H i Q ∈ I i . 16 Let us now come back to the paths P j . By definition of D(s 1 , . . . , s n ), every path P j is contained in the graph D(s 1 , . . . , s n ). In particular this means that there is at least one path from a j to b j . Then there is also a shortest path (in terms of number of arcs) from a j to b j . By Lemma A.1 (given below), the load profile f + x j is feasible since we can shift players over some shortest (a j , b j ) path Q j such that the resulting bases are again feasible for all players. That is, we apply Lemma A.1 with the bases I i = s i .
It remains to prove Lemma A.1. In particular, the function σ i as defined above gives a perfect matching on I ΔJ . We claim that σ i is the unique perfect matching between T i and H i . It follows from Proposition A.2 that J ∈ I. Let ρ be an arbitrary perfect matching. Let (v, w) be the first arc on Q corresponding to player i. If ρ(v) = w, then this means that Q was not a shortest (a, b)-path, so we must have ρ(v) = w. A similar argument can be given for the second arc corresponding to i, then the third arc, etc. We find that ρ = σ i , and this concludes the proof.

A.2 Local search algorithm
We can derive a local search algorithm based on the analysis above. We first introduce some terminology. We say that the difference between two strategy profiles s Note that by definition the load profiles f and f of two neighboring strategy profiles s, s with s ∈ N (s), respectively, must differ by one on exactly two resources. However, this load difference might not be achievable by a single-player deviation. In fact, it is not hard to construct examples, where a sequence of unilateral deviations is needed to reach s from s. We prove the following lemma.

Lemma A.2 A strategy profile s minimizes Rosenthal's potential if and only if s is a local minimum of Rosenthal's potential with respect to the neighbourhood N (s).
We next show that, given an arbitrary strategy profile s, we can determine in polynomial time whether there is an improving move with respect to the altered neighborhood defined in (7.1).  D(s 1 , . . . , s n ), which can be constructed in strongly polynomial time using the polynomial independence oracles. By construction, we know that every shortest path yields a new strategy profile s with f a = f a − 1 and f b = f b + 1 (and all the other loads remain the same). Note that s can be constructed in polynomial time.

Lemma A.3 Assume that for every player i ∈ N we have a polynomial independence
Exploiting the insights above, we conclude that we can find a global optimum of Φ in strongly polynomial time as follows: Starting from an arbitrary strategy profile s 0 , iteratively perform local improvement steps with respect to the neighborhood N (·) as defined in (7.1) until a local optimum is reached. By Lemma A.2, the final strategy profile is a global optimum of Rosenthal's potential. Further, by Lemma A.3, each improving move can be done in polynomial time. The fact that this local search takes only a strongly polynomial number of steps follows from arguments similar to the ones in [1] (showing that any better-response sequence in matroid congestion games has polynomial length).

A.3 Example
We give an example illustrating the analysis above.
Let us consider the (non-symmetric) game in Fig. 2. The matroid of player a is the graphic matroid on the complete graph K 4 (with spanning trees as bases). The matroid of player b is a 1-uniform matroid on the set E 2 = {{1, 4}, {1, 2}}. The strategies of the players in s are given by the bold edges, and the strategies in t by the dotted edges. Basically, the dual greedy algorithm (Algorithm 2) works as follows: In every step of the algorithm, we have capacity constraints (u e ) e∈E for which it is known that there exists a strategy profile respecting these capacities. The algorithm then selects a resource e with maximum cost (line 3) and checks if there exists a feasible strategy profile for the capacities in which u e is decreased by 1. If so, then u e is updated and we continue with the new vector of capacity constraints. Otherwise, the strategies of the u e players using resource e are fixed (and all variables are updated accordingly). We say that resource e becomes frozen. Note that the players of which the strategies are fixed do not change anymore; these players are frozen too. ALGORITHM 2: Dual greedy algorithm of Harks et al. [32].