previous chapter

advertisement
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 .
Download