Θεωρία & Αλγόριθμοι Γράφων Δένδρα

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Γράφοι: Προβλήματα και Αλγόριθμοι
Advertisements

Σχεδιαση Αλγοριθμων - Τμημα Πληροφορικης ΑΠΘ - Κεφαλαιο 9ο1 Άπληστοι αλγόριθμοι βελτιστοποίησης Προβλήματα βελτιστοποίησης λύνονται με μια σειρά επιλογών.
Ελάχιστο Συνδετικό Δέντρο
Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Ενότητα 8 Τ ΕΛΕΙΑ Γ ΡΑΦΗΜΑΤΑ Σταύρος Δ. Νικολόπουλος 1.
Θεωρία Γραφημάτων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές
Δένδρα ΘΕΩΡΙΑ ΓΡΑΦΩΝ Εργαστήριο Τεχνολογίας & Επεξεργασίας Δεδομένων Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 3: Δένδρα.
Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές TSP, Μέτρα κεντρικότητας, Dijkstra Data Engineering Lab.
Δομές ΔεδομένωνΤμήμα Πληροφορικής ΑΠΘ1 Δομές Δεδομένων - DFS σε κατευθυνόμενο γράφο - Ελάχιστα Μονοπάτια - Τοπολογική Ταξινόμηση - Eλάχιστα Ζευγνύοντα.
Data Engineering Lab Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 3: Δένδρα 1.
Προσομοίωση Δικτύων 2n Άσκηση Δημιουργία, διαμόρφωση μελέτη επικοινωνιακών ζεύξεων.
Προσομοίωση Δικτύων 4η Άσκηση Σύνθετες τοπολογίες, διακοπή συνδέσεων, δυναμική δρομολόγηση.
ΜΥΥ105: Εισαγωγή στον Προγραμματισμό Έλεγχος Ροής - Παραδείγματα Χειμερινό Εξάμηνο 2015.
Το Θέρμο είναι κωμό- πολη της Αιτωλοακα- ρνανίας με επίσημο πληθυσμό κα- τοίκων.
ΑΝΑΚΥΚΛΩΣΗ ΕΜΙΛΗ ΚΑΙ ΔΙΟΝΥΣΙΑ Ε2. Ποια είναι τα σκουπίδια που πετάμε πιο συχνά και από τι υλικό είναι φτιαγμένα; ΧΑΡΤΙ ΜΕΤΑΛΟ ΑΛΟΥΜΙΝΙΟ ΓΥΑΛΙ ΠΛΑΣΤΙΚΟ.
Σχεδιασμός των Μεταφορών Ενότητα #8: Μοντέλα γένεσης των μετακινήσεων. Generation models. Δρ. Ναθαναήλ Ευτυχία Πολυτεχνική Σχολή Τμήμα Πολιτικών Μηχανικών.
Ανακαλύπτοντας την Πληροφορική: Βάσεις Δεδομένων Γεώργιος Χατζημηλιούδης Ειδικός Επιστήμονας 8 Οκτωβρίου 2015.
Minimum Spanning Trees1 “Ελάχιστα” συνδετικά δέντρα JFK BOS MIA ORD LAX DFW SFO BWI PVD
Ιλιάδα Μονομαχίες. Μονομαχία:Πάρη και Μενέλαου Ο Πάρης προβάλει απο το Τρωικό στράτευμα εναντίον του Μενέλαου.Πρίν την μονομαχία ο Πάρης κυριεύεται από.
ΔΙΑΛΕΞΗ 9η Οργανωτική Δομή και Ανάλυση Γραφειοκρατία Οργανογράμματα
Βασικές Έννοιες της Πληροφορικής
ΠΑΡΟΥΣΙΑΣΗ ΠΤΥΧΙΑΚΗΣ ΕΡΓΑΣΙΑΣ ΜΕ ΤΙΤΛΟ: «Ανάλυση του προβλήματος του περιπλανώμενου πωλητή και Υλοποίηση μεθόδων επίλυσης και βελτιστοποίησης ανάθεσης.
Αρχιτεκτονικη & Γεωμετρια του Παρθενωνα
Ανανεώσιμες Πηγές Ενέργειας
Θεωρία & Αλγόριθμοι Γράφων
Β. Μάγκλαρης 9/11/2015 ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ Αρχιτεκτονικές & Πρωτόκολλα Δρομολόγησης στο Internet (I) Επίπεδο.
Θεωρία Γραφημάτων Ενότητα 9 Μετασχηματισμοί Υπολογιστικών Προβλημάτων
Δρομολόγηση (routing) σε δίκτυα
Θεωρία & Αλγόριθμοι Γράφων Αλγόριθμοι Επιπεδικότητας
Αλγόριθμοι Ταξινόμησης – Μέρος 3
Θεωρία & Αλγόριθμοι Γράφων Αντιστοιχίσεις και Καλύμματα
ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ & ΑΡΧΕΙΩΝ
Περιορισμοί Αλγοριθμικής Ισχύος – Κατηγοριοποίηση πολυπλοκοτήτων
«ΑΣΚΗΣΗ 1» Κατά την διάρκεια της χρονικής περιόδου οι ετήσιοι αριθμοί θανάτων από καρκίνο στις Ηνωμένες Πολιτείες από ανήλθαν στις ,
Μακροοικονομία Διάλεξη 9.
Αλγόριθμοι - Τμήμα Πληροφορικής ΑΠΘ - Κεφάλαιο 9ο
Αν δεν υπάρχουν κορυφές περιττού βαθμού ο έλεγχος στο 7.
Θεωρία & Αλγόριθμοι Γράφων Επιπεδικότητα
Χωρικοί-χρονικοί συμβιβασμοί
ΘΕΩΡΙΑ ΤΗΣ ΠΕΡΙΛΗΨΗΣ Α΄ΛΥΚΕΙΟΥ
Aλγόριθμος Floyd Βρίσκει τα μήκη των συντομότερων μονοπατιών για κάθε ζεύγος κορυφών ενός προσανατολισμένου γραφήματος με βάρη. Βασική Ιδέα του Αλγόριθμου.
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Ο Υπολογιστής και η Επεξεργασία των Δεδομένων
ΑΝΑΛΥΣΗ ΛΕΥΚΟΥ ΦΩΤΟΣ -ΧΡΩΜΑΤΑ
Ειδικά θέματα σε κινητά και ασύρματα δίκτυα
ΟΜΑΔΑ Α΄ Φύλλο εργασίας
Εισαγωγή στις Βάσεις Δεδομένων
Β. Μάγκλαρης 2/11/2015 ΔΙΑΧΕΙΡΙΣΗ ΔΙΚΤΥΩΝ Δρομολόγηση στο Internet (II) Αλγόριθμοι Distance Vector (Bellman)
ΤΟ ΠΡΟΤΥΠΟ ΤΟΥ ΚΑΝΟΝΙΚΟΥ ΟΜΗΛΙΚΟΥ ΔΑΣΟΥΣ
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: Ο Υπολογιστής και η Επεξεργασία των Δεδομένων
Σχολικός εκφοβισμός στη Δευτεροβάθμια Εκπαίδευση Καραβόλτσου Α
ΕΝΟΤΗΤΑ 1 – Κεφάλαιο 1: ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ ΤΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ
Εισαγωγή στις Βάσεις Δεδομένων
Φοιτητής: Τόντζος Φώτιος ΑΕΜ:(2896)
This story was written in Cyprus by Primary School children.
Σεμινάρια Πληροφορικής
ΔΙΑΧΕΙΡΙΣΗ ΠΕΡΙΕΧΟΜΕΝΟΥ ΠΑΓΚΟΣΜΙΟΥ ΙΣΤΟΥ ΚΑΙ ΓΛΩΣΣΙΚΑ ΕΡΓΑΛΕΙΑ
ΤΕΙ Σερρών Σχολή Διοίκησης & Οικονομίας Τμήμα Διοίκησης Επιχειρήσεων
Find: φ σ3 = 400 [lb/ft2] CD test Δσ = 1,000 [lb/ft2] Sand 34˚ 36˚ 38˚
מעבר אור מתווך שקוף לתווך שקוף
GLY 326 Structural Geology
Find: angle of failure, α
ΜΠΣ: Διοίκηση & Διαχείριση
THIẾT KẾ VÀ ĐÁNH GIÁ THUẬT TOÁN
Find: σ1 [kPa] for CD test at failure
17/2/2019 ΒΑΣΙΚΕΣ ΕΝΝΟΙΕΣ (2) Ενότητα A1.1 β Ο Δάσκαλος.
Τμήμα Πληροφορικής Α.Π.Θ. Παρουσίαση της Κατεύθυνσης
Προοπτικό σχέδιο με 3 σημεία φυγής
გრაფები. ცნებები და განსაზღვრებები.
Διάταξη τίτλου Υπότιτλος.
Προβλήματα Ελάχιστου Κόστους Ροής σε Δίκτυο
Αναζήτηση (Εξερεύνηση) Πρώτα σε Πλάτος
Μεταγράφημα παρουσίασης:

Θεωρία & Αλγόριθμοι Γράφων Δένδρα Θεωρία & Αλγόριθμοι Γράφων Δένδρα Data Science & Engineering Lab

Data Science & Engineering Lab Δένδρα – Cayley Arthur Cayley, 1857 CkH2k+2, πλήθος ισομερών Άτομα άνθρακα : κορυφές βαθμού 4 υδρογόνου : κορυφές βαθμού 1 n=k+2k+2=3k+2 m=½(Σd(v))=½(4k+2k+2)=3k+1 Data Science & Engineering Lab

Πλήθος ισομερών του CkH2k+2 C4H10 Data Science & Engineering Lab

Data Science & Engineering Lab Βασικά θεωρήματα Δένδρα: Συνδεδεμένοι άκυκλοι γράφοι Θεώρημα: Ένας γράφος G είναι δένδρο αν και μόνο αν δύο οποιεσδήποτε κορυφές ενώνονται με ένα μοναδικό μονοπάτι. Θεώρημα: Σε ένα δένδρο Τ ισχύει η σχέση: m=n–1 Πόρισμα: Σε κάθε δένδρο υπάρχουν τουλάχιστον δύο εκκρεμείς κορυφές, δηλαδή κορυφές με βαθμό 1. Data Science & Engineering Lab

