Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Η παρουσίαση φορτώνεται. Παρακαλείστε να περιμένετε

Data Engineering Lab Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 1: Βασικές Έννοιες (πράξεις)

Παρόμοιες παρουσιάσεις


Παρουσίαση με θέμα: "Data Engineering Lab Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 1: Βασικές Έννοιες (πράξεις)"— Μεταγράφημα παρουσίασης:

1 Data Engineering Lab Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 1: Βασικές Έννοιες (πράξεις) 1

2 Data Engineering Lab Ένωση-union δύο γράφων είναι ο γράφος G=G 1  G 2 με σύνολο κορυφών V(G)=V 1  V 2 και σύνολο ακμών E(G)=E 1  E 2 2

3 Data Engineering Lab Κάθε μη συνδεδεμένος γράφος μπορεί να εκφρασθεί ως ένωση δύο ή περισσοτέρων συνιστωσών. Η ένωση m ισομορφικών γράφων G συμβολίζεται με mG. Αν ένας γράφος G μπορεί να εκφρασθεί ως ένωση των παραγόντων-factor (ή ζευγνυόντων υπογράφων) του, τότε η ένωση αυτή ονομάζεται παραγοντοποίηση του G. Ένας παράγοντας που είναι τακτικός γράφος βαθμού r καλείται r-παράγοντας. Αν ένας γράφος αποτελείται μόνο από r-παράγοντες τότε λέγεται r-παραγοντοποιήσιμος. 3

4 Data Engineering Lab Τομή-intersection δύο γράφων G=G 1  G 2 είναι ο γράφος G με σύνολο κορυφών V(G)=V 1  V 2 και σύνολο ακμών E(G)=E 1  E 2 4

5 Data Engineering Lab Άθροισμα δακτυλίου – ring sum, G=G 1  G 2, είναι ο γράφος G με σύνολο κορυφών V(G)=V 1  V 2 και σύνολο ακμών E(G)= (E 1  E 2 )–(E 1  E 2 ) 5

6 Data Engineering Lab Ο συγκερασμός-coalescence 2 γράφων G 1 και G 2 είναι οποιοσδήποτε γράφος που προκύπτει ταυτίζοντας έναν κόμβο από το G 1 και ένα κόμβο από το G 2. 6

7 Data Engineering Lab Το συμπλήρωμα ενός γράφου G συμβολίζεται με και είναι ο γράφος που έχει σύνολο κορυφών ενώ το σύνολο των ακμών του αποτελείται από όλες τις δυνατές ακμές που δεν ανήκουν στο σύνολο E(G). Αν ο G δεν είναι συνδεδεμένος, τότε ο είναι συνδεδεμένος. Απόδειξη; 7

8 Data Engineering Lab 8

9 Η πράξη της ανταλλαγής-interchange ή αντιστροφής- inversion ακμών ταυτίζεται με τη διαγραφή δύο ακμών (v 1,v 2 ) και (v 3,v 4 ) και την εισαγωγή των ακμών (v 1,v 3 ) και (v 2,v 4 ). 9

10 Data Engineering Lab Κατά τη διάσπαση-split μιας κορυφής v 1 διαγράφονται δύο ακμές (v 1,v 2 ) και (v 1,v 3 ) του γράφου και εισάγονται με ένωση δύο νέες ακμές (v 4,v 2 ) και (v 4,v 3 ) θεωρώντας μία νέα κορυφή v 4. 10

11 Data Engineering Lab Αν κατά τη διαγραφή μιας κορυφής από ένα συνδεδεμένο γράφο προκύψουν δύο ή περισσότερες συνιστώσες, τότε η κορυφή αυτή λέγεται αποκόπτουσα κορυφή – cut vertex ή σημείο άρθρωσης – articulation point. Αν με τη διαγραφή μιας ακμής προκύψουν δύο συνιστώσες, τότε η ακμή αυτή ονομάζεται αποκόπτουσα ακμή – cut edge ή γέφυρα - bridge. Τα τερματικά σημεία μιας τέτοιας ακμής είναι αποκόπτουσες κορυφές. Ένας γράφος που δεν περιέχει αποκόπτουσες ακμές ονομάζεται δισυναφής - bi-coherent. 11

12 Data Engineering Lab 12

13 Data Engineering Lab Ένας γράφος που δεν περιέχει αποκόπτουσες κορυφές ονο- μάζεται δισυνδεδεμένος - bi-connected ή μη διαχωριστός- non-separable, ενώ λέγεται ότι ο γράφος αποτελείται από ένα τεμάχιο. Ένας διαχωριστός γράφος έχει μία ή περισσότερες αποκό- πτουσες κορυφές. Κατά τη διάσπαση μιας αποκόπτουσας κορυφής, η κορυφή αυτή αντικαθίσταται από δύο ή περισσότερες κορυφές, ώστε να προκύψουν ανεξάρτητα τεμάχια. 13

