OR 3: Chapter 15

OR 3: Chapter 15 - Matching games
Recap
In the previous chapter:
β€’
We defined stochastic games;
β€’
We investigated approached to obtaining Markov strategy Nash equilibria.
In this chapter we will take a look at a very different type of game.
Matching Games
Consider the following situation:
"In a population of 𝑁 suitors and 𝑁 reviewers. We allow the suitors and reviewers to rank their preferences and are
now trying to match the suitors and reviewers in such a way as that every matching is stable."
If we consider the following example with suitors: 𝑆 = {π‘Ž, 𝑏, 𝑐} and reviewers: 𝑅 = {𝐴, 𝐡, 𝐢}
with preferences shown.
A matching game.
So that 𝑐 would prefer to be matched with 𝑏, then 𝑐 and lastly 𝑐. One possible matching would
be is shown.
A simple matching.
In this situation, π‘Ž and 𝑏 are getting their first choice and 𝑐 their second choice. However 𝐡
actually prefers 𝑐 so that matching is unstable.
Let us write down some formal definitions:
Definition of a matching game
A matching game of size 𝑁 is defined by two disjoint sets 𝑆 and 𝑅 or suitors and reviewers of
size 𝑁. Associated to each element of 𝑆 and 𝑅 is a preference list:
𝑓: 𝑆 β†’ 𝑅 𝑁 and 𝑔: 𝑅 β†’ 𝑆 𝑁
A matching 𝑀 is a any bijection between 𝑆 and 𝑅. If 𝑠 ∈ 𝑆 and π‘Ÿ ∈ 𝑅 are matched by 𝑀 we
denote:
𝑀(𝑠) = π‘Ÿ
Definition of a blocking pair
A pair (𝑠, π‘Ÿ) is said to block a matching 𝑀 if 𝑀(𝑠) β‰  π‘Ÿ but 𝑠 prefers π‘Ÿ to 𝑀(π‘Ÿ) and π‘Ÿ prefers 𝑠 to
π‘€βˆ’1 (π‘Ÿ).
In our previous example (𝑐, 𝐡) blocks the proposed matching.
Definition of a stable matching
A matching 𝑀 with no blocking pair is said to be stable.
A stable matching is shown.
A stable matching.
The stable matching is not unique, the matching shown is also stable:
Another stable matching.
The Gale-Shapley Algorithm
Here is the Gale-Shapley algorithm, which gives a stable matching for a matching game:
1.
Assign every 𝑠 ∈ 𝑆 and π‘Ÿ ∈ 𝑅 to be unmatched
2.
Pick some unmatched 𝑠 ∈ 𝑆, let π‘Ÿ be the top of 𝑠's preference list:
3.
–
If π‘Ÿ is unmatched set 𝑀(𝑠) = π‘Ÿ
–
If π‘Ÿ is matched:
β€’
If π‘Ÿ prefers 𝑠 to π‘€βˆ’1 (π‘Ÿ) then set 𝑀(π‘Ÿ) = 𝑠
β€’
Otherwise 𝑠 remains unmatched and remove π‘Ÿ from 𝑠's preference list.
Repeat step 2 until all 𝑠 ∈ 𝑆 are matched.
Let us illustrate this algorithm with the above example.
Base example.
We pick 𝑐 and as all the reviewers are unmatched set 𝑀(𝑐) = 𝐡.
Setting 𝑀(𝑐) = 𝐡.
We pick 𝑏 and as 𝐡 is matched but prefers 𝑐 to 𝑏 we cross out 𝐡 from 𝑏's preferences.
Removing 𝐡 from 𝑏's preference list.
We pick 𝑏 again and set 𝑀(𝑏) = 𝐢.
Setting 𝑀(𝑏) = 𝐢.
We pick π‘Ž and set 𝑀(π‘Ž) = 𝐴.
Setting 𝑀(π‘Ž) = 𝐴.
Let us repeat the algorithm but pick 𝑏 as our first suitor.
Base example.
We pick 𝑏 and as all the reviewers are unmatched set 𝑀(𝑏) = 𝐡.
Setting 𝑀(𝑏) = 𝐡.
We pick π‘Ž and as 𝐴 is unmatched set 𝑀(π‘Ž) = 𝐴.
Setting 𝑀(π‘Ž) = 𝐴.
We pick 𝑐 and 𝑏 is matched but prefers 𝑐 to π‘€βˆ’1 (𝐡) = 𝑏, we set 𝑀(𝑐) = 𝐡.
Setting 𝑀(𝑐) = 𝐡.
We pick 𝑏 and as 𝐡 is matched but prefers 𝑐 to 𝑏 we cross out 𝐡 from 𝑏's preferences:
Removing 𝐡 from 𝑏's preference list.
We pick 𝑏 again and set 𝑀(𝑏) = 𝐢.
Setting 𝑀(𝑏) = 𝐢.
Both these have given the same matching.
Theorem guaranteeing a unique matching as output of the Gale Shapley algorithm.
All possible executions of the Gale-Shapley algorithm yield the same stable matching and in
this stable matching every suitor has the best possible partner in any stable matching.
Proof
Suppose that an arbitrary execution 𝛼 of the algorithm gives 𝑀 and that another execution 𝛽
gives 𝑀ʹ such that βˆƒ 𝑠 ∈ 𝑆 such that 𝑠 prefers π‘ŸΚΉ = 𝑀ʹ(𝑠) to π‘Ÿ = 𝑀(𝑠).
Without loss of generality this implies that during 𝛼 π‘ŸΚΉ must have rejected 𝑠. Suppose, again
without loss of generality that this was the first occasion that a rejection occured during 𝛼 and
assume that this rejection occurred because π‘ŸΚΉ = 𝑀(𝑠ʹ). This implies that 𝑠ʹ has no stable
match that is higher in 𝑠ʹ's preference list than π‘ŸΚΉ (as we have assumed that this is the first
rejection).
Thus 𝑠ʹ prefers π‘ŸΚΉ to 𝑀ʹ(𝑠ʹ) so that (𝑠ʹ, π‘ŸΚΉ) blocks 𝑀ʹ. Each suitor is therefore matched in 𝑀 with
his favorite stable reviewer and since 𝛼 was arbitrary it follows that all possible executions
give the same matching.
We call a matching obtained from the Gale Shapley algorithm suitor-optimal because of the
previous theorem. The next theorem shows another important property of the algorithm.
Theorem of reviewer sub optimality
In a suitor-optimal stable matching each reviewer has the worst possible matching.
Proof
Assume that the result is not true. Let 𝑀0 be a suitor-optimal matching and assume that there
is a stable matching 𝑀ʹ such that βˆƒ π‘Ÿ such that π‘Ÿ prefers 𝑠 = 𝑀0βˆ’1 (π‘Ÿ) to 𝑠ʹ = π‘€ΚΉβˆ’1 (π‘Ÿ). This
implies that (π‘Ÿ, 𝑠) blocks 𝑀ʹ unless 𝑠 prefers 𝑀ʹ(𝑠) to 𝑠 which contradicts the fact the 𝑠 has no
stable match that he prefers in 𝑀0 .