Γράφοι. Αλγόριθμοι και πολυπλοκότητα. Στάθης Ζάχος, Δημήτρης Φωτάκης

Σχετικά έγγραφα
Γράφοι. Ένας γράφος ή αλλιώς γράφηµα αποτελείται απο. Εφαρµογές: Τηλεπικοινωνιακά και Οδικά ίκτυα, Ηλεκτρονικά Κυκλώµατα, Β.. κ.ά.

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

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

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

Πρόβληµα πλανόδιου πωλητή

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

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

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

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

Πληροφοριακά Συστήματα Διοίκησης (ΜΒΑ) Ενότητα 1: Δικτυωτή Ανάλυση (Θεωρία Γράφων)

Υπολογιστική Πολυπλοκότητα

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

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

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

ΑΝΤΙΣΤΟΙΧΗΣΕΙΣ ΟΡΩΝ ΠΟΥ ΧΡΗΣΙΜΟΠΟΙOΥΝΤΑΙ ΣΤΟΥΣ ΤΟΜΟΥΣ Α ΚΑΙ Β ΤΗΣ ΘΕ «ΔΙΑΚΡΙΤΑ ΜΑΘΗΜΑΤΙΚΑ» Ένα γράφημα αποτελείται από ένα σύνολο 94.

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

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

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

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόγχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

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

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

Διδάσκων: Κωνσταντίνος Κώστα Διαφάνειες: Δημήτρης Ζεϊναλιπούρ

Κατευθυνόμενα γραφήματα. Μαθηματικά Πληροφορικής 6ο Μάθημα. Βρόχοι. Μη κατευθυνόμενα γραφήματα. Ορισμός

Στοιχεία Θεωρίας Γράφων (Graph Theory)

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

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

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

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

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

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

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

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

Σχεδίαση και Ανάλυση Αλγορίθμων Ενότητα 3: ΑΝΑΠΑΡΑΣΤΑΣΗ ΔΕΔΟΜΕΝΩΝ - ΓΡΑΦΗΜΑΤΑ

βασικές έννοιες (τόμος Β)

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

Συντομότερα Μονοπάτια για Όλα τα Ζεύγη Κορυφών

ΣΥΝΔΥΑΣΤΙΚΗ ΒΕΛΤΙΣΤΟΠΟΙΗΣΗ

2 ) d i = 2e 28, i=1. a b c

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

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

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

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

ΕΠΛ 231 οµές εδοµένων και Αλγόριθµοι Άννα Φιλίππου,

Γράφηµα (Graph) Εργαστήριο 10. Εισαγωγή

Μη κατευθυνόµενα γραφήµατα. Στοιχεία Θεωρίας Γραφηµάτων (1) Υπογραφήµατα.

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

ΕΠΛ 231 Δοµές Δεδοµένων και Αλγόριθµοι 11-1

Εισαγωγή στη Θεωρία Γράφων

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

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

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

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

Γραφήματα. Κεφάλαιο Εισαγωγικές έννοιες Ορισμός

ΣΧΕΔΙΑΣΗ ΚΑΙ ΑΝΑΛΥΣΗ ΑΛΓΟΡΙΘΜΩΝ

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

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

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

Φροντιστήριο #8 Ασκήσεις σε Γράφους 24/5/2016

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

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

(elementary graph algorithms)

Κεφάλαιο 3. Γραφήματα. ver. 21/12/2014. Χρησιμοποιήθηκε υλικό από τις αγγλικές διαφάνειες του Kevin Wayne.

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

Διάλεξη 29: Γράφοι. Διδάσκων: Παναγιώτης Ανδρέου

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

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

Υπολογιστική Πολυπλοκότητα

ΓΡΑΜΜΙΚΟΣ & ΔΙΚΤΥΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ

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

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

Φροντιστήριο #8 Ασκήσεις σε Γράφους 16/5/2017

Το Πρόβλημα του Περιοδεύοντος Πωλητή - The Travelling Salesman Problem

Ασκήσεις στους Γράφους. 1 ο Σετ Ασκήσεων Βαθμός Μονοπάτια Κύκλος Euler Κύκλος Hamilton Συνεκτικότητα

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

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

Γράφοι. Ορολογία. Ορισµός: G = (V, E) όπου. Ορολογία (συνέχεια) γράφος ή γράφηµα (graph) V:ένα σύνολο E:µια διµελής σχέση στο V

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

