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

Many-to-One Matching Markets

Econ 498/598
Concordia University
Winter 2020

1/25
The two-sided many-to-one matching model

Using the language of the medical residency match, a two-sided


many-to-one matching model can be defined by the following.
I a finite set of doctors: D = {d1 , d2 , . . . }
I a finite set of hospitals: H = {h1 , h2 , . . . }

In such a many-to-one matching model,


I each doctor wants to be hired by one hospital;
I each hospital can hire several doctors.

For each hospital h ∈ H there is a capacity qh that specifies the


maximum number of doctors that hospital h can hire.

2/25
Preferences

I Each doctor’s preferences over hospitals are similar to


preferences in the classic one-to-one (marriage) matching
model:
each doctor d ∈ D has a strict preference relation Pd of the
hospitals (and the option of not being hired by any hospital).
I Since hospitals can hire several doctors, each hospital h ∈ H
has a preference relation Ph] over sets of doctors.
Example:

{d1 , d2 } Ph] {d3 , d4 }


means that hospital h prefers to hire {d1 , d2 } to hiring
{d3 , d4 }.

3/25
Preferences

I Each doctor’s preferences over hospitals are similar to


preferences in the classic one-to-one (marriage) matching
model:
each doctor d ∈ D has a strict preference relation Pd of the
hospitals (and the option of not being hired by any hospital).
I Since hospitals can hire several doctors, each hospital h ∈ H
has a preference relation Ph] over sets of doctors.
Example:

{d1 , d2 } Ph] {d3 , d4 }


means that hospital h prefers to hire {d1 , d2 } to hiring
{d3 , d4 }.

3/25
Preferences

I Each doctor’s preferences over hospitals are similar to


preferences in the classic one-to-one (marriage) matching
model:
each doctor d ∈ D has a strict preference relation Pd of the
hospitals (and the option of not being hired by any hospital).
I Since hospitals can hire several doctors, each hospital h ∈ H
has a preference relation Ph] over sets of doctors.
Example:

{d1 , d2 } Ph] {d3 , d4 }


means that hospital h prefers to hire {d1 , d2 } to hiring
{d3 , d4 }.

3/25
Responsive preferences

Working with preferences over sets of doctors can complicate


things quite a bit.
Therefore, we often assume, when plausible, that the preferences
over doctors carry information which extends (partially) to
preferences over sets of doctors.
⇒ We assume that hospitals’ preferences are responsive.

Let each hospital h ∈ H have preference relation Ph over individual


doctors. The preference relation Ph] over sets of doctors will be
partially deduced from Ph .
If a doctor d is not acceptable to a hospital we will denote it by
∅Ph d.

4/25
Responsive preferences

Working with preferences over sets of doctors can complicate


things quite a bit.
Therefore, we often assume, when plausible, that the preferences
over doctors carry information which extends (partially) to
preferences over sets of doctors.
⇒ We assume that hospitals’ preferences are responsive.

Let each hospital h ∈ H have preference relation Ph over individual


doctors. The preference relation Ph] over sets of doctors will be
partially deduced from Ph .
If a doctor d is not acceptable to a hospital we will denote it by
∅Ph d.

4/25
Responsive preferences

Working with preferences over sets of doctors can complicate


things quite a bit.
Therefore, we often assume, when plausible, that the preferences
over doctors carry information which extends (partially) to
preferences over sets of doctors.
⇒ We assume that hospitals’ preferences are responsive.

Let each hospital h ∈ H have preference relation Ph over individual


doctors. The preference relation Ph] over sets of doctors will be
partially deduced from Ph .
If a doctor d is not acceptable to a hospital we will denote it by
∅Ph d.

4/25
Compare sets of doctors that differ only by one doctor:

I Suppose that hospital h has already hired Dr. Carol and Dr.
Denis, and it can hire a third doctor.
I The hospital has the choice between Dr. Alice and Dr. Bob.

I The hospital should compare

{Alice, Carol, Denis} and {Bob, Carol, Denis}

If preferences are responsive, it is sufficient to compare Dr. Alice


and Dr. Bob:

{Alice, Carol, Denis} Ph] {Bob, Carol, Denis}


⇔ Alice Ph Bob

5/25
Compare sets of doctors that differ only by one doctor:

I Suppose that hospital h has already hired Dr. Carol and Dr.
Denis, and it can hire a third doctor.
I The hospital has the choice between Dr. Alice and Dr. Bob.

I The hospital should compare

{Alice, Carol, Denis} and {Bob, Carol, Denis}

If preferences are responsive, it is sufficient to compare Dr. Alice


and Dr. Bob:

{Alice, Carol, Denis} Ph] {Bob, Carol, Denis}


⇔ Alice Ph Bob

5/25
Compare sets of doctors that differ only by one doctor:

