370 likes | 541 Views
Mechanism Design without Money. Lecture 8. The Match – a success story. Stability – 10 years before Gale Shapley.
E N D
Mechanism Design without Money Lecture 8
The Match – a success story Stability – 10 years before Gale Shapley “For over 50 years, most United States medical school seniors have chosen to use a matching program … “Before such matching programs … medical students often felt pressure, at an unreasonably early stage… accept offers from residency programs. … This situation was inefficient, chaotic, and unfair…” - Congress Truthfulness “THE MOST IMPORTANT THING FOR APPLICANTS TO REMEMBER: Simply rank internship programs based on your TRUE preferences, without consideration for where you believe you might be ranked by these programs. List the program that you want most as rank #1, followed by your next most-preferred program as rank #2, and so on.” – APPIC
Rural hospitals The problem with allocation of doctors to rural hospitals. Theorem: When preferences are strict, the set of doctors employed and positions filled is the same at every stable matching. Theorem: When preferences are strict, any hospital that does not fill its quota at some stable matching is assigned precisely the same set of students at every stable matching.
Couples With time and progress, couples became a problem for the NRMP. The “leading member” adjustment didn’t work very well… This was one of the main reasons the original NRMP algorithm had to be replaced.
stable matching with couples It turns out that when couples are present, the set of stable matchings may be empty. Example: , , Even when stable matchings do exist, there does not have to be a side-optimal stable matching.
Detour – complements and substitutes • Complements: want both A and B (cucumbers and tomatoes to make salad) • Substitutes: Given A, I want B less (apples and bananas when I need a fruit) • Substitutes: greedy allocation can’t be bad • Couples create complementarities
Where does DA break? • Suppose we run a doctor’s proposing DA • If a one of the members of the couple gets a negative answer, both leave • Problem – if a couple is temporarily assigned and then gets kicked out, a vacancy is created
Roth and Peranson (1999) • The new algorithm works as follows: • First do doctor-proposing deferred-acceptance, with only single doctors involved. • Then add the couples one by one (in random order) and using similar “proposing” mechanism. • If any cycles are detected, start over. • If the algorithm terminates, the resulting matching is stable. • And while supposedly there is no good reason for that, this algorithm always terminates (when using data from previous years or when using random preferences). • Furthermore, it is generally considered a success story, and it was adopted for other programs as well…
Roth and Peranson (1999) Clearinghouses currently using the algorithm (Taken from Roth’s slides):
Some questions • When is the set of stable matchings (with couples) non-empty? • NPC • Why does the Roth-Peranson algorithm works? • What about truthfulness?
Large markets again… Kojima, Pathakand Roth (working paper) – Using a model similar to Immorlica and Mahdian (2003) and Kojima and Pathak (2009), if the number of couples is then a stable matching exists (and can be reached by the Roth and Peranson algorithm). Intuition: Instead of bounding using the probability that there is no rejection cycle (and all rejection chains end with a hospital that had a vacant position). For couples bound using also that there is no rejection path from one member of the couple to the other.
Extending Roth’s result We will present better bounds and slightly more sophisticated algorithm insure existence of stable matching even if the number of couples is for any . No hope for finding a matching with probability 1 – o(1) in case the number of couples is .
Preferences n “strong” doctors ; many “weak” doctors 1.5n residency programs k=n1-e couples, all strong doctors Each hospital ranks all the strong doctors uniformly at random, and then the weak doctors Each single ranks all hospitals uniformly at random Each couple ranks pairs of hospitals uniformly at random, but only considers pairs which are in the same city
Algorithm • Assign the “strong” singles, according to GS (doctors propose) • Insert couples one by one: • If inserting couple ci didn’t reject any couple - continue • If assigning ci caused couple cp to get rejected: • Backtrack to the time where we assigned cp. • Assign ci before cp and continue • Assign all weak doctors (doctors proposing)
Example H1 • Assign Alice Bob and Charlie • Assign C1. Charlie gets unassigned • Assign Charlie • Assign C2. Bob get unassigned • Assign Bob. C1 gets unassigned • Need to backtrack Redo, with C2 and then C1 Alice H2 H3 C2 H4 Bob H5 C1 Charlie H6 H7
Example H1 • Assign Alice Bob and Charlie • Assign C2. Bob gets unassigned • Assign Bob • Try to Assign C1. They don’t get their first choice • Assign C1. They get their second choice Alice H2 H3 C2 H4 Bob H5 C1 Charlie H6 H7
Termination success If no couple ever gets unassigned – the algorithm ends successfully G - a graph on the couples, such that there is an edge from ci to cp if ci causes cp to get unassigned Want: a topological sort on G • Defining such a graph is hard: • - Whether ci gets cp to be unassigned depends on the rest of the system (who else is assigned right now) • - Worst case bounds are not enough: Every couple can potentially unassign many other couples – no topological sort exists
Blobs and the dependency graph Blob(ci,0) = set of hospitals doctor pairs which ci can effect, if they were inserted as the first couple H1 Alice H2 • From blobs to edges; if: • (H,d’) Blob(cp,0) • (H,d) Blob(ci,0) • Hospital H prefers d to d’ • Then there is an edge ci cp H3 C2 H4 Bob H5 C1 Example: (c2-husband, H2), (c2-wife, H3) Blob(c2,0) H6 (Bob,H5) Blob(c2,0) (c1-husband, H5) Blob (c1,0) , and H5 prefers Bob There is an edge from c2 c1
Not everyone can be first: controlling dependencies using high order blobs If a couple is not inserted first, they might see a different picture, e.g. because the hospital they would naturally get into is now taken by a couple who was there before them Blob(ci,r) = set of hospitals doctor pairs which ci can effect, if they were inserted as the first couple and an adversary would be allowed to close r hospitals We add an edge ci cp for high order blobs as well: (H,d’)B(ci,r) and (H,d)B(ci,r) with H preferring d to d’
High order blob example H1 Alice H2 H3 C2 H4 Bob H5 C1 Charlie H6 Example: (c1-husband, H5), (c1-wife, H6), Blob(c1,0) H7 (c1-husband, H1), (c1-wife, H7), Blob(c1,1)
Proof intuition Build the dependency graph G based on blobs of order r=3/ Prove that G is a DAG, and can be topologically sorted Main Lemma: Blobs of size 3/ are conservative enough, such that no couple will kick someone outside of their blob Show that our algorithm implicitly generates the blob graph and approximates a topological sort of it
Truthfulness in the Match “Programs should be ranked in sequence, according to the applicant's true preferences... It is highly unlikely that either applicants or programs will be able to influence the outcome of the Match in their favor by submitting a list that differs from their true preferences.” NRMP
Problem: S1 can cheat Hospital Preferences Capacity is 1 Student Preferences c1 H1 , c2 H2 , s1 H3 , s2 H4 The only stable marriage s1 H1 , s2 H2 , c1 H3 , c2 H4
A linear fraction of couples • The number of married people is proportional to the number of people • Simulations show decent success rates for a constant fraction of couples • Is there a way to insert the couples, to get a stable matching? Thm : consider a random market, with n singles, n couples and more than 20n hospitals. With constant probability, there is no stable outcome
Proof idea – isolated markets • Find a small structure, which prevents a stable outcome • A few hospitals and doctors, which (if left alone) can not form a stable outcome • Show that this small structure exists with constant probability • Show that no one outside the structure ever enters a hospital in the isolated market
Instable structure Hospital Preferences Capacity is 1 • For a single s and a couple c, with probability O(1/n2) we have the structure • If the structure occurs – no “local” stable outcome • There are n singles and n couples, so with constant probability this structure will occur Doctor Preferences
Isolated market • The only solution is to insert someone else to h1,h2 thus avoiding the problem • There is an excess of positions, so if a doctor goes to h1,h2 there are hospitals which are left free. We need to show that the doctor prefers them • A quantitative version of the Rural Hospital Theorem • Define a probabilistic process, show it’s a martingale, use Azuma’s inequality
Extensions Roommate problems, multi-sided matching Many-to-one with discrete money and substitutable preferences (Crawford and Knoer, 1981; Kelso and Crawford, 1982) Many-to-many with responsive preferences (Roth, 1984) Matching with contracts (Hatfield and Milgrom, 2005) Many-to-many matching with contracts (Echenique and Oveido, 2006) Matching in supply chains (Ostrovsky, 2008) Matching in networks with bilateral contracts (Hatfield, Kominers, Nichifor, Ostrovsky and Westkamp, working paper) Matching with minimum quotas, regional caps, etc. (Biro, Fleiner, Irving and Manlove, 2010, Kamada and Kojima, 2013)
Related topics Roth and VandeVate (1990) – Random paths to stability Jackson and Watts (2002) Ausubel and Milgrom (2000) on package bidding
Road example • 50 people want to get from A to B • There are two roads, each one has two segments. One takes an hour, and the other one takes the number of people on it 1 hour N minutes A B 1 hour N minutes
Nash in road example • In the Nash equilibrium, 25 people would take each route, for a travel time of 85 minutes 1 hour N minutes A B 1 hour N minutes
Braess’ paradox • Now suppose someone adds an extra road which takes no time at all. Travel time goes to 100 minutes 1 hour N minutes A B Free 1 hour N minutes