6. Transitive Hülle. 6.1 Min-Plus-Matrix-Produkt und Min-Plus-Transitive Hülle Ring Z(+, ) Semiring N(+, )

Ähnliche Dokumente
2. Repräsentationen von Graphen in Computern

16. All Pairs Shortest Path (ASPS)

κ(k) k K S Algorithmus zur Bestimmung eines spannenden Baumes mit minimalen Kosten (Kruskal, 1965).

Am Dienstag, den 16. Dezember, ist Eulenfest. 1/48

Entscheidungsbäume. Definition Entscheidungsbaum. Frage: Gibt es einen Sortieralgorithmus mit o(n log n) Vergleichen?

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Formale Grundlagen 2008W. Vorlesung im 2008S Institut für Algebra Johannes Kepler Universität Linz

Effiziente Algorithmen und Datenstrukturen I. Kapitel 10: Lineare Algebra

Algorithmische Methoden zur Netzwerkanalyse

Lineare Algebra für D-ITET, D-MATL, RW. Beispiellösung für Serie 10. Aufgabe ETH Zürich D-MATH. Herbstsemester Dr. V. Gradinaru D.

Fortgeschrittene Netzwerk- und Graph-Algorithmen

Beispiele 1. Gegeben sei das lineare Gleichungssystem mit erweiterter Matrix (A

Optimierungsprobleme. B. Langfeld, M. Ritter, B. Wilhelm Diskrete Optimierung: Fallstudien aus der Praxis

3.1 Konstruktion von minimalen Spannbäumen Es gibt zwei Prinzipien für die Konstruktion von minimalen Spannbäumen (Tarjan): blaue Regel rote Regel

Datenstrukturen & Algorithmen

Algorithmen und Datenstrukturen 1 Kapitel 3

Angewandte Informatik

Single Source Sortest Path Negative Kreise All-Pair Shortest Path Problem Minimum Mean Cycle Zusammenfassung. Shortest Paths

Mathematik für Informatiker II. Beispiellösungen zur Probeklausur. Aufgabe 1. Aufgabe 2 (5+5 Punkte) Christoph Eisinger Sommersemester 2011

Matrizen spielen bei der Formulierung ökonometrischer Modelle eine zentrale Rolle: kompakte, stringente Darstellung der Modelle

Graphenalgorithmen I

37 Gauß-Algorithmus und lineare Gleichungssysteme

Rang und Inverses einer Matrix

Algorithmen und Datenstrukturen 2

Lineare Algebra - alles was man wissen muß

Erinnerung/Zusammenfassung zu Abbildungsmatrizen

Matrizen, Determinanten, lineare Gleichungssysteme

Vorbereitungskurs Mathematik zum Sommersemester 2011 Tag 7

Übung zur Vorlesung Algorithmische Geometrie

Notizen zu Transformationen und Permutationen. T (A) = {f : A A}

Überblick. TSP Vergleich der Lösungen. Das Travelling Salesman Problem. Nearest-Neighbor Heuristik für TSP

Grundlagen Datenstrukturen Transitive Hülle Traversierung Kürzeste Wege Spannender Baum Max. Fluss Zuordnungen. 6. Graphen

11. Woche: Turingmaschinen und Komplexität Rekursive Aufzählbarkeit, Entscheidbarkeit Laufzeit, Klassen DTIME und P

4. Kreis- und Wegeprobleme Abstände in Graphen

4 Lineare Algebra (Teil 2): Quadratische Matrizen

Graphentheorie 1. Diskrete Strukturen. Sommersemester Uta Priss ZeLL, Ostfalia. Hausaufgaben Graph-Äquivalenz SetlX

Praktikum Einführung in die Mathematik 1 WS 2010/2011 Blatt 2 Lösungen

Leitfaden Lineare Algebra: Determinanten

Algorithmen II Vorlesung am

Das Multi Traveling Salesman Problem

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Routing Algorithmen. Begriffe, Definitionen

Unimodularität. Kapitel 1. Peter Becker (H-BRS) Operations Research II Wintersemester 2015/16 11 / 206

Technische Universität München Zentrum Mathematik. Übungsblatt 7

Lineare Gleichungssysteme

5.2 Das All-Pairs-Shortest-Paths-Problem (APSP-Problem) Kürzeste Wege zwischen allen Knoten. Eingabe: Gerichteter Graph G =(V, E, c)

Das Briefträgerproblem

II. Lineare Gleichungssysteme. 10 Matrizen und Vektoren. 52 II. Lineare Gleichungssysteme

Lineare Algebra und Numerische Mathematik für D-BAUG

Axiomatische Beschreibung der ganzen Zahlen

( ) Lineare Gleichungssysteme

Ein Graph ist ein Paar (V,E), wobei V eine Menge von Knoten und E eine Menge von Kanten (v,w) mit v,w in V ist.

3 Elementare Umformung von linearen Gleichungssystemen und Matrizen

Komplexe Netzwerke Gradverteilung der Knoten, Skalenfreiheit, Potenzgesetz

KAPITEL 6 GANZZAHLIGE OPTIMIERUNG UND VOLLSTÄNDIG UNIMODULARE MATRIZEN

2 Teilbarkeit in Z. (a) Aus a b folgt a b und a b und a b und a b. (b) Aus a b und b c folgt a c.

1 Lineare Algebra. 1.1 Matrizen und Vektoren. Slide 3. Matrizen. Eine Matrix ist ein rechteckiges Zahlenschema

Scheduling-Theorie. Mathematische Modelle und Methoden für deterministische Scheduling-Probleme. LiSA - A Library of Scheduling Algorithms

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2016

2. Optimierungsprobleme 6

Eulerweg, Eulerkreis. Das Königsberger Brückenproblem. Definition 3.1. Ein Weg, der jede Kante von G genau einmal

Algorithmen und Datenstrukturen 2

Spezialfall: Die Gleichung ax = b mit einer Unbekannten x kann mit Hilfe des Kehrwerts 1 a = a 1 gelöst werden:

Copyright, Page 1 of 5 Die Determinante

4: Algebraische Strukturen / Gruppen

1 Definition. 2 Besondere Typen. 2.1 Vektoren und transponieren A = 2.2 Quadratische Matrix. 2.3 Diagonalmatrix. 2.

Mathematische Erfrischungen III - Vektoren und Matrizen

4 Vorlesung: Matrix und Determinante

4. Relationen. Beschreibung einer binären Relation

Guten Morgen und Willkommen zur Saalübung!

Seminararbeit für das SE Reine Mathematik- Graphentheorie

Schulmethode zur Multiplikation von n-stelligen Binärzahlen a und b: (evtl. fallen Zeilen weg, wenn das zugehörige Bit des Multiplikators 0 ist).

Binary Decision Diagrams (Einführung)

Einführung in Markoff-Ketten

1 Algebraische Strukturen

Diskrete Mathematik Kongruenzen

Graphentheorie. Maximale Flüsse. Maximale Flüsse. Maximale Flüsse. Rainer Schrader. 31. Oktober Gliederung. sei G = (V, A) ein gerichteter Graph

KLAUSUR ZUR LINEAREN ALGEBRA I MUSTERLÖSUNG

Kapitel 1.3. Normalformen aussagenlogischer Formeln und die Darstellbarkeit Boolescher Funktionen durch aussagenlogische Formeln

Grundlagen der Mathematik

Customization (Zuschneiden)

Kapitel 5. Eigenwerte. Ein Leontief-Modell für eine Volkswirtschaft heißt geschlossen, wenn der Konsum gleich der Produktion ist, d.h. wenn.

Massive Parallelität : Neuronale Netze

Scheduling und Lineare ProgrammierungNach J. K. Lenstra, D. B. Shmoys und É.

8. Übung zu Algorithmen I 15. Juni 2016

Kürzeste Wege in Graphen. Maurice Duvigneau Otto-von-Guericke Universität Fakultät für Informatik

Stefan Schmid TU Berlin & T-Labs, Berlin, Germany. Reduktionen in der Berechenbarkeitstheorie

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).

