Bipartite Matchings and Stable Marriage

Size: px
Start display at page:

Download "Bipartite Matchings and Stable Marriage"

Transcription

1 Bipartite Matchings and Stable Marriage Meghana Nasre Department of Computer Science and Engineering Indian Institute of Technology, Madras Faculty Development Program SSN College of Engineering, Chennai December 12, 2014

2 Why matchings? Several real world applications involve assigning: jobs to machines. students to projects. jobs to applicants. roommate to another.

3 Outline of Talk Quick introduction to graphs. Matchings in graphs. Bipartite matching algorithm. Stable matchings.

4 Introduction to graphs

5 G = (V, E). Representation and search techniques v1 v2 v6 v3 v5 How large can m be? v4 n = V = 6, m = E = 8.

6 G = (V, E). Representation and search techniques v1 v2 v6 v3 v5 How large can m be? Representation: v4 n = V = 6, m = E = 8. Adjacency Lists O(m + n) space. Adjacency Matrix O(n 2 ) space.

7 G = (V, E). Representation and search techniques v1 v2 v6 v3 v5 How large can m be? Representation: v4 n = V = 6, m = E = 8. Adjacency Lists O(m + n) space. Adjacency Matrix O(n 2 ) space. Search methods: Breadth First Search. Depth First Search.

8 Matching in a graph

9 Matching in a graph A matching M is a set of vertex disjoint edges. v1 v2 v6 v3 v5 v4

10 Matching in a graph A matching M is a set of vertex disjoint edges. v1 v2 v6 v3 v5 v4

11 Matching in a graph A matching M is a set of vertex disjoint edges. v1 v2 v6 v3 v5 v4 Goal: compute a maximum sized matching. Question: is the above matching maximum sized?

12 Matching in a graph A matching M is a set of vertex disjoint edges. v1 v2 v1 v2 v6 v6 v3 v5 v3 v5 v4 v4

13 Matching in a graph A matching M is a set of vertex disjoint edges. v1 v2 v1 v2 v6 v6 v3 v5 v3 v5 v4 Maximal: No more edges can be added to the matching. v4

14 Matching in a graph A matching M is a set of vertex disjoint edges. v1 v2 v1 v2 v6 v6 v3 v5 v3 v5 v4 Maximal: No more edges can be added to the matching. Size may not be largest possible. Maximum: Has size as large as possible. Note that every maximum matching is maximal. v4

15 Alternating paths A path having alternate matched and unmatched edges. v1 v2 v6 v3 v5 v4

16 Alternating paths A path having alternate matched and unmatched edges. v1 v2 v6 v3 v5 v4 Is there any other alternating path?

17 Alternating paths A path having alternate matched and unmatched edges. v1 v2 v6 v3 v5 v4 Is there any other alternating path? Which paths are not alternating?

18 Augmenting paths An alternating path starting and ending in free edges. v1 v2 v6 v3 v5 v4

19 Augmenting paths An alternating path starting and ending in free edges. v1 v2 v6 v3 v5 v4 How are augmenting paths useful? Properties of augmenting paths.

20 Using augmenting paths Berge s Theorem If aug. path P is present size of matching can be increased.

21 Using augmenting paths Berge s Theorem If aug. path P is present size of matching can be increased. M = M P. v1 v2 v1 v2 v6 augment M with P v6 v3 P v5 v3 P v5 v4 M M v4

22 Using augmenting paths Berge s Theorem If no aug. path w.r.t. M M is maximum. Proof (by contradiction) Suppose M does not admit any aug. path and still it is not maximum. Some other matching M is maximum.

23 Using augmenting paths Berge s Theorem If no aug. path w.r.t. M M is maximum. Proof (by contradiction) Suppose M does not admit any aug. path and still it is not maximum. Some other matching M is maximum. Consider M M. Construct an aug. path w.r.t. M.

24 Maximum matching algorithm Given G = (V, E), compute a maximum sized matching.

25 Maximum matching algorithm Given G = (V, E), compute a maximum sized matching. Iterative Improvement Initialize M to be empty. while there exists an aug. path P w.r.t. M M = M P. return M.

26 Maximum matching algorithm Given G = (V, E), compute a maximum sized matching. Iterative Improvement Initialize M to be empty. while there exists an aug. path P w.r.t. M M = M P. return M. Two questions that need to be always asked: 1. Correctness? 2. Complexity/ Running time?

27 Maximum matching algorithm Given G = (V, E), compute a maximum sized matching. Iterative Improvement Initialize M to be empty. while there exists an aug. path P w.r.t. M M = M P. return M. Two questions that need to be always asked: 1. Correctness? 2. Complexity/ Running time? How to efficiently compute an augmenting path?

28 Bipartite matching algorithm

29 Bipartite graphs G = (A B, E). A B Equivalent statements Vertices can be partitioned into 2 disjoint sets. G is bipartite iff G does not have any odd cycle. Graph is 2 colorable iff it is bipartite.

30 Finding aug. path in bipartite graphs a1 b1 a2 b2 a3 b3 a4 b4 a5 b5 A B

31 Finding aug. path in bipartite graphs a1 a2 a3 b1 b2 b3 Aug. paths w.r.t. M: a 1, b 2. a 5, b 5. a4 b4 a5 b5 A B

32 Finding aug. path in bipartite graphs a1 a2 a3 a4 b1 b2 b3 b4 Aug. paths w.r.t. M: a 1, b 2. a 5, b 5. a 4, b 3, a 2, b 4. a5 b5 A B

33 Finding aug. path in bipartite graphs a1 a2 a3 a4 a5 A B b1 b2 b3 b4 b5 Aug. paths w.r.t. M: a 1, b 2. a 5, b 5. a 4, b 3, a 2, b 4. Finding aug. paths reachability in a modified graph.

34 Finding aug. path in bipartite graphs a1 b1 a1 b1 a2 b2 a2 b2 a3 b3 s a3 b3 t a4 b4 a4 b4 a5 b5 a5 b5 A B A B