Data Science & Engineering Lab Βασικά θεωρήματα (2) Πόρισμα: Μία μη αύξουσα ακολουθία ακεραίων S: d1,d2,…,dn ανήκει σε ένα δένδρο μόνο αν κάθε di είναι θετικός αριθμός και ισχύει η σχέση: Αναγκαία αλλά όχι ικανή συνθήκη Data Science & Engineering Lab

Data Science & Engineering Lab Βασικά θεωρήματα (3) Θεώρημα: Ένας άκυκλος γράφος με n κορυφές και n–1 ακμές είναι συνδεδεμένος. Θεώρημα: Κάθε συνδεδεμένος γράφος με n κορυφές και n–1 ακμές είναι δένδρο. Θεώρημα: Ένας γράφος είναι δένδρο αν είναι συνδεδεμένος κατά ελάχιστο τρόπο. Data Science & Engineering Lab

Data Science & Engineering Lab Ιδιότητες δένδρων Ένας συνδεδεμένος γράφος με n κορυφές είναι δένδρο: αν δεν περιέχει κύκλους αν υπάρχει μόνο 1 μονοπάτι μεταξύ 2 τυχαίων κορυφών αν κάθε ακμή είναι γέφυρα αν αποτελείται από n–1 ακμές αν περιέχει τουλάχιστον 2 κορυφές βαθμού 1 (n≥2) αν παράγεται 1 μόνο κύκλος, αν προθέσουμε 1 ακμή Data Science & Engineering Lab

Data Science & Engineering Lab Ιδιότητες δένδρων (2) Πόρισμα: Δάσος με n κορυφές και k συνιστώσες έχει n–k ακμές. Θεώρημα (Jordan, 1869): Ένα δένδρο έχει κέντρο που αποτελείται από 1 ή 2 κορυφές Πόρισμα: Αν το κέντρο ενός δένδρου αποτελείται από δύο κορυφές, τότε αυτές είναι γειτονικές και ονομάζονται δίκεντρα-bicenters. Data Science & Engineering Lab

Ειδικές κατηγορίες δένδρων Δένδρο-αστακός (lobster): όλες οι κορυφές απέχουν απόσταση ≤2 από ένα κεντρικό μονοπάτι. Δένδρο-κάμπια (caterpillar): όλες οι κορυφές απέχουν απόσταση 1 από ένα κεντρικό μονοπάτι. Βενζενοειδές δένδρο (benzenoid) εφαρμόζεται στη Χημική Θεωρία Γράφων. Θεώρημα: το πλήθος των μη ισομορφικών δένδρων- κάμπια με n>3 κορυφές είναι Data Science & Engineering Lab

Data Science & Engineering Lab Άσκηση Κάθε κορυφή του δένδρου-αστακού χαρακτηρίζεται από την αντίστοιχη εκκεντρικότητα. Να βρεθεί η τιμή της ακτίνας, η τιμή της διαμέτρου και το κέντρο. Data Science & Engineering Lab

Data Science & Engineering Lab Απαρίθμηση δένδρων Θεώρημα: Έστω ότι το άθροισμα των θετικών ακεραίων d1,d2,…,dn (όπου n≥2) είναι 2n–2. Το πλήθος των δένδρων με n κόμβους, όπου οι βαθμοί των κόμβων είναι d1,d2,…,dn, ισούται με: Data Science & Engineering Lab

