Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές...

109
Data Engineering Lab Θεωρία Γράφων Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι- Θεμελιώσεις-Αλγόριθμοι- Εφαρμογές Εφαρμογές Κεφάλαιο 5: Επιπεδικότητα 1

Upload: darrin

Post on 13-Feb-2016

73 views

Category:

Documents


6 download

DESCRIPTION

Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο 5 : Επιπεδικότητα. Ο γράφος των ανέσεων. Αδύνατο. Ο γράφος Κ 3,3 δεν είναι επίπεδος . ΔΕΗ. ΟΤΕ. ΕΥΑΘ. Να συνδεθούν τα σπίτια με τις παροχές χωρίς διασταυρώσεις. Επίπεδος γράφος . - PowerPoint PPT Presentation

TRANSCRIPT

Page 1: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Θεωρία ΓράφωνΘεωρία ΓράφωνΘεμελιώσεις-Αλγόριθμοι-Θεμελιώσεις-Αλγόριθμοι-

ΕφαρμογέςΕφαρμογές

Κεφάλαιο 5: Επιπεδικότητα

1

Page 2: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Να συνδεθούν τα σπίτια με τις παροχές χωρίς διασταυρώσεις

ΔΕΗ ΟΤΕ ΕΥΑΘ

Αδύνατο. Ο γράφος Κ3,3 δεν

είναι επίπεδος.

2

Ο γράφος των ανέσεωνΟ γράφος των ανέσεων

Page 3: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ένας γράφος G λέγεται επίπεδος-plane αν δύο οποιεσδήποτε ακμές του G συναντώνται μόνο σε προσκείμενες τερματικές κορυφές.

Ένας γράφος G λέγεται επιπεδικός-planar ή ενσωματώσιμος στο επίπεδο – embeddable in the plane – αν είναι ισομορφικός προς έναν επίπεδο γράφο. Αν δηλαδή μπορεί να σχεδιαστεί στο επίπεδο έτσι ώστε δύο οποιεσδήποτε ακμές του να συναντώνται μόνο σε προσκείμενες τερματικές κορυφές.

Πολλοί συγγραφείς ορίζουν τον επίπεδο γράφο όπως τον επιπεδικό.

3

Επίπεδος γράφος Επίπεδος γράφος

Page 4: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Είναι ο διπλανός γράφος επιπεδικός; Αν είναι, δώστε μια επίπεδη σχεδίασή του.

1 2 3 4 5

678910

1 2 3 4 5

678910

4

ΆσκησηΆσκηση

Page 5: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Είναι ο επόμενος γράφος επιπεδικός; Αν είναι, δώστε μια επίπεδη σχεδίασή του.

5

ΆσκησηΆσκηση

a

e

d

b

f

c

a

e

f

bd

c

Page 6: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Είναι ο γράφος επιπεδικός;

6

ΆσκησηΆσκηση

5 2

4 3

1

5 2

4 3

1

2 5

4 3

1

Page 7: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Είναι ο επόμενος γράφος επιπεδικός; Αν είναι, δώστε μια επίπεδη σχεδίασή του.

7

ΆσκησηΆσκηση

Page 8: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Καμπύλη Jordan: Μία συνεχής γραμμή στο επίπεδο που δεν τέμνει τον εαυτό της.

Κλειστή καμπύλη Jordan: Μία καμπύλη Jordan της οποίας τα δύο άκρα συμπίπτουν.

Θεώρημα Jordan: Δοθείσης μιας κλειστής καμπύλης Jordan L και δύο σημείων της vi και vj, τότε κάθε άλλη καμπύλη Jordan που ενώνει τα σημεία αυτά, είτε βρίσκεται εντός της L, είτε εκτός, είτε τέμνει την L σε κάποια σημεία διαφορετικά των vi και vj (προφανές).

8

Καμπύλη Καμπύλη JordanJordan

Page 9: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

vivivi

vjvjvj

9

Προφανές ΠαράδειγμαΠροφανές Παράδειγμα

Page 10: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

x

Δοθέντος ενός επίπεδου γράφου G και ενός σημείου x του επιπέδου, ονομάζουμε περιοχή-region ή όψη-face ή παράθυρο-window του G που περιέχει το x, το σύνολο των σημείων του επιπέδου που μπορούν να ενωθούν με το x μέσω μιας καμπύλης Jordan που δεν τέμνει τις ακμές του G.

Με r (ή f) συμβολίζεται το πλήθος των περιοχών ενός επίπεδου γράφου

Περιθώριο-boundary μιας περιοχής ονομάζεται ο υπογράφος που επηρεάζεται από τις ακμές και τις κορυφές που πρόσκεινται στην περιοχή ή απλούστερα οι ακμές που περιβάλλουν την περιοχή.

10

ΠεριοχήΠεριοχή

Page 11: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Το περιθώριο της r1 αποτελείται από τις ακμές (v1,v2), (v2,v3), (v3,v1) και τις κορυφές v1, v2, v3.

Tο περιθώριο της r2 αποτελείται από τις ακμές (v1,v2),(v2,v4),(v4,v1) και τις κορυφές v1, v2, v4.

Tο περιθώριο της r3 αποτελείται από τις ακμές (v1,v3),(v3,v4),(v4,v1) και τις κορυφές v1, v3, v4.

Tο περιθώριο της r4 αποτελείται από τις ακμές (v2,v3),(v3,v4),(v4,v2) και τις κορυφές v2, v3, v4.

Η περιοχή r2 ονομάζεται εξωτερική-exterior ή άπειρη- infinite ή απεριόριστη-unbounded ή εξώτερη-outer.

v1

v2

v3

v4

r1r2 r3

r4

11

ΠαράδειγμαΠαράδειγμα

Page 12: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Εξώτερος επιπεδικός-outerplanar λέγεται ένας γράφος αν είναι δυνατό όλες οι κορυφές να ανήκουν σε μία περιοχή (να κείνται όλες επί κύκλου).

Οι ακμές ενός τέτοιου γράφου κείνται είτε επάνω είτε μέσα σε έναν κύκλο και δεν τέμνονται κάπου.

Κάθε εξώτερος επιπεδικός γράφος είναι επιπεδικός αλλά το αντίστροφο δεν ισχύει (π.χ ο K4 είναι planar αλλά όχι outerplanar).

1

3

2

546

7

8

12

Εξώτερος επιπεδικόςΕξώτερος επιπεδικός