I Suppose that hospital h has already hired Dr. Carol and Dr.
Denis, and it can hire a third doctor.
I The hospital has the choice between Dr. Alice and Dr. Bob.

I The hospital should compare

{Alice, Carol, Denis} and {Bob, Carol, Denis}

If preferences are responsive, it is sufficient to compare Dr. Alice


and Dr. Bob:

{Alice, Carol, Denis} Ph] {Bob, Carol, Denis}


⇔ Alice Ph Bob

5/25
Compare sets of doctors that differ only by one doctor:

I Suppose that hospital h has already hired Dr. Carol and Dr.
Denis, and it can hire a third doctor.
I The hospital has the choice between Dr. Alice and Dr. Bob.

I The hospital should compare

{Alice, Carol, Denis} and {Bob, Carol, Denis}

If preferences are responsive, it is sufficient to compare Dr. Alice


and Dr. Bob:

{Alice, Carol, Denis} Ph] {Bob, Carol, Denis}


⇔ Alice Ph Bob

5/25
Compare sets of doctors that differ only by one doctor:

I Suppose that hospital h has already hired Dr. Carol and Dr.
Denis, and it can hire a third doctor.
I The hospital has the choice between Dr. Alice and Dr. Bob.

I The hospital should compare

{Alice, Carol, Denis} and {Bob, Carol, Denis}

If preferences are responsive, it is sufficient to compare Dr. Alice


and Dr. Bob:

{Alice, Carol, Denis} Ph] {Bob, Carol, Denis}


⇔ Alice Ph Bob

5/25
Definition
Preferences Ph] over sets of doctors are responsive if for any set of
doctors S and doctors d and d 0 such that d, d 0 ∈
/S

S ∪ {d} Ph] S ∪ {d 0 } if, and only if, dPh d 0

and

S ∪ {d} Ph] S if, and only if, dPh ∅,

assuming that qh ≥ |S| + 1.

6/25
Responsive preferences: examples

Let Ph = d1 , d2 , d3 , d4 , ∅.

I Compare {d1 , , d4 } and {d1 , , d4 }.


The only difference is d3 versus d2 , so

{d1 , d2 , d4 } Ph] {d1 , d3 , d4 }

since d2 is preferred to d3 .

I Compare {d1 , d3 } and {d2 , d4 }

{d1 , d3 } Ph] {d2 , d3 }


)
⇒ {d1 , d3 } Ph] {d2 , d4 }
{d2 , d3 } Ph] {d2 , d4 }

7/25
Responsive preferences: examples

Let Ph = d1 , d2 , d3 , d4 , ∅.

I Compare {d1 , d3 , d4 } and {d1 , d2 , d4 }.


The only difference is d3 versus d2 , so

{d1 , d2 , d4 } Ph] {d1 , d3 , d4 }

since d2 is preferred to d3 .

I Compare {d1 , d3 } and {d2 , d4 }

{d1 , d3 } Ph] {d2 , d3 }


)
⇒ {d1 , d3 } Ph] {d2 , d4 }
{d2 , d3 } Ph] {d2 , d4 }

7/25
Responsive preferences: examples

Let Ph = d1 , d2 , d3 , d4 , ∅.

I Compare {d1 , d3 , d4 } and {d1 , d2 , d4 }.


The only difference is d3 versus d2 , so

{d1 , d2 , d4 } Ph] {d1 , d3 , d4 }

since d2 is preferred to d3 .

I Compare {d1 , d3 } and {d2 , d4 }

{d1 , d3 } Ph] {d2 , d3 }


)
⇒ {d1 , d3 } Ph] {d2 , d4 }
{d2 , d3 } Ph] {d2 , d4 }

7/25
Responsive preferences: examples

Let Ph = d1 , d2 , d3 , d4 , ∅.

I Compare {d1 , d3 , d4 } and {d1 , d2 , d4 }.


The only difference is d3 versus d2 , so

{d1 , d2 , d4 } Ph] {d1 , d3 , d4 }

since d2 is preferred to d3 .

I Compare {d1 , d3 } and {d2 , d4 }

{d1 , d3 } Ph] {d2 , d3 }


)
⇒ {d1 , d3 } Ph] {d2 , d4 }
{d2 , d3 } Ph] {d2 , d4 }

7/25
Responsive preferences: examples

Let Ph = d1 , d2 , d3 , d4 , ∅.

I Compare {d1 , d3 , d4 } and {d1 , d2 , d4 }.


The only difference is d3 versus d2 , so

{d1 , d2 , d4 } Ph] {d1 , d3 , d4 }

since d2 is preferred to d3 .

I Compare {d1 , d3 } and {d2 , d4 }

{d1 , d3 } Ph] {d2 , d3 }


)
⇒ {d1 , d3 } Ph] {d2 , d4 }
{d2 , d3 } Ph] {d2 , d4 }