Data Science & Engineering Lab Απαρίθμηση δένδρων (2) Θεώρημα (Cayley): Το πλήθος των διακριτών δένδρων με επιγραφές και n≥2 κορυφές είναι nn–2 Απόδειξη Cayley: Επιγράφουμε τους κόμβους του δένδρου με 1,2,...,n. Βρίσκουμε την εκκρεμή ακμή με τη μικρότερη επιγραφή, έστω a1. Τη διαγράφουμε και έστω b1 η γειτονική της. Επαναλαμβάνουμε τη διαδικασία στον υπογράφο που μένει. Έτσι, μετά από n–2 διαγραφές, το δένδρο εκφυλίζεται σε μία ακμή, και έχουμε δημιουργήσει S: (b1, b2, ..., bn-2). Κάθε στοιχείο της ακολουθίας S μπορεί να πάρει τιμές από το διάστημα [1..n] Data Science & Engineering Lab

Data Science & Engineering Lab Παράδειγμα απαρίθμησης (1,4) (2,3) (6,5) (7,3) (3,4) (4,5) και μένει (5,8) 2 3 7 4 5 8 1 6 Data Science & Engineering Lab

Data Science & Engineering Lab Μέθοδος Pruefer (1918) Η μέθοδος Pruefer είναι μία μέθοδος ανακατασκευής του δένδρου με βάση την ακολουθία S που προκύπτει από το προηγούμενο θεώρημα. Η ακολουθία S πρέπει να αποτελείται από n–2 ακεραίους στο διάστημα [1..n]. Κωδικοποίηση Pruefer. Πολυπλοκότητα? Data Science & Engineering Lab

Aνακατασκευή δένδρου από επιγραφές Αντιστρόφως απόδειξης Cayley. Έστω n=8 και b=4,3,5,3,4,5. Αναζητείται ο μικρότερος αριθμός από το διάστημα [1,8], που δεν εμφανίζεται στην ακολουθία b. Ο αριθμός αυτός είναι ο a1=1. Έτσι προσδιορίζεται η ακμή (a1, b1)=(1,4). Με τον ίδιο τρόπο προσδιορίζονται οι ακμές (a2, b2)=(2,3), (a3, b3)=(6,5), (a4,b4)= (7,3), (a5, b5)=(3,4) και (a6, b6)=(4,5). Στο τέλος ενώνεται η μη χρησιμοποιημένη (5) με τη μέγιστη επιγραφή (8) 2 3 7 4 5 8 1 6 Data Science & Engineering Lab

Data Science & Engineering Lab Αποκωδικοποίηση Pruefer Πολυπλο-κότητα? Data Science & Engineering Lab

Data Science & Engineering Lab Ριζωμένα δένδρα Θεώρημα: Ο αριθμός των διακριτών ριζωμένων δένδρων με επιγραφές που έχει n κορυφές είναι nn-1. Ισομορφικά δένδρα μπορεί να είναι αλλά μπορεί και να μην είναι ισομορφικά ως ριζωμένα. Data Science & Engineering Lab

Data Science & Engineering Lab Ζευγνύοντα δένδρα Από κάθε συνδεδεμένο γράφο G(V,E) μπορούν να παραχθούν 2|Ε| διαφορετικοί υπογράφοι με V κορυφές. Ζευγνύον δένδρο - spanning tree, ενός συνδεδεμένου γράφου G ονομάζεται ένα δένδρο Τ που είναι υπογράφος του G με σύνολο κορυφών V(T)=V(G). Σκελετός-skeleton, σκαλωσιά-scaffolding, μέγιστο δένδρο-maximal tree Οι ακμές ενός ζευγνύοντος δένδρου Τ ενός γράφου G ονομάζονται κλαδιά-branches. Οι ακμές του G που δεν είναι κλαδιά ονομάζονται χορδές-chords. Ο αριθμός των κλαδιών ενός ζευγνύοντος δένδρου ισούται με τη σειρά του γράφου G, ενώ ο αριθμός των χορδών του γράφου ισούται με τη μηδενικότητά του. Data Science & Engineering Lab

Data Science & Engineering Lab Άσκηση Έστω ηλεκτρικό κύκλωμα που απεικονίζεται με ένα γράφο από n κορυφές και m ακμές. Ποιος είναι ο ελάχιστος αριθμός ακμών που πρέπει να διαγράψουμε, έτσι ώστε να μην υπάρχει ρεύμα στο κύκλωμα; Απάντηση: Ο αριθμός των χορδών m–n+1. Data Science & Engineering Lab

Θεωρήματα για ζευγνύοντα δένδρα Θεώρημα: Κάθε συνδεδεμένος γράφος έχει τουλάχιστον ένα ζευγνύον δένδρο. Θεώρημα: Αν σε γράφο G ισχύει d(G)≥k και ο γράφος Τ είναι δένδρο με k+1 κορυφές, τότε το Τ είναι ζευγνύον δένδρο του G. Data Science & Engineering Lab

