HEINZ NIXDORF INSTITUT
Universität Paderborn
Algorithmen und Komplexität

Home
Inhalt
Termine
Übungen
Prüfung
Skript
News
Literatur
Orientierung:
 Heinz Nixdorf Institut
   Algorithmen und
   Komplexität
Webmaster
Aktuelles:
...
  [mehr]

Informationen zur Vorlesung

Einführung in
»Algorithmen und Komplexität«

Sommersemester 2004

Inhalt

  • Klassen P und NP, Zeitkomplexität
  • NP-Vollständigkeit
  • Satz von Cook
  • Reduktionen
  • Heuristiken, Backtracking, Branch and Bound
  • Approximationsalgorithmen

 

Termine

Vorlesung

von: Friedhelm Meyer auf der Heide
Mo. 11-13, Raum C1, wöchentlich

Zentralübung

von: Friedhelm Meyer auf der Heide
Mo. 13-14, Raum C1, zweiwöchentlich und bei Bedarf

Übungen

von: wiss. Mitarbeitern und studentischen Hilfskräften Annika Bölte, Matthias FischerMartin Meeser, Norbert Sondag, Tim Süß, Klaus Volbert

Die Übungen (Präsenzübung) finden zweiwöchentlich statt, und zwar die Übungsgruppen g: Ü1, Ü3, Ü5, Ü7, Ü9, Ü11, Ü13, Ü15 in ungeraden Kalenderwochen und die Übungsgruppen u: Ü2, Ü4, Ü6, Ü8, Ü10, Ü12, Ü14, Ü16 geraden Kalenderwochen. Die Vorlesung und die ersten Präsenzübungen (Ü1, Ü3) beginnen am Montag, 19.4.04. Das erste Hausaufgabenblatt erscheint am 19.4.04. Die erste Zentralübung findet am 10.5.04 statt.

Nummer Zeit Raum Betreuer   Nummer Zeit Raum Betreuer
Ü1 g Mo 14-16 E2.316 Volbert   Ü11 g Do 9-11 N3.206 Fischer
Ü2 u Mo 14-16 E2.316 Volbert   Ü12 u Do 9-11 N3.206 Fischer
Ü3 g Mo 16-18 E2.316 Volbert   Ü13 g Do 11-13 N3.206 Sondag
Ü4 u Mo 16-18 E2.316 Volbert   Ü14 u Do 11-13 N3.206 Sondag
Ü5 g Di 9-11 E2.316 Meeser   Ü15 g Do 13-15 P 14.18 Sondag
Ü6 u Di 9-11 E2.316 Meeser   Ü16 u Do 13-15 P 14.18 Sondag
Ü7 g Mi 11-13 N3.206 Bölte   Ü17 g Fr 9-11 E2.316 entfällt
Ü8 u Mi 11-13 N3.206 Bölte   Ü18 u Fr 9-11 E2.316 entfällt
Ü9 g Mi 14-16 N3.206 Süß   Ü19 g Fr 11-13 E2.316 entfällt
Ü10 u Mi 14-16 N3.206 Süß   Ü20 u Fr 11-13 E2.316 entfällt

Prüfungstermine

Erste Klausur

Die erste gemeinsame Klausur über den Stoff dieser Vorlesung und den der vorhergehenden Veranstaltung "Berechenbarkeit und Formale Sprachen" (WS 03/04) findet am 10.08.04 statt (Zeit: 13:00 - 15:00 Uhr, ggfs. bis 15:30, Räume: Sporthalle, AudiMax). Lehramtsstudierende und Austauschstudierende schreiben diese Klausur nicht mit! Die Klausureinsicht findet am 1.9.04 im Raum F1.110 / F1.310 ab 11.00 Uhr statt. Ihre vorläufigen Ergebnisse können Sie ab Donnerstag, 19.8.04 in Ihrem StudInfo{flex} Account einsehen.

Zweite Klausur