7/25
I Compare {d2 } and {d1 , d3 }.
{d2 } is the same as {d2 , ∅}. Since d3 is acceptable,

{d2 , d3 } Ph] {d2 , ∅}


)

]
⇒ {d1 , d3 } Ph] {d2 , ∅}
{d1 , d3 } Ph {d2 , d3 }

I Compare {d1 , d4 } and {d2 , d3 }.


We cannot deduce which is the preferred set.
Under responsive preferences both

{d1 , d4 } Ph] {d2 , d3 } and {d2 , d3 } Ph] {d1 , d4 }

are possible.

8/25
I Compare {d2 } and {d1 , d3 }.
{d2 } is the same as {d2 , ∅}. Since d3 is acceptable,

{d2 , d3 } Ph] {d2 , ∅}


)

]
⇒ {d1 , d3 } Ph] {d2 , ∅}
{d1 , d3 } Ph {d2 , d3 }

I Compare {d1 , d4 } and {d2 , d3 }.


We cannot deduce which is the preferred set.
Under responsive preferences both

{d1 , d4 } Ph] {d2 , d3 } and {d2 , d3 } Ph] {d1 , d4 }

are possible.

8/25
I Compare {d2 } and {d1 , d3 }.
{d2 } is the same as {d2 , ∅}. Since d3 is acceptable,

{d2 , d3 } Ph] {d2 , ∅}


)

]
⇒ {d1 , d3 } Ph] {d2 , ∅}
{d1 , d3 } Ph {d2 , d3 }

I Compare {d1 , d4 } and {d2 , d3 }.


We cannot deduce which is the preferred set.
Under responsive preferences both

{d1 , d4 } Ph] {d2 , d3 } and {d2 , d3 } Ph] {d1 , d4 }

are possible.

8/25
I Compare {d2 } and {d1 , d3 }.
{d2 } is the same as {d2 , ∅}. Since d3 is acceptable,

{d2 , d3 } Ph] {d2 , ∅}


)

]
⇒ {d1 , d3 } Ph] {d2 , ∅}
{d1 , d3 } Ph {d2 , d3 }

I Compare {d1 , d4 } and {d2 , d3 }.


We cannot deduce which is the preferred set.
Under responsive preferences both

{d1 , d4 } Ph] {d2 , d3 } and {d2 , d3 } Ph] {d1 , d4 }

are possible.

8/25
Matching
A matching is similar to a matching defined for one-to-one
matching models, but there are a few differences since
I hospitals can be matched to more than one doctor.
I hospitals have a maximum capacity.

Definition
A matching is a function µ : H ∪ D → H ∪ D such that:
I For each doctor d ∈ D, µ(d) ∈ H ∪ {d}
A doctor is matched to one hospital only, or herself
(unmatched).
I For each hospital h ∈ H,
I |µ(h)| ≤ qh
I µ(h) ⊆ D.
I µ(d) = h if, and only if, d ∈ µ(h).

9/25
Matching
A matching is similar to a matching defined for one-to-one
matching models, but there are a few differences since
I hospitals can be matched to more than one doctor.
I hospitals have a maximum capacity.

Definition
A matching is a function µ : H ∪ D → H ∪ D such that:
I For each doctor d ∈ D, µ(d) ∈ H ∪ {d}
A doctor is matched to one hospital only, or herself
(unmatched).
I For each hospital h ∈ H,
I |µ(h)| ≤ qh
I µ(h) ⊆ D.
I µ(d) = h if, and only if, d ∈ µ(h).

9/25
Matching
A matching is similar to a matching defined for one-to-one
matching models, but there are a few differences since
I hospitals can be matched to more than one doctor.
I hospitals have a maximum capacity.

Definition
A matching is a function µ : H ∪ D → H ∪ D such that:
I For each doctor d ∈ D, µ(d) ∈ H ∪ {d}
A doctor is matched to one hospital only, or herself
(unmatched).
I For each hospital h ∈ H,
I |µ(h)| ≤ qh
I µ(h) ⊆ D.
I µ(d) = h if, and only if, d ∈ µ(h).

9/25
Matching
A matching is similar to a matching defined for one-to-one
matching models, but there are a few differences since
I hospitals can be matched to more than one doctor.
I hospitals have a maximum capacity.

Definition
A matching is a function µ : H ∪ D → H ∪ D such that:
I For each doctor d ∈ D, µ(d) ∈ H ∪ {d}
A doctor is matched to one hospital only, or herself
(unmatched).
I For each hospital h ∈ H,
I |µ(h)| ≤ qh
I µ(h) ⊆ D.
I µ(d) = h if, and only if, d ∈ µ(h).

9/25
Matching
A matching is similar to a matching defined for one-to-one
matching models, but there are a few differences since
I hospitals can be matched to more than one doctor.
I hospitals have a maximum capacity.