14 Data Engineering Lab Η σύνδεση-join ή άθροισμα-sum δύο γράφων συμβολίζεται με G=G 1 +G 2 και είναι ένας γράφος που αποτελείται από τις κορυφές V 1  V 2, τις αρχικές ακμές και όλες τις δυνατές ακμές μεταξύ των κορυφών των δύο γράφων. 14

15 Data Engineering Lab Αν είναι δυνατόν οι κορυφές ενός γράφου G να επιμερισθούν σε δύο υποσύνολα V 1 και V 2, έτσι ώστε κάθε ακμή του G να προσπίπτει σε μία κορυφή του V 1 και μία του V 2, τότε ο γράφος G ονομάζεται διμερής-bipartite ή διγράφος-bigraph, ενώ τα V 1 και V 2 ονομάζονται μερικά σύνολα -partite sets. Αν κάθε κορυφή του V 1 συνδέεται με κάθε κορυφή του V 2, τότε ο γράφος G ονομάζεται πλήρης διμερής - complete bipartite και συμβολίζεται με Κ i,j, όπου |V 1 |=i και |V 2 |=j 15

16 Data Engineering Lab 16

17 Data Engineering Lab Ένας αστεροειδής-star graph S k, είναι ένας πλήρης διμερής γράφος Κ 1,k. Μπορεί να θεωρηθεί ως δένδρο με μία ρίζα και k φύλλα εξαρτώμενα από τη ρίζα. Το S 3 ονομάζεται δαγκάνα-claw. K 1,1 = K 2 = S 1 S 2 = K 1,2 = P 3 17 S 6 = K 1,6

18 Ένας γράφος G ονομάζεται πολυμερής n-partite αν το σύνολο V(G) μπορεί αν χωρισθεί σε n μη κενά υποσύνολα V 1,V 2,…,V n έτσι ώστε καμία ακμή του G να μην ενώνει κορυφές του ίδιου μερικού-partite συνόλου του G V1V1 V3V3 V2V2 Data Engineering Lab Τριμερής γράφος 18

19 Data Engineering Lab Με προφανή τρόπο ορίζονται οι πλήρεις πολυμερείς – complete k-partite γράφοι. K 1,2,2  v1v1 v4v4 v6v6 v5v5 v2v2 v3v3 K 2,2,2  v1v1 v3v3 v2v2 v4v4 v5v5 v6v6 19

20 Data Engineering Lab Το καρτεσιανό γινόμενο – cartesian product δύο γράφων G 1 και G 2 ορίζεται ως ο γράφος με σύνολο κορυφών V(G 1 xG 2 )=V(G 1 )xV(G 2 ) ενώ δύο κορυφές v=(v 1,v 2 ) και u=(u 1,u 2 ) είναι γειτονικές στο καρτεσιανό γινόμενο αν v 1 =u 1 και η v 2 συνδέεται με την u 2 στο γράφο G 2 ή συμμετρικά αν v 2 =u 2 και η v 1 συνδέεται με την u 1 στο γράφο G 1. 20

21 Data Engineering Lab Το λεξικογραφικό γινόμενο – lexicographical product ή σύνθεση-composition δύο γράφων G 1 και G 2 συμβολίζεται με G 1 [G 2 ] και ορίζεται ως ο γράφος με σύνολο κορυφών V(G 1 xG 2 ) =V(G 1 )xV(G 2 ), ενώ δύο κορυφές v=(v 1,v 2 ) και u=(u 1,u 2 ) είναι γειτονικές στο λεξικογραφικό γινόμενο αν η v 1 συνδέεται με την u 1 στο γράφο G 1 ή αν v 1 =u 1 και η v 2 συνδέεται με την u 2 στο γράφο G 2. 21

22 Data Engineering Lab Ένας γράφος G αποσυντίθεται σε δύο γράφους G 1 και G 2 αν ισχύει: G 1  G 2 =G και G 1  G 2 =N n,  n. Κατά την αποσύνθεση-decomposition αγνοούνται οι απομονωμένες κορυφές. Με απλά λόγια, κάθε ακμή του G βρίσκεται είτε στον ένα γράφο είτε στον άλλο, αλλά όχι και στους δύο. Παρόλα αυτά μπορεί κάποιες κορυφές να ανήκουν και στους δύο υπογράφους. 22