Page 13: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ο Κ4 είναι επιπεδικός αλλά όχι εξώτερος επιπεδικός

Οι άλλοι γράφοι είναι εξώτεροι επιπεδικοί.

13

ΠαράδειγμαΠαράδειγμα

Page 14: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

14

|V | |E | r r – |E | + |V |

1 0 1 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 15: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

15

|V | |E | r r – |E | + |V |

2 1 1 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 16: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

16

|V | |E | r r – |E | + |V |

3 2 1 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 17: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

17

|V | |E | r r – |E | + |V |

4 3 1 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 18: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

18

|V | |E | r r – |E | + |V |

4 4 2 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 19: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

19

|V | |E | r r – |E | + |V |

5 5 2 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 20: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

20

|V | |E | r r – |E | + |V |

6 6 2 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 21: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

21

|V | |E | r r – |E | + |V |

7 7 2 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 22: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

22

|V | |E | r r – |E | + |V |

8 8 2 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 23: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

23

|V | |E | r r – |E | + |V |

8 9 3 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 24: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

24

|V | |E | r r – |E | + |V |

8 10 4 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 25: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

25

|V | |E | r r – |E | + |V |

8 11 5 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 26: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

26

|V | |E | r r – |E | + |V |

8 12 6 2

Data Engineering Lab

ΠαράδειγμαΠαράδειγμα – – Σταθερά του Σταθερά του EulerEuler

Page 27: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Θεώρημα (Euler 1752). Αν G είναι ένας συνδεδεμένος επίπεδος γράφος, τότε ισχύει:

n+r = m+2 Πόρισμα. Αν G είναι ένας επίπεδος γράφος με k

συνιστώσες, τότε ισχύει: n+r = m+k+1

Μέγιστος-maximal ή τριγωνοποιημένος-triangulated επίπεδος γράφος είναι εκείνος ο γράφος στον οποίο η εισαγωγή μιας νέας ακμής τον καθιστά μη επίπεδο.

27

Θεώρημα Θεώρημα EulerEuler

Page 28: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Μέχρι ποιό σημείο ένας επίπεδος γράφος μπορεί να παραμείνει επίπεδος;

Όσο υπάρχουν περιοχές που περικλείονται από κύκλο μήκους περισσότερο 4, μπορούν να εισαχθούν νέες ακμές και ο γράφος να παραμείνει επίπεδος.

Πως χαρακτηρίζουμε τους επόμενους γράφους?

1

3

2

4

28

Μέγιστος επίπεδος γράφοςΜέγιστος επίπεδος γράφος

1

3

2

4

5

Page 29: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Μέγιστος εξώτερος επιπεδικός είναι ο γράφος όπου η εισαγωγή μιας νέας ακμής τον καθιστά μη εξώτερο επιπεδικό.

Με μία επιπλέπον ακμή, ο διπλανός γράφος θα γίνει μη εξώτερος επιπεδικός.

29

Μέγιστος εξώτερος επιπεδικόςΜέγιστος εξώτερος επιπεδικός

Page 30: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Λήμμα Χειραψίας για επίπεδους γράφους: Για κάθε απλό επίπεδο συνδεδεμένο γράφο G ισχύει:

όπου d(ri) είναι ο βαθμός της περιοχής ri , δηλ. ο αριθμός των ακμών που περικλείουν την i-οστή περιοχή.

Απόδειξη: Σε ένα επίπεδο γράφο κάθε ακμή βρίσκεται στο σύνορο 2 περιοχών και άρα συνεισφέρει ακριβώς 2 στο άθροισμα των βαθμών των περιοχών.

2

1)( 2

nmr

iirdm

30

Λήμμα των χειραψιώνΛήμμα των χειραψιών

Page 31: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Πόρισμα: Σε κάθε απλό συνδεδεμένο γράφο με περιφέρεια-girth (κύκλος ελάχιστου μήκος) μήκους g ισχύει η σχέση:

(g–2)m g(n–2)

Πόρισμα: Για κάθε μέγιστο επίπεδο γράφο με n3 ισχύει:

m = 3n–6

Απόδειξη: Έστω r το πλήθος των περιοχών του γράφου. Σε ένα μέγιστο επίπεδο γράφο ισχύει: d(ri)=3 για κάθε περιοχή. Συνεπώς από το Λήμμα προκύπτει:

2m = 3+3+…+3 (r = m–n+2 φορές) ⇒2m = 3(m–n+2)⇒ m=3n-6

31

ΙδιότητεςΙδιότητες

Page 32: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Πόρισμα: Για κάθε απλό συνδεδεμένο επίπεδο γράφο με n3 κορυφές ισχύει:

m 3n-6

Απόδειξη: Έστω r το πλήθος των περιοχών του γράφου. Σε έναν απλό επίπεδο γράφο ισχύει d(ri)≥3 για κάθε περιοχή ri. Συνεπώς από το Λήμμα Χειραψιών ισχύει:

2m ≥ 3+3+…+3 (r=m–n+2 φορές) ⇒2m ≥ 3(m–n+2)⇒

m ≤ 3n–6

32

Μερικές ιδιότητες ακόμηΜερικές ιδιότητες ακόμη

Page 33: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Πόρισμα: Για κάθε απλό συνδεδεμένο επίπεδο διμερή γράφο G με n3, ισχύει:

m 2n-4Απόδειξη: Έστω r το πλήθος των περιοχών του γράφου. Σε έναν απλό επίπεδο διμερή γράφο ισχύει d(ri)≥4 για κάθε περιοχή ri. Συνεπώς από το Λήμμα Χειραψιών ισχύει:

2m ≥ 4+4+…+4 (r = m–n+2 φορές) ⇒ 2m ≥ 4(m–n+2) ⇒ m ≤ 2n–4

33

Διμερείς γράφοιΔιμερείς γράφοι

Page 34: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Σε έναν απλό επίπεδο διμερή γράφο ισχύει:

d(ri)≥4 για κάθε περιοχή ri.

K2,6

34

Διμερής γράφος – Διμερής γράφος – ΠαράδειγμαΠαράδειγμα

Page 35: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Πόρισμα: Κάθε επίπεδος γράφος περιέχει τουλάχιστο μία κορυφή v βαθμού d(v)≤5Απόδειξη: Έστω ότι όλες οι κορυφές έχουν βαθμό ≥ 6 και ότι ο γράφος έχει n κορυφές και m ακμές. Ισχύει

m ≤ 3n–6 ή 2m ≤ 6n–12 <1>Από το Λήμμα Χειραψιών γνωρίζουμε ότι το άθροισμα των βαθμών των κορυφών ενός γράφου είναι 2m. Άρα, επειδή d(v)≥6 για κάθε v έχουμε

2m ≥ 6n <2>Από <1> και <2> ⇒ 6n ≤ 2m ≤ 6n–12, άτοπο.

35

Βαθμός επίπεδου γράφοςΒαθμός επίπεδου γράφος

Page 36: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Θεώρημα: Ο γράφος Κ5 δεν είναι επίπεδος

(Απόδειξη από Λήμμα Χειραψιών + Euler).

Θεώρημα: Ο διμερής γράφος Κ3,3 δεν είναι επίπεδος

(Απόδειξη από Λήμμα Χειραψιών + Euler).

36

Μερικοί μη επίπεδοι γράφοιΜερικοί μη επίπεδοι γράφοι

Page 37: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Έστω ένας επίπεδος γράφος G με r=20 περιοχές. Αν ο G είναι τακτικός βαθμού 5 πόσες κορυφές έχει;Λύση: Από Λήμμα χειραψίας για επίπεδους γράφους έχουμε

Σd(vi)=2m, για i=1,…,n. Αλλά d(vi)=5, για κάθε i. Άρα 5+5+...+5 (n φορές)=2m. Άρα:

5n = 2m <1>Από Euler

n+r–2=m ή n+20–2=m ή n+18=m <2>Από <1> και <2> ⇒ 5n=2n+36 ή 3n=36 ή n=12

37

ΆσκησηΆσκηση

Page 38: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Να δειχθεί ότι κάθε συνδεδεμένος, απλός και επιπεδικός γράφος G με n<12 έχει μια κορυφή βαθμού d(v)≤4.Λύση: Έστω ότι d(v)≥5 για κάθε κορυφή v.Από Λήμμα Χειραψιών έχουμε

Σd(vi)=2m, για i=1,…,n.

Αλλά d(vi) ≥ 5, για κάθε i. Άρα

2m≥5n <1>Από Πόρισμα 5.4 έχουμε

m≤3n–6 ή 2m≤6n–12 <2>Από <1> και <2> ⇒ 5n ≤6n–12 ή n≥12 (άτοπο)

38

ΆσκησηΆσκηση

Page 39: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Ο 4-Κύβος δεν είναι Επιπεδικός

Λύση:1)Πλήθος ακμών και κορυφών:

n = 16 (διπλάσιο του 3-κύβου)m = 32 (διπλάσιο του 3-κύβου συν

το πλήθος των κορυφών του 3-κύβου)

2)Έστω ότι είναι επιπεδικός και άρα θα ισχύει:r = 32–16+2=18

Data Engineering Lab 39

ΆσκησηΆσκηση

Page 40: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

3) Περιφέρεια-girth: g = 44) Από το λήμμα χειραψιών :

Στη περίπτωσή μας |E | ½·18·4=36 ενώ |E | = 32 ! ! !

Άτοπο. Άρα ο 4-κύβος δεν είναι επιπεδικός. �

Data Engineering Lab 40

rggFERFRF 2

121)d e g(

21 ||

ΆσκησηΆσκηση

Page 41: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ο Κ5 είναι ο μη επίπεδος γράφος με το μικρότερο αριθμό κορυφών και ο Κ3,3 ο μη επίπεδος γράφος με το μικρότερο αριθμό ακμών.

Δύο γράφοι λέγονται ομοιομορφικοί-homeomorphic αν ο ένας μπορεί να προκύψει από τον άλλο με μία ή περισσότερες υποδιαιρέσεις (subdivisions) ακμών.

41

Ομοιομορφικοί γράφοιΟμοιομορφικοί γράφοι

Page 42: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Θεώρημα (Kuratowski 1930): Ένας γράφος είναι επίπεδος αν δεν περιέχει κάποιον υπογράφο ομοιομορφικό προς τους Κ5 και Κ3,3

Συστολή-contraction είναι η αντίστροφη πράξη της υποδιαίρεσης ακμής

Θεώρημα: Ένας γράφος είναι επίπεδος αν και μόνο αν δεν περιέχει κάποιον υπογράφο συστελώσιμο (contractible) προς τους Κ5 και Κ3,3

Παράγεται με μία ακολουθία συστολών

42

Ομοιομορφικοί γράφοιΟμοιομορφικοί γράφοι

Page 43: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

3 2 4

5

6

7

1

3 4

5

6

7

1

3 2 4

5

6

7

1

3 4

5

6

7

1

Συστολή ακμώνΣυστολή ακμών

Data Engineering Lab 43

Page 44: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ο γράφος του Petersen είναι συστελώσιμος προς τον Κ5

0

2

14

3

5

6

8

7

9

5

6

8

7

9

44

Ο γράφος Ο γράφος PetersenPetersen

Page 45: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Θεώρημα: Ένας γράφος είναι ενσωματώσιμος σε επιφάνεια σφαίρας αν και μόνο αν είναι ενσωματώσιμος στο επίπεδο.

45

Στερεοσκοπική Προβολή

Ενσωμάτωση σε σφαίραΕνσωμάτωση σε σφαίρα

Data Engineering Lab

Page 46: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Πάχος - thicknessΟ ελάχιστος αριθμός επιπέδων που απαιτούνται για την ενσωμάτωση ενός γράφου.

Τραχύτητα - coarsenessΟ μέγιστος αριθμός μη επίπεδων υπογράφων που

αποτελούνται από ξένα μεταξύ τους σύνολα ακμών Αριθμός Διασταυρώσεων - crossing number

Το ελάχιστο πλήθος τομών ενός γράφου στο επίπεδο. Αριθμός Διάσπασης - splitting number

Το ελάχιστο πλήθος διασπάσεων ώστε να καταστεί ο γράφος επίπεδος

46

Μετρικές επιπεδικότηταςΜετρικές επιπεδικότητας

Page 47: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Για απλό συνδεδεμένο γράφο G: Για διμερή γράφο G:

Για πλήρη γράφο Κn:

6373

63)(

nnm

nmGt

42)(

nmGt

6

7)( nKt n

3

2

5

4

1

3

2

5

4

1

3

2

5

4

1

47

ΠάχοςΠάχος

Page 48: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Η ένωση των γράφων αυτών δημιουργεί τον Κ9

t(Κ9) =3

48

ΠάχοςΠάχος

Page 49: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

cr(K6)=3

3

2

5

4

1

6

Θεώρημα. Σε ένα απλό συνδεδεμένος γράφο G ισχύει: cr(G) m–3n+6

49

Αριθμός διασταυρώσεωνΑριθμός διασταυρώσεων

Page 50: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

s(Κ5)=1

3

2

54

1

3

2

54

1

2

6

)4)(3()( nnKs n

50

Αριθμός διάσπασηςΑριθμός διάσπασης

Page 51: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ενσωμάτωση Κ3,3 σε σαμπρέλα - torus

Ενσωμάτωση Κ5 σε σαμπρέλα 1 2

3

4

5

51

Ενσωμάτωση σε άλλες επιφάνειεςΕνσωμάτωση σε άλλες επιφάνειες

Page 52: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Μία σαμπρέλα είναι ομοιομορφική με μία σφαίρα με μία λαβή-handle.

Μία επιφάνεια έχει γένος g (genus) αν είναι ομοιομορφική προς μία σφαίρα με g λαβές.

Γράφος ενσωματώσιμος σε επιφάνεια γένους g αλλά όχι σε μία επιφάνεια γένους g-1, καλείται γράφος γένους g.

52

ΓένοςΓένος

Page 53: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Θεώρημα: Αν G ένας συνδεδεμένος γράφος τότε ισχύει:

n+r = m+2–2g

Θεώρημα: Για το γένος ενός γράφου G ισχύει:

Θεώρημα: Ισχύει g(G) ≤ cr(G).

1

63)( nmGg

53

ΘεωρήματαΘεωρήματα

Page 54: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Γεωμετρικός δυαδικός –geometric dual. Σε κάθε περιοχή του G εισάγεται μία κορυφή του G* (λευκή κουκίδα). Δύο κορυφές του G* ενώνονται με μία ακμή για κάθε κοινή ακμή που έχουν οι αντίστοιχες περιοχές του G. Για κάθε γέφυρα του G εισάγεται στο G* ένας βρόχος στην κορυφή που αντιστοιχεί στην περιοχή που περικλείει τη γέφυρα. Έτσι, κάθε ακμή του G* τέμνεται μόνο με μία ακμή του G.

54

Γεωμετρικός δυαδικόςΓεωμετρικός δυαδικός

Page 55: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

G G*

55

ΠαράδειγμαΠαράδειγμα

Page 56: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Να σχεδιαστεί ο γεωμετρικός δυαδικός του επόμενου γράφου.

Ο δυαδικός έχει r=3 κορυφές (όσες περιοχές έχει ο G), m=6 ακμές (όσες ακμές έχει ο G) και n=5 περιοχές (όσες κορυφές έχει ο G)

56

ΆσκησηΆσκηση

Page 57: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ο γεωμετρικός δυαδικός ενός γράφου G δεν είναι μοναδικός, γιατί από μία διαφορετική ενσωμάτωση του G στο επίπεδο θα παραχθεί διαφορετικός γεωμετρικός δυαδικός.

57

Γεωμετρικός δυαδικόςΓεωμετρικός δυαδικός

Page 58: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

58

ΠαράδειγμαΠαράδειγμα

Data Engineering Lab

Page 59: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ένας γράφος G΄ λέγεται συνδυαστικός δυαδικός –combinatorial dual, ή αφηρημένος δυαδικός –abstract dual, ενός γράφου G αν και μόνο αν υπάρχει μία αμφιμονοσήμαντη αντιστοιχία μεταξύ των ακμών τους, έτσι ώστε οι ακμές ενός κύκλου του G΄ να αντιστοιχούν σε έναν σύνολο αποκοπτουσών ακμών του G.

59

Συνδυαστικός δυαδικόςΣυνδυαστικός δυαδικός

Page 60: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Θεώρημα: Κάθε επίπεδος γράφος G έχει έναν αντίστοιχο επίπεδο συνδυαστικό δυαδικό γράφο G*.

Άρα, ο γεωμετρικός δυαδικός ενός επίπεδου γράφου ταυτίζεται με το συνδυαστικό δυαδικό του.

Πόρισμα: Αν ο γράφος G έχει ένα γεωμετρικό δυαδικό γράφο G*, τότε ισχύει : (G*)*=G

Θεώρημα: (Whitney 1933): Ένας γράφος είναι επίπεδος αν και μόνο αν έχει συνδυαστικό δυαδικό.

60

ΘεωρήματαΘεωρήματα

Page 61: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ένας γράφος ομοιομορφικός προς το δυαδικό του λέγεται αυτο-δυαδικός – self-dual. Παραδείγματα τέτοιων γράφων είναι ο K4 και οι τροχοειδείς γράφοι.

61

ΠαράδειγμαΠαράδειγμα

Page 62: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

62

Διαπίστωση επιπεδικότητας σε μικρούς γράφους Βήμα 1: Βρες ένα Hamiltonian κύκλο C και σχεδίασέ

τον σαν πολύγωνο Βήμα 2: [Οι ακμές που δεν ανήκουν στον κύκλο C

ονομάζονται χορδές.] Με βάση τον κύκλο C, ομαδο-ποιούμε τις χορδές σε 2 ανεξάρτητα σύνολα Α και Β: Το Α περιέχει τις ακμές που μπορούν να

σχεδιασθούν μέσα στον C χωρίς διασταυρώσεις Το B περιέχει τις ακμές που μπορούν να

σχεδιαστούν έξω από τον C χωρίς διασταυρώσεις Αν ο προηγούμενος διαχωρισμός των ακμών είναι

εφικτός, τότε ο γράφος είναι επιπεδικός.

Ευριστική μέθοδος κύκλουΕυριστική μέθοδος κύκλου--χορδήςχορδής

Page 63: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Βρίσκουμε ένα Hamiltonian κύκλο και τον συμβολίζουμε με πορτοκαλί χρώμα.

a b c d

e f g h

Τον σχεδιάζουμε σαν πολύγωνο

f

a

g

e

c

h

d

b

Παράδειγμα – Βήμα 1Παράδειγμα – Βήμα 1

Page 64: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

64

Επιλέγουμε μία χορδή είτε εντός είτε εκτός του κύκλου. Για παράδειγμα, θέτουμε τη χορδή (b,f) εκτός του κύκλου

Καθώς οι χορδές δεν διασταυρώνονται, ο γράφος είναι επιπεδικός

a b c d

e f g hf

a

g

e

c

h

d

b

Παράδειγμα – Βήμα 2Παράδειγμα – Βήμα 2

Page 65: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

K3,3Ο κύκλος C = uavbwcu

u v

b

w

a cK3,3

u

v

bw

c

a

65

Έστω ο διμερής γράφος Κ3,3 που έχει ένα Hamiltonian κύκλο C μήκους 6, τον οποίο σχεδιάζουμε στο επίπεδο ως κανονικό εξάγωνο uavbwcu.

Στη συνέχεια προσπαθούμε να σχεδιάσουμε τις 3 υπόλοιπες ακμές ub, vc και wa.

Παράδειγμα για το Παράδειγμα για το ΚΚ3,33,3

Data Engineering Lab

Page 66: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Συμβατές-compatible λέγονται οι ακμές που μπορούν να σχεδιασθούν μαζί είτε μέσα είτε έξω από τον κύκλο χωρίς να τέμνονται.

Από τις ακμές ub, vc και wa μόνο μία μπορεί να κείται εντός του κύκλου, όπως και μόνο μία μπορεί να κείται εκτός του κύκλου, διότι υπάρχουν διασταυρώσεις ακμών.

Αν βάλουμε την ub στο σύνολο Α και την vc στο σύνολο Β, τότε δεν μπορούμε να βάλουμε την wa σε κανένα από τα 2 σύνολα.

Η wa είναι ασύμβατη προς τις ub και vc. Οι 3 ακμές είναι ανά δύο ασύμβατες μεταξύ τους.

66Data Engineering Lab

Παράδειγμα για το Παράδειγμα για το ΚΚ3,33,3

Page 67: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Συνεπώς δεν μπορούμε να σχεδιάζουμε και τις 3 ακμές χωρίς διασταυρώσεις, άρα ο γράφος Κ3,3 είναι μη επιπεδικός.

67Data Engineering Lab

Παράδειγμα για το Παράδειγμα για το ΚΚ3,33,3

u

v

bw

a

c

Οι ακμές ub, vcτέμνονται εντός του C

u

v

bw

a

c

Οι ακμές ub, vcτέμνονται εκτός του C

Page 68: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

68

1

2

3 4

5

6

1 3 5

2 4 6

1 3 5

2 4 6

Παράδειγμα-Παράδειγμα-animationanimation για το για το ΚΚ3,33,3

Page 69: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

c

b

d

a

ef

g

h

i

69

Ας εφαρμόσουμε τη μέθοδο κύκλου-χορδής στον επόμενο γράφο G για να εξετάσουμε αν είναι επιπεδικός.

Ένα άλλο παράδειγμαΈνα άλλο παράδειγμα

Data Engineering Lab

Page 70: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

h c

b

d

a

ef

g

i

70

Επιλέγουμε τον Hamiltonian κύκλο C = abcdefghia

Επιλογή Επιλογή Hamiltonian Hamiltonian ΚύκλουΚύκλου

Data Engineering Lab

Page 71: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

acadaeah

bdbgbi

dfehfhgi

71

Γράφουμε τις ακμές που δεν ανήκουν στον κύκλο C ως εξής:

Ακμές που δεν ανήκουν στον κύκλοΑκμές που δεν ανήκουν στον κύκλο

Data Engineering Lab

Page 72: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

h c

b

d

a

ef

g

i

72

Βάζουμε την πρώτη ακμή της λίστας ac στο σύνολο Α και ταυτόχρονα τη διαγράφουμε από τη λίστα. Έτσι η λίστα γίνεται: list: ad, ae, ah, bd, bg, bi, df, eh, fh, gi.

Το σύνολο Α = {ac} είναι ασύμβατο με τις ακμές bd, bg και bi, οι οποίες μπαίνουν στο σύνολο Β. Άρα Β = {bd, bg, bi}.

Οι ακμές του Β είναι συμβατές μεταξύ τους και συνεπώς διαγράφονται από τη λίστα. Άρα:list: ad, ae, ah, df, eh, fh, gi.

Χωρισμός σε σύνολαΧωρισμός σε σύνολα

Data Engineering Lab

Page 73: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

h c

b

d

a

ef

g

i

h c

b

d

a

ef

g

i

Οι ακμές του συνόλου Α σχεδιάζονται μέσα στον C

A = {ac}

Οι ακμές του συνόλου B σχεδιάζονται έξω από τον C

Β = {bd, bg, bi}

73

Χωρισμός σε σύνολα – συνέχειαΧωρισμός σε σύνολα – συνέχεια

Data Engineering Lab

Page 74: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

h c

b

d

a

ef

g

i

74

Α={ac}, Β={bd,bg,bi}, list: ad,ae,ah,df,eh,fh,gi. Εξετάζουμε τώρα με τη σειρά τις ακμές του Β

σε σχέση με τις ακμές της λίστας. Η ακμή bg του συνόλου Β είναι ασύμβατη

με τις ακμές: ad,ae,eh,fh, οι οποίες μπαίνουν στο σύνολο Α.

Άρα A={ac,ad,ae,eh,fh}. Οι ακμές του Α είναι όλες συμβατές μεταξύ τους και η λίστα μεταβάλλεται ως εξής:list: ah,df,gi.

Η ακμή bi του συνόλου Β είναι ασύμβατη με την ακμή ah η οποία μπαίνει στο Α, οπότε: A={ac,ad,ae,eh,fh,ah}.

Χωρισμός σε σύνολα – συνέχειαΧωρισμός σε σύνολα – συνέχεια

Data Engineering Lab

Page 75: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

h c

b

d

a

ef

g

i

h c

b

d

a

ef

g

i

A = {ac, ad, ae, eh, fh, ah} Β = {bd, bg, bi}

75

Επειδή όλες οι ακμές του Α είναι συμβατές μεταξύ τους η ακμή ah διαγράφεται από τη λίστα οπότε list: df, gi. Η κατάσταση διαμορφώνεται ως εξής.

Χωρισμός σε σύνολα – συνέχειαΧωρισμός σε σύνολα – συνέχεια

Data Engineering Lab

Page 76: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

h c

b

d

a

ef

g

i

76

Υπενθυμίζουμε ότι A={ac,ad,ae,eh,fh,ah},Β={bd,bg,bi} και list: df,gi.

Εξετάζουμε τώρα με τη σειρά τις ακμές του Α σε σχέση με τις ακμές της λίστας.

Η ακμή ae του συνόλου A είναι ασύμβατη με την ακμή df η οποία μπαίνει στο σύνολο Β. Οπότε Β={bd,bg,bi,df}. Επειδή όλες οι ακμές του συνόλου Β είναι συμβατές μεταξύ τους, ηακμή df βγαίνει από τη λίστα.

Άρα list: gi. Συνεχίζουμε με τον ίδιο τρόπο.

Χωρισμός σε σύνολα – συνέχειαΧωρισμός σε σύνολα – συνέχεια

Data Engineering Lab

Page 77: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

h c

b

d

a

ef

g

i

h c

b

d

a

ef

g

i

A = {ac, ad, ae, eh, fh, ah} Β = {bd, bg, bi, df, gi}

78

Τελικός χωρισμός σε σύνολαΤελικός χωρισμός σε σύνολα

Data Engineering Lab

Page 78: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

h c

b

d

a

ef

g

ib

d

a

ef

g

i

Γράφος G Επίπεδη σχεδίαση του G

79

Για να σχεδιάσουμε την επίπεδη έκδοση του γράφου G συγχωνεύουμε τα 2 προηγούμενα σχήματα

Ο γράφος είναι επιπεδικόςΟ γράφος είναι επιπεδικός

Data Engineering Lab

Page 79: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Εκτός από τα Θεωρήματα Euler και Kuratowski υπάρχουν άλλες 2 προσεγγίσεις για την εύρεση επιπεδικότητας

Πλήρες σύνολο βασικών κύκλων S (complete set of basic circuits) είναι ένα σύνολο κύκλων όπου: Κάθε κύκλος του συνόλου S μπορεί να εκφρασθεί

ως άθροισμα δακτυλίου μερικών ή όλων των κύκλων του συνόλου S, και

Δεν μπορεί κάποιος κύκλος του συνόλου S να εκφρασθεί ως άθροισμα δακτυλίου άλλων κύκλων εκτός S

80

Εναλλακτικά κριτήρια επιπεδικότηταςΕναλλακτικά κριτήρια επιπεδικότητας

Page 80: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Θεώρημα (MacLane 1937): Ένας γράφος είναι επίπεδος αν και μόνον αν υπάρχει ένα πλήρες σύνολο βασικών κύκλων S, τέτοιο ώστε καμιά ακμή του γράφου να μην εμφανίζεται σε περισσότερους από δύο κύκλους του S.

Τα 3 θεωρήματα (Euler, Kuratowski, McLane) δεν δίνουν αποτελεσματικές μεθόδους ελέγχου της επιπεδικότητας και δεν παράγουν τον επίπεδο γράφο.

81

Βασικό θεώρημαΒασικό θεώρημα

Page 81: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Έστω γράφος G(V,E) και υπογράφος G1(V1,E1)⊆G. Κομμάτι-piece P του G είναι ένας υπογράφος του G, το οποίο ονομάζεται σχετικό-relative προς τον υπογράφο G1 αν είναι:

είτε μία ακμή e=(u,v)∈Ε, όπου e∉Ε1, αλλά u,v∈V1

είτε μία συνδεδεμένη συνιστώσα του G–G1 συν οποιεσδήποτε ακμές προσπίπτουσες σε κορυφές του υπογράφου

82

Αλγοριθμικό κριτήριοΑλγοριθμικό κριτήριο

Page 82: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Οι κορυφές του κομματιού P που ανήκουν και στο G1 λέγονται κορυφές επαφής – contact vertices

Ένα κομμάτι με δύο ή περισσότερες κορυφές επαφής λέγεται τμήμα-segment.

Δύο τμήματα λέγονται ασύμβατα-incompatible αν τέμνονται τουλάχιστο 2 ακμές τους, όταν τοποθετούνται στην ίδια περιοχή του επιπέδου που προσδιορίζεται από έναν κύκλο C του G.

83

Μερικοί ακόμη ορισμοίΜερικοί ακόμη ορισμοί

Page 83: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Επιπεδικός γράφος G, κύκλος C=(v2,v3,v4,v8,v9,v7,v2) και αντίστοιχα κομμάτια

v1 v3

v11

v10

v9 v8

v7

v6 v5

v4

v2

v10

v2 v3

v4v11v8

v8

v7

v1

v7

v2 v3

v8

v6 v5

G = (V, E)

v1 v3

v11

v10

v9 v8

v7

v6 v5

v4

v2

G1= (V1, E1)

G-G1

τμήμα κομμάτι τμήμα

τμήματμήμα

84

ΠαράδειγμαΠαράδειγμα

Page 84: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Η ενσωμάτωση κομματιών που δεν είναι τμήματα είναι εύκολη γιατί έχουν μόνο ένα σημείο επαφής με το γράφο.

Για την ενσωμάτωση των τμημάτων κατασκευάζεται ένας βοηθητικός-auxiliary γράφος P(C)

Ο γράφος αυτός έχει τόσες κορυφές όσες είναι τα τμήματα του γράφου που είναι σχετικά προς τον υπογράφο G1 και ακμές που ενώνουν τις κορυφές αν τα τμήματα είναι ασύμβατα

Θεώρημα: Ένας γράφος G είναι επίπεδος, αν και μόνο αν για κάθε κύκλο C του G ο βοηθητικός γράφος P(C) είναι διμερής

85

Βοηθητικός γράφοςΒοηθητικός γράφος

Page 85: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

v5

v3

v2

v4

v1

v2

v4

v1

v3

v5

v3

v2

v4

v1

v3

v1

v2

v4

G = (V, E)=K5 Κύκλος C

Τμήμα 1 Τμήμα 2 Τμήμα 3

Βοηθητικός γράφος P(C) = K3

Τμήμα 1

Τμήμα 2 Τμήμα 3Βοηθητικός γράφος είναι ο K3, άρα ο Κ5 δεν είναι επίπεδος

86

Τμήματα του ΚΤμήματα του Κ55

Page 86: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

v3v2v1

Τμήμα 1 Τμήμα 2 Τμήμα 3

Βοηθητικός γράφος P(C) = K3

Τμήμα 1

Τμήμα 2 Τμήμα 3

v6v5v4

v1 v2v4

v6 v3 v5G=(V,E)=Κ3,3 Κύκλος C

v1

v5

v2

v6

v3

v4

Βοηθητικός γράφος είναι ο K3 , άρα ο K3,3

δεν είναι επίπεδος

87

Τμήματα του ΚΤμήματα του Κ3,33,3

Page 87: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Πολυπλοκότητα Ο(n4). Προηγείται φάση προ-επεξεργασίας, η οποία περιλαμβάνει τα εξής βήματα:1. Αν n<5 ή m<9, τότε ο γράφος είναι επίπεδος2. Αν m>3n–6, τότε ο γράφος είναι μη-επίπεδος3. Αν ο γράφος είναι μη συνδεδεμένος, τότε αρκεί να

εξεταστεί κάθε συνιστώσα χωριστά. Άρα εστιάζουμε σε συνδεδεμένους γράφους.

4. Αν ο γράφος περιέχει μια αποκόπτουσα κορυφή, τότε αρκεί να εξεταστεί αν τα 2 τεμάχια είναι επίπεδα.

Άρα εστιάζουμε σε 2-συνδεδεμένους γράφους.

88

Αλγόριθμος επιπεδικότητας Αλγόριθμος επιπεδικότητας DMPDMP

Page 88: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

5. Αν υπάρχουν βρόχοι και παράλληλες ακμές, τότε αγνοούνται επειδή δεν επηρεάζουν την επιπεδικότητα του γράφου. Άρα εστιάζουμε σε απλούς γράφους.

6. Αν υπάρχουν κορυφές βαθμού 2, τότε παράγεται ένας ομοιομορφικός γράφος με το μικρότερο αριθμό κορυφών εκτελώντας την πράξη της συστολής.

89

Αλγόριθμος επιπεδικότητας Αλγόριθμος επιπεδικότητας DMPDMP

Page 89: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab 90

ΠαράδειγμαΠαράδειγμα

Page 90: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ορισμός: έστω H′ μια επίπεδη ενσωμάτωση ενός υπο-γράφου H⊆G. Αν υπάρχει μια επίπεδη ενσωμάτωση G′ του G ώστε H′⊆G′, τότε ο H′ λέγεται παραδεκτός-admissible στο G.

Π.χ. έστω ο γράφος G=K5–e1 όπου V ={1,2,3,4,5} και e1=(1,5). Δίνεται μια παραδεκτή και μια απαράδεκτη ενσωμάτωση του υπογράφου H=G–e2 όπου e2=(1,2)

1

5

432

1

5

432

G=K5-(1,5)H=G-(1,2)

Παραδεκτός στον G

1 24

3

5

H=G-(1,2)Απαραδεκτός στον G

91

Βασική αρχήΒασική αρχή

Page 91: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ο αλγορίθμος κατασκευάζει μια ακολουθία υπογράφων H′1,H′2,H′3, ...,H′r=m-n+2=G, έτσι ώστε H′i⊂H′i+1 και κάθε H′i να είναι παραδεκτό στο G. Έτσι μπορεί να κατασκευαστεί μια επίπεδη ενσωμάτωση του G ή να διαπιστωθεί ότι αυτό είναι ανεφικτό, επειδή κάποιο τμήμα S δεν είναι ενσωματώσιμο σε οποιαδήποτε περιοχή

Ο αλγόριθμος ξεκινά με την εύρεση ενός κύκλου C του G και την ενσωμάτωσή του στο επίπεδο. Αυτός ο κύκλος είναι ο πρώτος υπογράφος H′1.

Κατόπιν, ο αλγόριθμος προσπαθεί να βρει ένα σύνολο τμημάτων σχετικών προς τον τρέχοντα υπογράφο H′i. Για κάθε τέτοιο τμήμα S, ο αλγόριθμος υπολογίζει το σύνολο R(S,H′i), δηλαδή το σύνολο των περιοχών όπου το S μπορεί να ενσωματωθεί μέσα στον υπογράφο H′i..

92

Βασικές αρχές Βασικές αρχές DMPDMP

Page 92: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Αν βρεθεί ένα τμήμα S με μόνο μία τέτοια περιοχή r, τότε κατασκευάζεται ο υπογράφος H′i+1 σχεδιάζοντας ένα μονοπάτι P μεταξύ των 2 κορυφών επαφής του S με το περίγραμμα της περιοχής r.

Αν δεν βρεθεί ένα τέτοιο τμήμα S, τότε κατασκευάζεται ένα μονοπάτι P μεταξύ 2 κορυφών επαφής οποιουδήποτε τμήματος.

Σε οποιαδήποτε από τις 2 προηγούμενες περιπτώσεις το μονοπάτι P χωρίζει την περιοχή όπου ενσωματώνεται σε 2 υποπεριοχές.

Η ανωτέρω διαδικασία επαναλαμβάνεται r = m–n+2 φορές το πολύ.

93

Βασικές αρχές Βασικές αρχές DMPDMP

Page 93: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Αλγόριθμος DMP ελέγχου επιπεδικότηταςΕίσοδος: ένα προεπεξεργασμένο τεμάχιο G (έλεγχος 6

σταδίων)Έξοδος: Απάντηση αν ο γράφος G είναι επίπεδος ή όχιΜέθοδος DMP: Αναζήτηση μιας ακολουθίας παραδεκτών

ενσωματώσεων σε έναν αρχικό κύκλο C.

1. Εύρεση ενός κύκλου C και μιας επίπεδης ενσωμάτωσης του C η οποία είναι ο αρχικός υπογράφος H′1. i←1, r←2

2. Αν r=m–n+2, τότε ο γράφος είναι επιπεδικός και ο αλγόριθμος τερματίζει αλλιώς προσδιορίζονται τα τμήματα S του H′i στο γράφο G και για κάθε τμήμα προσδιορίζεται το σύνολο των περιοχών R(S, H′i)

94

Αλγόριθμος Αλγόριθμος DMPDMP

Page 94: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

3. Αν υπάρχει ένα τμήμα S με R(S,H′i)=∅, τότε ο γράφος δεν είναι επιπεδικός και ο αλγόριθμος τερματίζει αλλιώς αν υπάρχει ένα τμήμα S με |R(S, H′i)|=1, τότε θέτουμε {r} = R(S, H′i)αλλιώς λαμβάνουμε ως S οποιοδήποτε τμήμα και ως r οποιαδήποτε περιοχή του συνόλου R(S, H′i)

4. Επιλέγεται ένα μονοπάτι P του S που συνδέει 2 κορυφές επαφής του S. Θέτουμε H′i+1= H′i ∪P για να προκύψει η επίπεδη ενσωμάτωση H′i+1 με το P τοποθετημένο στην περιοχή r

5. Θέτουμε i←i+1, r←r+1 και πηγαίνουμε στο βήμα 2

95

Αλγόριθμος Αλγόριθμος DMPDMP

Page 95: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab 96

Αλγόριθμος Αλγόριθμος DMP DMP (συνοπτικά)(συνοπτικά)

Page 96: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Θα υπολογίσουμε μια ενσωμάτωση του G=K5–{e1,e2}, e1=(4,5), e2=(2,4).

Βήμα 1. Βρίσκουμε έναν κύκλο C και μια επίπεδη ενσωμάτωσή του H′1. i=1, r=2

1

5

432

G=K5-(4,5)-(2,4)

1

34

2

r2

r1H′1

1

5

32

1

3

S1S2

97

ΠαράδειγμαΠαράδειγμα

Page 97: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Βήμα 2. Ισχύει r=2 και m–n+2=8–5+2=5. Βρίσκουμε τα τμήματα του G που είναι σχετικά προς τον H′1, δηλαδή τα S1 και S2. Ισχύει R(S1,H′1)={r1,r2}=R(S2,H′1)

98

Παράδειγμα – Παράδειγμα – συνέχειασυνέχεια

1

5

432

G=K5-(4,5)-(2,4)

1

34

2

r2

r1H′1

1

5

32

1

3

S1S2

Page 98: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Βήμα 3. Επειδή R(S1,H′1)={r1,r2}=R(S2,H′1) επιλέγουμε τυχαία το S2

Βήμα 4. Στη συνέχεια πρέπει να επιλέξουμε ένα μονοπάτι P μεταξύ 2 κορυφών επαφής. Έστω ότι επιλέγουμε το μονοπάτι P=(1,5,2) το οποίο το ενσωματώνουμε σε οποιαδήποτε από τις περιοχές του συνόλου R(S2, H′1). Διαλέγουμε τυχαία την εξωτερική περιοχή r2. Τότε παίρνουμε το γράφο H′2

1

34

2

r2r1H′2

5

r3

99

Παράδειγμα – Παράδειγμα – συνέχειασυνέχεια

Page 99: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Βήμα 5. Δημιουργούνται 3 περιοχές. Θέτουμε r=3, i=2 και πηγαίνουμε στο βήμα 2.

Βήμα 2. Ισχύει r=3 και m–n+2=8–5+2=5. Άρα βρίσκουμε τα τμήματα του G που είναι σχετικά προς τον H′2. Αυτά είναι τα S1=(1,3) και S2=(3,5).

1

34

2

r2r1H′2

5

r3

1

5

432

G=K5-(4,5)-(2,4)

1

3

S1

3

5

S2

100

Παράδειγμα – Παράδειγμα – συνέχειασυνέχεια

Page 100: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Βήμα 3. Το (3,5) ενσωματώνεται μόνο στην περιοχή r2

Βήμα 4. Γίνεται η ενσωμάτωση του τμήματος, οπότε προκύπτει ο υπογράφος H′3

Βήμα 5. Τίθεται r=4, i=3 και πηγαίνουμε στο βήμα 2

1

34

2

r4r1

H′3

5

r3

r2

101

Παράδειγμα – Παράδειγμα – συνέχειασυνέχεια

Page 101: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Βήμα 2. Ισχύει r=4 και m–n+2=8–5+2=5. Βρίσκουμε τα τμήματα του G που είναι σχετικά προς τον H′3. Αυτό είναι το S1=(1,3)

Βήμα 3. Το τμήμα (1,3) ενσωματώνεται στις περιοχές r1 και r2. Διαλέγουμε τυχαία την r1

1

34

2

r4r1

H′3

5

r3

r2

1

5

432

G=K5-(4,5)-(2,4)

1

3

S1

102

Παράδειγμα – Παράδειγμα – συνέχειασυνέχεια

Page 102: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Βήμα 4. Με την ενσωμάτωση παίρνουμε τον γράφο H′4. Βήμα 5. Θέτουμε r=5, i=4 και πηγαίνουμε στο βήμα 2. Βήμα 2. Ισχύει r=5 και m–n+2=8–5+2=5, οπότε ο

αλγόριθμος τερματίζει

1

34

2

r4

r1

H′4

5

r3

r2r5

103

Παράδειγμα – Παράδειγμα – συνέχειασυνέχεια

Page 103: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Δίνεται ο επόμενος γράφος και ο κύκλος C={1,6,5,4,3,2,1}. Να διαπιστωθεί αν ο γράφος είναι επίπεδος με τον

αλγόριθμο DMP

104

ΠαράδειγμαΠαράδειγμα

1

2

3

4

5

67

8

Page 104: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ο κύκλος C δημιουργεί τις περι-οχές F1 και F2. Οι γέφυρες B1-B5 εντάσονται και στις δύο. Επι-λέγεται η γέφυρα Β1. Δημιουρ-γούνται οι περιοχές F2, F3, F4.

105

Παράδειγμα – Λύση 1Παράδειγμα – Λύση 1

Page 105: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Εντάσσεται το μονοπάτι {2,7,5} της γέφυρας Β5

Εντάσσεται η γέφυρα Β2

106

Παράδειγμα – Λύση 2Παράδειγμα – Λύση 2

Page 106: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Επιλέγεται η γέφυρα Β3, επιλέγεται η γέφυρα Β4

107

Παράδειγμα – Λύση 3Παράδειγμα – Λύση 3

Page 107: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab 108

Παράδειγμα – Λύση 4Παράδειγμα – Λύση 4 Επιλέγεται η γέφυρα Β6, επιλέγεται η γέφυρα Β7

Page 108: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

Ο αλγόριθμος τερματίζει όταν το πλήθος των περιοχών είναι: f = e-n+2 = 16-8+2 = 10

109

Παράδειγμα – Λύση 5Παράδειγμα – Λύση 5

Page 109: Θεωρία Γράφων Θεμελιώσεις-Αλγόριθμοι-Εφαρμογές Κεφάλαιο  5 : Επιπεδικότητα

Data Engineering Lab

www.planarity.net

110

ΟπτικοποίησηΟπτικοποίηση