Απαρίθμηση ζευγνυόντων δένδρων Ζευγνύοντα δένδρα του Κ4 Πόσα είναι τα ισομορφικά? Απόδειξη Data Science & Engineering Lab

Θεωρήματα απαρίθμησης Πόσα ζευγνύοντα δένδρα μπορούν να προκύψουν από ένα συνδεδεμένο γράφο; Θεώρημα: Ο αριθμός των διακριτών ζευγνυόντων δένδρων ενός πλήρους γράφου Κn είναι nn-2. Θεώρημα: Ο αριθμός των διακριτών ζευγνυόντων δένδρων ενός πλήρους διμερούς γράφου Km,n είναι mn-1nm-1. Data Science & Engineering Lab

Data Science & Engineering Lab Θεωρήματα απαρίθμησης (2) Θεώρημα: Ο αριθμός των διακριτών ζευγνυόντων δένδρων ενός πλήρους διμερούς γράφου K2,n είναι n2n-1 a x b Data Science & Engineering Lab

Data Science & Engineering Lab Θεωρήματα απαρίθμησης (3) Θεώρημα: Ο αριθμός των διακριτών ζευγνυόντων δένδρων ενός πλήρους διμερούς γράφου K3,n είναι n23n-1 Θεώρημα: Ο αριθμός των διακριτών ζευγνυόντων δένδρων ενός τροχοειδούς γράφου Wn είναι a x b c y z Data Science & Engineering Lab

Data Science & Engineering Lab Επίσης βασικό θεώρημα Θεώρημα. Έστω (G) το πλήθος των ζευγνυόντων δένδρων του γράφου G. Αν η ακμή eE(G) δεν είναι βρόχος, τότε ισχύει (G) = (G–e) + (G·e) e G G·e G–e Data Science & Engineering Lab

Μερικοί ορισμοί για πίνακες Πίνακας βαθμών: C(i,j)=0 για i≠j και C(i,i)=d(vi) για 1≤i≤n. Αν από ένα δισδιάστατο πίνακα Β με nn στοιχεία διαγραφεί η i-οστή γραμμή και η j-οστή στήλη, τότε προκύπτει ένας πίνακας Bij που ονομάζεται ελάσσων- minor στη θέση i,j. Συμπαράγοντας-cofactor του πίνακα B στη θέση i,j λέγεται η τιμή (-1)i+j|Bij| Data Science & Engineering Lab

Θεώρημα πίνακα-δένδρου Kirchoff Matrix-tree theorem Έστω ένας μη ασήμαντος γράφος G με πίνακα γειτνίασης Α και πίνακα βαθμών C. Ο αριθμός των διαφορετικών ζευγνυόντων δένδρων του G ισούται με την τιμή οποιουδήποτε συμπαράγοντα του πίνακα C-A. Ο πίνακας C-A λέγεται Laplacian Data Science & Engineering Lab

Παράδειγμα θεωρήματος Kirchhoff 5 4 1 3 2 24 δένδρα Data Science & Engineering Lab

Data Science & Engineering Lab Θεμελιώδες κύκλωμα Θεμελιώδες κύκλωμα – fundamental circuit, δημιουργείται αν χορδή εισαχθεί σε ζευγνύον δένδρο Ποιό το πλήθος των θεμελιωδών κυκλωμάτων για τυχόν ζευγνύον δένδρο ? Από τυχόν ζευγνύον δένδρο και τυχαία χορδή παράγεται ένα πρώτο θεμελιώδες κύκλωμα. Κατόπιν με κυκλικές εναλλαγές (cyclic interchanges) παράγονται όλα τα ζευγνύοντα δένδρα m–n+1 5 4 1 3 2 5 4 1 3 2 Data Science & Engineering Lab

Data Science & Engineering Lab Κυκλικές εναλλαγές Επιλέγουμε ένα ζευγνύον δένδρο Τ του G Εισάγουμε μια χορδή στο Τ, οπότε παράγεται ένα θεμελιώδες κύκλωμα Ci Διαγράφοντας μία-μία τις ακμές του Ci παράγονται τα Τ1, Τ2,…ΤΚ ζευγνύοντα δέντρα Εισάγουμε νέα χορδή, οπότε παράγεται νέο θεμελιώδες κύκλωμα Ci+1 G T Data Science & Engineering Lab