8 Diskrete Optimierung

Diskrete Strukturen Kapitel 2: Grundlagen (Relationen)

Verfahren zur Berechnung der Exponentialmatrix

4.4.1 Statisches perfektes Hashing. des Bildbereichs {0, 1,..., n 1} der Hashfunktionen und S U, S = m n, eine Menge von Schlüsseln.

Alle bislang betrachteten Sortieralgorithmen hatten (worst-case) Laufzeit Ω(nlog(n)).

WS 2013/14. Diskrete Strukturen

Elementare Zahlentheorie

Effiziente Algorithmen und Datenstrukturen: Kürzeste Wege

Mathematik II für Studierende der Informatik. Wirtschaftsinformatik (Analysis und lineare Algebra) im Sommersemester 2015

6 Hauptachsentransformation

6. Flüsse in Netzwerken Berechnung maximaler Flüsse. dann berechnet der Markierungsalgorithmus für beliebige Kapazitätsfunktionen

Symmetrische Polynome,Diskriminante und Resultante, Fermatscher Satz für Polynome

Transkript:

6. Transitive Hülle 6.1 Min-Plus-Matrix-Produkt und Min-Plus-Transitive Hülle Ring Z(+, ) Semiring N(+, ) Gruppe Halbgruppe Halbgruppe Halbgruppe Wir betrachten den (kommutativen) Semiring über R { } mit den Operationen min und +. Für jede der beiden Operationen haben wir ein Monoid. Es gilt das Distributivgesetz a + min{b, c} = min{a + b, a + c}. Normale Matrixmultiplikation: A = (a ij ) 1 i,j n, B = (b ij ) 1 i,j n, I = (δ ij ) 1 i,j n n C = A B = (c ij ) 1 i,j n, c ij = a ik b kj k=1 EADS 6.1 Min-Plus-Matrix-Produkt und Min-Plus-Transitive Hülle 496/598

