Download as pdf or txt
Download as pdf or txt
You are on page 1of 54

MMAT5360 Game Theory 1

THE CHINESE UNIVERSITY OF HONG KONG


Department of Mathematics
MMAT5360 Game Theory

Contents
1 Two-person zero sum games 2
1.1 Game matrices . . . . . . . . . . . . . . . . . . . . . . . . . . 2
1.2 2 × 2 games . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
1.3 Games reducible to 2 × 2 games . . . . . . . . . . . . . . . . . 12
1.4 2 × n and m × 2 games . . . . . . . . . . . . . . . . . . . . . . 14

2 Linear programming and maximin theorem 28


2.1 Linear programming . . . . . . . . . . . . . . . . . . . . . . . 28
2.2 Transforming maximin problem to dual problem . . . . . . . . 31
2.3 Simplex method . . . . . . . . . . . . . . . . . . . . . . . . . . 34
2.4 Minimax theorem . . . . . . . . . . . . . . . . . . . . . . . . . 46
1 Two-person zero sum games
1.1 Game matrices
In a two-person zero sum game, two players, player I and player II, make
their moves simultaneously. Then the payoffs to the players depend on the
strategies used by the players. In this chapter, we study only zero sum
games which means the sum of the payoffs to the players is always zero. We
will also assume that the game has perfect information which means all
players know how the outcomes depend on the strategies the players use.
Definition 1.1.1 (Strategic form of a two-person zero sum game). The
strategic form of a two-person zero sum game is given by a triple (X, Y, π)
where
1. X is the set of strategies of player I.
2. Y is the set of strategies of player II.
3. π : X × Y → R is the payoff function of player I.
For (x, y) ∈ X × Y , the value π(x, y) is the payoff to player I when player
I uses strategy x and player II uses strategy y. Note that the payoff to
player II is equal to −π(x, y) since the game is a zero sum game. The game
has perfect information means that the function π is known to both players.
We will always assume that the sets X and Y are finite. In this case we may
assume X = {1, 2, · · · , m} and Y = {1, 2, · · · , n}. Then the payoff function
can be represented by an m×n matrix which is called the game matrix and
we will denote it by A = [aij ]. A two-person zero sum game is completely
determined by its game matrix. When player I uses the i-th strategy and
player II uses the j-th strategy, then the payoff to player I is the entry aij
of A. The payoff to player II is then −aij . If a two-person zero sum game
is represented by a game matrix, we will call player I the row player and
player II the column player.
Given a game matrix A, we would like to know what the optimal strategies
for the players are and what the payoffs to the players will be if both of them
use their optimal strategies. The answer to this question is simple if A has a
saddle point.
Definition 1.1.2 (Saddle point). We say that an entry akl is a saddle point
of an m × n matrix A if
Two-person zero sum games 3

1. akl = min {akj }


j=1,2,··· ,n

2. akl = max {ail }


i=1,2,··· ,m

The first condition means that when the row player uses the k-th strategy,
then the payoff to the row player is not less than akl no matter how the column
player plays. The second condition means that when the column player uses
the l-th strategy, then the payoff to the row player is not larger than akl no
matter how the row player plays. Consequently we have

Theorem 1.1.3. If A has a saddle point akl , then the row player may guar-
antee that his payoff is not less than akl by using the k-th strategy and the
column player may guarantee that the payoff to the row player is not larger
than akl by using the l-th strategy.

Suppose A is a matrix which has a saddle point akl . The above theo-
rem implies that the corresponding row and column constitute the optimal
strategies for the players. To find the saddle points of a matrix, first write
down the row minima of the rows and the column maxima of the columns.
Then find the maximum of row minima which is called the maximin, and
Proof? the minimum of the column maxima which is called the minimax. If the
maximin is equal to the minimax, then the entry in the corresponding row
and column is a saddle point. If the maximin and minimax are different,
then the matrix has no saddle point.

Example 1.1.4.

  min
1 2 0 0
 3 5 2  2
 
 0 −4 −3  −4
−2 4 1 −2
max 3 5 2
Both the maximin and minimax are 2. Therefore the entry a23 = 2 is a
saddle point. 

Example 1.1.5.
Two-person zero sum games 4

  min
2 −1 3 1 −1
 −4 2 0 3  −4
0 1 −2 4 −2
max 2 2 3 4
The maximin is −1 while the minimax is 2 which are not equal. Therefore
the matrix has no saddle point. 

Saddle point of a matrix may not be unique. However the values of saddle
points are always the same.

Theorem 1.1.6. The values of the saddle points of a matrix are the same.
That is to say, if akl and apq are saddle points of a matrix, then akl = apq .
Furthermore, we have apq = apl = akq = akl .

Proof. We have

akl ≤ akq (since akl ≤ akj for any j)


≤ apq (since aiq ≤ apq for any i)
≤ apl (since apq ≤ apj for any j)
≤ akl (since ail ≤ akl for any i)

Therefore
akl = akq = apq = apl

We have seen that if A has a saddle point, then the two players have
optimal strategies by using one of their strategies constantly (Theorem 1.1.3).
If A has no saddle point, it is expected that the optimal ways for the players
to play the game are not using one of the strategies constantly. Take the
rock-paper-scissors game as an example.

Example 1.1.7 (Rock-paper-scissors). The rock-paper-scissors game has


the game matrix

 R P S 
R 0 −1 1
P  1 0 −1 
S −1 1 0
Two-person zero sum games 5

Here we use the order rock(R), paper(P), scissors(S) to write down the game
matrix. 

Everybody knows that the optimal strategy of playing the rock-paper-


scissors game is not using any one of the gestures constantly. When one
of the strategies of a player is used constantly, we say that it is a pure
strategy. For games without saddle point like rock-paper-scissors game,
mixed strategies instead of pure strategies should be used.

Definition 1.1.8 (Mixed strategy). A mixed strategy is a row vector x


= (x1 , x2 , · · · , xm ) ∈ Rm such that

1. xi ≥ 0 for any i = 1, 2, · · · , m
m
P
2. xi = 1
i=1

In other words, a vector is a mixed strategy if it is a probability vector.


We will denote the set of probability m vectors by P m .

When a mixed strategy (x1 , x2 , · · · , xm ) is used, the player uses his i-


th strategy with a probability of xi for i = 1, 2, · · · , m. Mixed strategies
are generalization of pure strategies. If one of the coordinates of a mixed
strategy is 1 and all other coordinates are 0, then it is a pure strategy. So
a pure strategy is also a mixed strategy. Suppose the row player and the
column player use mixed strategies x ∈ P m and y ∈ P n respectively. Then
the outcome of the game is not fixed because the payoffs to the players will
then be random variables. We denote by π(x, y) the expected payoff to
the row player when the row player uses mixed strategy x and the column
player uses mixed strategy y. We have the following simple formula for the
expected payoff π(x, y) to the row player.

Theorem 1.1.9. In a two-person zero sum game with m × n game matrix


A, suppose the row player uses mixed strategies x and the column player uses
mixed strategies y independently. Then the expected payoff to the row player
is
π(x, y) = xAyT
where yT is the transpose of y.
Two-person zero sum games 6

Proof. The expected payoff to the row player is


E(payoff
P to the row player)
= aij P (I uses i-th strategy and II uses j-th strategy)
1≤i≤m
1≤j ≤n
P
= aij P (I uses i-th strategy)P (II uses j-th strategy)
1≤i≤m
1≤j ≤n
P
= aij xi yj
1≤i≤m
1≤j ≤n

= xAyT

Let A be an m × n game matrix. For x ∈ P m , the vector


xA ∈ Rn
has the following interpretation. The j-th coordinate, j = 1, 2, · · · , n, of the
vector is the expected payoff to the row player if the row player uses mixed
strategy x and the column player uses the j-th strategy constantly. In this
case a rational column player would use the l-th strategy, 1 ≤ l ≤ n, such
that the l-th coordinate of the vector xA is the least coordinate among all
coordinates of xA. (Note that the column player wants the expected payoff
to the row player as small as possible since the game is a zero sum game.)
On the other hand, for y ∈ P n , the i-th coordinate, i = 1, 2, · · · , m, of
the column vector
AyT ∈ Rm
is the expected payoff to the row player if the row player uses his i-th strategy
constantly and the column player uses the mixed strategy y. In this case a
rational row player would use the k-th strategy, 1 ≤ k ≤ m, such that the
k-th coordinate of AyT is the largest coordinate among all coordinates of
AyT .
When a game matrix does not have a saddle point, both players do not
have optimal pure strategies. However there always exists optimal mixed
strategies for the players by the following minimax theorem due to von Neu-
mann.
Theorem 1.1.10 (Minimax theorem). Let A be an m × n matrix. Then
there exists real number ν ∈ R, mixed strategy for the row player p ∈ Rm ,
and mixed strategy for the column player q ∈ Rn such that
Two-person zero sum games 7

1. pAyT ≥ ν, for any y ∈ P n

2. xAqT ≤ ν, for any x ∈ P m

3. pAqT = ν

