1 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Graphen (2)

Slides:



Advertisements
Ähnliche Präsentationen
Entwicklung der Fähigkeiten und lebenslanges Lernen für ältere Menschen Skills Development and life-long-learning for older people Ministerium für Gesundheit,
Advertisements

An new European Power Network: Student Power
Oct. 16, Grenoble 1 Emani related activities at SUB Göttingen Thomas Fischer.
Themenportal Europäische Geschichte / Web portal European History
© Daimler AG E-mobility.
Kapitel 9: Graphdurchlauf
Isolation: Serializability
M ICROSYSTEMS T ECHNOLOGY © BOSCH. Key Figures for the Microsystems Technology Industry Turnover Employees Turnover per employee (K EUR) Companies* WZ-Code.
Environmental Technology
© Boehringer Ingelheim
M EDICAL © BVMed Image library, Bundesverband Medizintechnologie,
L OGISTICS © Wincanton. Key Figures for the Logistics Industry Turnover Employees Turnover per employee (K EUR) Companies* WZ-Code 2008: 49.2, 49.4, 49.5,
G20 Sales Order Processing via EDI Overview
© 2006 Open Grid Forum OGF26 - Chapel Hill, May 2009 Addressing Metadata Challenges OGF Digital Repositories RG.
Geography Matters ! GIS Day 2000 Tag der offenen Tür ! Tag der offenen Tür ! BOW.
Institut für Softwaresysteme in Wirtschaft, Umwelt und Verwaltung Folie 1 DER UMWELT CAMPUS BIRKENFELD ISS Institut für Softwaresysteme in Wirtschaft,
DissOnline / Digitale Dissertationen Dr. P. Schirmbacher Offene Standards und internationale / nationale Abstimmung Gliederung: 1.Open Archive.
© MANN+HUMMEL GMBH Plastic.
Zurück zur ersten Seite Der Weg ins Ausland n Beispiele aus der Arabischen Welt n Ölreiche vs. Bevölkerungsreiche n Das EU-Budget n Untersuchung.
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmen und Komplexität Teil 1: Grundlegende.
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmen und Komplexität Teil 1: Grundlegende.
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmen und Komplexität Teil 1: Grundlegende.
Für den bequemen Zugriff durch den Endbenutzer werden innovative multimodale Benutzer- schnittstellen angeboten, die den kleinen Bild- schirmen der Taschencomputer.
Programmiermethodik SS2007 © 2007 Albert Zündorf, University of Kassel 1 6. Story Driven Modeling Gliederung: 1. Einführung 2. Objektdiagramme zur Analyse.
NATURWISSENSCHAFTLICHE FAKULTÄT II – INSTITUT FÜR PHYSIK FGMR 2012 September 17–20 Halle (Saale) Advanced Magnetic Resonance for the Study of Dynamics.
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Universität Karlsruhe (TH) © 2006 Univ,Karlsruhe, IPD, Prof. Lockemann/Prof. BöhmTAV 5 Chapter 5 Isolation: Serializability.
Kapitel 10: Graphalgorithmen
FH-Hof Sortieren mit Binären Bäumen Richard Göbel.
Deutsche Gesellschaft für Technische Zusammenarbeit GmbH Integrated Experts as interface between technical cooperation and the private sector – An Example.
Virtuelle Fachhochschule Technische Fachhochschule Berlin University of Applied Sciences Project "Virtuelle Fachhochschule" (guiding project) State of.
Landeswettbewerb für Schulen Veranstalter: Ingenieurkammer Baden-Württemberg Schirmherr: Kultusminister Helmut Rau 2007.
HAW Hamburg, CARPE 2011, Prof. Dr. Rüdiger Weißbach, Revision : Bridging the Communication Gap in IT Projects - Enabling Non-IT Professionals.
Bildung ohne Barrieren?! Einfluss von inneren Einstellungen und Technologien auf den Abbau von Barrieren John Albertini Department of Research and Teacher.
Studying at ETH Zürich Dauer Graduiertenstufe Untergraduierten stufe Graduiertenstudium Doktorat Masterstudium (Total 3000) Bachelorstudium (Total 6000)
University of Vienna Department of Meteorology and Geophysics VERA-Präsentation ZAMG Anwendungsbeispiele von VERA V ienna E nhanced R esolution.
Funktionen Johannes-Kepler-Gymnasium Plenum Funktionen
Das deutsche Schulsystem
Non invasive imaging of plants and plant roots in substrate with Nuclear Magnetic Resonant Imaging (NMRI) and (Sub) Terrahertz Imaging (THz) Dr. Axel Jung.
Gefördert von:. Aaron Sams Aaron Sams ist seit 2000 als Pädagoge tätig und arbeitet derzeit als Lehrer für Natur- wissenschaften an der Woodland Park.
Barbara ChimaniVERA-Seminar MODELLVERGLEICH VERA - ALADIN University of Vienna Department of Meteorology and Geophysics.
Technische Universität München - Internalising external costs of transportation - Effective option for climate protection or academic exercise? Regine.
Engineering Physics Presentation 16. October 2012.
Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems A. Pessoa, M. Poggi de Aragao und E. Uchoa Christian Gruber - Johannes Reiter.
Die Zählschleife int s = 0 for (int k=1; k
Semantic Annotations in Web Engineering Tobias Zanke.
University of Applied Sciences Übung Objektorientierte Programmierung II Dipl.-Inf. (FH) Markus Vogler.
Algorithm Engineering Schnelles Sortieren Stefan Edelkamp.
Presentation Civil Engineering Sciences Faculty of Civil Engineering Sciences Graz, May Civil Engineering Sciences and Economics – Civil Engineering.
Institut für Öffentliche Dienstleistungen und Tourismus Informal learning for regional development Manfred Walser Towards a Knowledge Society: Is Knowledge.
Finnland Info National production of evaluation information to serve policy-making Parliament The Ministry of Education The Government.
Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems Christian Gruber - Johannes Reiter.
TOGAF - The Open Group Architecture Framework
TU Berlin Abt. I - Studierendenservice International Office - Study Abroad & International Programmes 1 Entwicklung von gemeinsamen Studiengängen/ Doppeldiplom-
IC 39th Conference, HEIG-VD, Yverdon-les-Bains, 9…12 October 2007.
1 von 10 ViS:AT Abteilung IT/3, IT – Systeme für Unterrichtszwecke ViS:AT Österreichische Bildung auf Europaniveau BM:UKK Apple.
1 Helmut Schauer Educational Engineering Lab Department for Informatics University of Zurich Algorithmen und Datenstrukturen FS 2008 BBäume.
Graphen (1) 1 Helmut Schauer Educational Engineering Lab
1 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Dynamische Programmierung.
Thomas Claudius Huber Senior Consultant Trivadis AG WCF RIA Services Datengetriebene Apps.
Kanditaten für den ELACTA Vorstand ( )
Virtuelle Fachhochschule Technische Fachhochschule Berlin University of Applied Sciences Project Virtuelle Fachhochschule (guiding project) State of Study.
Competence Network for Optical Technology Dr. Klaus Schindler, CEO OptoNet.
Megadigitale media based teaching and learning at the Goethe-Universität Frankfurt Project to implement the eLearning-Strategie studiumdigitale Hier wird.
The Model. Philosophy of life Theories Theory-based Action.
An Approach to standardize a Service Life Cycle Management
IAB – AN INTERDISCIPLINARY WORKING GROUP FOR PROMOTING MULTIMODAL THERAPY OF MOVEMENT DISORDERS Adib Saberi F 1, Pickenbrock H 2, Dressler D 2 1 Department.
1 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Geometrische Algorithmen.
Ryan J. Vaughan, CPA Director, Chicago Office Tax Leader and Tax Credits & Incentives Practice Leader Ryan has over 10 years of diversified public accounting.
 Präsentation transkript:

1 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Graphen (2)

2 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Topologisches Sortieren (1) Die Kanten eines gerichteten zyklenfreien Graphen bilden eine Halbordnung (die Ordnungsrelation ist nur für solche Knoten definiert die am gleichen Pfad liegen). Eine strenge Halbordnung ist irreflexiv (x<x) und transitiv x<y and y<z x<z x y z x<yx<y y<z

3 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Topologisches Sortieren (2) O(|V|+|E|) Topologisches Sortieren bringt die Knoten eines gerichteten zyklenfreien Graphen in eine Reihenfolge, die mit der Halbordnung verträglich ist. Die umgekehrte postorder-Reihenfolge entspricht einer solchen topologischen Sortierung.

4 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Topologisches Sortieren (3) Beispiel: Eine bei a beginnende Tiefensuche liefert die postorder-Reihenfolge ihefdagbc Die umgekehrte Reihenfolge cbgadfehi ist topologisch sortiert

5 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Topologisches Sortieren (4) Beispiel: Eine bei c beginnende Tiefensuche liefert die postorder-Reihenfolge igchefdba Die umgekehrte Reihenfolge abdfehcgi ist ebenfalls topologisch sortiert

6 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Artikulationspunkte (1) Kanten und Knoten eines ungerichteten Graphen sind dann kritisch wenn sich bei ihrer Entfernung die Anzahl der Komponenten des Graphen erhöht. Beispiel: kritische Kantekritische Knoten

7 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Artikulationspunkte (2) O(|V|+|E|) Zur Ermittlung der Artikulationspunkte werden die Knoten des Graphen während einer Tiefensuche in preorder Reihenfolge durchnummeriert und bei der Rückkehr aus der Tiefensuche jeder Kante die kleinste Nummer aller über diese Kante erreichbaren Knoten zugewiesen. Beispiel:

8 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Artikulationspunkte (3) Eine Kante ist genau dann kritisch wenn die kleinste über sie erreichbare Knotennummer grösser ist als die Nummer des Knotens von dem aus sie während der Tiefensuche traversiert worden ist. Beispiel:

9 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Artikulationspunkte (4) Ein Knoten (mit Ausnahme des Startknotens) ist genau dann kritisch wenn bei der Tiefensuche für mindestens eine der von ihm ausgehenden Kanten die kleinste über diese während der Tiefensuche erreichbare Knotennummer grösser oder gleich der Nummer dieses Knotens ist. Beispiel:

10 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Artikulationspunkte (5) Der Startknoten der Tiefensuche ist genau dann kritisch wenn von der Wurzel des bei der Tiefensuche generierten spannenden Baumes mehr als eine Kante ausgeht. Beispiel: Von der Wurzel a des spannenden Baumes gehen drei Kanten aus, sie ist daher kritisch!

11 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Komponenten eines ungerichteten Graphen O(|V|+|E|) Eine Komponente eines ungerichteten Graphen ist ein maximaler Teilgraph in dem jeder Knoten von jedem anderen Knoten aus erreichbar ist. Die Komponenten können beim Traversieren mittels Tiefen- oder Breitensuche ermittelt werden. Beispiel: ungerichteter Graph mit drei Komponenten

12 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Zweifach zusammenhängende Komponenten eines ungerichteten Graphen (biconnected components) O(|V|+|E|) Eine zweifach zusammenhängende Komponente eines ungerichteten Graphen ist ein maximaler Teilgraph der auch nach dem Entfernen eines beliebigen Knotens zusammenhängend bleibt. Eine zweifach zusammenhängende Komponente enthält somit keine kritischen Knoten. Die zweifach zusammenhängenden Komponenten können beim Aufsuchen der kritischen Knoten ermittelt werden.

13 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Beispiel: Zweifach zusammenhängende Komponenten eines ungerichteten Graphen

14 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Schwach zusammenhängende Komponenten eines gerichteten Graphen (weakly connected components) O(|V|+|E|) Die schwach zusammenhängende Komponenten eines gerichteten Graphen entsprechen den Komponenten jenes Graphen der entsteht wenn sämtliche gerichtete Kanten durch ungerichtete Kanten ersetzt werden.

15 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Stark zusammenhängende Komponenten eines gerichteten Graphen (strongly connected components) Eine stark zusammenhängende Komponente eines gerichteten Graphen ist ein maximaler Teilgraph in dem jeder Knoten von jedem anderen Knoten aus erreichbar ist. Beispiel:

16 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Stark zusammenhängende Komponenten eines gerichteten Graphen (strongly connected components) O(|V|+|E|) Die stark zusammenhängenden Komponenten eines gerichteten Graphen können mittels folgendem Algorithmus gebildet werden: 1)Nummeriere alle Knoten des Graphen in preorder Reihenfolge einer Tiefensuche 2)Bilde den "inversen" Graphen durch Umkehren der Orientierung aller Kanten 3)Ermittle alle spannenden Bäume des inversen Graphen durch Tiefensuche in der Reihenfolge der Nummerierung der Knoten Die Knoten jedes spannenden Baumes bilden gemeinsam mit den sie verbindenden Kanten des ursprünglichen Graphen die stark zusammenhängenden Komponenten

