Graphenalgorithmen. Kurz-Vorstellung. Forschungsinteressen. Algorithm Engineering. Themen der VO: Probleme



Ähnliche Dokumente
Welches Problem denn? Das Heiratsproblem. Formale Beschreibung. Paarungen

WS 2013/14. Diskrete Strukturen

10. Vorlesung Spieltheorie in der Nachrichtentechnik

WS 2009/10. Diskrete Strukturen

1 topologisches Sortieren

Algorithmen und Datenstrukturen

Literatur. Dominating Set (DS) Dominating Sets in Sensornetzen. Problem Minimum Dominating Set (MDS)

Algorithmen und Datenstrukturen. Große Übung vom Nils Schweer

Konzepte der Informatik

Grundlagen der Theoretischen Informatik, SoSe 2008

Leichte-Sprache-Bilder

Bedienungsanleitung für den Online-Shop

Die Post hat eine Umfrage gemacht

Fragebogen zur Evaluation der Vorlesung und Übungen Computer Grafik, CS231, SS05

Produktionsplanung und steuerung (SS 2011)

Informationsblatt Induktionsbeweis

WS 2008/09. Diskrete Strukturen

In diesem Tutorial lernen Sie, wie Sie einen Termin erfassen und verschiedene Einstellungen zu einem Termin vornehmen können.

Das Briefträgerproblem

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Algorithmische Mathematik

Kapiteltests zum Leitprogramm Binäre Suchbäume

Primzahlen und RSA-Verschlüsselung

Vorkurs Informatik WiSe 15/16

1. Weniger Steuern zahlen

Backup Premium Kurzleitfaden

Kombinatorische Optimierung

Algorithmen II Vorlesung am

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Punkt 1 bis 11: -Anmeldung bei Schlecker und 1-8 -Herunterladen der Software

22. Algorithmus der Woche Partnerschaftsvermittlung Drum prüfe, wer sich ewig bindet

Algorithmentheorie Maximale Flüsse

Wichtige Info szum Lehrabschluss!

Basis und Dimension. Als nächstes wollen wir die wichtigen Begriffe Erzeugendensystem und Basis eines Vektorraums definieren.

Widerrufsbelehrung der Free-Linked GmbH. Stand: Juni 2014

Die Beschreibung bezieht sich auf die Version Dreamweaver 4.0. In der Version MX ist die Sitedefinition leicht geändert worden.

Information Systems Engineering Seminar

Catherina Lange, Heimbeiräte und Werkstatträte-Tagung, November

Anmelden und Vorträge einreichen auf der JBFOne-Website Inhalt

Die Komplexitätsklassen P und NP

Handbuch ECDL 2003 Basic Modul 5: Datenbank Grundlagen von relationalen Datenbanken

Einstellungen für SEPA-Lastschriften in der VR-NetWorld-Software

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Erklärung zum Internet-Bestellschein

Wir machen neue Politik für Baden-Württemberg

Teil III: Routing - Inhalt I. Literatur. Geometric Routing. Voraussetzungen. Unit Disk Graph (UDG) Geometric Routing 29

1. Man schreibe die folgenden Aussagen jeweils in einen normalen Satz um. Zum Beispiel kann man die Aussage:

Kapitalerhöhung - Verbuchung

Kapitel 4: Dynamische Datenstrukturen. Algorithmen und Datenstrukturen WS 2012/13. Prof. Dr. Sándor Fekete

7 Rechnen mit Polynomen

40-Tage-Wunder- Kurs. Umarme, was Du nicht ändern kannst.

Einstellungen für SEPA-Lastschriften oder SEPA Dauerlastschriften in der VR-NetWorld Software 5.0

Geben Sie in dem offenen Suchfeld den Namen Ihrer Einrichtung ein und klicken Sie auf Suchen.

GeoPilot (Android) die App

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Rente = laufende Zahlungen, die in regelmäßigen Zeitabschnitten (periodisch) wiederkehren Rentenperiode = Zeitabstand zwischen zwei Rentenzahlungen

