A Mixed 0-1 Linear Programming Approach to the Computation of All Pure-Strategy Nash Equilibria of a Finite n-Person Game in Normal Form

1 Department of Precision Machinery and Precision Instrumentation, University of Science and Technology of China, Hefei 230026, China 2Department of Systems Engineering and Engineering Management, City University of Hong Kong, Hong Kong 3Department of Engineering, Faculty of Engineering and Science, University of Agder, 4898 Grimstad, Norway 4 School of Engineering and Information Technology, University of New South Wales at the Australian Defence Force Academy, Canberra, ACT 2600, Australia


Introduction
Nash equilibrium, as defined in [7], plays a fundamental role in the development of game theory and its diverse applications in areas such as biology, computer science, economics, and management and social sciences.In these applications, a main concern is how to effectively select a Nash equilibrium, especially a pure-strategy Nash equilibrium for a finite person game in normal form.To tackle this problem, many contributions have been made in the literature.
In recent years, most related work is focused on finding mixed-strategy Nash equilibrium.In terms of computational complexity, it was shown in [1,2] that the problem of finding one mixed-strategy Nash equilibrium is PPAD-complete.The first method for computing Nash equilibrium of a two-person game was developed in [3] and was extended to computing Nash equilibria of -person games independently in [4,5].The existence of Nash equilibrium was established from an application of Brouwer and Kakutani fixed-point theorems in [6,7].To approximate fixed points of continuous mappings, simplicial methods were originated in [8] and substantially developed in the literature such as [9][10][11][12][13][14][15].Simplicial methods were adapted for computing Nash equilibria in [16].Several more advanced simplicial methods for computing Nash equilibria were presented in [17][18][19].A pivoting procedure was proposed in [20,21] for computing the Nash equilibria of two-person games selected by the linear tracing procedure proposed in [22].This procedure was extended to -person games in [23].A survey of the literature on the computation of Nash equilibria before 1996 can be found in [24] and on computing equilibria for two-person games in [25].By exploiting differentiability of the problem, several methods have been developed for computing Nash equilibria in the literature.A smooth logarithmic tracing procedure with two parameters was proposed in [26].It was proved in [27] that the procedure converges to a Nash equilibrium as two parameters approach zero one after another.The linear tracing procedure together with well-chosen nonlinear transformations of variables of the system of the optimality conditions leads to a differentiable homotopy method in [28].As a result of Kohlberg and Mertens' structure theorem [29], the global Newton method in [30] was combined with the homotopy method in [11] to obtain an algorithm for computing Nash equilibrium.A survey on homotopy methods for computing Nash equilibrium is referred to in [31].Some new related work has been developed in the literature [32][33][34][35][36].
All the algorithms mentioned above can only find a sample Nash equilibrium.Unfortunately, in practice, a game can have many Nash equilibria and which equilibrium should be effectively selected to play is a very challenging issue.The equilibrium selection process often requires the computation of all Nash equilibria of a game.To address this issue, several algorithms have been developed in the literature.A pathfollowing algorithm was described in [37] to compute all Nash equilibria of a bimatrix game.A homotopy algorithm was presented in [38] to find all Nash equilibria of an person game.Both of these algorithms are based on systems of polynomial equations.A survey on polyhedral homotopy continuation methods for all Nash equilibria can be found in [39].In [40], a mixed-integer program (MIP) was formulated to find Nash equilibria of a bimatrix game, which can be employed to compute all Nash equilibria of a bimatrix game.Recently, by enumerating vertices of polyhedrons, two algorithms were introduced in [41] for computing all Nash equilibria of a bimatrix game.
As a special example of the mixed-strategy Nash equilibrium, the pure-strategy Nash equilibrium has gotten more attention recently.The work of [42] shows that determining whether a game has a pure-strategy Nash equilibrium is NPhard.The work of [2] presents a novel generic mapping between graphical games and Markov random fields so that pure Nash equilibria in the former can be found by statistical inference on the latter.Based on a new description format of game-stimulate-response pair, the work of [43] puts forward a constraints' satisfaction-based algorithm on this data structure to compute pure Nash equilibrium of graphical game.The work of [44] develops an efficient algorithm, which is called Valued Nash Propagation, for computing pure strategy Nash equilibria that satisfy various criteria (such as the utilitarian or Nash-Bernoulli social welfare functions) in games with sparse interaction structure.Some other related work can be found in [2,45,46].
As a special case of integer programming, the mixed 0-1 linear programming, in which unknowns are binary, has many applications in operation research.Many classic problems, such as the knapsack problem, facility location problem, production planning problem, and time tabling problem, can be formulated as a mixed 0-1 linear programming.The research of these problems which has a long history and many commercial softwares, most of which are based on branch and bound method, cutting plane method, or branch and cut method, could solve this mixed 0-1 linear programming well.
This paper studies the computation of all pure-strategy Nash equilibria of a finite -person game in normal form.To solve this problem, we formulate a mixed 0-1 linear programming by exploiting the properties of pure strategy and multilinear forms in the payoff functions.An enumeration of all the feasible solutions of the mixed 0-1 linear program yields all pure-strategy Nash equilibria.Numerical results show that the method is promising.To our knowledge, it is the first method to formulate a mixed 0-1 linear programming for pure-strategy Nash equilibria and this method may work well for other similar problems.Furthermore, as an advantage of the formulation, one can apply distributed computation to dramatically speed up the computation.
The rest of the paper is organized as follows.Section 2 formulates a mixed 0-1 linear program for computing all pure-strategy equilibria.Section 3 presents numerical results to show that the approach is effective.The paper is concluded with some remarks in Section 4.

