Popularity in the Capacitated House Allocation Problem

Slides:



Advertisements
Similar presentations
1 Almost stable matchings in the Roommates problem David Abraham Computer Science Department Carnegie-Mellon University Péter Biró Department of Computer.
Advertisements

Modelling and Solving the Stable Marriage problem using Constraint Programming David Manlove and Gregg OMalley University Of Glasgow Department of Computing.
Stable Matching Problems with Constant Length Preference Lists Rob Irving, David Manlove, Gregg OMalley University Of Glasgow Department of Computing Science.
1 Student-Project Allocation with Preferences over Projects David Manlove Gregg OMalley University of Glasgow Department of Computing Science Supported.
1 Almost stable matchings in the Roommates problem David Abraham Computer Science Department Carnegie-Mellon University, USA Péter Biró Department of Computer.
1 Student-Project Allocation with Preferences over Projects David Manlove University of Glasgow Department of Computing Science Joint work with Gregg OMalley.
Strong Stability in the Hospitals/Residents Problem
LAW February A 5/3 approximation algorithm for a hard case of stable marriage Rob Irving Computing Science Department University of Glasgow (joint.
Reagan/Clinton Compare/Contrast Essay. I. Reagan and Clinton both argue... but... A.Reagan argues B.Clinton argues.
Min-Max Relations, Hall’s Theorem, and Matching-Algorithms Graphs & Algorithms Lecture 5 TexPoint fonts used in EMF. Read the TexPoint manual before you.
Joint work with Rob Irving
PART 2 Fuzzy sets vs crisp sets
Popular Matching David Abraham Carnegie Mellon University Kavitha Telikepalli Max-Planck-Institut für Informatik Kurt Mehlhorn Rob Irving University of.
The max flow problem
I.1 ii.2 iii.3 iv.4 1+1=. i.1 ii.2 iii.3 iv.4 1+1=
On the Task Assignment Problem : Two New Efficient Heuristic Algorithms.
I.1 ii.2 iii.3 iv.4 1+1=. i.1 ii.2 iii.3 iv.4 1+1=
Mathematics Transformation on Trigonometric Functions Science and Mathematics Education Research Group Supported by UBC Teaching and Learning Enhancement.
Strong Stability in the Hospitals/Residents Problem Robert W. Irving, David F. Manlove and Sandy Scott University of Glasgow Department of Computing Science.
L3 #1 The Hospitals / Residents Problem and Some Extensions David Manlove University of Glasgow Department of Computing Science Supported by EPSRC grant.
C&O 355 Mathematical Programming Fall 2010 Lecture 19 N. Harvey TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A.
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
Mathematics Inverse Functions Science and Mathematics Education Research Group Supported by UBC Teaching and Learning Enhancement Fund Department.
The Complexity of Optimization Problems. Summary -Complexity of algorithms and problems -Complexity classes: P and NP -Reducibility -Karp reducibility.
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
Mathematics Relations and Functions: Factoring Polynomials Science and Mathematics Education Research Group Supported by UBC Teaching and Learning Enhancement.
Approximating Market Equilibria Kamal Jain, Microsoft Research Mohammad Mahdian, MIT Amin Saberi, Georgia Tech.
SPORTS MATCHINGS. YOUR TASK Your are the sports captain of your school. There are four different sports teams which are looking for one more person to.
Algorithms for Student-Project Allocation
CHAPTER Continuity Series Definition: Given a series   n=1 a n = a 1 + a 2 + a 3 + …, let s n denote its nth partial sum: s n =  n i=1 a i = a.
Assignments and matchings Chapter 12 Presented by Yorai Geffen.
Network Flows Chun-Ta, Yu Graduate Institute Information Management Dept. National Taiwan University.
1 “Almost stable” matchings in the Roommates problem David Abraham Computer Science Department Carnegie-Mellon University, USA Péter Biró Department of.
Graph Algorithms Maximum Flow - Best algorithms [Adapted from R.Solis-Oba]
1 JOB SEQUENCING WITH DEADLINES The problem is stated as below. There are n jobs to be processed on a machine. Each job i has a deadline d i ≥ 0 and profit.
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
Network Formation Games. NFGs model distinct ways in which selfish agents might create and evaluate networks We’ll see two models: Global Connection Game.
Pareto Optimality in House Allocation Problems David Manlove Department of Computing Science University of Glasgow David Abraham Computer Science Department.
ПОРТФОЛИО профессиональной деятельности Белово 2015 Таюшовой Натальи Борисовны Преподавателя дисциплин «Химия», «Биология»
Network Formation Games. NFGs model distinct ways in which selfish agents might create and evaluate networks We’ll see two models: Global Connection Game.
Centralised matching schemes
Efficient algorithms for Steiner Tree Problem
The Perfect Marriage! Ephesians 5:21-33.
Maximum Flow - Best algorithms
Fair division Lirong Xia Oct 7, 2013.
Chapter 5. Optimal Matchings
Flow diagrams (i) (ii) (iii) x – Example
ICS 353: Design and Analysis of Algorithms
3. Old Brain I III II V IV VII VI VIII IX X XII XI
Parameterised Complexity
Instructor: Shengyu Zhang
Tweet summary of article I
Principles of Computing – UFCFA3-30-1
“Almost stable” matchings in the Roommates problem
3.5 Minimum Cuts in Undirected Graphs
Finite Automata and Formal Languages
Analysis of Algorithms
Vertex Covers, Matchings, and Independent Sets
Unit 9; Civil Rights and Civil Liberties
Problem Solving 4.
Blah blah blah.
NS4960 Spring Term 2017 IEA Energy Security Index
Matching and Resource Allocation
Rank Maximal Matching By Robert W. Irving, Telikepalli Kavitha,
Richard Anderson Autumn 2016 Lecture 2
УВС АЙМГИЙН НИЙГЭМ ЭДИЙН
Algorithms (2IL15) – Lecture 7
NP-Completeness Reference: Computers and Intractability: A Guide to the Theory of NP-Completeness by Garey and Johnson, W.H. Freeman and Company, 1979.
Piyush Kumar (Lecture 3: Stable Marriage)
A Grand Tour of Stable Matching Problems
Presentation transcript:

Popularity in the Capacitated House Allocation Problem David Manlove Department of Computing Science University of Glasgow Colin Sng BCTCS - 5th April 2006

Capacitated House Allocation Problem (CHA) Set of agents A = {a1, a2,…, ar} Set of houses H = {h1,h2,…,hs} Each agent ai has a strictly ranked preference list of acceptable houses; houses have no preference over agents. Each house hj has a capacity cj which indicates the maximum number of agents who may be matched to it A matching is a partial function from A to H such that Each agent ai is only matched to acceptable houses Each agent ai is matched to at most one house hj Each house hj is matched at most to cj agents Example a1: h1 h2 h1:c1=2 a2: h1 h4 h2 h2:c2=1 a3: h2 h1 h4 h3 h3:c3=2 a4: h4 h2 h3 h4:c4=1 a5: h4 h1 a6: h2 h1 h4 a7: h4 BCTCS - 5th April 2006

Popular Matchings Let M be a matching in a given instance I of CHA. Define M(ai) to be the house matched to a matched agent ai in M Define M(hj) to be the set of agents matched to a house hj in M Given two matchings M and M', agent ai prefers M to M' if either ai is matched in M but unmatched in M', or ai is matched in both M and M', but prefers M(ai) to M'(ai) We say that M is more popular than M' if there are more agents who prefer M to M' than prefer M' to M A matching M is popular if there is no other matching M' that is more popular than M. BCTCS - 5th April 2006

Popular matchings may not exist Consider the following example instance I1 of CHA ( c1=c2=c3=1) a1: h1 h2 h3 a2: h1 h2 h3 a3: h1 h2 h3 M1= {(a1,h1), (a2,h2),(a3,h3)} and M2 = {(a1,h3),(a2,h1),(a3,h2)} are two possible matchings. a1 prefers M1 to M2 (1 agent) but a2 and a3 prefers M2 to M1 (2 agents) So M2 is more popular than M1 In fact, there is no popular matching Problem: given any CHA instance, find a popular matching if one exists BCTCS - 5th April 2006

Background Known results Problem was first considered by Gardenfors (1975) in context of Stable Marriage problem (SM) D.J. Abraham, R.W. Irving, T. Kavitha, K. Melhorn (2005) considered the problem in special setting of CHA, where each house has capacity 1 (otherwise known as House Allocation problems). Falls in category of matching problems with one-sided preference lists. Examples:- Scottish Executive Teaching Induction Scheme, allocation of campus housing in American universities CHA follows as natural extension of problem setting. BCTCS - 5th April 2006

Characterisation of popular matchings in CHA (i) For each agent ai, f(ai) denotes the first-ranked house on ai’s preference list, we call f(ai) an f-house For each house hj, let f(hj) = aiA: f(ai) =hj and fj =|f(hj)| Lemma 1. Let M be any popular matching for a given CHA instance I. Then, for every f-house hj, |M(hj)∩f(hj)| = min {cj,fj} BCTCS - 5th April 2006

Execution (i) a1: h1 h2 a2: h1 h4 h2 a3: h2 h1 h4 h3 a4: h4 h2 h3 Example a1: h1 h2 a2: h1 h4 h2 a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 a6: h2 h1 h4 a7: h4 h1:c1=2, f1 c1 h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 Lemma 1. Let M be any popular matching for a given CHA instance I. Then, for every f-house hj, |M(hj)∩f(hj)| = min {cj,fj} a1 a2 a3 a4 a5 a6 h1 h2 h3 h4 a7 BCTCS - 5th April 2006

Execution (ii) Example a1: h1 h2 a2: h1 h4 h2 a3: h2 h1 h4 h3 h1:c1=2, f1 c1 h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 Lemma 1. Let M be any popular matching for a given CHA instance I. Then, for every f-house hj, |M(hj)∩f(hj)| = min {cj,fj} a1 a2 a3 a4 a5 a6 h1 h2 h3 h4 a7 BCTCS - 5th April 2006

Execution (iii) Example a1: h1 h2 a2: h1 h4 h2 a3: h2 h1 h4 h3 Match a1 & a2 to h1 Lemma 1. Let M be any popular matching for a given CHA instance I. Then, for every f-house hj, |M(hj)∩f(hj)| = min {cj,fj} a1 a2 a3 a4 a5 a6 h1 h2 h3 h4 a7 BCTCS - 5th April 2006

Execution (iv) Example a1: h1 h2 a2: h1 h4 h2 a3: h2 h1 h4 h3 Lemma 1. Let M be any popular matching for a given CHA instance I. Then, for every f-house hj, |M(hj)∩f(hj)| = min {cj,fj} a1 h1 a2 h2 a3 h3 a4 a5 h4 a6 a7 BCTCS - 5th April 2006

Characterisation of popular matchings in CHA (ii) For each agent ai, s(ai) denotes the most-preferred house hj on ai’s preference list such that either (i) hj is a non f-house, or (ii) hj is an f-house such that hjf(ai) and fj < cj we call s(ai) an s-house create a last resort house l(ai) and append l(ai) to ai’s preference list BCTCS - 5th April 2006

Execution (v) Example a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) h1:c1=0 h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 (f-house,s-house) a1 h1 a2 h2 a3 h3 a4 l(a5) a5 h4 a6 l(a6) a7 l(a7) BCTCS - 5th April 2006