35 Finding aug. path in bipartite graphs a1 b1 a1 b1 a2 b2 a2 b2 a3 b3 s a3 b3 t a4 b4 a4 b4 a5 b5 a5 b5 A B A B Add dummy nodes s and t. Add edges from s to unmatched vertices in A. Add edges from unmatched vertices in B to t. Matched edges: B A. Unmatched edges: A B.

36 Finding aug. path in bipartite graphs a1 b1 a1 b1 a2 b2 a2 b2 a3 b3 s a3 b3 t a4 b4 a4 b4 a5 b5 a5 b5 A B A B Aug. path in G w.r.t. M is a simple directed s to t path in G.

37 Maximum matching in bipartite graph Given G = (V, E), compute a maximum sized matching. Iterative Improvement Initialize M to be empty. while there exists an aug. path P w.r.t. M M = M P. return M. Running time?

38 Maximum matching in bipartite graph Given G = (V, E), compute a maximum sized matching. Iterative Improvement Initialize M to be empty. while there exists an aug. path P w.r.t. M M = M P. return M. Running time? 1. How many iterations?

39 Maximum matching in bipartite graph Given G = (V, E), compute a maximum sized matching. Iterative Improvement Initialize M to be empty. while there exists an aug. path P w.r.t. M M = M P. return M. Running time? 1. How many iterations? at most n/2.

40 Maximum matching in bipartite graph Given G = (V, E), compute a maximum sized matching. Iterative Improvement Initialize M to be empty. while there exists an aug. path P w.r.t. M M = M P. return M. Running time? 1. How many iterations? at most n/2. 2. How long does each iteration take?

41 Maximum matching in bipartite graph Given G = (V, E), compute a maximum sized matching. Iterative Improvement Initialize M to be empty. while there exists an aug. path P w.r.t. M M = M P. return M. Running time? 1. How many iterations? at most n/2. 2. How long does each iteration take? at most O(m + n).

42 Maximum matching in bipartite graph Given G = (V, E), compute a maximum sized matching. Iterative Improvement Initialize M to be empty. while there exists an aug. path P w.r.t. M M = M P. return M. Running time? 1. How many iterations? at most n/2. 2. How long does each iteration take? at most O(m + n). 3. Total running time: O(mn).

43 Efficient algorithms The best known for both bipartite and general graphs is O( nm) time algorithms. Algorithms on general graphs are significantly involved.

44 Efficient algorithms The best known for both bipartite and general graphs is O( nm) time algorithms. Algorithms on general graphs are significantly involved. Edmond s Blossom Shrinking algorithm. (Also the paper where the notion of polynomial time being efficient was formalized). Weighted matchings can also be done in polynomial time. Beautiful theory of Linear Programming Duality involved.

45 Stable matching problem

46 A bit of history.. Introduced by Gale and Shapley in 1962 while studying college admissions. Bipartite matching problem with preferences. Arises in several places like TA-allocation, project allocation. Classical setting: marriage between n men and n women.

47 Setting Input: m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is optimal.

48 Setting Input: m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is optimal. m1 w1 m2 w2 m3 w3 Question: Is this a good matching?

49 Setting Input: m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is optimal. m1 w1 m2 w2 m3 w3 Question: Is this a good matching? pair (m 2, w 2 ) is bad!

50 Setting Input: m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable.

51 Setting Input: m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable. m1 w1 m1 w1 m2 w2 m2 w2 m3 w3 m3 w3 unstable. stable.

52 Setting Input: m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable. m1 w1 m1 w1 m2 w2 m2 w2 m3 w3 m3 w3 unstable. stable. unstable pair: A pair (m, w) not matched to each other, both of which prefer each other to their current partners in M.

53 Stable marriage problem Input: m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable. Does a stable marriage exist in any instance?

54 Stable marriage problem Input: m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable. Does a stable marriage exist in any instance? Is stable marriage unique?

55 Stable marriage problem Input: m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable. Does a stable marriage exist in any instance? Is stable marriage unique? Can it be computed efficiently?

56 Stable marriage problem Remarkable result of Gale and Shapley m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable. Does a stable marriage exist in any instance?

57 Stable marriage problem Remarkable result of Gale and Shapley m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable. Does a stable marriage exist in any instance? Yes, always! Is stable marriage unique?

58 Stable marriage problem Remarkable result of Gale and Shapley m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable. Does a stable marriage exist in any instance? Yes, always! Is stable marriage unique? No, there is a range of stable matchings; can be unique in some cases. Can it be computed efficiently?

59 Stable marriage problem Remarkable result of Gale and Shapley m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 Goal: To compute a matching that is stable. Does a stable marriage exist in any instance? Yes, always! Is stable marriage unique? No, there is a range of stable matchings; can be unique in some cases. Can it be computed efficiently? Yes, in O(n 2 ) time.

60 Stable marriage algorithm m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 set all men and women as unengaged. while there exists an unengaged man m 1. m proposes to the most preferred woman w to whom he has not yet proposed. 2. w accepts if either she is unengaged or she is engaged to m and w prefers m to m.

61 Stable marriage algorithm m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 set all men and women as unengaged. while there exists an unengaged man m 1. m proposes to the most preferred woman w to whom he has not yet proposed. 2. w accepts if either she is unengaged or she is engaged to m and w prefers m to m. Questions: Does the algorithm even terminate?

62 Stable marriage algorithm m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 set all men and women as unengaged. while there exists an unengaged man m 1. m proposes to the most preferred woman w to whom he has not yet proposed. 2. w accepts if either she is unengaged or she is engaged to m and w prefers m to m. Questions: Does the algorithm even terminate? Why does it output a stable marriage?

63 Stable marriage algorithm m 1 : w 1, w 2, w 3 m 2 : w 2, w 3, w 1 m 3 : w 3, w 1, w 2 w 1 : m 3, m 2, m 1 w 2 : m 2, m 1, m 3 w 3 : m 1, m 3, m 2 set all men and women as unengaged. while there exists an unengaged man m 1. m proposes to the most preferred woman w to whom he has not yet proposed. 2. w accepts if either she is unengaged or she is engaged to m and w prefers m to m. Questions: Does the algorithm even terminate? Why does it output a stable marriage? How does the ordering of men in the while loop matter?

