Datenstrukturen und Algorithmen SS07



Ähnliche Dokumente
Das Briefträgerproblem

Anmerkungen zur Übergangsprüfung

1 topologisches Sortieren

Algorithmen II Vorlesung am

Alles zu seiner Zeit Projektplanung heute

Statistische Untersuchungen zu endlichen Funktionsgraphen

Theoretische Informatik 1

S=[n] Menge von Veranstaltungen J S kompatibel mit maximaler Größe J

Theoretische Informatik 1

Seminarvortag zum Thema Virtual Private Network Design im Rahmen des Seminars Network Design an der Universität Paderborn

Algorithmen und Datenstrukturen 2

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

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

Information Systems Engineering Seminar

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

Effiziente Algorithmen und Datenstrukturen I. Kapitel 9: Minimale Spannbäume

Algorithmentheorie Maximale Flüsse

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

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

Konzepte der Informatik

NP-Vollständigkeit. Krautgartner Martin ( ) Markgraf Waldomir ( ) Rattensberger Martin ( ) Rieder Caroline ( )

Gliederung. Definition Wichtige Aussagen und Sätze Algorithmen zum Finden von Starken Zusammenhangskomponenten

Der Approximationsalgorithmus von Christofides

WS 2009/10. Diskrete Strukturen

Algorithmische Mathematik

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

Algorithmen und Datenstrukturen

Künstliche Intelligenz Maschinelles Lernen

20. Algorithmus der Woche Online-Algorithmen: Was ist es wert, die Zukunft zu kennen? Das Ski-Problem

8 Diskrete Optimierung

16. All Pairs Shortest Path (ASPS)

Algorithmen und Datenstrukturen Suchbaum

EndTermTest PROGALGO WS1516 A

Monatliche Grundgebühr: 5,00 Zeitabhängige Nutzung: Feiertags/Sonntags: 0,04 /min

EUROPÄISCHES PARLAMENT

Lange Nacht der Wissenschaft. Ein Klassiker. Die Mathematik der Kürzesten Wege

Skript und Aufgabensammlung Terme und Gleichungen Mathefritz Verlag Jörg Christmann Nur zum Privaten Gebrauch! Alle Rechte vorbehalten!

Vorgehensweise bei Lastschriftverfahren

Wasserfall-Ansätze zur Bildsegmentierung

4 Greedy-Algorithmen (gierige Algorithmen)

WS 2013/14. Diskrete Strukturen

Programmiertechnik II

Rechnerische Komplexität

Anwendungen der Wirtschaftsmathematik und deren Einsatz im Schulunterricht

1 Belastung. 1.1 Standortbestimmung 1.2 Belastungsvorhersage 1.3 Favoriten

Anleitung für die Teilnahme an den Platzvergaben "Studio II, Studio IV und Studio VI" im Studiengang Bachelor Architektur SS15

Whitepaper. Produkt: combit Relationship Manager 7. combit Relationship Manager -rückläufer Script. combit GmbH Untere Laube Konstanz

Kombinatorische Optimierung

6. Sich selbst organisierende Datenstrukturen

Wie findet das Navi den Weg?

Inventur. Bemerkung. / Inventur

Kurzanleitung Webmail Verteiler

Primzahlen und RSA-Verschlüsselung

Graphen: Datenstrukturen und Algorithmen

QTrade GmbH Landshuter Allee München Seite 1

I. Amtlicher Teil. Die Zeugnisse der Qualifikationsphase in der gymnasialen Oberstufe

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

Vertragsnummer: Deutsche Krankenhaus TrustCenter und Informationsverarbeitung GmbH im folgenden "DKTIG"

Quadratische Gleichungen

Kapiteltests zum Leitprogramm Binäre Suchbäume

VIDA-LOGDATEIEN VIDA ALL-IN-ONE

Grundlagen der Theoretischen Informatik, SoSe 2008

1. Motivation / Grundlagen 2. Sortierverfahren 3. Elementare Datenstrukturen / Anwendungen 4. Bäume / Graphen 5. Hashing 6. Algorithmische Geometrie

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

Handout 6. Entwicklung von Makros

1 Dedicated Firewall und Dedicated Content Security

R E L E A S E N O T E S

Vorlesung Diskrete Strukturen Graphen: Wieviele Bäume?

Planung für Organisation und Technik

Ein einfaches Modell zur Fehlerfortpflanzung

