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

Authors: Zhengtian Wu; Chuangyin Dang; Hamid Reza Karimi; Changan Zhu; Qing Gao
Journal: Mathematical Problems in Engineering
 (2014)

---

## Abstract

A main concern in applications of game theory is how to effectively select a Nash equilibrium, especially a pure-strategy Nash equilibrium for a finiten-person game in normal form. This selection process often requires the computation of all Nash equilibria. It is well known that determining whether a finite game has a pure-strategy Nash equilibrium is an NP-hard problem and it is difficult to solve by naive enumeration algorithms. By exploiting the properties of pure strategy and multilinear terms in the payoff functions, this paper formulates a new mixed 0-1 linear program for computing all pure-strategy Nash equilibria. To our knowledge, it is the first method to formulate a mixed 0-1 linear programming for pure-strategy Nash equilibria and it may work well for similar problems. Numerical results show that the approach is effective and this method can be easily distributed in a distributed way.


---

## Body

## 1. 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 n-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 n-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–15]. Simplicial methods were adapted for computing Nash equilibria in [16]. Several more advanced simplicial methods for computing Nash equilibria were presented in [17–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 n-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–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 path-following 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 n-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 NP-hard. 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 finiten-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. Section2 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.


## 2. 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.LetN
=
{
1,2
,
…
,
n
} be the set of players. The pure strategy set of player i
∈
N is denoted by S
i
=
{
s
j
i
∣
j
∈
M
i
} with M
i
=
{
1,2
,
…
,
m
i
}. Given S
i with i
∈
N, the set of all pure strategy profiles is S
=
∏
i
=
1
n
‍
S
i. We denote the payoff function of player i
∈
N by u
i
:
S
→
R. For i
∈
N, let S
-
i
=
∏
k
∈
N
∖
{
i
}
‍
S
k. Then, s
=
(
s
j
1
1
,
s
j
2
2
,
…
,
s
j
n
n
)
∈
S can be rewritten as s
=
(
s
j
i
i
,
s
-
i
) with s
-
i
=
(
s
j
1
1
,
…
,
s
j
i
-
1
i
-
1
,
s
j
i
+
1
i
+
1
,
…
,
s
j
n
n
)
∈
S
-
i. A mixed strategy of player i is a probability distribution on S
i denoted by x
i
=
(
x
1
i
,
x
2
i
,
…
,
x
m
i
i
). Let X
i be the set of all mixed strategies of player i. Then, X
i
=
{
x
i
=
(
x
1
i
,
x
2
i
,
…
,
x
m
i
i
)
∈
R
+
m
i
∣
∑
j
=
1
m
i
‍
x
j
i
=
1
}. Thus, for x
i
∈
X
i, the probability assigned to pure strategy s
j
i
∈
S
i is equal to x
j
i. Given X
i with i
∈
N, the set of all mixed strategy profiles is X
=
∏
i
=
1
n
‍
X
i. For i
∈
N, let X
-
i
=
∏
k
∈
N
∖
{
i
}
‍
X
k. Then, x
=
(
x
1
,
x
2
,
…
,
x
n
)
∈
X can be rewritten as x
=
(
x
i
,
x
-
i
) with x
-
i
=
(
x
1
,
…
,
x
i
-
1
,
x
i
+
1
,
…
,
x
n
)
∈
X
-
i. If x
∈
X is played, then the probability that a pure strategy profile s
=
(
s
j
1
1
,
s
j
2
2
,
…
,
s
j
n
n
)
∈
S occurs is ∏
i
=
1
n
‍
x
j
i
i. Therefore, for x
∈
X, the expected payoff of player i is given by u
i
(
x
)
=
∑
s
∈
S
‍
u
i
(
s
)
∏
i
=
1
n
‍
x
j
i
i. With these notations, a finite n-person game in normal form can be represented as Γ
=
〈
N
,
S
,
{
u
i
}
i
∈
N
〉 or Γ
=
〈
N
,
X
,
{
u
i
}
i
∈
N
〉.Definition 1 (Nash, [7]).
A mixed strategy profilex
*
∈
X is a Nash equilibrium of game Γ if u
i
(
x
*
)
≥
u
i
(
x
i
,
x
*
-
i
) for all i
∈
N and x
i
∈
X
i.With this definition, an application of the optimality condition leads to the fact thatx
* is a Nash equilibrium if and only if there are λ
* and μ
* together with x
* satisfying the system of
(1)
u
i
(
s
j
i
,
x
-
i
)
+
λ
j
i
-
μ
i
=
0
,
e
i
⊤
x
i
-
1
=
0
,
x
j
i
λ
j
i
=
0
,
x
j
i
≥
0
,
λ
j
i
≥
0
,
j
=
1,2
,
…
,
m
i
,
i
=
1,2
,
…
,
n
,
where e
i
=
(
1,1
,
…
,
1
)
⊤
∈
R
m
i.Lemma 2.
Letβ be a given positive number such that
(2)
β
≥
max
⁡
i
∈
N
{
max
⁡
s
∈
S
⁡
u
i
(
s
)
-
min
⁡
s
∈
S
⁡
u
i
(
s
)
}
.
Then, (1) is equivalent to
(3)
u
i
(
s
j
i
,
x
-
i
)
+
λ
j
i
-
μ
i
=
0
,
e
i
⊤
x
i
-
1
=
0
,
x
j
i
≤
v
j
i
,
λ
j
i
≤
β
(
1
-
v
j
i
)
,
v
j
i
∈
{
0,1
}
,
x
j
i
≥
0
,
λ
j
i
≥
0
,
j
=
1,2
,
…
,
m
i
,
i
=
1,2
,
…
,
n
.Proof.
Let(
x
,
λ
,
v
) be a solution of the system (3). Suppose that v
j
i
=
0 in (3). Then, x
j
i
=
0 and λ
j
i
≤
β. Thus, x
j
i
λ
j
i
=
0. Suppose that v
j
i = 1 in (3). Then, λ
j
i
=
0. Thus, x
j
i
λ
j
i
=
0. Therefore, (
x
,
λ
) is a solution of the system (1).
Let(
x
,
λ
) be a solution of the system (1). Since ∑
j
=
1
m
i
‍
x
j
i
=
1, there must exist some k
∈
M
i such that x
k
i
>
0. From x
k
i
λ
k
i
=
0, we get that λ
k
i
=
0. Thus, μ
i
=
u
i
(
s
k
i
,
x
-
i
)
≤
max
⁡
s
∈
S
u
i
(
s
). Therefore, for any j
∈
M
i, we obtain from the system (1) that
(4)
λ
j
i
=
μ
i
-
u
i
(
s
j
i
,
x
-
i
)
≤
max
⁡
s
∈
S
⁡
u
i
(
s
)
-
min
⁡
s
∈
S
⁡
u
i
(
s
)
≤
β
.
Suppose thatx
j
i
=
0. Let v
j
i
=
0. Thus,
(5)
x
j
i
=
0
≤
v
j
i
,
λ
j
i
≤
β
(
1
-
v
j
i
)
=
β
.
Suppose that x
j
i
>
0. Let v
j
i
=
1. Thus,
(6)
x
j
i
≤
v
j
i
=
1
,
λ
j
i
=
0
≤
β
(
1
-
v
j
i
)
=
0
.
Therefore, (
x
,
λ
,
v
) is a solution of the system (3). This completes the proof.This lemma implies that finding a pure-strategy Nash equilibrium is equivalent to finding a solution to the system of(7)
u
i
(
s
j
i
,
x
-
i
)
+
λ
j
i
-
μ
i
=
0
,
e
i
⊤
x
i
-
1
=
0
,
λ
j
i
≤
β
(
1
-
x
j
i
)
,
x
j
i
∈
{
0,1
}
,
λ
j
i
≥
0
,
j
=
1,2
,
…
,
m
i
,
i
=
1,2
,
…
,
n
.
For any s
j
i
∈
S
i, one can obtain from u
i
(
x
) that
(8)
u
i
(
s
j
i
,
x
-
i
)
=
∑
s
-
i
=
(
s
j
1
1
,
…
,
s
j
i
-
1
i
-
1
,
s
j
i
+
1
i
+
1
,
…
,
s
j
n
n
)
∈
S
-
i
‍
u
i
(
s
j
i
,
s
-
i
)
∏
k
≠
i
‍
x
j
k
k
.
Let y
(
s
-
i
)
=
∏
k
≠
i
‍
x
j
k
k for s
-
i
=
(
s
j
1
1
,
…
,
s
j
i
-
1
i
-
1
,
s
j
i
+
1
i
+
1
,
…
,
s
j
n
n
)
∈
S
-
i. Then,
(9)
u
i
(
s
j
i
,
x
-
i
)
=
∑
s
-
i
=
(
s
j
1
1
,
…
,
s
j
i
-
1
i
-
1
,
s
j
i
+
1
i
+
1
,
…
,
s
j
n
n
)
∈
S
-
i
‍
u
i
(
s
j
i
,
s
-
i
)
y
(
s
-
i
)
.
Substituting this into (7) yields
(10)
∑
s
-
i
∈
S
-
i
‍
u
i
(
s
j
i
,
s
-
i
)
y
(
s
-
i
)
+
λ
j
i
-
μ
i
=
0
,
e
i
⊤
x
i
-
1
=
0
,
λ
j
i
≤
β
(
1
-
x
j
i
)
,
x
j
i
∈
{
0,1
}
,
λ
j
i
≥
0
,
j
=
1,2
,
…
,
m
i
,
i
=
1,2
,
…
,
n
,
y
(
s
-
i
)
=
∏
k
≠
i
‍
x
j
k
k
,
s
-
i
∈
S
-
i
,
i
=
1,2
,
…
,
n
.
Observe that y
(
s
-
i
)
∈
{
0,1
} since x
j
i
∈
{
0,1
}. This property leads to the following result.Lemma 3.
Fori
∈
N and s
-
i
=
(
s
j
1
1
,
…
,
s
j
i
-
1
i
-
1
,
s
j
i
+
1
i
+
1
,
…
,
s
j
n
n
)
∈
S
-
i, the system of
(11)
y
(
s
-
i
)
=
∏
k
≠
i
‍
x
j
k
k
,
x
j
k
k
∈
{
0,1
}
,
k
=
1,2
,
…
,
n
,
k
≠
i
,
is equivalent to the system of
(12)
y
(
s
-
i
)
≥
∑
h
≠
i
‍
x
j
h
h
-
(
n
-
2
)
,
y
(
s
-
i
)
≤
x
j
k
k
,
0
≤
y
(
s
-
i
)
,
x
j
k
k
∈
{
0,1
}
,
k
=
1,2
,
…
,
n
,
k
≠
i
.Proof.
Let(
y
,
x
) be a solution of the system (12). Suppose that x
j
k
k
=
1, for all k
≠
i. Then,
(13)
y
(
s
-
i
)
≥
∑
h
≠
i
x
j
h
h
-
(
n
-
2
)
=
(
n
-
1
)
-
(
n
-
2
)
=
1
,
y
(
s
-
i
)
≤
x
j
k
k
=
1
,
k
≠
i
.
Thus, y
(
s
-
i
)
=
∏
k
≠
i
‍
x
j
k
k
=
1.
Suppose thatx
j
k
k
=
0, ∃
k
≠
i. Then,
(14)
y
(
s
-
i
)
≤
x
j
k
k
=
0
,
∃
k
≠
i
,
0
≤
y
(
s
-
i
)
.
Thus, y
(
s
-
i
)
=
∏
k
≠
i
‍
x
j
k
k
=
0. Therefore, (
y
,
x
) is a solution of the system (11).
Let(
y
,
x
) be a solution of the system (11). Suppose that x
j
k
k
=
1, for all k
≠
i. Then, y
(
s
-
i
)
=
∏
k
≠
i
‍
x
j
k
k
=
1. Thus,
(15)
∑
h
≠
i
x
j
h
h
-
(
n
-
2
)
=
(
n
-
1
)
-
(
n
-
2
)
=
1
≤
y
(
s
-
i
)
=
1
,
y
(
s
-
i
)
=
1
≤
x
j
k
k
=
1
,
k
≠
i
,
0
≤
y
(
s
-
i
)
.
Suppose that x
j
k
k
=
0, ∃
k
≠
i. Then, y
(
s
-
i
)
=
∏
k
≠
i
‍
x
j
k
k
=
0. Thus,
(16)
∑
h
≠
i
x
j
h
h
-
(
n
-
2
)
≤
(
n
-
2
)
-
(
n
-
2
)
=
y
(
s
-
i
)
=
0
,
y
(
s
-
i
)
=
0
≤
x
j
k
k
,
k
≠
i
,
0
≤
y
(
s
-
i
)
.
Therefore, (
y
,
x
) is a solution of the system (12). This completes the proof.Replacingy
(
s
-
i
)
=
∏
k
≠
i
‍
x
j
k
k of the system (10) with the system (12), we obtain a mixed 0-1 linear program, which is as follows:
(17)
∑
s
-
i
∈
S
-
i
u
i
(
s
j
i
,
s
-
i
)
y
(
s
-
i
)
+
λ
j
i
-
μ
i
=
0
,
e
i
⊤
x
i
-
1
=
0
,
λ
j
i
≤
β
(
1
-
x
j
i
)
,
x
j
i
∈
{
0,1
}
,
λ
j
i
≥
0
,
j
=
1,2
,
…
,
m
i
,
i
=
1,2
,
…
,
n
,
y
(
s
-
i
)
≥
∑
h
≠
i
x
j
h
h
-
(
n
-
2
)
,
y
(
s
-
i
)
≤
x
j
k
k
,
k
≠
i
,
0
≤
y
(
s
-
i
)
,
s
-
i
∈
S
-
i
,
i
=
1,2
,
…
,
n
.
As a corollary of Lemma 3, we obtain the following result.Corollary 4.
The system (17) is equivalent to the system (7).The above idea is illustrated in the following example.Example 5.
Consider a three-player gameΓ
=
(
N
,
S
,
{
u
i
}
i
∈
N
), where N
=
{
1,2
,
3
}, S
i
=
{
s
1
i
,
s
2
i
}, i
∈
N, and {
u
i
}
i
∈
N are given by
(18)
s
1
2
s
2
2
s
1
2
s
2
2
s
1
1
(
1,1
,
1
)
(
1,0
,
1
)
(
0,1
,
0
)
(
1,0
,
0
)
s
2
1
(
1,1
,
1
)
(
1,0
,
1
)
(
0,1
,
0
)
(
0,0
,
0
)
s
1
3
s
2
3
Letβ
=
1. The mixed 0-1 linear program for this game is given by
(19)
y
(
s
1
2
,
s
1
3
)
+
y
(
s
2
2
,
s
1
3
)
+
y
(
s
2
2
,
s
2
3
)
+
λ
1
1
-
μ
1
=
0
,
y
(
s
1
2
,
s
1
3
)
+
y
(
s
2
2
,
s
1
3
)
+
λ
2
1
-
μ
1
=
0
,
x
1
1
+
x
2
1
=
1
,
y
(
s
1
1
,
s
1
3
)
+
y
(
s
2
1
,
s
1
3
)
+
y
(
s
1
1
,
s
2
3
)
+
y
(
s
2
1
,
s
2
3
)
+
λ
1
2
-
μ
2
=
0
,
λ
2
2
-
μ
2
=
0
,
x
1
2
+
x
2
2
=
1
,
y
(
s
1
1
,
s
1
2
)
+
y
(
s
2
1
,
s
1
2
)
+
y
(
s
1
1
,
s
2
2
)
+
y
(
s
2
1
,
s
2
2
)
+
λ
1
3
-
μ
3
=
0
,
λ
2
3
-
μ
3
=
0
,
x
1
3
+
x
2
3
=
1
,
λ
j
i
≤
1
-
x
j
i
,
x
j
i
∈
{
0,1
}
,
λ
j
i
≥
0
,
j
=
1,2
,
i
=
1,2
,
3
,
y
(
s
1
2
,
s
1
3
)
≥
x
1
2
+
x
1
3
-
1
,
y
(
s
1
2
,
s
1
3
)
≤
x
1
2
,
y
(
s
1
2
,
s
1
3
)
≤
x
1
3
,
y
(
s
1
2
,
s
1
3
)
≥
0
,
y
(
s
1
2
,
s
2
3
)
≥
x
1
2
+
x
2
3
-
1
,
y
(
s
1
2
,
s
2
3
)
≤
x
1
2
,
y
(
s
1
2
,
s
2
3
)
≤
x
2
3
,
y
(
s
1
2
,
s
2
3
)
≥
0
,
y
(
s
2
2
,
s
1
3
)
≥
x
2
2
+
x
1
3
-
1
,
y
(
s
2
2
,
s
1
3
)
≤
x
2
2
,
y
(
s
2
2
,
s
1
3
)
≤
x
1
3
,
y
(
s
2
2
,
s
1
3
)
≥
0
,
y
(
s
2
2
,
s
2
3
)
≥
x
2
2
+
x
2
3
-
1
,
y
(
s
2
2
,
s
2
3
)
≤
x
2
2
,
y
(
s
2
2
,
s
2
3
)
≤
x
2
3
,
y
(
s
2
2
,
s
2
3
)
≥
0
,
y
(
s
1
1
,
s
1
3
)
≥
x
1
1
+
x
1
3
-
1
,
y
(
s
1
1
,
s
1
3
)
≤
x
1
1
,
y
(
s
1
1
,
s
1
3
)
≤
x
1
3
,
y
(
s
1
1
,
s
1
3
)
≥
0
,
y
(
s
2
1
,
s
1
3
)
≥
x
2
1
+
x
1
3
-
1
,
y
(
s
2
1
,
s
1
3
)
≤
x
2
1
,
y
(
s
2
1
,
s
1
3
)
≤
x
1
3
,
y
(
s
2
1
,
s
1
3
)
≥
0
,
y
(
s
1
1
,
s
2
3
)
≥
x
1
1
+
x
2
3
-
1
,
y
(
s
1
1
,
s
2
3
)
≤
x
1
1
,
y
(
s
1
1
,
s
2
3
)
≤
x
2
3
,
y
(
s
1
1
,
s
2
3
)
≥
0
,
y
(
s
2
1
,
s
2
3
)
≥
x
2
1
+
x
2
3
-
1
,
y
(
s
2
1
,
s
2
3
)
≤
x
2
1
,
y
(
s
2
1
,
s
2
3
)
≤
x
2
3
,
y
(
s
2
1
,
s
2
3
)
≥
0
,
y
(
s
1
1
,
s
1
2
)
≥
x
1
1
+
x
1
2
-
1
,
y
(
s
1
1
,
s
1
2
)
≤
x
1
1
,
y
(
s
1
1
,
s
1
2
)
≤
x
1
2
,
y
(
s
1
1
,
s
1
2
)
≥
0
,
y
(
s
1
1
,
s
2
2
)
≥
x
1
1
+
x
2
2
-
1
,
y
(
s
1
1
,
s
2
2
)
≤
x
1
1
,
y
(
s
1
1
,
s
2
2
)
≤
x
2
2
,
y
(
s
1
1
,
s
2
2
)
≥
0
,
y
(
s
2
1
,
s
1
2
)
≥
x
2
1
+
x
1
2
-
1
,
y
(
s
2
1
,
s
1
2
)
≤
x
2
1
,
y
(
s
2
1
,
s
1
2
)
≤
x
1
2
,
y
(
s
2
1
,
s
1
2
)
≥
0
,
y
(
s
2
1
,
s
2
2
)
≥
x
2
1
+
x
2
2
-
1
,
y
(
s
2
1
,
s
2
2
)
≤
x
2
1
,
y
(
s
2
1
,
s
2
2
)
≤
x
2
2
,
y
(
s
2
1
,
s
2
2
)
≥
0
.