Data Science & Engineering Lab Απόσταση δένδρων Απόσταση δύο ζευγνυόντων δένδρων ενός συνδεδεμένου γράφου G είναι ο αριθμός των ακμών που ανήκουν στο ένα δένδρο αλλά δεν ανήκουν στο άλλο και δίνεται εξ ορισμού ως dist(Ti, Tj) = dist(Tj, Ti) dist(Ti, Tj) ≥ 0 και dist(Ti, Ti)=0 αν και μόνο αν Ti=Tj dist(Ti, Tj) ≤ dist(Tj, Tk)+ dist(Tk, Tj) Δενδρικός γράφος – tree graph, οι κόμβοι αντιστοιχούν σε ζευγνύονται δένδρα και ενώνονται αν το ένα προκύπτει από το άλλο με κυκλική εναλλαγή. Η απόσταση δύο ζευγνυόντων δένδρων ισούται με την απόσταση των αντίστοιχων κόμβων στο δενδρικό γράφο. Data Science & Engineering Lab

Data Science & Engineering Lab Απόσταση δένδρων (2) Θεώρημα: Η μέγιστη απόσταση μεταξύ δύο ζευγνυόντων δένδρων Ti και Tj ενός συνδεδεμένου γράφου G(V,E) είναι: Κεντρικό λέγεται ένα ζευγνύον δένδρο T0 αν για κάθε ζευγνύον δένδρο Τ ισχύει η σχέση Data Science & Engineering Lab

Data Science & Engineering Lab Διατήρηση απόστασης Δεδομένου γράφου G μπορούμε να κατασκευάσουμε δένδρο Τ, όπου η απόσταση από κάποια κορυφή v  Τ προς όλες τις υπόλοιπες κορυφές του Τ να είναι ίδια με την ελάχιστη απόσταση της κορυφής v προς κάθε μία από τις κορυφές του G. Τότε λέγεται ότι το ζευγνύον δένδρο Τ διατηρεί την απόσταση από την κορυφή v. 5 4 1 3 2 Data Science & Engineering Lab

Παράδειγμα διατήρησης απόστασης 5 4 1 3 2 5 4 1 3 2 Θεώρημα: Για κάθε κορυφή v ενός συνδεδεμένου γράφου G, υπάρχει ένα ζευγνύον δένδρο που διατηρεί την απόσταση. 5 4 1 3 2 5 4 1 3 2 5 4 1 3 2 5 4 1 2 3 5 4 1 2 3 5 4 1 3 2 5 4 1 3 2 5 4 1 3 2 Data Science & Engineering Lab

Το πρόβλημα του συνδέσμου Το πρόβλημα του συνδέσμου (connector problem) σε γράφο εξετάζει την εύρεση ενός δένδρου που ονομάζεται ελάχιστο και είναι το ζευγνύον δένδρο με το ελάχιστο βάρος (για ζυγισμένους γράφους). Ελάχιστο Ζευγνύον Δένδρο – Minimum Spanning Tree Στη βιβλιογραφία αναφέρεται ως MST Εφαρμογή MST στη σχεδίαση δικτύων: τηλεπικοινωνιακό, ηλεκτρικό, οδικό, υδραυλικό, υπολογιστικό, καλωδιακής τηλεόρασης, κλπ στην ομαδοποίησης-clustering σε προσεγγιστικούς αλγορίθμους για NP προβλήματα (TSP) Data Science & Engineering Lab

Data Science & Engineering Lab Δύο ιδιότητες των MST Cycle Property: Για κάθε κύκλο C στο γράφο, η βαρύτερη ακμή του C δεν εμφανίζεται στο MST Χρησιμοποιείται για να εξαιρέσουμε ακμές Cut Property: Για κάθε μη κενό υπο- σύνολο κορυφών S, η ελαφρύτερη ακμή που προσπίπτει σε μία μόνο κορυφή του S ανήκει στο MST Χρησιμοποιείται για να μην εξαιρέσουμε ακμές C S S' Data Science & Engineering Lab

Data Science & Engineering Lab Παράδειγμα cycle - cut 1 3 8 2 6 7 4 5 1 3 8 2 6 7 4 5 Path = 1-2-3-4-5-6-1 Cycle = {1,2},{2,3},{3,4},{4,5},{5,6},{6,1} S = {4,5,8} Cut = {4,3},{5,3},{5,6},{5,7},{8,7} Data Science & Engineering Lab

Data Science & Engineering Lab Τομή cycle-cut Η τομή ενός cycle και ενός cut είναι ένας άρτιος αριθμός ακμών. Απόδειξη 1 3 8 2 6 7 4 5 Intersection = {3,4},{5,6} S V - S C Data Science & Engineering Lab

