VorelBA_WS15

Werbung
Einführung in die Informationsverarbeitung
Teil Thaller
Stunde V:
Wege und warum man sie geht ...
... Graphen.
Köln 14. Januar 2016
Das Problem
2
A* Algorithmus: Schluß
3
Ausgangspunkt I
Möglichkeit möglichst vieler derartiger Probleme auf eine
einzige Klasse von Vorgehensweisen zurück zu führen.
4
Ausgangspunkt II:
5
Abstraktion IV
6
„Ein Graph“
Knoten
(Vertex, Nodes)
Kanten
(Edges)
7
Definition des Problems
Ein Graph G heißt
Eulerscher Graph,
falls es einen
geschlossenen
einfachen Kantenzug
gibt, der jede Kante
von G enthält. Ein
solcher Kantenzug
heißt dann Eulerscher
Kantenzug.
8
„Lösung“ des Problems
Sei G ein
zusammenhängender
Graph. Genau dann
ist G ein Eulerscher
Graph, wenn jeder
Knoten von G
geraden Grad hat.
9
Ziele der Graphentheorie in der
Informatik
(1) Erlaube Aussagen
über auf Graphen
zurückführbare
inhaltliche Probleme.
10
Ziele der Graphentheorie in der
Informatik
Kopf:
Atom 1
(2) Beschreibe direkt die
Atom 2
Eigenschaften von Listen,
die wir am Tag 2 als eine
der grundlegenden
Datenstrukturen
kennengelernt haben.
Atom 3
Schwanz:
11
Definitionen I
Einfacher,
ungerichteter Graph.
Auch „schlichter
Graph“.
12
Definitionen …
Ist G ein Graph, so sagt man allgemein v ist Knoten (bzw.
Ecke) von G, wenn v zu V(G) gehört. Ferner sagt man,
falls G
•ungerichteter Graph ohne Mehrfachkanten ist und e zu
E(G) gehört, e ist eine ungerichtete Kante von G,
•gerichteter Graph ohne Mehrfachkanten ist und e zu E(G)
gehört, e ist eine gerichtete Kante von G,
•ungerichteter Graph mit Mehrfachkanten ist und E(G)(e)
> 0, e ist eine ungerichtete Kante von G,
•gerichteter Graph mit Mehrfachkanten ist und E(G)(e) >
0, e ist eine gerichtete Kante von G.
13
Definitionen II
Einfacher, gerichteter
Graph.
Kanten hier:
„gerichtete Kanten“,
Bögen oder Dikanten.
14
Definitionen III
Ungerichteter Graph
mit Mehrfachkanten,
auch „Multigraph“.
15
Definitionen IV
Knotengefärbter
Graph.
16
Definitionen V
Kantengefärbter
Graph.
17
Definitionen VI
Ein verbundener
- oder
zusammenhängender Graph.
18
Definitionen VII
Ein unverbundener oder
unzusammenhängender
- Graph.
19
Definitionen VIII
Ein Graph mit einer
Schleife
20
Definitionen IX
Ein Graph mit einem
Zyklus.
21
Definitionen IX
Ein Graph mit einem
Zyklus.
22
Beziehung: Graphen und
Matrizen
K2
K1
K4
K3
23
Beziehung: Graphen und
Matrizen
K2
K1
1
1
1
0
1
0
2
1
1
2
0
1
0
1
1
0
K4
K3
24
Konzept Isomorphie I
25
Konzept Isomorphie II
26
Konzept Isomorphie III
27
Konzept Isomorphie IV
Zwei Graphen G1 und G2 sind isomorph, wenn es eine
umkehrbar eindeutige Beziehung zwischen den Ecken von
G2 gibt derart, dass die Anzahl der Verbindungskanten
zweier Ecken von G1 gleich der Anzahl von
Verbindungskanten der entsprechenden Ecken von G2 ist.
28
Anwendung Isomorphie
Nachteil: Überschneidungen, Diagramm daher
potentiell verwirrend.
29
Anwendung Isomorphie
Vorteil: Keine Überschneidungen, Diagramm
daher klarer.
30
Weitere Begriffe
Grade:
Anzahl der Kanten von und zu einem Knoten / allen
Knoten.
Eingangsgrade und Ausgangsgrade.
Maximale / Minimale Eingangsgrade / Ausgangsgrade.
31
Weitere Begriffe
Verbundenheit:
Ein Graph ist n-verbunden, wenn n Kanten entfernt
werden können, ohne dass er unzusammenhängend wird.
32
Beispiel
33
Verbindungen
34
Verbindungen
35
Verbindungen
36
Verbindungen
37
Verbindungen
38
Travelling salesman
Besuche jede Stadt, aber keine zweimal – auf möglichst kurzem Weg.
39
Travelling salesman
“Brute force” Anzahl der Permutationen: (7-1)!/2 = 360
40
Travelling salesman
“Branch and Bound” Anzahl der Permutationen < “Brute Force”
41
Travelling salesman
“Nearest Neighbour” Ergebnis abhängig vom Startknoten
42
Weitere Begriffe
Durchmesser:
Ein Graph hat den Durchmesser n, wenn der längste nichtzyklische Kantenzug zwischen zwei Knoten n Knoten
durchläuft.
43
Weitere Begriffe
Ein ungerichteter,
zusammenhängender Graph
ohne Zyklen heisst Baum.
D.h., die schwarzen Pfeile im nebenstehenden
Diagramm definieren Zeiger nach unserer früheren
Definition.
Die roten Linien repräsentieren die Kanten im
repräsentierten Graphen.
44
Anwendungen …
Semantisches Netz
45
Anwendungen …
P2P Netzwerk
46
Anwendungen …
www.stanford.edu/group/toolingup/rplviz/
47
Anwendungen …
www.stanford.edu/group/toolingup/rplviz/
48
Anwendungen …
http://informationandvisualization.de/blog/graphbas
ed-visualization-topic-shifts
49
Anwendungen …
http://mappingmetaphor.arts.gla.ac.uk
50
Literatur
Im empfohlenen Lehrbuch (Gumm / Sommer, Einführung
in die Informatik, Oldenbourg, 82008) Kapitel 4.
http://www.mathematik.uni-marburg.de/~gumm/Buch/
Dazu gehörige Programme (Kapitel 4) zum Download.
51
Vielen Dank!
Herunterladen