Βασικές Δοµές Δεδοµένων. Σύντοµη επανάληψη (ΕΠΛ 035).

Θεωρία Υπολογισμού και Πολυπλοκότητα Μαθηματικό Υπόβαθρο

Μετασχηματισμοί, Αναπαράσταση και Ισομορφισμός Γραφημάτων

Φροντιστήριο #9 Ασκήσεις σε Γράφους 18/5/2018

Πανεπιστήμιο Στερεάς Ελλάδας Τμήμα Πληροφορικής Εξάμηνο ΣΤ ΘΕΩΡΙΑ ΓΡΑΦΩΝ

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

ΘΕΩΡΙΑ ΓΡΑΦΩΝ. 7 η Διάλεξη Συνεκτικότητα (Συνδεσμικότητα) Βασικές έννοιες και ιδιότητες Το θεώρημα του Merger Ισομορφισμός

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

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

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

Υπολογιστικά & Διακριτά Μαθηματικά

Ενότητα 10 Γράφοι (ή Γραφήµατα)

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

Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άλλου τύ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Δομές Δεδομένων. Ιωάννης Γ. Τόλλης Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης

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

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

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

Ασυμπτωτικός Συμβολισμός

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

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

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

Γράφοι. κόµβοι) και ένα σύνολο από γραµµές (που λέγονται ακµές) οι οποίες

Transcript:

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

Άδεια Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό, όπως εικόνες, που υπόκειται σε άδεια χρήσης άλλου τύπου, αυτή πρέπει να αναφέρεται ρητώς.

Γράφοι Ένας γράφος ή αλλιώς γράφηµα αποτελείται απο πλευρές (ακµές) και κορυφές (κόµβους). Εφαρµογές: Τηλεπικοινωνιακά και Οδικά ίκτυα, Ηλεκτρονικά Κυκλώµατα, Β.. κ.ά. 3

Graph Drawing 4 πιθανές αναπαραστάσεις του ίδιου γράφου 4

Σηµασιολογία Ένας γράφος συµβολίζεται µε G=(V,E) Όπου V={1,,n} ένα σύνολο από κορυφές (vertices) E V V ένα σύνολο από πλευρές ή ακµές (edges) e = ( u, v) E συµβολίζουµε µια πλευρά n= V το πλήθος των κορυφών V V m= E το πλήθος των πλευρών Παρατηρήσεις: Οι πλευρές είναι ένα διατεταγµένο ζέυγος µε στοιχεία κορυφές δηλαδή εν γένει (1,2) δεν είναι το ίδιο µε το (2,1) Θα γράφουµε (u,v) και θα εννοούµε οτι η κορυφή u επικοινωνεί µε την κορυφή v. 5

Μη κατευθυνόµενος γράφος Ένας µη κατευθυνόµενος γράφος (undirected graph), είναι ένας γράφος για τον οποίο ισχύει (u,v) αν και µόνο αν (v,u) Οι κορυφές u και v λέγονται άκρα της (u,v) Οι κορυφές u και v λέγονται γείτονες αν υπάρχει η (u,v). Αν η u έχει d γείτονες τότε λέµε πως έχει βαθµό d. 6

Κατευθυνόµενος γράφος Σε ένα κατευθυνόµενο γράφο (directed graph) τα επόµενα δεν είναι (εν γένει) ισοδύναµα ( u, v) ( v, u) Πχ. Υπάρχει η ακµή (1,2) ενώ δεν υπάρχει η ακµή (2,1) Στη κατευθυνόµενη πλέον πλευρά (u,v) η κορυφή u λέγεται πηγή (origin) και η v προορισµός (destination). Η κορυφή v είναι γείτονας της u αν υπάρχει η κατευθυνόµενη πλευρά (u,v). έχει out-degree= d, αν έχει d γείτονες. έχει in-degree= d, αν είναι ο γείτονας d κορυφών. 7

Γράφος µε βάρη Θεωρούµε µια συνάρτηση βάρους w : E R Το wµπορεί να µοντελοποιεί βάρος, απόσταση, µήκος, χρόνο, κόστος, χωρητικότητα κ.ά. (επιτρέπονται και αρνητικά βάρη). AC AB + BC Γενικά τα βάρη δεν ικανοποιούν την τριγωνική ανισότητα 8