Kλασικοί άπληστοι αλγόριθμοι Kruskal Επιλέγουμε την ελαφρύτερη ακμή που δεν δημιουργεί κύκλο Prim Επιλέγουμε τυχαία μία πρώτη κορυφή v Κάθε φορά, έχουμε μία συνδεδεμένη συνιστώσα N που περιέχει τη v και κάποιους άλλους κόμβους V-N Επιλέγουμε την ελαφρύτερη ακμή από Ν προς V-N Boruvka Prim “εν παραλλήλω” και ... Αντίστροφης διαγραφής Kruskal αντίστροφος Data Science & Engineering Lab

Data Science & Engineering Lab Αλγόριθμος Kruskal (1956) Αρχικά το δένδρο Τ είναι κενό. Θέτουμε i=0. Οι ακμές ταξινομούνται κατά μη φθίνον βάρος. Εισάγεται στο Τ η επόμενη ακμή που δεν ανήκει ήδη στο Τ και δεν δημιουργεί κύκλο. Θέτουμε i=i+1 Αν i<n–1, τότε πηγαίνουμε στο Βήμα 2. Θεώρημα: Ο αλγόριθμος Kruskal δίνει ένα ζευγνύον δένδρο με ελάχιστο βάρος. Data Science & Engineering Lab

Data Science & Engineering Lab Παράδειγμα 8 7 2 3 4 4 9 2 4 11 14 1 8 5 7 6 8 10 9 7 6 1 2 Δεν λαμβάνεται η ακμή (8,7) διότι δημιουργείται κύκλος Δεν λαμβάνεται η ακμή (8,9) διότι δημιουργείται κύκλος Δεν λαμβάνεται η ακμή (2,3) διότι δημιουργείται κύκλος Data Science & Engineering Lab

Data Science & Engineering Lab Αλγόριθμος Prim (1957) Στο αρχικό δένδρο Τ εισάγεται μία τυχαία κορυφή v. Θέτουμε i=0. Από το σύνολο των ακμών που πρό- σκεινται στις κορυφές του Τ επιλέγεται εκείνη με το μικρότερο βάρος και εισάγεται στο Τ. Θέτουμε i=i+1 Αν i<n, τότε πηγαίνουμε στο Βήμα 2. Θεώρημα: Ο αλγόριθμος Prim δίνει ένα ζευγνύον δένδρο με ελάχιστο βάρος. Wikipedia: The algorithm was developed in 1930 by Czech mathe- matician Vojtěch Jarník and later independently by computer scientist Robert C. Prim in 1957 and rediscovered by Edsger Dijkstra in 1959. Data Science & Engineering Lab

Data Science & Engineering Lab Παράδειγμα 8 7 2 3 4 4 9 2 4 11 14 1 8 5 7 6 8 10 9 7 6 1 2 Data Science & Engineering Lab

Data Science & Engineering Lab Αλγόριθμος Boruvka (1926) Ενώνουμε κάθε κόμβο u με τον κοντινότερο γείτονά του. Σχηματίζεται δάσος F από F’ δένδρα. Ενώνουμε κάθε δένδρο του F με το κοντινότερό του δένδρο. Ανανεώνεται η τιμή του F’. Αν F’ > 1, τότε πηγαίνουμε στο Βήμα 2. Wikipedia: It was first published in 1926 by Otakar Borůvka as a method of constructing an efficient electricity network for Moravia. The algorithm was rediscovered by Choquet in 1938; again by Florek, Łukasiewicz, Perkal, Steinhaus, and Zubrzycki in 1951; and again by Sollin in 1965. Because Sollin was the only computer scientist in this list living in an En-glish speaking country, this algorithm is frequently called Sollin's algorithm. Data Science & Engineering Lab

Data Science & Engineering Lab Παράδειγμα 8 7 2 3 4 4 9 2 4 11 14 1 8 5 7 6 8 10 9 7 6 1 2 Τέλος πρώτης φάσης Τέλος δεύτερης φάσης Data Science & Engineering Lab

Αλγόριθμος αντίστροφης διαγραφής Ο αλγόριθμος αντίστροφης διαγραφής (reverse-delete) είναι «αντίστροφος» του αλγορίθμου Kruskal Θέτουμε i=m. Οι ακμές ταξινομούνται κατά μη αύξον βάρος. Διαγράφεται η βαρύτερη ακμή αν δεν είναι γέφυρα. Θέτουμε i=i–1 Αν i>n–1, τότε πηγαίνουμε στο Βήμα 2. Data Science & Engineering Lab

Data Science & Engineering Lab Παράδειγμα 8 7 2 3 4 4 9 2 4 11 14 1 8 5 7 6 8 10 9 7 6 1 2 Data Science & Engineering Lab

