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

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Γραφήματα & Επίπεδα Γραφήματα
Advertisements

Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Επίπεδα Γραφήματα (planar graphs)
1 Στοιχεία Θεωρίας Συνόλων Πολυσύνολα. 2 Εισαγωγή •Σύνολο είναι μία συλλογή διακεκριμένων αντικειμένων •Ωστόσο, υπάρχουν περιπτώσεις στις οποίες συναντάμε.
ΣΤΟΙΧΕΙΑ ΨΕΥΔΟΚΩΔΙΚΑ ΒΑΣΙΚΕΣ ΔΟΜΕΣ ΒΑΣΙΚΟΙ ΑΛΓΟΡΙΘΜΟΙ ΠΙΝΑΚΩΝ
Διακριτά Μαθηματικά ΙI Δέντρα
Επίπεδα Γραφήματα : Προβλήματα και Υπολογιστική Πολυπλοκότητα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA.
Πολυπλοκότητα Παράμετροι της αποδοτικότητας ενός αλγόριθμου:
Σελίδα 1 ΕΚΠΑ. «Διαμόρφωση υπηρεσίας καταλόγου Active Directory σε Windows 2003» Τηλέμαχος Ράπτης Εθνικό και Καποδιστριακό.
Εισαγωγικές Έννοιες Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Επιλογή Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο.
Γραφήματα & Επίπεδα Γραφήματα
Διαίρει και Βασίλευε πρόβλημα μεγέθους Ν διάσπαση πρόβλημα μεγέθους Ν-k πρόβλημα μεγέθους k.
Επικαλύπτοντα Δέντρα και Σύνολα Τομής
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Συναρτησιακές Εξαρτήσεις.
Κοντινότεροι Κοινοί Πρόγονοι α βγ θ δεζ η π ν ι κλμ ρσ τ κκπ(λ,ι)=α, κκπ(τ,σ)=ν, κκπ(λ,π)=η κκπ(π,σ)=γ, κκπ(ξ,ο)=κ ξο κκπ(ι,ξ)=β, κκπ(τ,θ)=θ, κκπ(ο,μ)=α.
Διαίρει-και-Βασίλευε
Δυναμικός Προγραμματισμός
1 Θεματική Ενότητα Γραφήματα & Επίπεδα Γραφήματα.
Προσεγγιστικοί Αλγόριθμοι
Μέγιστη ροή TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Συνάρτηση χωρητικότητας Κατευθυνόμενο γράφημα.
Τυχαιοκρατικοί Αλγόριθμοι TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA Πιθανότητες και Αλγόριθμοι Ανάλυση μέσης.
Ελαφρύτατες διαδρομές TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Συνάρτηση βάρους Κατευθυνόμενο γράφημα.
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
ΜΑΘΗΜΑ: ΣΧΕΔΙΑΣΗ ΑΛΓΟΡΙΘΜΩΝ ΔΙΔΑΣΚΩΝ: Π. ΚΑΤΣΑΡΟΣ Δευτέρα, 12 Ιανουαρίου 2015Δευτέρα, 12 Ιανουαρίου 2015Δευτέρα, 12 Ιανουαρίου 2015Δευτέρα, 12 Ιανουαρίου.
Αλγόριθμοι και Πολυπλοκότητα
Γράφοι: Προβλήματα και Αλγόριθμοι
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι12-1 Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ο αλγόριθμος του Prim και ο αλγόριθμος του Kruskal.
Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο1 Άπληστοι αλγόριθμοι βελτιστοποίησης Προβλήματα βελτιστοποίησης λύνονται με μια σειρά επιλογών.
Προσεγγιστικοί Αλγόριθμοι για NP-Δύσκολα Προβλήματα
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Ουρά Προτεραιότητας: Heap
Συντομότερες Διαδρομές
Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης
Μηχανές Turing και Υπολογισιμότητα
ΠΡΟΒΛΗΜΑΤΑ ΡΟΩΝ ΣΕ ΔΙΚΤΥΑ (κατευθυνομενα γραφηματα)
Εξόρυξη Δεδομένων και Αλγόριθμοι Μάθησης. K-means k-windows k-means: 2 φάσεις 1. Μια διαμέριση των στοιχείων σε k clusters 2. Η ποιότητα της διαμέρισης.
Ελαφρύτατες διαδρομές TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A.
Βάσεις Δεδομένων Ευαγγελία Πιτουρά 1 Σχεσιακό Μοντέλο.
Επίπεδα Γραφήματα: Έλεγχος Επιπεδότητας TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A αβ ζ η ε γ θ Το γράφημα.
1 Βάσεις Δεδομένων ΙI Επιμέλεια: ΘΟΔΩΡΗΣ ΜΑΝΑΒΗΣ SQL (3 από 3) T Manavis.
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 4: Συνδεσμικότητα Data Engineering Lab 1.
Υπολογιστική Πολυπλοκότητα Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό.
Λεξικό, Union – Find Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Αναζήτηση Κατά Βάθος Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο.
Quicksort Διδάσκοντες: Σ. Ζάχος, Δ. Φωτάκης Επιμέλεια διαφανειών: Δ. Φωτάκης Σχολή Ηλεκτρολόγων Μηχανικών και Μηχανικών Υπολογιστών Εθνικό Μετσόβιο Πολυτεχνείο.
1 Κατανεμημένοι αλγόριθμοι για την εύρεση γεννητικών δέντρων (spanning trees) 1.Ένας σταθερός κόμβος στέλνει ένα ‘start’ μήνυμα σε κάθε γειτονική του ακμή.
Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Ενότητα 4 Δ ΕΝΔΡΑ Σταύρος Δ. Νικολόπουλος 1.
Μέγιστη ροή TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Συνάρτηση χωρητικότητας Κατευθυνόμενο γράφημα.
Ασυμπτωτικός Συμβολισμός
ΕΠΛ 231 – Δομές Δεδομένων και Αλγόριθμοι13-1 Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Ο αλγόριθμος Dijkstra για εύρεση βραχυτέρων μονοπατιών.
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές TSP, Μέτρα κεντρικότητας, Dijkstra Data Engineering Lab.
Ελαφρύτατες διαδρομές TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A.
Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Μέγιστη ροή TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A AA A A Συνάρτηση χωρητικότητας Κατευθυνόμενο γράφημα.
Γράφημα είναι μία διμελής σχέση επί ενός συνόλου την οποία παριστάνουμε με γραφικό τρόπο.
Γράφημα Συνδυαστικό αντικείμενο που αποτελείται από 2 σύνολα:
ΕΥΡΕΣΗ ΕΛΑΧΙΣΤΩΝ ΜΟΝΟΠΑΤΙΩΝ & ΚΑΤΗΓΟΡΙΕΣ ΑΛΓΟΡΙΘΜΩΝ
Δένδρα Δένδρο είναι ένα συνεκτικό άκυκλο γράφημα. Δένδρο Δένδρο Δένδρο
Μέγιστη ροή Κατευθυνόμενο γράφημα 12 Συνάρτηση χωρητικότητας
Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ - Κεφάλαιο 9ο
Μέγιστη ροή Κατευθυνόμενο γράφημα 12 Συνάρτηση χωρητικότητας
Επικαλύπτοντα Δέντρα και Σύνολα Τομής
Συντομότερα Μονοπάτια
ΣΤΟΙΧΕΙΑ ΘΕΩΡΙΑΣ ΓΡΑΦΗΜΑΤΩΝ II
Προβλήματα Μεταφοράς: Παραδείγματα και Εφαρμογές
Στοιχεία Χωρικής Πολυπλοκότητας
Μεταγράφημα παρουσίασης:

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