Απλός γράφος (simple) Απλός γράφος λέγεται ο γράφος που δεν έχει παράλληλες πλευρές Self loops (πλευρές µε του τύπου (u,u)) Σε απλό µη κατευθυνόµενο γράφο υπάρχουν το πολύ m n( n 1) 2 πλευρές. Σε απλό κατευθυνόµενο γράφο υπάρχουν το πολύ m=n(n-1) πλευρές. Πυκνός γράφος: m=θ(n 2 ) Αραιός γράφος: m=θ(n) = n 2 = 9

Ισοµορφισµός µεταξύ γράφων ύο γράφοι G 1 και G 2 λέγονται ισοµορφικοί αν υπάρχει ένα προς ένα αντιστοιχία των κορυφών τους έτσι ώστε ένα ζεύγος κορυφών του G 1 συνδέεται µε µια ακµή αν και µόνο αν το αντίστοιχο ζεύγος κορυφών του G 2 συνδέεται µε µια ακµή 10

Γράφος µε ετικέτες (labelled) Σε γράφο µε ετικέτες κάθε κορυφή έχει µια µοναδική ετικέτα (ID) που τη χαρακτηρίζει µονοσήµαντα. (Συνήθως 1..n) Για ένα γράφο µε ετικέτες µε n κορυφές υπάρχουν n 2 µη ισοµορφικοί του. 2 Π.χ. Για n=3 υπάρχουν 8 τέτοιοι γράφοι 11

Μονοπάτια (paths) και κύκλοι (cycles) Μονοπάτι P=(v 0, v 1,,v k ) µήκους k είναι µια ακολουθία απο κορυφές έ.ώ. να υπάρχει πλευρά (v i, v i+1 ) για 0<=i<=k-1 (µε όλες τις πλευρές διαφορετικές) Κύκλος C=(v 0, v 1,,v k-1, v 0 ) µήκους k είναι ένα µονοπάτι που ξεκινά και τελειώνει µε την ίδια κορυφή. Απλό µονοπάτι: όλες οι κορυφές είναι διαφορετικές Απλός κύκλος: όλες οι κορυφές είναι διαφορετικές εκτός από την αρχική και τελική που είναι ίσες 12

Οι γέφυρες του Königsberg Πρόβληµα : Είναι δυνατόν να διασχίσει κανείς και τις 7 γέφυρες περνώντας µια φορά από κάθε µια, ξεκινώντας και τελειώνοντας σε οποιοδήποτε σηµείο; 13

Euler & Hamilton (paths & cycles) Euler µονοπάτι (Euler tour): µονοπάτι που περιέχει µια φορά ακριβώς όλες τις ακµές. Euler κύκλος: κύκλος που περιέχει µια φορά ακριβώς όλες τις ακµές. Hamilton µονοπάτι (Hamilton tour): απλό µονοπάτι που περιέχει µια φορά ακριβώς όλες τις κορυφές. Hamilton κύκλος: απλό κύκλος που περιέχει µια φορά ακριβώς όλες τις κορυφές. 14

Συνεκτικός γράφος Ένας µη κατευθυνόµενος γράφος θα λέγεται συνεκτικός αν για κάθε ζεύγος κορυφών του υπάρχει µονοπάτι που τις συνδέει. Ένας κατευθυνόµενος γράφος θα λέγεται ισχυρά συνεκτικός (strongly connected) αν για κάθε ζεύγος κορυφών του υπάρχει κατευθυνόµενο µονοπάτι που τις συνδέει. Ένας κατευθυνόµενος γράφος θα λέγεται ασθενά συνεκτικός (weakly connected) αν ο αντίστοιχος µη κατευθυνόµενος γράφος είναι συνεκτικός. Σε απλό συνεκτικό µη κατευθυνόµενο γράφο υπάρχουν τουλάχιστον m=n-1 πλευρές. Σε απλό ισχυρά συνεκτικό κατευθυνόµενο γράφο υπάρχουν τουλάχιστον m=n πλευρές. 15

Υπογράφος Ο γράφος G =(V,E ) θα λέγεται υπογράφος ενός γράφου G=(V,E) αν: V ' V E' E 16

