Ελάχιστο Συνδετικό Δέντρο

Σχετικά έγγραφα
Ελάχιστο Συνδετικό Δέντρο

Ελάχιστο Συνδετικό Δέντρο

Ελάχιστο Συνδετικό έντρο

Ελάχιστο Συνδετικό έντρο

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

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

ΠΛΗ 20, 6 η ΟΣΣ: Δέντρα Εξετάσεις

Συντομότερες ιαδρομές

Συντομότερες Διαδρομές

Συντομότερες ιαδρομές

Συντομότερες Διαδρομές

Συντομότερες ιαδρομές

Βασικές Έννοιες Θεωρίας Γραφημάτων

Αναζήτηση Κατά Πλάτος

Αναζήτηση Κατά Πλάτος

Αναζήτηση Κατά Πλάτος

Αναζήτηση Κατά Πλάτος

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

Outline 1 Άσκηση 1 2 Άσκηση 2 3 Άσκηση 3 4 Άσκηση 4 5 Άσκηση 5 6 Προγραμματιστική Άσκηση 1 7 Προγραμματιστική Άσκηση 2 (CoReLab - NTUA) Αλγόριθμοι - 3

Θεωρία Γραφημάτων: Ορολογία και Βασικές Έννοιες

Μέγιστη Ροή Ελάχιστη Τομή

Μέγιστη Ροή Ελάχιστη Τομή

Βασικές Έννοιες Θεωρίας Γραφημάτων

Αλγόριθμοι Γραφημάτων

Ελάχιστο Γεννητικό Δένδρο. Παράδειγμα - Αλγόριθμος Prim. Γιατί δουλεύουν αυτοί οι αλγόριθμοι;

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

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

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

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

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

ΠΛΗ 20, 4 η ΟΣΣ: Βασικές Έννοιες Θεωρίας Γραφημάτων

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

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

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

u v 4 w G 2 G 1 u v w x y z 4

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

Θεωρία Γραφημάτων 5η Διάλεξη

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

Αναζήτηση Κατά Βάθος. Επιµέλεια διαφανειών:. Φωτάκης διαφάνειες για SCC: A. Παγουρτζής. Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Αλγόριθμοι εύρεσης ελάχιστων γεννητικών δέντρων (MST)

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

ΕΙΣΑΓΩΓΗ ΣΤΗΝ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

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

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

Θεωρία Γραφημάτων 5η Διάλεξη

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

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

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

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

Αλγόριθµοι Γραφηµάτων

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

Ουρά Προτεραιότητας: Heap

Outline 1 Άσκηση 1: Εφαρμογές BFS DFS 2 Άσκηση 2: Μια Συνάρτηση Κόστους σε Κατευθυνόμενα Γραφήματα 3 Άσκηση 3: Ανάλυση Ασφάλειας 4 Άσκηση 4: Το Σύνολο

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

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

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

d(v) = 3 S. q(g \ S) S

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

Θεωρία Γραφημάτων 4η Διάλεξη

Ουρά Προτεραιότητας: Heap

Θεωρία Γραφημάτων 6η Διάλεξη

Διαίρει και Βασίλευε. πρόβλημα μεγέθους Ν. διάσπαση. πρόβλημα μεγέθους k. πρόβλημα μεγέθους Ν-k

Ουρά Προτεραιότητας: Heap

για NP-Δύσκολα Προβλήματα

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

Θεωρία και Αλγόριθμοι Γράφων

Πιθανοτικοί Αλγόριθμοι

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

Προσεγγιστικοί Αλγόριθμοι

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

Ασκήσεις στους Γράφους. 2 ο Σετ Ασκήσεων. Δέντρα

E(G) 2(k 1) = 2k 3.

Επαγωγή και αναδρομή για άκυκλα συνεκτικά γραφήματα

ΔΕΝΔΡΙΚΑ ΓΡΑΦΗΜΑΤΑ ΚΕΦΑΛΑΙΟ 3

Προσεγγιστικοί Αλγόριθμοι για NP- ύσκολα Προβλήματα

Σχεδιαση Αλγοριθμων -Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο

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

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

z 1 E(G) 2(k 1) = 2k 3. x z 2 H 1 H 2