23 Data Engineering Lab

24 Data Engineering Lab Συγχώνευση-fusion/merge δύο κορυφών v 1 και v 2 ενός γράφου είναι η αντικατάστασή τους από μία νέα κορυφή v, ενώ οι ακμές που ήταν προσπίπτουσες στις κορυφές v 1 ή/και v 2 αντικαθιστώνται από νέες ακμές προσπίπτουσες προς την κορυφή v. Η πράξη αυτή συμβολίζεται με G/(v 1,v 2 ) Κατά τη συγχώνευση, ο αριθμός των ακμών παραμένει σταθερός, ενώ ο αριθμός των κορυφών μειώνεται κατά ένα. 24

25 Data Engineering Lab ,

26 Data Engineering Lab Κατά την υποδιαίρεση-subdivision ακμής, μία ακμή e διαγράφεται, ενώ οι προσκείμενες κορυφές της e ενώνονται δια μέσου δύο νέων ακμών και μιας ενδιάμεσης κορυφής. Συστολή-contraction μιας ακμής e ενός γράφου είναι η αντίστροφη πράξη της υποδιαίρεσης. Κατά τη συστολή η ακμή e διαγράφεται και ταυτοποιούνται οι κορυφές που ήταν προσκείμενες προς την ακμή αυτή. Ο γράφος που προκύπτει κατά τη συστολή συμβολίζεται με G  e. Δύο γράφοι λέγονται ομοιομορφικοί-homeomorphic αν ένας μπορεί να προκύψει από τον άλλο με μία ή περισσότερες υποδιαιρέσεις ή συστολές ακμών. 26

27 Data Engineering Lab 27

28 Data Engineering Lab 28

29 Data Engineering Lab αν το g είναι υπογράφος του G, τότε 29

30 Data Engineering Lab Η αποτελεσματικότητα καθορίζεται από την πολυπλοκότητα χρόνου και χώρου. Στους γράφους θα μας απασχολήσει περισσότερο η πολυπλοκότητα χρόνου. Πολυπλοκότητα χρόνου είναι το πλήθος εκτελέσεων της βασική πράξης, ώστε να παραχθούν τα επιδιωκόμενα δεδομένα εξόδου. 30

31 Data Engineering Lab Η εκτίμηση της επίδοσης ενός αλγορίθμου μπορεί να γίνει είτε πειραματικά είτε θεωρητικά. Πειραματικά, μπορούμε να μετρήσουμε το πλήθος των πράξεων ενός αλγορίθμου, δηλ. τον απόλυτο χρόνο, μέγεθος όμως που εξαρτάται από πολλούς παράγοντες. 31

32 Data Engineering Lab Για τη θεωρητική εκτίμηση της πολυπλοκότητας χρόνου, έχει ιδιαίτερη σημασία το μέγεθος του προβλήματος, που σε γράφους εκφράζεται από την τάξη και το μέγεθός τους. Ο συμβολισμός Ο εκφράζει το άνω όριο του πλήθους των απαιτούμενων πράξεων με τη βοήθεια μιας συνάρτησης Ο(f(n)) Μας ενδιαφέρει συνήθως - η πολυπλοκότητα της χειρότερης περίπτωσης - η πολυπλοκότητα της μέσης περίπτωσης Πολυωνυμικός είναι ο αλγόριθμος όπου η συνάρτηση f είναι άνω φραγμένη από κάποιο πολυώνυμο Αποτελεσματικός είναι ο αλγόριθμος με όσο το δυνατό μικρότερου βαθμού πολυώνυμο. 32

33 Data Engineering Lab Στατικές αναπαραστάσεις  Πίνακας γειτνίασης – adjacency matrix  Πίνακας προσπτώσεων – incidence matrix Δυναμικές αναπαραστάσεις  Λίστες ακμών – edge lists (για αραιούς γράφους)  Λίστες γειτνίασης 33

34 Data Engineering Lab ν1ν1 ν2ν2 ν3ν3 ν4ν4 ν5ν5 e1e1 e2e2 e3e3 e4e4 e5e5 e6e6 (v 1,v 2 )(v 1,v 3 )(v 3,v 4 )(v 4,v 1 ) (v 4,v 2 )(v 4,v 5 ) 34

35 Data Engineering Lab 35

36 Data Engineering Lab 36

37 Data Engineering Lab 37

38 Data Engineering Lab Αν υποτεθεί ότι η μέση τιμή των βαθμών των κορυφών του γράφου είναι d av και ότι για τον ορισμό της επιγραφής μιας κορυφής απαιτείται μία λέξη, τότε εύκολα προκύπτει ότι ο συνολικός απαιτούμενος χώρος μνήμης για αυτές τις μεθόδους είναι περίπου n(1+d av ) λέξεις 38