Characterisation of popular matchings in CHA (iii) Lemma 2. Let M be any popular matching in a CHA instance. Then no agent ai can be matched in M to a house between f(ai) and s(ai) on ai’s preference list. ai: f(ai) … M(ai) …s(ai) Lemma 3. Let M be any popular matching in a CHA instance. Then no agent can be matched in M to a house worse than s(ai) on ai’s preference list. ai: f(ai) … s(ai) M(ai) BCTCS - 5th April 2006

Characterisation of popular matchings in CHA (iv) By Lemmas 2 and 3, for every agent ai, M(ai)  {f(ai), s(ai)}, so only need a subgraph G' of G to find popular matching For each agent ai in the graph G, delete all edges except those belonging to f(ai) and s(ai) Theorem 1. A matching M is popular if and only if For every f-house hj, If fjcj, then f(hj) M(hj), else If fj>cj, then |M(hj)|=cj and M(hj) f(hj) M is an agent-complete matching of the subgraph G' BCTCS - 5th April 2006

Execution (vi) Example a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) h1:c1=0 h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 (f-house,s-house) a1 h1 a2 h2 a3 h3 a4 l(a5) a5 h4 a6 l(a6) a7 l(a7) BCTCS - 5th April 2006

Execution (vii) Example a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 (f-house,s-house) NB: Condition 1(a) of Theorem 1 already satisfied, i.e. for every f-house hj, if fjcj, then f(hj) M(hj), a1 h1 a2 h2 a3 h3 a4 l(a5) a5 h4 a6 l(a6) a7 l(a7) BCTCS - 5th April 2006