17 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Verdichten eines gerichteten Graphen Ersetzt man jede stark zusammenhängende Komponente eines gerichteten Graphen durch einen einzigen Knoten so entsteht ein zyklenfreier "verdichteter" Graph. Beispiel: verdichtet

18 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Ermittlung aller Pfade Löscht man bei einer rekursiven Tiefensuche die Markierung jedes Knotens nachdem alle seine Kanten durchlaufen worden sind, so bilden die entstehenden Folgen aktiver Kanten alle möglichen Pfade dieses Graphen. Betrachtet man nur solche Pfade, die zu markierten Knoten führen, so erhält man alle Zyklen des Graphen.

19 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Ermittlung aller Hamiltonzyklen Ein Hamiltonzyklus enthält jeden Knoten des Graphen genau einmal. Beispiel: ungerichteter Graph mit zwei Hamiltonzyklen

20 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Travelling Salesman Problem Ermittlung des kürzesten Hamiltonzyklus eines gewichteten Graphen. Beispiel:

21 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Ermittlung aller Eulerpfade Ein Eulerpfad enthält jede Kante des Graphen genau einmal. Beispiel: ungerichteter Graph mit einigen seiner Eulerpfade

22 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Maximaler Fluss (1) O(|V|.|E| 2 ) In einem gerichteten azyklischen Graphen (einem sogenannten Netzwerk) können die Gewichte der Kanten als maximale Kapazität des über die jeweilige Kante transportierten Anteil eines Flusses interpretiert werden. Gesucht ist der maximale Fluss (maximum flow) der von einem Knoten q (der Quelle) zu einem Knoten s (der Senke) über alle existierenden Pfade transportiert werden kann.

