1.1 Ένα πρώτο πρόβληµα: Ευσταθές Ταίριασµα

Σχετικά έγγραφα
Κεφάλαιο 1. Εισαγωγή: Ευσταθές Ταίριασμα και άλλα Αντιπροσωπευτικά Προβλήματα. Έκδοση 1.5, 30/10/2014

Κεφάλαιο 1. Εισαγωγή: Κάποια Αντιπροσωπευτικά Προβλήµατα. Έκδοση 1.3, 29/02/2012. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Ευσταθές ταίριασμα. (υλικό βασισμένο στο βιβλίο. Slides by Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved.

Εισαγωγή στους Αλγορίθμους

Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st woman on m's list to

Σχεδίαση και Ανάλυση Αλγορίθμων

Εισαγωγή στους Αλγορίθμους Ενότητα 4η

Κεφάλαιο 1. Πέντε Αντιπροσωπευτικά Προβλήματα. Έκδοση 1.4, 30/10/2014. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Βασικές Έννοιες Δοµών Δεδοµένων

Απλές Δοµές Δεδοµένων Στην ενότητα αυτή θα γνωρίσουµε ορισµένες απλές Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε για την αποδοτική επίλυση του προβλή

Το πρόβλημα του σταθερού γάμου

Stable Matching. Παύλος Εφραιμίδης, Λέκτορας

Κεφάλαιο 4. Άπληστοι Αλγόριθµοι (Greedy Algorithms) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιµότητα. Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Αλγόριθµοι Οπισθοδρόµησης

Great Theoretical Ideas In Computer Science

Αλγόριθμοι και Πολυπλοκότητα

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Παύλος Εφραιμίδης V1.1,

Κεφάλαιο 8. NP και Υπολογιστική Δυσεπιλυσιμότητα. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

ΑΛΓΟΡΙΘΜΟΙ Ενότητα 10

HY380 Αλγόριθμοι και πολυπλοκότητα Hard Problems

Υπολογιστική Πολυπλοκότητα Εξέταση Ιουνίου 2017 Σελ. 1 από 5

Άπληστοι Αλγόριθµοι (CLR, κεφάλαιο 17)

Λίστα Λσ Προτίμησης Ανδρών. Έκτορας Βάσω Δήμητρα Άννα Ελένη Γεωργία. Βασίλης Δήμητρα Βάσω Άννα Γεωργία Ελένη Γιάννης Βάσω Ελένη Γεωργία Δήμητρα Άννα

Εισαγωγή στους Αλγορίθμους Ενότητα 8η

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ ΕΠΑΝΑΛΗΠΤΙΚΟ ΔΙΑΓΩΝΙΣΜΑ ΣΧΟΛΙΚΟΥ ΕΤΟΥΣ

Αλγόριθμοι και Πολυπλοκότητα

Κεφάλαιο 3. Γραφήµατα v1.0 ( ) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Εισαγωγή στην Επιστήμη των Υπολογιστών

Αλγόριθµοι και Πολυπλοκότητα

Αλγόριθµοι και Πολυπλοκότητα

Προβλήματα, αλγόριθμοι, ψευδοκώδικας

Γράφοι: κατευθυνόμενοι και μη

Βραχύτερα Μονοπάτια σε Γράφους (CLR, κεφάλαιο 25)

Επίλυση Προβληµάτων µε Greedy Αλγόριθµους

Εισαγωγή στην Επιστήμη των Υπολογιστών

Χαροκόπειο Πανεπιστήμιο Τμήμα Πληροφορικής και Τηλεματικής. Διπλωματική εργασία. «Υλοποίηση αλγορίθμων βελτιστοποίησης ευσταθούς κατανομής»

ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΠΟΛΥΠΛΟΚΟΤΗΤΑ Φεβρουάριος 2005 Σύνολο μονάδων: 91

Θεωρία Υπολογισµού Theory of Computation

Εισαγωγή στους Αλγορίθμους Ενότητα 8η

Ενότητα 5: Αλγόριθμοι γράφων και δικτύων

Μη γράφετε στο πίσω μέρος της σελίδας

Θεμελιώδη Θέματα Επιστήμης Υπολογιστών

Εισαγωγή στους Αλγορίθμους Ενότητα 9η

Σειρά Προβλημάτων 5 Λύσεις

Αλγόριθμοι Ταξινόμησης Μέρος 4

3η Σειρά Γραπτών Ασκήσεων

Κεφάλαιο 3. Γραφήµατα v1.1 ( ) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Άπληστοι Αλγόριθµοι. Αλγόριθµοι & Πολυπλοκότητα (Χειµώνας 2011) Άπληστοι Αλγόριθµοι 1

Σχεδίαση και Ανάλυση Αλγορίθμων

Αλγόριθμοι και πολυπλοκότητα: 4 η σειρά ασκήσεων ΣΗΜΜΥ - Ε.Μ.Π.

Αλγόριθµοι Τύπου Μείωσης Προβλήµατος

ΚΕΦΑΛΑΙΟ 5: Αλγόριθµοι

Εισαγωγή στους Αλγόριθµους. Αλγόριθµοι. Ιστορικά Στοιχεία. Ο πρώτος Αλγόριθµος. Παραδείγµατα Αλγορίθµων. Τι είναι Αλγόριθµος

Ταιριάσματα. Γράφημα. Ταίριασμα (matching) τέτοιο ώστε κάθε κορυφή να εμφανίζεται σε το πολύ μια ακμή του

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι είναι οι γράφοι; Εφαρµογές των γράφων Γράφοι

Υπολογιστικό Πρόβληµα

ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ΣΕ ΠΡΟΓΡΑΜΜΑΤΙΣΤΙΚΟ ΠΕΡΙΒΑΛΛΟΝ Τελικό επαναληπτικό διαγώνισμα Επιμέλεια: Δρεμούσης Παντελής

Αλγόριθµοι και Πολυπλοκότητα

ΑΛΓΟΡΙΘΜΙΚΗ ΘΕΩΡΙΑ ΠΑΙΓΝΙΩΝ Πανεπιστήµιο Αθηνών Εαρινό Εξάµηνο 2007 ιδάσκων : Ηλίας Κουτσουπιάς

Δομές Δεδομένων & Αλγόριθμοι

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι είναι οι γράφοι; Εφαρµογές των γράφων Γράφοι

ΠΑΡΑΛΛΗΛΗ ΕΠΕΞΕΡΓΑΣΙΑ

Εισαγωγή στους Αλγορίθμους Ενότητα 9η

Σειρά Προβλημάτων 5 Λύσεις

Θεωρία Παιγνίων Δρ. Τασσόπουλος Ιωάννης

Κεφάλαιο 4. Δυναµικός Προγραµµατισµός (Dynamic Programming) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Περιεχόμενα. Εισαγωγή του επιμελητή, Γιάννης Σταματίου 15 Πρόλογος 17 Εισαγωγή 23. Μέρος I. ΕΠΑΝΑΛΗΠΤΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΚΑΙ ΑΝΑΛΛΟΙΩΤΕΣ ΣΥΝΘΗΚΕΣ

Αλγόριθµοι και Πολυπλοκότητα

ΕΠΛ 211: Θεωρία Υπολογισμού και Πολυπλοκότητας. Διάλεξη 13: Παραλλαγές Μηχανών Turing και Περιγραφή Αλγορίθμων

q(g \ S ) = q(g \ S) S + d = S.

Τομές Γραφήματος. Γράφημα (μη κατευθυνόμενο) Συνάρτηση βάρους ακμών. Τομή : Διαμέριση του συνόλου των κόμβων σε δύο μη κενά σύνολα

Κατευθυνόµενα γραφήµατα. Στοιχεία Θεωρίας Γραφηµάτων (1) Πολυγραφήµατα (Multigraphs)

Μια TM µπορεί ένα από τα δύο: να αποφασίζει µια γλώσσα L. να αναγνωρίζει (ηµιαποφασίζει) µια γλώσσα L. 1. Η TM «εκτελεί» τον απαριθµητή, E.

Εισαγωγή στους Αλγορίθμους Φροντιστήριο 8

11.1 Συναρτήσεις. ΚΕΦΑΛΑΙΟ 11: Θεωρία υπολογισµών

Αλγόριθµοι και Πολυπλοκότητα

Μαθηματικά Πληροφορικής

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές

Κεφάλαιο 4. Διαίρει και Βασίλευε (Divide and Conquer) Χρησιµοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

Μη γράφετε στο πίσω μέρος της σελίδας

Κατανεμημένα Συστήματα Ι

Δοµές Δεδοµένων. 2η Διάλεξη Αλγόριθµοι Ένωσης-Εύρεσης (Union-Find) Ε. Μαρκάκης. Βασίζεται στις διαφάνειες των R. Sedgewick K.

Στοιχεία Θεωρίας Γραφηµάτων (1)

Δυναμικός Προγραμματισμός

Κατανεμημένα Συστήματα Ι

Το Πρόβληµα Οµοφωνίας Σύγχρονα Συστήµατα Μεταβίβασης Μηνύµατος Μοντέλο Κατάρρευσης (crash model) Οι διεργασίες µπορούν να σταµατούν να εκτελούνται σε

ιδάσκοντες: Φ. Αφράτη,. Φωτάκης,. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Κεφάλαιο 2. Η δοµή δεδοµένων Σωρός και η Ταξινόµηση Σωρού (The Heap data structure and Heapsort) Έκδοση 1.1, 12/05/2010

Αλγόριθμοι. Μάρθα Σιδέρη. epl333 lect

Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου. Θεωρία Υπολογισμού. Ενότητα 3 : Γραφήματα & Αποδείξεις. Αλέξανδρος Τζάλλας

Τεχνολογίες Υλοποίησης Αλγορίθµων

HY118- ιακριτά Μαθηµατικά. Θεωρία γράφων / γραφήµατα. Τι έχουµε δει µέχρι τώρα. Υπογράφηµα Γράφοι

Γράφοι (συνέχεια) Ο αλγόριθµος Dijkstra για εύρεση βραχυτέρων µονοπατιών Ta µονοπάτια Euler

Κατανεμημένα Συστήματα Ι

ΚΕΦΑΛΑΙΟ 5: Αλγόριθµοι. 5.1 Αλγόριθµος: Ορισµός. Αλγόριθµοι : επίπεδα αφαίρεσης

Θεωρία Υπολογισμού Άρτιοι ΑΜ. Διδάσκων: Σταύρος Κολλιόπουλος. eclass.di.uoa.gr. Περιγραφή μαθήματος

Θεωρία Υπολογισμού Αρτιοι ΑΜ Διδάσκων: Σταύρος Κολλιόπουλος eclass.di.uoa.gr

Scheduling on Unrelated Parallel Machines

έντρα ιδάσκοντες:. Φωτάκης,. Σούλιου Επιμέλεια διαφανειών:. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο

Transcript:

Κεφάλαιο 1 Εισαγωγή: Κάποια Αντιπροσωπευτικά Προβλήµατα Βασισµένο στις αγγλικές διαφάνειες του Kevin Wayne. Copyright 2005 Pearson-Addison Wesley. All rights reserved. 1

1.1 Ένα πρώτο πρόβληµα: Ευσταθές Ταίριασµα

Ταίριασµα Γιατρών µε Νοσοκοµεία Στόχος. Δεδοµένου ενός συνόλου προτιµήσεων µεταξύ νοσοκοµείων και νέων γιατρών, να σχεδιάσουµε µία αυτοεπιβαλλόµενη (self-reinforcing) διαδικασία προσλήψεων. Ασταθές ζευγάρι: το ζευγάρι υποψήφιος x και νοσοκοµείο y είναι ασταθές εάν: ο x προτιµάει το y σε σχέση µε το νοσοκοµείο στο οποίο έχει προσληφθεί. το y προτιµάει τον x σε σχέση µε κάποιον από τους υποψηφίους που έχει επιλέξει. Ευσταθής ανάθεση. Ανάθεση που δεν περιλαµβάνει ασταθή ζευγάρια. Είναι µια φυσική και λογική απαίτηση. Η επιθυµία/προτίµηση κάθε οντότητας (υποψήφιος ή νοσοκοµείο) να κρατήσει την τρέχουσα επιλογή του θα εµποδίσει οποιαδήποτε αλλαγή στην τρέχουσα ανάθεση. 3

το πρόβληµα του ευσταθούς ταιριάσµατος Σκοπός. Δίνονται n άντρες και n γυναίκες και ζητείται ένα κατάλληλο" ταίριασµα. Κάθε άτοµο βαθµολογεί τα άτοµα του αντίθετου φύλου. Κάθε άντρας απαριθµεί τις γυναίκες σε φθίνουσα σειρά προτίµησης. Κάθε γυναίκα απαριθµεί τους άντρες σε φθίνουσα σειρά προτίµησης. 1η προτίµηση 3η προτίµηση 1η προτίµηση 3η προτίµηση 1 st 2 nd 3 rd Φώτης Άννα Βίκυ Γιώτα Χάρης Βίκυ Άννα Γιώτα Τάκης Άννα Βίκυ Γιώτα προτιµήσεις των αντρών 1 st 2 nd 3 rd Άννα Χάρης Φώτης Τάκης Βίκυ Φώτης Χάρης Τάκης Γιώτα Φώτης Χάρης Τάκης προτιµήσεις των γυναικών 4

ευσταθές ταίριασµα τέλειο ταίριασµα: ο καθένα αντιστοιχίζεται µονογαµικά. Κάθε άντρας παίρνει ακριβώς µία γυναίκα. Κάθε γυναίκα παίρνει ακριβώς έναν άντρα. ευστάθεια: δεν υπάρχει ζευγάρι µε κίνητρο να υπονοµεύσει την αντιστοίχιση µε συνδυασµένη ενέργεια. Σε ταίριασµα M, ένα ζευγάρι m-w που δεν έχει συνδεθεί είναι ασταθές εάν ο άντρας m και η γυναίκα w προτιµούν ο ένας τον άλλο σε σχέση µε τους τρέχοντες συντρόφους τους. Οι m και w από το ασταθές ζευγάρι m-w θα ωφεληθούν αµοιβαία εάν κλεφτούν. ευσταθές ταίριασµα: ένα τέλειο ταίριασµα χωρίς ασταθή ζευγάρια. το πρόβληµα του ευσταθούς ταιριάσµατος: δεδοµένων των προτιµήσεων n αντρών και n γυναικών, να βρεθεί ένα σταθερό ταίριασµα, εάν υπάρχει. 5

ευσταθές ταίριασµα Ερώτηση. Είναι το ταίριασµα Φ-Γ, Χ-B, Τ-A ευσταθές; 1η προτίµηση 3η προτίµηση 1η προτίµηση 3η προτίµηση 1 st 2 nd 3 rd Φώτης Άννα Βίκυ Γιώτα Χάρης Βίκυ Άννα Γιώτα Τάκης Άννα Βίκυ Γιώτα προτιµήσεις των αντρών 1 st 2 nd 3 rd Άννα Χάρης Φώτης Τάκης Βίκυ Φώτης Χάρης Τάκης Γιώτα Φώτης Χάρης Τάκης προτιµήσεις των γυναικών 6

ευσταθές ταίριασµα Ε. Είναι το ταίριασµα Φ-Γ, Χ-B, Τ-A ευσταθές; A. Όχι. Η Βίκυ και ο Φώτης θα τα φτιάξουν. 1η προτίµηση 3η προτίµηση 1η προτίµηση 3η προτίµηση 1 st 2 nd 3 rd 1 st 2 nd 3 rd Φώτης Άννα Βίκυ Γιώτα Χάρης Βίκυ Άννα Γιώτα Τάκης Άννα Βίκυ Γιώτα προτιµήσεις των αντρών Amy Χάρης Φώτης Τάκης Bertha Φώτης Χάρης Τάκης Clare Φώτης Χάρης Τάκης προτιµήσεις των γυναικών 7

ευσταθές ταίριασµα Ε. Είναι το ταίριασµα Φ-A, Χ-B, Τ-Γ ευσταθές; A. Ναι. 1η προτίµηση 3η προτίµηση 1η προτίµηση 3η προτίµηση 1 st 2 nd 3 rd 1 st 2 nd 3 rd Φώτης Άννα Βίκυ Γιώτα Χάρης Βίκυ Άννα Γιώτα Τάκης Άννα Βίκυ Γιώτα προτιµήσεις των αντρών Άννα Χάρης Φώτης Τάκης Βίκυ Φώτης Χάρης Τάκης Γιώτα Φώτης Χάρης Τάκης προτιµήσεις των γυναικών 8

το πρόβληµα του ευσταθούς συγκατοίκου Ε. Υπάρχουν πάντοτε ευσταθή ταιριάσµατα; A. Η απάντηση δεν είναι προφανής. πρόβληµα ευσταθούς συγκατοίκου. 2n άτοµα, και κάθε άτοµο απαριθµεί τους υπόλοιπους σε φθίνουσα σειρά προτίµησης από το 1 έως το 2n-1. να αναθέσουµε συγκατοίκους ώστε να µην υπάρχουν ασταθή ζευγάρια. 1 st 2 nd 3 rd Σε ορολογία θεωρίας παιγνίων: είναι ο πυρήνας (core) του συνεργατικού παιγνίου µη-κενός; Αδάµ Βασίλης Γιώργος Β Γ A Γ A Β Δ Δ Δ A-B, Γ-Δ A-Γ, B-Δ A-Δ, B-Γ B-Γ ασταθές A-B ασταθές A-Γ ασταθές Δηµήτρης A Β Γ Παρατήρηση. Ευσταθή ταιριάσµατα µπορεί να µην υπάρχουν πάντοτε για το πρόβληµα του ευσταθούς συγκατοίκου. 9

Αλγόριθµος Propose-And-Reject Αλγόριθµος Propose-and-Reject. [Gale-Shapley 1962] Μια µέθοδος που βρίσκει ένα ευσταθές ταίριασµα. Initialize each person to be free. while (some man is free and hasn't proposed to every woman) { Choose such a man m w = 1 st 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 } 10

απόδειξη ορθότητας: Τερµατισµός Παρατήρηση 1. Οι άντρες κάνουν προτάσεις στις γυναίκες σε φθίνουσα σειρά προτίµησης. Παρατήρηση 2. Αφότου αρραβωνιαστεί πρώτη φορά µια γυναίκα δεν µένει ξανά µόνη. Μπορεί απλά να αντικαθιστά τον αρραβώνα της µε αρραβώνα µεγαλύτερης προτίµησης. Ισχυρισµός. Ο αλγόριθµος τερµατίζει µετά από το πολύ n 2 επαναλήψεις του βρόχου while. Απ. Με κάθε εκτέλεση του βρόχου while ένας άντρας κάνει πρόταση σε µία γυναίκα. Υπάρχουν n 2 πιθανές προτάσεις. 1 st 2 nd 3 rd 4 th 5 th 1 st 2 nd 3 rd 4 th 5 th Κώστας A B Γ Δ E Άννα Η Φ Χ Τ Κ Ηλίας B Γ Δ A E Βίκυ Φ Χ Τ Κ Η Φώτης Γ Δ A B E Γιώτα Χ Τ Κ Η Φ Χάρης Δ A B Γ E Δανάη Τ Κ Η Φ Χ Τάκης A B Γ Δ E Ελένη Κ Η Φ Χ Τ απαιτούνται n(n-1) + 1 προτάσεις 11

απόδειξη ορθότητας: τέλειο ταίριασµα Ισχυρισµός. Όλοι οι άντρες και όλες οι γυναίκες αποκτούν ταίρι. Pf. (απαγωγή σε άτοπο) Υποθέτουµε, για την απαγωγή σε άτοπο, ότι ο Τάκης δεν έχει ταίρι όταν τερµατίσει ο αλγόριθµος. Αυτό σηµαίνει ότι θα υπάρχει κάποια γυναίκα, πχ. η Άννα που επίσης δε θα έχει ταίρι όταν τερµατίσει ο αλγόριθµος. Από την παρατήρηση 2, η Άννα δεν έχει δεχθεί καµία πρόταση. Όµως, ο Τάκης έχει προτείνει σε όλες, εφόσον καταλήγει να είναι χωρίς ταίρι. 12

απόδειξη ορθότητας: ευστάθεια Ισχυρισµός. Δεν υπάρχουν ασταθή ζευγάρια. Απόδειξη. (απαγωγή σε άτοπο) Υποθέτουµε ότι A-Τ είναι ένα ασταθές ζευγάρι: προτιµούν τον αρραβώνα Α-Τα σε σχέση µε το ταίρι που τους ανέθεσε το ταίριασµα Gale-Shapley S*. οι άντρες κάνουν προτάσεις σε φθίνουσα σειρά προτίµησης S* Περίπτωση 1: Ο Τ δεν πρότεινε στην Α. Ο Τ προτιµάει το GS ταίρι του έναντι της A. το A-Τ είναι ευσταθές. Άννα-Χάρης Βίκυ-Τάκης... Περίπτωση 2: Ο Τ έκανε πρόταση στην Α. η A απέρριψε τον Τ (άµεσα ή µετά από λίγο) η A προτιµάει το GS ταίρι της έναντι του Τ. το Α-Τα είναι ευσταθές. οι γυναίκες µόνο βελτιώνουν τον αρραβώνα τους Σε κάθε περίπτωση λοιπόν, το A-Τ είναι ευσταθές άτοπο. 13

σύνοψη Πρόβληµα ευσταθούς ταιριάσµατος. Δίνονται n άντρες και n γυναίκες και οι προτιµήσεις τους και ζητείται να βρεθεί ένα ευσταθές ταίριασµα, εάν υπάρχει. Αλγόριθµος Gale-Shapley. Εγγυάται την εύρεση ευσταθούς ταιριάσµατος για κάθε στιγµιότυπο του προβλήµατος. Ερώτηµα. Πως θα υλοποιήσουµε τον αλγόριθµο GS αποδοτικά; Ερώτηµα. Εάν υπάρχουν περισσότερα του ενός ευσταθή ταιριάσµατα, ποιο θα βρει ο αλγόριθµος GS; 14

αποδοτική υλοποίηση αποδοτική υλοποίηση. Θα περιγράψουµε µια υλοποίηση µε πολυπλοκότητα χρόνου O(n 2 ). Αναπαράσταση αντρών και γυναικών. Ας ονοµάσουµε τους άντρες 1,, n. Ας ονοµάσουµε τις γυναίκες 1',, n'. Αρραβώνες. Διατηρούµε µια λίστα ελεύθερων αντρών, πχ., δε µια ουρά (queue). Διατηρούµε δύο πίνακες wife[m], and husband[w]. δίνουµε σε ένα κελί στην τιµή 0 εάν το αντίστοιχο άτοµο είναι ελεύθερο εάν ο m αρραβωνιαστεί µε την w τότε wife[m]=w και husband[w]=m Οι άντρες κάνουν προτάσεις. Για κάθε άντρα, διατηρούµε µια λίστα γυναικών, διατεταγµένη µε βάση τις προτιµήσεις του. Διατηρούµε έναν πίνακα count[m] που καταγράφει το πλήθος των προτάσεων που έκανε κάθε άντρας m. 15

αποδοτική υλοποίηση Οι γυναίκες αποδέχονται/απορρίπτουν. Προτιµάει η γυναίκα w τον άντρα m από τον άντρα m'? Για κάθε γυναίκα, δηµιουργούµε αντίστροφη λίστα προτιµήσεων µε τους άντρες. Απαιτείται O(n) χρόνος προ-επεξεργασίας για την αντιστροφή. Μετά µπορούµε να αποφασίσουµε σε σταθερό χρόνο (constant time) εάν µια γυναίκα προτιµάει έναν άντρα έναντι ενός άλλου. Amy 1 st 2 nd 3 rd 4 th 5 th 6 th 7 th 8 th Pref 8 3 7 1 4 5 6 2 Amy 1 2 3 4 5 6 7 8 Inverse 4 th 8 th 2 nd 5 th 6 th 7 th 3 rd 1 st for i = 1 to n inverse[pref[i]] = i Η Άννα προτιµάει τον άντρα 3 από τον άντρα 6, εφόσον inverse[3] < inverse[6] 2 7 16

κατανόηση της λύσης Ερώτηµα. Για συγκεκριµένο στιγµιότυπο του προβλήµατος ενδέχεται να υπάρχουν περισσότερα του ενός ευσταθή ταιριάσµατα. Κάθε εκτέλεση του αλγορίθµου Gale-Shapley δίνει το ίδιο ευσταθές ταίριασµα (εάν για παράδειγµα εξετάσουµε τους άντρες µε διαφορετική σειρά); Εάν ναι, τότε ποιο είναι αυτό το ευσταθές ταίριασµα; Ένα στιγµιότυπο µε δύο ευσταθή ταιριάσµατα. A-Φ, B-Χ, C-Τ. A-Χ, B-Φ, C-Τ. 1 st 2 nd 3 rd 1 st 2 nd 3 rd Φώτης A B Γ Άννα Χ Φ Τ Χάρης B A Γ Βίκυ Φ Χ Τ Τάκης A B Γ Γιώτα Φ Χ Τ 17

κατανόηση της λύσης Ερώτηµα. Για δεδοµένο στιγµιότυπο του προβλήµατος, µπορεί να υπάρχουν αρκετά ευσταθή ταιριάσµατα. Όλες οι εκτελέσεις του αλγορίθµου Gale- Shapley δίνουν το ίδιο ευσταθές ταίριασµα; Αν ναι, τότε ποιο είναι αυτό το ευσταθές ταίριασµα? Ορισµός. Ο άντρας m είναι ένας έγκυρος σύντροφος της γυναίκας w εάν υπάρχει κάποιο ευσταθές ταίριασµα στο οποίο ο m και η w είναι ζευγάρι. Ανάθεση βέλτιστη για τους άντρες. Κάθε άντρας γίνεται ζευγάρι µε την καλύτερη (υψηλότερη στις προτιµήσεις του) από τις έγκυρες συντρόφους του. Ισχυρισµός. Όλες οι εκτελέσεις του αλγορίθµου GS δίνουν ανάθεση βέλτιστη για τους άντρες, η οποία είναι ένα ευσταθές ταίριασµα! Είναι µάλλον µη αναµενόµενο ότι η ανάθεση που βέλτιστη για τους άντρες είναι τέλεια (όλοι οι άντρες έχουν ταίρι), πολύ περισσότερο δε ότι είναι και ευσταθής (ή µήπως είναι αναµενόµενο αυτό;). Ταυτόχρονα βέλτιστη για κάθε έναν και για όλους τους άντρες. 18

βέλτιστο για τους άντρες Ισχυρισµός. Το ταίριασµα S* του αλγορίθµου GS είναι βέλτιστο για τους άντρες. Απόδειξη. (µε απαγωγή σε άτοπο) Έστω ότι γίνεται ταίριασµα ενός άντρα µε γυναίκα που δεν είναι βέλτιστη ανάθεση για αυτόν. Οι άντρες κάνουν προτάσεις σε φθίνουσα σειρά προτεραιότητας κάποιος άντρας απορρίφθηκε από έγκυρη σύντροφο. Έστω Χ ο πρώτος τέτοιος άντρας, και έστω Α η πρώτη έγκυρη σύντροφος που τον απέρριψε. Έστω S ένα ευσταθές ταίριασµα όπου Α και Χ είναι ζευγάρι. Όταν ο Χ απορρίπτεται, η Α συνάπτει δεσµό (ή διατηρεί δεσµό) µε έναν άντρα, έστω Τ, τον οποίο προτιµάει έναντι του Χ. Έστω Β η σύντροφος του Τ στο ταίριασµα S. Ο Τ δεν έχει απορριφθεί από έγκυρη σύντροφο όταν ο Χ δέχεται την απόρριψη από την Α. Εποµένως ο Τ προτιµάει την Α έναντι της Β. Όµως η Α προτιµάει τον Τ από τον Χ. Εποµένως το A-Τ είναι ένα ασταθές ζεύγος στο S. S Άννα-Χάρης Βίκυ-Τάκης... εφόσον αυτή είναι η πρώτη απόρριψη από έγκυρη σύντροφο 19

σύνοψη ευσταθούς ταιριάσµατος Πρόβληµα ευσταθούς ταιριάσµατος. Δεδοµένων των προτιµήσεων n αντρών και n γυναικών, να βρεθεί ένα ευσταθές ταίριασµα. δεν υπάρχει άντρας και γυναίκα, που δεν είναι ζευγάρι, αλλά προτιµούν ο ένας τον άλλο περισσότερο από ότι τον τρέχοντα σύντροφό τους Αλγόριθµος Gale-Shapley. Βρίσκει ένα ευσταθές ταίριασµα σε χρόνο O(n 2 ). Βέλτιστο για άντρες. Όταν οι άντρες είναι αυτοί που κάνουν τις προτάσεις στον αλγόριθµο GS, κάθε άντρας αντιστοιχίζεται µε τη βέλτιστη έγκυρη σύντροφο. η w είναι έγκυρη σύντροφος του m εάν υπάρχει κάποιο ευσταθές ταίριασµα όπου ο m και η w είναι ζευγάρι Ερώτηµα. Η ιδιότητα του βέλτιστου για τους άντρες ισχύει σε βάρος των γυναικών; 20

Χείριστο για τις Γυναίκες Χείριστη ανάθεση για γυναίκες. Κάθε γυναίκα αντιστοιχίζεται µε τον χειρότερο από τους έγκυρους συντρόφους της. Ισχυρισµός. Ο αλγόριθµος GS βρίσκει ένα χείριστο για τις γυναίκες ευσταθές ταίριασµα S*. Απόδειξη. Έστω ότι A-Τ είναι ζευγάρι στο S*, και ότι ο Τ δεν είναι ο χειρότερος έγκυρος σύντροφος για την A. Υπάρχει ευσταθές ταίριασµα S στο οποίο η Α αντιστοιχίζεται µε έναν άντρα, έστω Χ, τον οποίο προτιµάει λιγότερο από τον Τ. Έστω Β η σύντροφος του Τα στο S. Ο Τ προτιµάει την Α έναντι της B. ισχύει η βέλτιστη ανάθεση για τους άντρες Εποµένως, το A-Τ είναι ένα ασταθές ζεύγος στο S. S Άννα-Χάρης Βίκυ-Τάκης... 21

Επεκτάσεις: Αντιστοίχιση Γιατρών σε Νοσοκοµεία Αντιστοιχία: άντρες νοσοκοµεία, γυναίκες γιατροί. Παραλλαγή 1. Κάποιοι συµµετέχοντες δηλώνουν κάποιες αναθέσεις ως µη αποδεκτούς. πχ. η γιατρός Α δεν δέχεται να εργαστεί στην Αθήνα Παραλλαγή 2. Το πλήθος των αντρών και γυναικών δεν είναι το ίδιο. Παραλλαγή 3. Περιορισµένη πολυγαµία. το νοσοκοµείο X επιθυµεί να προσλάβει 3 γιατρούς Ορισµός. Το ταίριασµα S είναι ασταθές εάν υπάρχει νοσοκοµείο h και γιατρός r τέτοια ώστε: h και r είναι αµοιβαία αποδεκτά, και είτε ο r είναι χωρίς αντιστοίχιση, είτε ο r προτιµάει το h έναντι του τρέχοντος νοσοκοµείου του, και είτε το h δεν έχει καλύψει όλες τις θέσεις του, είτε ο h προτιµάει τον r σε σχέση µε έναν τουλάχιστον από τους γιατρούς που του ανατέθηκαν. 22

Εφαρµογή: Ανάθεση γιατρών σε νοσοκοµεία Πρόγραµµα NRMP. (National Resident Matching Program) Χρησιµοποιήθηκε αµέσως µετά το Δεύτερο Παγκόσµιο πόλεµο. Μέσα Μαρτίου, 23,000+ γιατροί. Το δίληµµα του Αποµακρυσµένου Νοσοκοµείου. Ορισµένα νοσοκοµεία (κυρίως σε αγροτικές/αποµακρυσµένες περιοχές) δεν ήταν δηµοφιλή και πολλοί γιατροί δήλωναν ότι δεν αποδέχονταν να πάνε σε αυτά. προτού διαδοθεί η χρήση των υπολογιστών Τα αποµακρυσµένα νοσοκοµεία δεν κάλυπταν τις θέσεις τους στο πρόγραµµα ταιριάσµατος NRMP. Πως µπορούµε να βρούµε ένα ευσταθές ταίριασµα που ευνοεί τα αποµακρυσµένα νοσοκοµεία? Θεώρηµα αποµακρυσµένων νοσοκοµείων (Rural Hospital Theorem). Τα αποµακρυσµένα νοσοκοµεία παίρνουν ακριβώς το ίδιο σύνολο γιατρών σε κάθε ευσταθές ταίριασµα! 23

1.2 Πέντε Αντιπροσωπευτικά Προβλήµατα

Χρονοπρογραµµατισµός Διαστηµάτων Είσοδος. Ένα σύνολο εργασιών (jobs) µα χρόνους εκκίνησης και χρόνους τερµατισµού. Σκοπός. Να βρεθεί µέγιστο υποσύνολο εργασιών που είναι συµβατές µεταξύ τους. οι εργασίες δεν επικαλύπτονται a b c d e f g 0 1 2 3 4 5 6 7 8 9 10 11 h Χρόνος 25

Σταθµισµένος χρονοπρογραµµατισµός διαστηµάτων Είσοδος. Ένα σύνολο εργασιώνet µε χρόνους εκκίνησης, χρόνους τερµατισµού και βάρη. Σκοπός. Να βρεθεί υποσύνολο µεγίστου βάρους µε εργασίες που είναι συµβατές µεταξύ τους. 23 12 20 26 13 20 11 0 1 2 3 4 5 6 7 8 9 10 11 16 Χρόνος 26

Διµερές ταίριασµα Είσοδος. Διµερές γράφηµα. Σκοπός. Να βρεθεί ταίριασµα µε µέγιστο πλήθος ακµών. A 1 B 2 C 3 D 4 E 5 27

Ανεξάρτητο Σύνολο Είσοδος. Γράφηµα. Σκοπός. Να βρεθεί ανεξάρτητο σύνολο µε το µέγιστο πλήθος κορυφών. υποσύνολο κορυφών τέτοιο ώστε δεν υπάρχει ακµή µεταξύ των κορυφών αυτών 1 2 3 4 5 6 7 28

Ανταγωνιστική Χωροθέτηση Υπηρεσιών Είσοδος. Γράφηµα µε βάρος σε κάθε κόµβο. Παίγνιο. Δύο παίκτες επιλέγουν κόµβους εναλλάξ. Δεν επιτρέπεται η επιλογή ενός κόµβου εάν έχει ήδη επιλεγεί κάποιος από τους γείτονές του. Σκοπός. Να επιλεγεί ένα υποσύνολο κόµβων µεγίστου βάρους. 10 1 5 15 5 1 5 1 15 10 Ο δεύτερος παίκτης µπορεί να εγγυηθεί συνολικό βάρος 20, όχι όµως 25. 29

Πέντε Αντιπροσωπευτικά Προβλήµατα Παραλλαγές σε ένα θέµα: ανεξάρτητο σύνολο. Χρονοπρογραµµατισµός διαστηµάτων: n log n άπληστος (greedy) αλγόριθµος. Σταθµισµένος χρονοπρογραµµατισµός διαστηµάτων: n log n αλγόριθµος µε δυναµικό προγραµµατισµό. Διµερές ταίριασµα: n k αλγόριθµος βασισµένος αλγόριθµο µέγιστης ροής. Ανεξάρτητο σύνολο: NP-πλήρης (NP-complete). Ανταγωνιστική χωροθέτηση εργασιών: PSPACE-πλήρης (PSPACEcomplete). 30

Επιπλέον Διαφάνειες

Πρόβληµα Ευσταθούς Ταιριάσµατος Σκοπός: Δεδοµένων n αντρών και n γυναικών, να βρεθεί ένα κατάλληλο ταίριασµα. Κάθε άτοµο ταξινοµεί τα άτοµα του αντίθετου φύλου. Κάθε άντρας δίνει λίστα µε τις γυναίκες σε σειρά προτεραιότητας από την πρώτη προτίµησή του προς την τελευταία. Κάθε γυναίκα δίνει λίστα µε τους άντρες σε σειρά προτεραιότητας από την πρώτη προτίµησή της προς τον τελευταία. πρώτη προτίµηση τελευταία προτίµηση 1 st 2 nd 3 rd 4 th 5 th Κώστας Βίκυ Άννα Δανάη Ελένη Clare Ηλίας Δανάη Βίκυ Άννα Clare Ελένη Φώτης Βίκυ Ελένη Clare Δανάη Άννα Χάρης Άννα Δανάη Clare Βίκυ Ελένη Τάκης Βίκυ Δανάη Άννα Ελένη Clare προτιµήσεις των αντρών 32

Πρόβληµα Ευσταθούς Ταιριάσµατος Σκοπός: Δεδοµένων n αντρών και n γυναικών, να βρεθεί ένα κατάλληλο ταίριασµα. Κάθε άτοµο ταξινοµεί τα άτοµα του αντίθετου φύλου. Κάθε άντρας δίνει λίστα µε τις γυναίκες σε σειρά προτεραιότητας από την πρώτη προτίµησή του προς την τελευταία. Κάθε γυναίκα δίνει λίστα µε τους άντρες σε σειρά προτεραιότητας από την πρώτη προτίµησή της προς τον τελευταία. πρώτη προτίµηση τελευταία προτίµηση 1 st 2 nd 3 rd 4 th 5 th Άννα Τάκης Ηλίας Wyatt Χάρης Φώτης Βίκυ Φώτης Wyatt Χάρης Ηλίας Τάκης Γιώτα Wyatt Φώτης Χάρης Τάκης Ηλίας Δανάη Ηλίας Τάκης Χάρης Φώτης Wyatt Ελένη Χάρης Wyatt Τάκης Φώτης Ηλίας προτιµήσεις των γυναικών 33

κατανόηση της λύσης Ισχυρισµός. Το ευσταθές ταίριασµα που είναι βέλτιστο για τους άντρες είναι ασθενώς Pareto βέλτιστο (weakly Pareto optimal). Απόδειξη. Δεν υπάρχει άλλο τέλειο ταίριασµα (είτε ευσταθές είτε ασταθές) όπου κάθε άντρας αντιστοιχίζεται σε αυστηρά υψηλότερη προτίµησή του Έστω Α η τελευταία γυναίκα σε κάποια εκτέλεση του αλγορίθµου GS που δέχεται µια πρόταση. Κανένας άντρας δεν έχει απορριφθεί από την Α, εφόσον ο αλγόριθµος τερµατίζει όταν η τελευταία γυναίκα δέχεται την πρώτη πρόταση. Κανένας άντρας που αντιστοιχίζεται µε την Α δεν µπορεί να είναι σε καλύτερη αντιστοίχιση από ότι στο βέλτιστο για τους άντρες ευσταθές ταίριασµα 34

Απάτη: Κίνητρο για ψευδείς δηλώσεις στον αλγόριθµο Gale-Shapley Ερώτηση. Μπορεί να υπάρχει κίνητρο να δηλώσει ένα άτοµο ψευδή στοιχεία για τις προτιµήσεις του/της στον αλγόριθµο Gale-Shapley; Υποθέτουµε ότι γνωρίζουµε ότι θα εκτελεστεί ο αλγόριθµος Gale-Shapley µε τις προτάσεις να γίνονται από τους άντρες. Υποθέτουµε ότι γνωρίζουµε τις προτιµήσεις όλων των υπολοίπων ατόµων. Απάντηση. Όχι, για όλους τους άντρες, Ναι για ορισµένες γυναίκες. Κανένας µηχανισµός (mechanism) δεν µπορεί να εγγυηθεί ένα ευσταθές ταίριασµα και ταυτόχρονα να εξαλείψει κάθε κίνητρο για ψευδείς δηλώσεις. 1 st 2 nd 3 rd Φώτης 1 st A 2 nd B Γ 3 rd πραγµατικές προτιµήσεις των γυναικών Άννα Βίκυ Γιώτα Χ Φ Φ Φ Χ Χ Τ Τ Τ Χάρης B A Γ Τάκης A B προτιµήσεις των αντρών Γ η Άννα λέει ψέµµατα Άννα Βίκυ 1 st 2 nd 3 rd Χ Τ Φ Φ Χ Τ Γιώτα Φ Χ Τ 35