64 Stable marriage algorithm A surprisingly simple algorithm that is guaranteed to produce a stable matching. A rich structure underlying the problem.

65 Stable marriage algorithm A surprisingly simple algorithm that is guaranteed to produce a stable matching. A rich structure underlying the problem. Has been dealt in two books one by Irving and Gusfield and a recent one by Manlove. National Residency Matching program one of the most important applications amongst several others. Pioneering work by Roth and Shapley won the 2012 Nobel prize for Economics.

66 Summary Matchings, definitions, augmenting/alternating paths. A template for finding matchings by iterative improvement. An efficient algorithm in the bipartite case. Stable marriage algorithm and properties.

67 Thank You!

Ma/CS 6b Class 3: Stable Matchings

Ma/CS 6b Class 3: Stable Matchings Ma/CS 6b Class 3: Stable Matchings α p 5 p 12 p 15 q 1 q 7 q 12 By Adam Sheffer Reminder: Alternating Paths Let G = V 1 V 2, E be a bipartite graph, and let M be a matching of G. A path is alternating

More information

Ma/CS 6b Class 3: Stable Matchings

Ma/CS 6b Class 3: Stable Matchings Ma/CS 6b Class 3: Stable Matchings α p 5 p 12 p 15 q 1 q 7 q 12 β By Adam Sheffer Neighbor Sets Let G = V 1 V 2, E be a bipartite graph. For any vertex a V 1, we define the neighbor set of a as N a = u

More information

CSC2556. Lecture 5. Matching - Stable Matching - Kidney Exchange [Slides : Ariel D. Procaccia]

CSC2556. Lecture 5. Matching - Stable Matching - Kidney Exchange [Slides : Ariel D. Procaccia] CSC2556 Lecture 5 Matching - Stable Matching - Kidney Exchange [Slides : Ariel D. Procaccia] CSC2556 - Nisarg Shah 1 Announcements The assignment is up! It is complete, and no more questions will be added.

More information

1. REPRESENTATIVE PROBLEMS

1. REPRESENTATIVE PROBLEMS 1. REPRESENTATIVE PROBLEMS stable matching five representative problems Lecture slides by Kevin Wayne Copyright 2005 Pearson-Addison Wesley Copyright 2013 Kevin Wayne http://www.cs.princeton.edu/~wayne/kleinberg-tardos

More information

STABLE MARRIAGE PROBLEM WITH TIES AND INCOMPLETE BOUNDED LENGTH PREFERENCE LIST UNDER SOCIAL STABILITY

STABLE MARRIAGE PROBLEM WITH TIES AND INCOMPLETE BOUNDED LENGTH PREFERENCE LIST UNDER SOCIAL STABILITY STABLE MARRIAGE PROBLEM WITH TIES AND INCOMPLETE BOUNDED LENGTH PREFERENCE LIST UNDER SOCIAL STABILITY Ashish Shrivastava and C. Pandu Rangan Department of Computer Science and Engineering, Indian Institute

More information

Analysis of Algorithms Fall Some Representative Problems Stable Matching

Analysis of Algorithms Fall Some Representative Problems Stable Matching Analysis of Algorithms Fall 2017 Some Representative Problems Stable Matching Mohammad Ashiqur Rahman Department of Computer Science College of Engineering Tennessee Tech University Matching Med-school

More information

Input. A set of men M, and a set of women W.

Input. A set of men M, and a set of women W. Input. A set of men M, and a set of women W. Input. A set of men M, and a set of women W. Every agent has a set of acceptable partners. Input. A set of men M, and a set of women W. Every agent has a set

More information

Matchings in Graphs. Definition 3 A matching N in G is said to be stable if it does not contain a blocking pair.

Matchings in Graphs. Definition 3 A matching N in G is said to be stable if it does not contain a blocking pair. Matchings in Graphs Lecturer: Scribe: Prajakta Jose Mathew Meeting: 6 11th February 2010 We will be considering finite bipartite graphs. Think of one part of the vertex partition as representing men M,

More information

1. REPRESENTATIVE PROBLEMS

1. REPRESENTATIVE PROBLEMS 1. REPRESENTATIVE PROBLEMS stable matching five representative problems Special thanks to Kevin Wayne for sharing the slides Copyright 2005 Pearson-Addison Wesley Last updated on 15/9/12 下午 10:33 1. REPRESENTATIVE

More information

CS320 Algorithms: Theory and Practice. Course Introduction

CS320 Algorithms: Theory and Practice. Course Introduction Course Objectives CS320 Algorithms: Theory and Practice Algorithms: Design strategies for algorithmic problem solving Course Introduction "For me, great algorithms are the poetry of computation. Just like

More information

Consider a complete bipartite graph with sets A and B, each with n vertices.