Πλήθος Πλευρών Θεώρηµα: Έστω G ένας απλός µη κατευθυνόµενος γράφος και k το πλήθος των συνεκτικών συνιστωσών τότε: n k m ( n k)( n k + 1) 2 Πρόταση: Ένας απλός µη κατευθυνόµενος γράφος µε n κορυφές είναι συνεκτικός αν έχει m πλευρές µε: ( n 1)( n 2) m > 2 δηλαδή να έχει περισσότερες από τις ακµές του πλήρους γράφου n-1 ακµών. 17

Θεώρηµα 4 χρωµάτων Είναι δυνατόν να χρωµατίσουµε ένα χάρτη µε 4 χρώµατα ώστε γειτονικές χώρες να έχουν διαφορετικό χρώµα; Ή είναι δυνατόν να χρωµατίσουµε τις κορυφές του γράφου µε το πολύ 4 χρώµατα; Μπορεί να χρωµατιστεί ένας επίπεδος γράφος µε το πολύ 4 χρώµατα; Θεώρηµα 4-χρωµάτων (4-coloring theorem) Το ελάχιστο πλήθος χρωµάτων που απαιτείται για το χρωµατισµό ενός επίπεδου γράφου είναι 4. 18

ιάφορα Προβλήµατα Ταιριάσµατος (matching) Περιπλανώµενου (πλανόδιου) πωλητή (TSP) Κάλυψης κορυφών (vertex cover) Ισοµορφισµού (subgraph-isomorphism) Κλίκας (clique) 19

Πρόβληµα πλανόδιου πωλητή Ένας πωλητής θέλει να επισκευτεί 5 πόλεις A, B, C, D, E ξεκινώντας και τελειώνοντας στην Α, διανύοντας την µικρότερη απόσταση; Πρόβληµα: Να βρεθεί το συντοµότερο µονοπάτι που περνά από όλες τις πόλεις µια φορά ακριβώς, ξεκινώντας και καταλήγοντας στην κορυφή Α. (Shortest Hamiltonian cycle) 20

Χηµικό Μόριο Στο µόριο C x H y, x άτοµα άνθρακα ενώνονται µε y άτοµα υδρογόνου. Το υδρογόνο ενώνεται µε έναν άνθρακα, ενώ ο άνθρακας ενώνεται µε 4 στοιχεία, υδρογόνα ή άνθρακες. Πόσες διαφορετικές δοµές υπάρχουν για το µόριο C 4 H 10 ; Πόσοι µη ισοµορφικοί συνεκτικοί γράφοι υπάρχουν µε x κορυφές µε βαθµό 4 και y κορυφές µε βαθµό 1; 21

Συνήθως ένας γράφος είναι: Απλός Μη κατευθυνόµενος Συνεκτικός Χωρίς βάρη και ετικέτες 22

άσος & έντρο άσος καλέιται ένας γράφος χωρίς κύκλους έντρο καλείται ένας συνεκτικός γράφος χωρίς κύκλους Παρατηρήσεις: Το δέντρο είναι ένα συνεκτικό δάσος Κάθε συνεκτική συνιστώσα ενός δάσους είναι ένα δέντρο Κριτήρια για να είναι ένας γράφος δέντρο Συνεκτικός χωρίς κύκλους, Συνεκτικός µε n-1 πλευρές Χωρίς κύκλους µε n-1 πλευρές Αφαιρώντας µια οποιαδήποτε πλευρά ο γραφός από συνεκτικός γίνεται µη συνεκτικός Κάθε ζεύγος κορυφών συνδέεται µε ακριβώς ένα µονοπάτι, εν έχει κύκλους αλλά η πρόσθεση µιας νέας πλευράς δηµιουργεί έναν 23 κύκλο.

Ειδικές µορφές δέντρων υαδικό δέντρο: έντρο µε ρίζα και κάθε κορυφή έχει το πολύ 2 παιδιά. Αστέρας (Star): έντρο µε ρίζα και n-1 φύλλα. Ο Βαθµός µιας κορυφής είναι n-1 και όλων των άλλων είναι 1. Αλυσίδα (chain) ή µονοπάτι : έντρο µε 2 φύλλα. Ο βαθµός κάθε κόµβου είναι 2 εκτός από αυτόν των φύλλων που είναι 1. 24

Χωρίς πλευρές & µε όλες τις πλευρές Γράφοι χωρίς πλευρές Null graphs N n : Ένας γράφος θα λέγεται πλήρης (complete) αν κάθε ζεύγος κορυφών του συνδέεται µε ακµή. Τέτοιοι γράφοι θα συµβολίζονται µε K n Κλίκα (clique) ενός γράφου λέγεται ένας πλήρης υπογράφος του. 25