Definition
A matching is a function µ : H ∪ D → H ∪ D such that:
I For each doctor d ∈ D, µ(d) ∈ H ∪ {d}
A doctor is matched to one hospital only, or herself
(unmatched).
I For each hospital h ∈ H,
I |µ(h)| ≤ qh
I µ(h) ⊆ D.
I µ(d) = h if, and only if, d ∈ µ(h).

9/25
Matching
A matching is similar to a matching defined for one-to-one
matching models, but there are a few differences since
I hospitals can be matched to more than one doctor.
I hospitals have a maximum capacity.

Definition
A matching is a function µ : H ∪ D → H ∪ D such that:
I For each doctor d ∈ D, µ(d) ∈ H ∪ {d}
A doctor is matched to one hospital only, or herself
(unmatched).
I For each hospital h ∈ H,
I |µ(h)| ≤ qh
I µ(h) ⊆ D.
I µ(d) = h if, and only if, d ∈ µ(h).

9/25
Stability

In a many-to-one matching problem, stability is a conjunction of


two requirements: individual rationality and the absence of
blocking pairs.

Definition
A matching µ is individually rational if
I for each doctor d ∈ D, µ(d) Rd d
I for each hospital h ∈ H, if d ∈ µ(H) then d Ph ∅.

10/25
Stability

In a many-to-one matching problem, stability is a conjunction of


two requirements: individual rationality and the absence of
blocking pairs.

Definition
A matching µ is individually rational if
I for each doctor d ∈ D, µ(d) Rd d
I for each hospital h ∈ H, if d ∈ µ(H) then d Ph ∅.

10/25
Definition
A pair of a doctor and hospital (d, h) blocks a matching µ if
I µ(d) 6= h
I h Pd µ(d)
I d Ph d 0 for a doctor d 0 ∈ µ(h), or d Ph ∅ and |µ(h)| < qh .

Note: The last requirement says that either doctor d is preferred


to another doctor d 0 who is matched to hospital h, or hospital h
has a vacancy and d is acceptable to the hospital.

11/25
Definition
A pair of a doctor and hospital (d, h) blocks a matching µ if
I µ(d) 6= h
I h Pd µ(d)
I d Ph d 0 for a doctor d 0 ∈ µ(h), or d Ph ∅ and |µ(h)| < qh .

Note: The last requirement says that either doctor d is preferred


to another doctor d 0 who is matched to hospital h, or hospital h
has a vacancy and d is acceptable to the hospital.

11/25
Definition
A pair of a doctor and hospital (d, h) blocks a matching µ if
I µ(d) 6= h
I h Pd µ(d)
I d Ph d 0 for a doctor d 0 ∈ µ(h), or d Ph ∅ and |µ(h)| < qh .

Note: The last requirement says that either doctor d is preferred


to another doctor d 0 who is matched to hospital h, or hospital h
has a vacancy and d is acceptable to the hospital.

11/25
Definition
A pair of a doctor and hospital (d, h) blocks a matching µ if
I µ(d) 6= h
I h Pd µ(d)
I d Ph d 0 for a doctor d 0 ∈ µ(h), or d Ph ∅ and |µ(h)| < qh .

Note: The last requirement says that either doctor d is preferred


to another doctor d 0 who is matched to hospital h, or hospital h
has a vacancy and d is acceptable to the hospital.

11/25
Definition
A pair of a doctor and hospital (d, h) blocks a matching µ if
I µ(d) 6= h
I h Pd µ(d)
I d Ph d 0 for a doctor d 0 ∈ µ(h), or d Ph ∅ and |µ(h)| < qh .

Note: The last requirement says that either doctor d is preferred


to another doctor d 0 who is matched to hospital h, or hospital h
has a vacancy and d is acceptable to the hospital.

11/25
Definition
A matching µ is stable if
I it is individually rational
I there is no doctor-hospital pair that blocks µ

When there is a vacancy at a hospital, a doctor prefers the hospital


to his match (if any), and the hospital finds the doctor acceptable,
we say that the matching is wasteful.
A stable matching is always non-wasteful.

12/25
Definition
A matching µ is stable if
I it is individually rational
I there is no doctor-hospital pair that blocks µ

When there is a vacancy at a hospital, a doctor prefers the hospital


to his match (if any), and the hospital finds the doctor acceptable,
we say that the matching is wasteful.
A stable matching is always non-wasteful.

12/25
Example

Hospital h1 has a capacity of 2 and hospital h2 has a capacity of 1:


qh1 = 2, qh2 = 1.

Pd1 Pd2 Pd 3 Ph 1 Ph2


h1 h1 h1 d1 d1
h2 h2 h2 d2 d3
d3 d2

I µ(d1 ) = h1 , µ(d2 ) = h2 , µ(d3 ) = d3 is wasteful.