23 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Maximaler Fluss (2) Beispiel: += Fluss = 3Fluss = 2Fluss = 5

24 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Maximale Zuordnung (1) In einem bipartiten Graphen können die Gewichte der Kanten als Präferenzen einer Zuordnung der zu der jeweilige Kante inzidenten Knoten interpretiert werden. Eine maximale Zuordnung (maximum matching) ist ein Teilgraph in dem von jedem Knoten maximal eine Kante ausgeht und die Summe der Gewichte aller Kanten maximal ist. Das Problem der maximalen Zuordnung kann auf das Problem der Ermittlung des maximalen Flusses von einer virtuellen Quelle zu einer virtuellen Senke zurückgeführt werden. Die Quelle speist dabei den einen Teil der Knoten des bipartiten Graphen während die Senke den sich ergebenden maximalen Fluss vom anderen Teil der Knoten aufnimmt.

25 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Maximale Zuordnung (2) Beispiel: gegebener bipartiter Graph suboptimale Zuordnung optimale Zuordnung

26 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Stable Marriage O(n) Gegeben seien n unverheiratete Männer und ebensoviele unverheiratete Frauen sowie für jede Person die Rangfolge der Präferenzen für die Personen des jeweils anderen Geschlechts. Männer und Frauen können als Knoten eines bipartiten Graphen modelliert werden. Gesucht ist eine "stabile" Zuordnung zwischen Männern und Frauen (Heirat) mit der Eigenschaft, dass es keine zwei Personen unterschiedlichen Geschlechts gibt, deren Präferenzen füreinander jeweils höher sind als für ihren zugeordneten (Ehe-)Partner. Algorithmus (von den Männern ausgehend): Die alleinstehenden Männer bewerben sich der Reihe nach und in der Rangfolge ihrer Präferenzen um die Frauen. Ist die beworbene Frau alleinstehend so willigt sie ein und es kommt zur Verlobung. Ist die beworbene Frau bereits verlobt und hat der Bewerber höhere Präferenz als ihr momentaner Verlobter so löst sie die Verlobung und verlobt sich mit dem Bewerber. Sobald alle Personen verlobt sind kommt es zur Hochzeit.

27 Helmut Schauer Educational Engineering Lab Department for Information Technology University of Zurich Stable Marriage Beispiel: Präferenzlisten: ann:sam, tom, ralfralf:berta, cindy, ann berta:tom, sam, ralfsam:berta, cindy, ann cindy:sam, ralf, tomtom:cindy, ann, berta Verlobungen (von Frauen ausgehend):Verlobungen (von Männern ausgehend): ann - samralf - berta berta - tom sam - berta cindy - samtom - cindy ann - tomralf - cindy berta - samtom - ann cindy - ralf