In the above theorem, the real number ν = ν(A) is called the value, or the
security level, of the game matrix A. The strategy p is called a maximin
strategy for the row player and the strategy q is called a minimax strategy
for the column player. The value ν of a matrix is unique. However maximin
strategy and minimax strategy are in general not unique.
The maximin strategy p and the minimax strategy q are the optimal
strategies for the row player and the column player respectively. It is because
the row player may guarantee that his payoff is at least ν no matter how the
column player plays by using the maximin strategy p. This is also the reason
why the value ν is called the security level. Similarly, the column player may
guarantee that the payoff to the row player is at most ν, and thus his payoff
is at least −ν, no matter how the row player plays by using the minimax
strategy q. We will prove the minimax theorem in Section 2.4.

1.2 2 × 2 games
In this section, we study 2 × 2 game matrices closely and see how one can
solve them, that means finding the maximin strategies for the row player,
minimax strategies for the column player and the values of the game. First
we look at a simple example.

Example 1.2.1 (Modified rock-paper-scissors). The rules of the modified


rock-paper-scissors are the same as the ordinary rock-paper-scissors except
that the row player can only show the gesture rock(R) or paper(P) but not
scissors while the column player can only show the gesture scissors(S) or
rock(R) but not paper. The game matrix of the game is

 S R 
R 1 0
P −1 1
It is easy to see that the game matrix does not have a saddle point. Thus
there is no pure maximin or minimax strategy. To solve the game, suppose
Two-person zero sum games 8

the row player uses mixed strategy x = (x, 1 − x). Consider


 
1 0
xA = (x, 1 − x) = (x − (1 − x), 1 − x) = (2x − 1, 1 − x)
−1 1

This shows that when the row player uses mixed strategy x = (x, 1 − x), then
his payoff is 2x − 1 if the column player uses his 1st strategy scissors(S) and
is 1 − x if the column player uses his 2nd strategy rock(R). Now we solve the
equation 2x − 1 = 1 − x and get x = 23 . One may see that if 0 ≤ x < 23 ,
then 2x − 1 < x − 1 and a rational column player would use his 1st strategy
scissors(S) and the payoff to the row player would be 2x − 1 < 13 . On the
other hand, if 23 < x ≤ 1, then 2x − 1 > 1 − x and a rational column
player would use his 2nd strategy rock(R) and the payoff to the row player
would be 1 − x < 13 . Now if x = 23 , that is if the row player uses the mixed
strategy ( 23 , 13 ), then he may guarantee that his payoff is 1 − x = 2x − 1 = 13
no matter how the column player plays. This is the largest payoff he may
guarantee and therefore the mixed strategy p = ( 23 , 31 ) is the maximin strategy
for the row player. Similarly, suppose the column player uses mixed strategy
y = (y, 1 − y). Consider
     
T 1 0 y y y
Ay = =
−1 1 1−y −y + (1 − y) 1 − 2y

If 0 ≤ y < 13 , then y < 1 − 2y and a rational row player would use his 2nd
strategy paper(P) and his payoff would be 1 − 2y > 13 . If 31 < y ≤ 1, then
y > 1 − 2y and a rational row player would use his 1st strategy rock(R) and
his payoff would be y > 13 . If y = 31 , then the payoff to the row player is always
1
3
no matter how he plays. Therefore q = ( 31 , 23 ) is the minimax strategy for
the column player and he may guarantee that the payoff to the row player is
1
3
no matter how the row player plays. Moreover the value of the game is
ν = 31 . We summarize the above discussion in the following statements.
1. The row player may use his maximin strategy p = ( 23 , 13 ) to guarantee
that his payoff is ν = 13 no matter how the column player plays.

2. The column player may use his minimax strategy q = ( 31 , 23 ) to guar-


antee that the payoff to the row player is ν = 31 no matter how the row
player plays. 
Now we give the complete solutions to 2 × 2 games.
Two-person zero sum games 9

Theorem 1.2.2. Let  


a b
A=
c d
be a 2 × 2 game matrix. Suppose A has no saddle point. Then
1. The value of the game is
ad − bc
ν=
a−b−c+d

2. The maximin strategy for the row player is


 
d−c a−b
p= ,
a−b−c+d a−b−c+d

3. The minimax strategy for the column player is


 
d−b a−c
q= ,
a−b−c+d a−b−c+d

Proof. Suppose the row player uses mixed strategy x = (x, 1 − x). Consider
 
a b
xA = (x, 1−x) = (ax+c(1−x), bx+d(1−x)) = ((a−c)x+c, (b−d)x+d)
c d

Now the payoff to the row player that he can guarantee is

min{(a − c)x + c, (b − d)x + d}

Since A has no saddle point, we have a − c and b − d are of different sign and
the maximum of the above minimum is obtained when
(a − c)x + c = (b − d)x + d
d−c
⇒ x =
a−b−c+d
a−b
Note that x and 1 − x = a−b−c+d must be of the same sign because A has no
saddle point. We must have 0 < x < 1 and we conclude that the maximin
strategy for the row player is
 
d−c a−b
p= ,
a−b−c+d a−b−c+d
Two-person zero sum games 10

Similarly suppose the column player uses mixed strategy y = (y, 1 − y).
Consider
      
T a b y aq + b(1 − y) (a − b)y + b
Ay = = =
c d 1−y cq + d(1 − y) (c − d)y + d

The column player may guarantee that the payoff to the row player is at
most
max{(a − b)y + b, (c − d)y + d}
The above quantity attains it minimum when

(a − b)y + b = (c − d)y + d
d−b
⇒ y =
a−b−c+d
and the minimax strategy for the column player is
 
d−b a−c
q= ,
a−b−c+d a−b−c+d

By calculating
ad−bc
   
ad − bc ad − bc T a−b−c+d
pA = , and Aq = ad−bc
a−b−c+d a−b−c+d a−b−c+d

we see that the maximum payoff that the row player may guarantee to him-
self and the minimum payoff to the row player that the column player may
ad−bc
guarantee are both a−b−c+d . In fact the minimax theorem (Theorem 1.1.10)
says that these two values must be equal. We conclude that the value of A
ad−bc
is ν = a−b−c+d .
Note that the above formulas work only when A has no saddle point. If
A has a saddle point, the vectors p and q obtained using the formulas may
not be probability vectors.

Example 1.2.3. Consider the modified rock-paper-scissors game (Example


1.2.1) with game matrix  
1 0
A=
−1 1
Two-person zero sum games 11

The game matrix has no saddle point. By Theorem 1.2.2, the value of the
game is
ad − bc 1 × 1 − 0 × (−1) 1
ν= = =
a−b−c+d 1 − 0 − (−1) + 1 3
the maximin strategy for the row player is
 
d−c a−b
p = ,
a−b−c+d a−b−c+d
 
1 − (−1) 1−0
= ,
1 − 0 − (−1) + 1 1 − 0 − (−1) + 1
 
2 1
= ,
3 3
and the minimax strategy for the column player is
 
d−b a−c
q = ,
a−b−c+d a−b−c+d
 
1−0 1 − (−1)
= ,
1 − 0 − (−1) + 1 1 − 0 − (−1) + 1
 
1 2
= ,
3 3

Example 1.2.4. In a game, each of the two players Andy and Bobby calls
out a number simultaneously. Andy may call out either 1 or −2 while Bobby
may call out either 1 or −3. Then Bobby pays p dollars to Andy where p
is the product of the two numbers (Andy pays Bobby −p dollars when p is
negative). The game matrix of the game is
 
1 −3
A=
−2 6
The value of the game is
1 × 6 − (−2) × (−3)
ν= =0
1 − (−3) − (−2) + 6
the maximin strategy for Andy is
   
6 − (−2) 1 − (−3) 2 1
p= , = ,
1 − (−3) − (−2) + 6 1 − (−3) − (−2) + 6 3 3
Two-person zero sum games 12

and the minimax strategy for Bobby is


   
6 − (−3) 1 − (−2) 3 1
q= , = ,
1 − (−3) − (−2) + 6 1 − (−3) − (−2) + 6 4 4

We say that a two-person zero sum game is fair if its value is zero. The
game in Example 1.2.4 is a fair game.

1.3 Games reducible to 2 × 2 games


To solve an m × n game matrix for m, n > 2 without saddle point, we may
first remove the dominated rows or columns. A row dominates another if all
its entries are larger than or equal to the corresponding entries of the other.
Similarly, a column dominates another if all its entries are smaller than or
equal to the corresponding entries of the other.

Definition 1.3.1. Let A = [aij ] be an m × n game matrix.

1. We say that the k-th row is dominated by the r-th row if akj ≤ arj for
any j = 1, 2, · · · , n.

2. We say that the l-th column is dominated the s-th column if ail ≥ ais
for any i = 1, 2, · · · , m.

We say that a row (column) is a dominated row (column) if it is domi-


nated by another row (column).

If the k-th row of A is dominated by the r-th row, then for the row player,
playing the r-th strategy is at least as good as playing the k-th strategy.
Thus the k-th row can be ignored in finding the maximin strategy for the
row player. Similarly the column player may ignore a dominated column
when finding his minimax strategy.

Theorem 1.3.2. Let A be an m × n game matrix. Suppose A has a domi-


nated row or dominated column. Let A0 be the matrix obtained by deleting a
dominated row or dominated column from A. Then

1. The value of A0 is equal to the value of A.


Two-person zero sum games 13

2. The players of A have maximin/minimax strategies which never use


dominated row/column.

More precisely, if the k-th row is a dominated row of A, A0 is the (m − 1) × n


