1 Introduction

1.1 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.Footnote 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 \le 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 PLS-complete 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 \(\rho (\mathcal {D})\), where \(\rho (\mathcal {D})\) is a bound on the price of anarchy for non-atomic network congestion games with cost functions in class \(\mathcal {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 \(\mathcal {D}\) is at most \(\rho (\mathcal {D})\). For example, this parameter equals 4/3 for the class of affine functions and \((27 + 6\sqrt{3})/23 \approx 1.63\) for quadratic functions. Further, Fotakis [24] also shows that for symmetric network congestion games on extension-parallel graphs,Footnote 2 every Nash equilibrium is a Rosenthal minimizer and thus the upper bound of \(\rho (\mathcal {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.

1.2 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 \(P_i = \{x_i : Ax_i \le b_i\}\), 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 = \sum _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. (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 \(\sum _i b_i\) and the complexity of a separation oracle for the aggregation polytope.

  2. (2)

    We show that the price of stability of polytopal congestion games satisfying IDP and box-TDI is bounded by \(\rho (\mathcal {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. (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. (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 \(\rho (\mathcal {D})\) times the optimal social cost.

1.3 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 \(\mathcal {D}_d\) of polynomial functions of maximum degree d is well-understood (see [10]) and grows like \(d+1\). However, it is known that \(\rho (\mathcal {D}_d) \approx d/\log (d)\) for large d (see [44]). We thus obtain improved bounds for polytopal congestion games. Further, \(\rho (\mathcal {D})\) is well-understood for various classes of cost functions \(\mathcal {D}\) and we can import these bounds without further analysis. For example, an exact (closed form) expression is known for \(\rho (\mathcal {D}_d)\) (see preliminaries).

Our upper bound of \(\rho (\mathcal {D})\) on the price of stability is (asymptotically) tight even for symmetric singleton congestion games if the class of cost functions \(\mathcal {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].

1.4 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 \le 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 \le 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, \pm ~ 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 single-commodity 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 extension-parallel 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 \(\frac{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.

2 Preliminaries

In this section, we introduce all the relevant notions and concepts that will be used subsequently.

2.1 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 \subset \mathbb {R}^m\) is the convex hull of a finite set \(\{q_1,\dots ,q_s\} \subset \mathbb {Q}^m\), or, alternatively, \(P = \{x : Ax \le b\}\) is a bounded set described by a system of rational inequalities.Footnote 3 For a non-zero vector c with \(\delta = \max \{c^\mathsf {T}x : Ax \le b\}\), the affine hyperplane \(\{x : c^\mathsf {T}x = \delta \}\) 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 \cap \{x : c \le x \le d\}\) for arbitrary integral c and d, yields an integral polytope.

A matrix \(A \in \{0,\pm 1\}^{r \times m}\) is totally unimodular (TUM) if the determinant of each square submatrix of A is in \(\{0, \pm 1\}\). If A is totally unimodular and \(b \in \mathbb {Z}^m\) is an integer vector, then the polyhedron \(P = \{x : Ax \le b\}\) is integral [46, Theorem 19.1].

The work [19] introduced the powerful notion of total dual integrality. A rational system \(A x \le b\) with \(A \in \mathbb {Q}^{r \times m}\) and \(b \in \mathbb {Q}^r\) is totally dual integral (TDI) if for every integral \(c \in \mathbb {Z}^m\), the dual of minimizing \(c^\mathsf {T}x\) over \(A x \le b\), i.e.,

$$\begin{aligned} \max \{y^\mathsf {T}b : y \ge 0,\ y^\mathsf {T}A = c^\mathsf {T}\}, \end{aligned}$$
(2.1)

has an integer optimum solution y, if it is finite. If \(Ax \le b\) is a TDI-system and b is integral, then the polyhedron \(P = \{x : Ax \le 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 \le b\) is box-totally dual integral (box-TDI) if the system \(Ax \le b,\ l \le x \le 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 \le b\) describing a polytope P is box-TDI and b is integral, then P is box-integral.

Proof

By assumption, the describing system \(Ax \le b\) of P is box-TDI. Thus the system \(Ax \le b,\ l \le y \le u\) is TDI for all rational vectors l and u. In particular, \(Ax \le b,\ c \le y \le d\) is TDI for arbitrary integral vectors c and d. Because bc and d are integral, we can conclude that the polytope \(P \cap \{y : c \le y \le d\}\) is integral (see, e.g., [46, Corollary 22.1c]). \(\square \)

We will use the following properties of box-TDI descriptions:

Proposition 2.2

[46, Section 22.5] The following statements are equivalent:

  1. 1.

    The system \(Ax \le b,\, x \ge 0\) is box-TDI.

  2. 2.

    The system \(Ax + \mu = b,\, \mu \ge 0,\, x \ge 0\) is box-TDI.

  3. 3.

    The system \(Ax \le \alpha b,\, x \ge 0\) is box-TDI for all \(\alpha \ge 0\).

  4. 4.

    The system \(a \zeta _0 + Ax \le b\) is box-TDI, where a is a column of A and \(\zeta _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,\pm 1\}\)-vector.Footnote 4

Finally, let \(N = [n]\)Footnote 5 and consider a finite collection of integral polytopes \((P_i)_{i \in 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 \in N\),

$$\begin{aligned} P_i = \{ x_i : Ax_i \le b_i\} \subseteq \mathbb {R}^m. \end{aligned}$$

We define the aggregation polytope \(P_N\) induced by \((P_i)_{i \in N}\) as

$$\begin{aligned} P_N = \bigg \{y : Ay \le \sum _{i \in N} b_i\bigg \} \subseteq \mathbb {R}^m. \end{aligned}$$

The aggregation polytope is said to have the integer decomposition property (IDP) if every integral \(z \in P_N\) can be written as

$$\begin{aligned} z = \sum _{i \in N} z_i, \quad \text {where} \quad z_i \in P_i \cap \mathbb {Z}^m \text { for all } i \in N. \end{aligned}$$

Note that in the symmetric case \(b_i = b_j\) for all \(i,j \in N\) this definition reduces to the integer decomposition property for a polytope \(P_N = nP\) as introduced in [6]. Moreover, if \(P_N\) has the IDP, then indeed \(P_N = \sum _{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.

2.2 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

$$\begin{aligned} \begin{array}{ll} \min&c^\mathsf {T}x \quad \text {s.t.} \quad x \in P \end{array} \end{aligned}$$
(2.2)

for some \(c \in \mathbb {Q}^m\) and polytope \(P \subset \mathbb {R}^m\). We first introduce some additional (computational) notions [31].

The encoding length of an integer \(z \in \mathbb {Z}\), i.e., the space needed to represent z in binary representation, is

$$\begin{aligned} \langle z\rangle = 1 + \lceil \log _2(z + 1)\rceil . \end{aligned}$$

The encoding length of a rational number \(p/q \in \mathbb {Q}\) is \(1 + \lceil \log _2(p + 1)\rceil + \lceil \log _2(q + 1)\rceil \). The encoding length of a vector \(a \in \mathbb {Q}^m\) is \(\langle a \rangle = \sum _{i = 1}^m \langle a_i \rangle \), and the encoding length of an inequality \(a^\mathsf {T}x \le b\) is \(\langle a \rangle + \langle b \rangle \), for \(a \in \mathbb {Q}^m\) and \(b \in \mathbb {Q}\).

For a positive integer \(\phi \), we say that polytope P has facet-complexity at most \(\phi \) if there exists a system of inequalities with rational coefficients describing P such that every inequality has encoding length at most \(\phi \). A triple \((P; m,\phi )\) is called a well-described polytope if the polyope \(P \subset \mathbb {R}^m\) has facet-complexity at most \(\phi \).

Finally, a (strong) separation oracle for P is an algorithm that, given a vector \(y \in \mathbb {Q}^m\), decides whether \(y \in P\) or not, and in the latter case returns a vector \(a \in \mathbb {Q}^m\) such that \(a^\mathsf {T}x < a^\mathsf {T}y\) for all \(x \in 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, \phi )\) specified by a strong separation oracle, and for any given \(c \in \mathbb {Q}^m\),

  1. (i)

    solves (2.2), and

  2. (ii)

    finds an optimum vertex solution of (2.2) if one exists.

The number of elementary arithmetic operationsFootnote 6 and calls of the separation oracle executed by the algorithm is bounded by a polynomial in \(\phi \). All arithmetic operations are performed on numbers whose encoding length is bounded by a polynomial in \(\phi + \langle c \rangle \).

We give two remarks related to Theorem 2.1.

Remark 2.1

For notational convenience, we use \(\textsf {poly}(\cdot )\) 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 \(\phi \) can be upper bounded by a polynomial in m, i.e., \(\phi = \textsf {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 \(\phi + \langle c \rangle \). In all subsequent computational statements relying on Theorem 2.1, we implicitly assume that this property holds.

2.3 Congestion games and Rosenthal’s potential

A congestion game \(\varGamma \) is given by a tuple \((N,E,(\mathcal {S}_i)_{i\in N},(c_e)_{e\in E})\), where \(N = [n]\) is a finite set of players, \(E = [m]\) is a finite set of resources (or facilities), \(\mathcal {S}_i \subseteq 2^{E}\) is a set of strategies of player \(i \in N\), and \(c_e : \mathbb {R}_{\ge 0} \rightarrow \mathbb {R}\) is a cost function of resource \(e \in E\). Unless stated otherwise, the cost functions are assumed to be non-negative and non-decreasing.

For a strategy profile \(s = (s_1,\dots ,s_n) \in \times _i \mathcal {S}_i\), we define \(x_e(s)\) as the number of players using resource e, i.e., \(x_e(s) = |\{i \in N : e \in s_i\}|\). We call \(x(s) = (x_e(s))_{e \in E}\) the load profile corresponding to strategy profile s. More generally, we say that \(y \in \mathbb {N}^m\) is a fesible load profile for the tuple \((N, E, (\mathcal {S}_i)_{i \in N})\) if there is some strategy profile s such that \(y= x(s)\).

The cost of player \(i \in N\) under a strategy profile \(s = (s_1,\dots ,s_n) \in \times _i \mathcal {S}_i\) is given by \(C_i(s) = \sum _{e \in s_i} c_e(x_e(s))\). If \(\mathcal {S}_i = \mathcal {S}_j\) for all \(i,j \in N\), the game is called symmetric. The social cost C(s) of a strategy profile refers to the sum of the players’ individual costs, i.e.,

$$\begin{aligned} C(s) = \sum _{i \in N} C_i(s) = \sum _{e \in E} x_e(s) c_e(x_e(s)). \end{aligned}$$

We say that \(\varPhi : \times _i \mathcal {S}_i \rightarrow \mathbb {R}\) is an exact potential function for a congestion game \(\varGamma \) if for every strategy profile \(s \in \times _i \mathcal {S}_i\), for every player \(i \in N\) and every unilateral deviation \(s'_i \in \mathcal {S}_i\) of i it holds that:

$$\begin{aligned} \varPhi (s) - \varPhi (s_{-i},s_i') = C_i(s) - C_i(s_{-i},s_i'). \end{aligned}$$

Rosenthal [43] shows that

$$\begin{aligned} \varPhi (s) = \sum _{e \in E} \sum _{k=1}^{x_e(s)} c_e(k) \end{aligned}$$

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.

2.4 Polytopal congestion games

A polytopal congestion game \(\varGamma = (N,E,(\mathcal {S}_i)_{i\in N},(c_e)_{e\in E})\) is a congestion game where the set of strategies \(\mathcal {S}_i\) of each player \(i \in N\) is given implicitly by a polytopal representation. More precisely, let \(\mathcal {X}_i\) be the finite set of all incidence vectors of the strategies of player i, i.e., for every \(i \in N\),

$$\begin{aligned} \mathcal {X}_i = \{\chi _i \in {\{0,1\}^m}:{\chi _{ie}} = 1{\text { iff }e} \in s_i{\hbox { for }}s_i \in \mathcal {S}_i\}. \end{aligned}$$

The polytope \(P_i\) representing the strategies of player i is defined as the convex hull of \(\mathcal {X}_i\), i.e., \(P_i = \mathrm {conv}(\mathcal {X}_i) \subseteq [0,1]^m\). We assume that \(P_i\) is given by

$$\begin{aligned} P_i = \{x_i : Ax_i \le b_i\} \subseteq [0,1]^m, \end{aligned}$$

where \(A \in \mathbb {Z}^{r\times m}\) is an integral \(r \times m\)-matrix and \(b_i \in \mathbb {Z}^r\) is an integral vector. Note that \(\mathcal {X}_i = P_i \cap \{0, 1\}^m\). For notational convenience, we subsequently use \(\mathcal {S}_i\) also to refer to the set of incidence vectors \(\mathcal {X}_i\); no confusion shall arise.

As defined above, the aggregation polytope induced by \((P_i)_{i \in N}\) is

$$\begin{aligned} P_N = \bigg \{y : Ay \le \sum _{i \in N} b_i\bigg \} \subseteq [0,n]^m. \end{aligned}$$

We say that \((N,E,(\mathcal {S}_i)_{i \in N})\) is the polytopal tuple given by \((P_i)_{i \in N}\), where \(\mathcal {S}_i = P_i \cap \{0,1\}^m\). If \(b_i = b_j = b\) for all \(i,j \in N\), the tuple is called symmetric and denoted by \((N,E,\mathcal {S})\) where \(\mathcal {S} = P \cap \{0,1\}^m\), with \(P = \{x : Ax \le b\}\). If additionally we equip the tuple with cost functions \((c_e)_{e \in E}\), we call \(\varGamma = (N,E,(\mathcal {S}_i)_{i \in N},(c_e)_{e \in E})\) the polytopal congestion game given by \((P_i)_{i \in N}\). For notational convenience, we often omit the explicit reference of the domain of the indices.

2.4.1 Two main properties: IDP and box-TDI

Let \(\varGamma = (N,E,(\mathcal {S}_i),(c_e))\) 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:

  1. (i)

    \(P_N\) has the integer decomposition property (IDP).

  2. (ii)

    \(P_N\) is box-totally dual integral (box-TDI).

If the aggregation polytope \(P_N\) satisfies both the IDP and box-TDI property, we also say that \(\varGamma \) is a polytopal congestion game satisfying IDP and box-TDI.

Remark 2.3

Note that for a symmetric polytopal congestion games \(\varGamma = (N,E,\mathcal {S},(c_e))\) given by a common polytope P, we have \(P_N = n P = \{y : y/n \in 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,(\mathcal {S}_i))\) and the integral vectors in \(P_N\).

Proposition 2.3

If the aggregation polytope \(P_N\) of a polytopal tuple \((N,E,(\mathcal {S}_i))\) has the IDP, then the feasible load profiles of the tuple correspond precisely to the integral vectors in \(P_N\).

Proof

Let \(s = (s_1,\dots ,s_n) \in \times _i \mathcal {S}_i\) be a strategy profile and let x be the load profile corresponding to s. It follows directly that \(x \in P_N\) by definition of \(P_N\). Moreover, because of the IDP any integral vector z in \(P_N\) can be decomposed as \(z = \sum _{i \in N} z_i\) where \(z_i \in P_i \cap \mathbb {Z}^m\) for all \(i \in 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. \(\square \)

2.5 Inefficiency of equilibria and the smoothness parameter

A strategy profile s is a pure Nash equilibrium if for every player \(i \in N\) it holds that \(C_i(s) \le C_i(s_i',s_{-i})\) for all \(s_i' \in \mathcal {S}_i\). Further, a strategy profile s is a strong equilibrium if for every group of players \(I \subseteq N\) and every deviation \(s'_I \in \times _{i \in I} \mathcal {S}_i\) of the players in I, it holds that \(C_i(s) \le C_i(s'_I, s_{-I})\) for some \(i \in I\).

The price of anarchy (POA) and the price of stability (POS) of a game \(\varGamma \) are defined as

$$\begin{aligned} \text {POA}(\varGamma ) = \frac{\max _{s \in \text {NE}(\varGamma )} C(s)}{\min _{s^* \in \times _i \mathcal {S}_i}C(s^*)} \quad \text {and} \quad \text {POS}(\varGamma ) = \frac{\min _{s \in \text {NE}(\varGamma )} C(s)}{\min _{s^* \in \times _i \mathcal {S}_i}C(s^*)}, \end{aligned}$$

where \(\text {NE}(\varGamma )\) denotes the set of all pure Nash equilibria of \(\varGamma \). For a collection of games \(\mathcal {H}\) we define

$$\begin{aligned} \text {POA}(\mathcal {H}) = \sup _{\varGamma \in \mathcal {H}} \text {POA}(\varGamma ) \quad \text {and}\quad \text {POS}(\mathcal {H}) = \sup _{\varGamma \in \mathcal {H}} \text {POS}(\varGamma ). \end{aligned}$$

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 \(\mathcal {D}\) the price of anarchy of an instance is at most

$$\begin{aligned} \rho (\mathcal {D}) := (1 - \beta (\mathcal {D}))^{-1}, \quad \text {where}\quad \beta (\mathcal {D}) = \sup _{d \in \mathcal {D}} \sup _{x \ge y > 0} \frac{y(d(x) - d(y))}{xd(x)}. \end{aligned}$$
(2.3)

The value of \(\rho (\mathcal {D})\) is well-understood for many important classes of cost functions. For example, let

$$\begin{aligned} \mathcal {D}_d = \{g: \mathbb {R}_{\ge 0} \rightarrow \mathbb {R}_{\ge 0} : g(\mu x) \ge \mu ^d g(x)\ \forall \mu \in [0,1]\}. \end{aligned}$$

In particular, \(\mathcal {D}_d\) contains all polynomial cost functions with non-negative coefficients and maximum degree d. We have

$$\begin{aligned} \rho (\mathcal {D}_d) = \bigg ( 1 - \frac{d}{(d+1)^{(d+1)/d}}\bigg )^{-1}. \end{aligned}$$

The parameter \(\rho (\mathcal {D})\) plays a crucial role in bounding the price of stability of our congestion games.

We say that a class of cost functions \(\mathcal {D}\) is closed under dilations if for every \(d \in \mathcal {D}\) and for every \(\gamma \in \mathbb {R}_{\ge 0}\), \(d_\gamma \in \mathcal {D}\), where \(d_\gamma (x) = d(\gamma x)\) for all \(x \ge 0\).

2.6 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 \(\mathcal {I} \subseteq 2^E\) be a collection of subsets of E (called independent sets). The pair \(\mathcal {M} = (E,\mathcal {I})\) is a matroid if the following three properties hold:

  1. (i)

    \(\emptyset \in \mathcal {I}\),

  2. (ii)

    if \(A \in \mathcal {I}\) and \(B \subseteq A\), then \(B \in \mathcal {I}\),

  3. (iii)

    if \(A,B \in \mathcal {I}\) and \(|A| > |B|\), then there exists an \(a \in A {\setminus } B\) such that \(B + a \in \mathcal {I}\).

An independent set \(B \in \mathcal {I}\) of maximum size is called a basis. We use \(\mathcal {B}\) to denote the set of all bases of \(\mathcal {M}\). The matroid \(\mathcal {M}\) also has a rank function \(r : 2^E \rightarrow [m]\) which maps every subset \(A \subseteq E\) to the cardinality of the largest independent set contained in A.

The base matroid polytope is given by

$$\begin{aligned} P_{\mathcal {M}} = \{x : x(A) \le r(A) \ \forall A \subset E,\ x(E) = r(E), \ x \ge 0\}, \end{aligned}$$

where \(x(A) = \sum _{a \in A} x_a\) for all \(A \subseteq E\). It is the convex hull of the incidence vectors of the bases in \(\mathcal {B}\) [47]. If in the description above the equality \(x(E) = r(E)\) is replaced by \(x(E) \le r(E)\), 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 \subseteq 2^E\) and returns whether or not \(A \in \mathcal {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_{\mathcal {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 \in \mathbb {Q}^m\) and returns whether or not \(x \in 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 \(\mathcal {M}_1\) and \(\mathcal {M}_2\) on a common ground set E, the polytope

$$\begin{aligned} P_{\mathcal {M}_1,\mathcal {M}_2} = \{x : x(A) \le r_i(A) \, \forall A \subset E,\, x(E) = r_i(E) \text { for } i = 1,2,\ x \ge 0 \}\qquad \end{aligned}$$
(2.4)

is the convex hull of the common bases of matroids \(\mathcal {M}_1\) and \(\mathcal {M}_2\), see, e.g., [47, Corollary 41.12d]. It follows directly that \(P_{\mathcal {M}_1,\mathcal {M}_2}\) also has a separation oracle which runs in time polynomial in |E| and the complexity of the independence oracles for \(\mathcal {M}_1\) and \(\mathcal {M}_2\).

3 Separable convex function minimization

In this section, we consider the problem of minimizing a separable convex function over a joint set of polytopes. We prove that this problem can be solved if the aggregation 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.

3.1 General framework

Let \(n, m, r \in \mathbb {N}\) be fixed and define \(N = [n]\). Let \(f_e: \mathbb {N}\rightarrow \mathbb {R}\) be a convex function for every \(e \in [m]\), \(A \in \{0,\pm 1\}^{r \times m}\) a matrix and \(b_i \in \mathbb {Z}^r\) a vector for every \(i \in N\). Further, define \(P_i = \{x_i : Ax_i \le b_i\} \subseteq [0,1]^m\) for every \(i \in N\). The elements of the vector \(x_i\) are indexed by \(x_{i,e}\) for \(e \in 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 = \sum _{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

$$\begin{aligned} (Z) \qquad \min \;\;\; \sum _{e \in [m]} f_e(y_e) \quad \text {s.t.}\quad Ay \le \sum _{i \in N} b_i,\ y \in \mathbb {N}^m, \\ \end{aligned}$$

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 well-described polytope \((P_N; m, \phi )\) (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 \(\phi + \langle c \rangle \) (see Remark 2.2).

Theorem 3.1

Let \((P_i)_{i \in N}\) be as defined above and suppose that the aggregation polytope \(P_N = \sum _{i} P_i\) is a well-described polytope that has a box-TDI description. Then (Z) can be solved optimally using at most \(\textsf {poly}(n, m, \phi )\) 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 \(\textsf {poly}(n, m, \phi )\) arithmetic operations and separation oracle calls.

We prove Theorem 3.1 in the remainder of this section.

By extending \(f_e\) for every \(e \in [m]\) to a convex function that is also defined at zero,Footnote 7 we can write for every positive \(y_e \in \mathbb {N}\),

$$\begin{aligned} f_e(y_e) = f_e(0) + \sum _{k=1}^{y_e} (f_e(k) - f_e(k-1)). \end{aligned}$$

Because \(f_e\) is convex, the function \(c_e : \mathbb {N}\rightarrow \mathbb {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 constant-valued sum over the \(f_e(0)\)) to solving

$$\begin{aligned} (Z') \qquad \min \;\;\; \sum _{e \in [m]} \sum _{k=1}^{y_e} c_e(k) \quad \text {s.t.}\quad Ay \le \sum _{i \in N} b_i,\ y \in \mathbb {N}^m. \\ \end{aligned}$$

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 introduce binary variables \(h^k_e \in \{0,1\}\) for every \(k \in [n]\) and \(e \in [m]\). The interpretation is that \(h^k_e = 1\) if and only if the value of \(x_e\) in (P) is at least k. Exploiting that the functions \(c_e\) are non-decreasing, the non-linear aggregation problem \((Z')\) is equivalent to the problem (R) stated below:

$$\begin{aligned} (R)&\min \quad&\sum _{e \in [m]} \sum _{k \in [n]} c_e(k)h^k_e&\nonumber \\&\text {s.t.} \quad&\displaystyle [A,A,\dots ,A](h^1_1,\dots ,h^1_m, \dots ,h^n_1,\dots ,h^n_m)^\mathsf {T}\le \sum _{i \in N} b_i \end{aligned}$$
(3.1)
$$\begin{aligned}&&h^k_e \in \{0,1\} \quad \forall k \in [n], \ \forall e \in [m] \end{aligned}$$
(3.2)

The equivalence of (Z) and (R) follows from the following observations: If \(f = (f_e) \in P_N \cap \mathbb {N}^m\) is optimal for \((Z')\), we define for every \(e \in [m]\), \(h^k_e = 1\) for \(k = 1,\dots ,f_e\) and \(h^k_e = 0\) for \(k = f_e+1, \dots , n\). The resulting solution \(h = (h^k_e)\) is feasible for (R). Similarly, if \(h = (h^k_e)\) is an optimal solution for (R), then the vector f defined by \(f_e = \sum _{k=1}^n 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.

Lemma 3.1

If \(P_N\) has a box-TDI description, then (R) can be solved using at most \(\textsf {poly}(n, m, \phi )\) arithmetic operations and separation oracle calls.

Proof

Define \(A' = [A, A, \dots , A] \in \mathbb {Z}^{r \times mn}\) and \(h = (h^k_e) \in \mathbb {Q}^{mn}\). The relaxation of the integral system (3.1) and (3.2) can then be written as the system \(A' h \le \sum _i b_i,\ 0 \le h \le 1\). Let \(Q_N = \{h : A' h \le \sum _i b_i,\ 0 \le h \le 1\}\) be the polytope described by this system.

We first show that \(Q_N\) is integral. By assumption the description of \(P_N = \{f : Af \le \sum _{i} b_i\}\) is box-TDI. In particular, by applying Proposition 2.2(iv) repeatedly, we obtain that the system

$$\begin{aligned} {[}A,A,\dots ,A](h^1_1,\dots ,h^1_m, \dots ,h^n_1,\dots , h^n_m)^\mathsf {T}\le \textstyle \sum _{i} b_i \end{aligned}$$

is box-TDI as well. In particular, this implies that the system \(A' h \le \sum _i b_i,\ 0 \le h \le 1\) is TDI because the intersection of a box-TDI system with an arbitrary box yields a TDI system. Because \(\sum _i b_i\) and the restrictions on h are integral vectors, we conclude that \(Q_N\) is indeed integral.

We now show how to construct a separation oracle for \(Q_N\) from a separation oracle for \(P_N\). For

$$\begin{aligned} h =(h^1_1,\dots ,h^1_m, \dots ,h^n_1,\dots ,h^n_m) \in \mathbb {Q}^{mn}, \end{aligned}$$

let the aggregated vector \(f \in \mathbb {Q}^m\) be defined as \(f_e = \sum _{k=1}^n h^k_e\) for \(e \in [m]\). Then \(h \in Q_N\) if and only if \(f \in P_N\). We now give a separation oracle for \(Q_N\). Let \(y = (y^k_e) \in \mathbb {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 \in P_N\) or not. If \(f \in P_N\), then also \(y \in Q_N\) and we are done. Otherwise if \(f \notin P_N\) the oracle returns a vector \(a \in \mathbb {Q}^m\) such that \(a^\mathsf {T}x < a^\mathsf {T}f\) for all \(x \in P_N\). In particular this means that \((a^\mathsf {T},a^\mathsf {T},\dots ,a^\mathsf {T})z < (a^\mathsf {T},a^\mathsf {T},\dots ,a^\mathsf {T})y\) for all \(z = (z^k_e) \in 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 \(\phi \). The claim that we only need a number of arithmetic operations and calls to a separation oracle for \(P_N\), that is polynomial in nm, and \(\phi \), now follows immediately from Theorem 2.1. This concludes the proof. \(\square \)

Remark 3.1

If the facet-complexity \(\phi \) 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 solution to \((Z')\) can be computed in strongly polynomial time (see also Remark 2.1).

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 \(\textsf {poly}(n, m, \phi )\) 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 \in 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 \in \mathbb {N}\) and \(w \in \mathbb {Z}^m\), the polytope \(P \cap (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 \le b\}\) satisfies MIDP and box-TDI. Then an optimal solution to (P) can be computed using at most \(\textsf {poly}(n, m, \phi )\) 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 \in P \cap (f - (n-1)P)\). By the middle integral decomposition property, we know that \(P \cap (f - (n-1)P)\) is integral, and therefore we can find an integral (extreme) point in time polynomial in n, m, \(\phi \) 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} \in P \cap ((f - x^1) - (n-2)P)\). By repeating this procedure, we find the desired decomposition in the stated running time. \(\square \)

3.2 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 \(\varGamma = (N,E,(\mathcal {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 \(\varGamma = (N,E,(\mathcal {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 \(\textsf {poly}(n, m, \phi )\) arithmetic operations and separation oracle calls.

As noted in Remark 3.1, if the facet-complexity \(\phi \) 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.

Theorem 3.4

Let \(\varGamma = (N,E,\mathcal {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 \(\textsf {poly}(n, m, \phi )\) arithmetic operations and separation oracle calls.

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).

4 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 \(\rho (\mathcal {D})\) is defined as in (2.3) and refers to the price of anarchy of non-atomic network congestion games with cost function in class \(\mathcal {D}\). The following is the main result of this section.

Theorem 4.1

Let \(\varGamma = (N,E,(\mathcal {S}_i),(c_e))\) be a polytopal congestion game satisfying IDP and box-TDI with cost functions in class \(\mathcal {D}\). Then \(\text {POS}(\varGamma ) \le \rho (\mathcal {D})\). Further, this bound is (asymptotically) tight even for symmetric singleton congestion games, if \(\mathcal {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.

4.1 Symmetric difference decomposition property

Our novel property is defined as follows:

Definition 4.1

A tuple \((N,E,(\mathcal {S}_i))\) satisfies the symmetric difference decomposition property (SDD) if for all feasible load profiles f and g, there exist vectors \(a^1,\dots ,a^q \in \{0, \pm 1\}^m\) such that \(g - f = \sum _{k = 1}^q a^k\), and for all \(k = 1,\dots ,q\),

  1. (i)

    the load profile \(f + a^k\) is feasible, and

  2. (ii)

    \(a^k\) satisfies

    $$\begin{aligned} a^k_e = -1 \ \Rightarrow \ f_e - g_e > 0 \qquad \text {and}\qquad a^k_e = 1 \ \Rightarrow \ f_e - g_e < 0. \end{aligned}$$
    (4.1)

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 st-paths in some directed graph \(G = (V, A)\) with \(s,t \in V\). Here each feasible load profile corresponds to an integral feasible st-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.Footnote 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,(\mathcal {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 \le \sum _{i \in 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

$$\begin{aligned} Q_N = \bigg \{(y,\mu ) : Ay + \mu = \sum _{i=1}^n b_i,\ \mu \ge 0,\ y \ge 0\bigg \} \end{aligned}$$

for which its describing system is box-TDI. Also, \(Q_N\) is integral.

Let f and g be two feasible load profiles with \(f \ne g\). By Proposition 2.3, we have \(f, g \in P_N\). Therefore, there are non-negative integral slack vectors \(\tau , \sigma \) such that \(f' = (f,\tau ),\, g' = (g,\sigma ) \in Q_N\). Observe that \(\tau \) and \(\sigma \) are integral because of the integrality of A, \(\sum _i b_i\) and f and g.

Note that the pairs \(f' = (f,\tau )\) and \(g' = (g,\sigma )\) are vectors in \(\mathbb {Z}^{m+r}\) since A is an \(r \times m\)-matrix. Let \(c, d \in \mathbb {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,\dots ,r + m\), and let B be the integral box defined by \(B = \{z : c \le z \le d\} \subseteq \mathbb {R}^{m+r}\). We first prove the following claim.

Claim

The polytope \(Q_N \cap B\) is integral and every edge of \(Q_N \cap B\) is in the direction of a \(\{0,\pm 1\}\)-vector.

Proof

The integrality follows from box-TDI of the integral system \(Q_N\). For the second part of the claim, we first show that \(Q_N \cap B\) is box-integral. Note that \(Q_N\) is box-integral by Proposition 2.1. Let \(B' = \{x : \gamma \le x \le \delta \} \in \mathbb {Z}^{m+r}\) be an arbitrary integral box. Note that \((Q_N \cap B) \cap B' = Q_N \cap (B \cap B')\) and that \(B \cap B'\) is again an integral box, since B is integral as well (because \(f'\) and \(g'\) are integral). It follows that \(Q_N \cap (B \cap B')\) is an integral polytope. Thus, \((Q_N \cap B) \cap B'\) is integral which proves that \(Q_N \cap B\) is box-integral. The claim now follows from Proposition 2.2. \(\square \)

Note that \(f', \, g' \in Q_N \cap 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 \cap B\) containing \(f'\). Such an edge must exist because \(Q_N \cap B\) contains at least two elements (since \(f' \ne g'\)). Let \((a^1)' = (a^1,\mu ^1)\) be the non-zero \(\{0,\pm 1\}\)-vector describing the direction of the edge.Footnote 9 Since \(Q_N \cap B\) is an integral polytope, we can show that \(f' + (a^1)' \in Q_N \cap B\). To see this, let \(h(\lambda ) = f' + \lambda \cdot (a^1)'\) be a parametrization of the edge for some range \(0 \le \lambda \le \lambda ^*\), where \(h' = h(\lambda ^*)\) is the other extreme point of the edge \((a^1)'\). Since \(f'\) is integral and \((a^1)'\) a \(\{0,\pm 1\}\)-vector, it must be that \(\lambda ^*\) is a strictly positive integer. Thus, \(f' + (a^1)' \in Q_N \cap B\), as claimed.

It follows that \(A(f+a^1) + (\tau + \mu ^1) = \sum _{i} b_i\). We have \(A a^1 + \mu ^1 = 0\) because \(Af + \tau =\sum _{i} b_i\). Moreover, by construction of the box B it follows that for \(j = 1,\dots ,r+m\),

$$\begin{aligned} (a^1)'_j = -1 \ \Rightarrow \ f_j' - g_j'> 0 \qquad \text {and}\qquad (a^1)'_j = 1 \ \Rightarrow \ g_j' - f_j' > 0. \end{aligned}$$
(4.2)

Exploiting that \(Aa^1 + \mu ^1 = 0\), it now also follows that \(g' - (a^1)'_j \in Q_N \cap B\). To see this, note that

$$\begin{aligned} A(g - a^1) + (\sigma - \mu ^1) = Ag + \sigma - (Aa^1 + \mu ^1) = \textstyle \sum _{i} b_i. \end{aligned}$$

Moreover, we also have \(g'- (a^1)' \ge 0\) by construction, since if \((a^1)'_j = 1\) for some j then \(g_j' > f_j' \ge 0\), so in particular \(g_j' - 1 \ge 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)' \in Q_N\). Repeating this procedure we find vectors \((a^1)',\dots ,(a^q)'\) satisfying (4.2), and such that \(g' - f' = \sum _{k = 1}^q (a^k)'\) with \(f' + (a^k)' \in Q_N\) for \(k = 1,\dots ,q\).Footnote 10

We argue that this process terminates. For the \(\ell \)-th step of this procedure, we have by construction of the \((a^k)'\)

$$\begin{aligned} T(\ell ) = \bigg |\bigg |\left( g' - \sum _{k = 1}^\ell (a^k)'\right) - f' \bigg |\bigg |_1 < \bigg |\bigg |\left( g' - \sum _{k = 1}^{\ell -1} (a^k)'\right) - f'\bigg |\bigg |_1 = T(\ell -1) \end{aligned}$$

where \(|| \cdot ||_1\) is the \(L_1\)-norm. Since \(f', g'\) and the \(a^k\) are all integral this guarantees that the expression \(T(\ell )\) 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,\mu ^k)\) as defined before. It then follows that \(a^1,\dots ,a^q\) are vectors satisfying (4.1) such that \(g - f = \sum _{k = 1}^q a^k\) with \(f + a^k \in P_N\) for \(k = 1,\dots ,q\). Note that \(a^k\) might be the zero-vector, if \((a^k)'\) only contained non-zero 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,\dots ,q\). This follows directly from the fact that \(P_N\) has the IDP. The decomposition yields the strategies of the players. \(\square \)

4.2 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.

Lemma 4.1

Let \((N,E,(\mathcal {S}_i))\) be a polytopal tuple that satisfies the symmetric difference decomposition property and let \((c_e)_{e \in E}\) be arbitrary cost functions. Let f be a feasible load profile that minimizes Rosenthal’s potential \(\varPhi (\cdot )\). Then for every feasible load profile g

$$\begin{aligned} \varDelta (f,g) := \sum _{e \in E:\, f_e > g_e} (f_e - g_e)c_e(f_e) - \sum _{e \in E:\, f_e < g_e} (g_e - f_e)c_e(f_e + 1) \le 0.\qquad \end{aligned}$$
(4.3)

Proof

Let f be a global minimizer of Rosenthal’s potential and let g be an arbitrary feasible load profile. Then by the SDD property, there exist vectors \(a^1, \dots , a^q\) such that \(g - f = \sum _{k=1}^q a^k\) for some q. Moreover, for all \(k = 1,\dots , q\)

$$\begin{aligned} \varPhi (f) - \varPhi (f+a^k) = \sum _{e : \ a^k_e = -1} c_e(f_e) - \sum _{e :\ a^k_e = 1} c_e(f_e+1) \le 0, \end{aligned}$$

where the inequality holds because f minimizes Rosenthal’s potential \(\varPhi \). By adding up these inequalities for all \(k = 1,\dots ,q\), we obtain that \(\varDelta (f,g) \le 0\). To see this, note that if \(e \in E\) with \(f_e > g_e\) then there are precisely \(f_e - g_e\) vectors \(a^k\) with \(a_e^k = -1\); similarly, if \(e \in E\) with \(g_e > f_e\) then there are precisely \(g_e - f_e\) vectors \(a^k\) with \(a_e^k = 1\). \(\square \)

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 \in E\) with \(f_e > g_e\). We have

$$\begin{aligned} f_e c_e(f_e)&= g_e c_e(f_e) + (f_e - g_e) c_e (f_e) \nonumber \\&\le g_e c_e(g_e) + \beta (\mathcal {D}) f_e c_e(f_e) + (f_e - g_e) c_e (f_e), \end{aligned}$$
(4.4)

where the inequality follows from the definition of \(\beta (\mathcal {D})\) in (2.3), exploiting that \(f_e > g_e \ge 0\) and \(c_e \in \mathcal {D}\).

Next, consider a resource \(e \in E\) with \(f_e < g_e\). We have

$$\begin{aligned} f_e c_e(f_e)&= g_e c_e(g_e) - g_e c_e(g_e) + f_e c_e (f_e) \nonumber \\&\le g_e c_e(g_e) - (g_e - f_e) c_e(f_e + 1), \end{aligned}$$
(4.5)

where the inequality follows because \(c_e\) is non-decreasing and \(f_e + 1 \le g_e\) by assumption.

Combining these inequalities, we obtain

$$\begin{aligned} C(f)&\le C(g) + \sum _{e \in E: f_e > g_e} \beta (\mathcal {D}) f_e c_e(f_e) + \varDelta (f, g) \le C(g) + \beta (\mathcal {D}) C(f) \end{aligned}$$

where the first inequality follows from (4.4) and (4.5) and the definition of \(\varDelta (f, g)\) in (4.3), and the last inequality holds because \(\varDelta (f, g) \le 0\) by Lemma 4.1. By rearranging terms, we obtain \(C(f)/C(g) \le (1 - \beta (\mathcal {D}))^{-1} = \rho (\mathcal {D})\), which proves the claim. \(\square \)

4.3 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 \(\rho (\mathcal {D})\) for non-atomic network congestion games with cost functions in class \(\mathcal {D}\). But we need some adjustments to make it work for atomic (unsplittable) congestion games.

Let \(d \in \mathcal {D}\) and \(a \ge b > 0\) be chosen arbitrarily. We show that there exists an instance whose price of stability is arbitrarily close to

$$\begin{aligned} \left( 1 - \frac{b(d(a) - d(b))}{ad(a)}\right) ^{-1}. \end{aligned}$$
(4.6)

Because of the continuity of d, we can take \(a,b \in \mathbb {Q}\) without loss of generality. Let \(M \in \mathbb {N}\) such that \(M a , M b \in \mathbb {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 \in \mathcal {D}\) because it is a constant function and \(c_2 \in \mathcal {D}\) because \(\mathcal {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,g_2) = (M(a - b), Mb)\). We have

$$\begin{aligned} \frac{C(f)}{C(g)} = \frac{M a \cdot d(a)}{M(a - b)d(a) + Mb \cdot d(b)} = \left( 1 - \frac{b(d(a) - d(b))}{ad(a)}\right) ^{-1}. \end{aligned}$$

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 \(\epsilon > 0\) to the cost function of arc \(a_1\), i.e., we take \(c_1(x) = d(a) + \epsilon \). Doing the same analysis and sending \(\epsilon \rightarrow 0\), then shows that we can get arbitrarily close to the expression in (4.6). \(\square \)

Fig. 1
figure 1

The bottom and top arc \(a_1\) and \(a_2\), respectively, have cost functions \(c_1(x) = d(a)\) and \(c_2(x) = d(x/M)\)

5 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 \(\phi \) of the well-described (aggregation) polyhedra are polynomially bounded in n and m. In particular, all the matrices A considered are in fact \(\{0,\pm ~1\}\)-valued matrices, and the right-hand side vectors \(b_i\) are always integral valued.

5.1 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 \in V\). The strategy set of player \(i \in N\) is the set of all directed \(s,t_i\)-paths for some \(t_i \in 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 : Ax = b_i, 0 \le x \le 1\}\), 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.Footnote 11 The aggregation polytope is then \(P_N = \{y : Ay = \sum _{i \in N} b_i, 0 \le y \le 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.Footnote 12

5.2 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 \le b\}\) with a totally unimodular \(r \times 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 \le x \le d\}\) for \(c, d \in \mathbb {Q}^m\) is again totally unimodular [48]. Any totally unimodular system is TDI (see, e.g., [46, Section 22.1]), and therefore the system \(Ax \le b, c \le x \le d\) is TDI. We conclude that the system \(Ax \le 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 \le 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.

5.3 Non-symmetric matroid congestion games

In a non-symmetric matroid congestion game \(\varGamma = (N,E,(\mathcal {S}_i), (c_e))\), the strategy set of player i is given by the bases \(\mathcal {B}_i\) of a matroid \(\mathcal {M}_i = (E,\mathcal {I}_i)\) for \(i \in N\).Footnote 13 The incidence vectors of the bases of \(\mathcal {B}_i\) can be described by the base matroid polytope

$$\begin{aligned} P_i = \{x : x(A) \le r_i(A), A \subset E, \ x(E) = r_i(E), \ x \ge 0\} \end{aligned}$$

as introduced in the preliminaries. That is, for every player we have a polytope of the form \(P_i = \{x : Ax \le b_i, x \ge 0\}\) where \(b_i\) is the rank function \(r_i\) of the matroid \(\mathcal {M}_i\). In particular, it follows that the aggregation polytope is given by

$$\begin{aligned} \textstyle P_N = \{y : y(A) \le \sum _{i} r_i(A), A \subset E,\ y(E) = \sum _{i} r_i(E), \ y \ge 0 \}. \end{aligned}$$

The polytope \(P_N\) has a box-TDI description, which follows from [47, Theorem 46.2].Footnote 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.

5.4 Symmetric matroid intersection congestion games

In symmetric matroid intersection congestion games \(\varGamma = (N,E,\mathcal {S}, (c_e))\) the (symmetric) strategy set \(\mathcal {S}\) of all players is given by the common bases of two matroids \(\mathcal {M}_1 = (E, \mathcal {I}_1)\) and \(\mathcal {M}_2 = (E, \mathcal {I}_2)\) over a common element set E. The polytope P of the players corresponds to the common base polytope \(P_{\mathcal {M}_1, \mathcal {M}_2}\) as defined in (2.4), i.e.,

$$\begin{aligned} P = \{x : x(A) \le r_i(A) \ \forall A \subset E,\ x(E) = r_i(E) \text { for } i = 1,2,\ x \ge 0 \}. \end{aligned}$$

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 \(\mathcal {M}_1\) and \(\mathcal {M}_2\). However, it is not precisely known for which cases of matroid intersection the integer decomposition property holds.

Example 5.1

(r-Arborescences) Let \(D = (V,A)\) be a directed graph. An r-arboresence in D is a directed spanning tree rooted in \(r \in V\). The set of all r-arboresences can be seen as the set of common bases of two matroids. The first matroid \(\mathcal {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) \in A \}\). The second matroid \(\mathcal {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 \ne r\) (we assume there are no incoming arcs at r). Thus, the common base polytope \(P_{\mathcal {M}_1,\mathcal {M}_2}\) describes the arborescences of D and we let \(P = P_{\mathcal {M}_1,\mathcal {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_{\mathcal {M}_1,\mathcal {M}_2}\) is box-TDI (see [47, Corollary 41.12e]). Also, \(P_{\mathcal {M}_1,\mathcal {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, \(\sum _i \langle b_i \rangle \) and the complexity of a separation oracle for \(P_{\mathcal {M}_1,\mathcal {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 \(\mathcal {M}_1\) and \(\mathcal {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 \(\mathcal {M} = (E,\mathcal {I})\) is strongly base-orderable if for every pair of bases \(B_1, B_2 \in \mathcal {B}\) there exists a bijection \(\tau : B_1 \rightarrow B_2\) such that for every \(X \subseteq B_1\), we have \(B_1 - X + \tau (X) \in \mathcal {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 base-orderable matroids has the integer decomposition property [37, Theorem 5.1].Footnote 15

6 Bottleneck congestion games

A bottleneck congestion game \(\varGamma = (N,E,(\mathcal {S})_{i \in N},(c_e)_{e \in E})\) is defined similarly to a congestion game, with the only difference that the objective of a player is to minimize the maximum (rather than the aggregated) congestion over all resources that she occupies. Formally, the cost of player \(i \in N\) under strategy profile \(s = (s_1,\dots ,s_n)\) is given by \(C_i(s) = \max _{e \in 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, non-symmetric 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.

Theorem 6.1

Let \(\varGamma = (N,E,(\mathcal {S}_i),(c_e))\) 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 \(\textsf {poly}(n, m, \phi )\) 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.

figure a

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' \in 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.

figure b

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].

Lemma 6.1

Algorithm 1 computes a load profile of a strong equilibrium in time polynomial in n, m and the complexity of the load profile oracle.

Proof

Clearly, Algorithm 1 can be executed in time polynomial in n, m and the complexity of the load profile oracle. Let f be the load profile output by the algorithm. Assume without loss of generality that the resources in \(E = [m]\) are added to the set T in the order \((1,2,\dots ,m)\). Let \(s = (s_1,\dots ,s_n)\) be a strategy profile corresponding to the load profile f. We define \( \sigma _e = \{i \in N : e \in s_i \} \) as the set of players using resource e. Moreover, we set \(N_1 = \sigma _1\), and define

$$\begin{aligned} N_j = \sigma _j {\setminus } (N_1 \cup \dots \cup N_{j-1}) \quad \text {for }j = 1,\dots ,m. \end{aligned}$$

We show that players in \(N_1\) will never participate in a coalitional deviation in which every player strictly improves.

Let \(D \subset 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 \in 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) \le u_e\) for all \(e \in 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 \in 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 \in 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)) \ge 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 \cup \dots \cup 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. \(\square \)

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

$$\begin{aligned} \textstyle \{y : Ay \le \sum _{i \in N} b_i \} \cap \{y_e = u_e : e \in T\} \cap \{0 \le y_e \le u_e : e \in L \} \end{aligned}$$

is integral. We can then use a separation oracle for \(P_N\) to find an integral vector in this polytope using at most \(\textsf {poly}(n, m, \phi )\) arithmetic operations and separation oracle calls. This concludes the proof. \(\square \)

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 \(\varGamma = (N,E,(\mathcal {S}_i), (c_e))\) be a non-symmetric matroid bottleneck congestion game with cost functions in class \(\mathcal {D}\). Then \(\text {SPoS}(\varGamma ) \le \rho (\mathcal {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 \(\rho (\mathcal {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 \in E {\setminus } \{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 \le 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). \(\square \)

7 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 \(\rho (\mathcal {D})\) if the cost functions belong to class \(\mathcal {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.