Grundbegriffe der Informatik Tutorium 9 - Tutorium Nr. 16

Werbung
Grundbegriffe der Informatik
Tutorium 9
Tutorium Nr. 16
Philipp Oppermann | 7. Januar 2015
KARLSRUHER INSTITUT FÜR TECHNOLOGIE
KIT – Universität des Landes Baden-Württemberg und
nationales Forschungszentrum in der Helmholtz-Gemeinschaft
www.kit.edu
Gliederung
1
Iso- und Automorphismen
2
Repräsentation von Graphen
3
Erreichbarkeit und Wegematrix
4
Warshall-Algorithmus
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
2/16
Isomorphismen
Isomorphie
„Wenn man durch Umbennenung der Knoten aus G1 G2 machen kann,
dann sind G1 und G2 isomorph.“
Automorphismus
Isomorphismus von G nach G
also einfach Knoten umbenennen, aber nur Knotenbezeichnungen
aus V ? NEIN!
deswegen formale Definitionen!
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
3/16
Isomorphismen
Isomorphie
Ein Graph G1 = (V1 , E1 ) heißt isomorph zu einem Graphen
G2 = (V2 , E2 ), wenn es eine bijektive Abbildung f : V1 → V2 gibt mit der
Eigenschaft:
∀x ∈ V1 : ∀y ∈ V1 : (x , y ) ∈ E1 ⇐⇒ (f (x ), f (y )) ∈ E2
Die Abbildung f heißt dann auch ein (Graph-)Isomorphismus.
Automorphismus
Isomorphismus von G nach G:
Aut (G) = {f : V → V bijektiv | ∀x ∈ V : ∀y ∈ V :
(x , y ) ∈ E ⇐⇒ (f (x ), f (y )) ∈ E }
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
4/16
Repräsentation von Graphen
Sei G = (V , E ) ein Graph, n = |V |
Adjazenzliste
Für jeden Knoten wird eine Liste der adjazenten Knoten gespeichert.
Adjazenzmatrix
(
n × n Matrix A mit Aij =
Iso- und Automorphismen
1,
falls (i , j ) ∈ E
0,
sonst
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
5/16
Repräsentation von Graphen
Vorteile von Adjazenzlisten
schneller Zugriff auf adjazente Knoten
weniger Speicherplatz bei wenigen Kanten
Vorteile von Adjazenzmatrizen
schnell: „gibt es eine Kante zwischen Knoten i und j?“
weniger Speicherplatz als Adjazenzlisten bei vielen Kanten
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
6/16
Rechnen mit Adjazenzmatrizen
A2 gibt für jedes A2ij an, wie viele Pfade der Länge 2 von i nach j
existieren
A0 = I (Einheitsmatrix) =⇒ zu jedem Knoten v existiert genau ein
Pfad der Länge 0 von v nach v
An gibt für jedes Anij an, wie viele Pfade der Länge n von i nach j
existieren
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
7/16
Klausuraufgabe (SS12 Aufg.6)
Zeichnen Sie alle gerichteten Graphen G = (Z4 , E ) für deren
Adjazenzmatrix A gilt:

1

0
A2 = 
0
0
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
0
0
0
0
0
0
0
0

0
0

0
1
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
8/16
Erreichbarkeit und Wegematrix
Wegematrix
n × n Matrix W mit:
(
1, falls (i , j ) ∈ E ∗
Wij =
0, sonst
(
=
1,
falls ∃ Pfad von i nach j
0,
sonst
Wie sieht die Wegematrix W aus, wenn A nur aus Einsen besteht?
W = A.
Wann ist allgemein W = A?
Wenn E ∗ = E, also wenn E reflexiv und transitiv.
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
9/16
Erreichbarkeit und Wegematrix
Können die folgenden Matrizen Wegematrizen sein?

1
0
W1 = 
0
1
Iso- und Automorphismen
0
1
0
1
0
1
0
1

1
1
,
0
1
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16

1
0
W2 = 
1
1
0
1
0
1
0
0
1
0
Erreichbarkeit und Wegematrix

0
0

0
1
Warshall-Algorithmus
7. Januar 2015
10/16
Lösung
W1 : Nein, da Knoten 3 nicht von sich selbst erreichbar wäre
W2 : Ja
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
11/16
Erreichbarkeit und Wegematrix
Sei G = (V , E ) ein Graph, n = |V |
Wie lang ist ein Pfad in G maximal? =⇒ unendlich (mit Zyklen)
Gibt es einen wiederholungsfreien Pfad der Länge n in G, der kein
Zykel ist? =⇒ nein
Wir wissen: E ∗ =
∞
S
E i . Muss es wirklich bis ∞ sein?
i =0
=⇒ nein, bis n-1 reicht (da jeder Pfad mit Länge ≥ n Wiederholungen enthält oder ein Zykel ist, der durch E 0 abgedeckt ist)
gilt auch E ∗ =
3n
S
Ei?
=⇒ ja, ∀k ≥ n − 1 :
E∗ =
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Ei
i =0
i =0
Iso- und Automorphismen
k
S
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
12/16
Erreichbarkeit und Wegematrix
Signum


1,
sgn : R → R : sgn(x ) = 0,


−1,
falls x > 0
falls x = 0
falls x < 0
Berechnung der Wegematrix
W = sgn
k
X
!
k
A
∀k ≥ n − 1
i =0
„alle Pfade der Länge 0 + alle der Länge 1 + alle der Länge 2 + . . . +
alle der Länge k. Und anschließend alle Einträge ≥ 1 auf 1 setzen.“
ungefähr n5 Operationen (nicht sehr effektiv)
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
13/16
Warshall-Algorithmus
for i ← 0 to n − 1 do
for j ← 0(
to n − 1 do
1
falls i = j
Wij ←
Aij falls i 6= j
end for
end for
for k ← 0 to n − 1 do
for i ← 0 to n − 1 do
for j ← 0 to n − 1 do
Wij ← max (Wij , min(Wik , Wkj ))
end for
end for
end for
n2 + 2n3 Operationen
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
14/16
Aufgabe
Gegeben sei folgender Graph G = (Z3 , E ):
0
1
2
3
a) Geben Sie die Adjazenzmatrix A zu G an.
b) Wenden Sie den Warshall-Algorithmus an, um die Wegematrix zu
bestimmen. Geben Sie dabei die Matrix W an, die sich nach Abschluss
der Initialisierung ergeben hat, sowie die Matrizen W0 , W1 , W2 die
sich jeweils nach dem ersten, zweiten, dritten und vierten Durchlauf
der äußeren Schleife beim zweiten Teil des Algorithmus ergeben.
Iso- und Automorphismen
Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16
Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
15/16
Lösung

1
1
0
1
0
1
1
0
0
0

0
1

1
1
0
1
0
1
1
0
1
0
1
0
 , W0 = 
1
0
0
1
1
1
1
1
0
1
1
0
0
0
,
0
1

1
1
1
1
1
1
1
1
0
1 1


0
1 1
, W2 = 
1 1
0
1 1
1
1
1
1
1
0
0

0
1
0
1
a) A = 
1
0
1
1
b) W = 
1
0
1
1
W1 = 
1
1
Iso- und Automorphismen

Repräsentation von Graphen
Philipp Oppermann – GBI Tutorium Nr. 16






Erreichbarkeit und Wegematrix
Warshall-Algorithmus
7. Januar 2015
16/16
Herunterladen