ArticleslgStudy

computer science

Lemke–Howson algorithm

Lemke–Howson algorithm is a computer science topic covered in the lgStudy science library. This page brings together a partial reference excerpt, illustrations, worked examples, real-world applications and a short study plan, so you can understand Lemke–Howson algorithm rather than just read about it. In short: The Lemke–Howson algorithm is an algorithm that computes a Nash equilibrium of a bimatrix game, named after its inventors, Carlton E. Lemke and J.

Key takeaways

  • Lemke–Howson algorithm belongs to computer science; place it in that map before memorising details.
  • Learn the definition first, then one example that makes the definition concrete.
  • Connect Lemke–Howson algorithm to a quantity you can measure, compute or draw — that is where exam questions come from.
  • Reproduce the core statement of Lemke–Howson algorithm from memory before moving on to harder problems.

Reference excerpt

The Lemke–Howson algorithm is an algorithm that computes a Nash equilibrium of a bimatrix game, named after its inventors, Carlton E. Lemke and J. T. Howson. It is said to be "the best known among the combinatorial algorithms for finding a Nash equilibrium", although more recently the Porter-Nudelman-Shoham algorithm has outperformed on a number of benchmarks.

Description The input to the algorithm is a 2-player game G. Here, G is represented by two m × n game matrices A and B, containing the payoffs for players 1 and 2 respectively, who have m and n pure strategies respectively. In the following, one assumes that all payoffs are positive. (By rescaling, any game can be transformed into a strategically equivalent game with positive payoffs.) G has two corresponding polytopes (called the best-response polytopes) P1 and P2, in m dimensions and n dimensions respectively, defined as follows:

P1 is in Rm; let {x1,...,xm} denote the coordinates. P1 is defined by m inequalities xi ≥ 0, for all i ∈ {1,...,m}, and a further n inequalities B 1 , j x 1 + ⋯ + B m , j x m ≤ 1 , {\displaystyle B_{1,j}x_{1}+\dots +B_{m,j}x_{m}\leq 1,} for all j ∈ {1,...,n}. P2 is in Rn; let {xm+1,...,xm+n} denote the coordinates. P2 is defined by n inequalities xm+i ≥ 0, for all i ∈ {1,...,n}, and a further m inequalities A i , 1 x m + 1 + ⋯ + A i , n x m + n ≤ 1 , {\displaystyle A_{i,1}x_{m+1}+\dots +A_{i,n}x_{m+n}\leq 1,} for all i ∈ {1,...,m}. Here, P1 represents the set of unnormalized probability distributions over player 1's m pure strategies, such that player 2's expected payoff is at most 1. The first m constraints require the probabilities to be non-negative, and the other n constraints require each of the n pure strategies of player 2 to have an expected payoff of at most 1. P2 has a similar meaning, reversing the roles of the players. Each vertex v of P1 is associated with a set of labels from the set {1,...,m + n} as follows. For i ∈ {1, ..., m}, vertex v gets the label i if xi = 0 at vertex v. For j ∈ {1, ..., n}, vertex v gets the label m + j if

B 1 , j x 1 + ⋯ + B m , j x m = 1. {\displaystyle B_{1,j}x_{1}+\dots +B_{m,j}x_{m}=1.}

Assuming that P1 is nondegenerate, each vertex is incident to m facets of P1 and has m labels. Note that the origin, which is a vertex of P1, has the labels {1, ..., m}. Each vertex w of P2 is associated with a set of labels from the set {1, ..., m + n} as follows. For j ∈ {1, ..., n}, vertex w gets the label m + j if xm+j = 0 at vertex w. For i ∈ {1, ..., m}, vertex w gets the label i if

A i , 1 x m + 1 + ⋯ + A i , n x m + n = 1. {\displaystyle A_{i,1}x_{m+1}+\dots +A_{i,n}x_{m+n}=1.}