Κύκλοι & Μονοπάτια Κύκλοι (cycles) C n : Συνεκτικός γράφος στον οποίο όλες οι κορυφές έχουν βαθµό 2 (n>=3). Μονοπάτια (paths) P n : Κύκλος που του έχει αφαιρεθεί µια πλευρά. 26

Αστέρια & Τροχοί Αστέρια (stars) S n : Μια ρίζα µε n-1 φύλλα Τροχοί (wheels) W n : Αστέρι που όλα τα n-1 φύλλα σχηµατίζουν κύκλο C n-1 (n>=4) 27

ιµερής Γράφος ιµερής γράφος (bipartite) καλείται ένας γράφος του οποίου οι κορυφές µπορούν να χωριστούν σε δύο σύνολα έ.ώ κάθε στοιχείο του ενός συνδέεται µε κάποιο στοιχείου του άλλου, και δύο στοιχεία του ίδιου συνόλου δεν συνδέονται. V = A B Παρατήρηση: Ένας γράφος είναι διµερής ανν κάθε 28 κύκλος έχει άρτιο µήκος.

Πλήρης διµερής γράφος Πλήρης διµερής γράφος (complete bipartite graph) Κ r,c είναι ένας διµερής γράφος έ.ώ. κάθε στοιχείο του ενός συνόλου της διαµέρισης συνδέεται µε κάθε άλλο στοιχείο του δεύτερου συνόλου. 29

Πρόβληµα γάµου Κάτω από ποιες συνθήκες µερικά κορίτσια που αγαπούν µερικά αγόρια µπορούν να παντρευτούν, ώστε κάθε ένα από αυτά να πάρει κάποιον που αγαπά; Έχει ο διµερής γράφος τέλειο ταίριασµα (matching); 30

Κύβοι Υπάρχουν n=2 k κορυφές που παριστάνουν όλους του δυαδικούς αριθµούς µήκους k. ύο κορυφές συνδέονται µε πλευρά αν οι αντίστοιχοι δυαδικοί αριθµοί τους διαφέρουν σε ένα ακριβώς bit. Οι κύβοι είναι διµερής; Γιατί; 31

Επίπεδος Γράφος Επίπεδος γράφος (planar): γράφος που µπορεί να σχεδιαστεί στο επίπεδο, ώστε όλες οι πλευρές του να µην διασταυρώνονται Θεώρηµα: Ένας γράφος είναι επίπεδος αν και µόνο αν δεν περιέχει υπογράφο ισοµορφικό µε τον Κ 5 ή τον Κ 3,3. 32

Πρόβληµα των 3 επιχειρήσεων κοινής ωφελείας Είναι δυνατόν να συνδέσουµε τα τρία σπίτια Α, B, C µε τις επιχειρήσεις κοινής ωφελείας ΕΥ ΑΠ, ΕΗ, ΟΤΕ ώστε να µην διασταυρώνονται τα καλώδια τους; 33

Πρόβληµα χρωµατισµού µε 4 χρώµατα Μπορούµε να χρωµατίσουµε ένα χάρτη µε 4 το πολύ χρώµατα έτσι ώστε γειτονικές χώρες να έχουν διαφορετικό χρώµα; Χρωµατίζονται οι κορυφές ενός γράφου µε το πολύ 4 χρώµατα; ( χρωµατίζεται επίπεδος γράφος µε 4 το πολύ χρώµατα;) 34

d-κανονικός γράφος Σε έναν d-κανονικό γράφο, ο βαθµός κάθε κορυφής είναι ακριβώς d. Petersen Graph: 3-κανονικός γράφος 35

Γράφος διαστηµάτων Γράφος διαστηµάτων (interval) Σε κάθε ένα διάστηµα αντιστοιχεί µια κορυφή ύο κόµβοι του γράφου σθνδέονται µε ακµή ανν τα αντίστοιχα διαστήµατα τέµνονται. 36

The Activity Center Problem Ποιος είναι ο µέγιστος αριθµός από δραστηριότητες που µπορούν να εξυπηρετηθούν από ένα server; Αντίστοιχο πρόβληµα σε γράφους: να βρεθεί ένα µέγιστο υποσύνολο κορυφών χωρίς να υπάρχει ακµή µεταξύ τους; (εύρεση µέγιστου ανεξάρτητου συνόλου- maximum independent set) 37

