23
Planare Graphen Planare Graphen Zeichnen von Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Sommersemester 2006 Christoph Bösel Christoph Bösel

Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Embed Size (px)

Citation preview

Page 1: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Planare GraphenPlanare GraphenZeichnen von GraphenZeichnen von Graphen

Proseminar Algorithmen auf GraphenProseminar Algorithmen auf GraphenSommersemester 2006Sommersemester 2006

Christoph BöselChristoph Bösel

Page 2: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

ÜberblickÜberblick

Begriff

Euler-Satz

Kuratowski-Satz

Boyer-Myrvold-Algorithmus O(n)

Demoucron-Algorithmus O(n²)

Zeichnen

Zusammenfassung, Fragen

Page 3: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

A={K2}

Begriff „planar“Begriff „planar“

AA 11 22

11 00 11

22 11 00

BB 11 22 33

11 00 11 11

22 11 00 11

33 11 11 00

CC 11 22 33 44

11 00 11 11 11

22 11 00 11 11

33 11 11 00 11

44 11 11 11 00

B={K3}2

11

23

planarin der Ebene darstellbar,ohne dass sich Kantenüberschneiden

1

2 3

4

1

2

3

4

C={K4}

kein Einfluss- gerichtet/ungerichtet- mehrfache Kanten- Schlingen- Gewichtung von Kanten- etc.vereinfacht- einfach- ungerichtet

komplettjeder Knoten besitzt mitjedem weiteren Knoteneine gemeinsame Kante

Page 4: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Der KDer K55

DD 11 22 33 44 55

11 00 11 11 11 11

22 11 00 11 11 11

33 11 11 00 11 11

44 11 11 11 00 11

55 11 11 11 11 00

1

2

3

4

D={K5}

Fehlt nur eineclevere Idee?

Gibt es (eine)Lösung?

5

5

Page 5: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Satz von EulerSatz von Euler

1

2

3

4

5

6

V = C6 = 6

6 = 6

Page 6: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Satz von EulerSatz von Euler

1

2

3

4

5

6

V = C6 =

6 =

5

5?

Page 7: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Satz von EulerSatz von Euler

1

2

3

4

5

6

V = C6 =

=

5

5

- E- 1

5

Page 8: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Satz von EulerSatz von Euler

1

2

3

4

5

6

V = C6 =

=

- E- 5 1

1 1

Page 9: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Satz von EulerSatz von Euler

1

2

3

4

5

6

V = C6 =

=

- E- 1

1

6

0 ?

Page 10: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Satz von EulerSatz von Euler

1

2

3

4

5

6

V = C6 =

=

- E- 1

1

6

+ F+ 1

1

Page 11: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Satz von EulerSatz von Euler

1

2

3

4

5

6

V = C6 =

=

- E- 16

+ F+

+ 12 + 1

2 2

+E[+V] v [+F] v [-C]

vereinfacht- zusammenhängend, C=1

Page 12: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

weitergeeulertweitergeeulert

V - E + F = 2

mi ≤ 2E1

2

3

4

mi ≥ 3F

F ≤ 2E / 3

E = V + F - 2 ≤ V + 2E / 3 - 2

E ≤ 3V - 6

Page 13: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Euler und der KEuler und der K55

DD 11 22 33 44 55

11 00 11 11 11 11

22 11 00 11 11 11

33 11 11 00 11 11

44 11 11 11 00 11

55 11 11 11 11 00

1

2

3

4

D={K5}

5

5

E 3V - 6≤10 3*5 - 6≤

10 9≤?

Widerspruch!

Wirklich soeinfach?

Page 14: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

11/6 vs. K11/6 vs. K5 5 UU 1/1 1/1

EE 11 22 33 44 55 66

11 00 11 11 11 00 00

22 11 00 11 11 11 00

33 11 11 00 00 11 11

44 11 11 00 00 11 11

55 00 11 11 11 00 11

66 00 00 11 11 11 00

1

2

3

4

F

5

5

11 3*6 - 6≤

11 12≤

Und nun?

FF 11 22 33 44 55 66

11 00 11 11 11 11 00

22 11 00 11 11 11 00

33 11 11 00 11 11 00

44 11 11 11 00 11 11

55 11 11 11 11 00 00

66 00 00 00 11 00 00

1

2

3

4

5

6

E6

Page 15: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Satz von KuratowskiSatz von Kuratowski

1

5

2

3

4

1

2

3

6

5

4

Ein endlicher Graph ist genau dann planar, wenn er keinenTeilgraphen enthält, der durch die Erweiterung des K3,3 oderK5 entstanden ist.

K3,3

K5

FF 11 22 33 44 55 66

11 00 11 11 11 11 00

22 11 00 11 11 11 00

33 11 11 00 11 11 00

