UBE 602 - PowerPoint PPT Presentation

1 / 70
About This Presentation
Title:

UBE 602

Description:

1. UBE 602. Algorithm Complexity Theory. Instructor: Kayhan Erciyes. Lectures: W 13:30-16:15 ... Woman-pessimal assignment. Each woman receives worst valid ... – PowerPoint PPT presentation

Number of Views:86
Avg rating:3.0/5.0
Slides: 71
Provided by: kevin589
Category:
Tags: ube | pessimal

less

Transcript and Presenter's Notes

Title: UBE 602


1
UBE 602
  • Algorithm Complexity Theory
  • Instructor Kayhan Erciyes
  • Lectures W 1330-1615
  • Office Hours W 1630-17.30
  • URL http//www.ube.ege.edu.tr/erciyes/ube602
  • Textbook
  • Algorithm Design by Jon Kleinberg and Eva Tardos.
    Addison Wesley, 2006.
  • Reference Michael Sipser, Intro. to the Theory
    of Computation, 2nd ed., Thompson Course
    Technology, 2005. Errata.

2
Topics
  • Part I Design and Anaysis of Algorithms ( app.
    7 weeks)
  • - Introduction Some Representative Problems
    Lec.1
  • - Basics of Algorithms Analysis Computational
    Tractibility, Asymptotic Order of Growth Lec. 2,
    Lec.3
  • - Graphs Graph Connectivity and Graph
    Traversal, Biparttiteness, Topological
    Ordering Lec. 4-Lec.6
  • Greedy Algorithms Interval Scheduling, MST,
    Kruskals Algorithm,
  • Clustering Lec. 7-Lec.9
  • - Divide and Conquer Algorithms The Mergesort
    Algorithm, Recurrences, Counting Inversions,
    Finding the Closest Pair of Points, Integer
    Multiplication Lec. 10-Lec.12

3
Topics
  • - Dynamic Programming Weighted Interval
    Scheduling A Recursive Procedure, RNA Secondary
    Structure Dynamic Programming Over Intervals,
    Sequence Alignment, Shortest Paths and Distance
    Vector Protocols Lec. 13- Lec.18
  • - Network Flow Ford-Fulkerson Algorithm,
    Maximum Flows and Minimum Cuts in a Network, The
    Bipartite Matching Problem (Lec. 19-Lec.21)

4
Topics
  • Part II NP Completeness (app. 7 weeks)
  • NP and Computational Intractability
  • PSPACE
  • Extending the Limits of Tractability Finding
    Small Vertex Covers, Solving NP-hard Problem on
    Trees, Coloring a Set of Circular Arcs,
    Constructing a Tree Decomposition of a Graph
    (Lec. 31-33)
  • Approximation Algorithms A Load Balancing
    Problem, The Center Selection Problem, Set Cover,
    the Pricing Method Vertex Cover (Lec. 34-39)
  • Randomized Algorithms Finding the Global
    Minimum Cut, Random Variables and their
    Expectations, Randomized Divide-and-Conquer
    Median-Finding and Quicksort, Hashing A
    Randomized Implementation of Dictionaries,
    Finding the Closest Pair of Points A Randomized
    Approach, Randomized Caching, Load Balancing,
    Packet Routing (Lec. 40-Lec.42)

5
Grading
  • Programming and Written Assignments 45
  • Mid-term Exam 15
  • Presentation 15 (weeks 8-11)
  • Final Exam 25

6
1.1 A First Problem Stable Matching
7
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 hospital y are
    unstable if
  • x prefers y to its assigned hospital.
  • y prefers x to one of its admitted students.
  • Stable assignment. Assignment with no unstable
    pairs.
  • Natural and desirable condition.
  • Individual self-interest will prevent any
    applicant/hospital deal from being made.

8
Stable Matching Problem
  • Goal. Given n men and n women, find a "suitable"
    matching.
  • Participants rate members of opposite sex.
  • Each man lists women in order of preference from
    best to worst.
  • Each woman lists men in order of preference from
    best to worst.