Analysis I. Einige Bemerkungen zum Beginn... R. Haller-Dintelmann Analysis I

Die YouTube-Anmeldung

Was meinen die Leute eigentlich mit: Grexit?

Statuten in leichter Sprache

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Erstellen eines Formulars

Theoretische Grundlagen der Informatik WS 09/10

Anmerkungen zur Übergangsprüfung

Algorithmen & Datenstrukturen 1. Klausur

Guten Morgen und Willkommen zur Saalübung!

Hautkrebsscreening. 49 Prozent meinen, Hautkrebs sei kein Thema, das sie besorgt. Thema Hautkrebs. Ist Hautkrebs für Sie ein Thema, das Sie besorgt?

Übungen für Woche 10

Wie erreiche ich was?

Anwendungsbeispiele Buchhaltung

Internationales Altkatholisches Laienforum

Was ich als Bürgermeister für Lübbecke tun möchte

HIER GEHT ES UM IHR GUTES GELD ZINSRECHNUNG IM UNTERNEHMEN

EINFACHES HAUSHALT- KASSABUCH

ARCO Software - Anleitung zur Umstellung der MWSt

Übungsaufgaben Tilgungsrechnung

Die Verbindung von Linearer Programmierung und Graphentheorie

Updatehinweise für die Version forma 5.5.5

Das Dilemma des Einbrechers Wer die Wahl hat, hat die Qual!

Informatik-Sommercamp Mastermind mit dem Android SDK

SJ OFFICE - Update 3.0

Mathematische Grundlagen

Ihre Interessentendatensätze bei inobroker. 1. Interessentendatensätze

Lehrer: Einschreibemethoden

Grundbegriffe der Informatik

Der Kalender im ipad

Wollen Sie einen mühelosen Direkteinstieg zum Online Shop der ÖAG? Sie sind nur einen Klick davon entfernt!

How to do? Projekte - Zeiterfassung

Zeichen bei Zahlen entschlüsseln

Das sogenannte Beamen ist auch in EEP möglich ohne das Zusatzprogramm Beamer. Zwar etwas umständlicher aber es funktioniert

15 Optimales Kodieren

Tutorial. Wie kann ich meinen Kontostand von meinen Tauschpartnern in. übernehmen? Zoe.works - Ihre neue Ladungsträgerverwaltung

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

Studienplatzbeschaffung

Schuljahreswechsel im Schul-Webportal

Welchen Weg nimmt Ihr Vermögen. Unsere Leistung zu Ihrer Privaten Vermögensplanung. Wir machen aus Zahlen Werte

Online bezahlen mit e-rechnung

PK-Website: Besuche & Seitenaufrufe 2010 und 2011

Schrittweise Anleitung zur Erstellung einer Angebotseite 1. In Ihrem Dashboard klicken Sie auf Neu anlegen, um eine neue Seite zu erstellen.

Novell Client. Anleitung. zur Verfügung gestellt durch: ZID Dezentrale Systeme. Februar ZID Dezentrale Systeme

Transkript:

Graphenalgorithmen Professor Dr. Petra Mutzel Lehrstuhl für Algorithm Engineering / Experimentelle Algorithmen, LS11 WS 2006/06 Kurz-Vorstellung Studium an Univ. Augsburg (WiMa/Math) 1983--1990 Wiss. Mitarb. an Rice University, Houston (TX) Wiss. Mitarb. an FU Berlin Promotion an Univ. zu Köln (Inf) 1994 Habilitation am Max-Planck-Institut für Informatik, Saarbrücken 1999 Vertr.-Professur (C3) an Univ. Heidelberg (Inf) 1999 Lehrstuhl für Algorithmen und Datenstrukturen, TU Wien 1999-2004 seit Dezember 2004: Lehrstuhl für Algorithm Engineering, LS11 Algorithm Engineering Design, theoretische Analyse, Implementierung, und experimentelle Evaluation von Algorithmen und Datenstrukturen Forschungsinteressen Algorithmen und Datenstrukturen Graphenalgorithmen Kombinatorische Optimierung anwendungsorientiert anwendungsorientiert Graphenalgorithmen Datenstrukturen für Graphen Graphtraversierung: BFS, DFS Matching- und Assignmentprobleme: maximales Matching, Heiratsproblem Graphenfärbung: Landkartenfärbung Netzwerkdesign: MST, Minimum Steiner Tree Wegeprobleme: kürzeste, längste, TSP Flüsse in Netzwerken: max-flow, min-cost-flow Graphpartitionierung: st-min-cut, min-cut, max-cut Überdeckungsprobleme: vertex cover Spezielle Graphklassen: planare Graphen Themen der VO: Probleme Heiratsproblem, Maximales Matching Graphenfärbungsprobleme Travelling Salesman Problem (TSP) Minimum Steiner Tree max-cut in planaren Graphen min-cost flow vertex-cover Test auf Klassenzugehörigkeit, z.b. planar externe Graphtraversierung: BFS externer Minimum Spanning Tree (MST) 1

Themen der VO: Methoden Effiziente Graphenalgorithmen (spezielle Verfahren) Algorithmen für Spezialklassen, z.b. planare Graphen, beschränkte Baumweite Branch-and-Cut, Schnittebenenverfahren, ILP Approximationsalgorithmen FPT- (Fixed-Parameter-Tractable) Algorithmen Externspeicheralgorithmen Organisatorisches Zeiten: Vorlesung: Mo 12:15-13:45 Übung: Übungsaufgaben zum Nachdenken über behandelten Stoff, aber auch Originalartikel über Varianten klassische Übungen und Projektarbeit in Gruppen mit Präsentationen Termine: Di / Do um 14:15-15:45 Uhr Wie oft? 7-14-tägig, d.h. ca. 10 Termine Termine: Anmeldung: jetzt (Listen) Einteilung kommenden Montag Schwerpunktgebiete Algorithmen, Komplexität und formale Modelle Computational Intelligence und Natural Computing Intelligente Systeme Prüfungselemente Mündliche Fachprüfung: Über VO 2 inkl Ü 2: 6LP Anforderungen: Zusammenhänge des Gebiets Spezielle Fragestellungen einordnen und bearbeiten (ich hätte gerne: regelmäßige aktive Mitarbeit in Übungen, darf ich aber nicht fordern) Mündliche Prüfung: Stoff der VO und Ü, 20 Minuten Prüfungselemente Leistungsnachweis: Über VO 2 inkl. Ü 2: 6LP Anforderungen: Regelmäßige aktive Mitarbeit in Übungen Mündliche Prüfung (in einer Art Fachgespräch): 15 Minuten Literatur für diese VO Aktuelle Originalliteratur, Folien, VO-Mitschriften? Cook, Cunningham, Pulleyblank, Schrijver, Combinatorial Optimization, John Wiley and Sons, New York, 1998 Graphentheorie (weniger Algorithmen): F. Harary: Graph Theory, Addison-Wesley, Reading, MA, 1969 R. Diestel: Graph Theory, 3. Auflage, Springer- Verlag, Heidelberg Graduate Texts in Maths, Vol. 173 (auch in deutsch); elektronische Ausgabe: www.math.uni-hamburg.de/home/diestel/books/ graph.theory/download.html 2

1. Matchingprobleme 1.1 Das Heiratsproblem Übersicht Problembeschreibung / Anwendungen Algorithmus Analyse des Algorithmus Korrektheit des Algorithmus Eigenschaften des Algorithmus Laufzeit des Algorithmus Das Heiratsproblem Stabile Paarung? Gegeben n Männer und n Frauen Jede Person hat eine nach persönlichen Präferenzen sortierte Liste aller Personen des anderen Geschlechts Gesucht Stabile Paarungen von jeweils einem Mann und einer Frau Stabile Paarung? Fragestellung 1. 2. 1. 2. Existiert immer eine stabile Paarung? Wie berechnet man eine solche stabile Paarung? Instabile Paarungen Es gibt zwei Personen die beide miteinander glücklicher wären als mit ihren zugeordneten Partnern 3