Συµπληρωµατικός γράφος Συµπληρωµατικός γράφος (complement) Ένας γράφος είναι συµπληρωµατικός ενός γράφου G=(V,E) ανν: για κάθε ζεύγος διακριτών κορυφών 38

Παρατηρούµε: Παρατηρήσεις 39

Παράσταση γράφου I Πίνακας γειτνίασης (adjacency matrix) Πίνακας A nxn Παρατηρήσεις: Σε γράφο µε βάρη, τα a ij αντικαθήστανται από τα αντίστοιχα βάρη Σε µη κατευθυνόµενο γράφο: a ij =a ji Σε απλό γράφο: a ii =0 Απαιτούµενη µνήµη: Θ(n 2 ) 40

Παράσταση γράφου II Πίνακας πρόσπτωσης (incidence matrix): Πίνακας B nxm όπου: 41

Παράσταση γράφου IIΙ Λίστες γειτνίασης (adjacency lists) Η λίστα γειτνίασης µιας κορυφής v περιέχει όλες τις γειτονικές κορυφές της v. Παρατηρήσεις: Σε γράφο µε βάρη βάζουµε ένα επιπλέον πεδίο για το βάρος της πλευράς. Σε κατευθυνόµενο γράφο έχουµε 2 λίστες για κάθε v. Απαιτούµενη µνήµη: Θ(n+m) 42

Παράδειγµα Γράφος 43

Παράδειγµα Γράφος ώστε τον πίνακα πρόσπτωσης! 44

Πίνακα ή λίστες; Οι πίνακες πιο εύκολα υλοποιούνται και συντηρούνται. Προσφέρονται για πυκνούς γράφους. Οι λίστες προσφέρονται για αραιούς γράφους και προσφέρονται για αλγορίθµους που η πολυπλοκότητά τους εξαρτάται από το m. 45

Άσκηση 1η Έστω κατευθυνόµενος γράφος G=(V,E) 1. ίνεται παράσταση του G µε πίνακα γειτνίασης Α nxn, δώστε αλγόριθµο Θ(n 2 ) χρόνου που να υπολογίζει την λίστα πρόσπτωσης του G. 2. ίνεται παράσταση του G µε λίστα γειτνίασης Adj[1..n], δώσε αλγόριθµο Θ(n 2 ) χρόνου που να υπολογίζει τον πίνακα γειτνίασης του G. 46

Λύση 1. for i:= 1 to n do begin construct(in_list_v[i],out_list-v[j]); for i:= 1 to n do for j:= 1 to n do if a ij =1 then begin out_list_v[i]:= out_list_v[i] {v j }; in_list_v[j]:= in_list_v[j] {v i } end 47

Άσκηση 2η Ολική Καταβόθρα (total sink) σε κατευθυνόµενο γράφο ονοµάζεται µια κορυφή που δεν έχει γείτονες και είναι γείτονας κάθε άλλης κορυφής. Ασκήσεις: 1. ίνεται παράσταση µε πίνακα γειτνίασης. ώστε αλγόριθµο Θ(n) χρόνου που να βρίσκει µια ολική καταβόθρα (ή αναφέρει πως δεν υπάρχει τέτοια). 2. ίνεται παράσταση µε λίστες γειτνίασης, δώστε αλγόριθµο χρόνου που να βρίσκει µια ολική καταβόθρα (ή αναφέρει πως δεν υπάρχει τέτοια). Τι πολυπλοκότητας είναι ο αλγόριθµος; 48

Άσκηση Εύρεση maximum spanning tree. 49

Χρηματοδότηση Το παρόν εκπαιδευτικό υλικό έχει αναπτυχθεί στα πλαίσια του εκπαιδευτικού έργου του διδάσκοντα. Το έργο «Ανοικτά Ακαδημαϊκά Μαθήματα» του ΕΜΠ έχει χρηματοδοτήσει μόνο την αναδιαμόρφωση του υλικού. Το έργο υλοποιείται στο πλαίσιο του Επιχειρησιακού Προγράμματος «Εκπαίδευση και Δια Βίου Μάθηση» και συγχρηματοδοτείται από την Ευρωπαϊκή Ένωση (Ευρωπαϊκό Κοινωνικό Ταμείο) και από εθνικούς πόρους.