I µ0 (d1 ) = h1 , µ0 (d2 ) = h2 , µ0 (d3 ) = h1 is blocked by (d2 , h1 ).

I µ00 (d1 ) = h1 , µ00 (d2 ) = h1 , µ00 (d3 ) = h2 is stable.

13/25
Example

Hospital h1 has a capacity of 2 and hospital h2 has a capacity of 1:


qh1 = 2, qh2 = 1.

Pd1 Pd2 Pd 3 Ph 1 Ph2


h1 h1 h1 d1 d1
h2 h2 h2 d2 d3
d3 d2

I µ(d1 ) = h1 , µ(d2 ) = h2 , µ(d3 ) = d3 is wasteful.

I µ0 (d1 ) = h1 , µ0 (d2 ) = h2 , µ0 (d3 ) = h1 is blocked by (d2 , h1 ).

I µ00 (d1 ) = h1 , µ00 (d2 ) = h1 , µ00 (d3 ) = h2 is stable.

13/25
Example

Hospital h1 has a capacity of 2 and hospital h2 has a capacity of 1:


qh1 = 2, qh2 = 1.

Pd1 Pd2 Pd 3 Ph 1 Ph2


h1 h1 h1 d1 d1
h2 h2 h2 d2 d3
d3 d2

I µ(d1 ) = h1 , µ(d2 ) = h2 , µ(d3 ) = d3 is wasteful.

I µ0 (d1 ) = h1 , µ0 (d2 ) = h2 , µ0 (d3 ) = h1 is blocked by (d2 , h1 ).

I µ00 (d1 ) = h1 , µ00 (d2 ) = h1 , µ00 (d3 ) = h2 is stable.

13/25
Example

Hospital h1 has a capacity of 2 and hospital h2 has a capacity of 1:


qh1 = 2, qh2 = 1.

Pd1 Pd2 Pd 3 Ph 1 Ph2


h1 h1 h1 d1 d1
h2 h2 h2 d2 d3
d3 d2

I µ(d1 ) = h1 , µ(d2 ) = h2 , µ(d3 ) = d3 is wasteful.

I µ0 (d1 ) = h1 , µ0 (d2 ) = h2 , µ0 (d3 ) = h1 is blocked by (d2 , h1 ).

I µ00 (d1 ) = h1 , µ00 (d2 ) = h1 , µ00 (d3 ) = h2 is stable.

13/25
The Deferred Acceptance Mechanism

The Deferred Acceptance (DA) algorithm can be used to obtain


stable matchings in the many-to-one model as well.
Similarly to the one-to-one matching model, there are two
variations of the DA mechanism:
I Doctor-proposing DA
I Hospital-proposing DA

14/25
The Deferred Acceptance Mechanism

The Deferred Acceptance (DA) algorithm can be used to obtain


stable matchings in the many-to-one model as well.
Similarly to the one-to-one matching model, there are two
variations of the DA mechanism:
I Doctor-proposing DA
I Hospital-proposing DA

14/25
The Deferred Acceptance Mechanism

The Deferred Acceptance (DA) algorithm can be used to obtain


stable matchings in the many-to-one model as well.
Similarly to the one-to-one matching model, there are two
variations of the DA mechanism:
I Doctor-proposing DA
I Hospital-proposing DA

14/25
Doctor-Proposing Deferred Acceptance Mechanism

The doctor proposing version of the DA is similar to the


one-to-one model, except that hospitals can accept many
proposals at the same time (up to the maximum capacity).

At any step of the algorithm, each hospital considers:


I the set of doctors it accepted at the previous step (if any)
I the set of doctors who have just made an offer at this step (if
any)
From this set the hospital accepts the most preferred doctors, up
to its capacity.

15/25
Doctor-Proposing Deferred Acceptance Mechanism

The doctor proposing version of the DA is similar to the


one-to-one model, except that hospitals can accept many
proposals at the same time (up to the maximum capacity).

At any step of the algorithm, each hospital considers:


I the set of doctors it accepted at the previous step (if any)
I the set of doctors who have just made an offer at this step (if
any)
From this set the hospital accepts the most preferred doctors, up
to its capacity.

15/25
Doctor-Proposing Deferred Acceptance Mechanism

The doctor proposing version of the DA is similar to the


one-to-one model, except that hospitals can accept many
proposals at the same time (up to the maximum capacity).

At any step of the algorithm, each hospital considers:


I the set of doctors it accepted at the previous step (if any)
I the set of doctors who have just made an offer at this step (if
any)
From this set the hospital accepts the most preferred doctors, up
to its capacity.

15/25
Doctor-Proposing Deferred Acceptance Mechanism

The doctor proposing version of the DA is similar to the


one-to-one model, except that hospitals can accept many
proposals at the same time (up to the maximum capacity).

