Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Master Informatik
|
|
- Simon Hochberg
- vor 7 Jahren
- Abrufe
Transkript
1 Vorlesung für den Bereich Master Informatik Dozent: Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft
2 15. April 2014 VORLESUNG 1 Einführung 2
3 Motivation! Graphen wichtige abstrakte Datenstrukturen! Mächtiges Werkzeug zur Modellierung komplexer Probleme! Allgegenwärtig in täglichen Anwendungen! Straßennetzwerke in Navigationsgeräten! Soziale Netzwerke! Kommunikationsnetze! UML-Diagramme! Bildverarbeitung 3
4 Beispielalgorithmen und -anwendungen! APSP: Vorverarbeitung bei der Routenplanung! Partitionierung und Lastbalancierung: Effizientes paralleles Rechnen! Netzwerkanalyse: Hauptakteure in einem (sozialen) Netzwerk! Visualisierung von Graphen: Technische Zeichnungen, Geschäftsdatenanalyse 4
5 Netzwerkanalyse! Empirische Untersuchung von Daten, die als Netzwerk (Graph) modelliert werden können!!!! Modelle Struktur Maßzahlen Algorithmen! Anwendungsgebiete (Auswahl):!!!! 5 [ eec89088ee408b b jpg] [ research_projects/images/fig11-3.gif] Technik: Internet und Telefon, Strom, Transport und Logistik,... Information: WWW, Zitierungen,... Biologie: Protein-Protein-Interaktionen,... Soziales: Soziale Online-Netzwerke, Politik,... H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse
6 Skalierbare Verarbeitung! Große Datenmengen! Skalierbare Verarbeitung! Herausforderung: Implementierung von Graphenalgorithmen mit guter (paralleler) Performanz! Analyse mit Methoden der Matrixalgebra häufig sehr nützlich! Implementierung mit Matrixalgebra oft deutlich kürzer 6
7 Lernziele! Verständnis für Zusammenhang zwischen Graphen und Matrizen! Auftretende Fragestellungen aus der Graphentheorie auf ihren algorithmischen Kern reduzieren! Analyse und/oder Lösung mit Techniken der linearen Algebra! Effiziente praktische Lösung der behandelten Probleme ist wichtiger Bestandteil der Übungen! Geht (teilweise) auch auf Aspekte der Parallelverarbeitung ein! Vorgestellte Methoden selbstständig auf verwandte Fragestellungen anwenden 7
8 Vorlesungsübersicht! Dualität von Graphen und Matrizen! Grundlegende Graphenalgorithmen in Matrixalgebra! Netzwerkanalyse! Optimierung von Matrixstrukturen für Graphenalgorithmen! Spektrale Methoden! Lastbalancierung mit Diffusion! Spektrale Partitionierung! Ausdünnung von Graphen! Gleichungssystemlöser! Layouten von Graphen 8
9 ORGANISATORISCHES 14
10 Bachelor-/Masterarbeiten! Gerne!! Insbesondere in den vorher genannten Themengebieten! Beschreibungen liegen aus und sind auf Gruppenwebseite zu Studium und Lehre:! [ Bei Interesse einfach ansprechen! [ 15 H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse
11 Stellenangebote! HiWi-Stellen! Doktorandenstellen! Zur Zeit eine HiWi-Stelle ausgeschrieben! Unterstützung in Forschung und Lehre! Themenbereich parallele Algorithmentechnik! Analyse von (sozialen) Netzwerken! Beschleunigung wissenschaftlicher Simulationen [ images_content/berufswahl_180px.jpg]! Studiengänge? 16 H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse
12 Organisatorisches zur Veranstaltung! Vorlesung und Übung kombiniert! Termine:! Dienstags 11:30-13:00 Uhr im SR 236! Donnerstags 15:45-17:15 Uhr im SR 236! Übersicht auf Vorlesungswebseite! SWS: 2+1 [ Sprechstunde: Nach Vereinbarung ( )! Webseite zur Vorlesung (bzw. Link auf weitere Details): 17 H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse
13 Methodik des Übungsbetriebs! Aufgaben sowohl theoretisch (z. B. vglw. einfache Beweise) als auch praktisch (z. B. Implementierung)! Übungen: Teilnehmer präsentieren ihre Lösungen zu Übungsaufgaben [ Bonuspunkte für erfolgreiches Programmierprojekt! Projektvorstellung am Ende der Vorlesungszeit! Mündliche Prüfung voraussichtlich in KW 32 und Sep/Okt 2014 [ neuen%20ideen%20%28clipart%29/7598-gl%c3%bchbirne%20aha.jpg] 18 H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse
14 Projekthilfsmittel NetworKit! Software zur interaktiven Netzwerkanalyse! Schnell durch C++ und OpenMP! Anwendungsarbeit im Browser (ipython notebook)! Paralleles Backend kann auf Server laufen! Begleitende Programmierübung! Projektthemen erscheinen in ca. zwei Wochen! Bedarf? 19
15 Literatur! Weitere Literatur: Angabe bei Bedarf auf Folien 20
16 Abschnitt 1: EINLEITUNG UND MOTIVATION 21
17 Was ist ein Algorithmus?! Definition: Ein Algorithmus ist eine eindeutige Beschreibung eines Verfahrens zur Lösung einer bestimmten Klasse von Problemen. Schlüsselworte: Genauer: Ein Algorithmus ist eine Menge von Regeln für ein! Verfahren, Eindeutige um Beschreibung aus gewissen Eingabegrößen bestimme! Ausgabegrößen eines Verfahrens herzuleiten. Dabei muss! zur 1. Lösung Das Verfahren in einem endlichen Text beschreibbar sein. 2. Jeder Schritt des Verfahrens auch tatsächlich ausführbar sein. 3. Der Ablauf des Verfahrens zu jedem Zeitpunkt eindeutig definiert sein.! einer Klasse von Problemen 22
18 Kriterien für Algorithmen " Algorithmen müssen korrekt sein. Benötigen Korrektheitsbeweise. " Algorithmen sollen zeit- und speichereffizient sein. Benötigen Analysemethoden für Zeit- und Speicherbedarf. " Analyse basiert in der klassischen Algorithmik nicht auf empirischen Untersuchungen, sondern auf mathematischen Analysen. Man nutzt hierfür Pseudocode und Basisoperationen. " Algorithmentechnik: Zyklus von Entwurf, Analyse, Implementierung und Experiment 23
19 Definition: Multimenge! Eine Menge E mit einer Vielfachheit # E : E 0 ihrer Elemente heißt Multimenge.! Die Kardinalität von E ist E = # E e E (e).! Kurzschreibweise:! # e für # E (e) e k E e E!, falls und # e = k 24
20 Definition: Graph, Multigraph! Ein mglw. gerichteter Graph (bzw. Multigraph) ist ein! Paar G = (V, E)! aus einer endlichen Menge V von Knoten und! einer Menge (bzw. Multimenge) E µ V V von Kanten.! Kanten e 2 {(v, v) v 2 V} nennen wir Schleifen.! Kanten e 2 E in einem Multigraphen mit k > 1 (Mehrfachauftreten) heißen Multikanten.! Ein Graph ist schlicht (simple), wenn er weder Schleifen noch Multikanten hat. 25
21 Beispiel! mit und für! ist eine Multikante! (3,3) ist eine Schleife! 1 ist Vorgänger von 2! 2 ist Nachfolger von 1! 1 ist adjazent zu 2! (1, 2) ist inzident zu 1 (bzw. 2) 26
22 Jetzt sind Sie dran:! Frage: Welche Matrizen kennen Sie, um einen Graphen zu repräsentieren? 27
23 Beispiel für Dualität [KG, S. 4f.]! BFS und Matrix-Vektor-Produkt! BFS(G, s) # A T v, v(s) = 1! Graphenalgorithmen in Halbringnotation! Halbring: Algebraische Struktur mit! einer (nichtleeren) Menge und mit! zwei zweistelligen Verknüpfungen (Addition, Multiplikation).! Addition ist eine kommutative Halbgruppe,! Multiplikation ist eine Halbgruppe,! es gelten die Distributivgesetze.! A op 1.op 2 v: Abkürzung für Matrix-Multiplikation 28
24 Historie! Dualität zwischen einem schlichten Graphen (ohne weitere Information) und einer Adjazenzmatrix lange bekannt! Matrixalgebra etabliertes Werkzeug in der Graphentheorie! Allerdings: In algorithmischer Software wurden meist andere Repräsentationen gewählt! Frage: Mögliche Gründe? 29
25 Vorteile der Nutzung der Dualität! Reduktion der syntaktischen Komplexität:! Manche Graphenalgorithmen sind kompakter und einfacher verständlich, wenn sie Array-basiert aufgeschrieben werden! Personenkreise mit Kenntnissen in linearer Algebra haben leichteren Zugang zur Graphentheorie (Ingenieure, Physiker,...)! Einfache Implementierung:! Nutzung der existierenden Software-Infrastruktur für parallele Berechnungen auf dünn besetzten Matrizen! Weniger Fehler durch Wiederverwendung! Bessere Optimierung durch Spezialisten! Geschwindigkeit:! Array-basierte Algorithmen heben stärker das Muster des Datenzugriffs hervor! Dadurch bessere Optimierung möglich 30
26 Nachteile der Nutzung der Dualität! Frage: Was fällt Ihnen ein? 31
27 Ansatz der Vorlesung! Zunächst anhand grundlegender Algorithmen Dualität erklären! Implementierungsaspekte beleuchten! Anwendung der Dualität:! Algorithmisch! Analytisch 32
28 ZUSAMMENHANG 33
29 Zusammenhangskomponenten! Anwendung: Aufteilung eines Web-Graphen in kleinere Teile! Mögliche Aufteilung: Starke Zusammenhangskomponenten! Mögliche Gründe:! Analyse des Graphen mit Algorithmus, der Zusammenhang erfordert! Der gesamte Graph ist zu groß für die Analyse!... [ content/image/1-s2.0-s gr4.jpg] 34
30 Zusammenhang Definition (Zusammenhang):! Ein Multigraph G=(V, E) heißt stark zusammenhängend, falls er für jedes Paar (u, v) in V V sowohl einen (u,v)-weg als auch einen (v,u)-weg enthält.! G heißt (schwach) zusammenhängend, wenn der symmetrische Multigraph (Kanten doppelt gerichtet) zu G stark zusammenhängend ist. 35
31 Mehrfacher Zusammenhang! Ein ungerichteter Multigraph G heißt k-fach knotenzusammenhängend, falls jeder durch Entfernen von höchstens k-1 beliebigen Knoten (und aller inzidenten Kanten) entstehende Teilgraph von G zusammenhängend ist.! G heißt k-fach kantenzusammenhängend, falls jeder durch Entfernen von höchstens k-1 beliebigen Kanten entstehende Teilgraph von G zusammenhängend ist. 36
32 Komponenten Definition (Komponenten): Zu einem schlichten Multigraphen G heißt ein maximaler! stark! schwach! k-fach knotenzushgd.! k-fach kantenzushgd. zusammenhängender Teilgraph! starke! schwache! k-fache knotenzusammenhängende! k-fach kantenzusammenhängende Zusammenhangskomponente. 37
33 Beispiel Starke ZHK Quelle: 38
34 Algorithmus zum Finden der starken ZHK! Wollen nun starke ZHK in einem gerichteten Graphen finden! Beispiel: s. Tafel! Frage: Gibt es Vorschläge? 39
35 Die wesentliche Idee! Theorem: A k (i, j) ist die Zahl der Wege der Länge k zwischen i und j! Beweis: s. Tafel! Definition ZHK: Es gibt einen Weg...! Frage (MG): Wie könnte ein Ansatz aussehen? 40
36 Auf dem Weg zum Algorithmus! C = I A A 2 A 3 A 4...! Nach Vorüberlegung: C(i,j) > 0 gdw. ein Weg zwischen i und j existiert! Beispiel: s. Tafel! Jetzt sind wir noch nicht ganz am Ziel! Frage: Was fehlt noch?! Wie verhält sich das bei ungerichteten Graphen? 41
37 Schnelle Berechnung von C! Statt der Oder-Operation verwenden wir die Addition: D = I + A + A 2 + A 3 + A ! Beide Matrizen C und D haben dasselbe Muster von Nichtnulleinträgen! Sei F := (I - A) D, dann gilt: F = D - AD = I + A + A 2 + A 3 + A A - A 2 - A 3 - A = I = (I A) D! Also: D = (I A) -1! Problem: Reihe konvergiert häufig nicht! Frage (MG): Lösungsvorschläge? 42
38 Konvergenz! Idee: Skalar 0 < α < 1 wird mit der Matrix A multipliziert: D = I + αa + (αa) 2 + (αa) 3 + (αa) ! Effekte:! Das Muster der Nichtnulleinträge verändert sich nicht.! Sei nun F := (I - A) D.! F = I + αa + (αa) 2 + (αa) 3 + (αa) αa - (αa) 2 - (αa) 3 - (αa) = I = (I αa) D! Also: D = (I αa) -1! Wenn α klein genug gewählt wird, dann konvergiert unsere unendliche Folge! Übung: Welches Kriterium für unsere Zwecke? 43
39 Zusammenfassung! Starke ZHK ist maximaler stark zusammenhängender Teilgraph (jeder Knoten erreicht jeden anderen in der ZHK)! Mit einer potenzierten Adjazenzmatrix lassen sich Wege zählen! Reihe von potenzierten Matrizen liefert uns (fast) die Lösung! Konvergenz wird durch zusätzliches Skalar erzwungen! Unterschied zwischen gerichteten und ungerichteten Graphen 44
Graphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Diplom/Master Informatik
Vorlesung für den Bereich Diplom/Master Informatik Dozent: Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK KIT Universität des Landes
MehrGraphenalgorithmen und lineare Algebra Hand in Hand Vorlesung für den Bereich Master Informatik
Vorlesung für den Bereich Master Informatik Dozent: Prof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK www.kit.edu 0. April 06 VORLESUNG Einführung
MehrAlgorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik
Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik Dozent: Prof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK
MehrAlgorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik
Algorithmische Methoden zur Netzwerkanalyse Vorlesung für den Bereich Master Informatik Dozent: Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR
Mehr2. November Gradfolgen Zusammenhang Kürzeste Wege. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37
2. November 2011 Gradfolgen Zusammenhang Kürzeste Wege H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 37 Satz von Erdős und Gallai Eine Partition einer natürlichen Zahl ist genau dann die Gradfolge
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
Mehr1. Einführung. Was ist ein Algorithmus (eine Datenstruktur)? Welche Probleme kann man damit lösen? Warum betrachten wir (effiziente) Algorithmen?
1. Einführung Was ist ein Algorithmus (eine Datenstruktur)? Welche Probleme kann man damit lösen? Warum betrachten wir (effiziente) Algorithmen? Wie beschreiben wir Algorithmen? Nach welchen Kriterien
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
Mehr16. November 2011 Zentralitätsmaße. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 87
16. November 2011 Zentralitätsmaße H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 87 Darstellung in spektraler Form Zentralität genügt Ax = κ 1 x (Herleitung s. Tafel), daher ist x der Eigenvektor
MehrDiskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen)
WS 2015/16 Diskrete Strukturen Kapitel 4: Graphentheorie (Grundlagen) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Die Forschungsuniversität Meyerhenke, in der Institut für Theoretische Informatik
MehrAlgorithmen zur Visualisierung von Graphen
Algorithmen zur Visualisierung von Graphen Einführung 1. Vorlesung Sommersemester 2014 (basierend auf Folien von Martin Nöllenburg und Robert Görke, KIT) Organisatorisches Dozent Philipp Kindermann Büro
MehrAlgorithmische Methoden für schwere Optimierungsprobleme
Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund
MehrMotivation Kap. 6: Graphen
Motivation Kap. 6: Graphen Warum soll ich heute hier bleiben? Graphen sind wichtig und machen Spaß! Professor Dr. Lehrstuhl für Algorithm Engineering, LS Fakultät für Informatik, TU Dortmund Was gibt es
Mehr9. November ZHK in dynamischen Graphen Zentralitäten. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 67
9. November 2011 ZHK in dynamischen Graphen Zentralitäten H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 67 ZHK in dynamischen Graphen Ungerichteter schlichter dynamischer Graph Dynamisch:
MehrKombinatorische Optimierung Vorlesung für den Bereich Diplom/Master Informatik
Kombinatorische Optimierung Vorlesung für den Bereich Diplom/Master Informatik Dozent: Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK
Mehr8. Übung Algorithmen I
INSTITUT FÜR THEORETISCHE INFORMATIK 1 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft Institut für Theoretische www.kit.edu Informatik Grundlagen
MehrAlgorithmische Methoden für schwere Optimierungsprobleme
Algorithmische Methoden für schwere Optimierungsprobleme Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund
MehrVorlesung 2 KÜRZESTE WEGE
Vorlesung 2 KÜRZESTE WEGE 34 Kürzeste Wege im Graphen Motivation! Heute:! Kürzeste Wege von einem Knoten (SSSP)! Kürzeste Wege zwischen allen Knotenpaaren (APSP)! Viele Anwendungen:! Navigationssysteme!
MehrAlgorithmen und Datenstrukturen SS09. Foliensatz 16. Michael Brinkmeier. Technische Universität Ilmenau Institut für Theoretische Informatik
Foliensatz 16 Michael Brinkmeier Technische Universität Ilmenau Institut für Theoretische Informatik Sommersemester 2009 TU Ilmenau Seite 1 / 45 Graphen TU Ilmenau Seite 2 / 45 Graphen 1 2 3 4 5 6 7 8
MehrAlgorithmen zur Visualisierung von Graphen
Algorithmen zur Visualisierung von Graphen Einführung 1. Vorlesung Sommersemester 2013 (basierend auf Folien von Martin Nöllenburg und Robert Görke, KIT) Organisatorisches Dozent Martin Fink Büro E14 (Mathebau)
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
MehrAlgorithmische Methoden zur Netzwerkanalyse Vorlesung 12, Henning Meyerhenke
Algorithmische Methoden zur Netzwerkanalyse Vorlesung 12, 25.01.2012 Henning Meyerhenke 1 KIT Henning Universität desmeyerhenke: Landes Baden-Württemberg und nationales Algorithmische Forschungszentrum
Mehr15. Elementare Graphalgorithmen
Graphen sind eine der wichtigste Modellierungskonzepte der Informatik Graphalgorithmen bilden die Grundlage vieler Algorithmen in der Praxis Zunächst kurze Wiederholung von Graphen. Dann Darstellungen
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Juniorprof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
MehrAm Dienstag, den 16. Dezember, ist Eulenfest. 1/45
Am Dienstag, den 16. Dezember, ist Eulenfest. 1/45 Grundbegriffe der Informatik Einheit 12: Erste Algorithmen in Graphen Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009
MehrTutorium 23 Grundbegriffe der Informatik (7. Sitzung)
Tutorium 3 Grundbegriffe der Informatik (7. Sitzung) Tutor: Felix Stahlberg SOFTWARE DESIGN AND QUALITY GROUP Source: pixelio.de KIT The cooperation of Forschungszentrum Karlsruhe GmbH and Universität
Mehr23. November Betweenness Centrality Closeness Centrality. H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108
23. November 2011 Betweenness Centrality Closeness Centrality H. Meyerhenke: Algorithmische Methoden zur Netzwerkanalyse 108 Betweenness Centrality Grundlegende Idee: Ein Knoten ist wichtig, wenn er auf
MehrAlgorithmische Methoden zur Netzwerkanalyse Vorlesung 11, Henning Meyerhenke
Algorithmische Methoden zur Netzwerkanalyse Vorlesung 11, 18.01.2012 Henning Meyerhenke 1 KIT Henning Universität desmeyerhenke: Landes Baden-Württemberg und nationales Algorithmische Forschungszentrum
MehrKombinatorische Optimierung
Kombinatorische Optimierung Juniorprof. Dr. Henning Meyerhenke PARALLELES RECHNEN INSTITUT FÜR THEORETISCHE INFORMATIK, FAKULTÄT FÜR INFORMATIK KIT Universität des Landes Baden-Württemberg und nationales
MehrAlgorithmische Methoden zur Netzwerkanalyse Vorlesung 13, Henning Meyerhenke
Algorithmische Methoden zur Netzwerkanalyse Vorlesung 13, 01.02.2012 Henning Meyerhenke 1 KIT Henning Universität desmeyerhenke: Landes Baden-Württemberg und nationales Algorithmische Forschungszentrum
MehrGraphentheorie Graphentheorie. Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke
Graphen Graphentheorie Graphentheorie Grundlagen Bäume Eigenschaften von Graphen Graphen-Algorithmen Matchings und Netzwerke 2 Was ist ein Graph? Ein Graph ist in der Graphentheorie eine abstrakte Struktur,
Mehr2. Repräsentationen von Graphen in Computern
2. Repräsentationen von Graphen in Computern Kapitelinhalt 2. Repräsentationen von Graphen in Computern Matrizen- und Listendarstellung von Graphen Berechnung der Anzahl der verschiedenen Kantenzüge zwischen
MehrAlgorithmische Methoden zur Netzwerkanalyse Vorlesung 8, Henning Meyerhenke
Algorithmische Methoden zur Netzwerkanalyse Vorlesung 8, 07.12.2011 Henning Meyerhenke 1 KIT Henning Universität desmeyerhenke: Landes Baden-Württemberg und nationales Algorithmische Forschungszentrum
MehrSPEKTRALE GRAPHENTHEORIE
SPEKTRALE GRAPHENTHEORIE 179 Graphen, Matrizen, Spektren! Graph als Matrix:! Adjazenzmatrix! Inzidenzmatrix! Laplacematrix!...! Spektrum: Menge der Eigenwerte! Motivation: Sagt das Spektrum etwas über
MehrGraphenalgorithmen und lineare Algebra Hand in Hand
Graphenalgorithmen und lineare Algebra Hand in Hand Henning Meyerhenke 30. August 2016 iii Inhaltsverzeichnis 1. Grundlegende Graphenalgorithmen 1 1.1. Dualität zwischen Graphen und Matrizen......................
MehrAlgorithmische Geometrie: Einstimmung
Algorithmische Geometrie: Einstimmung Nico Düvelmeyer WS 2009/2010, 20.10.2009 Überblick 1 Organisatorisches 2 Fachgebiet Typische Untersuchungsgegenstände Typische Anwendungsgebiete 3 Inhalte der Vorlesung
MehrDiskrete Strukturen Kapitel 1: Einleitung
WS 2015/16 Diskrete Strukturen Kapitel 1: Einleitung Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_15
MehrTheoretische Informatik 1 WS 2007/2008. Prof. Dr. Rainer Lütticke
Theoretische Informatik 1 WS 2007/2008 Prof. Dr. Rainer Lütticke Inhalt der Vorlesung Grundlagen - Mengen, Relationen, Abbildungen/Funktionen - Datenstrukturen - Aussagenlogik Automatentheorie Formale
MehrWS 2009/10. Diskrete Strukturen
WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910
MehrProgramm heute. Algorithmen und Datenstrukturen (für ET/IT) Übersicht: Graphen. Definition: Ungerichteter Graph. Definition: Ungerichteter Graph
Programm heute Algorithmen und Datenstrukturen (für ET/IT) Sommersemester 07 Dr. Stefanie Demirci Computer Aided Medical Procedures Technische Universität München 7 Fortgeschrittene Datenstrukturen Graphen
MehrVorlesung 4 BETWEENNESS CENTRALITY
Vorlesung 4 BETWEENNESS CENTRALITY 101 Aufgabe! Szenario: Sie arbeiten bei einem sozialen Online-Netzwerk. Aus der Netzwerk-Struktur Ihrer Benutzer sollen Sie wichtige Eigenschaften extrahieren. [http://www.fahrschule-vatterodt.de/
MehrDiskrete Strukturen Kapitel 4: Graphentheorie (Bäume)
WS 2016/17 Diskrete Strukturen Kapitel 4: Graphentheorie (Bäume) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_16
MehrGrundbegriffe der Informatik Tutorium 8
Grundbegriffe der Informatik Tutorium 8 Tutorium Nr. 16 Philipp Oppermann 22. Dezember 2014 KARLSRUHER INSTITUT FÜR TECHNOLOGIE KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum
MehrProgrammiertechnik II
Graph-Algorithmen Anwendungsgebiete "Verbundene Dinge" oft Teilproblem/Abstraktion einer Aufgabenstellung Karten: Wie ist der kürzeste Weg von Sanssouci nach Kunnersdorf? Hypertext: Welche Seiten sind
MehrLernmodul 7 Algorithmus von Dijkstra
Folie 1 von 30 Lernmodul 7 Algorithmus von Dijkstra Quelle: http://www.map24.de Folie 2 von 30 Algorithmus von Dijkstra Übersicht Kürzester Weg von A nach B in einem Graphen Problemstellung: Suche einer
MehrProgrammiertechnik II
Graph-Algorithmen Anwendungsgebiete "Verbundene Dinge" oft Teilproblem/Abstraktion einer Aufgabenstellung Karten: Wie ist der kürzeste Weg von Sanssouci nach Kunnersdorf? Hypertext: Welche Seiten sind
MehrKombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 4 Programm des
MehrGrundlagen: Algorithmen und Datenstrukturen
Grundlagen: Algorithmen und Datenstrukturen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Sommersemester 2010
MehrAm Dienstag, den 16. Dezember, ist Eulenfest. 1/48
Am Dienstag, den 16. Dezember, ist Eulenfest. 1/48 Grundbegriffe der Informatik Einheit 12: Erste Algorithmen in Graphen Thomas Worsch Universität Karlsruhe, Fakultät für Informatik Wintersemester 2008/2009
MehrWS 2008/09. Diskrete Strukturen
WS 2008/09 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0809
MehrWS 2009/10. Diskrete Strukturen
WS 2009/10 Diskrete Strukturen Prof. Dr. J. Esparza Lehrstuhl für Grundlagen der Softwarezuverlässigkeit und theoretische Informatik Fakultät für Informatik Technische Universität München http://www7.in.tum.de/um/courses/ds/ws0910
MehrVollständiger Graph. Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete).
Vollständiger Graph Definition 1.5. Sei G =(V,E) ein Graph. Gilt {v, w} E für alle v, w V,v w, dann heißt G vollständig (complete). Mit K n wird der vollständige Graph mit n Knoten bezeichnet. Bemerkung
MehrTeil III. Komplexitätstheorie
Teil III Komplexitätstheorie 125 / 160 Übersicht Die Klassen P und NP Die Klasse P Die Klassen NP NP-Vollständigkeit NP-Vollständige Probleme Weitere NP-vollständige Probleme 127 / 160 Die Klasse P Ein
MehrVektorräume. Lineare Algebra I. Kapitel Juni 2012
Vektorräume Lineare Algebra I Kapitel 9 12. Juni 2012 Logistik Dozent: Olga Holtz, MA 378, Sprechstunden Freitag 14-16 Webseite: www.math.tu-berlin.de/ holtz Email: holtz@math.tu-berlin.de Assistent: Sadegh
MehrGraphenalgorithmen und lineare Algebra Hand in Hand
Graphenalgorithmen und lineare Algebra Hand in Hand Henning Meyerhenke 1. September 2014 iii Inhaltsverzeichnis 1. Grundlegende Graphenalgorithmen 1 1.1. Dualität zwischen Graphen und Matrizen......................
MehrAlgorithmische Graphentheorie
Algorithmische Graphentheorie Vorlesung 4: Suchstrategien Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 14. April 2017 HALBORDNUNG TOPOLOGISCHE ORDNUNG TOPOLOGISCHES
MehrAlgorithmen und Datenstrukturen. Organisatorisches. Christian Komusiewicz Ernst-Abbe-Platz 2, R3315
Algorithmen und Datenstrukturen Christian Komusiewicz Ernst-Abbe-Platz 2, R3315 christian.komusiewicz@uni-jena.de Friedrich-Schiller-Universität Jena Institut für Informatik http://users.fmi.uni-jena.de/
MehrDatenstrukturen und Algorithmen. Christian Sohler FG Algorithmen & Komplexität
Datenstrukturen und Algorithmen Christian Sohler FG Algorithmen & Komplexität 1 Clustering: Partitioniere Objektmenge in Gruppen(Cluster), so dass sich Objekte in einer Gruppe ähnlich sind und Objekte
MehrAlgorithmische Methoden zur Netzwerkanalyse Vorlesung 7, 30.11.2011 Henning Meyerhenke
Algorithmische Methoden zur Netzwerkanalyse Vorlesung 7, 30.11.2011 Henning Meyerhenke 1 KIT Henning Universität desmeyerhenke: Landes Baden-Württemberg und nationales Algorithmische Forschungszentrum
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Graphen (1) Darstellung Traversierung Dr. Frank Seifert Vorlesung Datenstrukturen - Sommersemester 2016 Folie 441 Generalisierung von Bäumen Verallgemeinerung (von Listen zu Graphen)
MehrKombinatorische Optimierung
Juniorprof. Dr. Henning Meyerhenke 1 Henning Meyerhenke: KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft www.kit.edu Vorlesung 1 Programm des
MehrAlgorithmische Methoden zur Netzwerkanalyse
Algorithmische Methoden zur Netzwerkanalyse Prof. Dr. Henning Meyerhenke Institut für Theoretische Informatik 1 KIT Henning Universität desmeyerhenke, Landes Baden-Württemberg Institutund für Theoretische
MehrVorlesung 3: Graphenalgorithmen. Markus Püschel David Steurer Peter Widmayer. PDF download goo.gl/ym3spq
Vorlesung 3: Graphenalgorithmen Markus Püschel David Steurer Peter Widmayer PDF download goo.gl/ym3spq Algorithmen und Datenstrukturen, Herbstsemester 2017, ETH Zürich Gerichtete Graphen und Abhängigkeiten
MehrRelationen und DAGs, starker Zusammenhang
Relationen und DAGs, starker Zusammenhang Anmerkung: Sei D = (V, E). Dann ist A V V eine Relation auf V. Sei andererseits R S S eine Relation auf S. Dann definiert D = (S, R) einen DAG. D.h. DAGs sind
MehrFortgeschrittene Netzwerk- und Graph-Algorithmen
Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester
MehrKapitel 4: Minimal spannende Bäume Gliederung der Vorlesung
Kapitel : Minimal spannende Bäume Gliederung der Vorlesung. Fallstudie Bipartite Graphen 2. Grundbegriffe. Elementare Graphalgorithmen und Anwendungen. Minimal spannende Bäume. Kürzeste Wege. Traveling
MehrKap. 5: Graphen. Carsten Gutwenger Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund. 17. VO DAP2 SS
Kap. 5: Graphen Lehrstuhl für Algorithm Engineering, LS11 Fakultät für Informatik, TU Dortmund 17. VO DAP2 SS 2009 23. Juni 2008 1 Motivation Warum soll ich heute hier bleiben? Graphen sind wichtig und
MehrLernmodul 2 Graphen. Lernmodul 2: Geoobjekte und ihre Modellierung - Graphen
Folie 1 von 20 Lernmodul 2 Graphen Folie 2 von 20 Graphen Übersicht Motivation Ungerichteter Graph Gerichteter Graph Inzidenz, Adjazenz, Grad Pfad, Zyklus Zusammenhang, Trennende Kante, Trennender Knoten
MehrVorlesung Datenstrukturen
Vorlesung Datenstrukturen Minimale Spannbäume Maike Buchin 18.7., 20.7.2017 Einführung Motivation: Verbinde Inseln mit Fähren oder Städte mit Schienen und verbrauche dabei möglichst wenig Länge. Problem:
MehrNachbarschaft, Grad, regulär, Inzidenz
Nachbarschaft, Grad, regulär, Inzidenz Definition Eigenschaften von Graphen Sei G = (V, E) ein ungerichteter Graph. 1 Die Nachbarschaftschaft Γ(u) eines Knoten u V ist Γ(u) := {v V {u, v} E}. 2 Der Grad
MehrAnwendungen von Graphen
Anwendungen von Graphen Strassen- und Verkehrsnetze Computernetzwerke elektrische Schaltpläne Entity-Relationship Diagramme Beweisbäume endliche Automaten Syntaxbäume für Programmiersprachen Entscheidungsbäume
MehrElementare Definitionen. Anwendungen von Graphen. Formalisierung von Graphen. Formalisierung von Digraphen. Strassen- und Verkehrsnetze
Anwendungen von Graphen Strassen- und Verkehrsnetze Computernetzwerke Elementare Definitionen Ein Graph besteht aus Knoten und Kanten, die die Knoten verbinden. elektrische Schaltpläne Entity-Relationship
MehrSeminar Algorithmen für planare Graphen
Seminar Algorithmen für planare Graphen Reinhard Bauer, Marcus Krug, Ignaz Rutter, Dorothea Wagner Universität Karlsruhe (TH) Institut für Theoretische Informatik Lehrstuhl Algorithmik I 24. Oktober 2008
MehrKapitel 4: Minimale spannende Bäume Gliederung der Vorlesung
Kapitel : Minimale spannende Bäume Gliederung der Vorlesung. Grundbegriffe 2. Elementare Graphalgorithmen und Anwendungen. Kürzeste Wege. Minimale spannende Bäume. Färbungen und Cliquen. Traveling Salesman
MehrAlgorithmische Graphentheorie
Algorithmische Graphentheorie Vorlesung 2: Einführung in die Graphentheorie - Teil 2 Babeş-Bolyai Universität, Department für Informatik, Cluj-Napoca csacarea@cs.ubbcluj.ro 2. März 2018 1/48 OPERATIONEN
MehrEigenwerte und Eigenvektoren
Eigenwerte und Eigenvektoren Siehe Analysis (von der Hude, Folie 20: Definition 2.3. Ein Vektor x R n heißt Eigenvektor der quadratischen n n-matrix A zum Eigenwert λ R, wenn gilt Ax = λx Die Eigenwerte
MehrFortgeschrittene Netzwerk- und Graph-Algorithmen
Fortgeschrittene Netzwerk- und Graph-Algorithmen Prof. Dr. Hanjo Täubig Lehrstuhl für Effiziente Algorithmen (Prof. Dr. Ernst W. Mayr) Institut für Informatik Technische Universität München Wintersemester
MehrGrundbegriffe der Informatik
Grundbegriffe der Informatik Kapitel 16: Erste Algorithmen in Graphen Thomas Worsch KIT, Institut für Theoretische Informatik Wintersemester 2015/2016 GBI Grundbegriffe der Informatik KIT, Institut für
MehrAlgorithmen und Datenstrukturen 2-1. Seminar -
Algorithmen und Datenstrukturen 2-1. Seminar - Dominic Rose Bioinformatics Group, University of Leipzig Sommersemster 2010 Outline 1. Übungsserie: 3 Aufgaben, insgesamt 30 28 Punkte A1 Spannbäume (10 8
MehrMathematisch-algorithmische Grundlagen für Big Data
Mathematisch-algorithmische Grundlagen für Big Data Numerische Algorithmen für Datenanalyse und Optimierung Prof. Dr. Peter Becker Fachbereich Informatik Hochschule Bonn-Rhein-Sieg Sommersemester 2017
MehrAlgorithmen II Vorlesung am
Algorithmen II Vorlesung am 0..0 Minimale Schnitte in Graphen INSTITUT FÜR THEORETISCHE INFORMATIK PROF. DR. DOROTHEA WAGNER KIT Universität des Landes Baden-Württemberg und Algorithmen nationales Forschungszentrum
MehrRouting A lgorithmen Algorithmen Begriffe, Definitionen Wegewahl Verkehrslenkung
Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über
MehrVorkurs Informatik WiSe 16/17
Institut für Programmierung Konzepte der Informatik Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 12.10.2016 Technische Universität Braunschweig, IPS Inhaltsverzeichnis Schilda-Rallye Was steckt
MehrLösungen zu Kapitel 5
Lösungen zu Kapitel 5 Lösung zu Aufgabe : (a) Es gibt derartige Graphen: (b) Offensichtlich besitzen 0 der Graphen einen solchen Teilgraphen. Lösung zu Aufgabe : Es sei G = (V, E) zusammenhängend und V
MehrVorlesung 2 KÜRZESTE WEGE
Vorlesung 2 KÜRZESTE WEGE 45 Kürzeste Wege im Graphen Motivation! Heute:! Kürzeste Wege von einem Knoten (SSSP)! Distanzen zwischen allen Knotenpaaren (APD)! Viele Anwendungen:! Navis! Netzwerkrouting!...
MehrUNABHÄNGIGER LASTEN. Vorlesung 9 BALANCIERUNG DYNAMISCHER. Graphenalgorithmen und lineare Algebra Hand in Hand
Vorlesung 9 BALANCIERUNG DYNAMISCHER UNABHÄNGIGER LASTEN 266 Lastbalancierung Motivation! Ein paralleles System besteht aus! verschiedenen Recheneinheiten,! die miteinander kommunizieren können! Warum
MehrOperations Research I
Operations Research I Lineare Programmierung Prof. Dr. Peter Becker Fachbereich Informatik Hochschule Bonn-Rhein-Sieg Sommersemester 2015 Peter Becker (H-BRS) Operations Research I Sommersemester 2015
MehrDiskrete Strukturen Kapitel 2: Grundlagen (Relationen)
WS 2016/17 Diskrete Strukturen Kapitel 2: Grundlagen (Relationen) Hans-Joachim Bungartz Lehrstuhl für wissenschaftliches Rechnen Fakultät für Informatik Technische Universität München http://www5.in.tum.de/wiki/index.php/diskrete_strukturen_-_winter_16
MehrINSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS
Julian Arz, Timo Bingmann, Sebastian Schlag INSTITUT FÜR THEORETISCHE INFORMATIK, PROF. SANDERS 1 KIT Julian Universität Arz, des Timo LandesBingmann, Baden-Württemberg Sebastian und Schlag nationales
MehrFerienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie
Ferienkurs zur algorithmischen diskreten Mathematik Kapitel 1: Grundlagen der algorithmischen Graphentheorie Dipl-Math. Wolfgang Kinzner 2.4.2012 Kapitel 1: Grundlagen der algorithmischen Graphgentheorie
Mehr= n (n 1) 2 dies beruht auf der Auswahl einer zweielementigen Teilmenge aus V = n. Als Folge ergibt sich, dass ein einfacher Graph maximal ( n E = 2
1 Graphen Definition: Ein Graph G = (V,E) setzt sich aus einer Knotenmenge V und einer (Multi)Menge E V V, die als Kantenmenge bezeichnet wird, zusammen. Falls E symmetrisch ist, d.h.( u,v V)[(u,v) E (v,u)
MehrEinheit 11 - Graphen
Einheit - Graphen Bevor wir in medias res (eigentlich heißt es medias in res) gehen, eine Zusammenfassung der wichtigsten Definitionen und Notationen für Graphen. Graphen bestehen aus Knoten (vertex, vertices)
MehrOptimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung
Optimierung für Wirtschaftsinformatiker: Dualität, Ganzzahlige lineare Optimierung Dr. Nico Düvelmeyer Freitag, 24. Juni 2011 1: 1 [1,1] Inhaltsübersicht für heute 1 Dualität Motivation Duales LP Dualitätssätze
MehrDefinition Ein gerichteter Graph G = (V, E) ist ein Graph von geordneten Paaren (u, v) mit u V und v V.
Kapitel 4 Graphenalgorithmen 4.1 Definitionen Definition 4.1.1. Der Graph G = (V, E) ist über die beiden Mengen V und E definiert, wobei V die Menge der Knoten und E die Menge der Kanten in dem Graph ist.
MehrRouting Algorithmen. Begriffe, Definitionen
Begriffe, Definitionen Routing (aus der Informatik) Wegewahl oder Verkehrslenkung bezeichnet in der Telekommunikation das Festlegen von Wegen für Nachrichtenströme bei der Nachrichtenübermittlung über
Mehr