Consider a complete bipartite graph with sets A and B, each with n vertices. When DFS discovers a non-tree edge, check if its two vertices have the same color (red or black). If all non-tree edges join vertices of different color then the graph is bipartite. (Note that all tree

More information

Stable Marriage with Ties and Bounded Length Preference Lists

Stable Marriage with Ties and Bounded Length Preference Lists Stable Marriage with Ties and Bounded Length Preference Lists Robert W. Irving, David F. Manlove, and Gregg O Malley Department of Computing Science, University of Glasgow, Glasgow G12 8QQ, UK. Email:

More information

Subramanian s stable matching algorithm

Subramanian s stable matching algorithm Subramanian s stable matching algorithm Yuval Filmus November 2011 Abstract Gale and Shapley introduced the well-known stable matching problem in 1962, giving an algorithm for the problem. Subramanian

More information

CS 6901 (Applied Algorithms) Lecture 2

CS 6901 (Applied Algorithms) Lecture 2 CS 6901 (Applied Algorithms) Lecture 2 Antonina Kolokolova September 15, 2016 1 Stable Matching Recall the Stable Matching problem from the last class: there are two groups of equal size (e.g. men and

More information

COMP251: Bipartite graphs

COMP251: Bipartite graphs COMP251: Bipartite graphs Jérôme Waldispühl School of Computer Science McGill University Based on slides fom M. Langer (McGill) & P. Beame (UofW) Recap: Dijkstra s algorithm DIJKSTRA(V, E,w,s) INIT-SINGLE-SOURCE(V,s)

More information

COMP251: Bipartite graphs

COMP251: Bipartite graphs COMP251: Bipartite graphs Jérôme Waldispühl School of Computer Science McGill University Based on slides fom M. Langer (McGill) & P. Beame (UofW) Recap: Dijkstra s algorithm DIJKSTRA(V, E,w,s) INIT-SINGLE-SOURCE(V,s)

More information

1. REPRESENTATIVE PROBLEMS

1. REPRESENTATIVE PROBLEMS 1. REPRESENTATIVE PROBLEMS stable matching five representative problems Lecture slides by Kevin Wayne Copyright 2005 Pearson-Addison Wesley http://www.cs.princeton.edu/~wayne/kleinberg-tardos Last updated

More information

Efficient Algorithms for Bipartite Matching Problems with Preferences

Efficient Algorithms for Bipartite Matching Problems with Preferences Efficient Algorithms for Bipartite Matching Problems with Preferences by Colin Thiam Soon Sng A thesis submitted to the Faculty of Information and Mathematical Sciences at the University of Glasgow for

More information

Part V. Matchings. Matching. 19 Augmenting Paths for Matchings. 18 Bipartite Matching via Flows

Part V. Matchings. Matching. 19 Augmenting Paths for Matchings. 18 Bipartite Matching via Flows Matching Input: undirected graph G = (V, E). M E is a matching if each node appears in at most one Part V edge in M. Maximum Matching: find a matching of maximum cardinality Matchings Ernst Mayr, Harald

More information

Dynamic Matching under Preferences

Dynamic Matching under Preferences Dynamic Matching under Preferences Martin Hoefer Max-Planck-Institut für Informatik mhoefer@mpi-inf.mpg.de Kolkata, 11 March 2015 How to find a stable relationship? Stable Marriage Set of Women Set of

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LETURE 2 Network Flow Finish bipartite matching apacity-scaling algorithm Adam Smith 0//0 A. Smith; based on slides by E. Demaine,. Leiserson, S. Raskhodnikova, K. Wayne Marriage

More information

Popular Matchings with Lower Quotas

Popular Matchings with Lower Quotas Popular Matchings with Lower Quotas Meghana Nasre 1 and Prajakta Nimbhorkar 2 1 Indian Institute of Technology, Madras, India meghana@cse.iitm.ac.in 2 Chennai Mathematical Institute, India prajakta@cmi.ac.in

More information

Lecture 2: Just married

Lecture 2: Just married COMP36111: Advanced Algorithms I Lecture 2: Just married Ian Pratt-Hartmann Room KB2.38: email: ipratt@cs.man.ac.uk 2017 18 Outline Matching Flow networks Third-year projects The stable marriage problem

More information

An improved approximation algorithm for the stable marriage problem with one-sided ties

An improved approximation algorithm for the stable marriage problem with one-sided ties Noname manuscript No. (will be inserted by the editor) An improved approximation algorithm for the stable marriage problem with one-sided ties Chien-Chung Huang Telikepalli Kavitha Received: date / Accepted:

More information

1. STABLE MATCHING. stable matching problem Gale Shapley algorithm hospital optimality context

1. STABLE MATCHING. stable matching problem Gale Shapley algorithm hospital optimality context 1. STABLE MATCHING stable matching problem Gale Shapley algorithm hospital optimality context Lecture slides by Kevin Wayne Copyright 2005 Pearson-Addison Wesley http://www.cs.princeton.edu/~wayne/kleinberg-tardos

More information

Algorithmics of Two-Sided Matching Problems

Algorithmics of Two-Sided Matching Problems Algorithmics of Two-Sided Matching Problems David J. Abraham Submitted for the degree of Master of Science, Department of Computing Science, University of Glasgow, October, 2003 c 2003 David J. Abraham

More information

Math 301: Matchings in Graphs

Math 301: Matchings in Graphs Math 301: Matchings in Graphs Mary Radcliffe 1 Definitions and Basics We begin by first recalling some basic definitions about matchings. A matching in a graph G is a set M = {e 1, e 2,..., e k } of edges

More information

1 Matchings in Non-Bipartite Graphs

1 Matchings in Non-Bipartite Graphs CS 598CSC: Combinatorial Optimization Lecture date: Feb 9, 010 Instructor: Chandra Chekuri Scribe: Matthew Yancey 1 Matchings in Non-Bipartite Graphs We discuss matching in general undirected graphs. Given

More information

CS 598RM: Algorithmic Game Theory, Spring Practice Exam Solutions

CS 598RM: Algorithmic Game Theory, Spring Practice Exam Solutions CS 598RM: Algorithmic Game Theory, Spring 2017 1. Answer the following. Practice Exam Solutions Agents 1 and 2 are bargaining over how to split a dollar. Each agent simultaneously demands share he would

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 2 Analysis of Stable Matching Asymptotic Notation Adam Smith Stable Matching Problem Goal: Given n men and n women, find a "suitable" matching. Participants rate members

More information

Weights in stable marriage problems increase manipulation opportunities

Weights in stable marriage problems increase manipulation opportunities Weights in stable marriage problems increase manipulation opportunities Maria Silvia Pini 1, Francesca Rossi 1, Kristen Brent Venable 1, Toby Walsh 2 1 : Department of Pure and Applied Mathematics, University

More information

Lecture 5: The Principle of Deferred Decisions. Chernoff Bounds

Lecture 5: The Principle of Deferred Decisions. Chernoff Bounds Randomized Algorithms Lecture 5: The Principle of Deferred Decisions. Chernoff Bounds Sotiris Nikoletseas Associate Professor CEID - ETY Course 2013-2014 Sotiris Nikoletseas, Associate Professor Randomized

More information

Matching Residents to Hospitals

Matching Residents to Hospitals Midterm Review Matching Residents to Hospitals Goal. Given a set of preferences among hospitals and medical school students, design a self-reinforcing admissions process. Unstable pair: applicant x and

More information

A (ln 4)-Approximation Algorithm for Maximum Stable Matching with One-Sided Ties and Incomplete Lists

A (ln 4)-Approximation Algorithm for Maximum Stable Matching with One-Sided Ties and Incomplete Lists A ln 4)-Approximation Algorithm for Maximum Stable Matching with One-Sided Ties and Incomplete Lists Chi-Kit Lam C. Gregory Plaxton April 2018 Abstract We study the problem of finding large weakly stable

More information

Omega notation. Transitivity etc.

Omega notation. Transitivity etc. Omega notation Big-Omega: Lecture 2, Sept. 25, 2014 f () n (()) g n const cn, s.t. n n : cg() n f () n Small-omega: 0 0 0 f () n (()) g n const c, n s.t. n n : cg() n f () n 0 0 0 Intuition (works most

More information

Matching Theory and the Allocation of Kidney Transplantations

Matching Theory and the Allocation of Kidney Transplantations University of Utrecht Bachelor Thesis Matching Theory and the Allocation of Kidney Transplantations Kim de Bakker Supervised by Dr. M. Ruijgrok 14 June 2016 Introduction Matching Theory has been around

More information

The Man-Exchange Stable Marriage Problem

The Man-Exchange Stable Marriage Problem The Man-Exchange Stable Marriage Problem Robert W. Irving Department of Computing Science, University of Glasgow, Glasgow G12 8QQ, UK. Email: {rwi}@dcs.gla.ac.uk. Abstract. We study a variant of the classical

More information

Approximation and Randomized Algorithms (ARA) Lecture 1, September 3, 2012

Approximation and Randomized Algorithms (ARA) Lecture 1, September 3, 2012 Approximation and Randomized Algorithms (ARA) Lecture 1, September 3, 2012 Practicalities Code: 456314.0 intermediate and optional course Previous knowledge 456305.0 Datastrukturer II (Algoritmer) Period

More information

What do you do when you can t use money to solve your problems?

What do you do when you can t use money to solve your problems? Markets without money What do you do when you can t use money to solve your problems? Matching: heterosexual men and women marrying in a small town, students matching to universities, workers to jobs where

More information

Breadth-First Search of Graphs

Breadth-First Search of Graphs Breadth-First Search of Graphs Analysis of Algorithms Prepared by John Reif, Ph.D. Distinguished Professor of Computer Science Duke University Applications of Breadth-First Search of Graphs a) Single Source

More information

Agenda. Soviet Rail Network, We ve done Greedy Method Divide and Conquer Dynamic Programming

Agenda. Soviet Rail Network, We ve done Greedy Method Divide and Conquer Dynamic Programming Agenda We ve done Greedy Method Divide and Conquer Dynamic Programming Now Flow Networks, Max-flow Min-cut and Applications c Hung Q. Ngo (SUNY at Buffalo) CSE 531 Algorithm Analysis and Design 1 / 52

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 2 Analysis of Algorithms Stable matching problem Asymptotic growth Adam Smith Stable Matching Problem Unstable pair: man m and woman w are unstable if m prefers w

More information

Game Theory: Lecture #5

Game Theory: Lecture #5 Game Theory: Lecture #5 Outline: Stable Matchings The Gale-Shapley Algorithm Optimality Uniqueness Stable Matchings Example: The Roommate Problem Potential Roommates: {A, B, C, D} Goal: Divide into two

More information

An Efficient Algorithm for Batch Stability Testing

An Efficient Algorithm for Batch Stability Testing n fficient lgorithm for atch Stability Testing John abney School of omputing lemson University jdabney@cs.clemson.edu rian. ean School of omputing lemson University bcdean@cs.clemson.edu pril 25, 2009

More information

Stable Matching Existence, Computation, Convergence Correlated Preferences. Stable Matching. Algorithmic Game Theory.

Stable Matching Existence, Computation, Convergence Correlated Preferences. Stable Matching. Algorithmic Game Theory. Existence, Computation, Convergence Correlated Preferences Existence, Computation, Convergence Correlated Preferences Stable Marriage Set of Women Y Set of Men X Existence, Computation, Convergence Correlated

More information

Cheating to Get Better Roommates in a Random Stable Matching

Cheating to Get Better Roommates in a Random Stable Matching Cheating to Get Better Roommates in a Random Stable Matching Chien-Chung Huang Technical Report 2006-582 Dartmouth College Sudikoff Lab 6211 for Computer Science Hanover, NH 03755, USA villars@cs.dartmouth.edu

More information

SEQUENTIAL ENTRY IN ONE-TO-ONE MATCHING MARKETS

SEQUENTIAL ENTRY IN ONE-TO-ONE MATCHING MARKETS REVISTA DE LA UNIÓN MATEMÁTICA ARGENTINA Vol. 54, No. 2, 2013, Pages 1 14 Published online: December 21, 2013 SEQUENTIAL ENTRY IN ONE-TO-ONE MATCHING MARKETS BEATRIZ MILLÁN Abstract. We study in one-to-one

More information

Advanced Algorithms. Lecture Notes for April 5, 2016 Dynamic programming, continued (HMMs); Iterative improvement Bernard Moret

Advanced Algorithms. Lecture Notes for April 5, 2016 Dynamic programming, continued (HMMs); Iterative improvement Bernard Moret Advanced Algorithms Lecture Notes for April 5, 2016 Dynamic programming, continued (HMMs); Iterative improvement Bernard Moret Dynamic Programming (continued) Finite Markov models A finite Markov model

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LECTURE 7 Network Flow Application: Bipartite Matching Adam Smith 0//008 A. Smith; based on slides by S. Raskhodnikova and K. Wayne Recently: Ford-Fulkerson Find max s-t flow

More information

1 Definitions and Things You Know

1 Definitions and Things You Know We will discuss an algorithm for finding stable matchings (not the one you re probably familiar with). The Instability Chaining Algorithm is the most similar algorithm in the literature to the one actually

More information

Bipartite Matchings. Andreas Klappenecker

Bipartite Matchings. Andreas Klappenecker Bipartite Matchings Andreas Klappenecker Matching Number m(g) = number of edges in a maximally large matching. Why is m(g) < 4? m(g) = W iff A

More information

Socially stable matchings in the Hospitals/Residents problem

Socially stable matchings in the Hospitals/Residents problem Socially stable matchings in the Hospitals/Residents problem Georgios Askalidis 1, Nicole Immorlica 1,2, Augustine Kwanashie 3, David F. Manlove 3 and Emmanouil Pountourakis 1 1 Dept. of Electrical Engineering

More information

Popularity at minimum cost

Popularity at minimum cost J Comb Optim (2014) 27:574 596 DOI 10.1007/s10878-012-9537-0 Popularity at minimum cost Telikepalli Kavitha Meghana Nasre Prajakta Nimbhorkar Published online: 21 August 2012 Springer Science+Business

More information

Stable matching. Carlos Hurtado. July 5th, Department of Economics University of Illinois at Urbana-Champaign

Stable matching. Carlos Hurtado. July 5th, Department of Economics University of Illinois at Urbana-Champaign Stable matching Carlos Hurtado Department of Economics University of Illinois at Urbana-Champaign hrtdmrt2@illinois.edu July 5th, 2017 C. Hurtado (UIUC - Economics) Game Theory On the Agenda 1 Introduction

More information

Stable Matching Problems with Exchange Restrictions

Stable Matching Problems with Exchange Restrictions Stable Matching Problems with Exchange Restrictions Robert W. Irving Department of Computing Science, University of Glasgow, Glasgow G12 8QQ, UK. email: rwi@dcs.gla.ac.uk telephone: 44-141-330-4478 fax:

More information

Deposited on: 30 September 2010

Deposited on: 30 September 2010 Biro, P., Fleiner, T., Irving, R.W. and Manlove, D.F. (2010) The College Admissions problem with lower and common quotas. Theoretical Computer Science, 411 (34-36). pp. 3136-3153. ISSN 0304-3975 http://eprints.gla.ac.uk/38576/

More information

Faster Algorithms For Stable Allocation Problems

Faster Algorithms For Stable Allocation Problems Faster lgorithms For Stable llocation Problems rian. ean School of omputing lemson University bcdean@cs.clemson.edu Siddharth Munshi School of omputing lemson University smunshi@cs.clemson.edu May 17,

More information

The Generalized Stable Allocation Problem

The Generalized Stable Allocation Problem The Generalized Stable Allocation Problem Brian C. Dean and Namrata Swar School of Computing, Clemson University Clemson, SC, USA. {bcdean,nswar}@cs.clemson.edu Abstract. We introduce and study the generalized

More information

COOPERATIVE GAME THEORY: CORE AND SHAPLEY VALUE

COOPERATIVE GAME THEORY: CORE AND SHAPLEY VALUE 1 / 54 COOPERATIVE GAME THEORY: CORE AND SHAPLEY VALUE Heinrich H. Nax hnax@ethz.ch & Bary S. R. Pradelski bpradelski@ethz.ch February 26, 2018: Lecture 2 2 / 54 What you did last week... There appear

More information

Two-Sided Matching. Terence Johnson. December 1, University of Notre Dame. Terence Johnson (ND) Two-Sided Matching December 1, / 47

Two-Sided Matching. Terence Johnson. December 1, University of Notre Dame. Terence Johnson (ND) Two-Sided Matching December 1, / 47 Two-Sided Matching Terence Johnson University of Notre Dame December 1, 2017 Terence Johnson (ND) Two-Sided Matching December 1, 2017 1 / 47 Markets without money What do you do when you can t use money

More information

Algorithms. [Knuth, TAOCP] An algorithm is a finite, definite, effective procedure, with some input and some output.

Algorithms. [Knuth, TAOCP] An algorithm is a finite, definite, effective procedure, with some input and some output. Algorithms Algorithm. [webster.com] A procedure for solving a mathematical problem (as of finding the greatest common divisor) in a finite number of steps that frequently involves repetition of an operation.

More information

Applying Predicate Detection to the Constrained Optimization Problems

Applying Predicate Detection to the Constrained Optimization Problems Applying Predicate Detection to the Constrained Optimization Problems Vijay K. Garg, The University of Texas at Austin, Department of Electrical and Computer Engineering, Austin, TX 78712, USA arxiv:1812.10431v1

More information

APPROXIMATION ALGORITHMS FOR THE STABLE MATCHING PROBLEM

APPROXIMATION ALGORITHMS FOR THE STABLE MATCHING PROBLEM APPROXIMATION ALGORITHMS FOR THE STABLE MATCHING PROBLEM by András Radnai Advisor: Zoltán Király Department of Computer Science Eötvös Loránd University Contents 1 Introduction 3 1.1 Notions and concepts..............................

More information

Two-sided Matching Theory

Two-sided Matching Theory Treball nal de grau GRAU DE MATEMÀTIQUES Facultat de Matemàtiques Universitat de Barcelona Two-sided Matching Theory Autor: Helena Fàbregas Vàzquez Director: Dra. Marina Núnez Oliva Realitzat a: Departament

More information

Stable Matching Beyond Bipartite Graphs

Stable Matching Beyond Bipartite Graphs Stable Matching Beyond Bipartite Graphs Jie Wu Department of Computer and Information Sciences Temple University, USA jiewu@temple.edu Abstract Binary matching in bipartite graphs and its extensions have

More information

8.5 Sequencing Problems

8.5 Sequencing Problems 8.5 Sequencing Problems Basic genres. Packing problems: SET-PACKING, INDEPENDENT SET. Covering problems: SET-COVER, VERTEX-COVER. Constraint satisfaction problems: SAT, 3-SAT. Sequencing problems: HAMILTONIAN-CYCLE,

More information

Soviet Rail Network, 1955

Soviet Rail Network, 1955 Ch7. Network Flow Soviet Rail Network, 955 Reference: On the history of the transportation and maximum flow problems. Alexander Schrijver in Math Programming, 9: 3, 2002. 2 Maximum Flow and Minimum Cut

More information

PROBLEMS OF MARRIAGE Eugene Mukhin

PROBLEMS OF MARRIAGE Eugene Mukhin PROBLEMS OF MARRIAGE Eugene Mukhin 1. The best strategy to find the best spouse. A person A is looking for a spouse, so A starts dating. After A dates the person B, A decides whether s/he wants to marry

More information

CSC 373: Algorithm Design and Analysis Lecture 12

CSC 373: Algorithm Design and Analysis Lecture 12 CSC 373: Algorithm Design and Analysis Lecture 12 Allan Borodin February 4, 2013 1 / 16 Lecture 12: Announcements and Outline Announcements Term test 1 in tutorials. Need to use only two rooms due to sickness

More information

1 Computational Problems

1 Computational Problems Stanford University CS254: Computational Complexity Handout 2 Luca Trevisan March 31, 2010 Last revised 4/29/2010 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation

More information

7.5 Bipartite Matching

7.5 Bipartite Matching 7. Bipartite Matching Matching Matching. Input: undirected graph G = (V, E). M E is a matching if each node appears in at most edge in M. Max matching: find a max cardinality matching. Bipartite Matching

More information

Matching. Terence Johnson. April 17, University of Notre Dame. Terence Johnson (ND) Matching April 17, / 41

Matching. Terence Johnson. April 17, University of Notre Dame. Terence Johnson (ND) Matching April 17, / 41 Matching Terence Johnson University of Notre Dame April 17, 2018 Terence Johnson (ND) Matching April 17, 2018 1 / 41 Markets without money What do you do when you can t use money to solve your problems?

More information

Glasgow eprints Service

Glasgow eprints Service Halldorsson, M. and Irving, R.W. and Iwama, K. and Manlove, D. F. and Miyazaki, S. and Morita, Y. and Scott, S. (2003) Approximability results for stable marriage problems with ties. Theoretical Computer

More information

Algorithms and Theory of Computation. Lecture 11: Network Flow

Algorithms and Theory of Computation. Lecture 11: Network Flow Algorithms and Theory of Computation Lecture 11: Network Flow Xiaohui Bei MAS 714 September 18, 2018 Nanyang Technological University MAS 714 September 18, 2018 1 / 26 Flow Network A flow network is a

More information

Two-Sided Matching. Terence Johnson. September 1, University of Notre Dame. Terence Johnson (ND) Two-Sided Matching September 1, / 37

Two-Sided Matching. Terence Johnson. September 1, University of Notre Dame. Terence Johnson (ND) Two-Sided Matching September 1, / 37 Two-Sided Matching Terence Johnson University of Notre Dame September 1, 2011 Terence Johnson (ND) Two-Sided Matching September 1, 2011 1 / 37 One-to-One Matching: Gale-Shapley (1962) There are two finite

More information

Combinatorial Optimization

Combinatorial Optimization Combinatorial Optimization 2017-2018 1 Maximum matching on bipartite graphs Given a graph G = (V, E), find a maximum cardinal matching. 1.1 Direct algorithms Theorem 1.1 (Petersen, 1891) A matching M is

More information

Problem set 1. (c) Is the Ford-Fulkerson algorithm guaranteed to produce an acyclic maximum flow?

Problem set 1. (c) Is the Ford-Fulkerson algorithm guaranteed to produce an acyclic maximum flow? CS261, Winter 2017. Instructor: Ashish Goel. Problem set 1 Electronic submission to Gradescope due 11:59pm Thursday 2/2. Form a group of 2-3 students that is, submit one homework with all of your names.

More information

Popular Matchings with Multiple Partners

Popular Matchings with Multiple Partners Popular Matchings with Multiple Partners Florian Brandl Technical University of Munich, Germany brandlfl@in.tum.de Telikepalli Kavitha Tata Institute of Fundamental Research, India kavitha@tcs.tifr.res.in

More information

Algorithms for Pareto Stable Assignment

Algorithms for Pareto Stable Assignment Algorithms for Pareto Stable Assignment Ning Chen and Arpita Ghosh Abstract Motivated by online matching marketplaces, we study stability in a many-to-many market with ties and incomplete preference lists.

More information

Notes for Lecture Notes 2

Notes for Lecture Notes 2 Stanford University CS254: Computational Complexity Notes 2 Luca Trevisan January 11, 2012 Notes for Lecture Notes 2 In this lecture we define NP, we state the P versus NP problem, we prove that its formulation

More information

Maximum flow problem

Maximum flow problem Maximum flow problem 7000 Network flows Network Directed graph G = (V, E) Source node s V, sink node t V Edge capacities: cap : E R 0 Flow: f : E R 0 satisfying 1. Flow conservation constraints e:target(e)=v

More information

arxiv: v2 [cs.gt] 25 Jul 2014

arxiv: v2 [cs.gt] 25 Jul 2014 Stable marriage with general preferences Linda Farczadi, Konstantinos Georgiou, Jochen Könemann Dept. of Combinatorics and Optimization, University of Waterloo, Waterloo, Canada {lfarczadi,k2georgi,jochen}@uwaterloo.ca

More information

Running Time. Assumption. All capacities are integers between 1 and C.

Running Time. Assumption. All capacities are integers between 1 and C. Running Time Assumption. All capacities are integers between and. Invariant. Every flow value f(e) and every residual capacities c f (e) remains an integer throughout the algorithm. Theorem. The algorithm

More information

1.1 First Problem: Stable Matching. Six medical students and four hospitals. Student Preferences. s6 h3 h1 h4 h2. Stable Matching Problem

1.1 First Problem: Stable Matching. Six medical students and four hospitals. Student Preferences. s6 h3 h1 h4 h2. Stable Matching Problem //0 hapter Introduction: Some Representative Problems Slides by Kevin ayne. opyright 00 Pearson-ddison esley. ll rights reserved.. First Problem: Stable Matching Six medical students and four hospitals

More information

Algorithm Design and Analysis

Algorithm Design and Analysis Algorithm Design and Analysis LETURE 28 Network Flow hoosing good augmenting paths apacity scaling algorithm A. Smith /4/2008 A. Smith; based on slides by K. Wayne and S. Raskhodnikova Pre-break: Ford-Fulkerson

More information

Improving Man-Optimal Stable Matchings by Minimum Change of Preference Lists

Improving Man-Optimal Stable Matchings by Minimum Change of Preference Lists Algorithms 2013, 6, 371-382; doi:10.3390/a6020371 Article OPEN ACCESS algorithms ISSN 1999-4893 www.mdpi.com/journal/algorithms Improving Man-Optimal Stable Matchings by Minimum Change of Preference Lists

More information

Chapter 7. Network Flow. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Chapter 7. Network Flow. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. Chapter 7 Network Flow Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 7.5 Bipartite Matching Matching Matching. Input: undirected graph G = (V, E). M E is a matching

More information

CS 138b Computer Algorithm Homework #14. Ling Li, February 23, Construct the level graph

CS 138b Computer Algorithm Homework #14. Ling Li, February 23, Construct the level graph 14.1 Construct the level graph Let s modify BFS slightly to construct the level graph L G = (V, E ) of G = (V, E, c) out of a source s V. We will use a queue Q and an array l containing levels of vertices.

More information

CS711008Z Algorithm Design and Analysis

CS711008Z Algorithm Design and Analysis CS711008Z Algorithm Design and Analysis Lecture 1 Introduction and some representative problems 1 Dongbo Bu Institute of Computing Technology Chinese Academy of Sciences, Beijing, China 1 The slides are

More information

directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time

directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time Network Flow 1 The Maximum-Flow Problem directed weighted graphs as flow networks the Ford-Fulkerson algorithm termination and running time 2 Maximum Flows and Minimum Cuts flows and cuts max flow equals

More information

Maintaining Near-Popular Matchings

Maintaining Near-Popular Matchings Maintaining Near-Popular Matchings Sayan Bhattacharya 1, Martin Hoefer 2, Chien-Chung Huang 3, Telikepalli Kavitha 4, and Lisa Wagner 5 1 Institute of Mathematical Sciences, Chennai, India bsayan@imsc.res.in

More information

Glasgow eprints Service

Glasgow eprints Service Gent, I. P. and Irving, R. W. and Manlove, D. F. and Prosser, P. and Smith, B. M. (2001) A constraint programming approach to the stable marriage problem. In, Walsh, T., Eds. Proceedings of CP '01: the

More information

A General Two-Sided Matching Market with Discrete Concave Utility Functions

A General Two-Sided Matching Market with Discrete Concave Utility Functions RIMS Preprint No. 1401, Kyoto University A General Two-Sided Matching Market with Discrete Concave Utility Functions Satoru Fujishige and Akihisa Tamura (February, 2003; Revised August 2004) Abstract In

More information

Max Flow: Algorithms and Applications

Max Flow: Algorithms and Applications Max Flow: Algorithms and Applications Outline for today Quick review of the Max Flow problem Applications of Max Flow The Ford-Fulkerson (FF) algorithm for Max Flow Analysis of FF, and the Max Flow Min

More information

What Matchings Can be Stable? Refutability in Matching Theory

What Matchings Can be Stable? Refutability in Matching Theory allis/thomson Conference What Matchings Can be Stable? Refutability in Matching Theory Federico Echenique California Institute of Technology April 21-22, 2006 Motivation Wallis/Thomson Conference Standard

More information

Two Algorithms for the Student-Project Allocation Problem

Two Algorithms for the Student-Project Allocation Problem Two Algorithms for the Student-Project Allocation Problem David J. Abraham 1, Robert W. Irving 2, and David F. Manlove 2 1 Computer Science Department, Carnegie-Mellon University, 5000 Forbes Ave, Pittsburgh

More information

Weights in Stable Marriage Problems Increase Manipulation Opportunities

Weights in Stable Marriage Problems Increase Manipulation Opportunities Weights in Stable Marriage Problems Increase Manipulation Opportunities Maria Silvia Pini mpini@math.unipd.it Francesca Rossi frossi@math.unipd.it Toby Walsh NICTA and UNSW Sydney, Australia toby.walsh@nicta.com.au

More information

Matching Theory. Mihai Manea. Based on slides by Fuhito Kojima. MIT

Matching Theory. Mihai Manea. Based on slides by Fuhito Kojima. MIT Matching Theory Mihai Manea MIT Based on slides by Fuhito Kojima. Market Design Traditional economics focuses mostly on decentralized markets. Recently, economists are helping to design economic institutions

More information

Flows and Cuts. 1 Concepts. CS 787: Advanced Algorithms. Instructor: Dieter van Melkebeek

Flows and Cuts. 1 Concepts. CS 787: Advanced Algorithms. Instructor: Dieter van Melkebeek CS 787: Advanced Algorithms Flows and Cuts Instructor: Dieter van Melkebeek This lecture covers the construction of optimal flows and cuts in networks, their relationship, and some applications. It paves

More information

Competition and Resource Sensitivity in Marriage and Roommate Markets

Competition and Resource Sensitivity in Marriage and Roommate Markets Competition and Resource Sensitivity in Marriage and Roommate Markets Bettina Klaus This Version: April 2010 Previous Versions: November 2007 and December 2008 Abstract We consider one-to-one matching

More information