algorithm design and analysis - penn state college of...

52
8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne Adam Smith Algorithm Design and Analysis LECTURE 1 Analysis of Algorithms Course information Why study algorithms? Stable matching problem

Upload: others

Post on 22-Jun-2020

0 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Adam Smith

Algorithm Design and Analysis

LECTURE 1 Analysis of Algorithms

• Course information

• Why study algorithms?

• Stable matching problem

Page 2: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Course information

1. Staff

2. Course website

3. Prerequisites

4. Lectures

5. Textbook

6. Syllabus

7. Exams

8. Homework

9. Grading policy

10. Collaboration policy

Page 3: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Algorithm Design and Analysis

Theoretical study of how to solve computational

problems

• sorting a list of numbers

• finding a shortest route on a map

• scheduling when to work on homework

• answering web search queries

(Generally: precisely defined set of inputs and,

for each input, acceptable outputs)

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Page 4: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Algorithms

• Definition: Finite set of unambiguous

instructions for solving a problem.

– An algorithm is correct if on all legitimate inputs, it

outputs the right answer in a finite amount of time

• Can be expressed as

– pseudocode

– text in a natural language (e.g. English)

– computer code

– pictures

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Page 5: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Data Structures

• Data structures are ways to store information

for which there are algorithms for performing

particular operations (retrieving/manipulating

information), e.g.

– linked lists

– hash tables

– heaps

– red-black trees

– skip lists

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Page 6: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Why study algorithms?

• Language for thinking about program behavior

– analyzing correctness and resource usage

– most computing research is algorithmic

• Standard set of algorithms and design techniques

• Feasibility (what can and cannot be done)

– halting problem, NP-completeness

• Successful companies (Google, Akamai, …)

• Computation is fundamental to understanding the world

– cells, brains, social networks, physical systems, …

• Exercise for your brain

• Fun! 8/25/10

A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Page 7: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Performance isn’t everything

• Typical goal: Find most space- and time-efficient

algorithm for given problem.

• What else is important?

– modularity

– correctness

– maintainability

– functionality

– robustness

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

– user-friendliness

– programmer time

– simplicity

– extensibility

– reliability

Page 8: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Course Objectives

Material

• Classical algorithms

• Analysis of algorithms

• Design techniques

Skills

• Algorithmic Thinking

• Problem-solving & mathematical ability

• Technical writing

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Page 9: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Prerequisite: CSE 465 or equiv.

Some of things you should have covered:

• Reading/writing Proofs (including induction, contradiction, …)

• Asymptotic notation (e.g. ``big-O'')

• Elementary data structures: lists, stacks, queues, sorted arrays

• Graphs and trees

– Depth- and breadth-first search, shortest paths, …

• Basic design paradigms:

– divide and conquer

– greedy algorithms

– dynamic programming

• Basic mathematical tools: arithmetic and geometric series,

counting permutations, vectors and matrices, etc

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Page 10: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Corequisite: 464/468

• Finite automata, Turing machines,

undecidability, complexity measures, “P”

nondeterminism and “NP”

• What we will need:

– abstractions of computation

– P / NP

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Page 11: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

A first problem:

Stable Matching

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K.

Wayne

Page 12: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

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, and

– y prefers x to one of its admitted students

• Stable assignment: no unstable pairs.

– Individual self-interest will prevent any applicant/hospital deal

from being made.

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Page 13: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

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.

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Zeus Amy Clare Bertha

Yancey Bertha Clare Amy

Xavier Amy Clare Bertha

1st 2nd 3rd

Men’s Preference Profile

favorite least favorite

Clare Xavier Zeus Yancey

Bertha Xavier Zeus Yancey

Amy Yancey Zeus Xavier

1st 2nd 3rd

Women’s Preference Profile

favorite least favorite

Page 14: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Stable Matching Problem

• Unstable pair: man m and woman w are unstable if

– m prefers w to his assigned match, and

– w prefers m to her assigned match

• Unstable pairs have an incentive to elope

• Stable matching: no unstable pairs.

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Zeus Amy Clare Bertha

Yancey Bertha Clare Amy

Xavier Amy Clare Bertha

1st 2nd 3rd

Men’s Preference Profile

favorite least favorite

Clare Xavier Zeus Yancey

Bertha Xavier Zeus Yancey

Amy Yancey Zeus Xavier

1st 2nd 3rd

Women’s Preference Profile

favorite least favorite

Page 15: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Stable Matching Problem

• Input: preference lists of n men and n women

• Goal: find a stable matching if one exists

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Zeus Amy Clare Bertha

Yancey Bertha Clare Amy

Xavier Amy Clare Bertha

1st 2nd 3rd

Men’s Preference Profile

favorite least favorite

Clare Xavier Zeus Yancey

