Presentation is loading. Please wait.

Presentation is loading. Please wait.

Lecture 2 CSE 331. Day 1 Survey On UBlearns Day 1 Survey (talking points) Security MS PhD for research Building PC’s for 442 It’s ok to play games –

Similar presentations


Presentation on theme: "Lecture 2 CSE 331. Day 1 Survey On UBlearns Day 1 Survey (talking points) Security MS PhD for research Building PC’s for 442 It’s ok to play games –"— Presentation transcript:

1 Lecture 2 CSE 331

2 Day 1 Survey On UBlearns

3 Day 1 Survey (talking points) Security MS PhD for research Building PC’s for 442 It’s ok to play games – ROM hacking! Grading curve

4 Day 1 Survey (Me) Fingerprint Security I’m from Buffalo Home brewing fireworks

5 Structure of Homeworks Easy Problem (40%) Medium hard Problem (45%) Hard Problem (15%)

6 HW 0 due next Thursday Hard copy in class -or- Email it to me

7 Office Hours Davis 203 Monday: 1-3pm Wednesday: 1-3pm

8 From problem to software

9 Main Steps in Algorithm Design Problem Statement Algorithm Real world problem Problem Definition Precise mathematical def Implementation Data Structures Analysis Correctness/Run time

10 Worst-case analysis (CSE250) Correctness should hold for every valid input Resource usage by the worst-possible input What resources? Why worst-case?

11 Stable Matching Problem Problem Statement Algorithm Problem Definition Implementation Analysis

12 Docs are coming to BUF Hawkeye (M*A*S*H) JD (Scrubs) Buffalo General Millard Filmore (Gates Circle) Millard Filmore (Suburban)

13 What can go wrong?

14 The situation is unstable!

15 National Resident Matching (http://www.nrmp.org/)http://www.nrmp.org/

16 What happens in real life Preferences Information Preferences

17 NRMP plays matchmaker

18 Stable Marriage/Matching Problem David Gale Lloyd Shapley

19 Stable Matching Problem Problem Statement Algorithm Problem Definition Implementation Analysis

20 On matchings Mal Wash Simon Inara Zoe Kaylee

21 Questions to Setup/Simplify SMP Q1) How do we specify preferences? Q2) What is the ratio of men to women? Q3) Can a man marry more than one woman? Q4) Can a woman marry more than one man? Q5) How many men/women in a preference list? Q6) Does every man marry at least 1 woman? Q7) Does every woman marry at least 1 man? Q8) How do we define an assignment?

22 Questions to Setup/Simplify SMP Q1) How do we specify preferences? – List of preferences (ranking) Q2) What is the ratio of men to women? – 1:1 (n men and n women) Q3) Can a man marry more than one woman? – No polygamy Q4) Can a woman marry more than one man? – No polygamy

23 Questions to Setup/Simplify SMP Q5) How many men/women in a preference list? – All n of them Q6) Does every man marry at least 1 woman? – Yes (no singles) Q7) Does every woman marry at least 1 man? – Yes (no singles)

24 Q8) How do we define an assignment? An assignment is a matching which is a set M is the set of men: M = {m 1, m 2, …, m n } W is the set of women: W = {w 1, w 2, …, w n } No polygamy Ex. (n=3) S = {(m 2, w 1 ), (m 1, w 2 )}

25 Types of matching Matching: No polygamy (defined on previous slide) Perfect matching (no singles): S is a matching and |S| = n Stable matching: A perfect matching with no instabilities Instability: There exists an (m, w) not in S such that both m prefers w over his current spouse and w prefers m over her current spouse

26 A valid matching Mal Wash Simon Inara Zoe Kaylee

27 Not a matching Mal Wash Simon Inara Zoe Kaylee

28 Perfect Matching Mal Wash Simon Inara Zoe Kaylee

29 Preferences Mal Wash Simon Inara Zoe Kaylee

30 Instability Mal Wash Simon Inara Zoe Kaylee

31 Stable Matching Mal Wash Simon Inara Zoe Kaylee

32 A stable marriage Even though BBT and JA are not very happy

33 Two stable matchings

34 Stable Marriage problem Input: M and W with preference lists Output: A stable matching from M x W

35 Questions/Comments?

36 Stable Matching Problem Problem Statement Algorithm Problem Definition Implementation Analysis

37 Two Questions Does a stable marriage always exist? If one exists, how quickly can we compute one?

38 Naïve algorithm Gale-Shapley algorithm for Stable Marriage problem

39 Discuss: Naïve algorithm!

40 A naïve algorithm Go through all possible perfect matchings S If S is a stable matching then Stop Else move to the next perfect matching n! matchings

41 Gale-Shapley Algorithm David Gale Lloyd Shapley O(n 3 ) algorithm

42 Gale-Shapley Algorithm Women do all the proposing (different from the book) Everyone is in one of three states: free, engaged and married Step 1: A free woman w proposes to her most preferred man m. (m,w) get engaged General step: A free woman w proposes to her top unproposed man m.

43 Gale-Shapley Algorithm Initially all men and women are free While there exists a free woman who can propose Let w be such a woman and m be the best man she has not proposed to w proposes to m If m is free (m,w) get engaged Else (m,w’) are engaged If m prefers w’ to w w remains free Else (m,w) get engaged and w’ is free Output the engaged pairs as the final output. These engaged pairs get married.

44 Preferences Mal Wash Simon Inara Zoe Kaylee

45 GS algorithm: Firefly Edition 1 1 2 2 3 3 4 4 5 5 6 6 Mal Wash Simon Inara Zoe Kaylee

46 Stable Matching Problem Problem Statement Algorithm Problem Definition Implementation Analysis To the code

47 Moral of the story… >

48 Stable Matching Problem Problem Statement Algorithm Problem Definition Implementation Analysis Coming soon…


Download ppt "Lecture 2 CSE 331. Day 1 Survey On UBlearns Day 1 Survey (talking points) Security MS PhD for research Building PC’s for 442 It’s ok to play games –"

Similar presentations


Ads by Google