Die zweite Klausur (Wiederholertermin) findet am 02.10.04 statt (Zeit: 9:00 - 11:00 Uhr, Räume: AudiMax, C1, C2). Die Anmeldung zur zweiten Klausur erfolgt über ihren StudInfo{flex} Account und ist freigeschaltet. Wenn Sie sich in StudInfo{flex} angemeldet haben, können Sie dort unter Prüfungsart ein Formular runterladen, das Sie unterschreiben und uns zukommen lassen müssen (Post, Fax, oder Abgabe bei uns, siehe Hinweis auf dem Formular).

Mündliche Prüfung für Lehramtsstudierende

Die mündlichen Prüfungstermine für Lehramtsstudierende und Austauschstudierende über diese  Vorlesung stehen fest: 3.8.04, 4.8.04, 5.10.04 und 6.10.04. Die Anmeldung (ggfs. mit Terminwunsch) erfolgt bis zum 29.7.04 durch E-Mail an Matthias Fischer (mafi@upb.de). Die Prüfungen sind mündliche Einzelprüfungen. Die genauen Zeiten legen wir nach dem 29.7.04 fest und teilen Sie Ihnen dann per E-Mail mit.

Dritte Klausur

  • In Zukunft wird die Vorlesung "Berechenbarkeit und Formale Sprachen" und diese Veranstaltung, "Algorithmen und Komplexität", in einer einzigen einsemstrigen Veranstaltung "Einführung in Berechenbarkeit, Komplexität und formale Sprachen" stattfinden. Es wird im Anschluß an die Vorlesung zu der neuen Veranstaltung zwei Klausuren mit jeweils 3h Dauer geben.
  • Wir bieten Ihnen zu dieser Veranstaltung eine dritte Klausur im Umfang von 2 Stunden an. Die zu dieser Vorlesung erworbenen Bonuspunkte werden Ihnen angerechnet. Die Anmeldung zur dritten Klausur erfolgt über Ihren Account zu dieser Veranstaltung. Dort melden Sie sich unter "3. Klausur" an, d.h. Sie benötigen keinen neuen account in der Nachfolgeveranstaltung (außer Sie wollen die neue Veranstaltung hören und am Übungsbetrieb teilnehmen).
  • Die dritte Klausur wird zeitgleich mit der ersten Klausur der neuen Veranstaltung stattfinden. Da die Dauer der beiden Klausuren unterschiedlich ist (2h/3h), handelt es sich bei den beiden Klausuren um unterschiedliche Klausuren.
  • Studierende, die an BFS/AuK (03/04) teilgenommen haben und auch an der neuen Veranstaltung teilnehmen, haben die Möglichkeit entweder die dritte Klausur (2-stündig) zu BFS/AuK oder die erste Klausur (3-stündig) zur neuen Veranstaltung zu schreiben. Es werden Ihnen jedoch die Bonuspunkte zu der Veranstaltung angerechnet, deren Klausur Sie schreiben. Die dritte Klausur zu BFS/AuK wird sich am Stoff und den Übungen der zugehörigen BFS/AuK-Vorlesung orientieren. Die Klausur zur neuen Vorlesung wird sich am Stoff und den Übungen der neuen Vorlesung orientieren.
  • Zeit und Ort dritte Klausur: Mittwoch, 23. Februar 2005, 12.00 - 14.00 Uhr im Hörsaal C1
  • Ihre Ergebnisse können Sie in Ihrem StudInfo{flex} Account einsehen.
  • Die 1. Klausureinsicht findet am Montag, 21.3.2005 ab 13.00 Uhr im Raum F0.530 statt. Zu diesem Termin sollten nur Studierende kommen, die nicht bestanden haben und vorhaben an der 2. Klausur der Vorlesung "Einführung in Berechenbarkeit, Komplexität und formale Sprachen" am 4.4.2005 teilzunehmen.
  • Die 2. Klausureinsicht findet am Mittwoch, 6.4.2005 ab 13.00 Uhr im Raum F0.530 statt.

 

Übungen