A Mixed 0-1 Linear Programming Formulation
In this section a mixed 0-1 linear programming will be formulated to all pure-strategy Nash equilibria of a finite game.
Definition 1 (Nash, [7]).A mixed strategy profile  * ∈  is a Nash equilibrium of game Γ if   ( * ) ≥   (  ,  * − ) for all  ∈  and   ∈   .With this definition, an application of the optimality condition leads to the fact that  * is a Nash equilibrium if and only if there are  * and  * together with  * satisfying the system of where Lemma 2. Let  be a given positive number such that Then, (1) is equivalent to Proof.Let (, , V) be a solution of the system (3).Suppose that V   = 0 in (3).Then,    = 0 and    ≤ .Thus,       = 0. Suppose that V   = 1 in (3).Then,    = 0. Thus,       = 0. Therefore, (, ) is a solution of the system (1).

Lemma 3. For 𝑖 ∈ 𝑁 and 𝑠
is equivalent to the system of
Replacing ( − ) = ∏  ̸ =      of the system (10) with the system (12), we obtain a mixed 0-1 linear program, which is as follows: As a corollary of Lemma 3, we obtain the following result.
The above idea is illustrated in the following example.

Numerical Results
In this section, some numerical results are presented.Under the software Microsoft Visual Studio 2008 and ILOG CPLEX, we use C++ to call ILOG CPLEX API functions which are based on the branch and cut method to solve the mixed 0-1 linear program (17).The MIP (mixed integer programming) search method, which is a dynamic search strategy or branch and cut strategy in ILOG CPLEX, is determined by the ILOG CPLEX automatically.All other parameters are also set automatically by ILOG CPLEX itself.
We have run our code on a workstation of Lenovo ThinkStation D20 4155-BM4 with 16 processors and 16 G RAM.In the presentation of numerical results, some symbols are explained as follows: Num: the number of players; Num: the number of strategies for each player; NumEquilibra: the number of pure-strategy Nash equilibria for the instance; Time: the total computational time to solve the problem.
Let  = 1000; 30 instances have been solved for each range of {  } ∈ .Numerical results for each range are presented in Tables 1, 2, and 3, respectively.
From Tables 1, 2, and 3, one can see that this mixed 0-1 linear programming method can find all pure-strategy Nash equilibria of three-person game effectively.For example, in Table 1 the problem 30 with 45 strategies can be solved in 16992.10seconds and the number of equilibria is 26.It has been shown that every -person game can be reduced to a three-person game in polynomial time in [47].However, some five-person games are still solved by this method in our examples in order to test the effectiveness of this mixed 0-1 linear programming approach.The numerical results for five-person can be obtained from Tables 4, 5, and 6.All the numerical results show that this new method can handle all pure-strategy Nash equilibria of -person successfully.However, the computation time increases quickly with the increasing of the problems' dimension.To tackle this problem, the distributed computation, which is a salient feature of the integer programming, will be considered in our next

Conclusions
In this paper, a mixed 0-1 linear programming approach has been proposed to find all pure-strategy Nash equilibria of a finite -person game in normal form.This method is based on the properties of pure strategy and multilinear terms in the payoff functions.Some numerical results have been given too.The results are promising.However, there is still some interesting future work to be done in the next step.For one thing, as a nice feature of integer programming, the computation will be implemented in a distributed way, which can significantly speed up the efficiency.For another, more research about the properties of strategy and multilinear terms has to be done in order to compute more general Nash equilibria, mixed-strategy Nash equilibria.
work.Besides, some similar problems with multilinear terms could be solved by this method too.