Bertha Xavier Zeus Yancey

Amy Yancey Zeus Xavier

1st 2nd 3rd

Women’s Preference Profile

favorite least favorite

Page 16: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Stable Matching Problem

• Q. Is assignment X-C, Y-B, Z-A stable?

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

favorite least favorite favorite least favorite

Zeus Amy Clare Bertha

Yancey Bertha Clare Amy

Xavier Amy Clare Bertha

1st 2nd 3rd

Men’s Preference Profile

Clare Xavier Zeus Yancey

Bertha Xavier Zeus Yancey

Amy Yancey Zeus Xavier

1st 2nd 3rd

Women’s Preference Profile

Page 17: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Stable Matching Problem

• Q. Is assignment X-C, Y-B, Z-A stable?

• A. No. Bertha and Xavier will hook up.

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

favorite least favorite favorite least favorite

Zeus Amy Clare Bertha

Yancey Bertha Clare Amy

Xavier Amy Clare Bertha

Clare Xavier Zeus Yancey

Bertha Xavier Zeus Yancey

Amy Yancey Zeus Xavier

1st 2nd 3rd 1st 2nd 3rd

Men’s Preference Profile Women’s Preference Profile

Page 18: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Stable Matching Problem

• Q. Is assignment X-A, Y-B, Z-C stable?

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

favorite least favorite favorite least favorite

Zeus Amy Clare Bertha

Yancey Bertha Clare Amy

Xavier Amy Clare Bertha

Clare Xavier Zeus Yancey

Bertha Xavier Zeus Yancey

Amy Yancey Zeus Xavier

1st 2nd 3rd 1st 2nd 3rd

Men’s Preference Profile Women’s Preference Profile

Page 19: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Stable Matching Problem

• Q. Is assignment X-A, Y-B, Z-C stable?

• A. Yes. X and Y got their first choice; Z is the last choice for every woman. No man can participate in an unstable pair.

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

favorite least favorite favorite least favorite

Zeus Amy Clare Bertha

Yancey Bertha Clare Amy

Xavier Amy Clare Bertha

Clare Xavier Zeus Yancey

Bertha Xavier Zeus Yancey

Amy Yancey Zeus Xavier

1st 2nd 3rd 1st 2nd 3rd

Men’s Preference Profile Women’s Preference Profile

Page 20: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Existence of Stable Matching

• Q. Do stable matchings always exist?

• A. Not obvious a priori.

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

Page 21: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Stable Roommate Problem

• 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.

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

B

Bob

Chris

Adam C

A

B

D

D

Doofus A B C

D

C

A

1st 2nd 3rd

A-B, C-D B-C unstable A-C, B-D A-B unstable A-D, B-C A-C unstable

Page 22: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Propose-and-Reject Algorithm

• Propose-and-reject algorithm. [Gale-Shapley 1962]

8/25/10 A. Smith; based on slides by E. Demaine, C. Leiserson, S. Raskhodnikova, K. Wayne

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

}

Page 23: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Page 24: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Victor proposes to Bertha.

Victor

Bertha

Page 25: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Victor proposes to Bertha.

- Bertha accepts since previously unmatched.

Victor

Bertha

Page 26: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Wyatt proposes to Diane.

Victor

Bertha

Diane

Wyatt

Page 27: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Wyatt proposes to Diane.

- Diane accepts since previously unmatched.

Victor

Bertha

Diane

Wyatt

Page 28: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Xavier proposes to Bertha.

Victor

Bertha

Diane

Wyatt

Bertha

Xavier

Page 29: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Xavier proposes to Bertha.

- Bertha dumps Victor and accepts Xavier.

Victor

Bertha

Diane

Wyatt

Bertha

Xavier

Page 30: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Diane

Wyatt

Bertha

Xavier

Victor proposes to Amy.

Amy

Victor

Victor

Bertha

Page 31: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Victor proposes to Amy.

- Amy accepts since previously unmatched.

Victor

Bertha

Page 32: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Yancey proposes to Amy.

Amy

Yancey

Victor

Bertha

Page 33: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Amy

Yancey

Yancey proposes to Amy.

- Amy rejects since she prefers Victor.

Victor

Bertha

Page 34: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Yancey proposes to Diane.

Diane

Yancey

Amy

Yancey

Victor

Bertha

Page 35: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Diane

Yancey

Yancey proposes to Diane.

- Diane dumps Wyatt and accepts Yancey.

Amy

Yancey

Victor

Bertha

Page 36: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Diane

Yancey

Wyatt proposes to Bertha.

Bertha

Wyatt

Diane

Wyatt

Amy

Yancey

Victor

Bertha

Page 37: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Victor

Bertha

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Wyatt proposes to Bertha.

- Bertha rejects since she prefers Xavier.