Ουρά Προτεραιότητας: Heap

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

... a b c d. b d a c

Θεωρία Γραφημάτων και Εφαρμογές - Διακριτά Μαθηματικά ΙΙ Φεβρουάριος 2017

ΑΛΓΟΡΙΘΜΟΙ. Ενότητα 9: Άπληστοι Αλγόριθμοι. Ιωάννης Μανωλόπουλος, Καθηγητής Αναστάσιος Γούναρης, Επίκουρος Καθηγητής Τμήμα Πληροφορικής ΑΠΘ

Τίτλος Μαθήματος: Θεωρία Γραφημάτων. Ενότητα: Συνεκτικότητα και Δισυνεκτικότητα. Διδάσκων: Λέκτορας Xάρης Παπαδόπουλος. Τμήμα: Μαθηματικών

Άσκηση 1. Ψευδοκώδικας Kruskal. Παρακάτω βλέπουμε την εφαρμογή του στο παρακάτω συνδεδεμένο γράφημα.

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

Αλγόριθμοι Προσέγγισης για NP-Δύσκολα Προβλήματα

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

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

Διακριτά Μαθηματικά ΙΙ Χρήστος Νομικός Τμήμα Μηχανικών Η/Υ και Πληροφορικής Πανεπιστήμιο Ιωαννίνων 2018 Χρήστος Νομικός ( Τμήμα Μηχανικών Η/Υ Διακριτά

Graph Algorithms. Παρουσίαση στα πλαίσια του μαθήματος «Παράλληλοι Αλγόριθμοι» Καούρη Γεωργία Μήτσου Βάλια

Θεωρία Γραφημάτων και Εφαρμογές - Διακριτά Μαθηματικά ΙΙ Σεπτέμβριος 2017

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

Μαθηματική Επαγωγή. Τεχνικές Απόδειξης. Αποδείξεις Ύπαρξης. Μαθηματική Επαγωγή

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

Συνεκτικότητα Γραφήματος

jτο πλήθος των ταξιδιών που κάνει η αεροσυνοδός µέχρι την j ηµέρα. Σχηµατίζω µία ακολουθία που αποτελείται από τα a.

Transcript:

Ελάχιστο Συνδετικό Δέντρο Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο Ελάχιστο Συνδετικό Δέντρο (MST) Συνεκτικό μη-κατευθ. G(V, E, w) με βάρη Βάρος υπογραφήματος Ζητούμενο: ελάχιστου βάρους συνεκτικό υπογράφημα που καλύπτει όλες τις κορυφές. Συνεκτικό (εξ ορισμού) + ακυκλικό (ελάχιστο) Δέντρο. Minimum Spanning Tree (MST, ΕΣΔ). Πρόβλημα συνδυαστ. βελτιστοποίησης με πολλές και σημαντικές εφαρμογές. Σχεδιασμός συνδετικού δικτύου (οδικού, τηλεπ/κου, ηλεκτρικού) με ελάχιστο κόστος. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο 0 0 Δέντρα: Βασικές Ιδιότητες Τομές, Σύνολα Τομής, και ΕΣΔ Δέντρο: συνεκτικό και ακυκλικό γράφημα. Για κάθε απλό μη-κατευθ. γράφημα T(V, E), τα παρακάτω είναι ισοδύναμα: T δέντρο. Κάθε ζευγάρι κορυφών ενώνεται με μοναδικό μονοπάτι. T συνεκτικό και E = V. T ακυκλικό και E = V. T ελαχιστοτικά συνεκτικό. T μεγιστοτικά ακυκλικό. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Τομή (S, V \ S): διαμέριση κορυφών σε σύνολα S, V \ S. Σύνολο τομής δ(s, V \ S): ακμές ένα άκρο στο S και άλλο άκρο στο V \ S. δ(s, V \ S): όλες οι ακμές που διασχίζουν τομή (S, V \ S). Σύνολο ακμών E διασχίζει τομή (S, V \ S) αν Ε δ(s, V \ S). (Ε)ΣΔ ορίζεται από σύνολο ακμών 0 (ελάχιστου) βάρους που διασχίζει όλες τις τομές. 0 Άπληστη στρατηγική: ενόσω «αγεφύρωτη» τομή, διέσχισέ την με ακμή ελάχιστου βάρους. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο

(Άπληστος) Υπολογισμός ΕΣΔ Άπληστος Αλγόριθμος για ΕΣΔ Έστω Τ(V, E Τ ) ΕΣΔ για G(V, E, w). Αφαιρώντας ακμή e από Ε Τ προκύπτουν δύο συνεκτικές συνιστώσες, έστω S και V \ S αντίστοιχα σύνολα κορυφών. G S και G V \ S αντίστοιχα επαγόμενα υπογραφήματα, και T S και T V \ S αντίστοιχα υποδέντρα. Αρχή βελτιστότητας: Τ S αποτελεί ΕΣΔ για G S και T V \ S αποτελεί ΕΣΔ για G V \ S. Ιδιότητα άπληστης επιλογής: e είναι μια ελάχιστου βάρους ακμή που διασχίζει τομή (S, V \ S). Άπληστος αλγόριθμος για ΕΣΔ! 0 0 Έστω Δδάσος(σύνολο ακμών χωρίς κύκλους). Ακμή e Δ είναι ακμή επαύξησης για Δ αν: e διασχίζει μια τομή (S, V \ S) που δεν διασχίζει το Δ, και e είναι ελάχιστου βάρους μεταξύ ακμών δ(s, V \ S). Ακμή επαύξησης για δάσος Δ συνιστά άπληστη επιλογή που σε V - βήματα οδηγεί σε ΕΣΔ: Αν Δδάσοςκαι e ακμή επαύξησης Δ, Δ {e}δάσος. e δεν δημιουργεί κύκλο. Αν Δ ΕΣΔ και e ακμή επαύξησης Δ, Δ {e} ΕΣΔ. 0 0 Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Άπληστη Επιλογή: Ορθότητα Άπληστος Αλγόριθμος για ΕΣΔ Έστω δάσος Δ ΕΣΔ και e = {u, v} ακμή επαύξησης Δ. Τότε Δ {e } ΕΣΔ. (S, V \ S) τομή που δεν διασχίζει Δ και διασχίζει ηακμήe. e ελάχιστου βάρους μεταξύ ακμών του δ(s, V \ S). Έστω Τ ΕΣΔ τ.ω. Δ Τ. Υποθέτουμε ότι Έστω p μονοπάτι u v στο Τ, και e = {x, y} ακμή Τ που διασχίζει (S, V \ S). Αφού w(e) w(e ), και το είναι ΕΣΔ: Επιπλέον, Αρχικά Δ = δάσος και υποσύνολο κάθε ΕΣΔ. Επαγωγικά, e ακμή επαύξησης για Δ: Δ { e } δάσος και υποσύνολο κάποιου ΕΣΔ. Όταν Δ = V, Δδέντρο, άρα και ΕΣΔ. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο

Αλγόριθμος Kruskal Αλγόριθμος Kruskal: Παράδειγμα Υλοποίηση: κύκλος στο Δ {e i } ελέγχεται με Union-Find. Χρόνος εκτέλεσης: Θ(mlogm). Ορθότητα: αν e i προστεθεί τότε ακμή επαύξησης για Δ: Όχι κύκλος, άρα e i διασχίζει μια τομή που δεν διασχίζει το Δ. Αύξουσα σειρά βάρους: e i ελάχιστου βάρους (πρώτη που ελέγχεται) απόόσεςακμέςδιασχίζουν συγκεκριμένη τομή. 0 0 Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο 0 Αλγόριθμος Prim Αλγόριθμος Prim: Παράδειγμα Υλοποίηση: Ελάχιστο c[v]: ουρά προτεραιότητας. Binary heap: Θ(mlogn) Fibonacci heap: Θ(m+nlogn) Ορθότητα: {v, p[v]} αποτελεί ακμή επαύξησης: Διασχίζει τομή (S, V \ S). Ελάχιστου βάρους μεταξύ ακμών του δ(s, V \ S). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο

Κανόνες Σχηματισμού ΕΣΔ Αλγόριθμος Boruvka Ακμή e που για κάποια τομή (S, V \ S), αποτελεί ελάχιστου βάρους ακμή που διασχίζει τομή (S, V \ S): e ανήκει σε κάποιο ΕΣΔ. Γρήγορη επιλογή τέτοιων ακμών χωρίς κύκλους, και ένταξη σε ΕΣΔ. Ακμή e που για κάποιον κύκλο C αποτελεί μέγιστου βάρους ακμή κύκλου C: Αν βάρος e μεγαλύτερο από βάρος άλλων ακμών του C, e δεν ανήκει σε κανένα ΕΣΔ. Αν όλες οι ακμές του C έχουν ίδιο βάρος, e δεν ανήκει σε κάποιο ΕΣΔ. Ενόσω υπάρχει κύκλος C, αποκλεισμός (μιας) βαρύτερης ακμής C. «Παράλληλη» εκδοχή γενικού άπληστου αλγόριθμου. Αρχικά κάθε κορυφή αποτελεί μία συνεκτική συνιστώσα. Φάση: ενόσω #συνεκτικών συνιστωσών > : Κάθε συνεκτική συνιστώσα σ επιλέγει στο ΕΣΔ την ελαφρύτερη ακμή με ένα άκρο στο σ (ακμή επαύξησης). Μια ακμή μπορεί να επιλεγεί και από τα δύο άκρα της. Απαραίτητη ολική διάταξη των ακμών, διαφορετικά μπορεί να σχηματιστούν κύκλοι. Συνεκτικές συνιστώσες ενημερώνονται με βάση ακμές που επιλέχθηκαν στην τρέχουσα φάση. Αν υπάρχει ολική διάταξη ακμών, υπολογίζει ΕΣΔ. Κάθε ακμή που επιλέγεται, αποτελεί ακμή επαύξησης: ελάχιστου βάρους ακμή που διασχίζει μία τομή. Όχι κύκλοι: μοναδική ελαφρύτερη ακμή διασχίζει κάθε τομή. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Αλγόριθμος Boruvka: Παράδειγμα Αλγόριθμος Boruvka b 0 a b a b 0 c a d (Ακολουθιακή) υλοποίηση σε O(m log n). Κάθε φάση σε χρόνο Ο(m) με δύο περάσματα των ακμών. ο πέρασμα βρίσκει ελαφρύτερη ακμή κάθε συνιστώσας. Διαδοχικά find, σημειώνονται ακμές στην ίδιας συνιστώσα. ο πέρασμα εντάσσει ελαφρύτερες ακμές στο ΕΣΔ και ενημερώνει συνιστώσες με αντίστοιχα union. Σε κάθε φάση, #συνιστωσών μειώνεται στο μισό. #φάσεων = O(logn). Πολλοί σύγχρονοι αλγόριθμοι (σχεδόν) γραμμικού χρόνου βασίζονται σε ιδέα Boruvka. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο

Συζήτηση Ασκήσεις Έστω γράφημα G με διαφορετικά βάρη στις ακμές. Νδο κάθε ΕΣΔ του G περιέχει την ακμή ελάχιστου βάρους. Νδο G έχει μοναδικό ΕΣΔ. Αληθεύει ότι η μέγιστου βάρους δεν ανήκει στο ΕΣΔ; Έστω γράφημα G με κύκλο C. Νδο η ακμή μέγιστου βάρους του C δεν ανήκει σε κανένα ΕΣΔ του G(εφόσον το βάρος της είναι μεγαλύτερο από αυτών των υπολοίπων). Έστω T ΕΣΔ για γράφημα G(V, E, w). Να δείξετε ότι Τ παραμένει ΕΣΔ για G(V, E, w/). Αληθεύει ότι το Τ παραμένει ΕΣΔ για G(V, E, w+k); Συζήτηση Ασκήσεις Υπολογισμός ΕΣΔ Τ υπό περιορισμούς ότι κάποιες ακμές πρέπει να (μην) ανήκουν στο Τ; Υπολογισμός ΣΔ Τ με δεύτερο μικρότερο βάρος; Bottleneck κόστος ΣΔ Τ: Υπολογισμός ΣΔ με ελάχιστο bottleneck κόστος; Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 00) Ελάχιστο Συνδετικό Δέντρο