Lineargleichungssysteme: Additions-/ Subtraktionsverfahren

Datenstrukturen und Algorithmen SS07

SEPA-Leitfaden für PC-VAB Version Inhalt

Rechnung WAWI01 zu WAWI Version 3.8.6x01

Algorithmen und Datenstrukturen

Informationen zur Prüfung Geprüfter Handelsfachwirt (IHK)/Geprüfte Handelsfachwirtin (IHK)

Hilfe zur ekim. Inhalt:

Statistik II. Statistik II, SS 2001, Seite 1 von 5

PDF-Dateien erstellen mit edocprinter PDF Pro

Wachstum 2. Michael Dröttboom 1 LernWerkstatt-Selm.de

( ) als den Punkt mit der gleichen x-koordinate wie A und der

Einführung in Scheduling

Funktionaler Zusammenhang. Lehrplan Realschule

Häufige Item-Mengen: die Schlüssel-Idee. Vorlesungsplan. Apriori Algorithmus. Methoden zur Verbessung der Effizienz von Apriori

Bin Packing oder Wie bekomme ich die Klamotten in die Kisten?

Verkehrsstauspiel: Wieviel Prozent der Autos fahren über blau/grün? Jörg Rambau

4 Ideen zur Verbesserung des -Marketings!

Hinweise zur Nutzung des E-Learning Systems Blackboard (Teil 4): Teil I: Informationen über andere Beteiligte des Kurses

MATHEMATISCHE ANALYSE VON ALGORITHMEN

Suche in Spielbäumen Spielbäume Minimax Algorithmus Alpha-Beta Suche. Suche in Spielbäumen. KI SS2011: Suche in Spielbäumen 1/20

Wärmebildkamera. Arbeitszeit: 15 Minuten

Lineare Gleichungssysteme

W-Rechnung und Statistik für Ingenieure Übung 11

24. Algorithmus der Woche Bin Packing Wie bekomme ich die Klamotten in die Kisten?

Beweisbar sichere Verschlüsselung

Lösungsvorschlag für die Probeklausuren und Klausuren zu Algebra für Informations- und Kommunikationstechniker bei Prof. Dr.

Methoden des Algorithmenentwurfs Kapitel 2.2: Randomisierte Online Algorithmen

Nach der Installation des FolderShare-Satellits wird Ihr persönliches FolderShare -Konto erstellt.

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Aufbereitung von Medizinprodukten

Transkript:

Datenstrukturen und Algorithmen SS07 Datum: 27.6.2007 Michael Belfrage mbe@student.ethz.ch belfrage.net/eth

Programm von Heute Online Algorithmen Update von Listen Move to Front (MTF) Transpose Approximationen für das Traveling Salesman Problem (TSP) MST-Heuristik Christofides-Heuristik

Update von Listen Gegeben: Liste von Elementen Sequenz von Anfragen Gesucht Algorithmus welcher die Anfragekosten minimiert. (Dabei darf die Liste nach einer Anfrage umgeordnet werden) Kosten: i-tes Element zugreifen kostet i Umordnen ist gratis (in diesem Modell)

Update von Listen Beispiel Liste von Elementen: L I S T E Sequenz von Anfragen: T, E, S, T, T, E, S, T

Update von Listen Beispiel Liste von Elementen: L I S T E Sequenz von Anfragen: T, E, S, T, T, E, S, T Anfragekosten (ohne Umordnung): + + 3 + + + + 3 + = 32

Update von Listen Umordnungsstrategien Move To Front (MTF): Setze das zuletzt zugegriffene Element an den Anfang der Liste Transpose: Vertausche das zugegriffene Element mit seinem Vorgänger (falls vorhanden)

Update von Listen Beispiel: Move to Front Liste von Elementen: L I S T E Sequenz von Anfragen: 1. 2. 3.. T E S T L I S T E T L I S E E T L I S S E T L I

Update von Listen [Fortsetzung] Beispiel: Move to Front Liste von Elementen: L I S T E Sequenz von Anfragen: T, E, S, T, T, E, S, T Anfragekosten: + + + 3 + 1 + 3 + 3 + 3 = 27

Update von Listen Beispiel: Transpose Liste von Elementen: L I S T E Sequenz von Anfragen: 1. 2. 3.. T E S T L I S T E L I T S E L I T E S L I T S E

Update von Listen [Fortsetzung] Beispiel: Transpose Liste von Elementen: L I S T E Sequenz von Anfragen: T, E, S, T, T, E, S, T Anfragekosten: + + + 3 + 2 + + + 1 = 30