Execution (viii) Example a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 (f-house,s-house) Find an agent-complete matching to satisfy Condition 2 of Theorem 1 a1 h1 a2 h2 a3 h3 a4 l(a5) a5 h4 a6 l(a6) a7 l(a7) BCTCS - 5th April 2006

Execution (ix) Example a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 (f-house,s-house) Find an agent-complete matching to satisfy Condition 2 of Theorem 1 a1 h1 a2 h2 a3 h3 a4 l(a5) a5 h4 a6 l(a6) a7 l(a7) BCTCS - 5th April 2006

Execution (x) Example a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 (f-house,s-house) Ensure Condition 1(b) of Theorem 1 i.e. for every f-house hj, if fj>cj, then |M(hj)|=cj and M(hj) f(hj) a1 h1 a2 h2 a3 h3 a4 l(a5) a5 h4 a6 l(a6) a7 l(a7) BCTCS - 5th April 2006

Execution (x) Example a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 (f-house,s-house) Ensure Condition 1(b) of Theorem 1 i.e. for every f-house hj, if fj>cj, then |M(hj)|=cj and M(hj) f(hj) a1 h1 a2 h2 a3 h3 a4 l(a5) a5 h4 a6 l(a6) a7 l(a7) BCTCS - 5th April 2006

Execution (xi) Example a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 (f-house,s-house) Promote a6 to h2 Ensure Condition 1(b) of Theorem 1 i.e. for every f-house hj, if fj>cj, then |M(hj)|=cj and M(hj) f(hj) a1 h1 a2 h2 a3 h3 a4 l(a5) a5 h4 a6 l(a6) a7 l(a7) BCTCS - 5th April 2006