Entsprechend für Min-Plus: c ij = min{a ik + b kj ; 1 k n} u 1 u 2 a ik = d(v i, u k ) b kj = d(u k, w j ) v i. w u j n EADS 6.1 Min-Plus-Matrix-Produkt und Min-Plus-Transitive Hülle 497/598

Anwendung: kürzeste Wege von v i nach w j in einem Graph (A = B); dabei ist 0 I min,+ =... 0 EADS 6.1 Min-Plus-Matrix-Produkt und Min-Plus-Transitive Hülle 498/598

Sei A Entfernungsmatrix, A = (a ij ) 1 i,j n = (d(v i, v j )) 1 i,j n. Setze a ii = 0 für i = 1,..., n. Betrachte A 2 mit dem Min-Plus-Produkt, A 2 =: (a (2) ij ) 1 i,j n. Dann ist a (2) ij die Länge eines kürzesten Pfades von v i nach v j, der höchstens zwei Kanten enthält. Induktion ergibt: a (k) ij ist die Länge eines kürzesten Pfades von v i nach v j mit höchstens k Kanten. Falls die d(v i, v j ) alle 0 sind, gibt es immer kürzeste Pfade, die höchstens n 1 Kanten enthalten. EADS 6.1 Min-Plus-Matrix-Produkt und Min-Plus-Transitive Hülle 499/598

Damit ergibt sich folgende alternative Lösung des all-pairs-shortest-path-problems: Berechne A n 1 (Min-Plus)! Es genügt auch, A 2 log(n 1) durch wiederholtes Quadrieren zu berechnen (nicht A 2, A 3, A 4,... ). Definition 114 A := min i 0 {A i } heißt Min-Plus-Transitive Hülle. Bemerkung: min wird komponentenweise gebildet. Wenn d 0, dann A = A n 1. EADS 6.1 Min-Plus-Matrix-Produkt und Min-Plus-Transitive Hülle 500/598