At any step of the algorithm, each hospital considers:


I the set of doctors it accepted at the previous step (if any)
I the set of doctors who have just made an offer at this step (if
any)
From this set the hospital accepts the most preferred doctors, up
to its capacity.

15/25
Doctor-Proposing Deferred Acceptance Mechanism

The doctor proposing version of the DA is similar to the


one-to-one model, except that hospitals can accept many
proposals at the same time (up to the maximum capacity).

At any step of the algorithm, each hospital considers:


I the set of doctors it accepted at the previous step (if any)
I the set of doctors who have just made an offer at this step (if
any)
From this set the hospital accepts the most preferred doctors, up
to its capacity.

15/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

h1 h2

16/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

h1 h2
d1 d2 , d3 , d4

16/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

h1 h2
d1 d2 , d3 ,d4 h2 accepts d2 and d3 , rejects d4

16/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

h1 h2
d1 d2 , d3 ,d4 h2 accepts d2 and d3 , rejects d4
d4

16/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

h1 h2
d1 d2 , d3 ,d4 h2 accepts d2 and d3 , rejects d4
d4 no doctor is rejected

16/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

h1 h2
d1 d2 , d3 ,d4 h2 accepts d2 and d3 , rejects d4
d4 no doctor is rejected
d1 , d4 d2 , d3 Final matching

16/25
Hospital-Proposing Deferred Acceptance Mechanism

In this version of the DA algorithm hospitals can make multiple


proposals at the same time, with the aim to fill the hospital’s
capacity.

Step 1
Each hospital proposes to its most preferred set of acceptable
doctors, up to but not exceeding its capacity.
Each doctor accepts the most preferred acceptable hospital
that proposed to her (if any) and rejects the rest.

17/25
Step k (k ≥ 2)
Each hospital
I Keeps the doctors whom the hospital had already proposed to
and who haven’t rejected the hospital.
I If a hospital had one or more rejections at the previous step
then it proposes to its most preferred set of doctors whom this
hospital has not proposed to yet, up to but not exceeding its
capacity, including doctors kept from the previous step.

Each doctor accepts the most preferred acceptable hospital


that proposed to her (if any) and rejects the rest.

End The algorithm stops when no offer by a hospital is


rejected.

18/25
Step k (k ≥ 2)
Each hospital
I Keeps the doctors whom the hospital had already proposed to
and who haven’t rejected the hospital.
I If a hospital had one or more rejections at the previous step
then it proposes to its most preferred set of doctors whom this
hospital has not proposed to yet, up to but not exceeding its
capacity, including doctors kept from the previous step.

Each doctor accepts the most preferred acceptable hospital


that proposed to her (if any) and rejects the rest.

End The algorithm stops when no offer by a hospital is


rejected.

18/25
Step k (k ≥ 2)
Each hospital
I Keeps the doctors whom the hospital had already proposed to
and who haven’t rejected the hospital.
I If a hospital had one or more rejections at the previous step
then it proposes to its most preferred set of doctors whom this
hospital has not proposed to yet, up to but not exceeding its
capacity, including doctors kept from the previous step.

Each doctor accepts the most preferred acceptable hospital


that proposed to her (if any) and rejects the rest.

End The algorithm stops when no offer by a hospital is


rejected.

18/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

d1 d2 d3 d4

19/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

d1 d2 d3 d4
h1 h1 , h2 h2

19/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

d1 d2 d3 d4
h1 h1 ,h2 h2 d2 rejects h1

19/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

d1 d2 d3 d4
h1 h1 ,h2 h2 d2 rejects h1
h1

19/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

d1 d2 d3 d4
h1 h1 ,h2 h2 d2 rejects h1
h1 d3 rejects h1

19/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

d1 d2 d3 d4
h1 h1 ,h2 h2 d2 rejects h1
h1 d3 rejects h1
h1

19/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

d1 d2 d3 d4
h1 h1 ,h2 h2 d2 rejects h1
h1 d3 rejects h1
h1 no hospital is rejected

19/25
Example

Capacities: qh1 = 2, qh2 = 2.

Pd1 Pd 2 Pd3 Pd4 Ph1 Ph 2


h1 h2 h2 h2 d1 d2
h2 h1 h1 h1 d2 d3
d3 d4
d4 d1

d1 d2 d3 d4
h1 h1 ,h2 h2 d2 rejects h1
h1 d3 rejects h1
h1 no hospital is rejected
h1 h2 h2 h1 Final matching

19/25
One-to-one versus many-to-one matching

Many results for the one-to-one matching model carry over to the
many-to-one matching model.
I Existence of a stable matching at each preference profile.

I The doctor-proposing DA yields the doctor-optimal matching,


the most preferred stable matching for doctors (least preferred
for hospitals).
I The hospital-proposing DA yields the hospital-optimal
matching, the most preferred stable matching for hospitals
(least preferred for doctors).
I The doctor-proposing DA is strategyproof for doctors.