Page 38: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Diane

Yancey

Wyatt proposes to Amy.

Amy

Wyatt

Victor

Bertha

Diane

Wyatt

Amy

Yancey

Bertha

Wyatt

Page 39: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Diane

Yancey

Wyatt proposes to Amy.

- Amy rejects since she prefers Victor.

Victor

Bertha

Diane

Wyatt

Amy

Yancey

Bertha

Wyatt

Amy

Wyatt

Page 40: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Victor

Bertha

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Amy

Wyatt

Wyatt proposes to Clare.

Clare

Wyatt

Page 41: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Diane

Yancey

Clare

Wyatt

Wyatt proposes to Clare.

- Clare accepts since previously unmatched.

Victor

Bertha

Diane

Wyatt

Amy

Yancey

Bertha

Wyatt

Amy

Wyatt

Page 42: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Diane

Yancey

Clare

Wyatt

Zeus proposes to Bertha. Bertha

Zeus Victor

Bertha

Diane

Wyatt

Amy

Yancey

Bertha

Wyatt

Amy

Wyatt

Page 43: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Diane

Yancey

Clare

Wyatt

Zeus proposes to Bertha.

- Bertha rejects since she prefers Xavier.

Victor

Bertha

Diane

Wyatt

Amy

Yancey

Bertha

Wyatt

Amy

Wyatt

Bertha

Page 44: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Diane

Yancey

Clare

Wyatt

Zeus proposes to Diane. Diane

Zeus

Victor

Bertha

Diane

Wyatt

Amy

Yancey

Bertha

Wyatt

Amy

Wyatt

Bertha

Page 45: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Victor

Bertha

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Amy

Wyatt

Clare

Wyatt

Bertha

Zeus

Diane

Zeus

Zeus proposes to Diane.

- Diane rejects Yancey and accepts Zeus.

Page 46: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Clare

Wyatt

Diane

Zeus

Yancey proposes to Clare.

Clare

Yancey

Victor

Bertha

Diane

Wyatt

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Amy

Wyatt

Bertha

Zeus

Page 47: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Victor

Bertha

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Amy

Wyatt

Clare

Wyatt

Bertha

Zeus

Diane

Zeus

Clare

Yancey

Yancey proposes to Clare.

- Clare rejects since she prefers Wyatt.

Page 48: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Clare

Wyatt

Diane

Zeus

Yancey proposes to Bertha.

Bertha

Yancey Victor

Bertha

Diane

Wyatt

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Amy

Wyatt

Bertha

Zeus

Clare

Yancey

Page 49: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Victor

Bertha

Diane

Wyatt

Bertha

Xavier

Amy

Victor

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Amy

Wyatt

Clare

Wyatt

Bertha

Zeus

Diane

Zeus

Clare

Yancey

Bertha

Yancey

Yancey proposes to Bertha.

- Bertha rejects since she prefers Xavier.

Page 50: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Clare

Wyatt

Diane

Zeus

Yancey proposes to Erika.

Erika

Yancey

Victor

Bertha

Diane

Wyatt

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Amy

Wyatt

Bertha

Zeus

Clare

Yancey

Bertha

Yancey

Page 51: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Clare

Wyatt

Diane

Zeus

Erika

Yancey

Yancey proposes to Erika.

- Erika accepts since previously unmatched.

Victor

Bertha

Diane

Wyatt

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Amy

Wyatt

Bertha

Zeus

Clare

Yancey

Bertha

Yancey

Page 52: Algorithm Design and Analysis - Penn State College of ...ads22/courses/cse565/F10/www/lec-notes/CSE565-F10-Lec-01.pptx.pdfAlgorithm Design and Analysis Theoretical study of how to

Zeus Bertha Amy Diane Erika Clare

Yancey Amy Clare Diane Bertha Erika

Xavier Bertha Clare Erika Diane Amy

Wyatt Diane Amy Bertha Clare Erika

Victor Bertha Diane Amy Erika Clare

0th 1st 2nd 3rd 4th

Men’s Preference Profile

Erika Yancey Zeus Wyatt Xavier Victor

Diane Victor Yancey Zeus Xavier Wyatt

Clare Wyatt Yancey Xavier Zeus Victor

Bertha Xavier Yancey Wyatt Victor Zeus

Amy Zeus Wyatt Victor Yancey Xavier

0th 1st 2nd 3rd 4th

Women’s Preference Profile

Bertha

Xavier

Amy

Victor

Clare

Wyatt

Diane

Zeus

Erika

Yancey

STOP

- Everyone matched. - Stable matching!

Victor

Bertha

Diane

Wyatt

Amy

Yancey

Diane

Yancey

Bertha

Wyatt

Amy

Wyatt

Bertha

Zeus

Clare

Yancey

Bertha

Yancey