Hausaufgaben

Es wird zweiwöchentlich Montags ein Übungsblatt mit jeweils vier Aufgaben auf dieser Website herausgegeben, das von Ihnen zu bearbeiten ist. Die Lösung wird bis Donnerstag nach der Ausgabe des nächsten Blattes (2,5 Wochen Bearbeitungszeit) in den Kästen auf Ebene D3 abgegeben und von den Betreuern der Übungsgruppe korrigiert und bewertet. Die Aufgaben können handschriftlich oder elektronisch erstellt werden; die Abgabe erfolgt aber immer in Papierform. Auf jedem Blatt können 20 Punkte erreicht werden. Es werden sechs Hausaufgabenblätter erscheinen; ein siebtes Blatt enthält eine Probeklausur, das in der letzten Zentralübung vorgerechnet wird. Überprüfen Sie immer auf Ihrem Punktekonto, ob Sie genau die Punkte bekommen haben, mit denen Ihre Lösung bewertet wurde.

Übungszettel Präsenzübung

Für jede Präsenzübung wird ein Übungsblatt mit zwei Aufgaben herausgegeben, das als Handzettel in der Präsenzübung ausgeteilt wird. Die beiden Aufgaben werden in der Übung durch Sie in Gruppenarbeit bearbeitet und eine Lösung von Ihnen an der Tafel präsentiert.

Gruppenarbeit

Wir fordern Sie ausdrücklich auf, in kleinen Gruppen (ca. 2-4 Personen) gemeinsam die Vorlesung nachzuarbeiten und die Übungen zu bearbeiten. Für den Lernerfolg und den Spaß am Studieren ist das sehr förderlich. Sie dürfen Ihre Übungen auch in solchen Gruppen abgeben.

Musterlösungen

Musterlösungen für die Hausaufgaben werden durch Sie erstellt. Dazu werden eine oder mehrere Ihrer Lösungen ausgewählt, zusammen mit den Betreuern ggfs. überarbeitet und im Netz zur Verfügung gestellt. Entweder werden wir Sie gezielt ansprechen und ermuntern eine Aufgabe als Musterlösung abzugeben, oder Sie sprechen uns darauf an, wenn sie den Wunsch haben eine Aufgabe als Musterlösung abzugeben. In Frage kommen Aufgaben, die mit 4-5 Punkten bewertet wurden. Die Abgabe von Musterlösungen erfolgt immer elektronisch. Möglich sind vorzugsweise PDF, oder Formate von LaTeX, OpenOffice, MSOffice oder Framemaker, die wir in PDF umwandeln können und als PDF im Netz zur Verfügung stellen.

Aufgabenblätter

Übung Präsenzübung Hausaufgaben Ausgabe Abgabe Zentralübung
1 PDF / PS PDF / PS 19.04 06.05 10.05
2 PDF / PS PDF / PS 03.05 20.05 24.05
3 PDF / PS PDF / PS 17.05 03.06 07.06
4 PDF / PS PDF / PS 31.05 17.06 21.06
5 PDF / PS PDF / PS 14.06 01.07 05.07
6 PDF / PS PDF / PS 28.06 15.07 19.07
7 PDF / PS 12.07 26.07 26.07

Weitere Aufgaben und Blätter
Blatt mit Klausuraufgaben aus vorhergehenden Klausuren PDF / PS
Zusätzliche Aufgaben aus der Präsenzübung 7 PDF / PS
Klausur vom 10.08.04 PDF / PS
Klausur vom 02.10.04 PDF / PS
Klausur vom 23.02.05 PDF / PS

Anmeldung

