We study the problem of computing Nash equilibria of zerosum games. Many natural zerosum games have exponentially many strategies, but highly structured payoffs. For example, in the wellstudied Colonel Blotto game (introduced by Borel in 1921), players must divide a pool of troops among a set of battlefields with the goal of winning (i.e., having more troops in) a majority. The Colonel Blotto game is commonly used for analyzing a wide range of applications from the U.S presidential election, to innovative technology competitions, to advertisement, to sports. However, because of the size of the strategy space, standard methods for computing equilibria of zerosum games fail to be computationally feasible. Indeed, despite its importance, only a few solutions for special variants of the problem are known.
In this paper we show how to compute equilibria of Colonel Blotto games.
Moreover, our approach takes the form of a general reduction: to find a Nash equilibrium of a zerosum game, it suffices to design a separation oracle for the strategy polytope of any bilinear game that is payoffequivalent. We then apply this technique to obtain the first polytime algorithms for a variety of games. In addition to Colonel Blotto, we also show how to compute equilibria in an infinitestrategy variant called the General Lotto game; this involves showing how to prune the strategy space to a finite subset before applying our reduction. We also consider the class of dueling games, first introduced by Immorlica et al. (2011). We show that our approach provably extends the class of dueling games for which equilibria can be computed: we introduce a new dueling game, the matching duel, on which prior methods fail to be computationally feasible but upon which our reduction can be applied.
1 Introduction
Computing a Nash equilibrium of a given game is a central problem in algorithmic game theory. It is known that every finite game admits a Nash equilibrium (that is, a profile of strategies from which no player can benefit from a unilateral deviation) [39]. But it is not necessarily obvious how to find an equilibrium. Indeed, the conclusions to date have been largely negative: computing a Nash equilibrium of a normalform game is known to be PPADcomplete [16, 22], even for twoplayer games [12]. In fact, it is PPADcomplete to find an approximation to a Nash equilibrium [13]. These results call into question the predictiveness of Nash equilibrium as a solution concept.
This motivates the study of classes of games for which equilibria can be computed efficiently. It has been found that many natural and important classes of games have structure that can be exploited to admit computational results [15, 21, 30, 36]. Perhaps the most wellknown example is the class of zerosum twoplayer games^{2}^{2}2Or, equivalently, constantsum games., where player ’s payoff is the negation of player ’s payoff. The normalform representation of a zerosum game is a matrix , which specifies the game payoffs for player 1. This is a very natural class of games, as it models perfect competition between two parties. Given the payoff matrix for a zerosum game as input, a Nash equilibrium can be computed in polynomial time, and hence time polynomial in the number of pure strategies available to each player [15]. Yet even for zerosum games, this algorithmic result is often unsatisfactory. The issue is that for many games the most natural representation is more succinct than simply listing a payoff matrix, so that the number of strategies is actually exponential in the most natural input size. In this case the algorithm described above fails to guarantee efficient computation of equilibria, and alternative approaches are required.
The Colonel Blotto Game
A classical and important example illustrating these issues is the Colonel Blotto game, first introduced by Borel in 1921 [8, 9, 19, 20, 48]. In the Colonel Blotto game, two colonels each have a pool of troops and must fight against each other over a set of battlefields. The colonels simultaneously divide their troops between the battlefields. A colonel wins a battlefield if the number of his troops dominates the number of troops of his opponent. The final payoff of each colonel is the (weighted) number of battlefields won. An equilibrium of the game is a pair of colonels’ strategies, which is a (potentially randomized) distribution of troops across battlefields, such that no colonel has incentive to change his strategy. Although the Colonel Blotto game was initially proposed to study a war situation, it has found applications in the analysis of many different forms of competition: from sports, to advertisement, to politics [38, 34, 37, 14, 31, 32], and has thus become one of the most wellknown games in classic game theory.
Colonel Blotto is a zerosum game. However, the number of strategies in the Colonel Blotto game is exponential in its natural representation. After all, there are ways to partition troops among battlefields. The classical methods for computing the equilibra of a zerosum game therefore do not yield computationally efficient results. Moreover, significant effort has been made in the economics literature to understand the structure of equilibria of the Colonel Blotto game, i.e., by solving for equilibrium explicitly [47, 6, 7, 5, 45, 49, 42, 33, 26, 23, 32]. Despite this effort, progress remains sparse. Much of the existing work considers a continuous relaxation of the problem where troops are divisible, and for this relaxation a significant breakthrough came only quite recently in the seminal work of Roberson [42], 85 years after the introduction of the game. Roberson finds an equilibrium solution for the continuous version of the game, in the special case that all battlefields have the same weight. The more general weighted version of the problem remains open, as does the original nonrelaxed version with discrete strategies. Given the apparent difficulty of solving for equilibrium explicitly, it is natural to revisit the equilibrium computation problem for Colonel Blotto games.
An Approach: Bilinear Games
How should one approach equilibrium computation in such a game? The exponential size of the strategy set is not an impassable barrier; in certain cases, games with exponentially many strategies have an underlying structure that can be used to approach the equilibrium computation problem. For example, Koller, Megiddo and von Stengel [29] show how to compute equilibria for zerosum extensiveform games with perfect recall. Immorlica et al. [27] give an approach for solving algorithmicallymotivated “dueling games” with uncertainty. Letchford and Conitzer [35] compute equilibria for a variety of graphical security games. Each of these cases involve games with exponentially many strategies. In each case, a similar approach is employed: reformulating the original game as a payoffequivalent bilinear game. In a bilinear game, the space of strategies forms a polytope in , and payoffs are specified by a matrix : if the players play strategies and respectively, then the payoff to player is . It has been observed that such bilinear games can be solved efficiently when the strategy polytope has polynomially many constraints [11, 29]. In each of the examples described above, it is shown how to map strategies from the original games to appropriate payoffequivalent bilinear games, in which strategies are choices of marginal probabilities from the original game. If one can also map a strategy in the bilinear game back to the original game, then one has a polytime reduction to the (solved) problem of finding equilibria of the bilinear game. In each of these prior works it is this latter step – mapping back to the original game – that is the most demanding; this generally requires a problemspecific way to convert a profile of marginals into a corresponding mixed strategy in the original game.
1.1 Our Contribution
We first show how to compute equilibria of the Colonel Blotto game. Like the works described above, our method is to consider a payoffequivalent bilinear game defined over a space of appropriatelyselected marginals (in this case, the distribution of soldiers to a given battlefield). However, unlike those works, we do not explicitly construct a gamespecific mapping to and from a polynomiallysized bilinear game. We instead use a more general reduction, based on the idea that it suffices to solve linear optimization queries over strategy profiles in a (potentially exponentiallysized) bilinear game. In other words, equilibrium computation reduces to the problem of finding a strategy that optimizes a given linear function over its marginal components. We apply our reduction to the Colonel Blotto game by showing how to solve these requisite optimization queries, which can be done via dynamic programming.
The reduction described above follows from a repeated application of the classic equivalence of separation and optimization [24]. In more detail, we formulate the equilibrium conditions as an LP whose feasibility region is the intersection of two polytopes: the first corresponding to the set of strategies of player 1, and the second encoding payoff constraints for player 2. To find a solution of the LP via Ellipsoid method, it suffices to design a separation oracle for each polytope. However, as we show, separation oracles for the second polytope reduce to (and from) separation oracles for the set of strategies of player 2. It therefore suffices to design separation oracles for the polytope of strategies for each player, and for this it is enough to perform linear optimization over those polytopes [24]. Finally, to convert back to an equilibrium of the original game, we make use of a result from combinatorial optimization: the solution of an LP with polynomially many variables can always be expressed as a mixed strategy with a polynomialsize support, and such a mixed strategy can be computed using the separation oracles described previously [24].
The reduction described above is not specific to the Colonel Blotto game: it applies to any zerosum game, and any payoffequivalent bilinear form thereof. To the best of our knowledge, this general reduction from equilibrium computation to linear optimization has not previously been stated explicitly, although it has been alluded to in the security games literature^{3}^{3}3Independently and in parallel with an earlier version of this work, Xu et al. [50] implicitly used a similar idea to solve a class of Stackleberg security games. and similar ideas have been used to compute correlated equilibria in compact games [28]. In particular, it is notable that one requires only a single linear optimization oracle, over the set of pure strategies, to both find an equilibrium of the bilinear game and convert this to a mixed equilibrium in the original game. We demonstrate the generality of this approach by considering notable examples of games to which it can be applied. In each case, our approach either results in the first known polytime algorithm for computing equilibria, or else significantly simplifies prior analysis. Finally, we note that our approach also extends to approximations: given the ability to approximately answer separation oracle queries to within any fixed error , one can compute a corresponding approximation to the equilibrium payoffs.
Dueling Games
In a dueling game, introduced by Immorlica et al. [27], two competitors each try to design an algorithm for an optimization problem with an element of uncertainty, and each player’s payoff is the probability of obtaining a better solution. This framework falls within a natural class of ranking or social context games [1, 10], in which players separately play a base game and then receive ultimate payoffs determined by both their own outcomes and the outcomes of others. Immorlica et al. argue that this class of games models a variety of scenarios of competitions between algorithm designers: for example, competition between search engines (who must choose how to rank search results), or competition between hiring managers (who must choose from a pool of candidates in the style of the secretary problem).
Immorlica et al. [27] show how to compute a Nash equilibrium for certain dueling games, by developing mappings to and from bilinear games with compact representations. We extend their method, and show how to expand the class of dueling games for which equilibria can be efficiently computed. As one particular example, we introduce and solve the matching duel. In this game, two players each select a matching in a weighted graph, and each player’s payoff is the probability that a randomly selected node would have a higherweight match in that player’s matching than in the opponent’s. Notably, since the matching polytope does not have a compact representation [43], the original method of [27] is not sufficient to find equilibria of this game. We also illustrate that our approach admits a significantly simplified analysis for some other dueling games previously analyzed by Immorlica et al.
General Lotto Game
Hart [26] considers a variant of the Colonel Blotto game, namely the General Lotto game. In this game, each player chooses a distribution over nonnegative real numbers, subject to the constraint that its expectation must equal a certain fixed value. A value is then drawn from each player’s chosen distribution; the players’ payoffs are then functions of these values. What is interesting about this game is that there are infinitely many pure strategies, which complicates equilibrium computation. Nevertheless, we show that our techniques can be applied to this class of games as well, yielding a polynomialtime algorithm for computing Nash equilibria. It is worth mentioning that the General Lotto game is an important problem by itself, and its continuous variant has been well studied in the literature (see, for example, [4, 44, 26, 18]).
Subsequent Work
The algorithm proposed in this work is later improved and simplified in [3].
2 Results and Techniques
We present a general method for computing Nash equilibria of a broad class of zerosum games. Our approach is to reduce the problem of computing equilibria of a given game to the problem of optimizing linear functions over the space of strategies in a payoffequivalent bilinear game.
Before presenting our general reduction, we will first illustrate our techniques by considering the Colonel Blotto game as a specific example. In Section 2.1 we describe our approach in detail for the Colonel Blotto game, explaining the process by which equilibria can be computed. Then in Section 2.2 we will present the general reduction. Further applications of this technique are provided in Section 3 (for dueling games) and Appendix B (for the General Lotto game).
2.1 Colonel Blotto
Here, we propose a polynomialtime algorithm for finding an equilibrium of discrete Colonel Blotto in its general form. We allow the game to be asymmetric across both the battlefields and the players. A game is asymmetric across the battlefields when different battlefields have different contributions to the outcome of the game, and a game is asymmetric across the players when two players have different number of troops.
In the Colonel Blotto game, two players and simultaneously distribute and troops, respectively, over battlefields. A pure strategy of player is a partition where , and a pure strategy of player is a partition where . Let and be the payoff of player and player from the th battlefield, respectively. Note that the payoff functions of the th battlefield, and , have entries. This means the size of input is . Since Colonel Blotto is a zerosum game, we have ^{4}^{4}4Note that in the Colonel Blotto game if is not necessarily equal to then a special case of this game with two battlefields can model an arbitrary 2person normalform game and thus finding a Nash Equilibrium would be PPADcomplete.. Note that we do not need to put any constraint on the payoff functions, and our result works for all payoff functions. We also represent the total payoff of player and player by and , respectively. A mixed strategy of each player would be a probability distribution over his pure strategies.
Theorem 1
One can compute an equilibrium of any Colonel Blotto game in polynomial time.
Proof: Let and be the set of all pure strategies of players and respectively, i.e., each member of is a partition of troops and each member of is a partition of troops. We represent a mixed strategy of player with function such that . Similarly, let function be a mixed strategy of player . We may also use and , instead of and , for referring to a mixed strategy of player and respectively. Since Colonel Blotto is a zerosum game, we leverage the MinMax theorem for finding an NE of the game. This theorem says that pair is an NE of the Colonel Blotto game if and only if strategies and maximize the guaranteed payoff of players and respectively [46]. Now, we are going to find strategy of player which maximizes his guaranteed payoff. The same technique can be used for finding . It is known that for each mixed strategy , at least one of the bestresponse strategies to is a pure strategy. Therefore, a solution to the following program characterizes strategy .
(1)  
Unfortunately, LP 1 has variables and constraints where and are exponential. We therefore cannot solve LP 1 directly.
Step 1: Transferring to a new space. We address this issue by transforming the solution space to a new space in which an LP equivalent to LP 1 becomes tractable (See, e.g., [2], for similar technique). This new space will project mixed strategies onto the marginal probabilities for each (battlefield, troop count) pair. For each pure strategy of player , we map it to a point in where . For convenience, we may abuse the notation, and index each point by two indices and such that represents . Now we map a pure strategy to such that if and only if . In other words, if player puts troops in the th battlefield then . Let be the set of points in which represent pure strategies of player . Let and be the set of mixed strategies of players and respectively. Similarly, we map mixed strategy to point such that represents the probability that mixed strategy puts troops in the th battlefield. Note that mapping is not necessarily onetoone nor onto, i.e., each point in may be mapped to zero, one, or more than one strategies. Let be the set of points in which represent at least one mixed strategy of player . Similarly, we use function to map each strategy of player to a point in where , and define and .
Lemma 1
Set forms a convex polyhedron with an exponential number of vertices and facets.
Now, we are ready to rewrite linear program 1 in the new space as follows.
(2)  
(Membership constraint)  
(Payoff constraints) 
where
is the expected payoff of player .
Step 2: Solving LP 2. The modified LP above, LP 2, has exponentially many constraints, but only polynomially many variables. One can therefore apply the Ellipsoid method to solve the LP, given a separation oracle that runs in polynomial time [25, 41]. By the equivalence of separation and optimization [24], one can implement such a separation oracle given the ability to optimize linear functions over the polytopes (for the membership constraints) and (for the payoff constraints).
Stated more explicitly, given a sequence , where is the number of battlefields and is the number of troops for a player, the required oracle must find a pure strategy such that , and minimizes the following equation:
(3) 
and similarly for polytope . The following lemma shows that one can indeed find a minimizer of Equation (3) in polynomial time.
Lemma 2.1
Given two integers and and a sequence , one can find (in polynomial time) an optimal pure strategy where , and minimizes .
Proof: We employ a dynamic programming approach. Define to be the minimum possible value of where . Hence, denotes the minimum possible value of . We have that is equal to for all . For an arbitrary and , the optimal strategy puts units in the th battlefield and the applied cost in the equation 3 is equal to . Thus, we can express as
Solving this dynamic program, we can find the allocation of troops that minimizes in polynomial time, as required.
Step 3: Transferring to the original space. At last we should transfer the solution of LP 2 to the original space. In particular, we are given a point and our goal is to find a strategy such that . To achieve this, we invoke a classic result of [24] which states that an interior point of an dimensional polytope can be decomposed as a convex combination of at most extreme points of , in polynomial time, given an oracle that optimizes linear functions over . Note that this is precisely the oracle required for Step 2, above. Applying this result to the solution of LP 2 in polytope , we obtain a convex decomposition of into extreme points of , say . Since each corresponds to a pure strategy in , it is trivial to find point with , since the marginals of each lie in . We then have that is the required mixed strategy profile.
2.2 A general framework for bilinear games
In our method for finding a Nash Equilibrium of the Colonel Blotto game, the main steps were to express the game as a bilinear game of polynomial dimension, solve for an equilibrium of the bilinear game, then express that point as an equilibrium of the original game. To implement the final two steps, it sufficed to show how to optimize linear functions over the polytope of strategies in the bilinear game. This suggests a general reduction, where the equilibrium computation problem is reduced to finding the appropriate bilinear game and implementing the required optimization algorithm. In other words, the method for computing Nash equilibria applies to a zerosum game when:

One can transfer each strategy of player to , and each strategy of player to such that the payoff of the game for strategies and can be represented in a bilinear form based on and , i.e., the payoff is where is a matrix.

For any given vector and real number we can find, in polynomial time, whether there is a pure strategy in the transferred space such that .
We refer to such a game as polynomially separable. A direct extension of the proof of Theorem 1 implies that Nash equilibria can be found for polynomially separable games.
Theorem 2
There is a polytime algorithm which finds a Nash Equilibrium of a given polynomially separable game.
This general methodology can be used for finding a NE in many zerosum games. In subsequent sections, we show how our framework can be used to find Nash equilibria for a generalization of Blotto games, known as games, and for a class of dueling games introduced by Immorlica et al. [27].
We also show one can use similar techniques to compute the approximate equilibrium payoffs of a dueling game when we are not able to answer the separation problem in polynomial time but instead we can polynomially solve the separation problem for any . The proof of Theorem 2 is deferred to Appendix E.
Theorem 3
Given an oracle function for the separation problem, one can find an approximation to the equilibrium payoffs of a polynomially separable game in polynomial time.
2.3 General Lotto
The General Lotto game is a relaxation of the Colonel Lotto game (See [26] for details). In this game each player’s strategy is a distribution of a nonnegative integervalued random variable with a given expectation. In particular, players and simultaneously determine (two distributions of) two nonnegative integervalued random variables and , respectively, such that and . The payoff of player is
(4) 
and again the payoff of player is the negative of the payoff of player , i.e., . Hart [26] presents a solution for the General Lotto game when . Here, we generalize this result and present a polynomialtime algorithm for finding an equilibrium when is a bounded distance function. Function is a bounded distance function, if one can write it as such that is a monotone function and reaches its maximum value at where . Note that is a bounded distance function where it reaches its maximum value at . Now, we are ready to present our main result regarding the General Lotto game.
Theorem 4
There is a polynomialtime algorithm which finds an equilibrium of a General Lotto game where the payoff function is a bounded distance function.
Main challenge Note that in the General Lotto game, each player has infinite number of pure strategies, and thus one cannot use neither our proposed algorithm for the Colonel Blotto game nor the technique of [27] for solving the problem. We should prune strategies such that the problem becomes tractable. Therefore, we characterize the extreme point of the polytope of all strategies, and use this characterization for pruning possible strategies.
To the best of our knowledge, our algorithm is the first algorithm of this kind which computes an NE of a game with infinite number of pure strategies.
3 Application to Dueling Games
Immorlica et al. [27] introduced the class of dueling games. In these games, an optimization problem with an element of uncertainty is considered as a competition between two players. They also provide a technique for finding Nash equilibria for a set of games in this class. Later Dehghani et al.[17] studied dueling games in a noncomputational point of view and proved upper bounds on the price of anarchy of many dueling games. In this section, we formally define the dueling games and bilinear duels. Then, in Section 3.3, we describe our method and show that our technique solves a more general class of dueling games. Furthermore, we provide examples to show how our method can be a simpler tool for solving bilinear duel games compared to [27] method. Finally, in Section 3.4, we examine the matching duel game to provide an example where the method of Immorlica et al. [27] does not work, but our presented method can yet be applied.
3.1 Dueling games
Formally, dueling games are two player zerosum games with a set of strategies , a set of possible situations , a probability distribution over , and a cost function that defines the cost measure for each player based on her strategy and the element of uncertainty. The payoff of each player is defined as the probability that she beats her opponent minus the probability that she is beaten. More precisely, the utility function is defined as
where and are strategies for player and respectively. In the following there are two dueling games mentioned in [27].
Binary search tree duel. In the Binary search tree duel, there is a set of elements and a probability distribution over . Each player is going to construct a binary search tree containing the elements of . Strategy beats strategy for element if and only if the path from to the root in is shorter than the path from to the root in . Thus, the set of strategies is the set of all binary search trees with elements of , and is defined to be the depth of element in strategy .
Ranking duel. In the Ranking duel, there is a set of pages , and a probability distribution over , notifying the probability that each page is going to be searched. In the Ranking duel, two search engines compete against each other. Each search engine has to provide a permutation of these pages, and a player beats the other if page comes earlier in her permutation. Hence, set of strategies is all permutations of the pages and for permutation and page , iff .
3.2 Dueling games are Polynomially Separable
Consider a dueling game in which each strategy of player is an dimensional point in Euclidean space. Let be the convex hull of these strategy points. Thus each point in is a mixed strategy of player . Similarly define strategy , , and for player . A dueling game is bilinear if utility function has the form where is an matrix. Again for player , we have . Immorlica et al. [27] provide a method for finding an equilibrium of a class of bilinear games which is defined as follows:
Definition 1
Polynomiallyrepresentable bilinear dueling games: A bilinear dueling game is polynomially representable if one can present the convex hull of strategies and with polynomial linear constraints, i.e. there are vectors and real numbers such that . Similarly .
In the following theorem, we show that every polynomially representable bilinear duel is also polynomially separable, as defined in Section 2.2. This implies that the general reduction described in Section 2.2 can be used to solve polynomially representable bilinear duels as well.
Theorem 5
Every polynomiallyrepresentable bilinear duel is polynomially separable.
Proof: Let and be the set of strategy points for player and player , respectively. We show that if can be specified with polynomial number of linear constraints, then one could design an algorithm that finds out whether there exists a point such that . Let be the set of constraints which specify where is a vector of size and is a real number. We need to check if there exists a point satisfying both constraints in and . Recall that is polynomial. Since all these constraints are linear, we can solve this feasibility problem by a LP in polynomial time. The same argument holds for , therefore every polynomially representable bilinear duel is polynomially separable as well.
3.3 A Simplified Argument for Ranking and Binary Search Duels
In this section, we revisit some examples of dueling games, and show how to use Theorem 2 to establish that they can be solved in polynomial time. The application of Theorem 2 as two main steps. First, it is necessary to express the duel as a bilinear game: that is, one must transfer every strategy of the players to a point in and dimensional space, such the outcome of the game can be determined for two given strategy points with an matrix . Second, one must implement an oracle that determines whether there exists a strategy point satisfying a given linear constraint.
To illustrate our method more precisely, we propose a polynomialtime algorithm for finding an NE for ranking and binary search tree dueling games in what follows.
Theorem 6
There exists an algorithm that finds an NE of the Ranking duel in polynomial time.
Proof: We transfer each strategy of player to point in where denotes the probability that stands at position in . The outcome of the game is determined by the following equation
Where denotes the probability that is searched.
Here, we need to provide an oracle that determines whether there exists a strategy point for a player that satisfies a given linear constraint . Since each pure strategy is a matching between pages and indices, we can find the pure strategy that maximizes with the maximum weighted matching algorithm. Therefore, this query can be answered in polynomial time. Since we have reduced this game to a polynomiallyseparable bilinear duel, we can find a Nash equilibrium in polynomial time.
Theorem 7
There exists an algorithm that finds an NE of the Binary search tree duel in polynomial time.
Proof: Here we map each strategy to the point where denotes the probability that depth of the th element is equal to . Therefore, the payoff of the game for strategies and is equal to
Where denotes the probability that th element is searched.
Next, we need to provide an oracle that determines whether there exists a strategy point for a player that satisfies a given linear constraint . To do this, we find the binary search tree that maximizes . This can be done with a dynamic program. Let denote the maximum value of for a subtree that its root is at depth . can be formulated as
Therefore, we can find the Binary search tree which maximizes in polynomial time and see if it meets the constraint. Since we have reduced this game to a polynomiallyseparable bilinear duel, we can find an NE in polynomial time.
3.4 Matching duel
In matching duel we are given a weighted graph which is not necessarily bipartite. In a matching duel each pure strategy of players is a perfect matching, set of possible situations is the same as the set of nodes in , and probability distribution over determines the probability of selection of each node. In this game, strategy beats strategy for element if is matched to a higher weighted edge in strategy than strategy .
The matching duel may find its application in a competition between websites that try to match people according to their desire. In this competition the website that suggest a better match for each user will get that user, and the goal of each website is to maximize the number of its users. We mention that the ranking duel is a special case of the matching duel, when is a complete bipartite graph with nodes on each side, in which the first part denotes the web pages and the second part denotes the positions in the ranking. Thus, the weight of the edge between page and rank is equal to .
First, we describe how our method can solve this game and then we show the method of Immorlica et al. [27] cannot be applied to find an NE of the matching duel.
Theorem 8
There exists an algorithm that finds an NE of the matching duel in polynomial time.
Proof: We transfer every strategy to a point in dimensional Euclidean space , where denotes the probability that chooses in the matching. Thus, the payoff function is bilinear and is as follows:
where is the set of edges adjacent to ^{5}^{5}5Note that is , , and if is positive, negative, and zero respectively.. Next, we need to prove that the game is polynomially separable. That is, given a vector and a real number , we are to find out whether there is a strategy such that . This problem can be solved by a maximum weighted prefect matching, where the graph is and . Thus our framework can be used to find an NE of the matching duel in polynomial time.
Note that Rothvoss [43] showed that the feasible strategy polytope (the perfect matching polytope) has exponentially many facets. Therefore, the prior approach represented in the work of Immorlica et al. [27] is not applicable to the matching duel. This example shows that our framework nontrivially generalizes the method of Immorlica et al. [27] and completes the presentation of our simpler and more powerful tool for solving bilinear duels.
References
 Ashlagi et al. [2008] Ashlagi, I., Krysta, P., and Tennenholtz, M. 2008. Social context games. In Internet and Network Economics. Springer, 675–683.
 Azar et al. [2003] Azar, Y., Cohen, E., Fiat, A., Kaplan, H., and Racke, H. 2003. Optimal oblivious routing in polynomial time. In STOC. 383–388.
 Behnezhad et al. [2016] Behnezhad, S., Dehghani, S., Derakhshan, M., HajiAghayi, M., and Seddighin, S. 2016. Faster and simpler algorithm for optimal strategies of blotto game. arXiv preprint arXiv:1612.04029.
 Bell and Cover [1980] Bell, R. M. and Cover, T. M. 1980. Competitive optimality of logarithmic investment. Math. Oper. Res. 5, 2, 161–166.
 Bellman [1969] Bellman, R. 1969. On ï¿½colonel blottoï¿½ and analogous games. Siam Review 11, 1, 66–68.
 Blackett [1954] Blackett, D. W. 1954. Some blotto games. Nav. Res. Logist. Q. 1, 55–60.
 Blackett [1958] Blackett, D. W. 1958. Pure strategy solutions to blotto games. Nav. Res. Logist. Q. 5, 107–109.
 Borel [1921] Borel, É. 1921. La théorie du jeu et les équations intégrales à noyau symétrique. Comptes Rendus de l’Académie 173, 13041308, 97–100.
 Borel [1953] Borel, É. 1953. The theory of play and integral equations with skew symmetric kernels. Econometrica 21, 97–100.
 Brandt et al. [2009] Brandt, F., Fischer, F., Harrenstein, P., and Shoham, Y. 2009. Ranking games. Artificial Intelligence 173, 2, 221–239.
 Charnes [1953] Charnes, A. 1953. Constrained games and linear programming. Proceedings of the National Academy of Sciences of the United States of America 39, 7, 639.
 Chen and Deng [2006] Chen, X. and Deng, X. 2006. Settling the complexity of twoplayer nash equilibrium. In FOCS. Vol. 6. 47th.
 Chen et al. [2006] Chen, X., Deng, X., and Teng, S.H. 2006. Computing nash equilibria: Approximation and smoothed complexity. In Foundations of Computer Science, 2006. FOCS’06. 47th Annual IEEE Symposium on. IEEE, 603–612.
 Chowdhury et al. [2009] Chowdhury, S. M., Kovenock, D., and Sheremeta, R. M. 2009. An experimental investigation of colonel blotto games. Econ. Theor., 1–29.
 Dantzig [1963] Dantzig, G. B. 1963. Linear programming and extensions. Princeton university press.
 Daskalakis et al. [2009] Daskalakis, C., Goldberg, P. W., and Papadimitriou, C. H. 2009. The complexity of computing a nash equilibrium. SIAM Journal on Computing 39, 1, 195–259.
 Dehghani et al. [2016] Dehghani, S., Hajiaghayi, M. T., Mahini, H., and Seddighin, S. 2016. Price of Competition and Dueling Games. In 43rd International Colloquium on Automata, Languages, and Programming (ICALP 2016), Y. R. Ioannis Chatzigiannakis, Michael Mitzenmacher and D. Sangiorgi, Eds. Leibniz International Proceedings in Informatics (LIPIcs) Series, vol. 55. Schloss Dagstuhl–LeibnizZentrum fuer Informatik, Dagstuhl, Germany, 21:1–21:14.
 Dziubiński [2011] Dziubiński, M. 2011. Nonsymmetric discrete general lotto games. Int. J. Game Theory, 1–33.
 Fréchet [1953a] Fréchet, M. 1953a. Commentary on the three notes of emile borel. Econometrica 21, 118–124.
 Fréchet [1953b] Fréchet, M. 1953b. Emile borel, initiator of the theory of psychological games and its application. Econometrica 21, 95–96.
 Garg et al. [2011] Garg, J., Jiang, A. X., and Mehta, R. 2011. Bilinear games: Polynomial time algorithms for rank based subclasses. In Internet and Network Economics. Springer, 399–407.
 Goldberg and Papadimitriou [2006] Goldberg, P. W. and Papadimitriou, C. H. 2006. Reducibility among equilibrium problems. In Proceedings of the thirtyeighth annual ACM symposium on Theory of computing. ACM, 61–70.
 Golman and Page [2009] Golman, R. and Page, S. E. 2009. General blotto: games of allocative strategic mismatch. Public Choice 138, 34, 279–299.
 Grötschel et al. [1981] Grötschel, M., Lovász, L., and Schrijver, A. 1981. The ellipsoid method and its consequences in combinatorial optimization. Combinatorica 1, 2, 169–197.
 Grötschel et al. [1988] Grötschel, M., Lovász, L., and Schrijver, A. 1988. Geometric algorithms and combinatorial optimization. Springer4060 XII, 362 S.
 Hart [2007] Hart, S. 2007. Discrete colonel blotto and general lotto games.
 Immorlica et al. [2011] Immorlica, N., Kalai, A. T., Lucier, B., Moitra, A., Postlewaite, A., and Tennenholtz, M. 2011. Dueling algorithms. In STOC. 215–224.
 Jiang and LeytonBrown [2015] Jiang, A. X. and LeytonBrown, K. 2015. Polynomialtime computation of exact correlated equilibrium in compact games. Games and Economic Behavior 91, 0, 347 – 359.
 Koller et al. [1994] Koller, D., Megiddo, N., and Von Stengel, B. 1994. Fast algorithms for finding randomized strategies in game trees. In Proceedings of the twentysixth annual ACM symposium on Theory of computing. ACM, 750–759.
 Kontogiannis and Spirakis [2010] Kontogiannis, S. and Spirakis, P. 2010. Exploiting concavity in bimatrix games: New polynomially tractable subclasses. In Approximation, Randomization, and Combinatorial Optimization. Algorithms and Techniques. Springer, 312–325.
 Kovenock and Roberson [2010] Kovenock, D. and Roberson, B. 2010. Conflicts with multiple battlefields. CESifo Working Paper Series 3165, CESifo Group Munich. September.
 Kovenock and Roberson [2012] Kovenock, D. and Roberson, B. 2012. Coalitional colonel blotto games with application to the economics of alliances. J. Pub. Econ. Theory 14, 4, 653–676.
 Kvasov [2007] Kvasov, D. 2007. Contests with limited resources. J. Econ. Theory 136, 1, 738–748.
 Laslier and Picard [2002] Laslier, J.F. and Picard, N. 2002. Distributive politics and electoral competition. J. Econ. Theory 103, 1, 106–130.
 Letchford and Conitzer [2013] Letchford, J. and Conitzer, V. 2013. Solving security games on graphs via marginal probabilities. In AAAI.
 Lipton et al. [2003] Lipton, R. J., Markakis, E., and Mehta, A. 2003. Playing large games using simple strategies. In Proceedings of the 4th ACM conference on Electronic commerce. ACM, 36–41.
 Merolla et al. [2005] Merolla, J., Munger, M., and Tofias, M. 2005. In play: A commentary on strategies in the 2004 us presidential election. Public Choice 123, 12, 19–37.
 Myerson [1993] Myerson, R. B. 1993. Incentives to cultivate favored minorities under alternative electoral systems. Am. Polit. Sci. Rev., 856–869.
 Nash [1951] Nash, J. 1951. Noncooperative games. Annals of mathematics, 286–295.
 Osborne and Rubinstein [1994] Osborne, M. J. and Rubinstein, A. 1994. A Course in Game Theory. MIT Press Books. The MIT Press.
 Papadimitriou and Steiglitz [1998] Papadimitriou, C. H. and Steiglitz, K. 1998. Combinatorial optimization: algorithms and complexity. Courier Dover Publications.
 Roberson [2006] Roberson, B. 2006. The colonel blotto game. Econ. Theor. 29, 1, 1–24.
 Rothvoss [2014] Rothvoss, T. 2014. The matching polytope has exponential extension complexity. In STOC. 263–272.
 Sahuguet and Persico [2006] Sahuguet, N. and Persico, N. 2006. Campaign spending regulation in a model of redistributive politics. J. Econ. Theory 28, 1, 95–124.
 Shubik and Weber [1981] Shubik, M. and Weber, R. J. 1981. Systems defense games: Colonel blotto, command and control. Nav. Res. Logist. Q. 28, 2, 281–287.
 Sion [1957] Sion, M. 1957. General Minimax Theorems. United States Air Force, Office of Scientific Research.
 Tukey [1949] Tukey, J. W. 1949. A problem of strategy. Econometrica 17, 73.
 von Neumann [1953] von Neumann, J. 1953. Communication on the borel notes. Econometrica 21, 124–127.
 Weinstein [2005] Weinstein, J. 2005. Two notes on the blotto game. Manuscript, Northwestern University.
 Xu et al. [2014] Xu, H., Fang, F., Jiang, A. X., Conitzer, V., Dughmi, S., and Tambe, M. 2014. Solving zerosum security games in discretized spatiotemporal domains. In Proceedings of the TwentyEighth AAAI Conference on Artificial Intelligence, July 27 31, 2014, Québec City, Québec, Canada. 1500–1506.