44 11 11 11 00 11 11

55 11 11 11 11 00 00

66 00 00 00 11 00 00FF 11 22 33 44 55 66

11 00 11 00 11 11 11

22 11 00 00 11 11 11

33 00 00 00 00 11 00

44 11 11 00 00 11 11

55 11 11 11 11 00 11

66 11 11 00 11 11 00

GG 11 22 33 44 55 66 77 88 99 .... .... ....

11 00 11 00 11 00 00 11 11 00 00 11 00

22 11 00 11 00 11 11 00 00 11 00 00 00

33 00 11 00 00 11 11 00 00 11 00 00 00

44 11 00 00 00 00 00 00 00 00 00 00 00

55 00 11 11 00 00 11 00 00 11 00 00 00

66 00 11 11 00 11 00 11 00 11 00 00 00

77 11 00 00 00 00 11 00 11 00 00 11 00

88 11 00 00 00 00 00 11 00 00 00 00 11

99 00 11 11 00 11 11 00 00 00 00 00 00

.... 00 00 00 00 00 00 00 00 00 00 11 00

.... 00 00 00 00 00 00 11 00 00 11 00 00

.... 00 11 00 00 00 00 00 11 00 00 00 00

Heute schonwas vor?

Page 16: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Boyer-MyrvoldBoyer-Myrvold

GG 11 22 33 44 55 66 77 88 99

11 00 11 00 11 00 00 11 11 00

22 11 00 11 00 11 11 00 00 11

33 00 11 00 00 11 11 00 00 11

44 11 00 00 00 00 00 00 00 00

55 00 11 11 00 00 11 00 00 11

66 00 11 11 00 11 00 11 00 11

77 11 00 00 00 00 11 00 11 00

88 11 00 00 00 00 00 11 00 00

99 00 11 11 00 11 11 00 00 00

1.

1

2

3

5

6

7

8

9

4

1

2 3

4

5

6

7 8

9

- Graph wird durch Tiefensuche in Baumstruktur überführt- Knoten werden nach Postorder-Reihenfolge neu bezeichnet- Datenstruktur G~ initialisieren

Page 17: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Boyer-MyrvoldBoyer-Myrvold

2. for jeden Knoten v = 1 to n

3. for jedes Kind c von v in GBaumkante (vc, c) in G~ einfügen

4. for jede Rückkante, indizent zu v und einem Nachfolger wWalkup(G~, v, w)

5. for jedes Kind c von v in GWalkdown(G~, vc)

6. for jede Rückkante, indizent zu v und einem Nachfolger wif (vc, w) є G~/

Kuratowski-Teilgraphen aus G~ isolierenreturn (nicht planar, G~)

7. return (planar, G~)

Page 18: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Boyer-MyrvoldBoyer-Myrvold

positiv:

negativ:

- Laufzeit O(n)- Rückgabe von

- Entscheidung planar/nicht-planar- Kuratowski-Teilgraph (wenn nicht planar)- Einbettung (wenn planar)

- robust- einfacher als andere O(n)-Algorithmen

- immernoch recht komplex

Page 19: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

DemoucronDemoucron

1. beliebigen Kreis aus G in G‘ einbinden2. alle Flächen von G‘ bestimmen3. F(S) bestimmen (verbleibende Fragmente von G)4. if F(S)=O then return planar5. für alle F(S) die angrenzbaren Flächen bestimmen6. if es gibt F(S) ohne solche Fläche then return nicht-planar7. if es gibt F(S) mit nur einer Fläche then goto 9.8. Fragment von F(S) aussuchen9. α-Pfad aussuchen und in angrenzbare Fläche einbinden

10. goto 2.

/

Page 20: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

DemoucronDemoucron

positiv:

negativ:

- einfach zu implementieren

- Laufzeit O(n²)- keine Rückgabe außer planar/nicht-planar

Page 21: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Zeichnen von GraphenZeichnen von Graphen

1

2

3

4

5

6

1

2

3

4

5

6

platzsparende, übersichtlicheEinbettung

irgendwiehalt..

Einbettung durch Boyer-Myrvold-Aglorithmusoder andere, spezialisierte Algorithmen

Page 22: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

ZusammenfassungZusammenfassung

planar – p wie platt

K5 und K3,3 - die Wurzeln alles Bösen

Grundversorgung durch einfache, aber zeiltlich aufwändigeAlgorithmen mit quadratischer Laufzeit

leistungsstarke Algorithmen mit linearer Laufzeit und jederMenge Goodies, jedoch sehr komplex

übersichtliche Zeichnung als Erweiterung des Planaritätstests

Page 23: Planare Graphen Zeichnen von Graphen Proseminar Algorithmen auf Graphen Sommersemester 2006 Christoph Bösel

Fragen?