Die Anmeldung zu den Übungen erfolgt über StudInfo{flex}. Jede Gruppe ist auf 20 Teilnehmer begrenzt. Sie können Ihre persönlichen Informationen, sowie die Zugehörigkeit zu einer Übungsgruppe und Ihre Punkte aus den Hausaufgaben einsehen. Später finden Sie hier die Klausuranmeldung und erfahren Ihr Klausurergebnis. Bitte beachten Sie: Für jede Veranstaltung, die Sie besuchen und die zur Anmeldung StudInfo{flex} verwendet, müssen Sie sich erneut anmelden, jedes Teilnehmerkonto ist für genau eine Vorlesung gültig. Das gilt auch für alle Studenten, die "Berechenbarkeit und Formale Sprachen" im WS 03/04 gehört haben. Anmelden können Sie sich ab Mi., 14.04.04, 12.00 Uhr. Hier geht es zu Ihrem Teilnehmerkonto:

Mein Konto

 

Prüfung

Im Anschluss an die Vorlesung erfolgt eine Prüfung über den Stoff dieser Veranstaltung und der Vorlesung "Berechenbarkeit und Formale Sprachen" (WS 03/04) durch eine gemeinsame Klausur. Als Hilfsmittel zur Klausur ist ein zweiseitig, handschriftlich, selbstgeschriebenes DIN-A4-Blatt zugelassen, d.h. keine Kopien und keine elektronischen Ausdrucke. Für Lehramtsstudierende und Austauschstudierende findet eine mündliche Prüfung über diese Veranstaltung statt, sie schreiben daher die gemeinsame Klausur über "Berechenbarkeit und Formale Sprachen" und "Algorithmen und Komplexität" nicht mit.

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.
  • Erreichen Sie mindestens 75% der Punkte der Hausaufgaben, so verbessert sich die Note um 2/3.
  • Erstellen Sie für eine Hausaufgabe Musterlösungen, die im Netz zur Verfügung gestellt werden, so verdoppelt sich die Punktezahl für die Aufgabe. Wenn Sie zu einer Aufgabe Musterlösungen erstellen wollen, dann melden Sie sich bei uns. Oder wir werden Sie auffordern Musterlösungen zu erstellen.

Eine Verbesserung der Note 5 (nicht bestanden) ist nicht möglich. Als Bonusleistung zählen die Hausaufgaben von dieser Veranstaltung (Auk) und der vorhergehenden Veranstaltung "Berechenbarkeit und Formale Sprachen" (BFS) im Wintersemester 2003/04. Für BFS erkennen wir auch die Übungsleistungen aus noch älteren Veranstaltungen an (z.B. die BFS Vorlesungen bei Johannes Blömer). Sie können bei BFS wählen, aus welcher Veranstaltung die Punkte anerkannt werden sollen. Falls Sie sich nicht melden, zählt automatisch die dieser Veranstaltung unmittelbar vorhergehende Veranstaltung "Berechenbarkeit und Formale Sprachen" im Wintersemester 2003/04. Die Termine für die Klausur finden Sie unter Prüfungstermine.

 

Skript

Die Vorlesung wird sich an der Vorlesung "Algorithmen und Komplexität" (SS 03) von Johannes Blömer orientieren. Dieses Skript kann jedoch das Lesen von Lehrbüchern nicht ersetzen. Ein Auswahl an Büchern haben wir in der Literatur angegeben. Falls erforderlich, werden Sie im Laufe des Semesters hier zusätzliche Ergänzungen zu dem Skript finden. Sie finden Skript und Folien hier:

Skript zur Vorlesung
PDF / PS
Folien zur Vorlesung
ppt Teil1 / Teil2 / Teil3 / Teil3_KVolbert / Teil4 / Vorl_050704 / Vorl_190704 / Vorl_280604 / Zusammenfassung
pdf Teil1 / Teil2 / Teil3 / Teil3_KVolbert / Teil4 / Vorl_050704 / Vorl_190704 / Vorl_280604 / Zusammenfassung

 

Aktuelle Informationen