6.2 Boolesche Matrixmultiplikation und Transitive Hülle Wir ersetzen nun im vorhergehenden Abschnitt die Distanzmatrix durch die (boolesche) Adjazenzmatrix und (min, +) durch (, ), d.h.: n C = A B; c ij = a ik b kj k=1 Wenn wir zudem a ii = 1 für 1 i n setzen, dann gilt für A k (boolesches Produkt, A 0 = I) 1 falls es im Graphen einen Pfad von v i nach v j, bestehend aus k Kanten, gibt a ij = 0 falls es im Graphen keinen Pfad von v i nach v j, bestehend aus k Kanten, gibt EADS 6.2 Boolesche Matrixmultiplikation und Transitive Hülle 501/598

Transitive Hülle: A := i 0 A i (= A n 1 ) ist damit die Adjazenzmatrix der transitiven Hülle des zugrunde liegenden Digraphen. EADS 6.2 Boolesche Matrixmultiplikation und Transitive Hülle 502/598

Satz 115 Sei M(n) die Zeitkomplexität für das boolesche Produkt zweier n n-matrizen, T (n) die Zeitkomplexität für die transitive Hülle einer n n booleschen Matrix. Falls T (3n) ct (n) und M(2n) 4M(n), dann gilt: }{{}}{{} sicher erfüllt, falls sicher erfüllt, falls T polynomiell M(n) n 2 T (n) = Θ(M(n)). EADS 6.2 Boolesche Matrixmultiplikation und Transitive Hülle 503/598

Beweis: (1) Matrixmultiplikation transitive Hülle: Seien boolesche Matrizen A, B gegeben und ihr boolesches Produkt C = A B gesucht. Setze: 0 A 0 L = 0 0 B 3n 0 0 0 }{{} 3n EADS 6.2 Boolesche Matrixmultiplikation und Transitive Hülle 504/598

Beweis (Forts.): L ist die Adjazenzmatrix eines tripartiten Digraphen, denn: v u w v u w v 0 A 0 u 0 0 B w 0 0 0 v 1 u 1 w 1 3 A B... v n u n w n Daher kann L leicht bestimmt werden: I A AB L = 0 I B (= I L L 2 ) 0 0 I Also gilt: M(n) T (3n) = O(T (n)). EADS 6.2 Boolesche Matrixmultiplikation und Transitive Hülle 505/598

Beweis (Forts.): (2) Transitive Hülle Matrixmultiplikation: Gegeben: n n boolesche Matrix L; gesucht: L ; Annahme: n ist Zweierpotenz. Teile auf: ( ) ( ) A B } n 2 L = ; L E F = C }{{} n 2 D }{{} n 2 } n 2 G H Es gilt also: E = (A BD C) betrachte alle Pfade von der ersten Hälfte der Knoten zur ersten Hälfte F = EBD analog G = D CE analog H = D GF analog EADS 6.2 Boolesche Matrixmultiplikation und Transitive Hülle 506/598

Beweis (Forts.): Um L zu berechnen, benötigen wir zwei Transitive-Hülle-Berechnungen und sechs Matrixprodukte für Matrizen der Dimension n 2 n 2 (nämlich M 1 = D C, M 2 = BM 1, M 3 = EB, M 4 = M 3 D, M 5 = M 1 E, M 6 = GF ), plus den Aufwand für, der c n 2 ist. Wir zeigen nun durch Induktion (n = 1 ), dass T (n) cm(n): T (n) 2T ( n 2 ) + 6M(n 2 ) + c n 2 2cM( n 2 ) + 6M(n 2 ) + c n 2 Vor.: M(2n) 4M(n) da M(n) n 2 1 4 (2c + 6 + 4c )M(n) cm(n) falls c 1 4 (2c + 6 + 4c ), also falls c 3 + 2c. Also T (n) = O(M(n)). EADS 6.2 Boolesche Matrixmultiplikation und Transitive Hülle 507/598