Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmen und Komplexität Teil 1: Grundlegende.

Slides:



Advertisements
Ähnliche Präsentationen
Christian Schindelhauer
Advertisements

Christian Schindelhauer
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Kontextfreie Grammatiken
© Prof. Dr.-Ing. habil. W. Dangelmaier, Heinz Nixdorf Institut, Universität Paderborn, Bild: © iStock, Ricardo Azoury 1 Veranstaltung / Datum Titel: Arial,
Titel: Arial, 40pt, fett, kursiv, mit Schatten, blau
Einführung in Berechenbarkeit und Formale Sprachen
Grammatiken, Definitionen
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Grammatiken beschreiben Sprachen L µ *, indem.
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Reduktionen Def: L · L (L ist reduzierbar auf.
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Universelle Turingmaschinen Eine universelle Turingmaschine.
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Verifizieren versus Berechnen
Design by Contract with JML - Teil 2
Christian Schindelhauer
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken IX Christian Schindelhauer
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Approximationsalgorithmen …liefern in polynomieller.
Klaus Volbert 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Sommersemester 2004.
Christian Schindelhauer
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung.
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester.
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester.
Christian Schindelhauer
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
1 Vorlesung Informatik 2 Algorithmen und Datenstrukturen Organisatorisches zu den Übungen Tobias Lauer.
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.
Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmen und Komplexität Teil 1: Grundlegende.
Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen
Institut für Angewandte Mikroelektronik und Datentechnik Fachbereich Elektrotechnik und Informationstechnik, Universität Rostock Spezielle Anwendungen.
High Performance = Innovative Computer Systems + Efficient Algorithms Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen.
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester.
Christian Schindelhauer
Christian Schindelhauer
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung.
Christian Schindelhauer
Christian Schindelhauer
Einführung in Berechenbarkeit, Formale Sprachen und Komplexitätstheorie Wintersemester 2005/ Vorlesung Dominic Dumrauf.
Christian Schindelhauer
Christian Schindelhauer
1 HEINZ NIXDORF INSTITUT Universität Paderborn Algorithmen und Komplexität Algorithmen für Peer-to-Peer-Netzwerke Sommersemester Vorlesung.
Christian Schindelhauer
Numerical Methods in Electromagnetic Field Theory I (NFT I) / Numerische Methoden in der Elektromagnetischen Feldtheorie I (NFT I) 2nd Lecture / 2.
Computer Graphics - Ray Tracing Exercises -
LS 2 / Informatik Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
Datenstrukturen, Algorithmen und Programmierung 2 (DAP2)
20:00.
Informationsveranstaltung: Abiturprüfung
Organisatorisches zur GdI 1 Wintersemester 2009 Telecooperation/RBG Prof. Dr. Max Mühlhäuser Dr. Guido Rößling Dr. Dirk Schnelle-Walka, Stefan Radomski.
Die Zeit (TIME) Germans are on military time which is 1-24
Passive Angriffe ... nicht-invasiv.
Chair of Software Engineering Einführung in die Programmierung Prof. Dr. Bertrand Meyer Lektion 14: Mehrfachvererbung.
Treffpunkt.
Algorithm Engineering Parallele Algorithmen Stefan Edelkamp.
Robust Branch-Cut-and-Price Algorithms for Vehicle Routing Problems Christian Gruber - Johannes Reiter.
Symmetrische Blockchiffren DES – der Data Encryption Standard
Dr.-Ing. René Marklein - NFT I - WS 06/07 - Lecture 6 / Vorlesung 6 1 Numerical Methods of Electromagnetic Field Theory I (NFT I) Numerische Methoden der.
KIT – die Kooperation von Forschungszentrum Karlsruhe GmbH und Universität Karlsruhe (TH) Vorlesung Knowledge Discovery - Institut AIFB Tempus fugit Towards.
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken III Christian Schindelhauer
Dr.-Ing. René Marklein - NFT I - L 9 / V 9 - WS 2006 / Numerical Methods of Electromagnetic Field Theory I (NFT I) Numerische Methoden der Elektromagnetischen.
Installation einer kompletten Werkstatt für die US-Streitkräfte Installation of a complete workshop for the U.S.Forces.
Instrumente und Unterhaltung End of Unit Assessment.
1 University of Freiburg Computer Networks and Telematics Prof. Christian Schindelhauer Bachelor & Master Theses in Computer Networks No Lecture
Data Mining Spectral Clustering Junli Zhu SS 2005.
- Informationsveranstaltung -
Wintersemester 2005 / Vorlesung
HEINZ NIXDORF INSTITUT Universität Paderborn Fachbereich Mathematik/Informatik Algorithmische Probleme in Funknetzwerken VIII Christian Schindelhauer
Grundlagen der computergestützten Produktion und Logistik W1332
Solving Inequalities by Addition and Subtraction
 Präsentation transkript:

Friedhelm Meyer auf der Heide 1 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Algorithmen und Komplexität Teil 1: Grundlegende Algorithmen WS 08/09 Friedhelm Meyer auf der Heide Vorlesung 1,

Friedhelm Meyer auf der Heide 2 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Organisatorisches 1 Diese Vorlesung bietet die Möglichkeit, das MuA-Modul im 2. Studienabschnitt des BA-Studiengangs Informatik in zusammenhängender Form zu hören. Es ist ebenso möglich, die Veranstaltungen "Grundlegende Algorithmen" und "Komplexitätstheorie" einzeln in der ersten bzw. zweiten Vorlesungshälfte zu hören. Prüfungsmodalitäten: -Mündlich Prüfung über das gesamte Modul (Bestanden/Noten können falls notwendig für einzelne Teile gegeben werden.) -Falls sie nur in einem der beiden Teile geprüft werden wollen: mündlich Prüfung nach Abschluss des Teils.

Friedhelm Meyer auf der Heide 3 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Organisatorisches 2 Vorlesung (F1 110) Grundlegende Algorithmen (Friedhelm Meyer auf der Heide, bis ) Komplexitätstheorie (Johannes Blömer, ab ) Mo., Di., 9: :45, Raum F1.110 Übungen (F 2 211, Ralf Petring)) Mo (bei Bedarf) Di Di 14-16