20/25
One-to-one versus many-to-one matching

Many results for the one-to-one matching model carry over to the
many-to-one matching model.
I Existence of a stable matching at each preference profile.

I The doctor-proposing DA yields the doctor-optimal matching,


the most preferred stable matching for doctors (least preferred
for hospitals).
I The hospital-proposing DA yields the hospital-optimal
matching, the most preferred stable matching for hospitals
(least preferred for doctors).
I The doctor-proposing DA is strategyproof for doctors.

20/25
One-to-one versus many-to-one matching

Many results for the one-to-one matching model carry over to the
many-to-one matching model.
I Existence of a stable matching at each preference profile.

I The doctor-proposing DA yields the doctor-optimal matching,


the most preferred stable matching for doctors (least preferred
for hospitals).
I The hospital-proposing DA yields the hospital-optimal
matching, the most preferred stable matching for hospitals
(least preferred for doctors).
I The doctor-proposing DA is strategyproof for doctors.

20/25
One-to-one versus many-to-one matching

Many results for the one-to-one matching model carry over to the
many-to-one matching model.
I Existence of a stable matching at each preference profile.

I The doctor-proposing DA yields the doctor-optimal matching,


the most preferred stable matching for doctors (least preferred
for hospitals).
I The hospital-proposing DA yields the hospital-optimal
matching, the most preferred stable matching for hospitals
(least preferred for doctors).
I The doctor-proposing DA is strategyproof for doctors.

20/25
One-to-one versus many-to-one matching

Many results for the one-to-one matching model carry over to the
many-to-one matching model.
I Existence of a stable matching at each preference profile.

I The doctor-proposing DA yields the doctor-optimal matching,


the most preferred stable matching for doctors (least preferred
for hospitals).
I The hospital-proposing DA yields the hospital-optimal
matching, the most preferred stable matching for hospitals
(least preferred for doctors).
I The doctor-proposing DA is strategyproof for doctors.

20/25
One-to-one versus many-to-one matching

Many results for the one-to-one matching model carry over to the
many-to-one matching model.
I Existence of a stable matching at each preference profile.

I The doctor-proposing DA yields the doctor-optimal matching,


the most preferred stable matching for doctors (least preferred
for hospitals).
I The hospital-proposing DA yields the hospital-optimal
matching, the most preferred stable matching for hospitals
(least preferred for doctors).
I The doctor-proposing DA is strategyproof for doctors.

20/25
One-to-one versus many-to-one matching

Although many results carry over to the many-to-one matching


model form the one-to-one model, not all of them do.
Most notably, the hospital-proposing DA is not strategyproof for
hospitals.

Consider the following example with three hospitals and capacities


qh1 = 2 and qh2 = qh3 = 1.

21/25
One-to-one versus many-to-one matching

Although many results carry over to the many-to-one matching


model form the one-to-one model, not all of them do.
Most notably, the hospital-proposing DA is not strategyproof for
hospitals.

Consider the following example with three hospitals and capacities


qh1 = 2 and qh2 = qh3 = 1.

21/25
Example: a hospital manipulates the hospital-proposing DA
Pd1 Pd2 Pd 3 Pd4 Ph 1 Ph2 Ph3
Pbdh21
h3 h2 h1 h1 d1 d1 d3
d4
h1 h1 h3 h2 d2 d2 d1
d3
h2 h3 h2 h3 d3 d3 d2
d1
d4 d4 d4

The hospital-proposing DA yields

µH (h1 ) = {d3 , d4 } µH (h2 ) = d2 µH (h3 ) = d1

Now consider hospital h1 submitting preferences Pbh1 .


It is profitable for hospital h1 as it yields

bH (h1 ) = {d2 , d4 }
µ µ
bH (h2 ) = d1 µ
bH (h3 ) = d3

⇒ Hospital h1 can manipulate the outcome at this preference


profile.
22/25
Example: a hospital manipulates the hospital-proposing DA
Pd1 Pd2 Pd 3 Pd4 Ph 1 Ph2 Ph3
Pbdh21
h3 h2 h1 h1 d1 d1 d3
d4
h1 h1 h3 h2 d2 d2 d1
d3
h2 h3 h2 h3 d3 d3 d2
d1
d4 d4 d4

The hospital-proposing DA yields

µH (h1 ) = {d3 , d4 } µH (h2 ) = d2 µH (h3 ) = d1

Now consider hospital h1 submitting preferences Pbh1 .


It is profitable for hospital h1 as it yields

bH (h1 ) = {d2 , d4 }
µ µ
bH (h2 ) = d1 µ
bH (h3 ) = d3

⇒ Hospital h1 can manipulate the outcome at this preference


