A large organization is conducting a red team exercise to test its internal
security against potential insider threats.
A simulated Leaker (the row player) chooses among three methods of
exfiltrating sensitive data: USB drive, Personal email, or
Cloud storage.
The Defender (the column player) allocates monitoring resources to one
of three detection strategies: Endpoint Monitoring, Email Filtering,
or Cloud Auditing.
A government regulator observes the system and wants to assess whether
current security measures are adequate. It is assumed that both players act
optimally, i.e., they adopt strategies that correspond to a Nash equilibrium.
The regulator evaluates the system based on the equilibrium probability
of a successful breach. If this exceeds a critical threshold, the regulator
will mandate additional investment in security.
Let the row player (Leaker) choose among USB, Email, and Cloud, and let the
column player (Defender) choose among Endpoint Monitoring, Email Filtering,
and Cloud Auditing.
The Leaker’s payoff matrix (probabilities of successful exfiltration) is:
Note that the sum of payoffs in any outcome need not equal 1. This reflects the
possibility that the attacker fails to exfiltrate and the defender fails to detect
the attempt — for instance, if the file transfer crashes mid-way and no alert is
triggered.
This point is also important mathematically: the game is not constant-sum and
therefore not equivalent to a zero-sum game. It is also strategically rich:
each player has three actions, none of which can be removed through simple
rationalisation. This chapter introduces efficient methods for computing
Nash equilibria in such settings.
The polytope Pr, corresponds to the set of points with an upper bound on the
utility of those points when considered as row strategies against which the column player
plays.
The polytope Qr, corresponds to the set of points with an upper bound on the
utility of those points when considered as column strategies against which the row player
plays.
Example: Best Response Polytopes for the threat detection game¶
A vertex labelling is an assignment of labels to each vertex of a best response polytope,
where each label corresponds to a constraint that is binding (i.e., holds with equality) at that vertex.
Each defining inequality of a best response polytope has a game theoretic
interpretation when it is a binding inequality for a given vertex.
Example: Vertex labelling for the threat detection game¶
Let us consider the inequalities of Pr and interpret what is implied when the
inequality is binding:
x1=0x2=0x3=0(xMc)1=1(xMc)2=1(xMc)3=1⟹1◯: the first action is not played by the strategy represented by x⟹2◯: the third action is not played by the strategy represented by x⟹3◯: the third action is not played by the strategy represented by x⟹4◯: the first action is a best response to the strategy represented by x⟹5◯: the second action is a best response to the strategy represented by x⟹6◯: the third action is a best response to the strategy represented by x
(yMr)1=1(yMr)2=1(yMr)3=1y1=0y2=0y3=0⟹1◯: the first action is a best response to the strategy represented by y⟹2◯: the second action is a best response to the strategy represented by y⟹3◯: the third action is a best response to the strategy represented by y⟹4◯: the first action is not played by the strategy represented by y⟹5◯: the third action is not played by the strategy represented by y⟹6◯: the third action is not played by the strategy represented by y
x1=160/91=0x2=135/91=0x3=0(xMc)1==475/637(xMc)2=1(xMc)3=1⟹3◯: the third action is not played by the strategy represented by x⟹5◯: the second action is a best response to the strategy represented by x⟹6◯: the third action is a best response to the strategy represented by x
For a nondegenerate 2 player game (Mr,Mc)∈R>0m×n2 the following
algorithm returns a Nash equilibrium:
Start at the artificial equilibrium: (0,0)
Choose a label to drop.
Remove this label from the corresponding vertex by traversing an edge of the
corresponding polytope to another vertex.
The new vertex will now have a duplicate label in the other polytope. Remove this
label from the vertex of the other polytope and traverse an edge of that polytope to another vertex.
Repeat step 4 until the pair of vertices is fully labelled.
Example: Application of the Lemke–Howson algorithm for the threat detection game with known vertices and labels¶
We will use Figure 1, Figure 2, as well as (16) and (17) to move from vertex to vertex in the threat detection game.
We apply the algorithm as follows:
Start at (v0,u0) and choose to drop label 1 (an arbitrary choice).
Label 1 is not among the labels of u0, so we move from v0 to an
adjacent vertex—v1, v2, v3, v4, v6, or v7—that does not
carry label 1 but shares other labels with v0. We select v1. This
introduces label 6, which must now be dropped in Pc.
(v1,u0)→(v1,u2): the labels are {2,3,6},{2,4,5}.
Label 2 must be dropped in Pr.
(v1,u2)→(v4,u2): the labels are {3,5,6},{2,4,5}.
Label 5 must be dropped in Pc.
(v4,u2)→(v4,u4): the labels are {3,5,6},{2,3,4}.
Label 3 must be dropped in Pr.
(v4,u4)→(v5,u4): the labels are {4,5,6},{2,3,4}.
Label 4 must be dropped in Pc.
(v5,u4)→(v5,u5): the labels are {4,5,6},{1,2,3}.
This is a fully labelled vertex pair.
This approach, while systematic, is only efficient here because the vertices have already been computed. In practice, obtaining the vertices of the polytope can be a time-consuming process. In the next example, we will demonstrate how the Lemke–Howson algorithm becomes truly efficient through integer pivoting.
Example: Application of the Lemke-Howson Algorithm for the threat detection game with integer pivoting¶
Using the definition of a tableau the tableaux for a
2 player game (Mr,Mc)∈R>0m×n2 are given by:
Exercise: Lemke-Howson algorithm for 2-by-2 games¶
Using the games from
Exercise: Enumeration of fully labelled vertex pairs,
apply the Lemke–Howson algorithm to compute a Nash equilibrium in each case.
Carry out the algorithm twice: once using the known vertex structure, and once
using integer pivoting.
Use the Lemke–Howson algorithm to find a Nash equilibrium. Describe how
different choices of dropped label may lead to different paths.
Interpret the equilibrium in terms of business strategy: What might the
equilibrium suggest about the balance between pricing, quality, and advertising?
Assume the game is nondegenerate: each vertex of the best response
polytopes has exactly the number of labels required to define it, and no label
appears more than once across a vertex pair. Also assume that, when applying
the Lemke–Howson algorithm, dropping a label from any fully labelled vertex
pair always leads to a distinct fully labelled vertex pair.
Under these assumptions, prove that the number of fully labelled vertex pairs —
and hence the number of Nash equilibria — is always odd.
The original paper presenting the Lemke–Howson algorithm for two-player games is
Lemke & Howson, 1964. That paper also contains a constructive proof that, in
nondegenerate games, the number of Nash equilibria is always
odd. The algorithm was later extended to
N-player games in Wilson, 1971, where the oddness result is also
generalised. An alternative proof of the oddness theorem is provided in
Harsanyi, 1973 the author of which was awarded the Nobel prize with Nash
and Selten in 1994.
The worst-case complexity of the Lemke–Howson algorithm is analysed in
Savani & Von Stengel, 2004, which demonstrates that the algorithm may require
exponential time on specific inputs. Computing Nash equilibria is a
computationally challenging task — this intuitive difficulty is formalised in
@chen2006settling, Daskalakis et al., 2009, where the problem is shown to be
PPAD-complete, placing it in a class of problems believed not to admit
polynomial-time solutions.
This chapter introduced the geometric and algorithmic structure underlying
Nash equilibrium computation through the lens of best response polytopes.
By framing strategy sets as polytopes and interpreting labels as binding
constraints, we gain powerful visual and computational tools for equilibrium
analysis.
The Lemke–Howson algorithm provides a systematic method for tracing paths
through these polytopes to identify fully labelled vertex pairs, which
correspond to Nash equilibria. Though simple in low dimensions, this method
scales to more complex games using tableau-based pivoting techniques such as
integer pivoting.
Understanding the polyhedral structure of best responses not only aids in
computational efficiency but also provides conceptual clarity: each equilibrium
arises from a delicate balance of incentives, visible in the geometry of
the feasible region.
Table 1 summarises the key concepts introduced in this
chapter.
Lemke, C. E., & Howson, J. T., Jr. (1964). Equilibrium points of bimatrix games. Journal of the Society for Industrial and Applied Mathematics, 12(2), 413–423.
Wilson, R. (1971). Computing equilibria of n-person games. SIAM Journal on Applied Mathematics, 21(1), 80–87.
Harsanyi, J. C. (1973). Oddness of the number of equilibrium points: a new proof. International Journal of Game Theory, 2(1), 235–250.
Savani, R., & Von Stengel, B. (2004). Exponentially many steps for finding a Nash equilibrium in a bimatrix game. 45th Annual IEEE Symposium on Foundations of Computer Science, 258–267.
Daskalakis, C., Goldberg, P. W., & Papadimitriou, C. H. (2009). The complexity of computing a Nash equilibrium. Communications of the ACM, 52(2), 89–97.