Ελάχιστο Συνδετικό Δέντρο (MST) Συνεκτικό μη-κατευθ. G(V, E, w) με βάρη Βάρος υπογραφήματος Ζητούμενο: ελάχιστου βάρους συνεκτικό υπογράφημα που καλύπτει όλες τις κορυφές. Συνεκτικό (εξ’ ορισμού) + ακυκλικό (ελάχιστο)  Δέντρο. Minimum Spanning Tree (MST, ΕΣΔ). Πρόβλημα συνδυαστ. βελτιστοποίησης με πολλές και σημαντικές εφαρμογές. Σχεδιασμός συνδετικού δικτύου (οδικού, τηλεπ/κου, ηλεκτρικού) με ελάχιστο κόστος. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Δέντρα: Βασικές Ιδιότητες Δέντρο: συνεκτικό και ακυκλικό γράφημα. Για κάθε απλό μη-κατευθ. γράφημα T(V, E), τα παρακάτω είναι ισοδύναμα: T δέντρο. Κάθε ζευγάρι κορυφών ενώνεται με μοναδικό μονοπάτι. T συνεκτικό και |E| = |V| – 1. T ακυκλικό και |E| = |V| – 1. T ελαχιστικά συνεκτικό. T μεγιστικά ακυκλικό. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Τομές, Σύνολα Τομής, και ΕΣΔ Τομή (S, V \ S): διαμέριση κορυφών σε 2 σύνολα S, V \ S. Σύνολο τομής δ(S, V \ S): ακμές ένα άκρο στο S και άλλο άκρο στο V \ S. δ(S, V \ S): όλες οι ακμές που διασχίζουν τομή (S, V \ S). Σύνολο ακμών E’ διασχίζει τομή (S, V \ S) αν Ε’  δ(S, V \ S)  . (Ε)ΣΔ ορίζεται από σύνολο ακμών (ελάχιστου) βάρους που διασχίζει όλες τις τομές. Άπληστη στρατηγική: ενόσω «αγεφύρωτη» τομή, διέσχισέ την με ακμή ελάχιστου βάρους. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