profile.
22/25
Example: a hospital manipulates the hospital-proposing DA
Pd1 Pd2 Pd 3 Pd4 Ph 1 Ph2 Ph3
Pbdh21
h3 h2 h1 h1 d1 d1 d3
d4
h1 h1 h3 h2 d2 d2 d1
d3
h2 h3 h2 h3 d3 d3 d2
d1
d4 d4 d4

The hospital-proposing DA yields

µH (h1 ) = {d3 , d4 } µH (h2 ) = d2 µH (h3 ) = d1

Now consider hospital h1 submitting preferences Pbh1 .


It is profitable for hospital h1 as it yields

bH (h1 ) = {d2 , d4 }
µ µ
bH (h2 ) = d1 µ
bH (h3 ) = d3

⇒ Hospital h1 can manipulate the outcome at this preference


profile.
22/25
Example: a hospital manipulates the hospital-proposing DA
Pd 1 Pd2 Pd3 Pd 4 Pbh0 1 Ph 1 Ph2 Ph3
h3 h2 h1 h1 d2 d1 d1 d3
h1 h1 h3 h2 d4 d2 d2 d1
h2 h3 h2 h3 d3 d3 d3 d2
d1 d4 d4 d4

The hospital-proposing DA yields

µH (h1 ) = {d3 , d4 } µH (h2 ) = d2 µH (h3 ) = d1

Now consider hospital h1 submitting preferences Pbh1 .


It is profitable for hospital h1 as it yields

bH (h1 ) = {d2 , d4 }
µ µ
bH (h2 ) = d1 µ
bH (h3 ) = d3

⇒ Hospital h1 can manipulate the outcome at this preference


profile.
22/25
Example: a hospital manipulates the hospital-proposing DA
Pd 1 Pd2 Pd3 Pd 4 Pbh0 1 Ph 1 Ph2 Ph3
h3 h2 h1 h1 d2 d1 d1 d3
h1 h1 h3 h2 d4 d2 d2 d1
h2 h3 h2 h3 d3 d3 d3 d2
d1 d4 d4 d4

The hospital-proposing DA yields

µH (h1 ) = {d3 , d4 } µH (h2 ) = d2 µH (h3 ) = d1

Now consider hospital h1 submitting preferences Pbh1 .


It is profitable for hospital h1 as it yields

bH (h1 ) = {d2 , d4 }
µ µ
bH (h2 ) = d1 µ
bH (h3 ) = d3

⇒ Hospital h1 can manipulate the outcome at this preference


profile.
22/25
Rural hospitals

The question of “rural hospitals” arises in the medical match and


other matching markets.
Candidates tend to prefer hospitals in urban areas. As a result,
hospitals in rural areas have a hard time filling all their vacancies.

Question: Can we find a mechanism that


I always produces a stable matching
I enables rural hospitals to fill all their vacancies?
Answer: No.

23/25
Rural hospitals

The question of “rural hospitals” arises in the medical match and


other matching markets.
Candidates tend to prefer hospitals in urban areas. As a result,
hospitals in rural areas have a hard time filling all their vacancies.

Question: Can we find a mechanism that


I always produces a stable matching
I enables rural hospitals to fill all their vacancies?
Answer: No.

23/25
Rural hospitals

The question of “rural hospitals” arises in the medical match and


other matching markets.
Candidates tend to prefer hospitals in urban areas. As a result,
hospitals in rural areas have a hard time filling all their vacancies.

Question: Can we find a mechanism that


I always produces a stable matching
I enables rural hospitals to fill all their vacancies?
Answer: No.

23/25
Theorem (Rural Hospital)
For any preference profile of doctors and hospitals, if at a stable
matching a hospital does not fill all its vacancies then it does not
fill all its vacancies at any stable matching.
Furthermore, if a hospital does not fill its vacancies at some stable
matching then it is matched to the same set of doctors at all
stable matchings.

24/25
Theorem (Rural Hospital)
For any preference profile of doctors and hospitals, if at a stable
matching a hospital does not fill all its vacancies then it does not
fill all its vacancies at any stable matching.
Furthermore, if a hospital does not fill its vacancies at some stable
matching then it is matched to the same set of doctors at all
stable matchings.

24/25
Take-away
I In the two-sided many-to-one matching model hospitals can
be matched to several doctors and have a maximum capacity
for doctors.
I We assume responsive preferences, which extend hospital
preferences over individual doctors to preferences over sets of
doctors in a natural manner.
I The Deferred Acceptance mechanism can be generalized to
the many-to-one matching model, with either doctors or
hospitals proposing.
I Most of the results of the one-to-one matching model carry
over to the many-to-one model, except the strategyproofness
of the DA mechanism for hospitals when the hospitals
propose.
I Rural Hospital Theorem: all stable matchings leave the same
doctors and same hospital positions unmatched.
25/25

You might also like