Stable Matching Problem

  • Let be two sets.
    • A set is called a matching if no two pairs in have the same first or second element.
      • A matching is perfect if each element of and each element of appears in exactly one pair in .
      • A preference list for is a list of elements of in the order of preference. (similarly for )
      • An unstable pair is a pair such that prefers to his current partner, and prefers to her current partner.
      • A matching is stable if (i) it is perfect, and (ii) there is no instability with respect to .

Stable Matching Problem

Does there exist a stable matching for every set of preference lists? Given a set of preference lists, can we efficiently construct a stable matching if there is one?

Example 1

given , and the following preference lists:

  • :
  • :
  • :
  • : there is a unique stable matching: .

Example 2

given , and the following preference lists:

  • :
  • :
  • :
  • : there are two stable matchings: and .

Gale-Shapley Algorithm

  • Gale-Shapley Algorithm is guaranteed to terminate and produce a stable matching for any set of preference lists.
Initially all m ∈ M and w ∈ W are free
while ∃ m ∈ M who is free and hasn't proposed to every w ∈ W
	Choose such a man m
	Let w be the highest-ranked woman in m's preference list to whom m has not yet proposed
	if w is free
		(m, w) become engaged
	else some pair (m', w) already exists
		if w prefers m to m'
			(m, w) become engaged
			m' becomes free
		else
			(m', w) remain engaged
Return the set of engaged pairs
  • (1.1) remains engaged from the point at which she receives her first proposal; and the sequence of partners to which she is engaged gets better and better for her.
  • (1.2) The sequence of women to whom proposes gets worse and worse for him.
  • (1.3) G-S Algorithm terminates after at most iterations of the while loop.
  • (1.4) If is free at some point in the execution of the algorithm, then there is a woman to whom has not yet proposed.
  • (1.5) The set of pairs returned at termination is a perfect matching.
  • (1.6) Consider an execution of the algorithm that returns a set of paris . Then is a stable matching.
  • (1.7) Every execution (i.e., every choice of the order men propose) of the G-S Algorithm results in the set
    • is a valid partner of if there is a stable matching that contains the pair .
    • is the best valid partner of (denoted as ) if is a valid partner of and no woman whom ranks higher than is a valid partner of his.
  • (1.8) In the stable matching , each woman is paired with her worst valid partner.
    • A man is a valid partner of a woman if there a stable matching that contains the pair .
    • A man is the worst valid partner of a woman if is a valid partner of and, and no man whom ranks lower than is a valid partner of hers.

Interval Scheduling

  • Given a set of requests
  • Each request is specified by a start time and a finish time , where .
  • Two requests and are compatible if their intervals do not overlap, i.e., or .
  • A set of requests is compatible if every pair of requests in is compatible.
  • The interval scheduling problem is to find a maximum-cardinality compatible set of requests.

Weighted Interval Scheduling

  • As in the interval scheduling problem, we are given a set of requests, each specified by a start time and a finish time .
  • In addition, each request has an associated value (or weight) .
  • The goal is to find a compatible subset of intervals of maximum total value.
  • The case in which is simply the interval scheduling problem.

Bipartite Matching Problem

Independent Set Problem

  • The independent set problem is to find an maximal independent set in a given graph.
  • The Interval Scheduling Problem is a special case of the independent set problem. (The requests can be represented as a graph, where each request is a vertex, and two requests are connected by an edge if they are not compatible. The interval scheduling problem is equivalent to finding a maximum independent set in this graph)
  • The Bipartite Matching Problem is a special case of the independent set problem. (Given a bipartite graph ,todo )
  • No efficient algorithm is known for the general independent set problem, and it is conjectured that no such algorithm exists.
  • The independent set problem is NP-complete.

Competitive Facility Location

  • The geographic region is divided into zones .
  • Each zone has a value , which is the revenue obtained by either of the compenies if it opens a franchise there.
  • Certain pairs of zones are adjacent, and local zoning laws prevent two adjacent zones from each containing a franchise, regardless of which company owns them.
  • We model this problem as a graph , where (zones) and (adjacent zones).
  • Our game consists of two players, and , alternately selecting nodes in , with going first.
  • todo