Data Science & Engineering Lab Διακριτά βάρη A B C D E F G 1 3 8 2 4 7 5 6 9 Είσοδος Έξοδος A B C D E F G 1 3 8 2 4 7 5 6 9 Πρόταση: Αν τα βάρη των ακμών είναι διακριτοί αριθμοί, τότε το MST είναι μοναδικό. Αλλιώς μπορεί να υπάρχουν πολλά ισοδύναμα MST. Data Science & Engineering Lab

Data Science & Engineering Lab Απόδειξη πρότασης Έστω ότι υπάρχουν 2 MST Data Science & Engineering Lab

Data Science & Engineering Lab Απόδειξη πρότασης (2) Θεωρούμε την ελαφρύτερη ακμή που δεν ανήκει στην τομή Data Science & Engineering Lab

Data Science & Engineering Lab Απόδειξη πρότασης (3) Δημιουργείται ένας κόκκινος κύκλος Data Science & Engineering Lab

Data Science & Engineering Lab Απόδειξη πρότασης (4) Η ακμή e’ είναι οποιαδήποτε κόκκινη ακμή που δεν ανήκει στο πράσινο MST (υπάρχει μία τέτοια ακμή γιατί το MST είναι άκυκλο) Data Science & Engineering Lab

Data Science & Engineering Lab Απόδειξη πρότασης (5) Εφόσον η ακμή e’ δεν ανήκει στην τομή, συνεπάγεται ότι w(e)<w(e’) [το βάρος της e είναι το μικρότερο] Data Science & Engineering Lab

Data Science & Engineering Lab Απόδειξη πρότασης (6) Στο κόκκινο MST διαγράφουμε την e’ και εισάγουμε την e. ==> λαμβάνουμε νέο MST με μικρότερο βάρος, ΑΤΟΠΟ Data Science & Engineering Lab

Πολυπλοκότητες αλγορίθμων Οι πολυπλοκότητες εξαρτώνται από τις υλοποιήσεις αναπαράσταση γράφου (πίνακας γειτνίασης ή δυναμική λίστα) άλλες χρησιμοποιούμενες δομές (set, heaps, κλπ) Kruskal Disjoint set O(m logm) Prim Adjacency matrix O(n2) Binary heap, adjacency list O(m logn) Fibonacci heap, adjacency list O(m + n logn) Reverse- deletion O(m logm) για ταξινόμηση O(n+m) για bridge detection, Tarjan m επαναλήψεις Άρα, Ο(m2) Boruvka O(m logn) Data Science & Engineering Lab

Νεότεροι αλγόριθμοι MST Αλγόριθμοι βασισμένοι στις συγκρίσεις O(m log n) Jarník, Prim, Dijkstra, Kruskal, Boruvka O(m log log n) Cheriton-Tarjan (1976), Yao (1975) O(m (m,n)) Fredman-Tarjan (1987) O(m log (m,n)) Gabow-Galil-Spencer-Tarjan (1986) O(m (m, n)) Chazelle (2000) Άλλοι αλγόριθμοι O(m) randomized Karger-Klein-Tarjan (1995) O(m) verification Dixon-Rauch-Tarjan (1992) Idea for O(m log log n): combine Boruvka + Prim. (see CLR 24-2) Chazelle: soft heaps, lower bound tight over arbitrary semi-group Data Science & Engineering Lab

Γενικότερα προβλήματα Ζευγνύον δέντρο με περιορισμό βαθμού k (π.χ. σε ηλεκτρικό κύκλωμα) (αν k=2 τότε είναι το TSP πρόβλημα). Σε ζυγισμένο γράφο G(V,E) και για σύνολο V΄V να βρεθεί το ζευγνύον δέντρο με το ελάχιστο βάρος που συνδέει τις κορυφές του V΄, μέσω πιθανώς μερικών κορυφών ακόμα (Steiner points). 1 2 3 1 2 3 Data Science & Engineering Lab

Steiner points Steiner graph Πρέπει να συνδέσουμε 4 πόλεις. Ποιά σύνδεση είναη καλύτερη? Steiner graph Δεν υπάρχει αποτελεσματικός αλγόριθμος για την εύρεση των σημείων Steiner

Εφαρμογή: ομαδοποίηση-clustering Δοθέντος συνόλου σημείων σε πολυδιάστατο χώρο, να χωρισθούν τα σημεία σε διακριτές ομάδες, έτσι ώστε τα σημεία μίας ομάδας να είναι κοντά μεταξύ τους, ενώ τα σημεία διαφορετικών ομάδων να απέχουν περισσότερο. Αντικείμενο της Αναγνώρισης Προτύπων, της Τεχνητής Νοημοσύνης, της Εξόρυξης Δεδομένων Εφαρμογές Data/Text Mining, Information Retrieval Web Analysis, Bibliometrics Marketing, Financial Image Analysis, Bioinformatics etc Data Science & Engineering Lab