(Άπληστος) Υπολογισμός ΕΣΔ Έστω Τ(V, EΤ) ΕΣΔ για G(V, E, w). Αφαιρώντας ακμή e από ΕΤ προκύπτουν δύο συνεκτικές συνιστώσες, έστω S και V \ S αντίστοιχα σύνολα κορυφών. GS και GV \ S αντίστοιχα επαγόμενα υπογραφήματα, και TS και TV \ S αντίστοιχα υποδέντρα. Αρχή βελτιστότητας: ΤS αποτελεί ΕΣΔ για GS και TV \ S αποτελεί ΕΣΔ για GV \ S . Ιδιότητα άπληστης επιλογής: e είναι μια ελάχιστου βάρους ακμή που διασχίζει τομή (S, V \ S). Άπληστος αλγόριθμος για ΕΣΔ! Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Άπληστος Αλγόριθμος για ΕΣΔ Έστω Δ δάσος (σύνολο ακμών χωρίς κύκλους). Ακμή e  Δ είναι ακμή επαύξησης για Δ αν: e διασχίζει μια τομή (S, V \ S) που δεν διασχίζει το Δ, και e είναι ελάχιστου βάρους μεταξύ ακμών δ(S, V \ S). Ακμή επαύξησης για δάσος Δ συνιστά άπληστη επιλογή που σε |V|-1 βήματα οδηγεί σε ΕΣΔ: Αν Δ δάσος και e ακμή επαύξησης Δ, Δ  { e } δάσος. e δεν δημιουργεί κύκλο. Αν Δ  ΕΣΔ και e ακμή επαύξησης Δ, Δ  { e }  ΕΣΔ. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011)

Άπληστη Επιλογή: Ορθότητα Έστω δάσος Δ  ΕΣΔ και 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’  Δ. Άρα ... και Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011)