## 3. 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:NumN: the number of players;
NumS: 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.Example 1.
Consider a three-player gameΓ
=
(
N
,
S
,
{
u
i
}
i
∈
N
), where N
=
{
1,2
,
3
}. The number of strategies for each player, Num
S, is generated from 3 to 45 randomly. The {
u
i
}
i
∈
N are generated randomly too. There are three different ranges for {
u
i
}
i
∈
N in this example, which are from 0 to 10, from 0 to 50, and from 0 to 100.Letβ
=
1000; 30 instances have been solved for each range of {
u
i
}
i
∈
N. Numerical results for each range are presented in Tables 1, 2, and 3, respectively.Table 1
The payoff functionu
i
(
s
j
i
,
s
-
i
) is generated from 0 to 10 randomly.
Prob.
NumN
NumS
NumEquilibra
Time (s)
1
3
4
1
0.53
2
3
4
2
0.62
3
3
4
2
0.56
4
3
5
3
0.56
5
3
6
2
0.41
6
3
6
1
0.66
7
3
7
5
0.59
8
3
8
6
0.58
9
3
8
3
0.89
10
3
8
3
0.81
11
3
10
2
1.00
12
3
11
3
1.47
13
3
12
4
1.81
14
3
14
4
4.91
15
3
14
8
3.81
16
3
15
6
5.87
17
3
19
13
27.86
18
3
19
3
33.40
19
3
21
13
47.28
20
3
23
10
102.51
21
3
24
22
122.94
22
3
25
21
239.20
23
3
26
13
278.50
24
3
26
15
301.58
25
3
28
21
419.97
26
3
33
22
1870.24
27
3
35
20
2082.34
28
3
40
24
4599.72
29
3
44
20
3033.29
30
3
45
26
16992.10Table 2
The payoff functionu
i
(
s
j
i
,
s
-
i
) is generated from 0 to 50 randomly.
Prob.
NumN
NumS
NumEquilibra
Time (s)
1
3
3
4
0.46
2
3
3
0
0.50
3
3
3
1
0.40
4
3
4
0
0.34
5
3
4
2
0.52
6
3
6
0
0.45
7
3
7
1
0.70
8
3
7
2
0.82
9
3
7
1
0.57
10
3
8
0
0.73
11
3
9
0
0.66
12
3
10
0
0.93
13
3
11
1
1.64
14
3
16
0
13.26
15
3
19
0
33.22
16
3
20
3
40.67
17
3
21
2
55.10
18
3
22
4
74.20
19
3
24
0
195.78
20
3
24
2
142.14
21
3
27
3
507.44
22
3
29
2
1178.18
23
3
30
1
1287.87
24
3
30
1
1667.70
25
3
32
1
1638.94
26
3
33
2
1761.86
27
3
34
0
3125.08
28
3
35
5
3446.67
29
3
44
3
36601.30
30
3
45
5
43583.30Table 3
The payoff functionu
i
(
s
j
i
,
s
-
i
) is generated from 0 to 100 randomly.
Prob.
NumN
NumS
NumEquilibra
Time (s)
1
3
3
0
0.41
2
3
3
2
0.45
3
3
4
2
0.51
4
3
5
0
0.49
5
3
5
2
0.61
6
3
7
0
0.56
7
3
7
2
0.41
8
3
8
0
0.61
9
3
8
2
0.89
10
3
8
2
0.68
11
3
10
1
1.11
12
3
12
1
4.00
13
3
13
1
2.64
14
3
13
2
2.64
15
3
16
0
14.25
16
3
19
4
25.70
17
3
22
4
55.94
18
3
24
2
132.87
19
3
24
1
142.96
20
3
25
2
246.76
21
3
26
2
499.40
22
3
28
0
804.76
23
3
28
1
671.67
24
3
30
2
1382.03
25
3
32
1
2821.16
26
3
34
2
3325.67
27
3
37
1
7088.06
28
3
38
2
9395.13
29
3
41
2
20441.10
30
3
43
0
29204.70Example 2.
Consider a five-player gameΓ
=
(
N
,
S
,
{
u
i
}
i
∈
N
), where N
=
{
1,2
,
3,4
,
5
}. The number of strategies for each player, Num
S, is generated from 3 to 7 randomly. The {
u
i
}
i
∈
N are generated randomly too. There are three different ranges for {
u
i
}
i
∈
N in this example, which are from 0 to 10, from 0 to 50, and from 0 to 100.Letβ
=
1000; 10 instances have been solved for each range of {
u
i
}
i
∈
N. Numerical results for each range are presented in Tables 4, 5, and 6, respectively.Table 4
The payoff functionu
i
(
s
j
i
,
s
-
i
) is generated from 0 to 10 randomly.
Prob.
NumN
NumS
NumEquilibra
Time (s)
1
5
3
4
1.09
2
5
3
3
1.18
3
5
3
2
1.19
4
5
4
3
6.85
5
5
4
4
5.26
6
5
5
2
98.95
7
5
5
3
152.76
8
5
5
1
122.88
9
5
6
4
2092.13
10
5
6
2
1693.61Table 5
The payoff functionu
i
(
s
j
i
,
s
-
i
) is generated from 0 to 50 randomly.
Prob.
NumN
NumS
NumEquilibra
Time (s)
1
5
3
3
1.20
2
5
3
1
0.99
3
5
3
1
1.71
4
5
4
1
5.69
5
5
4
1
5.62
6
5
4
1
11.90
7
5
4
3
6.77
8
5
5
1
1996.60
9
5
6
2
2031.19
10
5
7
3
18094.80Table 6
The payoff functionu
i
(
s
j
i
,
s
-
i
) is generated from 0 to 100 randomly.
Prob.
NumN
NumS
NumEquilibra
Time (s)
1
5
3
0
0.80
2
5
4
0
10.98
3
5
4
0
11.11
4
5
4
1
6.93
5
5
4
0
11.07
6
5
5
1
99.30
7
5
5
0
138.33
8
5
6
1
2408.44
9
5
6
2
1960.49
10
5
7
3
22237.60From Tables1, 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.10 seconds and the number of equilibria is 26. It has been shown that every n-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 n-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 work. Besides, some similar problems with multilinear terms could be solved by this method too.


## 4. Conclusions

In this paper, a mixed 0-1 linear programming approach has been proposed to find all pure-strategy Nash equilibria of a finiten-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.



---

*Source: 640960-2014-04-08.xml*