Execution (xii) Example a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) h2:c2=1,f2>c2 h3:c3=2 h4:c4=1,f4>c4 (f-house,s-house) Nothing to do for a5 & a7 Ensure Condition 1(b) of Theorem 1 i.e. for every f-house hj, if fj>cj, then |M(hj)|=cj and M(hj) f(hj) a1 h1 a2 h2 a3 h3 a4 l(a5) a5 h4 a6 l(a6) a7 l(a7) BCTCS - 5th April 2006

Execution (xiii) Example a1: h1 h2 l(a1) a2: h1 h4 h2 l(a2) a3: h2 h1 h4 h3 a4: h4 h2 h3 a5: h4 h1 l(a5) a6: h2 h1 h4 l(a6) a7: h4 l(a7) (f-house,s-house) Matching satisfies Theorem 1 Popular matching = {(a1,h1), (a2, h1),(a3,h3),(a4,h4), (a6, h2)} a1 h1 a2 h2 a3 h3 a4 a5 h4 a6 a7 BCTCS - 5th April 2006

Summary Time complexity of algorithm is O(r3/2s1/2) Algorithm can be extended to find maximum cardinality popular matching also in O(r3/2s1/2) time Have also extended findings to the case where preference list may contain ties, i.e. Capacitated House Allocation problem with ties (CHAT) O((r+s)L) algorithm for finding a maximum cardinality popular matching in an instance of CHAT, if one exists Open problem: Extend setting to include the case where houses also have preferences over agents. What is the complexity of finding a maximum cardinality popular matching if one exists? BCTCS - 5th April 2006