Άπληστος Αλγόριθμος για ΕΣΔ Αρχικά Δ =  δάσος και υποσύνολο κάθε ΕΣΔ. Επαγωγικά, e ακμή επαύξησης για Δ: Δ  { e } δάσος και υποσύνολο κάποιου ΕΣΔ. Όταν |Δ| = |V| – 1, Δ δέντρο, άρα και ΕΣΔ. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Αλγόριθμος Kruskal Υλοποίηση: κύκλος στο Δ  {ei } ελέγχεται με Union-Find. Χρόνος εκτέλεσης: Θ(m log m). Ορθότητα: αν ei προστεθεί τότε ακμή επαύξησης για Δ: Όχι κύκλος, άρα ei διασχίζει μια τομή που δεν διασχίζει το Δ. Αύξουσα σειρά βάρους: ei ελάχιστου βάρους (πρώτη που ελέγχεται) από όσες ακμές διασχίζουν συγκεκριμένη τομή. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Αλγόριθμος Kruskal: Παράδειγμα Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Αλγόριθμος Prim: Παράδειγμα Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Αλγόριθμος Prim Υλοποίηση: Ορθότητα: Ελάχιστο c[v]: ουρά προτεραιότητας. Binary heap: Θ(m log n) Fibonacci heap: Θ(m + n log n) Ορθότητα: {v, p[v]} αποτελεί ακμή επαύξησης: Διασχίζει τομή (S, V \ S). Ελάχιστου βάρους μεταξύ ακμών του δ(S, V \ S). Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Κανόνες Σχηματισμού ΕΣΔ Ακμή e που για κάποια τομή (S, V \ S), αποτελεί ελάχιστου βάρους ακμή που διασχίζει τομή (S, V \ S): e ανήκει σε κάποιο ΕΣΔ. Γρήγορη επιλογή τέτοιων ακμών χωρίς κύκλους, και ένταξη σε ΕΣΔ. Ακμή e που για κάποιον κύκλο C αποτελεί μέγιστου βάρους ακμή κύκλου C: Αν βάρος e μεγαλύτερο από βάρος άλλων ακμών του C, e δεν ανήκει σε κανένα ΕΣΔ. Αν όλες οι ακμές του C έχουν ίδιο βάρος, e δεν ανήκει σε κάποιο ΕΣΔ. Ενόσω υπάρχει κύκλος C, αποκλεισμός (μιας) βαρύτερης ακμής C. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Αλγόριθμος Boruvka «Παράλληλη» εκδοχή γενικού άπληστου αλγόριθμου. Αρχικά κάθε κορυφή αποτελεί μία συνεκτική συνιστώσα. Φάση: ενόσω #συνεκτικών συνιστωσών > 1: Κάθε συνεκτική συνιστώσα σ επιλέγει στο ΕΣΔ την ελαφρύτερη ακμή με ένα άκρο στο σ (ακμή επαύξησης). Μια ακμή μπορεί να επιλεγεί και από τα δύο άκρα της. Απαραίτητη ολική διάταξη των ακμών (χωρίς ισοπαλίες), διαφορετικά μπορεί να σχηματιστούν κύκλοι. Συνεκτικές συνιστώσες ενημερώνονται με βάση ακμές που επιλέχθηκαν στην τρέχουσα φάση. Ολική διάταξη ακμών (χωρίς ισοπαλίες): υπολογίζει ΕΣΔ. Κάθε ακμή που επιλέγεται, αποτελεί ακμή επαύξησης: ελάχιστου βάρους ακμή που διασχίζει μία τομή. Όχι κύκλοι: μοναδική ελαφρύτερη ακμή διασχίζει κάθε τομή. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Αλγόριθμος Boruvka: Παράδειγμα Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

Αλγόριθμος Boruvka (Ακολουθιακή) υλοποίηση σε O(m log n). 1ο πέρασμα βρίσκει ελαφρύτερη ακμή κάθε συνιστώσας. Διαδοχικά find, σημειώνονται ακμές στην ίδια συνιστώσα. 2ο πέρασμα εντάσσει ελαφρύτερες ακμές στο ΕΣΔ και ενημερώνει συνιστώσες με αντίστοιχα union. Σε κάθε φάση, #συνιστωσών μειώνεται στο μισό. #φάσεων = O(log n). Πολλοί σύγχρονοι αλγόριθμοι (σχεδόν) γραμμικού χρόνου βασίζονται σε ιδέα Boruvka. Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο

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

Συζήτηση – Ασκήσεις Υπολογισμός ΕΣΔ Τ υπό περιορισμούς ότι κάποιες ακμές πρέπει να (μην) ανήκουν στο Τ; Υπολογισμός ΣΔ Τ με δεύτερο μικρότερο βάρος; Bottleneck κόστος ΣΔ Τ: Υπολογισμός ΣΔ με ελάχιστο bottleneck κόστος; Αλγόριθμοι & Πολυπλοκότητα (Χειμώνας 2011) Ελάχιστο Συνδετικό Δέντρο