16. März 2005 Bitte beachten Sie die geänderten Informationen zur Klausureinsicht.
14. März 2005 Dritte Klausur: Die Ergebnisse können Sie ab sofort in Ihrem StudInfo{flex} Account einsehen. Die Klausureinsicht ist am 6. April ab 13.00 Uhr im Raum F0. 530.
18. Februar 2005 Zeit und Ort dritte Klausur: Mittwoch, 23. Februar 2005, 12.00 - 14.00 Uhr im Hörsaal C1
23. Dezember 2004 Die zweite Klausur finden Sie unter Aufgabenblätter.
8. November 2004 Beachten Sie die aktualisierten Hinweise zur dritten Klausur unter Prüfungstermine.
22. Oktober 2004 Beachten Sie die Hinweise zur dritten Klausur unter Prüfungstermine.
11. Oktober 2004 Die Klausureinsicht zur 2. Klausur (Wiederholerklausur) findet am 27.10.04 im Raum F1.310 ab 11.00 Uhr statt. Ihre Ergebnisse können Sie ab Freitag, 8.10.04 in Ihrem StudInfo{flex} Account einsehen.
19. August 2004 Die Anmeldung zur Wiederholerklausur ist nun frei geschaltet, beachten Sie die Hinweise zur Prüfung und die Prüfungstermine.
18. August 2004 Die Klausureinsicht findet am 1.9.04 im Raum F1.110 / F1.310 ab 11.00 Uhr statt. Ihre Ergebnisse können Sie ab Donnerstag, 19.8.04 in Ihrem StudInfo{flex} Account einsehen.
30. Juli 2004 Die Folien zur Vorlesung stehen jetzt unter Skript zur Verfügung.
25. Juli 2004 Das korrigierte Hausaufgabenblatt 7 kann ab Fr. 30.7.04 bei uns im Büro F1.316 abgeholt werden. Ab Mi. 4.7.04 werden alle nicht abgeholten Blätter auf den Zettelkästen im Flur D3 ausgelegt und können dort abgeholt werden.
22. Juli 2004 In der letzten Semesterwoche (26.7-30.7.04) finden letztmalig Präsenzübungen zu unserer Veranstaltung statt, d.h. ungerade und gerade Übungen fallen auf den gleichen Termin! Es gibt kein neues Präsenzübungsblatt. Wir bieten eine Diskussions- und Fragestunde an. Schicken Sie bitte ggfs. Fragen zur Vorlesung/Übungsaufgaben vor der Übung an Ihren Tutor (E-Mail).
14. Juli 2004 Beachten Sie die Hinweise zur Prüfung und die Prüfungstermine (Hilfsmittel, Anmeldung, Lehramtsstudenten).
11. Juli 2004 Auf dem Hausaufgabenblatt 6 hat sich in Aufgabe 22 ein Fehler eingeschlichen. i wird zu Anfang auf 1 gesetzt und nicht auf 0. Beachten Sie die korrigierte neue Version.
8. Juli 2004 Die Abgabe des Hausaufgabenblatt 6 ist Donnerstags (wie sonst auch). Also 15.7 und nicht wie irrtümlich angegeben am 14.7.
22. Juni 2004 Bei den studentischen Musterlösungen hatte sich in A1011 ein Fehler eingeschlichen. Beachten Sie die neue Version.
31. Mai 2004 Die Termine für die Klausur stehen fest, siehe Prüfungstermine
26. Mai 2004 Durch Pfingsten fallen die Übungen am Montag, den 31. Mai aus. Besuchen Sie als Ersatz die Übungen eine Woche später, also am Montag, den 7. Juni. Da die Gruppen ungleich ausgelastet sind, sollen die 14-16Uhr Gruppen nach Möglichkeit in die 16-18Uhr Gruppen gehen.
26. Mai 2004 Durch Fronleichnam fallen die Übungen am Donnerstag, den 10. Juni aus. Besuchen Sie als Ersatz die Übungen eine Woche vorher, also am Donnerstag den 3. Juni.
14. Mai 2004 Durch Christi Himmelfahrt fallen die Übungen am 20. Mai aus. Besuchen Sie als Ersatz die entsprechende Übung eine Woche später, also am Donnerstag den 27. Mai.
14. Mai 2004 Beachten Sie die aktualisierte Version des 2. Hausaufgabenblattes. In der Aufgabe 8 hatte sich ein Fehler eingeschlichen.
10. Mai 2004 Im Anschluss an diese Vorlesung findet eine Klausur über diese Vorlesung (AuK) und Berechenbarkeit und Formale Sprachen (BFS) statt. Entgegen früheren Ankündigungen erkennen wir für BFS auch Bonuspunkte aus älteren Veranstaltungen an (siehe Prüfung).
10. Mai 2004 Die Vorlesungsfolien werden zu späteren Zeitpunkten hier im Netz zur Verfügung gestellt. Das erfolgt aber nicht zeitnah zur Vorlesung.

 