39 Πίνακας γειτνίασης Λίστες γειτνίασης ΑποθήκευσηO(V 2 )O(V+E) Έλεγχος αν η (u,v) είναι ακμή O(1)O(d(u)) Έλεγχος γειτονικών κορυφών της u O(V)O(d(u))

40 Data Engineering Lab Είναι μία μη αύξουσα ακολουθία ακεραίων, που αντιστοιχεί στις τιμές των βαθμών των κορυφών ενός γράφου. Μία τυχούσα ακολουθία λέγεται γραφική-graphical αν πράγματι αντιστοιχεί σε κάποιο γράφο G. Ο γράφος G που αντιστοιχεί σε δεδομένη ακολουθία S ονομάζεται πραγματοποίηση-realization της ακολουθίας S. Για κάθε γράφο αντιστοιχεί μία και μοναδική ακολουθία βαθμών και αυτή έχει τις εξής ιδιότητες  Μη αρνητικές τιμές  Πλήθος περιττών βαθμών άρτιο  Τιμές μικρότερες από n 40

41 Data Engineering Lab Η ακολουθία 2,2,2,2,2,2 απεικονίζει τους γράφους C 6 και 2C 3. Μία ακολουθία βαθμών λέγεται απλή-simple, αν είναι γραφική και υπάρχει μόνο μία πραγματοποίησή της (τότε θα μπορούσε να χρησιμοποιηθεί για την αποθήκευση του γράφου). ΔΕΝ ΥΠΑΡΧΕΙ ΙΚΑΝΗ & ΑΝΑΓΚΑΙΑ ΣΥΝΘΗΚΗ 41

42 Data Engineering Lab Μια ακολουθία S=d 1,d 2,…,d n είναι γραφική, αν και μόνο αν είναι γραφική η S΄=d 2 -1,d 3 -1,…, d d1+1 -1,d d1+2,…,d n Απόδειξη:  Έστω η S΄ γραφική και G΄ ο αντίστοιχος γράφος. Με κατασκευή θα δείξουμε ότι και η S είναι γραφική  Έστω η S γραφική και G ένα γράφος με το άθροισμα των βαθμών των γειτονικών κόμβων του x μέγιστο. Αποδεικνύουμε ότι η ιδιότητα ισχύει και έπειτα κατασκευάζουμε την S΄ 42

43 Data Engineering Lab Αλγόριθμος 1.Αν κάποιο d i > n-1  OXI 2.Αν όλα μηδενικά  ΝΑΙ 3.Αν κάποιο αρνητικό  OXI 4.Αν χρειάζεται, η ακολουθία αναδιατάσσεται ώστε να είναι μη αύξουσα 5.Διαγράφεται ο πρώτος όρος (d 1 ) και αφαιρείται μία μονάδα από τους επόμενους d 1 όρους 6.Πήγαινε στο Βήμα 2 Πολυπλοκότητα; 43

44 Data Engineering Lab Δίνεται η ακολουθία S1: 5,4,4,3,2,1,1 S 2 : 3, 3, 2, 1, 1, 0 S 3 : 2, 1, 1, 0, 0 Άρα η ακολουθία είναι γραφική S 4 : 0, 0, 0, 0 Κατασκευή γράφου σταδιακά, ξεκινώντας από την S 4 Μία ακολουθία βαθμών μπορεί να αντιστοιχίζεται σε περισσότερους από έναν γράφους. 44

45 Data Engineering Lab Έχει αποδειχθεί ότι μία πραγματοποίηση γραφικής ακολουθίας βαθμών μπορεί να παραχθεί από οποιαδήποτε άλλη πραγματοποίηση μετά από ένα πεπερασμένο αριθμό ανταλλαγών ακμών. Θεώρημα: Μία ακολουθία d 1,d 2,…,d n είναι γραφική αν και μόνο αν Σd i είναι άρτιο και για κάθε ακέραιο k, όπου 1≤k≤n–1 ισχύει: 45

46 Data Engineering Lab Έστω ότι δίνεται η ακολουθία S: 5,5,5,5,2,2,2. Εφαρμόζουμε τον τύπο και έχουμε: Για k=1, Για k=2, Για k=3, Για k=4 δεν ισχύει (ΨΕΥΔΗΣ) 46


Κατέβασμα ppt "Data Engineering Lab Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 1: Βασικές Έννοιες (πράξεις)"

Παρόμοιες παρουσιάσεις


Διαφημίσεις Google