favorite
least favorite
favorite
least favorite
1st
2nd
3rd
1st
2nd
3rd
Xavier
Amy
Clare
Bertha
Amy
Yancey
Zeus
Xavier
Yancey
Bertha
Clare
Amy
Bertha
Xavier
Zeus
Yancey
Zeus
Amy
Clare
Bertha
Clare
Xavier
Zeus
Yancey
Mens Preference Profile
Womens Preference Profile
9
Stable Matching Problem
  • Perfect matching everyone is matched
    monogamously.
  • Each man gets exactly one woman.
  • Each woman gets exactly one man.
  • Stability no incentive for some pair of
    participants to undermine assignment by joint
    action.
  • In matching M, an unmatched pair m-w is unstable
    if man m and woman w prefer each other to current
    partners.
  • Unstable pair m-w could each improve by eloping.
  • Stable matching perfect matching with no
    unstable pairs.
  • Stable matching problem. Given the preference
    lists of n men and n women, find a stable
    matching if one exists.

10
Stable Matching Problem
  • Q. Is assignment X-C, Y-B, Z-A stable?

least favorite
favorite
least favorite
favorite
1st
2nd
3rd
1st
2nd
3rd
Xavier
Amy
Clare
Bertha
Amy
Yancey
Zeus
Xavier
Yancey
Bertha
Clare
Amy
Bertha
Xavier
Zeus
Yancey
Zeus
Amy
Clare
Bertha
Clare
Xavier
Zeus
Yancey
Mens Preference Profile
Womens Preference Profile
11
Stable Matching Problem
  • Q. Is assignment X-C, Y-B, Z-A stable?
  • A. No. Bertha and Xavier will hook up.

least favorite
favorite
least favorite
favorite
1st
2nd
3rd
1st
2nd
3rd
Xavier
Amy
Clare
Bertha
Amy
Yancey
Zeus
Xavier
Yancey
Bertha
Clare
Amy
Bertha
Xavier
Zeus
Yancey
Zeus
Amy
Clare
Bertha
Clare
Xavier
Zeus
Yancey
Mens Preference Profile
Womens Preference Profile
12
Stable Matching Problem
  • Q. Is assignment X-A, Y-B, Z-C stable?
  • A. Yes.

least favorite
favorite
least favorite
favorite
1st
2nd
3rd
1st
2nd
3rd
Xavier
Amy
Clare
Bertha
Amy
Yancey
Zeus
Xavier
Yancey
Bertha
Clare
Amy
Bertha
Xavier
Zeus
Yancey
Zeus
Amy
Clare
Bertha
Clare
Xavier
Zeus
Yancey
Mens Preference Profile
Womens Preference Profile
13
Stable Roommate Problem
  • Q. Do stable matchings always exist?
  • A. Not obvious a priori.
  • Stable roommate problem.
  • 2n people each person ranks others from 1 to
    2n-1.
  • Assign roommate pairs so that no unstable pairs.
  • Observation. Stable matchings do not always
    exist for stable roommate problem.

is core of market nonempty?
1st
2nd
3rd
B
Adam
C
D
A-B, C-D ? B-C unstableA-C, B-D ? A-B
unstableA-D, B-C ? A-C unstable
Bob
A
D
C
A
Chris
B
D
Doofus
A
B
C
14
Propose-And-Reject Algorithm
  • Propose-and-reject algorithm. Gale-Shapley
    1962 Intuitive method that guarantees to find a
    stable matching.