Umfeld & Anwendung Umfeld: Matching- und Assignment-Probleme Anwendung: Zuordnung von Medizinstudierenden zu Krankenhäusern in den USA Zulassungen zu Colleges Formale Definitionen M = Menge der Männer F = Menge der Frauen M = F Jeder m M hat Reihung < m (Totalordnung) aller Frauen f F Jede f F hat Reihung < f aller Männer m 1 < f m 2 bedeutet jeweils: f würde lieber m 1 als m 2 heiraten. Formale Definitionen ff. Eine Paarung ist eine bijektive Abb. H:M F. Wir schreiben (m,f) H, H(m)=f, H -1 (f)=m Eine Paarung H ist instabil, wenn es m M und f F gibt, so dass: 1. (m,f) H, d.h. m und f sind nicht verheiratet 2. m wäre lieber mit f verheirat als mit seiner Frau H(m) 3. f wäre lieber mit m verheiratet als mit ihrem Mann H -1 (f) Formale Definitionen ff. Eine Paarung ist stabil, wenn sie nicht instabil ist. Das Problem der stabilen Heirat ist es, eine stabile Paarung zu berechnen. Beispiel M = {Anton, Bernd, Christoph} F = {,, } Anton: H,G,I Bernd: I,G,H Christoph: I,H,G : A,B,C : B,C,A : A,C,B Ist Paarung {AI, BG, CH} stabil? Algorithmus von Gale & Shapley 1962 1. Alle Frauen und Männer sind unverlobt 2. While ( nicht verlobter Mann m M) { 3. m macht oberster Frau f auf Liste Antrag; 4. if (f nicht verlobt): 5. verlobe m und f, d.h. (m,f) H 6. else if (f zieht m ihrem akt. Partner m vor){ 7. löse Verlobung (f,m ); 8. verlobe m,f; 9. m streicht f von seiner Liste} 10. else m streicht f von seiner Liste 4

5

Kein Kandidat Runde 5 Jeder ist verlobt FERTIG I, J, G, H, F ABER: Terminiert der Algorithmus immer? Können am Ende Personen übrig bleiben? Sind die Paarungen stabil? Ist die Lösung des Algorithmus eindeutig? Ist die Lösung fair, oder bevorzugt sie die Männer oder die Frauen? Wie lange braucht dieser Algorithmus um die Lösung zu finden? Terminiert der Algorithmus immer? Ja! Jeder Mann kann nur n mal einen Antrag machen In jeder Runde macht mindestens ein Mann einen Antrag Irgendwann ist die Liste jedes Mannes leer. Können am Ende Personen übrig bleiben? Nein! # verlobter Männer = # verlobter Frauen Sobald eine Frau verlobt ist, bleibt sie bis zum Schluss verlobt (ggf. mit wechselndem Partner) Indirekter Beweis: Annahme: Ein Mann A und eine Frau B bleiben übrig Widerspruchsargument: A hätte B einen Antrag gemacht und sie hätte akzeptiert Sind die Paarungen stabil? Ist die Lösung fair? Ja! Indirekter Beweis: A hat D vor C einen Antrag gemacht: Nein! Männer haben Vorteile! 1. 2. D hat akzeptiert: Sie hätte später nie A mit jmd. weiter unten in der Liste getauscht 1. 2. 1. 2. 1. 2. D hat abgelehnt: Sie war verlobt mit jmd. weiter oben auf der Liste als A. Sie hätte später nie diesen mit jmd. noch weiter unten als A getauscht. 1. 2. 1. 2. 6

Ist die Lösung fair? Nein! Männer haben Vorteile! Ist die Lösung fair? Wenn die Frauen die aktive Rolle hätten 1. 2. 1. 2. 1. 2. 1. 2. 1. 2. 1. 2. 1. 2. 1. 2. Ist die Lösung fair? Ist die Lösung fair? Wenn die Frauen die aktive Rolle hätten 1. 2. 1. 2. 1. 2. 1. 2. Der Algorithmus findet unter allen stabilen Paarungen diejenige, die Männer-optimal und Frauen-pessimal ist. D.h. es existiert keine andere stabile Paarung, bei der ein Mann eine für ihn bessere Frau erhalten hätte bzw. eine Frau einen für sie schlechteren Mann. Männer-Optimal Indirekter Beweis Def.: Eine Frau f heißt für einen Mann m unerreichbar, wenn es keine stabile Paarung P mit (m,f) P gibt. Wir zeigen: Falls ein Mann m von einer Frau f zurückgewiesen wird, ist die Frau für ihn unerreichbar. Annahme: M1 wird im Algorithmus von F2 zurückgewiesen, und es gibt eine stabile Paarung P mit (M1,F2) P. O.B.d.A. sei dies das erste Mal, dass der Algorithmus einen Fehler macht. Männer-Optimal Indirekter Beweis Annahme: Algorithmus (H): (M1,F1), (M2,F2), Alternative stabile Paarung (P): (M1,F2), (M2,F3) M1 mag F2 lieber als F1 erster Fehler des Algorithmus Folgerung: M1 wurde von F2 zurückgewiesen, d.h. F2 mag M2 lieber als M1 In (P): (M2,F3): M2 mag F3 lieber als F2 Widerspruch zu erster Fehler M2 mag F2 lieber als F3 Widerspruch zu Stabilität 7

Eindeutigkeit Das Ergebnis des Algorithmus ist eindeutig. Beweis: Seien H 1 und H 2 verschiedene m-optimale Lösungen. Dann existiert ein m, dem es in H 1 oder H 2 schlechter geht. Frauen-Pessimal Indirekter Beweis Beweis: Sei stabile Paarung H H das schlechtest mögliche Arrangement für die Frauen. Dann existiert f mit (m,f) H und (m,f) H. m: xxxx < m f < m (unerreichbare Frauen für m) f: m m Widerspruch zur Stabilität von H. Laufzeit In jeder Runde gibt es mindestens einen Antrag Der Algorithmus endet spätestens, wenn alle Männer beim letzten Namen angekommen sind n Listen mit je n Einträgen = n 2 Einträge Maximal n 2 Anträge Aufwand pro Antrag: konstant (für alle Frauen init. Feld rank[1..m]) Laufzeit ist O(n 2 ): quadratisch Bemerkung zur Anwendung Der Algorithmus wird für die Medizinstudierenden in den USA verwendet. Wer die Rolle der Männer übernimmt? Krankenhäuser Werbetext für die Studierenden: You will be matched with your highest ranked hospital that offers you a position. Lange Zeit gingen die Betroffenen davon aus, dass der Algorithmus fair für beide Parteien ist. Wahrheit wurde erst im Jahr 1981 durch zwei große Artikel im New England Journal of Medicine bekannt. Bemerkungen Das stabile Heiratsproblem ist ein Zuordnungsproblem im Umfeld der Matching- Algorithmen und Assignmentprobleme. Es kann als Perfektes Matching Problem in einem Graphen formuliert werden. Ein Matching ist eine Teilmenge von Kanten, die zu jedem Knoten höchstens einmal inzident ist. Ein perfektes Matching ist eine Teilmenge der Kanten, die zu jedem Knoten genau einmal inzident ist. Literatur Schöne Abhandlung und Animationen von Harry Mairson: http://www1.cs.columbia.edu/~evs/intro/stable/ Tipp: Aktiv sein hilft! 8