matrix obtained by deleting the k-th row from A, and p0 = (p1 , · · · , pk−1 , pk+1 ,
· · · , pm ) ∈ P m−1 is a maximin strategy for the row player of A0 , then p =
(p1 , · · · , pk−1 , 0, pk+1 , · · · , pm ) ∈ P m is a maximin strategy for the row player
of A. Similarly, if the l-th column is a dominated row of A, A0 is the
m × (n − 1) matrix obtained by deleting the l-th column from A, and q0 =
(q1 , · · · , ql−1 , ql+1 · · · , qn ) ∈ P n−1 is a minimax strategy of A0 , then q =
(q1 , · · · , ql−1 , 0, ql+1 , · · · , qn ) ∈ P n is a minimax strategy of A.

Proof. Suppose the k-th row of A is dominated by the r-th row and A0
is obtained by deleting the k-th row from A. Let ν 0 be the value of A0
and q ∈ P n be a minimax strategy of A0 . For any mixed strategy x =
(x1 , · · · , xm ) ∈ P m , define x0 = (x01 , · · · , x0k−1 , x0k+1 , · · · , x0m ) ∈ P m−1 by
(
xi if i 6= r
x0i =
xk + xr if i = r

and we have
xAqT ≤ x0 A0 qT ≤ ν 0
Here the first inequality holds because the k-th is dominated by the r-th
row and the second inequality holds because q is a minimax strategy of A0 .
Thus the value of A is less than or equal to ν 0 . On the other hand, let
p0 = (p1 , · · · , pk−1 , pk+1 , · · · , pm ) ∈ P m−1 be a maximin strategy of A0 and
let p = (p1 , · · · , pk−1 , 0, pk+1 , · · · , pm ) ∈ P m . Then we have

pAyT = p0 A0 yT ≥ ν 0

for any y ∈ P n . It follows that the value of A is ν 0 and p is a maximin


strategy of A. The proof of the second statement is similar.
The removal of dominated rows or columns does not change the value of a
game. The above theorem only says that there is at least one optimal strategy
with zero probability at the dominated rows and columns. There may be
other optimal strategies which have positive probability at the dominated
rows or columns. However any optimal strategy must have zero probability
at strictly dominated rows and columns. Here a row is strictly dominated
Two-person zero sum games 14

by another row if all its entries are strictly smaller than the corresponding
entries of the other. Similarly a column is strictly dominated by another
column if all its entries are strictly larger than the corresponding entries of
the other.
Example 1.3.3. To solve the game matrix
 
3 −1 4
A =  2 −3 1 
−2 4 0
we may delete the second row since it is dominated by the first row and get
the reduced matrix  
0 3 −1 4
A =
−2 4 0
Then we may delete the third column since is dominated by the first column.
Hence the matrix A is reduced to the 2 × 2 matrix
 
00 3 −1
对吗? A =
−2 4
The value of this 2 × 2 matrix is 0.7. The maximin and minimax strategies
are (0.6, 0.4) and (0.5, 0.5) respectively. Therefore the value of A is 0.7, a
maximin strategy for the row player is (0.6, 0, 0.4) and a minimax strategy for
the column player is (0.5, 0.5, 0). Note that we need to insert the zeros to the
dominated rows and columns when writing down the maximin and minimax
strategies for the players. 

1.4 2 × n and m × 2 games


Let  
a11 a12 · · · a1n
A=
a21 a22 · · · a2n
be a 2 × n matrix. We are going to explain how to solve the game with game
matrix A if there is no dominated row or column. Suppose the row player
uses strategy x = (x, 1 − x) for 0 ≤ x ≤ 1. The payoff to the row player is
given by
 
a11 a12 · · · a1n
xA = (x, 1 − x)
a21 a22 · · · a2n
= (a11 x + a21 (1 − x), a12 x + a22 (1 − x), · · · , a1n x + a2n (1 − x))
Two-person zero sum games 15

Now we need to find the value of x so that the minimum

min {a1j x + a2j (1 − x)}


1≤j≤n

of the coordinates of xA attains its maximum. We may use graphical method


to achieve this goal.

Step 1.
For each 1 ≤ j ≤ n, draw the graph of

v = a1j x + a2j (1 − x), for 0 ≤ x ≤ 1

The graph shows the payoff to the row player if the column player uses
the j-th strategy.

Step 2.
Draw the graph of

v = min {a1j x + a2j (1 − x)}


1≤j≤n

This is called the lower envelope of the graph.

Step 3.
Suppose (p, ν) is a maximum point of the lower envelope. Then ν is
the value of the game and p = (p, 1 − p) is a maximin strategy for the
row player.

Step 4.
The solutions for y ∈ P n to the equation

AyT = ν1T

where 1 = (1, 1), give the minimax strategy for the column player.

Example 1.4.1. Solve the 2 × 4 game matrix


 
−1 0 4 6
A=
5 3 2 −1

Solution.
Two-person zero sum games 16

Step 1. Draw the graph of




 C1 : v = −x + 5(1 − x)

C2 : v = 3(1 − x)


 C3 : v = 4x + 2(1 − x)
= 6x − (1 − x)

C4 : v

Step 2. Draw the lower envelope (blue polygonal curve).


Step 3. The maximum point of the lower envelope is the intersection
point of C2 and C4. By solving
(
C2 : v = 3(1 − x)
C4 : v = 6x − (1 − x)

we obtain the maximum point (p, ν) = (0.4, 1.8) of the lower envelope.
Step 4. Find the minimax strategies for the column player by solving
    
0 6 y2 1.8
=
3 −1 y4 1.8
Two-person zero sum games 17

and get y2 = 0.7 and y4 = 0.3.

Therefore the value of the game is ν = 1.8. The maximin strategy for the
row player is p = (0.4, 0.6) and the minimax strategy for the column player
is q = (0, 0.7, 0, 0.3). 

Example 1.4.2. Solve the 2 × 5 game matrix


 
1 3 0 −1 2
A=
−1 −3 2 5 −2

Solution. The lower envelope is shown in the following figure.

By solving 
C1 : v = x − (1 − x)

C3 : v = 2(1 − x)

C4 : v = −x + 5(1 − x)

Two-person zero sum games 18

we see that the maximum point of the lower envelope is (p, ν) = (0.75, 0.5).
Thus the maximin strategy for the row player is (0.75, 0.25) and the value of
the game is ν = 0.5. To find minimax strategies for the column player, we
solve     
1 1 1 y1 1
 1 0 −1   y3  =  0.5 
−1 2 5 y4 0.5
Note that we have added the equation y1 +y3 +y4 = 1 to exclude the solutions
which are not probability vectors. (Explain why we didn’t do it in Example
1.4.1.) Using row operation, we obtain the row echelon form
   
1 1 1 1 1 0 −1 0.5
 1 0 −1 0.5  −→  0 1 2 0.5 
−1 2 5 0.5 0 0 0 0

The non-negative solution to the system of equations is

(y1 , y3 , y4 ) = (0.5 + t, 0.5 − 2t, t) for 0 ≤ t ≤ 0.25

Therefore the column player has minimax strategies

q = (0.5 + t, 0, 0.5 − 2t, t, 0) for 0 ≤ t ≤ 0.25

In particular, (0.5, 0, 0.5, 0, 0) and (0.75, 0, 0, 0.25, 0) are minimax strategies


for the column player. 

Example 1.4.3. Solve the 2 × 5 game matrix


 
−3 −1 −2 2 1
A=
1 −1 3 −2 0

Solution. The lower envelope is shown in the following figure.


Two-person zero sum games 19

The maximum points of the lower envelope are points lying on the line seg-
ment joining (0.25, −1) and (0.5, −1). Thus the value of the game is ν = −1.
The maximin strategies for the row player are

p = (p, 1 − p) for 0.25 ≤ p ≤ 0.5

and the minimax strategy for the column player is

q = (0, 1, 0, 0, 0)

Next we consider m × 2 games. There are two methods to solve such


games.
Method 1.
Let y = (y, 1 − y), 0 ≤ y ≤ 1, be the strategy for the column player.
Draw the upper envelope

v = max {ai1 y + ai2 (1 − y)}


1≤i≤m

Suppose the minimum point of the upper envelope is (q, ν). Then the
value of the game is ν and the minimax strategy for the column player
Two-person zero sum games 20

is q = (q, 1 − q). Moreover the maximum strategies for the row player
are the solutions for x ∈ P m to the equation

xA = ν1 = (ν, ν)

Method 2.
Solve the game with 2 × m game matrix −AT . Then

value of A = − value of −AT


maximin strategy of A = minimax strategy of −AT
minimax strategy of A = maximin strategy of −AT

Example 1.4.4. Solve the 4 × 2 game matrix


 
4 −2
 3 0 
A=  −1 1 

−3 4

Solution.

Method 1.
Let y = (y, 1 − y), 0 ≤ y ≤ 1, be the strategy of the column player.
The upper envelope is
Two-person zero sum games 21

Solving (
R2 : v = 3(1 − y)
R4 : v = −3y + 4(1 − y)
the minimum point of the upper envelope is (q, ν) = (0.4, 1.2). Now
the row player would only use the 2nd and 4th strategy and we solve
 
3 0
(x2 , x4 ) = (1.2, 1.2)
−3 4

which gives (x2 , x4 ) = (0, 7, 0.3). Therefore the value of the game is
ν = 1.2, the maximin strategy for the row player is p = (0, 0.7, 0, 0.3)
and the minimax strategy for the column player is q = (0.4, 0.6).

Method 2.
Consider  
T −4 −3 1 3
−A =
2 0 −1 −4
Draw the lower envelope
Two-person zero sum games 22

We see that the value of −AT is -1.2 and the maximin strategy of −AT
is (0.4, 0.6). Solving
    
−3 3 x2 −1.2
=
0 −4 x4 −1.2

We get x2 = 0.7 and x4 = 0.3. Thus the minimax strategy of −AT is


(0, 0.7, 0, 0.3). Therefore

value of A = − value of −AT = 1.2


maximin strategy of A = minimax strategy of −AT = (0, 0.7, 0, 0.3)
minimax strategy of A = maximin strategy of −AT = (0.4, 0.6)


Theorem 1.4.5 (Principle of indifference). Let A be an m × n game matrix.
Suppose ν is the value of A, p = (p1 , · · · , pm ) be a maximin strategy for the
row player and q = (q1 , · · · , qn ) be a minimax strategy for the column player.
Pn
For any k = 1, 2, · · · , m, if pk > 0, then akj qj = ν. In particular, when
j=1
the column player uses his minimax strategy q, then the payoff to the row
Two-person zero sum games 23

player are indifferent among all his k-th strategies with pk > 0. Similarly,
m
P
for any l = 1, 2, · · · , n, if ql > 0, then ail pi = ν. In particular, when the
i=1
row player uses his maximin strategy p, then the payoff to the row player are
indifferent among all the l-th strategies of the column player with ql > 0.
Proof. For each k = 1, 2, · · · , m, we have
n
X
akj qj ≤ ν
j=1

since q is a minimax strategy for the column player. On the other hand,
m n
! m
X X X
ν = pAqT = pk akj qj ≤ pk ν = ν
k=1 j=1 k=1

Thus we have n
X
pk akj qj = pk ν
j=1

for any k = 1, 2, · · · , m. Therefore


n
X
akj qj = ν
j=1

whenever pk > 0. The proof of the second statement is similar.


Exercise 2
1. Find the values of the following game matrices by finding their saddle
points
   
5 1 −2 6 −4 5 −3 −3
(a)  −1 0 1 −2   0 1 3 −1 
(b) 
 −3 −1 2

3 2 5 4 −5 
2 −4 0 −2

2. Solve the following game matrix, that is, find the value of the game,
a maximin strategy for the row player and a minimax strategy for the
column.
Two-person zero sum games 24

   
1 7 5 −3
(a)
2 −2  −3 5 
(e) 
 2 −1 

 
3 −1 4 0
(b)
−2 4  
5 −2 4
  (f)  3 −3 1 
3 2 4 0
(c) 0 3 2
−2 1 −4 5  
  5 1 −2 6
1 0 4 2 (g)  −1 0 1 −2 
(d)
0 2 −3 −2 3 2 5 4

3. Raymond holds a black 2 and a red 9. Calvin holds a red 3 and a black
8. Each of them chooses one of the cards from his hand and then two
players show the chosen cards simultaneously. If the chosen cards are
of the same colour, Raymond wins and Calvin wins if the cards are of
different colours. The loser pays the winner an amount equal to the
number on the winner’s card. Write down the game matrix, find the
value of the game and the optimal strategies of the players.
4. Alex and Becky point fingers to each other, with either one finger or
two fingers. If they match with one finger, Becky pays Alex 3 dollars.
If they match with two fingers, Becky pays Alex 11 dollars. If they
don’t match, Alex pays Becky 1 dollar.
(a) Find the optimal strategies for Alex and Becky.
(b) Suppose Alex pays Becky k dollars as a compensation before the
game. Find the value of k to make the game fair.
5. Player I and II choose integers i and j respectively where 1 ≤ i, j ≤ 7.
Player II pays Player I one dollar if |i − j| = 1. Otherwise there is no
payoff. Write down the game matrix of the game, find the value of the
game and the optimal strategies for the players.
6. Use the principle of indifference to solve the game with game matrix
 
1 −2 3 −4
 0 1 −2 3 
 
 0 0 1 −2 
0 0 0 1
Two-person zero sum games 25

7. In the Mendelsohn game, two players choose an integer from 1 to 5


simultaneously. If the numbers are equal there is no payoff. The player
that chooses a number one larger than that chosen by his opponent
wins 1 dollar from its opponent. The player that chooses a number two
or more larger than his opponent loses 2 dollars to its opponent. Find
the game matrix and solve the game.
8. Aaron puts a chip in either his left hand or right hand. Ben guesses
where the chip is. If Ben guesses the left hand, he receives $2 from
Aaron if he is correct and pays $4 to Aaron if he is wrong. If Ben
guesses the right hand, he receives $1 from Aaron if he is correct and
pays $3 to Aaron if he is wrong.
(a) Write down the payoff matrix of Aaron. (Use order of strategies:
Left, Right.)
(b) Find the maximin strategy for Aaron, the minimax strategy for
Ben and the value of the game.
9. Let  
−3 1
A=
c −2
where c is a real number.
(a) Find the range of values of c such that A has a saddle point.
(b) Suppose the zero sum game with game matrix A is a fair game.
(i) Find the value of c.
(ii) Find the maximin strategy for the row player and the minimax
strategy for the column player.
10. Prove that if A is a skewed symmetric matrix, that is, AT = −A, then
the value of A is zero.
11. Let 1 = (1, 1, · · · , 1). Prove the following statements.
(a) If A is a symmetric matrix, that is AT = A, and there exists
probability vector y ∈ P n such that AyT = v1T where v ∈ R is a
real number, then v is the value of A.
(b) There exists a square matrix A, a probability vector y and a real
number v such that AyT = v1T but v is not the value of A.
Two-person zero sum games 26

12. Let n be a positive integer and


 
λ1
 λ2 0 
D=
 
... 
0
 
λn

be an n × n diagonal matrix where λ1 ≤ λ2 ≤ · · · ≤ λn .

(a) Suppose λ1 ≤ 0 and λn > 0. Find the value of the zero sum game
with game matrix D.
(b) Suppose λ1 > 0. Solve the zero sum game with game matrix D.

13. Let  
1 −1 0 0 0

 −1 −1 1 0 0 

A=
 0 1 1 −1 0 .

 0 0 −1 −1 1 
0 0 0 1 −1

(a) Find a vector x = (1, x2 , x3 , x4 , x5 ) ∈ R5 and a real number a such


that
AxT = (0, 0, 0, 0, a)T
(b) Find a vector y = (1, y2 , y3 , y4 , y5 ) ∈ R5 and a real number b such
that
AyT = (1, 1, 1, 1, b)T
(c) Find the maximin strategy, the minimax strategy and the value
of A. (Hint: Find real numbers α, β ∈ R such that q = αx + βy
satisfies AqT = v1T for some v ∈ R.)

14. For positive integer k, define


 
4k − 3 −(4k − 2)
Ak = .
−(4k − 1) 4k

(a) Solve Ak , that is, find the maximin strategy, minimax strategy
and value of Ak in terms of k.
Two-person zero sum games 27

(b) Let r1 , r2 , · · · , rn > 0 be positive real numbers. Using the principle


of indifference, or otherwise, find, in terms of r1 , r2 , · · · , rn , the
value of  1 
r1
0 0 ··· 0
 0 1 0 ··· 0 
 r2 
1
D =  0 0 r3 · · · 0  .
 
 . . . .
 .. .. .. . . ... 

0 0 0 · · · r1n

(c) Find, with proof, the value of the matrix


 
A1 0 0 ··· 0
 0
 A2 0 ··· 0 

A= 0
 0 A3 ··· 0 .

 .. .. .. ... .. 
 . . . . 
0 0 0 · · · A25
2 Linear programming and maximin theorem
2.1 Linear programming
In this chapter we study two-person zero sum game with m × n game matrix
 
a11 a12 · · · a1n
 a21 a22 · · · a2n 
A =  ..
 
.. . . .. 
 . . . . 
am1 am2 · · · amn

Suppose the row player uses strategy x = (x1 , · · · , xm ) ∈ P m . Then the


column player would use his j-th strategy such that

a1j p1 + a2j p2 + · · · + amj pm

is minimum among j = 1, 2, · · · , n. Thus the payoff to the row player that


he can guarantee is

min {a1j x1 + a2j x2 + · · · + amj xm }


j=1,2,··· ,n

Hence if the above expression attains its maximum at x = p ∈ P m , then p


is a maximin strategy for the row player. Moreover, the value of the game is

ν = maxm min {a1j x1 + a2j x2 + · · · + amj xm }


x∈P j=1,2,··· ,n

By introducing a new variable v, we can restate the maximin problem, that


is finding a maximin strategy, as the following linear programming problem

max v
subject to a11 p1 + a21 p2 + · · · + am1 pm ≥ v
a12 p1 + a22 p2 + · · · + am2 pm ≥ v
..
.
a1n p1 + a2n p2 + · · · + amn pm ≥ v
p1 + p2 + · · · + pm = 1
p1 , p2 , · · · , pm ≥ 0
Linear programming and minimax theorem 29

Similarly, to find a minimax strategy for the column player, we need to solve
the following minimax problem
min v
subject to a11 q1 + a12 q2 + · · · + a1n qn ≤ v
a21 q1 + a22 q2 + · · · + a2n qn ≤ v
..
.
am1 q1 + am2 q2 + · · · + amn qn ≤ v
q1 + q2 + · · · + qn = 1
q1 , q2 , · · · , qn ≥ 0
To solve the maximin and minimax problems, first we transform them to a
pair of primal and dual problems.
Definition 2.1.1 (Primal and dual problems). A linear programming prob-
lem in the following form is called a primal problem.
n
P
max f (y1 , · · · , yn ) = cj y j + d
j=1
n
P
subject to aij yj ≤ bi , i = 1, 2, · · · , m
j=1
y1 , y2 , · · · , yn ≥ 0
The dual problem associated to the above primal problem is
m
P
min g(x1 , · · · , xm ) = bi x i + d
i=1
m
P
subject to aij xi ≥ cj , j = 1, 2, · · · , n
i=1
x1 , x2 , · · · , xm ≥ 0
Here x1 , · · · , xm , y1 , · · · , yn are variables, and aij , bi , cj , d, i = 1, 2, · · · , m,
j = 1, 2, · · · , n, are constants. The linear functions f and g are called ob-
jective functions. The primal problem and the dual problem can be written
in the following matrix forms
Primal problem max f (y) = cyT + d
subject to AyT ≤ bT
y≥0
Dual problem min g(x) = xbT + d
subject to xA ≥ c
x≥0
Linear programming and minimax theorem 30

Here x ∈ Rm , y ∈ Rn are variable vectors, A is an m × n constant matrix,


b ∈ Rm , c ∈ Rn are constant vectors and d ∈ R is a real constant. The
inequality u ≤ v for vectors u, v means each of the coordinates of v − u is
non-negative.
For primal and dual problems, we always have the constraints x, y ≥ 0.
In other words, all variables are non-negative. From now on, we will not
write down the constraints x, y ≥ 0 for primal and dual problems and it is
understood that all variables are non-negative.
Definition 2.1.2. Suppose we have a pair of primal and dual problems.
1. We say that a vector x ∈ Rm in the dual problem, (or y ∈ Rn in the
primal problem), is feasible if it satisfies the constraints of the problem.
We say that the primal problem (or the dual problem) is feasible there
exists a feasible vector for the problem.
2. We say that the primal problem, (or the dual problem), is bounded if
the objective function is bounded above, (or below) on the set of feasible
vectors.
3. We say that a feasible vector x ∈ Rm in the dual problem, (or y ∈ Rn
in the primal problem), is optimal if the objective function f (or g)
attains its maximum (or minimax) at x (or y) on the set of feasible
vectors.
Theorem 2.1.3. Suppose x and y are feasible vectors in the dual and primal
problems respectively. Then
f (y) ≤ g(x)
Proof. We have
f (y) = cyT + d
≤ xAyT + d (since x is feasible and y ≥ 0)
≤ xbT + d (since y is feasible and x ≥ 0)
= g(x)

The theorem above has a simple and important consequence that the
primal problem is bounded if the dual problem associated with it has a
feasible vector, and vice verse.
Linear programming and minimax theorem 31

Theorem 2.1.4. Suppose we have a pair of primal and dual problems.

1. If the primal problem is feasible, then the dual problem is bounded.

2. If the dual problem is feasible, then the primal problem is bounded.

3. If both problems are feasible, then both problems are solvable, that is,
there exists optimal vectors p and q for the dual and primal problems
respectively. Moreover we have f (p) ≤ g(q).

Proof. For the first statement, suppose the primal problem has a feasible
vector q. Then for any feasible vector x of the dual problem, we have g(x) ≥
f (q) by Theorem 2.1.3. Hence the dual problem is bounded. The proof of the
second statement is similar. For the third statement, suppose both problems
are feasible. Then both problems are bounded by the first two statements.
Observe that the set of feasible vectors is closed. It follows that the optimal
values of the objective functions f and g are attainable. Therefore there
exists optimal vectors p and q for the dual and primal problems respectively
and f (q) ≤ g(p) by Theorem 2.1.3.
Furthermore we have the following important theorem in linear program-
ming concerning the solutions to the primal and dual problems.

Theorem 2.1.5. Suppose both the dual problem and the primal problem are
feasible. Then there exist optimal vectors p and q for the dual and primal
problem respectively, and we have

f (q) = g(p)

Proof. We have proved the solvability of the problems. The equality f (q) =
g(p) can be proved using minimax theorem and we omit the proof here.

2.2 Transforming maximin problem to dual problem


To find a maximin strategy for the row player of a two-person zero sum game,
we have seen in the previous section that we need to solve the following
Linear programming and minimax theorem 32

maximin problem.

max v
subject to a11 p1 + a21 p2 + · · · + am1 pm ≥ v
a12 p1 + a22 p2 + · · · + am2 pm ≥ v
..
.
a1n p1 + a2n p2 + · · · + amn pm ≥ v
p1 + p2 + · · · + pm = 1
p1 , p2 , · · · , pm ≥ 0

which can be written into following matrix form

max v
subject to pA ≥ v1
p1T = 1
p≥0

where 1 = (1, · · · , 1) ∈ Rm . We solve the above maximin problem in the


following two steps.
1. Transform the maximin problem to a dual problem.

2. Use simplex method to solve the dual problem.


In this section, we are going to discuss how to transform a maximin problem
to a dual problem. Note that the maximin problem is neither a primal nor
dual problem because there is a constraint p1 + p2 + · · · + pm = 1 which is not
allowed and we do not have the constraint v ≥ 0. To transform the maximin
problem into a dual problem, first we add a constant k to each entry of A so
that the value of the game matrix is positive. Secondly, we let
pi
xi = , for i = 1, 2, · · · , m
v
Then to maximize v is the same as minimizing
p1 + p2 + · · · + pm 1
x1 + x2 + · · · + xm = =
v v
Moreover for each j = 1, 2, · · · , n, the constraint

a1j p1 + a2j p2 + · · · + amj pm ≥ v


Linear programming and minimax theorem 33

is equivalent to
a1j x1 + a2j x2 + · · · + amj xm ≥ 1
and the maximin problem would become a dual problem. We summarize the
above procedures as follows.

1. First, add a constant k to each entry of A so that every entry of A is


positive. (This is done to make sure that the value of the game matrix
is positive.)

2. Let
pi
xi = , for i = 1, 2, · · · , m
v
3. Write down the dual problem

min g(x1 , x2 , · · · , xm ) = x1 + x2 + · · · + xm
subject to a11 x1 + a21 x2 + · · · + am1 xm ≥ 1
a12 x1 + a22 x2 + · · · + am2 xm ≥ 1
..
.
a1n x1 + a2n x2 + · · · + amn xm ≥ 1

(Note that we always have the constraints x1 , x2 , · · · , xm ≥ 0) or in


matrix form
min g(x) = x1T
subject to xA ≥ 1
where 1 = (1, 1 · · · , 1) ∈ Rm .

4. Suppose x = (x1 , x2 , · · · , xm ) is an optimal vector of the dual problem


and
d = g(x) = x1 + x2 + · · · + xm
is the minimum value. Then
x  x1 x 2 xm 
p= = , ,··· ,
d d d d
is a maximin strategy for the row player and the value of the game
matrix A is
1
v = −k
d
Linear programming and minimax theorem 34

To find the minimax strategy for the column player, we need to solve the
following minimax problem.

min v
subject to AqT ≤ v1T
1qT = 1
q≥0

where 1 = (1, · · · , 1) ∈ Rn . If we assume that v > 0, the above optimization


problem can be transformed to the following primal problem by taking yj =
qj
v
for j = 1, 2, · · · , n.

max f (y) = 1yT


subject to Ay ≤ 1T

where y = (y1 , y2 , · · · , yn ). (Note that we always have the constraint y ≥ 0


for primal problem.) Suppose y is an optimal vector for the above primal
problem. Then q = yd is a minimax strategy for the column player.

2.3 Simplex method


We have seen that a pair of maximin and minimax problems can be trans-
formed to a pair of dual and primal problems. In this section, we will show
how to use simplex method to solve the dual and primal problems simultane-
ously. Recall that the primal and dual problems are optimization problems of
the following forms. Please be reminded that we always have the constraints
x, y ≥ 0.
Primal problem max f (y) = cyT + d
subject to AyT ≤ bT
Dual problem min g(x) = xbT + d
subject to xA ≥ c

We describe the simplex method as follows.

Step 1. Introduce new variables xm+1 , · · · , xm+m , yn+1 , · · · , yn+m which


are called slack variables and set up the tableau
Linear programming and minimax theorem 35

y1 ··· yn −1
x1 a11 ··· a1n b1 = −yn+1
.. .. ... .. .. ..
. . . . .
xm am1 ··· amn bm = −yn+m
−1 c1 ··· cn −d =f
q ··· q q
xm+1 ··· xm+n g

Step 2.

(i) If c1 , c2 , · · · , cn ≤ 0, then the solution to the problems are


Primal problem maximum value of f = d
y1 = y2 = · · · = yn = 0,
yn+1 = b1 , yn+2 = b2 , · · · , yn+m = bm
Dual problem minimum value of g = d
x1 = x2 = · · · = xm = 0,
xm+1 = −c1 , xm+2 = −c2 , · · · , xm+n = −cm
(ii) Otherwise go to step 3.

Step 3. Choose l = 1, 2, · · · , n such that cl > 0.

(i) If ail ≤ 0 for all i = 1, 2, · · · , m, then the problems are unbounded


(because yl can be arbitrarily large) and there is no solution.
(ii) Otherwise choose k = 1, 2, · · · , m, such that
 
bk bi
= min
akl ail >0 ail

Step 4. Pivot on the entry akl and swap the variables at the pivot row
with the variables at the pivot column. The pivoting operation is
performed as follows.

yl yj yn+k yj
xk a∗ b = −yn+k xm+l 1
a
b
a
= −yl
xi c d = −yn+i −→ xi − ac d − bca = −yn+i
q q q q
xm+l xm+j xk xm+j
Linear programming and minimax theorem 36

Step 5. Go to Step 2.

To understand how the simplex method works, we introduce basic forms of


linear programming problem.

Definition 2.3.1 (Basic form). A basic form of a pair of primal and dual
problems is a problem of the form
Primal basic form max f (y) = cyT + d
subject to AyT − bT = −(yn+1 , · · · , yn+m )T
y≥0
Dual basic form min g(x) = xbT + d
subject to xA − c = (xm+1 , · · · , xm+n )
x≥0

where x = (x1 , · · · , xm ) ∈ Rm and y = (y1 , · · · , yn ) ∈ Rn . The pair of basic


forms can be represented by the tableau
y1 ··· yn −1
x1 a11 ··· a1n b1 = −yn+1
.. .. ... .. .. ..
. . . . .
xm am1 ··· amn bm = −yn+m
−1 c1 ··· cn −d =f
q ··· q q
xm+1 ··· xm+n g
The variables at the rightmost column and at the bottom row are called basic
variables. The other variables at the leftmost columns and at the top row
are called independent/non-basic variables.

A pair of primal and dual problems may be expressed in basic form in


many different ways. The pivot operation changes one basic form of the
pair of primal and dual problems to another basic form of the same pair of
problems, and swaps one basic variable with one independent variable.

Theorem 2.3.2. The basic forms before and after a pivot operation are
equivalent.

Proof. The tableau before the pivot operation


Linear programming and minimax theorem 37

yl yj
xk a∗ b = −yn+k
xi c d = −yn+i
q q
xm+l xm+j
is equivalent to the system of equations
 
axk + cxi = xm+l ayl + byj = −yn+k
and
bxk + dxi = xm+j cyl + dyj = −yn+i
 
−xm+l + cxi = −axk yn+k + byj = −ayl
⇔ and
bxk + dxi = xm+j cyl + dyj = −yn+i
( 1 c 1 b
(
xm+l − xi = xk yn+k + yj = −yl
⇔ a a and a a
bxk + dxi = xm+j cyl + dyj = −yn+i
1 c

 a xm+l − a xi = xk


⇔  
1 c
 b xm+l − xi + dxi = xm+j


a a
1 b

 a yn+k + a yj = −yl


and  
1 b
 c yn+k + yj + dyj = −yn+i


a a
1 c

 a xm+l − a xi = xk


⇔  
b bc
 xm+l + d − xi = xm+j


a a
1 b

 a yn+k + a yj = −yl


and  
c bc
 − yn+k + d − yj = −yn+i


a a
which is equivalent to the tableau
yn+k yj
1 b
xm+l a a
= −yl
xi − ac d− bc
a
= −yn+i
q q
xk xm+j
Linear programming and minimax theorem 38

The above calculation shows that the constraints before and after a pivot
operation are equivalent, and the values of the objective functions f and
g for any given x1 , · · · , xm , xm+1 , · · · , xm+n and y1 , · · · , yn , yn+1 , · · · , yn+m
satisfying the constraints remain unchanged.
For each pair of basic forms, there associates a pair of basic solutions
which will be defined below. Note that the basic solutions are not really
solutions to the primal and dual problems because basic solutions are not
necessarily feasible.

Definition 2.3.3 (Basic solution). Suppose we have a pair of basic forms


represented by the tableau
y1 ··· yn −1
x1 a11 ··· a1n b1 = −yn+1
.. .. ... .. .. ..
. . . . .
xm am1 ··· amn bm = −yn+m
−1 c1 ··· cn −d =f
q ··· q q
xm+1 ··· xm+n g
The basic solution to the basic form is

x1 = x2 = · · · = xm = 0, xm+1 = −c1 , xm+2 = −c2 , · · · , xm+n = −cn


y1 = y2 = · · · = yn = 0, yn+1 = b1 , yn+2 = b2 , · · · , yn+m = bm

The basic solutions are obtained by setting the independent variables, that
is the variables at the top and at the left, to be 0 and then solving for the
basic variables, that is the variables at the bottom and at the right, by the
constraints.

The basic solutions always satisfy the equalities in the constraints, but
they may not be feasible since some variables may have negative values.
However if both the dual and primal basic solutions are feasible, then they
must be optimal.

Theorem 2.3.4. Suppose we have a pair of basic forms.

1. The basic solution to the primal basic form is feasible if and only if
b1 , b2 , · · · , bm ≥ 0.
Linear programming and minimax theorem 39

2. The basic solution to the dual basic form is feasible if and only if
c1 , c2 , · · · , cn ≤ 0.

3. The pair of basic solutions are optimal if b1 , · · · , bm ≥ 0 and c1 , · · · , cn ≤


0.
Proof. Observe that the basic solutions always satisfy the equalities xA−c =
(xm+1 , · · · , xm+n ) and AyT − bT = −(yn+1 , · · · , yn+m )T of the constraints.
1. The basic solution to the primal basic form is (y1 , · · · , yn , yn+1 , · · · , yn+m ) =
(0, · · · , 0, b1 , · · · , bm ). Thus it is feasible if and only if all the variables
are non-negative which is equivalent to b1 , b2 , · · · , bm ≥ 0.

2. The basic solution to the dual basic form is (x1 , · · · , xm , xm+1 , · · · , xm+n ) =
(0, · · · , 0, −c1 , · · · , −cn ). Thus it is is feasible if and only if all the vari-
ables are non-negative which is equivalent to c1 , c2 , · · · , cn ≤ 0.

3. Suppose b1 , b2 , · · · , bm ≥ 0 and c1 , c2 , · · · , cn ≤ 0. For any feasi-


ble vectors (x1 , · · · , xm , xm+1 , · · · , xm+n ) of the dual basic form and
(y1 , · · · , yn , yn+1 , · · · , yn+m ) of the primal basic form, we have

f (y1 , · · · , yn ) = (c1 , · · · , cn )(y1 , · · · , yn )T + d


≤ (x1 , · · · , xm )A(y1 , · · · , yn )T + d
≤ (x1 , · · · , xm )(b1 , · · · , bm )T + d
= g(x1 , · · · , xm )

On the other hand, the basic solutions (x1 , · · · , xm ,xm+1 , · · · , xm+n )=


(0, · · · , 0,−c1 , · · · , −cn ) and (y1 , · · · , yn ,yn+1 , · · · , yn+m )= (0, · · · , 0,b1 ,
· · · , bm ) are feasible and

f (0, · · · , 0) = d = g(0, · · · , 0)

Therefore f attains its maximin and g attains its minimum at the basic
solutions.

In practice, we do not write down the basic variables. We would swap the
variables at the left and at the top when preforming pivot operation. One
may find the basic and independent variables by referring to the following
table.
Linear programming and minimax theorem 40

Left Top
xi is independent variable xi is basic variable
xi
yn+i is basic variable yn+i is independent variable
yj is basic variable yj is independent variable
yj
xm+j is independent variable xm+j is basic variable

In other words, when we write down a tableau of the form


xi yl −1
yj bi
A
xk bk
−1 cj cl −d
the basic solution associated with it is
xi = −cj , xk = 0, xm+j = 0, xm+l = −cl
yj = bi , yl = 0, yn+i = 0, yn+k = bk

and the genuine tableau is


yn+i yl −1
xm+j bi = −yj
A
xk bk = −yn+k
−1 cj cl −d
q q
xi xm+l
Example 2.3.5. Solve the following primal problem.

max f = 6y1 + 4y2 + 5y3 + 150


subject to 2y1 + y2 + y3 ≤ 180
y1 + 2y2 + 3y3 ≤ 300
2y1 + 2y2 + y3 ≤ 240

Solution. Set up the tableau and perform pivot operations successively. The
Linear programming and minimax theorem 41

pivoting entries are marked with asterisks.

y1 y2 y3 −1 x1 y2 y3 −1
x1 2∗ 1 1 180 y1 1
2
1
2
1
2
90
x2 1 2 3 300 −→ x2 − 12 3
2
5
2
210

x3 2 2 1 240 x3 −1 1 0 60
−1 6 4 5 −150 −1 −3 1 2 −690
x1 x3 y3 −1 x1 x3 x2 −1
y1 1 − 12 21 60 y1 4
5
− 15 −5 1
36
5∗ 2
−→ 3
x2 1 − 2 2 120 −→ y3 5
− 35 2
5
48
y2 −1 1 0 60 y2 −1 1∗ 0 60
−1 −2 −1 2 −750 −1 − 14
5
1
5
4
− 5 −846
x1 y 2 x 2 −1
3 1 1
y1 5 5
− 5
48
1 3 2
−→ y3 − 5 5 5
84
x3 −1 1 0 60
13 1 4
−1 − 5 − 5 − 5 −858

The independent variables are y2 , y4 , y5 and the basic variables are y1 , y3 , y6 .


The basic solution is

y2 = y4 = y5 = 0, y1 = 48, y3 = 84, y6 = 60

Thus an optimal vector for the primal problem is

(y1 , y2 , y3 ) = (48, 0, 84)

The maximum value of f is 858.


We may also write down an optimal solution to the dual problem. The
dual problem is

min g = 180x1 + 300x2 + 240x3 + 150


subject to 2x1 + x2 + 2x3 ≥ 6
x1 + 2x2 + 2x3 ≥ 4
x1 + 3x2 + x3 ≥ 5

From the last tableau, the independent variables are x3 , x4 , x6 and the basic
variables are x1 , x2 , x5 . The basic solution is
13 4 1
x3 = x4 = x6 = 0, x1 = , x2 = , x5 =
5 5 5
Linear programming and minimax theorem 42

Therefore an optimal vector for the dual problem is


 
13 4
(x1 , x2 , x3 ) = , ,0
5 5

The minimum value of g is 858 which is equal to the maximum value of f .

To use simplex method solving a game matrix, first we add a constant


k to every entry so that the entries are all non-negative and there is no
zero column. This is done to make sure that the value of the new matrix is
positive. Then we take b = (1, · · · , 1) ∈ Rm , c = (1, · · · , 1) ∈ Rn to set up
the initial tableau
y1 ··· yn
x1 a11 ··· a1n 1
.. .. .. .. ..
. . . . .
xm am1 ··· amn 1
1 ··· 1 0
and apply the simplex algorithm. Then the value of the game matrix is
1
ν= −k
d
where d is the maximum value of f or the minimum value of g, and k is the
constant which is added to the game matrix at the beginning. A maximin
strategy for the row player is
1 1
p = x = (x1 , x2 , · · · , xm )
d d
and a minimax strategy for the column player is
1 1
q = y = (y1 , x2 , · · · , yn )
d d
To avoid making mistakes, one may check that the following conditions must
be satisfied in every step.

1. The rightmost number in each row is always non-negative. This is


guaranteed by the choice of the pivoting entry.
Linear programming and minimax theorem 43

2. The value of the number in the lower right corner is always equal to
the sum of those entries in the lower row which associate with xi ’s at
the top row (and similarly equal to the sum of those entries at the
rightmost column associate with yj ’s at the leftmost column.)

3. The value of the number in the lower right corner never increases.

Finally, one may also check that the result should satisfy the following two
conditions.

1. Every entry of pA is larger than or equal to ν.

2. Every entry of AqT is less than or equal to ν.

Example 2.3.6. Solve the two-person zero sum game with game matrix
 
−1 5 3 2
6 −1 0 4

Solution. Add k = 1 to each of the entries, we obtain the matrix


 
0 6 4 3
7 0 1 5

Applying simplex algorithm, we have

y1 y2 y3 y4 −1 x2 y2 y3 y4 −1
x1 0 6 4 3 1 x1 0 6∗ 4 3 1
−→
x2 7∗ 0 1 5 1 y1 1
7
0 17 75 1
7
−1 1 1 1 1 0 −1 − 17 1 7 7 − 17
6 2

x2 x 1 y3 y4 −1 x2 x1 y2 y4 −1
1 2∗ 1 1 1 3 3 1
y2 0 y3 0
−→ 6 3 2 6 −→ 4 2 4 4
y1 1
7
0 1
7
5
7
1
7
y1 − 17 1
− 28 3
− 14 17
28
3
28
−1 − 17 − 16 4
21
3
− 14 − 13
42
−1 − 17 3
− 14 − 72 5
− 14 5
− 14

The independent variables are x3 , x5 , y2 , y4 , y5 , y6 and the basic variables are


x1 , x2 , x4 , x6 , y1 , y3 . The basic solution is
3 1 2 5
x3 = x5 = 0, x1 = , x2 = , x4 = , x6 =
14 7 7 14
3 1
y2 = y4 = y5 = y6 = 0, y1 = , y3 =
28 4
Linear programming and minimax theorem 44

5
The optimal value is d = . Therefore a maximin strategy for the row
14
player is    
1 14 3 1 3 2
p = (x1 , x2 ) = , = ,
d 5 14 7 5 5
A minimax strategy for the column player is
   
1 14 3 1 3 7
q = (y1 , y2 , y3 , y4 ) = , 0, , 0 = , 0, , 0
d 5 28 4 10 10

The value of the game is


1 14 9
ν= −k = −1=
d 5 5


Example 2.3.7. Solve the two-person zero sum game with game matrix
 
2 −1 6
A= 0 1 −1 
−2 2 1

Solution. Add 2 to each of the entries, we obtain the matrix


 
4 1 8
 2 3 1 
0 4 3

Applying simplex method, we have

y1 y2 y3 −1 x1 y2 y3 −1
1 1 1
x1 4∗ 1 8 1 y1 4 4
2 4
5∗
x2 2 3 1 1 −→ x2 − 21 2
−3 12
x3 0 4 3 1 x3 0 4 3 1
−1 1 1 1 0 −1 − 41 3
4
−1 − 14
x1 x2 y3 −1
3
y1 10
− 10 23
1
10
1
5
1 2 6 1
−→ y2 − 5 5
− 5 5
4
x3 5
− 58 39
5
1
5
1 3 1
−1 − 10 − 10 − 10 − 25
Linear programming and minimax theorem 45

The independent variables are x3 , x4 , x5 , y3 , y4 , y5 and the basic variables are


x1 , x2 , x6 , y1 , y2 , y6 . The basic solution is
1 3 1
x3 = x4 = x5 = 0, x1 = , x2 = , x6 =
10 10 10
1 1 1
y3 = y4 = y5 = 0, y1 = , y2 = , y6 =
5 5 5
2
The optimal value is d = . Therefore a maximin strategy for the row player
5
is    
1 5 1 3 1 3
p = (x1 , x2 , x3 ) = , ,0 = , ,0
d 2 10 10 4 4
A minimax strategy for the column player is
   
1 5 1 1 1 1
q = (y1 , y2 , y3 ) = , ,0 = , ,0
d 2 5 5 2 2

The value of the game is


1 5 1
ν= −k = −1=
d 2 2
One may check the result by the following calculations
 
  2 −1 6  
1 3 1 1 3
pA = , ,0  0 1 −1  = , ,
4 4 2 2 4
−2 2  1   
  1 1
2 −1 6  2   2 
T
Aq = 0 1 −1   1  =  1 
    
−2 2
 2   2 
1
0 0

1
One sees that the row player may guarantee that his payoff is at least by
  2
1 3
using p = , , 0 and the column player may guarantee that the payoff
4 4  
1 1 1
to the row player is at most by using q = , ,0 . 
2 2 2
Linear programming and minimax theorem 46

2.4 Minimax theorem


In this section, we prove the minimax theorem (Theorem 1.1.10). The the-
orem was first published by John von Neumann in 1928. Another way to
state the minimax theorem is that the row value and the column value of a
matrix are always the same.
Definition 2.4.1 (Row and column values). Let A be an m × n matrix.
1. The row value of A is defined1 by

νr (A) = maxm minn xAyT


x∈P y∈P

2. The column value of A is defined by

νc (A) = minn maxm xAyT


y∈P x∈P

The row value νr (A) of a game matrix A is the largest payoff of the
row player that he may guarantee himself. The column value νc (A) of A is
the least payoff that the column player may guarantee that the row player
cannot surpass. The strategies for the players to achieve these goals are
called maximin and minimax strategies.
Definition 2.4.2 (Maximin and minimax strategies). Let A be an m × n
matrix.
1. A maximin strategy is a strategy p ∈ P m for the row player such
that
minn pAyT = maxm minn xAyT = νr (A)
y∈P x∈P y∈P

2. A minimax strategy is a strategy q ∈ P n for the column player such


that
maxm xAqT = minn maxm xAyT = νc (A)
x∈P y∈P x∈P

It can be seen readily that we always have νr (A) ≤ νc (A) for any matrix
A and we give a rigorous proof here.
1
Note that since the payoff function π(x, y) = xAyT is continuous and the sets P m , P n
are compact, that is closed and bounded, the payoff function attains its maximum and
minimum by extreme value theorem.
Linear programming and minimax theorem 47

Theorem 2.4.3. For any m × n matrix A, we have

νr (A) ≤ νc (A)

Proof. Let p ∈ P m be a maximin strategy for the row player and q ∈ P n be


a minimax strategy for the column player. Then we have

νr (A) = maxm minn xAyT


x∈P y∈P

= minn pAyT
y∈P

≤ pAqT
≤ maxm xAqT
x∈P

= minn maxm xAyT


y∈P x∈P
= νc (A)

Before we prove the minimax theorem, let’s study some properties of


convex sets.

Definition 2.4.4 (Convex set). A set C ⊂ Rn is said to be convex if

λx + (1 − λ)y ∈ C for any x, y ∈ C, 0 ≤ λ ≤ 1

Geometrically, a set C ⊂ Rn is convex if the line segment joining any


two points in C is contained in C. It is easy to see from the definition that
intersection of convex sets is convex.

Definition 2.4.5 (Convex hull). The convex hull of a set {x1 , x2 , · · · , xk }


of vectors in Rn is defined by

Conv({x1 , x2 , · · · , xk })
X k k
X
n
= {x ∈ R : x = λi xi with λi ≥ 0 for all i and λi = 1}
i=1 i=1
Linear programming and minimax theorem 48

The convex hull of a set of vectors can also be defined as the smallest
convex set which contains all vectors in the set.
To prove the minimax theorem, we prove a lemma concerning properties
of convex sets. Recall that the standard inner product and the norm on Rn
are defined as follows. For any x = (x1 , x2 , · · · , xn ), y = (y1 , y2 , · · · , yn ) ∈
Rn ,

1. hx, yi = x1 y1 + x2 y2 + · · · + xn yn
p p
2. kxk = hx, xi = x21 + x22 + · · · + x2n

The following lemma says that we can always use a plane to separate the
origin and a closed convex set C not containing the origin. It is a special
case of the hyperplane separation theorem2 .

Lemma 2.4.6. Let C ⊂ Rn be a closed convex set with 0 6∈ C. Then there


exists z ∈ C such that

hz, yi > 0 for any y ∈ C


2
The hyperplane separation theorem says that we can always use a hyperplane to
separate two given sets which are closed and convex, and at least one of them is bounded.
Linear programming and minimax theorem 49

Proof. Since C is closed, there exists z ∈ C such that


kzk = min kyk
y∈C

We are going to prove that hz, yi > 0 for any y ∈ C by contradiction.


Suppose there exists y ∈ C such that hz, yi ≤ 0. Let x ∈ Rn be a point
which lies on the straight line passing through z, y, and is orthogonal to
z − y. The point x lies on the line segment joining z, y, that is lying between
z and y, because hz, yi ≤ 0.

Since z, y ∈ C and C is convex, we have x ∈ C. (The expression for x is not


important in the proof but let’s include here for reference
hy − z, yi hz − y, zi
x= 2
z+ y
ky − zk ky − zk2
Note that hy−z,yi , hz−y,zi ≥ 0 because hz, yi ≤ 0 and hy−z,yi
ky−zk2 ky−zk2 ky−zk2
+ hz−y,zi
ky−zk2
= 1
which shows that x lies on the line segment joining z, y.)
Moreover, we have
kzk2 = kx + (z − x)k2
= kxk2 + k(z − x)k2 (since x ⊥ z − x)
> kxk2
Linear programming and minimax theorem 50

which contradicts that z is a point in C closest to the origin 0.


The following theorem says that for any matrix A, we have either νr (A) >
0 or νc (A) ≤ 0. The key of the proof is to consider the convex hull C
generated by the column vectors of A and the standard basis for Rm , and
study the two cases 0 6∈ C and 0 ∈ C.
Theorem 2.4.7. Let A be an m × n matrix. Then one of the following
statements holds.
1. There exists probability vector x ∈ P m such that xA > 0, that is all
coordinates of xA are positive. In this case, νr (A) > 0.
2. There exists probability vector y ∈ P n such that AyT ≤ 0, that is all
coordinates of AyT are non-positive. In this case, νc (A) ≤ 0.
Proof. For j = 1, 2, · · · , n, let
aj = (a1j , a2j , · · · , amj ) ∈ Rm
In other words, aT1 , aT2 , · · · , aTn are the column vectors of A and we may write
A = [aT1 , aT2 , · · · , aTn ]. Let
C = Conv({a1 , a2 , · · · , an , e1 , e2 , · · · , em })
be the convex hull of {a1 , a2 , · · · , an , e1 , e2 , · · · , em } where {e1 , e2 , · · · , em }
is the standard basis for Rm .
Linear programming and minimax theorem 51

We are going to prove that the two statements in the theorem correspond to
the two cases 0 6∈ C and 0 ∈ C.
Case 1. Suppose 0 6∈ C. Then by Lemma 2.4.6, there exists z =
(z1 , z2 , · · · , zm ) ∈ Rm such that
hz, yi > 0 for any y ∈ C
In particular, we have
hz, ei i = zi > 0 for any i = 1, 2, · · · , m
Then we may take
z
x= ∈ Pm
z1 + z2 + · · · + zm
and we have
hz, aj i
hx, aj i = > 0 for any j = 1, 2, · · · , n
z1 + z2 + · · · + zm
which means xA > 0. Let α > 0 be the smallest coordinate of the
vector xA and we have
νr (A) ≥ minn xAyT ≥ α > 0
y∈P

Case 2. Suppose 0 ∈ C. Then there exists λ1 , λ2 , · · · , λm+n with λi ≥ 0


for all i, and λ1 + λ2 + · · · + λm+n = 1 such that
λ1 a1 + λ2 a2 + · · · + λn an + λn+1 e1 + λn+2 e2 + · · · + λn+m em = 0
which implies
A (λ1 , λ2 , · · · , λn )T
= λ1 aT1 + λ2 aT2 + · · · + λn aTn
= −(λn+1 eT1 + λn+1 eT2 + · · · + λn+m eTm )
= − (λn+1 , λn+2 , · · · , λn+m )T
Since {e1 , e2 , · · · , em } are linearly independent, at least one of λ1 , λ2 , · · · , λn
is positive for otherwise all λ1 , λ2 , · · · , λm+n are zero which contradicts
λ1 + λ2 + · · · + λm+n = 1. Then we may take
(λ1 , λ2 , · · · , λn )
y= ∈ Pn
λ1 + λ2 + · · · + λn
Linear programming and minimax theorem 52

and we have
 
λn+1
1  .. 
AyT = −  . ≤0
λ1 + λ2 + · · · + λn
λn+m
which implies
vc (A) ≤ maxm xAyT ≤ 0
x∈P

Now we give the proof of the minimax theorem (Theorem 1.1.10) which
can be stated in the following form.
Theorem 2.4.8 (Minimax theorem). For any matrix A, the row value and
columns value of A are equal. In other words, we have
νr (A) = νc (A)
Proof. It has been proved that νr (A) ≤ νc (A) for any matrix A (Theorem
2.4.3). We are going to prove that νc (A) ≤ νr (A) by contradiction. Suppose
there exists matrix A such that νr (A) < νc (A). Let k be a real number such
that νr (A) < k < νc (A). Let A0 be the matrix obtained by subtracting every
entry of A by k. Then νr (A0 ) = νr (A) − k < 0 and νc (A0 ) = νc (A) − k > 0
which is impossible by applying Theorem 2.4.7 to A0 . The contradiction
shows that νc (A) ≤ νr (A) for any matrix A and the proof of the minimax
theorem is complete.
Exercise 3
1. Solve the following primal problems. Then write down the dual prob-
lems and the solutions to the dual problems.
(a)
max f = 3y1 + 5y2 + 4y3 + 12
subject to 3y1 + 2y2 + 2y3 ≤ 15
4y2 + 5y3 ≤ 24
(b)
max f = 2y1 + 4y2 + 3y3 + y4
subject to 3y1 + y2 + y3 + 4y4 ≤ 12
y1 − 3y2 + 2y3 + 3y4 ≤ 7
2y1 + y2 + 3y3 − y4 ≤ 10
Linear programming and minimax theorem 53

2. Solve the zero sum games with the following game matrices, that is
find the value of the game, a maximin strategy for the row player and
a minimax strategy for the column player.
   
2 −3 3 2 0 −2
(a)  −2 3 1  (d)  −1 −3 3 
1 1 5 −2 2 0
 
  1 −1 1
3 1 −5  −2 0 −1 
(e)  
(b)  −1 −2 6   1 −2 2 
−2 −1 3 −1 1 −2
 
  −3 2 0
3 0 1  1 −2 −1 
(f)  
(c)  −1 2 −2   −1 0 2 
0 1 −1 1 1 −3

3. Prove that if C1 and C2 are convex sets in Rn , then the following sets
are also convex.

(a) C1 ∩ C2
(b) C1 + C2 = {x1 + x2 : x1 ∈ C1 , x2 ∈ C2 }

4. Let A be an m × n matrix. Prove that the set of maximin strategies


for the row player of A is convex.

5. Let C be a convex set in Rn and x, y ∈ C. Let z ∈ Rn be a point on


the straight line joining x and y such that z is orthogonal to x − y.

(a) Find z in terms of x and y.


(b) Suppose hx, yi < 0. Prove that z ∈ C.

6. Let A be an m × n matrix with column vectors aT1 , aT2 , · · · , aTn . Let


νc (A) be the column value of A and let

C = Conv({a1 , a2 , · · · , an , e1 , e2 , · · · , em })

where {e1 , e2 , · · · , em } is the standard basis for Rm . Prove that if


νc (A) ≤ 0, then 0 ∈ C.
Index
basic form, 36 optimal vector, 30
basic solution, 38
basic variable, 36 perfect information, 2
bounded problem, 30 pivoting operation, 35
primal problem, 29
column player, 2 principle of indifference, 22
column value, 46 probability vector, 5
convex, 47
convex hull, 47 row player, 2
row value, 46
dominated column, 12
dominated row, 12 saddle point, 2
dual problem, 29 security level, 7
simplex method, 34
expected payoff, 5 slack variable, 34
strategic form, 2
fair, 12 strategy
feasible vector, 30 maximin, 7, 46
game minimax, 7, 46
fair, 12 mixed, 5
modified rock-paper-scissors, 7 pure, 5
rock-paper-scissors, 4 theorem
zero sum, 2 hyperplane separation, 48
independent variable, 36 minimax, 6, 52
principle of indifference, 22
lower envelope, 15
value, 7
maximin, 3
maximin problem, 28
maximin strategy, 7, 46
minimax, 3
minimax problem, 29
minimax strategy, 7, 46
minimax theorem, 52

objective function, 29

54

You might also like