Update von Listen Anfragekosten im worst-case mittels kompetitiver Analyse: Move To Front das doppelte des optimalen Algorithmuses Transpose beliebig höher als der optimale Algorithmus :( Für Beweise siehe: D. D. Sleator, and R. E. Tarjan (198), Amortized efficiency of list update and paging rules. Communications of the ACM 28, 202 208. www.cs.cmu.edu/~sleator/papers/amortized-efficiency.pdf

TSP-Approximationen Traveling Salesman Problem (TSP) Problembeschreibung: Siehe dazu den ausgezeichneten Artikel: http://de.wikipedia.org/wiki/problem_des_handlungsreisenden Approximationen unter der Annahme, dass Dreicksungleichung gilt im Graph: MST-Heuristik Maximal Faktor 2 Abweichung vom Optimum Christofides-Heuristik Maximal Faktor 1. Abweichung vom Optimum

MST-Heuristik Input: Graph G:=(V,E) Algorithmus: 1.Konstruiere MST von G (z.b. mittels Kruskal) 2.Verdoppele alle Kanten vom MST 3.Traversiere MST mit Abkürzung

MST-Heuristik Beispiel: Graph G:=(V,E) Algorithmus: D 2 A 7 9 E 6 3 B 1. Konstruiere MST von G 2. Verdoppele alle Kanten vom MST C 3. Traversiere MST mit Abkürzung

MST-Heuristik Beispiel: Graph G:=(V,E) Algorithmus: D 2 A 7 9 E 6 3 B 1. Konstruiere MST von G 2. Verdoppele alle Kanten vom MST C 3. Traversiere MST mit Abkürzung

MST-Heuristik Beispiel: Graph G:=(V,E) Algorithmus: D 2 A 7 9 E 6 3 B 1. Konstruiere MST von G 2. Verdoppele alle Kanten vom MST C 3. Traversiere MST mit Abkürzung

MST-Heuristik Beispiel: Graph G:=(V,E) Algorithmus: D 2 A 7 9 E 6 3 B 1. Konstruiere MST von G 2. Verdoppele alle Kanten vom MST C 3. Traversiere MST mit Abkürzung ( A, D, B, C, E, A )

Christofides-Heuristik Input: Graph G:=(V,E) Algorithmus: 1.Konstruiere MST von G (z.b. mittels Kruskal) Definition: Ein Matching M auf einem Graphen G:=(V,E) ist eine Teilmenge von E, sodass jeder Knoten von G in genau einer Kante aus M enthalten ist 2.Bestimme MCM auf ungeraden Knoten 3.Füge Kanten vom MCM hinzu.traversiere mit Abkürzungen Minimal Cost Matching

Christofides-Heuristik Beispiel: Graph G:=(V,E) Algorithmus: 1. Konstruiere MST von G D 2 A 7 9 E 6 3 B 2. Bestimme MCM auf ungeraden Knoten 3. Füge Kanten vom MCM hinzu C. Traversiere mit Abkürzungen

Christofides-Heuristik Beispiel: Graph G:=(V,E) Algorithmus: 1. Konstruiere MST von G D 2 A 7 9 E 6 3 B 2. Bestimme MCM auf ungeraden Knoten 3. Füge Kanten vom MCM hinzu C. Traversiere mit Abkürzungen

Christofides-Heuristik Beispiel: Graph G:=(V,E) Algorithmus: 1. Konstruiere MST von G D 2 A 7 9 E 6 3 B 2. Bestimme MCM auf ungeraden Knoten 3. Füge Kanten vom MCM hinzu C. Traversiere mit Abkürzungen

Christofides-Heuristik Beispiel: Graph G:=(V,E) Algorithmus: 1. Konstruiere MST von G D 2 A 7 9 E 6 3 B 2. Bestimme MCM auf ungeraden Knoten 3. Füge Kanten vom MCM hinzu C. Traversiere mit Abkürzungen

Christofides-Heuristik Beispiel: Graph G:=(V,E) Algorithmus: 1. Konstruiere MST von G D 2 A 7 9 E 6 3 B 2. Bestimme MCM auf ungeraden Knoten 3. Füge Kanten vom MCM hinzu C. Traversiere mit Abkürzungen (A, B, C, E, D, A)

Ende der Stunde. Questions? if yes, send an e-mail.