Initialize each person to be free. while (some
man is free and hasn't proposed to every woman)
Choose such a man m w 1st woman on
m's list to whom m has not yet proposed if (w
is free) assign m and w to be engaged
else if (w prefers m to her fiancé m')
assign m and w to be engaged, and m' to be free
else w rejects m
15
Proof of Correctness Termination
  • Observation 1. Men propose to women in
    decreasing order of preference.
  • Observation 2. Once a woman is matched, she
    never becomes unmatched she only "trades up."
  • Claim. Algorithm terminates after at most n2
    iterations of while loop.
  • Pf. Each time through the while loop a man
    proposes to a new woman. There are only n2
    possible proposals. ?

n(n-1) 1 proposals required
16
Proof of Correctness Perfection
  • Claim. All men and women get matched.
  • Pf. (by contradiction)
  • Suppose, for sake of contradiction, that Zeus is
    not matched upon termination of algorithm.
  • Then some woman, say Amy, is not matched upon
    termination.
  • By Observation 2, Amy was never proposed to.
  • But, Zeus proposes to everyone, since he ends up
    unmatched. ?

17
Proof of Correctness Stability
  • Claim. No unstable pairs.
  • Pf. (by contradiction)
  • Suppose A-Z is an unstable pair each prefers
    each other to partner in Gale-Shapley matching
    S.
  • Case 1 Z never proposed to A. ? Z prefers
    his GS partner to A. ? A-Z is stable.
  • Case 2 Z proposed to A. ? A rejected Z
    (right away or later) ? A prefers her GS
    partner to Z. ? A-Z is stable.
  • In either case A-Z is stable, a contradiction. ?

men propose in decreasingorder of preference
S
Amy-Yancey
Bertha-Zeus
. . .
women only trade up
18
Summary
  • Stable matching problem. Given n men and n
    women, and their preferences, find a stable
    matching if one exists.
  • Gale-Shapley algorithm. Guarantees to find a
    stable matching for any problem instance.
  • Q. How to implement GS algorithm efficiently?
  • Q. If there are multiple stable matchings,
    which one does GS find?

19
Efficient Implementation
  • Efficient implementation. We describe O(n2) time
    implementation.
  • Representing men and women.
  • Assume men are named 1, , n.
  • Assume women are named 1', , n'.
  • Engagements.
  • Maintain a list of free men, e.g., in a queue.
  • Maintain two arrays wifem, and husbandw.
  • set entry to 0 if unmatched
  • if m matched to w then wifemw and husbandwm
  • Men proposing.
  • For each man, maintain a list of women, ordered
    by preference.
  • Maintain an array countm that counts the number
    of proposals made by man m.

20
Efficient Implementation
  • Women rejecting/accepting.
  • Does woman w prefer man m to man m'?
  • For each woman, create inverse of preference list
    of men.
  • Constant time access for each query after O(n)
    preprocessing.

Amy prefers man 3 to 6since inverse3 lt
inverse6
for i 1 to n inverseprefi i
2
7
21
Understanding the Solution
  • Q. For a given problem instance, there may be
    several stable matchings. Do all executions of
    Gale-Shapley yield the same stable matching? If
    so, which one?
  • An instance with two stable matchings.
  • A-X, B-Y, C-Z.
  • A-Y, B-X, C-Z.

1st
2nd
3rd
1st
2nd
3rd
Xavier
A
B
C
Amy
Y
X
Z
Yancey
B
A
C
Bertha
X
Y
Z
Zeus
A
B
C
Clare
X
Y
Z
22
Understanding the Solution
  • Q. For a given problem instance, there may be
    several stable matchings. Do all executions of
    Gale-Shapley yield the same stable matching? If
    so, which one?
  • Def. Man m is a valid partner of woman w if
    there exists some stable matching in which they
    are matched.
  • Man-optimal assignment. Each man receives best
    valid partner.
  • Claim. All executions of GS yield man-optimal
    assignment, which is a stable matching!
  • No reason a priori to believe that man-optimal
    assignment is perfect, let alone stable.
  • Simultaneously best for each and every man.

23
Man Optimality
  • Claim. GS matching S is man-optimal.
  • Pf. (by contradiction)
  • Suppose some man is paired with someone other
    than best partner. Men propose in decreasing
    order of preference ? some man is rejected by
    valid partner.
  • Let Y be first such man, and let A be first
    validwoman that rejects him.
  • Let S be a stable matching where A and Y are
    matched.
  • When Y is rejected, A forms (or
    reaffirms)engagement with a man, say Z, whom she
    prefers to Y.
  • Let B be Z's partner in S.
  • Z not rejected by any valid partner at the point
    when Y is rejected by A. Thus, Z prefers A to B.
  • But A prefers Z to Y.
  • Thus A-Z is unstable in S. ?

S
Amy-Yancey
Bertha-Zeus
. . .
since this is first rejectionby a valid partner
24
Stable Matching Summary
  • Stable matching problem. Given preference
    profiles of n men and n women, find a stable
    matching.
  • Gale-Shapley algorithm. Finds a stable matching
    in O(n2) time.
  • Man-optimality. In version of GS where men
    propose, each man receives best valid partner.
  • Q. Does man-optimality come at the expense of
    the women?

no man and woman prefer to be witheach other
than assigned partner
w is a valid partner of m if there exist
somestable matching where m and w are paired
25
Woman Pessimality
  • Woman-pessimal assignment. Each woman receives
    worst valid partner.
  • Claim. GS finds woman-pessimal stable matching
    S.
  • Pf.
  • Suppose A-Z matched in S, but Z is not worst
    valid partner for A.
  • There exists stable matching S in which A is
    paired with a man, say Y, whom she likes less
    than Z.
  • Let B be Z's partner in S.
  • Z prefers A to B.
  • Thus, A-Z is an unstable in S. ?

S
Amy-Yancey
man-optimality
Bertha-Zeus
. . .
26
Extensions Matching Residents to Hospitals
  • Ex Men ? hospitals, Women ? med school
    residents.
  • Variant 1. Some participants declare others as
    unacceptable.
  • Variant 2. Unequal number of men and women.
  • Variant 3. Limited polygamy.
  • Def. Matching S unstable if there is a hospital
    h and resident r such that
  • h and r are acceptable to each other and
  • either r is unmatched, or r prefers h to her
    assigned hospital and
  • either h does not have all its places filled, or
    h prefers r to at least one of its assigned
    residents.

resident A unwilling towork in Cleveland
hospital X wants to hire 3 residents
27
Application Matching Residents to Hospitals
  • NRMP. (National Resident Matching Program)
  • Original use just after WWII.
  • Ides of March, 23,000 residents.
  • Rural hospital dilemma.
  • Certain hospitals (mainly in rural areas) were
    unpopular and declared unacceptable by many
    residents.
  • Rural hospitals were under-subscribed in NRMP
    matching.
  • How can we find stable matching that benefits
    "rural hospitals"?
  • Rural Hospital Theorem. Rural hospitals get
    exactly same residents in every stable matching!

predates computer usage
28
Lessons Learned
  • Powerful ideas learned in course.
  • Isolate underlying structure of problem.
  • Create useful and efficient algorithms.
  • Potentially deep social ramifications. legal
    disclaimer

29
1.2 Five Representative Problems
30
Interval Scheduling
  • Input. Set of jobs with start times and finish
    times.
  • Goal. Find maximum cardinality subset of
    mutually compatible jobs.

jobs don't overlap
a
b
c
d
e
f
g
h
Time
0
1
2
3
4
5
6
7
8
9
10
11
31
Weighted Interval Scheduling
  • Input. Set of jobs with start times, finish
    times, and weights.
  • Goal. Find maximum weight subset of mutually
    compatible jobs.

23
12
20
26
13
20
11
16
Time
0
1
2
3
4
5
6
7
8
9
10
11
32
Bipartite Matching
  • Input. Bipartite graph.
  • Goal. Find maximum cardinality matching.

1
A
2
B
C
3
D
4
5
E
33
Independent Set
  • Input. Graph.
  • Goal. Find maximum cardinality independent set.

subset of nodes such that no two joined by an
edge
2
1
5
4
3
7
6
34
Competitive Facility Location
  • Input. Graph with weight on each each node.
  • Game. Two competing players alternate in
    selecting nodes. Not allowed to select a node if
    any of its neighbors have been selected.
  • Goal. Select a maximum weight subset of nodes.

10
1
5
15
5
1
5
1
15
10
Second player can guarantee 20, but not 25.
35
Five Representative Problems
  • Variations on a theme independent set.
  • Interval scheduling n log n greedy algorithm.
  • Weighted interval scheduling n log n dynamic
    programming algorithm.
  • Bipartite matching nk max-flow based algorithm.
  • Independent set NP-complete.
  • Competitive facility location PSPACE-complete.

36
Extra Slides
37
Stable Matching Problem
  • Goal Given n men and n women, find a "suitable"
    matching.
  • Participants rate members of opposite sex.
  • Each man lists women in order of preference from
    best to worst.
  • Each woman lists men in order of preference from
    best to worst.

favorite
least favorite
Mens Preference List
38
Stable Matching Problem
  • Goal Given n men and n women, find a "suitable"
    matching.
  • Participants rate members of opposite sex.
  • Each man lists women in order of preference from
    best to worst.
  • Each woman lists men in order of preference from
    best to worst.

favorite
least favorite
Womens Preference List
39
Understanding the Solution
  • Claim. The man-optimal stable matching is weakly
    Pareto optimal.
  • Pf.
  • Let A be last woman in some execution of GS
    algorithm to receive a proposal.
  • No man is rejected by A since algorithm
    terminates when last woman receives first
    proposal.
  • No man matched to A will be strictly better off
    than in man-optimal stable matching. ?

No other perfect matching (stable or
unstable)where every man does strictly better
40
Deceit Machiavelli Meets Gale-Shapley
  • Q. Can there be an incentive to misrepresent
    your preference profile?
  • Assume you know mens propose-and-reject
    algorithm will be run.
  • Assume that you know the preference profiles of
    all other participants.
  • Fact. No, for any man yes, for some women. No
    mechanism can guarantee a stable matching and be
    cheatproof.

1st
2nd
3rd
X
Z
Amy
Y
Y
Z
Bertha
X
1st
2nd
3rd
X
Y
Clare
Z
Xavier
A
C
B
Womens True Preference Profile
Yancey
B
C
A
1st
2nd
3rd
A
Zeus
B
C
Z
X
Amy
Y
Mens Preference List
Y
Z
Bertha
X
X
Y
Clare
Z
Amy Lies
41
Lessons Learned
  • Powerful ideas learned in course.
  • Isolate underlying structure of problem.
  • Create useful and efficient algorithms.
  • Potentially deep social ramifications. legal
    disclaimer
  • Historically, men propose to women. Why not vice
    versa?
  • Men propose early and often.
  • Men be more honest.
  • Women ask out the guys.
  • Theory can be socially enriching and fun!
  • CS majors get the best partners!

42
Victor proposes to Bertha.
43
Bertha
Victor proposes to Bertha. - Bertha accepts
since previously unmatched.
Victor
44
Bertha
Wyatt proposes to Diane.
Victor
45
Bertha
Diane
Wyatt proposes to Diane. - Diane accepts
since previously unmatched.
Victor
Wyatt
46
Bertha
Diane
Xavier proposes to Bertha.
Victor
Wyatt
47
Bertha
Diane
Bertha
Xavier proposes to Bertha. - Bertha dumps
Victor and accepts Xavier.
Victor
Xavier
Wyatt
48
Bertha
Diane
Bertha
Victor proposes to Amy.
Xavier
Victor
Wyatt
49
Amy
Bertha
Diane
Bertha
Victor proposes to Amy. - Amy accepts since
previously unmatched.
Victor
Xavier
Victor
Wyatt
50
Amy
Bertha
Diane
Bertha
Yancey proposes to Amy.
Victor
Xavier
Victor
Wyatt
51
Amy
Bertha
Diane
Bertha
Amy
Yancey proposes to Amy. - Amy rejects since
she prefers Victor.
Victor
Yancey
Xavier
Victor
Wyatt
52
Amy
Bertha
Diane
Bertha
Amy
Yancey proposes to Diane.
Victor
Yancey
Xavier
Victor
Wyatt
53
Amy
Bertha
Diane
Bertha
Diane
Amy
Yancey proposes to Diane. - Diane dumps
Wyatt and accepts Yancey.
Victor
Yancey
Xavier
Victor
Wyatt
Yancey
54
Amy
Bertha
Diane
Bertha
Diane
Amy
Wyatt proposes to Bertha.
Victor
Yancey
Xavier
Victor
Yancey
Wyatt
55
Bertha
Amy
Diane
Bertha
Bertha
Amy
Diane
Wyatt proposes to Bertha. - Bertha rejects
since she prefers Xavier.
Victor
Yancey
Victor
Xavier
Wyatt
Wyatt
Yancey
56
Amy
Bertha
Diane
Bertha
Bertha
Diane
Amy
Wyatt proposes to Amy.
Victor
Yancey
Xavier
Victor
Wyatt
Yancey
Wyatt
57
Amy
Bertha
Diane
Bertha
Amy
Bertha
Diane
Amy
Wyatt proposes to Amy. - Amy rejects since
she prefers Victor.
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Yancey
Wyatt
58
Bertha
Amy
Diane
Bertha
Amy
Bertha
Amy
Diane
Wyatt proposes to Clare.
Victor
Yancey
Wyatt
Victor
Xavier
Wyatt
Wyatt
Yancey
59
Amy
Bertha
Clare
Diane
Bertha
Amy
Bertha
Diane
Amy
Wyatt proposes to Clare. - Clare accepts
since previously unmatched.
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Wyatt
Yancey
Wyatt
60
Amy
Bertha
Clare
Diane
Bertha
Amy
Bertha
Diane
Amy
Zeus proposes to Bertha.
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Wyatt
Yancey
Wyatt
61
Amy
Bertha
Clare
Diane
Bertha
Amy
Bertha
Diane
Amy
Bertha
Zeus proposes to Bertha. - Bertha rejects
since she prefers Xavier.
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Wyatt
Yancey
Wyatt
62
Amy
Bertha
Clare
Diane
Bertha
Amy
Bertha
Diane
Amy
Bertha
Zeus proposes to Diane.
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Wyatt
Yancey
Wyatt
63
Bertha
Amy
Diane
Bertha
Amy
Clare
Bertha
Amy
Diane
Bertha
Zeus proposes to Diane. - Diane rejects
Yancey and accepts Zeus.
Victor
Yancey
Wyatt
Victor
Xavier
Wyatt
Zeus
Wyatt
Wyatt
Yancey
64
Amy
Bertha
Clare
Diane
Bertha
Amy
Bertha
Amy
Diane
Bertha
Yancey proposes to Clare.
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Zeus
Wyatt
Wyatt
Yancey
65
Bertha
Amy
Diane
Bertha
Amy
Clare
Bertha
Amy
Diane
Clare
Bertha
Yancey proposes to Clare. - Clare rejects
since she prefers Wyatt.
Victor
Yancey
Wyatt
Victor
Xavier
Wyatt
Zeus
Wyatt
Yancey
Wyatt
Yancey
66
Amy
Bertha
Clare
Diane
Bertha
Amy
Bertha
Amy
Diane
Clare
Bertha
Yancey proposes to Bertha.
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Zeus
Wyatt
Yancey
Wyatt
Yancey
67
Bertha
Amy
Diane
Bertha
Amy
Clare
Bertha
Amy
Diane
Clare
Bertha
Bertha
Yancey proposes to Bertha. - Bertha rejects
since she prefers Xavier.
Victor
Yancey
Wyatt
Victor
Xavier
Wyatt
Zeus
Yancey
Wyatt
Yancey
Wyatt
Yancey
68
Amy
Bertha
Clare
Diane
Bertha
Amy
Bertha
Amy
Diane
Clare
Bertha
Bertha
Yancey proposes to Erika.
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Zeus
Yancey
Wyatt
Yancey
Wyatt
Yancey
69
Amy
Bertha
Clare
Diane
Bertha
Amy
Bertha
Erika
Amy
Diane
Clare
Bertha
Bertha
Yancey proposes to Erika. - Erika accepts
since previously unmatched.
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Zeus
Yancey
Wyatt
Yancey
Wyatt
Yancey
Yancey
70
Amy
Bertha
Clare
Diane
Bertha
Amy
Bertha
Erika
Amy
Diane
Clare
Bertha
Bertha
STOP - Everyone matched. - Stable
matching!
Victor
Yancey
Wyatt
Xavier
Victor
Wyatt
Zeus
Yancey
Wyatt
Yancey
Wyatt
Yancey
Yancey
Write a Comment
User Comments (0)
About PowerShow.com