Berechenbarkeit und Komplexität
Vorlesung im Wintersemester 2015/2016
Inhalt
Welche Probleme kann man mit dem Computer lösen? Und welche Probleme kann man effizient lösen? - Das sind die Fragestellungen, um die es in dieser Vorlesung geht. Wir versuchen diese Fragen mit mathematischen Methoden zu beantworten. Dazu müssen wir zunächst Begriffe wie Problem, Computer und Effizienz modellieren. Anschließend werden wir verblüffend klare und weitgehende Aussagen über die effiziente Lösbarkeit von Problemen auf Rechnern machen können. Grundlage der Vorlesung sind mathematische Modelle und Methoden. Der Bezug zu realistischen Computern und praktischen Problemen wird aber klar herausgearbeitet. Ein Highlight der Vorlesung ist die NP-Vollständigkeitstheorie, deren Auswirkung auf Theorie und Praxis wohl kaum überschätzt werden kann. Im Einzelnen gliedert sich die Vorlesung wie folgt:
Teil 1: Berechenbarkeit
- Kapitel 1: Einführung und Grundlagen
- Kapitel 2: Modellierung von Rechnern und Programmiersprachen
- Kapitel 3: Nichtberechenbare Probleme
Teil 2: Komplexität
- Kapitel 4: Die Komplexitätsklassen P und NP
- Kapitel 5: NP-Vollständigkeit
- Kapitel 6: Heuristiken und Approximationsalgorithmen für NP-harte Probleme
Organisation
Vortragssprache in Deutsch.
Dozent