Assuming that P2 is nondegenerate, each vertex is incident to n facets of P2 and has n labels. Note that the origin, which is a vertex of P2, has the labels {m + 1, ..., m + n}. Consider pairs of vertices (v,w), v ∈ P1, w ∈ P2. The pairs of vertices (v,w) is said to be completely labeled if the sets associated with v and w contain all labels {1, ..., m + n}. Note that if v and w are the origins of Rm and Rn respectively, then (v,w) is completely labeled. The pairs of vertices (v,w) is said to be almost completely labeled (with respect to some missing label g) if the sets associated with v and w contain all labels in {1, ..., m + n} other than g. Note that in this case, there will be a duplicate label that is associated with both v and w. A pivot operation consists of taking some pair (v,w) and replacing v with some vertex adjacent to v in P1, or alternatively replacing w with some vertex adjacent to w in P2. This has the effect (in the case that v is replaced) of replacing some label of v with some other label. The replaced label is said to be dropped. Given any label of v, it is possible to drop that label by moving to a vertex adjacent to v that does not contain the hyperplane associated with that label. The algorithm starts at the completely labeled pair (v,w) consisting of the pair of origins. An arbitrary label g is dropped via a pivot operation, taking us to an almost completely labeled pair (v′,w′). Any almost completely labeled pair admits two pivot operations corresponding to dropping one or other copy of its duplicated label, and each of these operations may result in another almost completely labeled pair, or a completely labeled pair. Eventually, the algorithm finds a completely labeled pair (v*,w*), which is not the origin. (v*,w*) corresponds to a pair of unnormalised probability distributions in which every strategy i of player 1 either pays that player 1, or pays less than 1 and is played with probability 0 by that player (and a similar observation holds for player 2). Normalizing these values to probability distributions, one has a Nash equilibrium (whose payoffs to the players are the inverses of the normalization factors).

… excerpt ends here. Continue reading the full article.

Worked examples

Example 1 — a first encounter with Lemke–Howson algorithm

Start with the simplest possible case. Write down what Lemke–Howson algorithm claims or describes in one sentence, then invent the smallest concrete situation in which that sentence is true. In computer science, the smallest case is usually a single object, a single equation or a single measurement. Check that every symbol or term in your sentence has a meaning in that case.

Example 2 — changing one variable

Take the situation from Example 1 and change exactly one quantity: double it, halve it, or set it to zero. Predict what should happen to Lemke–Howson algorithm before you calculate. Comparing your prediction with the result is the fastest way to find out whether you understand the idea or only the words.

Example 3 — an exam-style question

Typical questions about Lemke–Howson algorithm ask you to (a) state it precisely, (b) apply it to given data, and (c) explain a limitation. Practise writing all three answers in under five minutes; the third part is what separates a full-mark answer from an average one.

Applications of Lemke–Howson algorithm

In research
Lemke–Howson algorithm appears in computer science research whenever the underlying quantities have to be modelled precisely. Papers usually cite it as a starting assumption and then explore where it breaks down.
In technology and industry
Engineering practice reuses Lemke–Howson algorithm in design rules, simulations and safety margins. Knowing the idea lets you read a specification sheet and understand why the numbers look the way they do.
In the classroom
Lemke–Howson algorithm is common in secondary-school and first-year university syllabi. It links to neighbouring topics Combinatorial algorithms, Combinatorial game theory, Non-cooperative games, so understanding it makes those chapters shorter.
In everyday life
Look for Lemke–Howson algorithm outside the textbook — in sport, cooking, traffic, electronics or the sky above you. An example you found yourself is remembered far longer than one you were given.
Ask Teacher Smith questions about this articleOpens your AI tutor with a question about “Lemke–Howson algorithm” →

Affiliate

Preply — study more efficiently by working with a personal tutor. 50% off.

How to study Lemke–Howson algorithm in 20 minutes

  1. Read the reference excerpt below once, without taking notes.
  2. Close the page and write down what Lemke–Howson algorithm means in your own words.
  3. Compare your version with the excerpt and mark what you missed.
  4. Work through the three examples above with pen and paper.
  5. Explain Lemke–Howson algorithm out loud to somebody else — or to Teacher Smith in the lgStudy chat.

Frequently asked questions

What is Lemke–Howson algorithm in simple terms?

The Lemke–Howson algorithm is an algorithm that computes a Nash equilibrium of a bimatrix game, named after its inventors, Carlton E. Lemke and J.

Why does Lemke–Howson algorithm matter?

Because it connects several computer science ideas at once: it gives you a definition you can apply, a quantity you can calculate, and a way to check whether a result is plausible.

How should I study Lemke–Howson algorithm?

Read the excerpt, restate it from memory, then work through the examples and applications listed on this page. The five-step study plan above takes about twenty minutes.

What does this page cover?

It gives you a compact reference excerpt plus original lgStudy explanations, examples, applications and study material on Lemke–Howson algorithm.

Tags

  • Combinatorial algorithms
  • Combinatorial game theory
  • Non-cooperative games

Keep exploring