Literatur

Bücher über Berechenbarkeit und Komplexität

  • Introduction to Automata Theory, Languages, and Computation, von: John E. Hopcroft, Rajeev Motwani, Jeffrey D. Ullman, Addsion Wesley, 2001
    (auch übersetzt: Einführung in die Automatentheorie, Formale Sprachen und Komplexität, ... , Pearson Studium, 2002)
  • Computers and Intractability - A Guide to the Theory of NP-Completeness, von: Michael R. Garey, David S. Johnson, W.H. Freeman & Company, 1997
  • Theoretische Informatik, von: Christel Baier, Alexander Asteroth, Pearson Studium, 2002
  • Theoretische Informatik - Eine algorithmenorientierte Einführung, von: Ingo Wegener, Teubner, 1993
  • The Theory of Computation, von Bernard M. Moret, Pearson Education, 1998
  • Computational Complexity, von: Christos H. Papadimitriou, Addison-Wesley, 1994
  • Theoretische Informatk - kurzgefaßt, von: Uwe Schöning, Spektrum, akad. Verlag, Heidelberg, 1997
  • Elements of the Theory of Computation, von: Harry R. Lewis, Christos H. Papadimitriou, Prentice Hall, 1998
  • Introduction to the Theory of Computation, von: Michael Sipser, PWS, 1997
  • Theory of Computing - A Gentle Introduction, von: Efim Kinber, Carl Smith, Prentice Hall, 2001

Bücher über Algorithmen

  • Introduction to Algorithms, von: Thomas H. Cormen, Charles E. Leiserson, Ronald L. Rivest, The MIT Press, 2001
  • Algorithmen, von: Robert Sedgewick, Pearson Studium, 2002
    (übersetzt aus dem Englischen, gibt es in verschiedenen Ausgaben mit Schwerpunkten in Java, C, C++)
  • Algorithmen, von: Ellis Horowitz, Sartaj Sahni, Springer, 1981
  • The Design and Analysis of Computer Algorithms, von: Alfred V. Aho, John E. Hopcroft, Jeffrey D. Ullman Addison Wesley, 1974
  • Data Structures and Algorithms, von: Alfred V. Aho, J. D. Ullman, J. E. Hopcroft, Addison Wesley, 1983
  • Algorithmik - Theorie und Praxis, von: Gilles Brassard, Paul Bratley, Prentice Hall, 1993
  • Approximation Algorithms for NP-Hard Problems, von: Dorit S. Hochbaum, Wadsworth Publishing Company, 1997
  • Randomized Algorithms, von: Rajeev Motwani, Prabhakar Raghavan, Cambridge University Press, 1995

Bücher über mathematische Hilfsmittel

Es geht bei diesen Büchern nicht direkt um Algorithmen und Komplexität. Die Bücher stellen aber gezielt alle mathematischen Mittel bereit, wie Informatiker sie für ihre Analysen und Berechnungen dabei benötigen: Asymptotic, Folgen, Reihen, Rekurrenz,...

  • Concrete Mathematics, von: Ronald L. Graham, Donald E. Knuth, Oren Patashnik, Addison-Wesley, 1994
  • Diskrete Mathematik für Informatiker, von: Rod Haggarty, Pearson Studium, 2004