Appendix A Colonel Blotto
In this appendix we provide a more detailed desciption of our polynomial time algorithm for finding a Nash equilibrium (NE) of the Colonel Blotto game. Hart showed that the Colonel Lotto game is equivalent to a special case of the Colonel Blotto game [26]. Therefore, our algorithm could be used to find a NE of the Colonel Lotto game as well.
In section A.1, we present a procedure for mapping strategies of both players to a new space. The new space maintains the important information of each strategy and helps us to find a Nash equilibrium of the game. Next in section A.2, we show how we check the feasibility of the membership constraint in the new space. Moreover, we present a polynomialtime algorithm for determining an equilibrium of the Colonel Blotto game in the new space. At last in section A.3, we present an algorithm which transfers a Nash equilibrium from the new space to the original space.
a.1 Transferring to a new space
In this subsection we define a new notation for describing the strategies of players and discuss about the properties of the transferred strategies. Let , and be a strategy of player . We define the function in the following way: where is a point in such that is equal to the probability that strategy puts units in the th battlefield, for and . For simplicity we may represent by . We define and similarly for player . Let . Note that, maps each strategy of the first player to exactly one point in . However, each point in may be mapped to zero, one, or more than one strategies. Let us recall the definition of which is the set of all strategies of player , and the definition of which is
In order to design an algorithm for checking the membership constraint, we first demonstrate in Lemma A.1 that set is a polyhedron with an exponential number of vertices and facets. This lemma is a more formal statement of Lemma 1. Then we prove in Lemma A.2 that set can be formulated with number of constraints. These results allow us to leverage the Ellipsoid method for checking the membership constraint [25].
Lemma A.1
Set forms a convex polyhedron with no more than vertices and no more than facets.
Lemma A.2
Set can be formulated with number of constraints
a.2 Checking the membership constraint and the payoff constraints
As we briefly described in Subsection 2, the final goal of this section is to determine a NE of the Colonel Blotto game. To do this, we provide linear program 2 and show that this LP can be solved in polynomial time. Since we use the Ellipsoid method to solve the LP, we have to implement an oracle function that reports a violating constraint for any infeasible solution. In this subsection we focus on the membership constraint of LP 2 and show that for any infeasible point which violates membership constraint, a polynomialtime algorithm finds a hyperplane that separates from .
Lemma A.3
There exists a polynomial time algorithm that gets a point as input, and either finds a hyperplane that separates from , or reports that no such hyperplane exists.
Proof: Let . Consider the following LP, which we will refer to as LP 5:
(5)  
(6) 
The variables of the linear program are , which describe the following hyperplane:
Constraints 5 and 6 force LP 5 to find a hyperplane that separates from . Hence, LP 5 finds a separating hyperplane if and only if is not in .
Hyperplane separating oracle is an oracle that gets variables as input and finds if constraints 6 are satisfied. Moreover, if some constraints are violated it returns at least one of the violated constraints. In Section C we describe a polynomialtime algorithm for the hyperplane separating oracle. Constraint 5 also can be checked in polynomial time. Our LP has variables and constraints which is by Lemma A.1. Thus we can solve this LP in polynomial time with the Ellipsoid method [25].
In the next step, we present an algorithm to determine the outcome of the game when both players play optimally. We say is an optimal strategy of player , if it maximizes the guaranteed payoff of player . By the MinMax Theorem, in a NE of a zerosum game players play optimally [46]. Therefore, it is enough to find an optimal strategy of both players. Before we discuss the algorithm, we show the payoff can be determined by and . Recall the definition of which is
Lemma A.4
Let and be two mixed strategies for player and respectively. Let and . The outcome of the game is determined by .
Proof: Let and be two mixed strategies of players and respectively, and let be the expected value of the outcome in battlefield . We can write as follows
We know that the total outcome of the game is the sum of the outcome in all battlefields, which is
Theorem A.1
There exists a polynomial time algorithm that finds a NE of the Colonel Blotto game in the new space.
Proof: The Colonel Blotto is a zerosum game, and the MinMax theorem states that a pair of strategies is a Nash equilibrium if and maximize the guaranteed payoff of players and respectively [46].
Recall that LP 2 finds a point which describes an optimal strategy of player ^{6}^{6}6The same procedure finds an optimal strategy of player .. This LP has variables and where describe point . The membership constraint guarantees is in . It is known that in any normalform game there always exists a bestresponse strategy which is a pure strategy [40]. Hence, variable represents the maximum payoff of player with strategy when player plays his bestresponse strategy against . Note that, Lemma A.4 shows is a linear function of , when is a fixed strategy of player . This means the payoff constraints are linear constraints. Putting all these together show, LP 2 finds a point such that:

There exists strategy such that .

The minimum value of is maximized for every .
Next we show that this LP can be solved in polynomial time with the Ellipsoid method. First, Lemma A.3 proposes a polynomialtime algorithm for checking the membership constraint. Second, bestresponse separating oracle is an oracle that gets point and variable as input and either reports point passes all payoff constrains or reports a violated payoff constraint. In Section C, we will show that the running time of this oracle is .
a.3 Finding a Nash equilibrium in the original space
In the previous subsection, we presented an algorithm which finds a Nash equilibrium of the game in the new space. The remaining problem is to retrieve from .
Theorem A.2
Given a point , there exists a polynomial time algorithm which finds a strategy such that .
Proof: Since every strategy of player is a convex combination of elements of , our goal is to find a feasible solution of the following LP.
(7)  
(10)  
where is the probability of pure strategy . Note that, this LP finds a mixed strategy of player by finding the probability of each pure strategy. Since every feasible solution is acceptable, objective function does not matter. To find a solution of this LP, we write its dual LP as follows.
(11)  
(12) 
Where variable stands for constraint 10, and variables stand for constraints 10. An oracle similar to the hyperplane separating oracle can find a violating constraint for any infeasible solution of the dual LP. Since the number of constraints in the dual LP is based on Lemma A.1, we can use the Ellipsoid method and find an optimal solution of the dual LP in polynomial time.
The next challenge is to find an optimal solution of the primal LP from an optimal solution of the dual LP. We resolve this problem by the following lemma. We know is in . This means there is strategy such that . Hence, linear program 7 and its dual are feasible, and we can apply Lemma A.5.
Lemma A.5
Assume we have a separation oracle for primal LP with exponentially many constraints and polynomially many variables. If primal LP is feasible, then there is a polynomialtime algorithm which returns an optimum solution of dual LP .
Proof: Since the primal LP is feasible, we can assume . The Ellipsoid method returns an optimum solution of primal LP by doing binary search and finding the largest which guarantees feasibility of . Let be the set of polynomially many constraints returned by the separation oracle during all iterations. We first prove . Note that is a set of constraints returned by the Ellipsoid method. Note that is a subset of all constraints . This means every vector which satisfies will satisfy as well. Therefore, . On the other hand, we know contains constraints which guarantees infeasibility of . So, LP is infeasible which means . Putting all these together we can conclude that .
Linear program has polynomially many constraints and polynomially many variables, and we can find an optimum solution to its dual in polynomial time. Let be an optimum solution of dual LP , and let where is the ith row of matrix , i.e., be set of indices corresponding to constraints in . For every vector and every set of indices we define to be the projection of vector on set . Now consider vector as a solution of dual LP such that and for all . We prove is an optimum solution of dual LP as follows:

We first show is feasible. Note that for all which means where the last inequality comes from the feasibility of in dual LP .

Note that . The last equality comes from the facts that for all , and . Since is an optimum solution of dual the LP , by the weak duality, it is equal to . Therefore, .
We have proved is a feasible solution to dual LP and . We also know by definition. Therefore, the weak duality insures is an optimum solution of dual LP .