Graphentheorie

Werbung
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
The trick in teaching mathematics is that I do the easy part and you do the hard part.
Hahn Hiang‐Shin, Complex Numbers and Geometry
MBT
Mathematische Basistechniken
Elementare Graphentheorie
Christian Cenker
CSLearn
CSLearn‐Educational Technologies
Data Analysis and Computing
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
Graphentheorie
Euler: Königsberger Brückenproblem
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
1
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Straßenkarten
U‐Bahn‐Netze
Navigationssysteme
Soziometrie
Stammbäume
Unternehmenshierarchien
Schaltpläne
Handymastennetze
© CC, 2016
Graphentheorie
Definitionen
Graph
, ,
Menge von Knoten (vertex, vertices)
Menge von Kanten (edge, edges)
:
→
Funktion, die jeder Kante ∈
ein Paar von Knoten aus zuordnet
1
Diagramm
Notation
4
2
, ,
Knotenmenge ,
,
Kantenmenge ,
,
Funktion ,
3
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
2
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Definitionen
, ,
Graph
1
Knotenmenge 1,2,3,4
Kantenmenge 4
Funktion ,
,
1,2 , 2,3 , 1,3
3
2
© CC, 2016
Graphentheorie
Definitionen
Diagramme
1
1
2
4
3
4
2
3
Zwei Diagramme des selben Graphen
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
3
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Kanten
,
ungerichtete Kante (ungeordnetes Paar ,
)
Endknoten und Die Kante ist inzident zu und ((hinein)fallen)
Die Knoten und sind zur Kante inzident
und sind adjazent (benachbart)
,
gerichtete Kante (geordnetes Paar ,
)
Anfangsknoten Endknoten ,
oder © CC, 2016
Graphentheorie
Kanten
,
oder ist eine Schlinge ist Mehrfachkante, falls es zumindest ein ′ ∈ \
gibt, mit Zwei Kanten und ′ heißen benachbart, wenn sie zumindest einen gemeinsamen Knoten haben: ∩
∅,
e′
Notation
ungerichtete Kanten: auch ,
gerichtete Kanten: auch ,
statt ,
statt ,
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
4
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Graphen
ungerichteter Graph: besteht nur aus ungerichteten Kanten
gerichteter Graph : besteht nur aus gerichteten Kanten
gemischter Graph: besteht aus gerichteten und ungerichteten Kanten
gemischte Graphen werden meist in gerichtete umgewandelt
jede ungerichtete Kante wird durch zwei entgegengesetzt gerichtete Kanten ersetzt
, → , , ,
endlicher Graph , ,
: und sind endliche Mengen
unendlicher Graph: wenn er kein endlicher Graph ist
leere Graph ∅, ∅, ∅
schlichter Graph: wenn er weder Schlingen noch Mehrfachkanten hat
vollständiger Graph: ein schlichter Graph, in dem je zwei Knoten durch eine Kante verbunden sind , , ,
,
, | ,
∈ ,
© CC, 2016
Graphentheorie
Graphen
schlichter Graph: wenn er weder Schlingen noch Mehrfachkanten hat
schlichter Graph: jede Kante kann mit dem Paar inzidenter Knoten eindeutig identifiziert werden
gerichtet: in der Reihenfolge (Anfangsknoten, Endknoten)
daher: mit identifizieren
Schatten eines Graphen: entgegengesetzt gerichtete Kanten werden durch eine ungerichtete Kante ersetzt
alle anderen verbleibenden gerichteten Kanten werden ebenfalls durch ungerichtete Kanten ersetzt
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
5
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Kantendichte
vollständiger Graph: hat 2
Kanten
| |
Kantendichte dichter Graph (dense): hohe Kantendichte
spärlicher Graph (sparse): geringe Kantendichte
© CC, 2016
Graphentheorie
Knotengrade
ungerichteter Graph , ,
Anzahl der zu ∈
inzidenten Schlingen
Anzahl der zu ∈
inzidenten Kanten
2·
Knotengrad von gerichteter Graph , ,
∈
|∃ ∈
:
,
Outdegree von ∈
∈
|∃ ∈
:
,
Indegree von ∈
Grad von ∈
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
6
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Knotengrade
0
ist isolierter Knoten des Graphen 1
ist Anfangs‐ oder Endknoten
0
ist Senke
0
ist Quelle
2·|
|
∈
Die Anzahl der Knoten mit ungeradem Grad ist gerade.
∑
gerichteter Graph: ∑
∈
∈
© CC, 2016
Graphentheorie
Teilgraphen
und ′
′, ′, ′
′ heißt Teilgraph von ,
⊆ falls Graphen , ,
⊆
′ heißt spannender Teilgraph von ,falls und ⊆
⊆
und ′ heißt von ′ induzierter Teilgraph von ,
falls alle Kanten von zwischen den Knoten in enthält
induzierter Teilgraph = aufgespannter Teilgraph = gesättigter Teilgraph
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
7
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Mengenoperationen
,
Graphen sei ,
,
und ∩
∩
∩
,
∩
,
∩
∪
∪
,
∪
,
∪
,
für ∈
∈ ∈
∪
\V
entferne alle Knoten aus \
entferne alle Kanten aus \
̅
\ ,
\
,
, , ̅
, ,
∩
und die inzidenten Kanten und deren Funktionswerte \
Komplement eines schlichten Graphen ̅ : Verbindung aller Knoten von , die in nicht verbunden sind: © CC, 2016
Graphentheorie
Durchschnitt, Vereinigung
1
2
1
2
5
∪
4
3
1
2
3
∩
1
2
5
4
3
3
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
8
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Isomorphie
Diagramme
1
1
2
4
3
4
3
2
Zwei Diagramme des selben Graphen
A
Dazu isomorpher Graph
B
C
D
© CC, 2016
Graphentheorie
Isomorphie
, ,
ungerichtete Graphen und ′
′, ′, ′
≅ ′ isomorph, wenn es bijektive Funktionen →
:
:
∀ ∈
und :
,
gerichtete Graphen →
⟹
, ,
,
und ′
→
∀ ∈
:
und :
,
⟹
→
gibt:
′
′, ′, ′
≅ ′ isomorph, wenn es bijektive Funktionen :
und und gibt:
,
′
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
9
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Graphen und Matrizen
Diagramm
1
4
3
1
2
4
Adjazenzmatrix
2
0
1
0
1
0 1
01
0 1
1 0
1
0
0
1
0
0
0
0
1
0
1
1
0 0
02
0 0
0 0
3
© CC, 2016
Graphentheorie
Graphen und Matrizen
Adjazenzmatrix
ungerichteter Graph gerichteter Graph , ,
, ,
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
10
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Graphen und Matrizen
Inzidenzmatrix
, ,
ungerichteter Graph , ,
gerichteter Graph © CC, 2016
Graphentheorie
Graphen und Matrizen
Diagramm
1
Inzidenzmatrix
2
1
1
0
0
4
1 0 0
0 10
0 0 1
1 1 1
1
2
3
4
3
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
11
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Graphen und Matrizen
Adjazenz‐ und Inzidenzmatrizen sind bis auf Isomorphie eindeutig bestimmt
ungerichteter Graph
Die zugehörige Adjazenzmatrix ist symmetrisch
Spalten‐ wie auch Zeilensumme der Adjazenzmatrix
ergeben den Grad des Knoten
Die Zeilensumme der Inzidenzmatrix B ist gleich dem Grad des Knoten
Die Spaltensumme der Inzidenzmatrix ist stets 2
gerichteter Graph
Die Zeilensumme der Adjazenzmatrix ist gleich dem Outdegree des Knoten
Die Spaltensumme der Adjazenzmatrix ist gleich dem Indegree des Knoten
© CC, 2016
Graphentheorie
Graphen und Matrizen
Graphen ,
,
und ,
,
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
12
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Kanten … Kantenfolgen
,
,
,
,
,
,
,
Kantenzug – jede Kante maximal 1x
,
,
,
Weg – Kantenzug ohne Kreis
, , ,
Kreis – eine geschlossene Kantenfolge
,
,
Nullweg –
© CC, 2016
Graphentheorie
Kanten … © CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
13
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Kantenfolge, Weg, Kreis, Zyklus
Ein Kantenzug ist eine Kantenfolge, in der jede Kante nur einmal vorkommt.
Ein Weg ist eine Kantenfolge ohne Kreis.
Jeder Knoten tritt genau einmal auf.
Ein gerichteter Weg heißt auch Bahn (Orbit).
Ein gerichteter Kreis heißt auch Zyklus. Es darf nur der Start‐ und Endknoten doppelt auftreten.
© CC, 2016
Graphentheorie
Kantenfolge, Weg, Kreis, Zyklus
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
14
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Weg
© CC, 2016
Graphentheorie
Weg
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
15
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Wege, Erreichbarkeit
Ein Knoten heißt von einem Knoten aus erreichbar, wenn es einen Weg von nach gibt.
Wie kann bestimmt werden, ob ein Weg zwischen zwei Knoten existiert?
Wie kann dessen Länge berechnet werden?
Diagramm
1
2
1
4
3
4
2
3
© CC, 2016
Graphentheorie
Wege, Kantenfolgen, Länge
Diagramm
1
2
3
4
1
0
0
0
0
1
0
0
0 0
00
1 0
0 1
Adjazenzmatrix
0
1
0
1
1
0
0
1
0 1
01
0 1
1 0
2
1
1
1
1
2
1
1
1 1
11
1 0
0 3
2
3
1
4
3
2
1
4
1 4
14
0 3
3 2
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
16
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Wege, Kantenfolgen, Länge
Wie kann bestimmt werden, ob ein Weg zwischen zwei Knoten existiert?
Wie kann dessen Länge berechnet werden?
Das Produkt ist die Anzahl der Kantenfolgen der Länge zwei von nach , die über den Zwischenknoten verlaufen.
ist die Anzahl der Kanten zwischen dem Knoten Gibt es keine Kante dazwischen, ist 0.
Eine analoge Überlegung gilt für .
und dem Knoten Wird über alle möglichen Zwischenknoten summiert, , die Anzahl aller Kantenfolgen der Länge 2 von so enthalten wir .
nach .
© CC, 2016
Graphentheorie
Wege, Kantenfolgen, Länge
Diagramm
Adjazenzmatrix
1
2
3
4
0
0
0
0
0
4
0
0
0 4
00
0 4
0 4
0
0
0
0
1
0
1
1
0 0
02
0 0
0 0
0
0
0
0
0
2
0
0
0 2
00
0 2
0 2
0
0
0
0
2
0
2
2
0 0
04
0 0
0 0
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
17
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Wege, Länge
Allgemein gilt:
Die Anzahl der Kantenfolgen der Länge vom Knoten zum Knoten ist der Eintrag der Matrix .
© CC, 2016
Graphentheorie
Wege, Erreichbarkeit
Erreichbarkeit
Ist ein Knoten vom Knoten aus erreichbar?
Ein Weg darf einen Knoten nur einmal enthalten. Es gibt also bei Knoten maximal einen Weg der Länge 1
1.
Es gilt also:
Ist max
,
,…,
0,
so gibt es zumindestens einen Weg von nach Erreichbarkeitsmatrix
© CC, 2016
Es kommt nicht auf die Länge des Weges an, sondern nur auf die Erreichbarkeit!
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
18
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Erreichbarkeit, Zusammenhang
Ein ungerichteter Graph G heißt zusammenhängend, wenn jeder Knoten des Graphen von jedem anderen Knoten erreichbar ist
Ein gerichteter Graph G heißt stark zusammenhängend, wenn es für je zwei beliebige Knoten , eine Kantenfolge von nach gibt.
Ein gerichteter Graph G heißt schwach zusammenhängend, wenn der Schatten des Graphen zusammenhängend ist.
Zwei Knoten eines Graphen heißen zusammenhängend, wenn es eine Kantenfolge zwischen den beiden Knoten gibt.
Zwei Knoten eines Graphen heißen stark zusammenhängend, wenn es eine
gerichtete Kantenfolge zwischen den beiden Knoten gibt.
© CC, 2016
Graphentheorie
Erreichbarkeit, Zusammenhang
stark zusammenhängend
schwach zusammenhängend
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
19
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Erreichbarkeit, Zusammenhang
Zusammenhangskomponenten
Erreichbarkeitsrelation
, wenn von aus erreichbar
reflexiv und transitiv, daher Äquivalenzrelation.
Die Äquivalenzklassen sind die Zusammenhangskomponenten.
© CC, 2016
Graphentheorie
Zusammenhang, Distanz
, ,
Graph ,
Distanz ,
,
∈
von und ,
∞, und in verschiedenen Zusammenhangskomponenten. ,
Länge des kürzesten Weges von nach .
,
0
,
0 ⇔ Es gilt
,
,
,
,
Symmetrie
,
Mit diesen Eigenschaften ist Dreiecksungleichung
eine Metrik.
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
20
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Distanzen, weiter Maßzahlen
, ,
Graph ,
Distanz ,
,
∈
von und Exzentrizität
Durchmesser
Radius
Zentrum
© CC, 2016
Graphentheorie
Distanzen, gewichtete Graphen
, ,
Graph Gewichtsfunktion :
→
gewichteter Graph ,
Länge einer Kantenfolge in einem gewichteten Graphen
∑
wobei ,
,…,
‐Distanz zweier Knoten
,
,
ist die Länge des kürzesten Weges zwischen und © CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
21
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Euler‘sche Linie, Hamilton‘sche Linie
Eine Kantenfolge, die jede Kante des Graphen genau einmal enthält und durch
jeden Knoten des Graphen geht, heißt Euler‘sche Linie. Ist diese Kantenfolge geschlossen, so heißt diese geschlossene Euler‘sche Linie.
Eine Kantenfolge, die jeden Knoten des Graphen genau einmal enthält,
heißt Hamilton‘sche Linie. Ist diese Kantenfolge geschlossen, so heißt diese geschlossene Hamilton‘sche Linie.
Die Kantenfolge enthält den Anfangs‐ und Endknoten genau zweimal, alle anderen Knoten genau einmal.
Euler‘sche Linie
Hamilton‘sche Linie
© CC, 2016
Graphentheorie
Euler‘sche Linie
Gerichteter Graph G
Es gibt genau dann eine geschlossene Euler‘sche Linie, wenn gilt:
für alle Knoten ∈
(1) (2) ist schwach zusammenhängend
Ungerichteter Graph G
Es gibt genau dann eine geschlossene Euler‘sche Linie, wenn gilt:
ist gerade für alle Knoten ∈
(1) (2) ist zusammenhängend
Probleme: Automatisches Testen von Programmübergängen
Königsberger Brückenproblem
Chinesisches Briefträgerproblem (CPP), route inspection problem
Verfahren zur Bestimmung einer Eulerlinie: Hierholzer, Fleury, et a.l.
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
22
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Hamilton‘sche Linie
Es gibt leider kein Kriterium festzustellen, ob ein Graph eine (geschlossene) Hamilton‘sche Line besitzt.
Problem: TSP – Travelling Salesman Problem (gewichteter Graph)
Das TSP ist ein NP‐hard
© CC, 2016
Graphentheorie
Azyklische Graphen, Wälder, Bäume, Gerüste
Zyklischer Graph
Azyklischer Graph
Ein gerichteter Graph ohne Kreise heißt azyklisch.
In einem azyklischen Graphen gibt es mindestens einen Knoten ∈ V mit Outdegree
und mindestens einen Knoten mit Indegree
0
0
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
23
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Azyklische Graphen, Wälder, Bäume, Gerüste
Ein ungerichteter Graph, der keinen Kreis enthält, heißt Wald.
Ein zusammenhängender Wald heißt Baum.
Ein Knoten eines Baumes mit Grad 1 heißt Blatt.
Ein Wald mit drei Bäumen
© CC, 2016
Graphentheorie
Azyklische Graphen, Wälder, Bäume, Gerüste
Wurzelbaum
Ein Baum mit einem ausgezeichnetem Knoten: Der Wurzel
Pointer
Wurzel
Konvention bei gerichteten Graphen:
Pfeile von oben nach unten!
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
24
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Azyklische Graphen, Wälder, Bäume, Gerüste
Binärbaum
Von jedem Knoten führen entweder zwei Kanten oder keine Kante weg.
Blatt = ein Endknoten heißt Blatt.
Innerer Knoten = ein Knoten, von dem zwei Kanten wegführen
Binärbaum, falls Binärbaume sind
Binärbaum
© CC, 2016
Graphentheorie
Bäume, Wälder
Zwischen je zwei Knoten eines Baumes gibt es genau einen Weg.
Jeder Baum mit mindestens zwei Knoten enthält mindestens zwei Blätter.
Extremale Bäume mit n Knoten:
Der Weg der Länge mit genau zwei Endknoten
Der Stern mit 1 Endknoten
1 gilt für Baum
gilt für jeden Wald mit Bäumen
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
25
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Bäume, Wälder
gilt für jeden Wald mit Bäumen
Wird aus einem Baum eine Kante entfernt, so entsteht ein Wald mit genau zwei Zusammenhangskomponenten
(die Knoten‐Kanten‐Differenz wurde durch Entfernen dieser Kante auf 2 erhöht)
© CC, 2016
Graphentheorie
Bäume, Wälder
Wird einem Wald mit Komponenten eine Kante hinzugefügt, so entsteht entweder ein Wald mit 1 Komponenten falls die verbundenen Knoten in verschiedenen Zusammenhangs‐
komponenten des ursprünglichen Waldes lagen oder ein Graph mit genau einem Kreis falls die Knoten in derselben Zusammenhangskomponente lagen
Eine Kante, die zwei Bäume verbindet, heißt Brücke.
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
26
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Baum, Gerüst
Ein Teilgraph eines ungerichteten, zusammenhängenden Graphen G heißt Gerüst oder spannender Baum, wenn ein Baum ist und .
Ein Gerüst muss alle Knoten des Graphen enthalten.
Jeder ungerichtete Graph, der zusammenhängend ist, besitzt ein Gerüst.
© CC, 2016
Graphentheorie
Minimale Gerüste
verschiedene Gerüste.
Ein vollständiger Graph besitzt verschiedene Bäume mit der Knotenmenge Es gibt 1,2, … ,
Gesucht werden minimale Gerüste,
dh Gerüste mit minimaler Länge im Sinne gewichteter Graphen Die Länge oder das Gewicht eines Teilgraphen ⊆
ist die Summe der Gewichte all seiner Kanten ∑
,
.
.
∈
Ein Teilgraph heißt dann Minimalgerüst eines Graphen,
wenn alle anderen Gerüste des Graphen das gleiche oder ein größeres Gewicht haben.
Algorithmus von Kruskal: Bestimmung minimaler Gerüste.
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
27
Mathematische Basistechniken
MBT ‐ Elementare Graphentheorie
Graphentheorie
Anwendungen
Planare Graphen: Graphen, deren Diagramm so gezeichnet werden kann, dass sich Kanten nur in den Knoten schneiden
Beim Platinenlayout versucht man Leiterbahnen so zu entflechten,
dass eine Schaltung mit möglichst wenigen (planaren) Layern realisiert
werden kann.
Färbeprobleme: Kanten‐ oder Knotenfärbungen. Das berühmte Vierfarbenproblem (Einfärben von Landkarten) kann mit Hilfe der
Graphentheorie gelöst werden.
Weiters Matching‐Probleme in der Informatik, Routing‐Probleme, Darstellung von Flüssen in Netzwerken Netzwerkauslastungen und Optimierungen von Netzwerken
© CC, 2016
MBT (fast) überlebt
© CC, 2016
http://cewebs.cs.univie.ac.at/inf‐mbt/_vo
28
Herunterladen