Friedhelm Meyer auf der Heide 4 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Organisatorisches 3 Übungen Es wird wöchentlich freitags ein Übungsblatt auf der Webseite zur Vorlesung herausgegeben. Die Lösung wird jeweils bis Freitag 10:00 Uhr in Raum F1.316 abgegeben (oder in den dort hängenden Umschlag gesteckt oder direkt bei Ralf Petring abgeben). Es ist Gruppenabgabe (bis zu 3 Personen) erlaubt.

Friedhelm Meyer auf der Heide 5 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Organisatorisches 4 Modul: II. 2.1 Modelle und Algorithmen Im Bachelor-Studiengang Informatik Begleitmaterial und alle Informationen auf der Web- Seite zur Vorlesung

Friedhelm Meyer auf der Heide 6 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Organisatorisches 5 Im Anschluss an die Vorlesung erfolgt eine mündliche Prüfung über den Stoff dieser Veranstaltung. Wenn Sie aktiv in den Übungen mitarbeiten, können Sie Ihre Note wie folgt verbessern (Bonus): Erreichen Sie mindestens 50% der Punkte der Hausaufgaben, so verbessert sich die Note um 1/3 Notenpunkt. Erreichen Sie mindestens 75% der Punkte der Hausaufgaben, so verbessert sich die Note um 2/3 Notenpunkt. Eine Verbesserung der Note 5 (nicht bestanden) ist nicht möglich. Als Bonusleistung zählen die Hausaufgaben von dieser Veranstaltung. Bonuspunkte aus früheren Vorlesungen können nicht angerechnet werden.

Friedhelm Meyer auf der Heide 7 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Inhalt Komplexitätstheorie Im Teil "Komplexitätstheorie" stehen die Frage nach den Grenzen der Berechenbarkeit und die Klassifizierung von Problemen bezüglich ihrer algorithmischen Komplexität im Mittelpunkt. Es werden in diesem Teil die folgenden Themen behandelt 1. Komplexitätsklassen, P vs. NP 2. Reduktionen und Vollständigkeit 3. Platzkomplexität 4. Hierarchiesätze 5. Relativierung 6. Polynomialzeit-Hierarchie 7. Probalistische Komplexitätsklassen 8. Approximationsalgoritmen

Friedhelm Meyer auf der Heide 8 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Inhalt Grundlegende Algorithmen Es werden Algorithmen vorgestellt und bezüglich ihrer Korrektheit und Laufzeit analysiert, die für viele Anwendungen und weiterführende Algorithmen von besonderer Wichtigkeit sind. Dazu gehören u.a. Algorithmen für -kürzeste Wege in Graphen -Netzwerkfluß-Probleme -Randomisierte Algorithmen, u.a. : Universelles und perfektes Hashing Wir beginnen mit einer Wiederholung von Konzepten aus DuA: -O-Notation -Programmier-Paradigmen -Divide & Conquer -Dynamische Programmierung -Greedy-Algorithmen Ansonsten setze ich Inhalte aus DuA als bekannt voraus.

Friedhelm Meyer auf der Heide 9 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Asymptotic Runtime Analysis

Friedhelm Meyer auf der Heide 10 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity The O-Notation

Friedhelm Meyer auf der Heide 11 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity The O-Notation

Friedhelm Meyer auf der Heide 12 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity The O-Notation

Friedhelm Meyer auf der Heide 13 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Programming paradigms: divide & conquer Example: Integer Multiplication The school method needs (n 2 ) operations.

Friedhelm Meyer auf der Heide 14 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity A divide&conquer algorithm for integer multiplication

Friedhelm Meyer auf der Heide 15 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity The Karazuba-Offman algorithm for integer multiplication We need 3 multiplications of numbers with at most n/2 + 2 bits, and 8 additions/subtractions/shifts of numbers with O(n) bits. Each such addition/subtraction/shift needs time O(n).

Friedhelm Meyer auf der Heide 16 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Runtime log(3) ~

Friedhelm Meyer auf der Heide 17 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity A master theorem a) Let a ¸ 0, b,c > 0 be constants. Let T: N N be recursively defined by T(1) = c, and for n > 1: T(n) = a T(n/b) + cn Then, for -a < b: T(n) = cb/(b-a) n = O(n) -a = b: T(n) = cn (log b (n) + 1) = O(n log(n)) -a > b: T(n) = ca/(a-b) n log b (a) = O(n log b (a) )

Friedhelm Meyer auf der Heide 18 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Dynamic programming You probably know dynamic programming algorithms for optimal evaluation of the product of many matrices, and for the word problem for context-free languages (CYK-algorithm)

Friedhelm Meyer auf der Heide 19 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity The string distance problem

Friedhelm Meyer auf der Heide 20 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity An example

Friedhelm Meyer auf der Heide 21 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity The structure of optimal solutions

Friedhelm Meyer auf der Heide 22 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Recursive definition of an optimal solution

Friedhelm Meyer auf der Heide 23 HEINZ NIXDORF INSTITUTE University of Paderborn Algorithms and Complexity Friedhelm Meyer auf der Heide Heinz Nixdorf Institute & Computer Science Department University of Paderborn Fürstenallee Paderborn, Germany Tel.: +49 (0) 52 51/ Fax: +49 (0) 52 51/ Thank you for your attention!