Modulhandbuch - Informatik - Heinrich-Heine-Universität Düsseldorf
Modulhandbuch - Informatik - Heinrich-Heine-Universität Düsseldorf
Modulhandbuch - Informatik - Heinrich-Heine-Universität Düsseldorf
Erfolgreiche ePaper selbst erstellen
Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.
<strong>Modulhandbuch</strong><br />
Bachelor- und Master-Studiengang <strong>Informatik</strong><br />
<strong>Heinrich</strong>-<strong>Heine</strong>–<strong>Universität</strong> <strong>Düsseldorf</strong><br />
Stand: Juli 2011
Inhaltsverzeichnis<br />
1 Grundlagenmodule der <strong>Informatik</strong> (1.–4. Fachsemester Bachelor) 4<br />
1.1 Grundlagen der Softwareentwicklung und Programmierung (<strong>Informatik</strong> I) . . . . . . . . . . . . . 4<br />
1.2 Grundlagen der Technischen <strong>Informatik</strong> (<strong>Informatik</strong> II) . . . . . . . . . . . . . . . . . . . . . . . 5<br />
1.3 Modul: Programmierpraktikum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6<br />
1.4 Grundlagen der Algorithmen und Datenstrukturen (<strong>Informatik</strong> III) . . . . . . . . . . . . . . . . . 7<br />
1.5 Grundlagen der Theoretischen <strong>Informatik</strong> (<strong>Informatik</strong> IV) . . . . . . . . . . . . . . . . . . . . . . 9<br />
2 Grundlagenmodule der Mathematik (1.–3. Fachsemester Bachelor) 12<br />
2.1 Modul: Analysis I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12<br />
2.2 Modul: Analysis II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 13<br />
2.3 Modul: Lineare Algebra . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14<br />
2.4 Modul: Angewandte Mathematik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 15<br />
3 Nebenfachmodule (Bachelor-Studiengang) 17<br />
3.1 Nebenfach: Biologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17<br />
3.2 Nebenfach Chemie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18<br />
3.3 Nebenfach: Mathematik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19<br />
3.4 Nebenfach: Physik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20<br />
3.5 Nebenfach: Psychologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22<br />
3.6 Andere Nebenfächer (auf Antrag) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23<br />
4 Praxis- und Berufsorientierung 24<br />
4.1 Modul: Praxis- und Berufsorientierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24<br />
5 Wahlpflicht- und Schwerpunktfachmodule (Bachelor) 26<br />
5.1 Modul: Algorithmentheorie I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 26<br />
5.2 Halb-Modul: Algorithmen in der Bioinformatik . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28<br />
5.3 Halb-Modul: Algorithmische Eigenschaften von Wahlsystemen I . . . . . . . . . . . . . . . . . . . 29<br />
5.4 Modul: Betriebssysteme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 31<br />
5.5 Modul: Bildverarbeitung 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33<br />
5.6 Modul: Datenbanksysteme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34<br />
5.7 Modul: Graphenalgorithmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35<br />
5.8 Modul: Kryptokomplexität I . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36<br />
5.9 Modul: Mikrokontroller . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39<br />
5.10 Modul: Rechnernetze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40<br />
5.11 Modul: Statistisches Lernen in der Bioinformatik . . . . . . . . . . . . . . . . . . . . . . . . . . . 42<br />
5.12 Modul: Softwaretechnik und Programmiersprachen . . . . . . . . . . . . . . . . . . . . . . . . . . 43<br />
5.13 Halb-Modul: Statistische Auswertung biologischer Daten . . . . . . . . . . . . . . . . . . . . . . . 45<br />
1
6 Bachelorarbeit 47<br />
6.1 Modul: Bachelorarbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 47<br />
7 Wahlpflicht- und Schwerpunktfachmodule (Master) 49<br />
7.1 Modul: Algorithmentheorie II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50<br />
7.2 Halb-Modul: Algorithmen für schwere Probleme . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51<br />
7.3 Modul: Algorithmen für Ad-hoc- und Sensornetzwerke . . . . . . . . . . . . . . . . . . . . . . . . 53<br />
7.4 Halb-Modul: Algorithmische Eigenschaften von Wahlsystemen II . . . . . . . . . . . . . . . . . . 54<br />
7.5 Halb-Modul: Approximationsalgorithmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57<br />
7.6 Halb-Modul: Architektur verteilter Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 58<br />
7.7 Modul: Bildverarbeitung 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59<br />
7.8 Halb-Modul: Cake-cutting Algorithms . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60<br />
7.9 Halb-Modul: Data Warehouses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62<br />
7.10 Halb-Modul: Einführung in die statistische Analyse mittels Computersimulationen . . . . . . . . 64<br />
7.11 Halb-Modul: Effiziente Algorithmen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66<br />
7.12 Halb-Modul: Fehlerkorrigierende Codierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67<br />
7.13 Halb-Modul: Geoinformatik . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69<br />
7.14 Modul: Graphenalgorithmen II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 70<br />
7.15 Halb-Modul: Grundlagen verteilter Systeme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 71<br />
7.16 Halb-Modul: Knowledge Discovery in Databases . . . . . . . . . . . . . . . . . . . . . . . . . . . 73<br />
7.17 Halb-Modul: Knowledge Discovery in Databases – Ausgewählte Themen . . . . . . . . . . . . . . 74<br />
7.18 Modul: Kryptokomplexität II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76<br />
7.19 Modul: Medizinische Bildverarbeitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79<br />
7.20 Modul: Mobilkommunikation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80<br />
7.21 Halb-Modul: Modellierung metabolischer Netzwerke . . . . . . . . . . . . . . . . . . . . . . . . . 81<br />
7.22 Halb-Modul: Multimedia-Datenbanksysteme . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83<br />
7.23 Halb-Modul: Netzwerksicherheit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84<br />
7.24 Halb-Modul: Neuronale Netze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86<br />
7.25 Halb-Modul: Primzahltests und das Faktorisierungsproblem . . . . . . . . . . . . . . . . . . . . . 87<br />
7.26 Halb-Modul: Programmiersprachen II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89<br />
7.27 Modul: Phylogenetik und virale Evolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90<br />
7.28 Halb-Modul: Randomisierte Algorithmen und Komplexitätsklassen . . . . . . . . . . . . . . . . . 92<br />
7.29 Modul: Signalverarbeitung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94<br />
7.30 Halb-Modul: Softwaretechnik II . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95<br />
7.31 Halb-Modul: Softwaretechnik III . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96<br />
7.32 Halb-Modul: Systemprogrammierung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98<br />
7.33 Halb-Modul: Transaktionsverwaltung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99<br />
7.34 Halb-Modul: Verteilte und Föderierte Datenbanken . . . . . . . . . . . . . . . . . . . . . . . . . . 101<br />
7.35 Halb-Modul: Verteilte und parallele Programmierung . . . . . . . . . . . . . . . . . . . . . . . . . 102<br />
7.36 Halb-Modul: Vertiefung Rechnernetze . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104<br />
7.37 Halb-Modul: Zeichnen von Graphen . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105<br />
8 Projektarbeit (Master-Studium) 107<br />
8.1 Modul: Projektarbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 107<br />
9 Wahlbereich (Master-Studium) 109<br />
9.1 Modul: Individuelle Vertiefung . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109<br />
10 Masterarbeit 111<br />
2
10.1 Modul: Masterarbeit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111<br />
3
Kapitel 1<br />
Grundlagenmodule der <strong>Informatik</strong><br />
(1.–4. Fachsemester Bachelor)<br />
1.1 Grundlagen der Softwareentwicklung und Programmierung (<strong>Informatik</strong><br />
I)<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
10 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Grundlagen der Softwareentwicklung und Programmierung“, 4 SWS<br />
• Theoretische Übungen, 2 SWS<br />
• Praktische Übungen, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• grundlegende Begriffe der <strong>Informatik</strong>, insb. Algorithmus und Programm<br />
• Algorithmenparadigmen: imperativ/prozedural und objektorientiert<br />
• Einführung in die Konzepte (u.a. Objektorientierung) einer höheren Programmiersprache<br />
• ausgewählte Standard-Algorithmen (z.B. Such- und Sortierverfahren) sowie deren Umsetzung in einer<br />
höheren Programmiersprache<br />
• Analyse der Zeitkomplexität von Algorithmen<br />
• abstrakte Datentypen, sowie grundlegende dynamische Datenstrukturen und ihre Realisierung in einer<br />
höheren Programmiersprache<br />
4
Literatur<br />
• H.-P. Gumm, M. Sommer: Einführung in die <strong>Informatik</strong>, Oldenbourg-Verlag, 2002<br />
Qualifikationsziele Aneignung von Fähigkeiten zum Verständnis der wichtigsten Grundlagen der Praktischen<br />
<strong>Informatik</strong>; Erwerb von Programmierkenntnissen; Aneignung der Fähigkeit zum selbstständigen Lösen<br />
einfacher algorithmischer Probleme.<br />
Verwendbarkeit des Moduls<br />
Pflichtmodul im Bachelor-Studiengang <strong>Informatik</strong>.<br />
Nebenfach/Anwendungsfach <strong>Informatik</strong> im Diplom-, Bachelor- und Master-Studiengang Mathematik sowie<br />
Wahlbereich in den Bachelor-Studiengängen Physik und Medizinische Physik.<br />
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive und erfolgreiche Mitwirkung in den theoretischen und praktischen Übungen<br />
• schriftliche Prüfung (Klausur, i.d.R. 90 Minuten)<br />
Häufigkeit des Angebots, modulare Schiene<br />
Jedes Wintersemester.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Volker Aurich, Prof. Dr. Alice McHardy, Prof. Dr. Michael Schöttner<br />
1.2 Grundlagen der Technischen <strong>Informatik</strong> (<strong>Informatik</strong> II)<br />
Anmerkung: In den Prüfungsordnungen von 2002 und 2004 lautete die Bezeichnung dieses Moduls: ” Grundlagen<br />
der Praktischen <strong>Informatik</strong>“.<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
10 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ”Grundlagen der Technischen <strong>Informatik</strong>”, 4 SWS<br />
• Übungen, 2 SWS<br />
• C Praktikum, 2 SWS<br />
5
Inhalte und Qualifikationsziele<br />
Ziel der Veranstaltung <strong>Informatik</strong> II ist das Vermitteln eines Grundverständnisses der Funktionsweise moderner<br />
Computer. Zu den Themen der Veranstaltung gehören daher Logik, digitale Schaltungen, Mikroarchitekturen,<br />
Mikroprogrammierung und Assembler-Programmierung, genauso wie elementare Kenntnisse im Bereich<br />
Betriebssysteme. Zur Illustration werden konkrete Prozessoren und Rechnersysteme vorgestellt. Parallel zur<br />
Vorlesung wird im Rahmen praktischer Übungen die Programmierung in x86 Assembler mit NASM (Netwide<br />
Assembler) erlernt. Im Anschluss an die Vorlesungszeit findet ein Projektpraktikum mit der Programmiersprache<br />
C statt.<br />
Empfohlene Literatur Das primäre Lehrbuch zu dieser Veranstaltung ist:<br />
Structured Computer Ogranization Andrew S. Tanenbaum; Prentice Hall; 5th Edition; 2006.<br />
Verwendbarkeit des Moduls<br />
Pflichtmodul im Bachelor-Studiengang <strong>Informatik</strong>.<br />
Nebenfach <strong>Informatik</strong> im Bachelor- und Master-Studiengang Mathematik sowie in den Bachelor-Studiengängen<br />
Physik und Medizinische Physik.<br />
A-Modul im Diplom-Studiengang Biologie.<br />
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Mitwirkung in den Übungen. Lösen einer aufwändigeren Programmieraufgabe in C.<br />
Erfolgreiche Teilnahme an der Abschlussklausur.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Jedes Sommersemester.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Stefan Conrad, Prof. Dr. Martin Mauve, Jun.-Prof. Dr. Björn Scheuermann<br />
1.3 Modul: Programmierpraktikum<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
10 CP<br />
6
Lehrveranstaltungen<br />
• Vorlesung ” Softwaretechnische Grundlagen“, 2 SWS<br />
• Übungen, 2 SWS<br />
• Praktische Übungen, 4 SWS<br />
Inhalte und Qualifikationsziele<br />
Die Studierenden sollen lernen, gemeinsam in Gruppen eine umfangreichere Programmieraufgabe zu bearbeiten.<br />
Literatur:<br />
• Pilone & Miles, “Softwareentwicklung von Kopf bis Fuß”, O’Reilly, 2008.<br />
• Sommerville, “Software Engineerin“, 8. Aufl., Addison-Wesley, 2006.<br />
• D. Flanagan, “Java in a Nutshel“, O’Reilly, 4. Aufl, 2005.<br />
• C. Dawson, “Computerprojekte im Klartext“, Pearson Studium, 2003.<br />
Verwendbarkeit des Moduls<br />
• Pflichtmodul im Bachelor-Studiengang <strong>Informatik</strong>.<br />
• Pflichtmodul im integrierten Bachelor-Studiengang Sprachtechnologie und Informationswissenschaft.<br />
Teilnahmevoraussetzungen<br />
Gute Kenntnis des Stoffs der Lehrveranstaltung ” Grundlagen der Softwareentwicklung und Programmierung“<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Aktive und erfolgreiche Mitwirkung in der Gruppenarbeit<br />
• Eigenständige Programmierarbeit<br />
• Projektpräsentation<br />
Häufigkeit des Angebots, modulare Schiene<br />
Jedes Sommersemester.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
PD Dr. Dr.-Ing. Wilfried Linder<br />
1.4 Grundlagen der Algorithmen und Datenstrukturen (<strong>Informatik</strong><br />
III)<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
7
Kreditpunkte<br />
10 CP<br />
Lehrveranstaltungen<br />
• Vorlesungen ” Algorithmen und Datenstrukturen“, 4 SWS,<br />
• Übungen ” Algorithmen und Datenstrukturen“, 2 SWS<br />
Die Bearbeitung der Hausaufgaben erfordern durchschnittlich weitere 4 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• Algorithmen und ihre formalen Grundlagen<br />
• Rechenmodelle, Effizienzmaße<br />
• Sortierverfahren (Quicksort, Heapsort, Mergesort, ...)<br />
• Suchstrategien (Binärsuche, Interpolationsuche, Textsuche, ...)<br />
• Dictionaries (offene Hashverfahren, dynamische Hashverfahren)<br />
• Suchbäume (AVL-Bäume, B-Bäume, Splay-Trees, ...)<br />
• Vorrangswarteschlangen (Heaps, Binominal Queues, Fibonacci-Heaps, ...); amortisierte Laufzeitanalysen<br />
• Einführung in Graphenalgorithmen (Tiefensuche, Breitensuche, Zusammenhangsprobleme, ...)<br />
Qualifikationsziele Studierende, die das Modul erfolgreich absolviert haben, besitzen anschließend ein Basisverständnis<br />
der wichtigsten Grundlagen über Algorithmen. Sie besitzen die Fähigkeit zur Problemspezifikation<br />
und algorithmischen Problembearbeitung.<br />
Empfohlene Literatur<br />
• Thomas Ottmann und Peter Widmayer, ” Algorithmen und Datenstrukturen“, Spektrum Akademischer<br />
Verlag, 4. Auflage, 2002<br />
• Richard Johnsonbaugh und Marcus Schäfer, ” Algorithms“, Pearson Education, 2004<br />
• Jon Kleinberg und Eva Tardos, ” Algorithm Design“, Addison Wesley, 2006<br />
Verwendbarkeit des Moduls<br />
• Pflichtmodul im Bachelor-Studiengang <strong>Informatik</strong><br />
• Nebenfach <strong>Informatik</strong> im Diplom-Studiengang Mathematik sowie im Bachelor- und Master-Studiengang<br />
Mathematik und Anwendungsgebiete<br />
Teilnahmevoraussetzungen<br />
Grundlagenmodul <strong>Informatik</strong> 1: ” Grundlagen der Praktischen <strong>Informatik</strong>”<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Hausaufgaben, Klausur zum Ende des Semesters.<br />
8
Häufigkeit des Angebots, modulare Schiene<br />
Jedes Studienjahr, in der Regel im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Egon Wanke, Prof. Dr. Martin Lercher<br />
1.5 Grundlagen der Theoretischen <strong>Informatik</strong> (<strong>Informatik</strong> IV)<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
10 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 4 SWS<br />
• Übungen zur Vorlesung, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• Formale Sprachen und Automaten<br />
– Grundbegriffe<br />
∗ Wörter, Sprachen und Grammatiken<br />
∗ Die Chomsky-Hierarchie<br />
– Reguläre Sprachen<br />
∗ Endliche Automaten<br />
∗ Reguläre Ausdrücke<br />
∗ Gleichungssysteme<br />
∗ Das Pumping-Lemma<br />
∗ Satz von Myhill und Nerode und Minimalautomaten<br />
∗ Abschlusseigenschaften regulärer Sprachen<br />
∗ Charakterisierungen regulärer Sprachen<br />
– Kontextfreie Sprachen<br />
∗ Normalformen<br />
∗ Das Pumping-Lemma<br />
∗ Der Satz von Parikh<br />
∗ Abschlusseigenschaften kontextfreier Sprachen<br />
∗ Der Algorithmus von Cocke, Younger und Kasami<br />
∗ Kellerautomaten<br />
9
– Deterministisch kontextfreie Sprachen<br />
∗ Deterministische Kellerautomaten<br />
∗ LR(k)- und LL(k)-Grammatiken<br />
∗ Anwendung: Syntaxanalyse durch LL(k)-Parser<br />
– Kontextsensitive und L0-Sprachen<br />
∗ Turingmaschinen<br />
∗ Linear beschränkte Automaten<br />
∗ Zusammenfassung<br />
• Berechenbarkeit<br />
– Intuitiver Berechenbarkeitsbegriff und die These von Church<br />
– Turing-Berechenbarkeit<br />
– LOOP-, WHILE- und GOTO-Berechenbarkeit<br />
∗ LOOP-Berechenbarkeit<br />
∗ WHILE-Berechenbarkeit<br />
∗ GOTO-Berechenbarkeit<br />
– Primitiv rekursive und partiell rekursive Funktionen<br />
∗ Primitiv rekursive Funktionen<br />
∗ Die Ackermann-Funktion<br />
∗ Allgemein und partiell rekursive Funktionen<br />
∗ Der Hauptsatz der Berechenbarkeitstheorie<br />
– Entscheidbarkeit und Aufzählbarkeit<br />
∗ Einige grundlegende Sätze<br />
∗ Entscheidbarkeit<br />
∗ Rekursiv aufzählbare Mengen<br />
– Unentscheidbarkeit<br />
∗ Der Satz von Rice<br />
∗ Reduzierbarkeit<br />
∗ Das Postsche Korrespondenzproblem<br />
∗ Unentscheidbarkeit in der Chomsky-Hierarchie<br />
∗ Zusammenfassung<br />
Qualifikationsziele Ziel der Veranstaltung <strong>Informatik</strong> IV ist die Vermittlung von Grundlagenwissen aus den<br />
Bereichen Formale Sprachen und Automaten sowie Berechenbarkeitstheorie. Am Ende der Veranstaltung sollten<br />
Studierende in der Lage sein, formale Sprachen in die Chomsky-Hierarchie einzuordnen, verschiedene äquivalente<br />
Automatenmodelle ineinander bzw. in Grammatiken des entsprechenden Typs umzuformen, Argumente für die<br />
Inäquivalenz von bestimmten Automatenmodellen bzw. Grammatiktypen zu geben, die algorithmische Entscheidbarkeit<br />
von Problemen einzuschätzen und Argumente für die Nichtentscheidbarkeit von Problemen zu<br />
geben. Auch sollten sie die Erkenntnis gewonnen haben, dass es nicht berechenbare Funktionen gibt, und eine<br />
Vorstellung vom Aufbau eines Compilers und von lexikalischer und Syntaxanalyse erworben haben. Neben diesen<br />
Kenntnissen sollten sie sich auch Fertigkeiten im Umgang mit formalen Begriffs- und Modellbildungen sowie<br />
mit formalen Argumentationsweisen sowie bestimmte Beweistechniken (wie etwa Diagonalisierung) angeeignet<br />
haben.<br />
10
Empfohlene Literatur<br />
• Theoretische <strong>Informatik</strong> kurz gefasst, Uwe Schöning. Spektrum Akademischer Verlag, 2. Auflage,<br />
1995.<br />
• Einführung in die Automatentheorie, Formale Sprachen und Komplexitätstheorie, John E.<br />
Hopcroft, Rajeev Motwani und Jeffrey D. Ullman. Pearson Studium, 2. Auflage, 2002.<br />
• Theoretische <strong>Informatik</strong>. Eine kompakte Einführung, Klaus W. Wagner. Springer-Verlag, 2. Auflage,<br />
Berlin, Heidelberg, 2003.<br />
Ergänzende Literatur<br />
• Theoretische <strong>Informatik</strong>. Eine anwendungsorientierte Einführung, Norbert Blum. Oldenbourg,<br />
2. Auflage, 2001.<br />
• Theoretische <strong>Informatik</strong>. Eine Einführung in Berechenbarkeit, Komplexität und formale<br />
Sprachen mit 101 Beispielen, Alexander Asteroth und Christel Baier. Pearson Studium, 2002.<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (Pflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• erfolgreiche Bearbeitung der Übungsaufgaben<br />
• Bestehen der schriftlichen Prüfung (Klausur)<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Sommersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Jörg Rothe (seit 2000), ab 2012 im Wechsel mit Prof. Dr. Michael Leuschel<br />
11
Kapitel 2<br />
Grundlagenmodule der Mathematik<br />
(1.–3. Fachsemester Bachelor)<br />
2.1 Modul: Analysis I<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
10 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Analysis I“, 4 SWS<br />
• Übung zu ” Analysis I“, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Grundlegende Begriffe<br />
• Aussagen und Methoden der Analysis einer reeller Veränderlicher<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong><br />
• Bachelor-Studiengang Mathematik<br />
• Bachelor-Studiengang Physik<br />
Teilnahmevoraussetzungen<br />
Keine<br />
12
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiches Bearbeiten von Übungsaufgaben<br />
• Abschlussklausur jeweils in der letzten Vorlesungswoche sowie zu Beginn des kommenden Semesters (Anmeldung<br />
in der Vorlesung)<br />
• Die Klausur muss bestanden werden; das Modul wird nicht benotet.<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Semester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Die Dozenten der Mathematik (Festlegung jeweils 1 Jahr im Voraus in einer Sitzung der Wissenschaftlichen<br />
Einrichtung)<br />
2.2 Modul: Analysis II<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
10 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Analysis II“, 4 SWS<br />
• Übung zu ” Analysis II“, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Aussagen und Methoden der Analysis mehrerer reeller Veränderlicher<br />
• gewöhnliche Differentialgleichungen<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong><br />
• Bachelor-Studiengang Mathematik<br />
• Bachelor-Studiengang Physik<br />
Teilnahmevoraussetzungen<br />
Für die Teilnahme an ” Analysis II“ sind die Kenntnisse aus Analysis I erforderlich.<br />
13
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiches Bearbeiten von Übungsaufgaben<br />
• Abschlussklausur jeweils in der letzten Vorlesungswoche sowie zu Beginn des kommenden Semesters (Anmeldung<br />
in der Vorlesung)<br />
• Die Klausuren zu beiden Lehrveranstaltungen müssen bestanden werden; das Modul wird nicht benotet.<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Semester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Die Dozenten der Mathematik (Festlegung jeweils 1 Jahr im Voraus in einer Sitzung der Wissenschaftlichen<br />
Einrichtung)<br />
2.3 Modul: Lineare Algebra<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
10 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Lineare Algebra I“, 4 SWS<br />
• Übung zu ” Lineare Algebra I“, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Grundlegende Begriffe und Strukturen der Mathematik<br />
• Aussagen und Methoden der Linearen Algebra<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong><br />
• Bachelor-Studiengang Mathematik<br />
• Bachelor-Studiengang Physik<br />
Teilnahmevoraussetzungen<br />
keine<br />
14
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiches Bearbeiten von Übungsaufgaben<br />
• Abschlussklausur jeweils in der letzten Vorlesungswoche sowie zu Beginn des kommenden Semesters (Anmeldung<br />
in der Vorlesung)<br />
• Die Klausur muss bestanden werden; das Modul wird nicht benotet.<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Semester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Die Dozenten der Mathematik (Festlegung jeweils 1 Jahr im Voraus in einer Sitzung der Wissenschaftlichen<br />
Einrichtung)<br />
2.4 Modul: Angewandte Mathematik<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
10 CP<br />
Lehrveranstaltungen<br />
Zur Wahl:<br />
oder<br />
• Vorlesung ” Numerik I“, 3 SWS<br />
• Übung zu ” Numerik I“, 2 SWS<br />
• Programmierpraktikum zu ” Numerik I“, 2 SWS<br />
• Vorlesung ” Modellbildung in der Stochastik“, 4 SWS<br />
• Übung zu ” Modellbildung in der Stochastik“, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Numerik I:<br />
• Grundlagen der Numerischen Mathematik<br />
• Numerische Integration<br />
• Interpolation und Approximation<br />
15
• linearer und nichtlinearer Gleichungssysteme<br />
Modellbildung in der Stochastik:<br />
• Grundlagen der Wahrscheinlichkeitsrechnung<br />
• Modelle für Zufallsexperimente<br />
• Anwendungen der Stochastik in der <strong>Informatik</strong><br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong><br />
• Bachelor-Studiengang Mathematik<br />
Teilnahmevoraussetzungen<br />
Module Analysis und Lineare Algebra (2 der 3 Klausuren aus diesen Modulen müssen bestanden sein)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiches Bearbeiten von Übungsaufgaben und (wenn Numerik I gewählt wurde) der Programmieraufgaben<br />
• Abschlussklausur jeweils in der letzten Vorlesungswoche sowie zu Beginn des kommenden Semesters (Anmeldung<br />
in der Vorlesung)<br />
• Die Klausur muss bestanden werden; das Modul wird nicht benotet.<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
für Numerik I: Prof. Dr. Hochbruck, Prof. Dr. Witsch und Kollegen<br />
für Modellbildung in der Stochastik: Prof. Dr. A. Janssen, Prof. Dr. K. Janssen und Kollegen<br />
16
Kapitel 3<br />
Nebenfachmodule<br />
(Bachelor-Studiengang)<br />
3.1 Nebenfach: Biologie<br />
Modulart<br />
Nebenfach-Module<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
insgesamt 40 CP<br />
Lehrveranstaltungen<br />
Studienplan:<br />
Veranstaltung SWS Sem. Kreditpunkte Modul<br />
Allgemeine Biologie 6 VL 3. 10 1<br />
Genetik 2 VL + 1 ÜB 4. 5 2<br />
Biodiversität, Ökologie und Evolution 3 VL 4. 5 2<br />
Mikrobiologie 3 VL 5. 5 3<br />
Neurobiologie und Zoophysiologie 3 VL 5. 5 3<br />
Biologische Systeme II<br />
Biochemie 3 VL + 1 ÜB 5./7. 5 4<br />
Biophysik 3 VL + 1 ÜB 5./7. 5 4<br />
Inhalte und Qualifikationsziele<br />
Die Inhalte und Qualifikationsziele der einzelnen Veranstaltungen sind in den Modulbeschreibungen des<br />
Bachelor-Studiengangs Biologie zu finden.<br />
Verwendbarkeit des Moduls<br />
Bachelor-Studiengang <strong>Informatik</strong> (als Nebenfach-Module)<br />
17
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Die Kreditpunkte werden in der Regel durch schriftliche Prüfungen erworben.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Beginn jährlich Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Dozenten des Faches Biologie<br />
3.2 Nebenfach Chemie<br />
Modulart<br />
Nebenfach-Module<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
insgesamt 40 CP<br />
Lehrveranstaltungen<br />
Studienplan:<br />
Veranstaltung SWS Sem. CP Modul<br />
Brückenkurs Grundlagen der Chemie für Studienanfänger der<br />
Human- und Zahnmedizin<br />
Block (∗) 3. (∗) – –<br />
Einführung in die Quanten- und Computerchemie 3V+1S (+ 4P) 3. 8 1<br />
Anorganische Chemie für Studierende der Biologie 4V+1Ü 4. 8 2<br />
Organische Chemie für Studierende der Psychologie 2V+1Ü 4. 6 2<br />
Thermodynamik und Kinetik<br />
Biologische Systeme II<br />
4V+4P 4. 10 3<br />
Biochemie 3 VL + 1 ÜB 5./7. 5 4<br />
Biophysik 3 VL + 1 ÜB 5./7. 5 4<br />
(∗) Die Teilnahme am Brückenkurs wird zwar nicht überprüft, aber dringend empfohlen, da hier Voraussetzungen<br />
für die weiteren Veranstaltungen vermittelt werden! Der Brückenkurs findet in der vorlesungsfreien Zeit vor dem<br />
Wintersemester statt.<br />
Inhalte und Qualifikationsziele<br />
Die Inhalte und Qualifikationsziele der einzelnen Veranstaltungen sind in den Modulbeschreibungen des<br />
Bachelor-Studiengangs Chemie zu finden.<br />
18
Verwendbarkeit des Moduls<br />
Bachelor-Studiengang <strong>Informatik</strong> (als Nebenfach-Module)<br />
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Die Kreditpunkte werden in der Regel durch Anwesenheitsaufgaben, Protokolle und abschließende schriftliche<br />
Prüfungen erworben.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Beginn jährlich im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Dozenten des Faches Chemie<br />
3.3 Nebenfach: Mathematik<br />
Modulart<br />
Nebenfach-Module<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
insgesamt 40 CP<br />
Lehrveranstaltungen<br />
Dieser Studienplan gilt für Studierende, die das Nebenfach Mathematik ab dem Sommersemester 2008 beginnen.<br />
Studierende, die das Nebenfach Mathematik vorher begonnen haben, können das Nebenfach bzw. einzelne Module<br />
nach diesem neuen Studienplan absolvieren; hierzu sind dem Prüfungsausschuss-Vorsitzenden die Laufzettel<br />
zu Abänderung vorzulegen.<br />
Im Nebenfach Mathematik sind 4 Module zu je 10 Kreditpunkten zu absolvieren. Ein Mathematik-Modul im<br />
Nebenfach besteht aus<br />
• einer Mathematik-Lehrveranstaltung im Umfang von 6 SWS (i.d.R. 4 VL + 2 Üb) mit abschließender<br />
Prüfung oder<br />
• zwei Mathematik -Lehrveranstaltungen im Umfang von je 3 SWS (i.d.R. 2 VL + 1 Üb) jeweils mit<br />
abschließender Prüfung.<br />
Mathematik-Veranstaltungen mit einem Umfang von 3 SWS können jeweils durch ein Seminar der Mathematik<br />
ersetzt werden. Werden 2 oder mehr Seminare im Rahmen des Nebenfachs absolviert, darf davon höchstens eines<br />
ein Proseminar sein. Zu den Mathematik-Veranstaltungen mit 3 SWS Umfang zählen auch die Veranstaltungen<br />
“Computergestützte Mathematik zur Linearen Algebra” sowie “Computergestützte Mathematik zu Analysis”<br />
(jeweils mit Übungen).<br />
19
Im Rahmen des Mathematik-Nebenfachs dürfen nur weiterführende Lehrveranstaltungen verwendet werden, die<br />
nicht zu dem Pflicht- oder Wahlpflichtbereich Mathematik im <strong>Informatik</strong>-Studium gehören. Von den Veranstaltungen<br />
“Numerik I” und “Modellbildung in der Stochastik” kann die, die nicht im Wahlpflichtbereich absolviert<br />
wurde, im Rahmen des Nebenfachs absolviert werden.<br />
Mathematik-Veranstaltungen für andere Fächer (wie Mathematik für Biologien, für Pharmazeuten oder für<br />
Wirtschaftswissenschaftler) können prinzipiell nicht im Rahmen des Nebenfachs verwedent werden.<br />
Empfehlung: Die Zusammenstellung des Nebenfachs Mathematik sollte möglichst frühzeitig mit einem Dozenten<br />
der Mathematik abgesprochen werden, da für bestimmte Veranstaltungen andere unbedingte oder empfohlene<br />
inhaltliche Voraussetzungen sind (siehe auch Modulbeschreibungen der Mathematik).<br />
Inhalte und Qualifikationsziele<br />
Die Inhalte und Qualifikationsziele der einzelnen Veranstaltungen sind in den Modulbeschreibungen des<br />
Bachelor- und Master-Studiengangs Mathematik zu finden.<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (als Nebenfach-Module)<br />
• Bachelor- und Master-Studiengang Mathematik<br />
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Die Kreditpunkte werden in der Regel durch Bearbeitung von Hausaufgaben, in Numerik zusätzlich von Programmieraufgaben<br />
und durch abschließende schriftliche Prüfungen erworben.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Beginn jährlich im Sommersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Dozenten des Faches Mathematik<br />
3.4 Nebenfach: Physik<br />
Modulart<br />
Nebenfach-Module<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
insgesamt 40 CP<br />
20
Lehrveranstaltungen<br />
Studienplan:<br />
Veranstaltung SWS Sem. CP Modul<br />
Mathematische Methoden der Physik 3V+2Ü 3. (∗) 7 1<br />
Experimentelle Mechanik (∗∗∗) 3V+1Ü 3. 6 2<br />
Optik (∗∗∗) 3V+1Ü 3. 6 2<br />
Grundpraktikum 1 4P 3. (∗∗) 6 3<br />
Elektrizität und Magnetismus (∗∗∗) 3V+1Ü 4. 6 4<br />
Theoretische Elektrodynamik (∗∗∗∗) 3V+2Ü 5. 9 4<br />
(∗) Interessierte am Nebenfach Physik können das Nebenfach auch bereits im 1. Fachsemester beginnen, hierzu<br />
bietet sich insbesondere der Besuch der ” Mathematischen Methoden“ an.<br />
(∗∗) Das Physik-Praktikum wird typischerweise in der vorlesungsfreien Zeit durchgeführt. Zudem wird es voraussichtlich<br />
sowohl im Winter- wie im Sommersemester angeboten. Eine Vorbesprechung findet i.d.R. zu Beginn<br />
des Semesters statt.<br />
(∗∗∗) Eine der Veranstaltungen ” Experimentelle Mechanik“, ” Optik“ oder ” Elektrizität“ kann durch ” Experimentelle<br />
Atomphysik“ (findet im Sommersemester statt) ersetzt werden.<br />
(∗∗∗∗) Die Veranstaltung ” Theoretische Elektrodynamik“ kann durch ” Theoretische Mechanik“ (findet im Som-<br />
mersemester statt) ersetzt werden.<br />
Inhalte und Qualifikationsziele<br />
Die Inhalte und Qualifikationsziele der einzelnen Veranstaltungen sind in den Modulbeschreibungen des<br />
Bachelor-Studiengangs Physik zu finden.<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (als Nebenfach-Module)<br />
• Bachelor-Studiengang Physik<br />
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Die Kreditpunkte werden in der Regel durch Hausaufgaben und abschließende schriftliche Prüfungen erworben.<br />
Im Grundpraktikum sind Versuche durchzuführen, Versuchsprotokolle zu schreiben und kurze mündliche<br />
Überprüfungen zu absolvieren.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Beginn jährlich im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Dozenten des Faches Physik<br />
21
3.5 Nebenfach: Psychologie<br />
Modulart<br />
Nebenfach-Module<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
insgesamt 40 CP<br />
Lehrveranstaltungen<br />
Das Nebenfach Psychologie ist zurzeit in drei Module mit folgenden Lehrveranstaltungen aufgeteilt:<br />
• Modul 1<br />
Veranstaltung CP<br />
Quantitative Methoden I 6<br />
Quantitative Methoden II 6<br />
Prüfung in Quantitativen Methoden II<br />
• Modul 2<br />
Veranstaltung CP<br />
Physiologische Grundlagen des Verhaltens I 4<br />
Physiologische Grundlagen des Verhaltens II 4<br />
Biologische Psychologie I 4<br />
Biologische Psychologie II 4<br />
Prüfung wahlweise in Physiologischen Grundlagen des Verhaltens<br />
oder in Biologischer Psychologie.<br />
• Modul 3<br />
Veranstaltung CP<br />
Allgemeine Psychologie II: Lernen, Gedächtnis,<br />
Motivation, Emotion I 4<br />
Allgemeine Psychologie II: Lernen, Gedächtnis,<br />
Motivation, Emotion II 4<br />
Sozialpsychologie I 4<br />
Prüfung in Allgemeiner Psychologie II.<br />
Inhalte und Qualifikationsziele<br />
Die Inhalte und Qualifikationsziele der einzelnen Veranstaltungen sind in den Modulbeschreibungen des<br />
Bachelor-Studiengangs Psychologie zu finden.<br />
Verwendbarkeit des Moduls<br />
Bachelor-Studiengang <strong>Informatik</strong> (als Nebenfach-Module)<br />
22
Teilnahmevoraussetzungen<br />
Es stehen zurzeit pro Studienjahrgang 5 Plätze im Nebenfach Psychologie zur Verfügung, die einmal jährlich –<br />
im Anschluss an die Vorlesungszeit des Wintersemesters – unter den Interessent(inn)en ausgelost werden.<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Die Kreditpunkte werden in der Regel durch aktive Teilnahme an den Lehrveranstaltungen, Anfertigen von<br />
Seminarausarbeitungen, Halten von Seminarvorträgen sowie durch eine mündliche Abschlussprüfung erworden.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Beginn jährlich im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Dozenten des Faches Psychologie<br />
3.6 Andere Nebenfächer (auf Antrag)<br />
Andere Nebenfächer, die als Fächer an der <strong>Heinrich</strong>-<strong>Heine</strong>-<strong>Universität</strong> <strong>Düsseldorf</strong> vertreten sind, sind gemäß<br />
Prüfungsordnung auf Antrag möglich. Der Antrag auf Genehmigung eines anderen Nebenfachs ist mit den<br />
nachfolgend beschriebenen Unterlagen an den Prüfungsausschuss zu stellen.<br />
Mit einer prüfungsberechtigten Vertreterin oder einem prüfungsberechtigten Vertreter (i.d.R. Professor/in oder<br />
Privatdozent/in; im Folgenden Ansprechpartner genannt) des beabsichtigten Nebenfachs ist ein Studienplan für<br />
das Nebenfach zu vereinbaren. In diesem Studienplan müssen Lehrveranstaltungen im Umfang von (mindestens)<br />
40 ECTS-Kreditpunkten enthalten sein. Eine Aufteilung in drei oder vier möglichst gleich große Blöcke (Module)<br />
ist aufgrund der Modulstruktur des Studiengangs erforderlich. Zu jedem der Nebenfachmodule muss eine Note<br />
durch eine oder mehrere Prüfungsleistungen bestimmt werden.<br />
Der prüfungsberechtigte Ansprechpartner muss diesen Studienplan unterschreiben, womit sie oder er die Studierbarkeit<br />
(im Zeitraum 2. bis 5. Fachsemester) bestätigt und sich bereit erklärt (ggf. stellvertretend für Kolleginnen<br />
und Kollegen), die erforderlichen Prüfungen durchzuführen.<br />
Die zulassungsbeschränkten Fächer Betriebswirtschaftslehre (bzw. Wirtschaftswissenschaft), Jura und Medizin<br />
können zurzeit nicht als Nebenfach im Rahmen des Bachelor-Studiengang <strong>Informatik</strong> an der <strong>Heinrich</strong>-<strong>Heine</strong>-<br />
<strong>Universität</strong> gewählt und absolviert werden.<br />
23
Kapitel 4<br />
Praxis- und Berufsorientierung<br />
4.1 Modul: Praxis- und Berufsorientierung<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
5 CP<br />
Lehrveranstaltungen<br />
Aus dem Angebot der <strong>Heinrich</strong>-<strong>Heine</strong>-<strong>Universität</strong> <strong>Düsseldorf</strong> sind Lehrveranstaltungen zur Praxis- und Berufsvorbereitung<br />
zu besuchen. Hierzu zählen unter anderem:<br />
• Veranstaltungen des Studium Universale<br />
• Fremdsprachenkurse<br />
• Rhetorikseminare / -kurse<br />
• Bewerbungstraining<br />
• Praktika mit hohem <strong>Informatik</strong>-Anteil (die aber nicht Bestandteil von Pflicht- oder Wahlpflichtmodulen<br />
sein dürfen, die im Bachelor-Studiengang <strong>Informatik</strong> angeboten werden)<br />
Ferner kann auch ein Praktikum (mit hohem <strong>Informatik</strong>-Anteil) in einem Unternehmen gemacht werden. Hierbei<br />
sind mind. 150 Std. zu absolvieren (1 CP entspricht 30 Std.). Für die Anerkennung ist eine Praktikumsbescheinigung<br />
(kein Arbeitszeugnis) erforderlich, die den Zeitumfang ausweist.<br />
Wichtig: es muss sich um ein Praktikum handeln und nicht um ein reguläres Arbeitsverhältnis.<br />
Weitere anerkennbare Kurse:<br />
• Veranstaltungen des KUBUS-Programms<br />
• Veranstaltungen rheinjug<br />
• Cisco Academy Kurse<br />
24
Inhalte und Qualifikationsziele<br />
Die im Rahmen dieses Modul besuchten Veranstaltungen sollen Qualifikationen bzw. Fähigkeiten vermitteln,<br />
die über fachliche Kenntnisse und Fertigkeiten der <strong>Informatik</strong> hinaus gehen und den Studierenden den Eintritt<br />
in die berufliche Praxis erleichtern sollen.<br />
Verwendbarkeit des Moduls<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Erfolgreiche Teilnahme an den ausgewählten Veranstaltungen; der Erwerb von Kreditpunkten richtet sich nach<br />
den jeweiligen Regelungen für die besuchten Veranstaltungen.<br />
Häufigkeit des Angebots, modulare Schiene<br />
regelmäßige Angebote der <strong>Universität</strong><br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Lehrende der jeweiligen Fächer<br />
25
Kapitel 5<br />
Wahlpflicht- und<br />
Schwerpunktfachmodule (Bachelor)<br />
Zwecks verbesserter Studierbarkeit des Studiengangs und zur Erhöhung der Wahlmöglichkeiten der Studenten,<br />
wurden einige Module in zwei separate, eigenständige Lehreinheiten auftgeteilt. Diese Lehreinheiten sind als<br />
Halb-Module gekennzeichnet und haben eine Gewichtung von 7,5 ECTS Kreditpunkten. Zwei Halb-Module<br />
zusammen zählen als ein ganzes Modul. Diese Vorgehensweise und das Konzept eines Halb-Modules soll in<br />
Zukunft direkt in der Prüfungsordnung veranktert werden.<br />
Anmerkung: Der Prüfungsausschuss hat am 28.01.2008 folgende Regelung für Studierende des Bachelor-<br />
Studiengangs <strong>Informatik</strong> beschlossen:<br />
Formale Voraussetzung für die Teilnahme an Lehrveranstaltungen zu Wahlpflicht- oder Schwerpunktmodulen<br />
im Bachelor-Studiengang <strong>Informatik</strong> ist der erfolgreiche Abschluss der Module “Grundlagen<br />
der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> I) und “Grundlagen der Technischen <strong>Informatik</strong>”<br />
(<strong>Informatik</strong> II).<br />
Grundsätzlich werden all Module und Halb-Module entweder nur für den Master oder nur für den Bachelor<br />
angeboten. Um den Studenten ein erweitertes Lehrangebot anzubieten sind aber einige (Halb-)Module sowohl<br />
für den Bachelor als auch für den Master ausgezeichnet. Hierbei handelt es sich um Kurse mit kleinen Gruppengrößen<br />
und wo eine Differenzierung zwischen Master und Bachelorstudenten vorgenommen wird (z.B. in Form<br />
einer unterschiedlichen Klausur oder einer unterschiedlichen Seminaraufgabe). Eine detaillierte Begründung<br />
befindet sich am Anfang von Kapitel 7.<br />
5.1 Modul: Algorithmentheorie I<br />
Modulart<br />
Wahlpflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Algorithmentheorie I”, 4 SWS,<br />
26
• Übungen ” Algorithmentheorie I”, 2 SWS,<br />
Die Bearbeitung der Hausaufgaben erfordern durchschnittlich weitere 8 SWS<br />
Inhalte und Qualifikationsziele<br />
• Methoden des Algorithmenentwurfs (Teile und Beherrsche, Dynamische Programmierung, ...),<br />
• Graphenalgorithmen (Kürzeste Wege, Minimale Spannbäume, Netzwerkfluss, ...),<br />
• Einführung in die algorithmische Komplexität (NP-Vollständigkeit, ...),<br />
• Approximationsalgorithmen,<br />
• Randomisierte Algorithmen,<br />
• Einführung in Online-Algorithmen<br />
Basisliteratur:<br />
• Thomas Ottmann und Peter Widmayer, ” Algorithmen und Datenstrukturen“, Spektrum Akademischer<br />
Verlag, 4. Auflage, 2002<br />
• Richard Johnsonbaugh und Marcus Schäfer, ” Algorithms“, Pearson Education, 2004<br />
• Jon Kleinberg und Eva Tardos, ” Algorithm Design“, Addison Wesley, 2006<br />
Studierende, die das Modul erfolgreich absolviert haben, besitzen anschließend ein erweitertes Verständnis der<br />
theoretischen Grundlagen über Algorithmen.<br />
Verwendbarkeit des Moduls<br />
• Wahlpflichtmodul oder Schwerpunktmodul im Bachelor-Studiengang <strong>Informatik</strong><br />
• Nebenfach <strong>Informatik</strong> im Diplom-Studiengang Mathematik sowie im Bachelor- und Master-Studiengang<br />
Mathematik und Anwendungsgebiete<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluß folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Empfohlene Vorkenntnisse<br />
Grundlagenmodul <strong>Informatik</strong> 3: “Algorithmen und Datenstrukturen”<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Hausaufgaben, Klausur zum Ende des Semesters.<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Sommersemester<br />
27
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Egon Wanke<br />
5.2 Halb-Modul: Algorithmen in der Bioinformatik<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Bioinformatik)<br />
Studiengang<br />
Bachelor- oder Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übungen, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Grundlagen der Bioinformatik<br />
• Exhaustive Suche: DNA-Motive<br />
• Gierige Algorithmen: Genom-Umordnungen<br />
• Dynamische Programmierung: Sequenz-Alignment<br />
• Heuristiken: Multiple Alignments<br />
• Graphen-Algorithmen: Sequenzierung<br />
• Kombinatorische Mustersuche: BLAST<br />
• Hidden Markov Modelle<br />
• Cluster & Cliquen<br />
• Phylogenetische Bäume<br />
Der Kurs “Algorithmen in der Bioinformatik” vermittelt Kenntnisse über verschiedenen Klassen von Algorithmen,<br />
die in der Bioinformatik Anwendung finden. Es werden klassische Algorithmen anhand von biologisch<br />
relevanten Problemen erläutert und spezielle – auf die Biologie zugeschnittene – neue Algorithmen besprochen.<br />
Die Algorithmen werden exemplarisch von den Studenten in der Programmiersprache Perl implementiert und<br />
auf einfache, biologisch motivierte Probleme angewandt.<br />
Die Absolventen sollen in der Lage sein, bioinformatische Probleme mit den vorgestellten Algorithmen<br />
selbständig zu lösen.<br />
Empfohlene Literatur<br />
• Neil C. Jones, Pavel A. Pevzner: An Introduction to Bioinformatics Algorithms. The MIT Press, 2004.<br />
28
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul).<br />
• In Ausnahmefällen im Master-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul).<br />
• Im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet oder Vertiefungsfach.<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen<br />
• erfolgreiches Bearbeiten der Übungsaufgaben<br />
• abschließende Prüfung (i.d.R. schriftlich)<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Sommersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Martin Lercher<br />
5.3 Halb-Modul: Algorithmische Eigenschaften von Wahlsystemen I<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übungen zur Vorlesung und/oder Seminar, 2 SWS<br />
29
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• Grundlagen der Social-Choice-Theorie<br />
– Wahlen<br />
– Wahlsysteme und einige ihrer Eigenschaften<br />
– Einige weitere Wahl-Paradoxa<br />
– Einige Unmöglichkeitssätze<br />
• Manipulation<br />
– Grundlegende Definitionen<br />
– Konstruktive Manipulation<br />
– Destruktive Manipulation<br />
• Wahlkontrolle<br />
– Kontrollszenarien<br />
– Immunität, Anfälligkeit, Verletzbarkeit und Resistenz<br />
– Kontrollkomplexität<br />
Dieses Halb-Modul liegt inhaltlich im jungen, sich rasant entwickelnden, interdisziplinären Gebiet Computational<br />
Social Choice, das derzeit in der Abteilung ” Komplexitätstheorie und Kryptologie“ (Prof. Rothe) intensiv in<br />
der Forschung bearbeitet wird. In diesem Gebiet werden bevorzugt Themen für Bachelor- und Master-Arbeiten<br />
ausgegeben.<br />
Qualifikationsziele Ziel dieses Halb-Moduls ist es, den Studierenden Einblicke in einige der wichtigsten Themen,<br />
Resultate, Modellbildungen und Methoden aus diesem Gebiet zu vermitteln. Am Ende der Veranstaltung<br />
sollten Studierende wichtige Probleme und die zu ihrer Lösung entwickelten Algorithmen und algorithmischen<br />
Techniken nicht nur kennen, sondern sie auch selbstständig modifizieren und anwenden können.<br />
Empfohlene Literatur<br />
• Einführung in Computational Social Choice. Individuelle Strategien und kollektive Entscheidungen<br />
beim Spielen, Wählen und Teilen, Dorothea Baumeister, Claudia Lindner, Irene Rothe und<br />
Jörg Rothe. Unter Vertrag bei Spektrum Akademischer Verlag. Voraussichtliche Publikation: 2011.<br />
Ergänzende Literatur<br />
• A Richer Understanding of the Complexity of Election Systems, Piotr Faliszewski, Edith Hemaspaandra,<br />
Lane A. Hemaspaandra und J. Rothe. Kapitel 14 in Fundamental Problems in Computing:<br />
Essays in Honor of Professor Daniel J. Rosenkrantz, pp. 375–406, S. Ravi und S. Shukla, Herausgeber.<br />
Springer, Berlin, Heidelberg, New York, 2009.<br />
• Computational Aspects of Approval Voting, Dorothea Baumeister, Gábor Erdélyi, Edith Hemaspaandra,<br />
Lane A. Hemaspaandra und Jörg Rothe. Kapitel 10 in Handbook on Approval Voting, pp. 199–251,<br />
R. Sanver und J. Laslier, Herausgeber. Springer-Verlag, Berlin, Heidelberg, 2010.<br />
• Voting Procedures, S. Brams und P. Fishburn. Kapitel 4 in Volume 1 of the Handbook of Social Choice<br />
and Welfare, pp. 173–236, K. Arrow, A. Sen und K. Suzumura, Herausgeber. North-Holland, 2002.<br />
• Chaotic Elections! A Mathematician Looks at Voting, D. Saari. American Mathematical Society,<br />
2001.<br />
30
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Bestehen der schriftlichen Prüfung (Klausur).<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Halb-Modul findet in unregelmäßigen Abständen im Wechsel mit den Halb-Modulen<br />
statt.<br />
• ” Primzahltests und das Faktorisierungsproblem“ (aus dem Master-Studiengang),<br />
• ” Randomisierte Algorithmen und Komplexitätsklassen“ (aus dem Master-Studiengang),<br />
• ” Algorithmische Eigenschaften von Wahlsystemen II“ (aus dem Master-Studiengang) und<br />
• ” Cake-cutting Algorithms“ (aus dem Master-Studiengang)<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Jörg Rothe<br />
5.4 Modul: Betriebssysteme<br />
Modulart<br />
Wahlpflicht, Schwerpunkt<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung Betriebssysteme, 4 SWS<br />
• Theoretische Übung, 2 SWS<br />
• Praktische Übung, 2 SWS<br />
31
Inhalte und Qualifikationsziele<br />
• Architekturformen: monolitisch, geschichtet, Mikrokern, Client/Server<br />
• Hauptspeicher: Verwaltung von Halde und Keller, Verschnitt, Garbage Collection<br />
• Virtueller Speicher: Segmentierung, Paging, Auslagerungsstrategien<br />
• Nebenläufigkeit: Prozesse, Threads, Scheduling<br />
• Synchronisierung: Semaphore, Verklemmungen, transaktionaler Speicher, klassische Probleme<br />
• Plattenspeicher: Blockadressierung, Disk-Scheduling, Partitionierung, Freispeicherverwaltung<br />
• Dateisysteme: FAT, BSD FFS, EXT2, NTFS<br />
• Ein-/Ausgabe: Unterbrechungen, E/A-Software (Treiber)<br />
• Interprozesskommunikation: Signale, Pipes, Queues, Sockets, Shared Memory<br />
• Benutzerschnittstellen: X-Window Architektur, Ereignisverarbeitung<br />
• Sicherheitsaspekte: Zugriffskontrolle, HW-Unterstützung (IA32e)<br />
• Verteilte Betriebssysteme: Cloud- und Grid-Systeme<br />
Ausgewählte theoretischen Konzepte werden anhand von Fallstudien (Linux und Windows NT) vertieft.<br />
Empfohlene Literatur<br />
Andrew S. Tanenbaum: “Modern Operating Systems”, 3. Auflage, Prentice Hall, 2007.<br />
William Stallings: “Operating Systems: Internals and Design Principles, 7. Auflage, Prentice Hall, 2011.<br />
Qualifikationsziele Die Studierenden sollen einerseits die vermittelten theoretischen Betriebssystemkonzepte<br />
in eigenen Worten erklären können und andererseits diese auf konkrete Problemstellungen anwenden und<br />
übertragen können, beispielsweise Techniken der Speicherverwaltung und Koordination. Ferner sollen die Teilnehmer<br />
am Ende in der Lage sein die verschiedenen Konzepte den untersuchten Fallstudien Linux und Windows<br />
NT zuordnen und miteinander vergleichen zu können.<br />
Verwendbarkeit des Moduls<br />
• Wahlpflichtmodul oder Schwerpunktmodul im Bachelor-Studiengang <strong>Informatik</strong>, Zuordnung: praktische<br />
und technische <strong>Informatik</strong>.<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluß folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Erfolgreiche Bearbeitung der Übungsaufgaben und eines Abschlussprojektes. Erfolgreiche Teilnahme an der<br />
Prüfung am Ende der Veranstaltung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Jährlich, i.d.R. im Sommersemester<br />
32
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Michael Schöttner<br />
5.5 Modul: Bildverarbeitung 1<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong> (Wahlpflicht- und Schwerpunktmodul)<br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung (4 SWS)<br />
• Übungen (4 SWS)<br />
Inhalte und Qualifikationsziele<br />
Lokale Operatoren im Ortsbereich, Bildverbesserung, kantenerhaltende Glättung und Entrauschung, Kantendetektion,<br />
Binärisierung, Merkmalsextraktion, Verarbeitung von Binärbildern, morphologische Operatoren, Gestaltbeschreibung,<br />
inverse Filterung. Qualifikationsziele: Verständnis der Methoden und Erfahrung in ihrer Anwendung.<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul)<br />
• in Ausnahmefällen im Master-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul)<br />
• im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet oder Vertiefungsfach<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Teilnahme an den Übungen und einer Prüfung am Ende der Veranstaltung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
In der Regel jedes Studienjahr.<br />
33
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Volker Aurich<br />
5.6 Modul: Datenbanksysteme<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung Datenbanksysteme, 4 SWS<br />
• Übung zu Datenbanksysteme, 2 SWS<br />
• Praktische Übung bzw. Praktikum zu Datenbanksysteme, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Aufgaben eines Datenbanksystems<br />
• Architektur von Datenbanksystemen<br />
• Daten(bank)modelle; hierarchische Modell, Netzwerkmodell, Relationales Modell<br />
• Anfragesprachen für relationale Datenbanken und ihre Grundlagen; Relationale Algebra, Tupel- und Bereichskalkül,<br />
QBE, SQL<br />
• konzeptioneller Datenbankentwurf<br />
• logischer Datenbankentwurf; Normalisierung<br />
• Datenbankanwendungsprogrammierung; Datenbankanbindung im Web<br />
• Transaktionen und Grundlagen der Transaktionsverwaltung<br />
• Anfrageverarbeitung und -optimierung<br />
Neben den theoretischen Grundlagen als Fachwissen sollen fundierte praktische Fähigkeiten, insbesondere in<br />
der Anwendung relationaler Datenbanken (Anfrageformulierung in SQL, Datenbankentwurf, Anwendungsprogrammierung),<br />
erworben werden.<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul)<br />
• im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet oder Vertiefungsfach<br />
• Im Bachelor-/Master-Studiengang Informationswissenschaft und Sprachtechnologie<br />
34
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Wünschenswert sind zudem fundierte Kenntnisse aus dem Modul Grundlagen der Algortihmen und Datenstrukturen<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Teilnahme an den Übungen (in der Regel mit Hausaufgaben); erfolgreicher Abschluss<br />
der Praktischen Übungen durch ein kleines Projekt, in dem eine Aufgabe mit Datenbankentwurf und Datenbankanwendungsprogrammierung<br />
zu bearbeiten ist.<br />
Häufigkeit des Angebots, modulare Schiene<br />
jährlich im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Stefan Conrad<br />
5.7 Modul: Graphenalgorithmen<br />
Modulart<br />
Wahlpflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7.5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Graphenalgorithmen“, 2 SWS,<br />
• Übungen ” Graphenalgorithmen“, 2 SWS<br />
Die Bearbeitung der Hausaufgaben erfordern durchschnittlich weitere 3.5 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• Suchmethoden<br />
• topologische Anordnungen<br />
• Zusammenhangsprobleme<br />
35
• Kürzeste Wege<br />
• Minimale Spannbäume<br />
• Netzwerkfluss<br />
• Matching<br />
Basisliteratur: Verschiedene aktuelle Lehrbücher über Graphenalgorithmen<br />
Studierende, die das Modul erfolgreich absolviert haben, besitzen anschließend ein breites und vertieftes<br />
Verständnis der theoretischen Grundlagen über Graphenalgorithmen.<br />
Verwendbarkeit des Moduls<br />
• Wahlpflichtmodul oder Schwerpunktmodul im Bachelor-Studiengang <strong>Informatik</strong><br />
• Nebenfach <strong>Informatik</strong> im Diplom-Studiengang Mathematik sowie im Bachelor- und Master-Studiengang<br />
Mathematik und Anwendungsgebiete<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Hausaufgaben, bestandene Klausur zum Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Egon Wanke<br />
5.8 Modul: Kryptokomplexität I<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul in der Theoretischen <strong>Informatik</strong><br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
36
Lehrveranstaltungen<br />
• Vorlesung, 4 SWS<br />
• Übungen zur Vorlesung, 2 SWS<br />
• Seminar, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• Einführung in die Kryptologie<br />
– Aufgaben und Ziele der Kryptologie<br />
– Einige klassische Kryptosysteme und ihre Kryptoanalyse<br />
∗ Substitutions- und Permutationschiffren<br />
∗ Affin Lineare Blockchiffren<br />
∗ Block- und Stromchiffren<br />
– Perfekte Geheimhaltung<br />
– RSA<br />
∗ Satz von Shannon und Vernams One-Time Pad<br />
∗ Entropie und Schlüsselmehrdeutigkeit<br />
∗ Das RSA Public-Key Kryptosystem<br />
∗ Digitale Signaturen mit RSA<br />
∗ Sicherheit von RSA: Mögliche Angriffe und Gegenmaßnahmen<br />
• Einführung in die Komplexitätstheorie<br />
– Grundlagen<br />
∗ Komplexitätsmaße und -klassen<br />
∗ Kompression und Beschleunigung<br />
∗ Hierarchiesätze<br />
∗ Eine untere Schranke<br />
– Zwischen L und PSPACE<br />
∗ Einfache Inklusionen<br />
∗ Komplexitätsbeschränkte Many-one-Reduktionen<br />
∗ Vollständige Probleme in NL<br />
∗ NP-vollständige Probleme<br />
Qualifizierungsziele Kryptologie und Komplexitätstheorie sind zwei Gebiete, die eng miteinander verwandt<br />
sind, sich aber recht unabhängig voneinander entwickelt haben. Neben anderen Gebieten (wie etwa der Zahlentheorie)<br />
verwendet die moderne Kryptologie die mathematisch strengen Konzepte und Methoden der Komplexitätstheorie.<br />
Umgekehrt ist die aktuelle Forschung in der Komplexitätstheorie oft durch Fragen und Probleme<br />
motiviert, die in der Kryptologie auftreten. Diesem Trend trägt dieses Modul Rechnung, indem es beide Gebiete<br />
in ihrer Symbiose – als ” Kryptokomplexität“ – behandelt.<br />
In der Einführung in die Kryptologie werden einerseits die wichtigsten Kryptosysteme (also effiziente Algorithmen<br />
zur Verschlüsselung und legitimierten Entschlüsselung) vorgestellt und analysiert; andererseits wird die<br />
Sicherheit solcher Kryptosysteme, die häufig auf der Komplexität geeigneter Probleme beruht, behandelt. In<br />
der Einführung in die Komplexitätstheorie geht es insbesondere um die Klassifizierung von Problemen bezüglich<br />
ihrer Berechnungskomplexität, d. h., um den Nachweis unterer Schranken für die Ressourcen Rechenzeit und<br />
Speicherplatz, die zur algorithmischen Lösung der Probleme nötig sind. Dies ergänzt und komplementiert die<br />
37
Veranstaltungen zur Algorithmik, die den Nachweis oberer Schranken zum Ziel haben und sich insbesondere<br />
mit dem Entwurf und der Analyse effizienter Algorithmen befassen.<br />
Die Studierenden sollen am Ende dieser Veranstaltung die erlernten Modellbildungen und Techniken auf neue<br />
Probleme, Kryptosysteme und Algorithmen anwenden können. So sollen sie etwa die Komplexität von Problemen,<br />
die Sicherheit von kryptographischen Verfahren und die Laufzeit und den Speicherplatzbedarf von Algorithmen<br />
einschätzen können. Besonderer Wert wird darauf gelegt, dass die Studierenden die enge Verflechtung<br />
dieser Gebiete verstehen.<br />
Empfohlene Literatur<br />
• Komplexitätstheorie und Kryptologie. Eine Einführung in Kryptokomplexität, Jörg Rothe.<br />
eXamen.Press, Springer-Verlag, Berlin, Heidelberg, xii+535 Seiten, 2008.<br />
• Complexity Theory and Cryptology. An Introduction to Cryptocomplexity, Jörg Rothe. EAT-<br />
CS Texts in Theoretical Computer Science, Springer-Verlag, Berlin, Heidelberg, xii+478 Seiten, 2005.<br />
Ergänzende Literatur<br />
• Cryptography: Theory and Practice, Douglas R. Stinson. Chapman & Hall/CRC, 3. Auflage, 2006.<br />
• Einführung in die Kryptographie, Johannes Buchmann. Springer-Verlag, Berlin, Heidelberg, 2. Auflage,<br />
2001.<br />
• Computational Complexity, Christos Papadimitriou. Addison-Wesley, 2. Auflage, reprinted with corrections,<br />
1995.<br />
• Vorlesungen zur Komplexitätstheorie, Gerd Wechsung. Teubner-Verlag, Stuttgart, 2000.<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Bestehen der schriftlichen Prüfung (Klausur).<br />
Häufigkeit des Angebots, modulare Schiene<br />
Das anschließende Modul Kryptokomplexität II“ im Master-Studiengang vertieft und erweitert dieses Modul,<br />
”<br />
kann aber auch unabhängig davon gehört werden, sofern sich die Studierenden eventuell fehlende Grundkenntnisse<br />
selbstständig aneignen.<br />
” Kryptokomplexität I“ (im Bachelor-Studiengang) findet im Wechsel mit Kryptokomplexität II“ (im Master-<br />
”<br />
Studiengang) statt, vorwiegend in den Wintersemestern, aber gelegentlich auch in den Sommersemestern (z. B.<br />
dann, wenn Prof. Rothe nicht die <strong>Informatik</strong> IV“ im Sommer hält). Bisher wurde der Inhalt dieses Moduls in<br />
”<br />
der Form zweier Halb-Module ( Kryptologie I“ und Komplexitätstheorie I“) angeboten. Ab dem WS 2011/2012<br />
” ”<br />
werden diese beiden Halb-Module zu einem Modul, Kryptokomplexität I“, zusammengefasst.<br />
”<br />
38
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Jörg Rothe<br />
5.9 Modul: Mikrokontroller<br />
Modulart<br />
Wahlpflichtmodul<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong> (Wahlpflicht- und Schwerpunktmodul)<br />
Master-Studiengang (Wahlpflichtmodul)<br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung (4 SWS)<br />
• Übungen (4 SWS)<br />
Inhalte und Qualifikationsziele<br />
• Aufbau und Funktionsweise von Mikrokontrollern<br />
• Programmierung in C und Assembler<br />
• Elektronikgrundlagen, ADC- und DAC-Prinzipien<br />
• Grundprinzipien der Datenübertragung, Modulationsverfahren<br />
• Anhand von Mikrokontrollern der AVR-Familie der Firma Atmel soll erlernt werden, wie man die internen<br />
Peripheriebausteine zur Steuerung von externen Geräten oder für Messaufgaben einsetzen kann.<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (als Wahlpflicht-Modul)<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Teilnahme an den Übungen und einer Prüfung am Ende der Veranstaltung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
In der Regel jedes zweite Studienjahr.<br />
39
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Volker Aurich<br />
5.10 Modul: Rechnernetze<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Rechnernetze“, 4 SWS<br />
• Übungen, 2 SWS<br />
• Praktikum, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Das Modul ”Rechnernetze”richtet sich an Studenten, die verstehen wollen, wie Rechnernetze aus technischer<br />
Sicht funktionieren und welche Entwicklungen in der Zukunft zu erwarten sind. Es werden einerseits die grundlegenden<br />
Fragestellungen des Gebietes untersucht und andererseits besprochen, wie diese Fragestellungen im<br />
Internet gelöst sind. Ziel des Moduls ist es, sowohl ein solides allgemeines Basiswissen im Bereich der Rechnernetze<br />
als auch praktisch einsetzbare Kenntnisse zu vermitteln.<br />
Themen der Vorlesung und Übung:<br />
• Einleitung und Übersicht<br />
• Anwendungsschicht<br />
– World Wide Web / HTTP<br />
– File Transfer / FTP<br />
– E-Mail / SMTP<br />
– Domain Name System /DNS<br />
– Peer-to-Peer Anwendungen (Guntella/KaZaA/Bittorrent)<br />
– Socketprogrammierung mit UDP und TCP<br />
• Transportschicht<br />
– Adressierung<br />
– UDP<br />
– Zuverlässige Datenübertragung<br />
– Überlastkontrolle<br />
– TCP<br />
40
• Netzwerkschicht<br />
– Virtuelle Leitungen und Datagrammnetzwerke<br />
– Funktionsweise und Aufbau von Routern<br />
– Adressierung / DHCP<br />
– Das Internetprotokoll / IP, ICMP<br />
– Link State Routing, Distance Vector Routing<br />
– RIP, OSPF, BGP<br />
• Sicherungsschicht<br />
– Rahmenbildung<br />
– Fehlererkennung und -korrektur<br />
– Medienzugriff in Lokalen Netzen<br />
– Adressierung / ARP<br />
– Ethernet, Hubs, Switches<br />
– PPP<br />
– IP over ATM und MPLS<br />
• Multimediakommunikation<br />
– Anwendungen<br />
– Streaming<br />
– Multimedia über Best-Effort Netzwerke<br />
– Multimediaprotokolle / RTSP, RTP, SIP<br />
– Differentiated Services<br />
– Integrated Services<br />
• Netzwerksicherheit<br />
– Grundlagen der Krytographie<br />
– Nachrichtenintegrität<br />
– Athentifizierung<br />
– Absichern von E-Mail / PGP<br />
– Absichern von TCP / SSL, TLS<br />
– Absichern von IP / IPSec<br />
– Firewalls und Intrusion Detection Systeme<br />
Themen des Praktikums:<br />
• Netzwerkprogrammierung in Java<br />
• Implementierung eines minimalen Webservers<br />
• Aufsetzen eines komplexen Netzwerkes<br />
• Konfiguration und Erprobung von Firewalls<br />
Das primäre Lehrbuch zu dieser Veranstaltung ist:<br />
Computer Networking – A Top-Down Approach Featuring the Internet; 5th Edition James F. Kurose und Keith<br />
W. Ross; 888 Seiten, Pearson, ISBN 0-13-136548-7, 2010.<br />
41
Verwendbarkeit des Moduls<br />
Wahlpflicht- oder Vertiefungsmodul im Bachelorstudiengang <strong>Informatik</strong>.<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Mitwirkung in den Übungen. Aktive Mitarbeit im Praktikum. Erfolgreiche Teilnahme<br />
an der Abschlussprüfung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Jedes Wintersemester.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Martin Mauve<br />
5.11 Modul: Statistisches Lernen in der Bioinformatik<br />
Modulart<br />
Schwerpunkt- oder Wahlpflichtmodul<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 4 SWS<br />
• Programmierpraktikum, 2 SWS<br />
• Seminar, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Methoden des Statistischen Lernens<br />
• Markerdetektion aus Krebsgenomdaten<br />
• Taxonomisches Assignment von Metagenomen<br />
• Methoden zur Funktionsannotation<br />
42
In dieser Vorlesung werden Verfahren des statistischen Lernens und Mustererkennung vorgestellt sowie aktuelle<br />
Anwendungsbeispiele aus den Forschungsbereichen Meta- und Krebsgenomik. Der theoretische Teil orientiert<br />
sich an dem Buch ”Pattern Classification”von R. Duda, P. Hart und D. Stork. Der angewandte Teil beschäftigt<br />
sich mit aktuellen Forschungsarbeiten der letzten fünf Jahre. Im ersten Teil werden Verfahren, basierend<br />
auf der Bayes’schen Entscheidungstheorie, Maximum-Likelihood und Bayes’sche Parameterschätzung, nichtparametrische<br />
Techniken, lineare Entscheidungsfunktionen, stochastische Methoden, nichtmetrische Methoden,<br />
Evaluierungskriterien und Experiment-Design, Verfahren zur Merkmalauswahl sowie Clustering-Verfahren, vorgestellt.<br />
Begleitend werden aktuelle auf diesen Techniken basierende bioinformatische Methoden aus der Metaund<br />
Krebsgenomik vorgestellt.<br />
Verwendbarkeit des Moduls<br />
Schwerpunktmodul oder Wahlpflichtmodul (Praktische <strong>Informatik</strong>) im Bachelor-Studiengang <strong>Informatik</strong><br />
Nebenfach Bioinformatik im Bachelor- oder Master-Studiengang Biologie<br />
Teilnahmevoraussetzungen<br />
Formale Voraussetzung für die Teilnahme an Lehrveranstaltungen zu Modulen, die nur für den Master-<br />
Studiengang angeboten werden, ist für Bachelor-Studierende der erfolgreiche Abschluss der Module ”Grundlagen<br />
der Softwareentwicklung und Programmierung”(<strong>Informatik</strong> I) und ”Grundlagen der Technischen <strong>Informatik</strong>”(<strong>Informatik</strong><br />
II).<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive und erfolgreiche Mitwirkung in den Übungen;<br />
Prüfung zu Vorlesung und Übungen am Ende des Semesters (schriftlich oder mündlich - wird jeweils zu Beginn<br />
des Semesters angekündigt)<br />
Literatur<br />
Duda, R.O., Hart, P.E., Stork, D.G.. Pattern Classification. John Wiley & Sons, New York (Second Edition).<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Alice McHardy<br />
5.12 Modul: Softwaretechnik und Programmiersprachen<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
43
Lehrveranstaltungen<br />
• Vorlesungen, 4 SWS<br />
• Übungen, 2 SWS<br />
• Praktische Übungen, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte Die Inhalte dieses Moduls sind wie folgt:<br />
• Grundlagen des Kompilerbaus:<br />
– Lexikale Analyse<br />
– Syntaxanalyse<br />
– Semantische Analyse<br />
– Code-Generierung<br />
– Benutzen von Werkzeugen wie JavaCC<br />
• Grundlagen der logischen Programmierung:<br />
– Aussagenlogik, Prädikatenlogik<br />
– logisches Beweisen mit Resolution<br />
– Programmieren mit Horn Klauseln<br />
– Grundlagen von Prolog<br />
• Grundzüge der funktionalen Programmierung<br />
Qualifikationsziele Nach erfolgreichem Abschluss des Moduls sollte der Student:<br />
• verstehen wie Programmiersprachen übersetzt und implementiert werden,<br />
• in der Lage sein für eine neue Programmiersprache einen Parser, bzw. Compiler selber zu entwickeln,<br />
• die logischen Grundlagen von Prolog verstehen und kleinere Prolog Programme eigenständig entwickeln<br />
können,<br />
• die Prinzipien der funktionalen Programmierung verstehen.<br />
Empfohlene Literatur<br />
• Andrew W. Appel, Modern Compiler Implementation in Java, 2nd Edition, Cambridge University Press,<br />
(ISBN-13: 9780521820608 — ISBN-10: 052182060X).<br />
• Alfred V. Aho, Monica S. Lam, Ravi Sethi, Jeffrey D. Ullman, Compilers: Principles, Techniques, and<br />
Tools (2nd Edition), Addison Wesley, ISBN-13: 978-0321486813.<br />
• Nilsson, Maluszynski - Logic, Programming and Prolog (eBook)<br />
• Patrick Blackburn, Johan Bos, and Kristina Striegnitz, Learn Prolog Now!, College Publications, ISBN<br />
1-904987-17-6.<br />
Verwendbarkeit des Moduls<br />
Im Studiengang Bachelor-<strong>Informatik</strong> als Schwerpunktmodul oder als Wahlpflichtmodule für praktische <strong>Informatik</strong><br />
44
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiche Bearbeitung der Pflichtübungen.<br />
• Erfolgreiche Entwicklung eines eigenen Kompilers<br />
• Bestehen der Klausur<br />
Häufigkeit des Angebots, modulare Schiene<br />
Normalerweise jedes Jahr im Sommersemester; ab 2012 im Wintersemester.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Michael Leuschel<br />
5.13 Halb-Modul: Statistische Auswertung biologischer Daten<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Bioinformatik)<br />
Studiengang<br />
Bachelor- oder Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übungen, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Das Modul soll Kenntnisse in der Anwendung und Implementation von gängigen Methoden der Statistik in der<br />
Programmiersprache R vermitteln. Im ersten Teil des Kurses wird eine Einführung in das Betriebssystem Linux<br />
und in die Sprache R gegeben.<br />
Anhand biologischer Daten werden statistische Tests vorgestellt und die graphische Darstellung von Daten<br />
geübt. Ein zweiter Kursteil vermittelt den Umgang mit und die Analyse von großen Datenmengen am Beispiel<br />
von Microarray-Daten.<br />
45
Empfohlene Literatur<br />
• Peter Dalgaard: Introductory Statistics with R. Springer Verlag, 2008.<br />
• Fahrmeir, Künstler, Pigeot und Tutz: Statistik. Der Weg zur Datenanalyse. Springer Verlag, 2010<br />
• Lothar Sachs und Jürgen Hedderich: Angewandte Statistik. Methodensammlung mit R. Springer Verlag,<br />
2009<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul).<br />
• In Ausnahmefällen im Master-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul).<br />
• Im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet oder Vertiefungsfach.<br />
Teilnahmevoraussetzungen<br />
Erfolgreicher Abschluss folgender Module:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen<br />
• erfolgreiches Bearbeiten der Übungsaufgaben<br />
• abschließende Prüfung (i.d.R. schriftlich)<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Martin Lercher<br />
46
Kapitel 6<br />
Bachelorarbeit<br />
6.1 Modul: Bachelorarbeit<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Bachelor-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
—<br />
Inhalte und Qualifikationsziele<br />
Mit der schriftlichen Abschlussarbeit sollen die Studierenden nachweisen, dass sie in der Lage sind, innerhalb<br />
einer vorgegebenen Frist (von 3 Monaten) ein Thema selbstständig zu bearbeiten und angemessen darzustellen.<br />
Die Bachelorarbeit muss in deutscher oder englischer Sprache verfasst und in einem mündlichen Vortrag<br />
präsentiert werden.<br />
Verwendbarkeit des Moduls<br />
• Bachelor-Studiengang <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Für die Anmeldung zur Bachelorarbeit müssen mindestens 120 der im Rahmen des Bachelorstudiums zu erwerbenden<br />
Kreditpunkte nachgewiesen werden.<br />
Das Thema der Bachelorarbeit wird aus dem Gebiet eines im Abschnitt 5 aufgeführten und erfolgreich absolvierten<br />
Module vergeben, wodurch dieses Modul zum Schwerpunktfach wird.<br />
47
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Erfolgreiche Bearbeitung des Themas und Darstellung in einer fristgerecht abgegebenen Ausarbeitung (Bachelorarbeit);<br />
Präsentation in einem mündlichen Vortrag mit Diskussion<br />
Häufigkeit des Angebots, modulare Schiene<br />
Bei Vorliegen der Voraussetzungen ist der Beginn der Abschlussarbeit jederzeit möglich, d.h. die Vergabe von<br />
Themen ist nicht an bestimmte Zeiten im Semester gebunden.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Dozenten der <strong>Informatik</strong> sowie der als Schwerpunktfach wählbaren mathematisch-naturwissenschaftlichen<br />
Fächer<br />
48
Kapitel 7<br />
Wahlpflicht- und<br />
Schwerpunktfachmodule (Master)<br />
Zwecks verbesserter Studierbarkeit des Studiengangs und zur Erhöhung der Wahlmöglichkeiten der Studenten,<br />
wurden einige Module in zwei separate, eigenständige Lehreinheiten auftgeteilt. Diese Lehreinheiten sind als<br />
Halb-Module gekennzeichnet und haben eine Gewichtung von 7,5 ECTS Kreditpunkten. Zwei Halb-Module im<br />
gleichen Bereich (entweder theoretische oder praktische/technische <strong>Informatik</strong>) zusammen zählen als ein ganzes<br />
Modul. Diese Vorgehensweise und das Konzept eines Halb-Modules soll in Zukunft direkt in der Prüfungsordnung<br />
veranktert werden.<br />
Die Zusammensetzung des Schwerpunktfaches muss mit dem Mentor und Betreuer der Masterarbeit im Schwerpunkt<br />
besprochen werden (siehe Formular “Schwerpunktwahl”).<br />
Anmerkung: Der Prüfungsausschuss hat am 28.01.2008 folgende Regelung für Studierende des Bachelor-<br />
Studiengangs <strong>Informatik</strong> (die Module aus dem Masterprogramm als Zusatzfach belegen wollen) beschlossen:<br />
Formale Voraussetzung für die Teilnahme an Lehrveranstaltungen zu Modulen, die nur für den<br />
Master-Studiengang angeboten werden, ist für Bachelor-Studierende der erfolgreiche Abschluss der<br />
Module “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> I), “Grundlagen<br />
der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> II), “Grundlagen der Algorithmen und Datenstrukturen”<br />
<strong>Informatik</strong> III) sowie “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> IV).<br />
Grundsätzlich werden alle Module und Halb-Module entweder nur für den Master oder nur für den Bachelor<br />
angeboten. Um den Studenten ein erweitertes Lehrangebot anzubieten sind aber die unten aufgelisteten Module<br />
sowohl für den Bachelor als auch für den Master ausgezeichnet. Hierbei handelt es sich um Kurse mit kleinen<br />
Gruppengrößen und wo eine Differenzierung zwischen Master und Bachelorstudenten vorgenommen wird (z.B.<br />
in Form einer unterschiedlichen Klausur oder einer unterschiedlichen Seminaraufgabe).<br />
Eine genauere Beschreibung der doppelt angebotenen Module ist wie folgt:<br />
• Module: Algorithmen in der Bioinformatik (Siehe Abschnitt 5.2) und Statistische Auswertung<br />
Biologischer Daten (Siehe Abschnitt 5.13)<br />
Der Schwerpunkt Bioinformatik im Masterstudiengang steht sowohl Studierenden offen, die bereits Vorkenntnisse<br />
in Bioinformatik mitbringen, als auch solchen, die <strong>Informatik</strong> mit einem anderen Schwerpunkt<br />
studiert haben. Studierene der letzteren Gruppe müssen daher zunächst die Grundlagen dieses Faches erarbeiten,<br />
die andere Studierende evt. bereits im Bachelorstudium erworben haben. Daher ist es inhaltlich<br />
sinnvoll, die grundlegenden Bioinformatik-Veranstaltungen sowohl für Bachelor- als auch für Masterstudenten<br />
zu öffnen. Selbstverständlich ist dennoch eine inhaltliche Differenzierung notwendig, um den unterschiedlichen<br />
Anspruch an die beiden Studierendengruppen zu berücksichtigen. Eine solche Differenzierung<br />
erfolgt im Seminar, das einen wesentlichen Bestandteil des Moduls bildet. Während Studierende des<br />
Bachelor-Studienganges einfachere Themen (vornehmlich aus Lehrbüchern) bearbeiten, tragen Studierende<br />
des Master-Studienganges über Themen aus der wissenschaftlichen Primärliteratur vor. Die Öffnung<br />
49
für Studierende beider Studiengänge ist auch insbesondere aufgrund der kleinen Gruppengröße (ca. 15<br />
Studenten pro Semester) sinnvoll.<br />
• Modul Bildverarbeitung 1 (Siehe Abschnitt 5.5)<br />
Die Bildverarbeitung 1 ist im Wesentlichen für Studierende ab dem 5. Fachsemester gedacht und setzt<br />
die einführenden <strong>Informatik</strong>vorlesungen sowie Lineare Algebra, Analysis, Wahrscheinlichkeitstheorie iund<br />
natürlich Programmiererfahrung voraus. Sie ist also auf dem höchsten Niveau des Bachelorstudiengangs<br />
anzusiedeln und somit auch auf dem Einstiegsniveau des Masterstudiums. Eine Aufspaltung ist zwei unterschiedliche<br />
Einführungen in Bildverarbeitung ist nicht angebracht. Eine Niveauanhebung wird im Masterstudium<br />
durch eine anschließende, weiterführende, vertiefende Veranstaltung erreicht, die zum Schwerpunkt<br />
Bildverarbeitung führt.<br />
7.1 Modul: Algorithmentheorie II<br />
Modulart<br />
Wahlpflicht<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Algorithmentheorie II“, 4 SWS,<br />
• dazu Übungen, 2 SWS<br />
• Seminar ” Algorithmentheorie II“, 2 SWS,<br />
Inhalte und Qualifikationsziele<br />
• Algorithmische Komplexität (NL, P, NP, PSPACE, ...)<br />
• Kombinatorische Optimierung<br />
• Simulated annealing<br />
• Parallele Algorithmen und Kommunikation,<br />
• Algorithmische Geometrie,<br />
Basisliteratur: Verschiedene Bücher über Algorithmen sowie Originalliteratur<br />
Studierende, die das Modul erfolgreich absolviert haben, besitzen anschließend ein breites und vertieftes<br />
Verständnis der theoretischen Grundlagen über Algorithmen<br />
Verwendbarkeit des Moduls<br />
• Wahlpflichtmodul oder Schwerpunktmodul im Master-Studiengang <strong>Informatik</strong><br />
• Nebenfach <strong>Informatik</strong> im Diplom-Studiengang Mathematik sowie im Bachelor- und Master-Studiengang<br />
Mathematik und Anwendungsgebiete<br />
50
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
• Grundlagenmodul <strong>Informatik</strong> 3: “Algorithmen und Datenstrukturen”<br />
• Grundlagenmodul <strong>Informatik</strong> 4: “Theoretische <strong>Informatik</strong>”<br />
• Modul: ” Algorithmentheorie I“<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Hausaufgaben, Klausur zum Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Sommersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Egon Wanke<br />
7.2 Halb-Modul: Algorithmen für schwere Probleme<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Theoretischen <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Algorithmen für schwere Probleme“, 2 SWS,<br />
• dazu Übungen, 2 SWS<br />
51
Inhalte und Qualifikationsziele<br />
Inhalte Dieses Modul befasst sich mit schweren Problemen, für die es vermutlich keine effizienten Algorithmen<br />
gibt, und stellt unter anderem folgende Lösungsansätze für solche Probleme vor.<br />
• Pseudopolynomielle Algorithmen<br />
• Algorithmen auf speziellen Graphen<br />
• Parametrisierte Algorithmen<br />
– Standardparameter<br />
– Parametrisierung in der Baumweite<br />
– Parametrisierung in der Cliquenweite<br />
• Exakte Exponentialzeit Algorithmen<br />
Qualifizierungsziele Studierende, die das Halb-Modul erfolgreich absolviert haben, besitzen anschließend<br />
ein breites und vertieftes Verständnis für schwere Probleme und verschiedene bekannte Algorithmen zu ihrer<br />
Lösung.<br />
Empfohlene Literatur<br />
• F. Gurski, I. Rothe, J. Rothe, E. Wanke, Exakte Algorithmen für schwere Graphenprobleme,<br />
Springer Verlag, 2010.<br />
Ergänzende Literatur<br />
• F.V. Fomin, D. Kratsch, Exact Exponential Algorithms, Springer Verlag, 2010.<br />
• J. Hromkovic, Algorithmics for Hard Problems, Springer Verlag, 2003.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Übungsaufgaben, Bestehen der Klausur zum Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Halb-Modul wird in unregelmäßigen Abständen angeboten.<br />
52
Modulbeauftragte und hauptamtliche Lehrende<br />
Priv.-Doz. Dr. Frank Gurski<br />
7.3 Modul: Algorithmen für Ad-hoc- und Sensornetzwerke<br />
Modulart<br />
Wahlpflicht<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesungen ” Algorithmen für Ad-hoc- und Sensornetzwerke“, 4 SWS,<br />
• Übungen ” Algorithmen für Ad-hoc- und Sensornetzwerke“, 2 SWS<br />
• Seminar ” Algorithmen für Ad-hoc- und Sensornetzwerke“, 2 SWS<br />
Die Bearbeitung der Hausaufgaben erfordern durchschnittlich weitere 7 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• verteilte Algorithmen<br />
• Leader Election<br />
• geographisches Routing<br />
• Topologiekontrolle<br />
• standortbezogene Dienste<br />
• Standortbestimmung<br />
• Greedy-Einbettungen<br />
• Beacon-Routing<br />
• Interval-Routing<br />
• Hop-Netzwerke<br />
• Network Coding<br />
• dominierende Mengen<br />
• maximale unabhängige Mengen<br />
Basisliteratur: Verschiedene aktuelle Lehrbücher über Ad-hoc- und Sensornetzwerke sowie Originalliteratur<br />
53
Qualifikationsziele Studierende, die das Modul erfolgreich absolviert haben, besitzen anschließend ein breites<br />
und vertieftes Verständnis im Bereich Algorithmen für Ad-hoc- und Sensornetzwerke.<br />
Verwendbarkeit des Moduls<br />
• Wahlpflichtmodul oder Schwerpunktmodul im Master-Studiengang <strong>Informatik</strong><br />
• Nebenfach <strong>Informatik</strong> im Diplom-Studiengang Mathematik sowie im Bachelor- und Master-Studiengang<br />
Mathematik und Anwendungsgebiete<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
• Grundlagenmodul <strong>Informatik</strong> 3: “Algorithmen und Datenstrukturen”<br />
• Grundlagenmodul <strong>Informatik</strong> 4: “Theoretische <strong>Informatik</strong>”<br />
• Modul: ” Graphenalgorithmen“<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Hausaufgaben, Teilnahme am Seminar, bestandene Klausur zum<br />
Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, im Sommersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Egon Wanke<br />
7.4 Halb-Modul: Algorithmische Eigenschaften von Wahlsystemen<br />
II<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Theoretischen <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
54
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übungen zur Vorlesung und/oder Seminar, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• Wiederholung grundlegender Begriffe<br />
– Wahlen, Wahlsysteme, Eigenschaften und Wahl-Paradoxa<br />
– Manipulation<br />
– Wahlkontrolle in Plurality-Wahlen<br />
• Kontrollkomplexität in einigen Wahlsystemen<br />
– Condorcet-Wahlen<br />
– Approval-Wahlen<br />
– Copeland-Wahlen<br />
– Bucklin- und Fallback-Wahlen<br />
– Hybridisierung von Wahlsystemen<br />
• Single-Peaked Preferences<br />
– Manipulation<br />
– Wahlkontrolle<br />
• Bestechung in einigen Wahlsystemen<br />
– Definitionen<br />
– Bestechung in Copeland-Wahlen<br />
– Mikrobestechung in Copeland-Wahlen<br />
Dieses Halb-Modul liegt inhaltlich im jungen, sich rasant entwickelnden, interdisziplinären Gebiet Computational<br />
Social Choice, das derzeit in der Abteilung ” Komplexitätstheorie und Kryptologie“ (Prof. Rothe) intensiv in<br />
der Forschung bearbeitet wird. In diesem Gebiet werden bevorzugt Themen für Bachelor- und Master-Arbeiten<br />
ausgegeben.<br />
Qualifikationsziele Ziel in diesem Halb-Modul ist es, den Studierenden Einblicke in einige der wichtigsten<br />
Themen, Resultate, Modellbildungen und Methoden aus diesem Gebiet zu vermitteln. Am Ende der Veranstaltung<br />
sollten Studierende wichtige Probleme und die zu ihrer Lösung entwickelten Algorithmen und algorithmischen<br />
Techniken nicht nur kennen, sondern sie auch selbstständig modifizieren und anwenden können.<br />
Empfohlene Literatur<br />
• Einführung in Computational Social Choice. Individuelle Strategien und kollektive Entscheidungen<br />
beim Spielen, Wählen und Teilen, Dorothea Baumeister, Claudia Lindner, Irene Rothe und<br />
Jörg Rothe. Unter Vertrag bei Spektrum Akademischer Verlag. Voraussichtliche Publikation: 2011.<br />
55
Ergänzende Literatur<br />
• A Richer Understanding of the Complexity of Election Systems, Piotr Faliszewski, Edith Hemaspaandra,<br />
Lane A. Hemaspaandra und J. Rothe. Kapitel 14 in Fundamental Problems in Computing:<br />
Essays in Honor of Professor Daniel J. Rosenkrantz, pp. 375–406, S. Ravi und S. Shukla, Herausgeber.<br />
Springer, Berlin, Heidelberg, New York, 2009.<br />
• Computational Aspects of Approval Voting, Dorothea Baumeister, Gábor Erdélyi, Edith Hemaspaandra,<br />
Lane A. Hemaspaandra und Jörg Rothe. Kapitel 10 in Handbook on Approval Voting, pp. 199–251,<br />
R. Sanver und J. Laslier, Herausgeber. Springer-Verlag, Berlin, Heidelberg, 2010.<br />
• Voting Procedures, S. Brams und P. Fishburn. Kapitel 4 in Volume 1 of the Handbook of Social Choice<br />
and Welfare, pp. 173–236, K. Arrow, A. Sen und K. Suzumura, Herausgeber. North-Holland, 2002.<br />
• Chaotic Elections! A Mathematician Looks at Voting, D. Saari. American Mathematical Society,<br />
2001.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Bestehen der schriftlichen Prüfung (Klausur).<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Halb-Modul findet in unregelmäßigen Abständen im Wechsel mit den Halb-Modulen<br />
statt.<br />
• ” Primzahltests und das Faktorisierungsproblem“ (aus dem Master-Studiengang),<br />
• ” Randomisierte Algorithmen und Komplexitätsklassen“ (aus dem Master-Studiengang),<br />
• ” Algorithmische Eigenschaften von Wahlsystemen I“ (aus dem Bachelor-Studiengang) und<br />
• ” Cake-cutting Algorithms“ (aus dem Master-Studiengang)<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Jörg Rothe<br />
56
7.5 Halb-Modul: Approximationsalgorithmen<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Theoretischen <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Approximationsalgorithmen“, 2 SWS,<br />
• dazu Übungen, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte Dieses Modul befasst sich mit den folgenden schweren Optimierungsproblemen, für die es vermutlich<br />
keine effizienten Algorithmen gibt, und stellt verschiedene Ansätze zum Finden von Näherungslösungen für diese<br />
Probleme vor.<br />
• Grundlagen<br />
– Approximation mit absoluter Güte<br />
– Approximation mit relativer Güte<br />
– Approximationsschemata<br />
• Metrisches Traveling Salesman Problem<br />
• Job Scheduling<br />
• Rucksack<br />
• Bin Packing<br />
• Steiner Baum<br />
• Weighted Vertex Cover<br />
Qualifizierungsziele Studierende, die das Halb-Modul erfolgreich absolviert haben, besitzen anschließend<br />
ein breites und vertieftes Verständnis für schwere Optimierungsprobleme und verschiedene bekannte Approximationsalgorithmen<br />
zu ihrer Lösung.<br />
Empfohlene Literatur<br />
• G. Ausiello, P. Crescenzi, G. Gambosi, et al., Complexity and Approximation: Combinatorial<br />
Optimization Problems and Their Approximability Properties, Springer Verlag, 1999.<br />
• K. Jansen, M. Margraf, Approximative Algorithmen und Nichtapproximierbarkeit, de Gruyter<br />
Verlag, 2008.<br />
• V. Vazirani, Approximation Algorithms, Springer Verlag, 2003.<br />
• R. Wanka, Approximationsalgorithmen, Teubner Verlag, 2006.<br />
57
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Übungsaufgaben, Bestehen der Klausur zum Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Halb-Modul wird in unregelmäßigen Abständen angeboten.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Priv.-Doz. Dr. Frank Gurski<br />
7.6 Halb-Modul: Architektur verteilter Systeme<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übung: 2 SWS<br />
58
Inhalte und Qualifikationsziele<br />
• Architekturformen<br />
• Unstrukturierte P2P-Netze: Gnutella<br />
• Distributed Hash Tables: Chrod, CAN, Pastry<br />
• Asynchrone Kommunikation: Pub/Sub-Services<br />
• Zuverlässige Gruppenkommunikation: atomarer Multicast, Overlay-Multicast<br />
• Zustandsverwaltung in verteilten Spielen: area of interest management<br />
• Architektur verteilter Dateisysteme: Coda, IVY, HDFS, GoogleFS<br />
Empfohlene Literatur Wird in der Vorlesung bekannt gegeben.<br />
Qualifikationsziele Aufbauend auf dem Modul “Grundlagen verteilter Systeme” sollen die Studierenden<br />
ein tieferes Verständnis für die Architektur aktueller verteilter Systeme erreichen. Hierzu werden ausgewählte<br />
wichtige Aufgaben und deren Lösung in verteilten Systemen diskutiert. Die die Teilnehmer(innen) sollen die<br />
vermittelten Konzepte in eigenen Worten erklären können. Ferner sollen sie in der Lage sein die erlernten<br />
Konzepte praktisch anzuwenden.<br />
Verwendbarkeit des Moduls<br />
Wahlpflichtmodul (Praktische <strong>Informatik</strong>) oder Schwerpunktmodul im Master-Studiengang <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiche Bearbeitung von Übungsaufgaben<br />
• Abschließende Prüfung am Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
alle 1,5 Jahre<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Michael Schöttner<br />
7.7 Modul: Bildverarbeitung 2<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul<br />
59
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung (4 SWS)<br />
• Übungen (4 SWS)<br />
Inhalte und Qualifikationsziele<br />
Verarbeitung von Farbbildern, Textur, Segmentierungsverfahren, 2D-Computergrafik, B-Splines, Anpassen von<br />
Kurven, aktive Konturen, Stereo, Verarbeitung von Volumendaten, Bildfolgen, Bewegungsanalyse.<br />
Verwendbarkeit des Moduls<br />
• im Master-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul)<br />
• im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet oder Vertiefungsfach<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Teilnahme an den Übungen und einer Prüfung am Ende der Veranstaltung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
In der Regel jedes zweite Studienjahr.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Volker Aurich<br />
7.8 Halb-Modul: Cake-cutting Algorithms<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Theoretischen <strong>Informatik</strong><br />
60
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übungen zur Vorlesung und/oder Seminar, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• Grundlagen<br />
• Bewertungskriterien<br />
– Fairness<br />
– Effizienz<br />
– Manipulation<br />
– Laufzeit<br />
• Cake-cutting-Protokolle<br />
– Zwei neidfreie Protokolle für zwei Spieler<br />
– Proportionale Protokolle für beliebig viele Spieler<br />
– Überproportionale Protokolle für beliebig viele Spieler<br />
– Eine Hochzeitsfeier im Königshaus: Aufteilung in ungleiche Anteile<br />
– Neidfreie Protokolle für drei und vier Spieler<br />
– Versalzene Sahnetorte: Dirty-Work-Protokolle<br />
– Gekrümel vermeiden: Minimierung der Schnittanzahl<br />
– Der Grad der garantierten Neidfreiheit<br />
– Übersicht über einige Cake-cutting-Protokolle<br />
Dieses Halb-Modul liegt inhaltlich im jungen, sich rasant entwickelnden, interdisziplinären Gebiet Computational<br />
Social Choice, das derzeit in der Abteilung ” Komplexitätstheorie und Kryptologie“ (Prof. Rothe) intensiv in<br />
der Forschung bearbeitet wird. In diesem Gebiet werden bevorzugt Themen für Bachelor- und Master-Arbeiten<br />
ausgegeben.<br />
Qualifikationsziele Ziel in diesem Halb-Modul ist es, den Studierenden Einblicke in einige der wichtigsten<br />
Themen, Resultate, Modellbildungen und Methoden aus diesem Gebiet zu vermitteln. Am Ende der Veranstaltung<br />
sollten Studierende wichtige Probleme und die zu ihrer Lösung entwickelten Algorithmen und algorithmischen<br />
Techniken nicht nur kennen, sondern sie auch selbstständig modifizieren und anwenden können.<br />
Empfohlene Literatur<br />
• Einführung in Computational Social Choice. Individuelle Strategien und kollektive Entscheidungen<br />
beim Spielen, Wählen und Teilen, Dorothea Baumeister, Claudia Lindner, Irene Rothe und<br />
Jörg Rothe. Unter Vertrag bei Spektrum Akademischer Verlag. Voraussichtliche Publikation: 2011.<br />
61
Ergänzende Literatur<br />
• Cake-Cutting Algorithms: Be Fair if You Can, Jack Robertson und William Webb. A K Peters,<br />
1998.<br />
• Fair Division: From Cake-Cutting to Dispute Resolution, Steven J. Brams und Alan D. Taylor.<br />
Cambridge University Press, 1996.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Bestehen der schriftlichen Prüfung (Klausur).<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Halb-Modul findet in unregelmäßigen Abständen im Wechsel mit den Halb-Modulen<br />
statt.<br />
• ” Primzahltests und das Faktorisierungsproblem“ (aus dem Master-Studiengang),<br />
• ” Randomisierte Algorithmen und Komplexitätsklassen“ (aus dem Master-Studiengang),<br />
• ” Algorithmische Eigenschaften von Wahlsystemen I“ (aus dem Bachelor-Studiengang) und<br />
• ” Algorithmische Eigenschaften von Wahlsystemen II“ (aus dem Master-Studiengang).<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Jörg Rothe<br />
7.9 Halb-Modul: Data Warehouses<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Datenbanken und Informationssysteme)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
62
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Theoretische und Praktische Übungen, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Anwendungsbereiche<br />
• Data Warehouse–Architektur<br />
• Multidimensionales Datenmodell, Entwurf von Data Warehouses (MOLAP vs. ROLAP; Star- oder<br />
Snowflake-Schema)<br />
• Anfragebearbeitung und -optimierung<br />
• Materialisierung von Aggregationssichten<br />
• multidimensionale Index- und Speicherstrukturen<br />
• Extraktion, Transformation, Laden; Data Cleaning<br />
• OLAP und Data Mining<br />
Es werden vertiefte Kenntnisse über die Data Warehouse–Architektur und Konzepte des Enwurfs, der Realisierung<br />
und der Anwendung von Data Warehouses erworben. Durch theoretische und praktische Übungen wird<br />
die Anwendung dieser Kenntnisse erlernt.<br />
Empfohlene Literatur<br />
• W. Lehner: Datenbanktechnologie für Data-Warehouse-Systeme. dpunkt-verlag, 2003.<br />
• H. Bauer, A. Günzel (Hrsg.): Data Warehouse Systeme. dpunkt.verlag, 2001<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlplichtbereich)<br />
• Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Modul ” Datenbanksysteme“<br />
63
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen<br />
• erfolgreiches Bearbeiten der Übungsaufgaben<br />
• abschließende Prüfung (i.d.R. mündlich)<br />
Häufigkeit des Angebots, modulare Schiene<br />
• unregelmäßig<br />
• wird im Wechsel mit den Halbmodulen ” Knowledge Discovery in Databases“, ” Multimedia-<br />
Datenbanksysteme“, ” Transaktionsverwaltung“ und ” Verteilte und Föderierte Datenbanken“ angeboten,<br />
so dass jedes Semester mindestens eines dieser Halbmodule angeboten wird<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Stefan Conrad<br />
7.10 Halb-Modul: Einführung in die statistische Analyse mittels<br />
Computersimulationen<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Bioinformatik)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Theoretische und Praktische Übungen, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Der Kurs soll die Rolle von Computersimulationen und Bayesianischen Methoden für reale Modellierungen<br />
vermitteln. Weiterhin sollen die Studenten mit Abschluss des Kurses ein profundes Wissen in der Benutzung<br />
von R und der Software WinBUGS für Bayesianisches Modellieren erhalten.<br />
Einfürung in Bayesianisches denken<br />
• Wahrscheinlichkeit und Einführung in Computersimulationen,<br />
• Einführung in Bootstrap,<br />
• Einführung in Bayesianische Modelle,<br />
• Einführung in multivariate Wahrscheinlichkeitsverteilungen und multiple Parameter Modelle.<br />
64
Monte Carlo Simulationsmethoden<br />
• Monte Carlo Methode zur Berechnung von Integralen,<br />
• Rejection Sampling,<br />
• Importance Sampling,<br />
• Sampling Importance Re-sampling.<br />
Markov Ketten Monte Carlo Methoden<br />
• Einführung in Markov Ketten,<br />
• Metropolis-Hastings Algorithmus,<br />
• Gerichtete azyklische Graphen,<br />
• Gibbs-sampling,<br />
• MCMC output analysis.<br />
Statistische Modellierung<br />
• Regression modelling,<br />
• Analysis of multiple contingency tables,<br />
• Einführung in hierarchische Modelle.<br />
Empfohlene Literatur<br />
• Andrew Gelman, John B. Carlin und Hal S. Stern: Bayesian Data Analysis. Chapman & Hall, 2004<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul).<br />
• Im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet oder Vertiefungsfach.<br />
• Als Teil eines Mastermoduls im Master-Studiengang Biologie.<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen<br />
• erfolgreiches Bearbeiten der Übungsaufgaben<br />
• abschließende Prüfung (i.d.R. schriftlich)<br />
65
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Sommersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Martin Lercher<br />
7.11 Halb-Modul: Effiziente Algorithmen<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Theoretischen <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Effiziente Algorithmen“, 2 SWS,<br />
• dazu Übungen, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte In diesem Modul werden Algorithmen für effizient lösbare Probleme betrachtet. Anhand fundamentaler<br />
Verfahren werden die Prinzipien des Entwurfs und der Analyse von Algorithmen erklärt. Hierzu werden<br />
folgende Themen betrachtet.<br />
• Algorithmenentwurfstechniken<br />
• Algebraische und Zahlentheoretische Probleme<br />
• Sortiernetze<br />
• Sortieren auf Prozessorfeldern<br />
• Lineare Programmierung<br />
Qualifizierungsziele Studierende, die das Halb-Modul erfolgreich absolviert haben, besitzen anschließend<br />
ein breites und vertieftes Verständnis für den Entwurf und die Analyse von effizienten Algorithmen.<br />
Empfohlene Literatur<br />
• N. Blum, Algorithmen und Datenstrukturen, Oldenbourg Verlag, 2004.<br />
• T.H. Cormen, C.E. Leiserson, R.L. Rivest et al., Algorithmen - Eine Einführung, Oldenbourg Verlag,<br />
2007.<br />
• V. Heun, Grundlegende Algorithmen, Teubner Verlag, 2003.<br />
• H.-W. Lang, Algorithmen, Oldenbourg Verlag, 2006.<br />
• U. Schöning, Algorithmik, Spektrum Akademischer Verlag, 2001.<br />
66
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Übungsaufgaben, Bestehen der Klausur zum Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Halb-Modul wird in unregelmäßigen Abständen angeboten.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Priv.-Doz. Dr. Frank Gurski<br />
7.12 Halb-Modul: Fehlerkorrigierende Codierung<br />
Modulart<br />
Wahlpflichtmodul<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung (2 SWS)<br />
• Übungen (2 SWS)<br />
67
Inhalte und Qualifikationsziele<br />
• Stochastische Modellierung von Datenquellen und Übertragungskanälen,<br />
• Transinformation,<br />
• Kanalkapazität,<br />
• Kanaldecodierer,<br />
• Decodierregeln,<br />
• Shannons Kanalcodierungssatz,<br />
• Blockcodes,<br />
• lineare Codes,<br />
• Syndromdecodierung,<br />
• Zyklische Codes,<br />
• Konstruktion zyklischer Codes durch Vorgabe von Wurzeln,<br />
• BCH-Codes,<br />
• Reed-Solomon-Codes,<br />
• Berlekamps Decodieralgorithmus,<br />
• Beispiele und Anwendungen.<br />
Verwendbarkeit des Moduls<br />
• im Master-Studiengang <strong>Informatik</strong> (als Wahlpflicht-Modul)<br />
• im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Teilnahme an den Übungen und einer Prüfung am Ende der Veranstaltung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
In der Regel jedes dritte Studienjahr.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Volker Aurich<br />
68
7.13 Halb-Modul: Geoinformatik<br />
Modulart<br />
Wahlpflichtmodul im Bereich Praktische/Technische <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung: 2 SWS<br />
• Übung: 2 SWS im Block<br />
Inhalte und Qualifikationsziele<br />
Die Geoinformatik befasst sich im weitesten Sinn mit der Erfassung, Aufbereitung, Analyse und Präsentation von<br />
räumlichen Daten. Der Raumbezug von Informationen geschieht mittels Koordinaten und kann beispielsweise<br />
per GPS hergestellt werden. Beispiele für die Analyse und Nutzung räumlicher Daten sind Navigationssysteme<br />
und Routenplaner.<br />
Empfohlene Literatur Norbert Bartelme: Geoinformatik. Modelle, Strukturen, Funktionen. Springer. Ralf<br />
Bill: Grundlagen der Geo-Informationssysteme. Wichmann. Norbert de Lange: Geoinformatik in Theorie und<br />
Praxis. Springer.<br />
Qualifikationsziele<br />
• Erfassung und Aufbereitung von Geodaten<br />
• Datenstrukturen (Raster, Vektor usw.)<br />
• Grundlagen der Bildverarbeitung<br />
• Koordinatensysteme und -transformationen<br />
• Räumliche Analysen<br />
• Datenverschneidung<br />
• Interpolationsverfahren für Geländemodelle<br />
Verwendbarkeit des Moduls<br />
Master <strong>Informatik</strong> als Wahlpflichtmodul für Praktische/Technische <strong>Informatik</strong><br />
69
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Regelmäßige Teilnahme an den Übungen, Bearbeitung der Aufgaben, abschließende Prüfung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
jährlich, i.d.R. im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
PD Dr. Dr.-Ing. Wilfried Linder<br />
7.14 Modul: Graphenalgorithmen II<br />
Modulart<br />
Wahlpflicht<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Graphenalgorithmen II“, 4 SWS,<br />
• dazu Übungen, 2 SWS<br />
• Seminar ” Graphenalgorithmen II“, 2 SWS,<br />
Inhalte und Qualifikationsziele<br />
• Planare Graphen (Erkennung, Dualität, Färbungsprobleme, ...),<br />
• Chordale Graphen (lexikographische Breitensuche, perfekte Eliminationsordnung, ...)<br />
• Baumweite beschränkte Graphen,<br />
• Cliquenweite, Rangweite, NLC-Weite,<br />
• Baumautomaten,<br />
70
• Fixed Parameter Tractability,<br />
• Minorensatz,<br />
• Extremale Graphen<br />
Basisliteratur: Verschiedene Bücher über Graphalgorithmen sowie Originalliteratur<br />
Studierende, die das Modul erfolgreich absolviert haben, besitzen anschließend ein breites und vertieftes<br />
Verständnis der theoretischen Grundlagen über Graphenalgorithmen.<br />
Verwendbarkeit des Moduls<br />
• Wahlpflichtmodul oder Schwerpunktmodul im Master-Studiengang <strong>Informatik</strong><br />
• Nebenfach <strong>Informatik</strong> im Diplom-Studiengang Mathematik sowie im Bachelor- und Master-Studiengang<br />
Mathematik und Anwendungsgebiete<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Kenntnisse über die Inhalte der Veranstaltung “Algorithmentheorie I”<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Hausaufgaben, Klausur zum Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Egon Wanke<br />
7.15 Halb-Modul: Grundlagen verteilter Systeme<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Praktischen <strong>Informatik</strong> (Verteilte Systeme)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
71
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung: 2 SWS<br />
• Übung: 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Es werden die Grundlagen verteiler Systeme vermittelt.<br />
• Kommunikation: Sockets (UDP,TCP), RMI, DSM<br />
• Namensdienste: DNS, LDAP<br />
• Koordination: Uhrensynchronisierung, logische Zeit, globale Zustände, wechselseitiger Ausschluss, Auswahlalgorithmen,<br />
Transaktionen<br />
• Replikation & Konsistenz: daten- und klientenzentrierte Konsistenzmodelle, Aktualisierungsmethoden<br />
• Fehlertoleranz: Fehlermodelle, Übereinstimmung, zuverlässige Gruppenkommunikation, Checkpointing<br />
Empfohlene Literatur Tanenbaum A. und Steen M.: Distributed Systems: Principles and Paradigms, Prentice<br />
Hall, 2. Aufl., 2006<br />
Qualifikationsziele Die Studierenden sollen ein tieferes Verständnis der grundlegenden Herausforderungen<br />
beim Bau verteilter Systeme erreichen. Die vermittelten Konzepte (Grundlagen) sollen die Teilnehmer(innen)<br />
in eigenen Worten erklären können. Ferner sollen sie am Ende in der Lage sein die erlernten Konzepte in<br />
praktischen Übungen anwenden zu können.<br />
Verwendbarkeit des Moduls<br />
Wahlpflichtmodul (Praktische <strong>Informatik</strong>) oder Schwerpunktmodul im Master-Studiengang <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Erfolgreiche Bearbeitung von Übungsaufgaben und Bestehen einer Prüfung (i.d.R.) am Ende des Semesters.<br />
Häufigkeit des Angebots, modulare Schiene<br />
alle 1,5 Jahre<br />
72
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Michael Schöttner<br />
7.16 Halb-Modul: Knowledge Discovery in Databases<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Datenbanken und Informationssysteme)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Knowledge Discovery in Databases“, 2 SWS<br />
• Übungen/Seminar zu ” Knowledge Discovery in Databases“, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Grundlagen der Statistik<br />
• Clustering (partitionierten, dichtebasiert, hierarchisch, ...)<br />
• Klassifikation (Entscheidungsbaum, Support-Vektor-Maschine, ...)<br />
• Assoziationsregeln (Frequent-Itemsets, ...)<br />
• Weitere Mining-Verfahren und -Anwendungen<br />
Es werden vertiefte Kenntnisse über die grundlegenden Data Mining-Verfahren (Clustering, Klassifikation, Assoziationsregeln),<br />
verschiedene Algorithmen dazu sowie ihre Anwendung erworben. Durch Übungen und/oder<br />
Seminar werden die Anwendung dieser Kenntnisse sowie darüber hinaus gehende Aspekte vermittelt.<br />
Empfohlene Literatur<br />
• Ester M., Sander J.: Knowledge Discovery in Databases: Techniken und Anwendungen, Springer Verlag,<br />
2000.<br />
• Dunham, M.H.: Data Mining – Introductory and Advanced Topics, Prentice Hall, 2003.<br />
• Tan, P.-N., Steinbach, M., Kumar, V.: Introduction to Data Mining, Addison Wesley, 2006.<br />
• Han J., Kamber M.: Data Mining: Concepts and Techniques, Morgan Kaufmann Publishers, August 2000.<br />
• Berthold M., Hand D. J. (eds.): Intelligent Data Analysis: An Introduction. Springer Verlag, Heidelberg,<br />
1999.<br />
73
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlplichtbereich)<br />
• Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Modul ” Datenbanksysteme“<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen bzw. dem Seminar<br />
• erfolgreiches Bearbeiten der Übungsaufgaben bzw. Anfertigen einer angemessenen Seminarausarbeitung<br />
und Halten eines Vortrags<br />
• abschließende Prüfung (i.d.R. mündlich)<br />
Häufigkeit des Angebots, modulare Schiene<br />
• unregelmäßig<br />
• wird im Wechsel mit den Halbmodulen ” Data Warehouses“, ” Multimedia-Datenbanksysteme“, ” Transaktionsverwaltung“<br />
und ” Verteilte und Föderierte Datenbanken“ angeboten, so dass jedes Semester mindestens<br />
eines dieser Halbmodule angeboten wird<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Stefan Conrad<br />
7.17 Halb-Modul: Knowledge Discovery in Databases – Ausgewählte<br />
Themen<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Datenbanken und Informationssysteme)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
74
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Knowledge Discovery in Databases – Ausgewählte Themen“, 2 SWS<br />
• Übungen/Seminar zu ” Knowledge Discovery in Databases – Ausgewählte Themen“, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Aufbauend auf dem Halb-Modul Knowledge Discovery in Databases werden hier weiterführende Verfahren<br />
behandelt, wobei aktuelle Entwicklungen berücksichtigt werden sollen. Mögliche Themen sind z.B.<br />
• Temporal Association Rule Mining<br />
• Zeitreihenanalyse und -vorhersage<br />
• Erweiterungen des Clustering z.B. für fehlende Werte<br />
Es werden vertiefte Kenntnisse über die behandelten Data Mining-Verfahren, verschiedene Algorithmen dazu<br />
sowie ihre Anwendung erworben. Durch Übungen und/oder Seminar werden die Anwendung dieser Kenntnisse<br />
sowie darüber hinaus gehende Aspekte vermittelt und vertieft.<br />
Empfohlene Literatur Basisliteratur:<br />
• Ester M., Sander J.: Knowledge Discovery in Databases: Techniken und Anwendungen, Springer Verlag,<br />
2000.<br />
• Dunham, M.H.: Data Mining – Introductory and Advanced Topics, Prentice Hall, 2003.<br />
• Tan, P.-N., Steinbach, M., Kumar, V.: Introduction to Data Mining, Addison Wesley, 2006.<br />
• Han J., Kamber M.: Data Mining: Concepts and Techniques, Morgan Kaufmann Publishers, August 2000.<br />
• Berthold M., Hand D. J. (eds.): Intelligent Data Analysis: An Introduction. Springer Verlag, Heidelberg,<br />
1999.<br />
sowie weiterführende Literatur in Abhängigkeit von den behandelten Themen (wird in der Veranstaltung bekanntgegeben)<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlplichtbereich)<br />
• Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
75
Empfohlene Vorkenntnisse<br />
Modul ” Datenbanksysteme“ sowie fundierte Kenntnisse aus dem Halb-Modul ” Knowledge Discovery in Databases“<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen bzw. dem Seminar<br />
• erfolgreiches Bearbeiten der Übungsaufgaben bzw. Anfertigen einer angemessenen Seminarausarbeitung<br />
und Halten eines Vortrags<br />
• abschließende Prüfung (i.d.R. mündlich)<br />
Häufigkeit des Angebots, modulare Schiene<br />
• unregelmäßig<br />
• wird im Wechsel mit den Halbmodulen “Knowledge Discovery in Databases“, Data Warehouses“,<br />
”<br />
” Multimedia-Datenbanksysteme“, ” Transaktionsverwaltung“ und Verteilte und Föderierte Datenbanken“<br />
”<br />
angeboten, so dass jedes Semester mindestens eines dieser Halbmodule angeboten wird<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Stefan Conrad<br />
7.18 Modul: Kryptokomplexität II<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul in der Theoretischen <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 4 SWS<br />
• Übungen zur Vorlesung, 2 SWS<br />
• Seminar, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• Vertiefung der Kryptologie<br />
– Diffie-Hellman und das Problem des diskreten Logarithmus<br />
∗ Das Schlüsseltauschprotokoll von Diffie und Hellman<br />
76
∗ Diskrete Logarithmen und das Diffie-Hellman-Problem<br />
– Die Protokolle von ElGamal<br />
∗ Das Public-Key Kryptosystem von ElGamal<br />
∗ Digitale Signaturen nach ElGamal<br />
∗ Sicherheit der Protokolle von ElGamal<br />
– Rabins Public-Key Kryptosystem<br />
∗ Rabins Kryptosystem<br />
∗ Sicherheit von Rabins System<br />
– Arthur-Merlin-Spiele und Zero-Knowledge<br />
– Das Public-Key Kryptosystem von Merkle und Hellman<br />
– Die Protokolle von Rabi, Rivest und Sherman<br />
• Vertiefung der Komplexitätstheorie<br />
– Die Boolesche Hierarchie über NP<br />
∗ Probleme in DP<br />
∗ Struktur und Eigenschaften der Booleschen Hierarchie über NP<br />
∗ Exakte Graphfärbbarkeit<br />
– Die Polynomialzeit-Hierarchie<br />
∗ Orakelmaschinen<br />
∗ Struktur und Eigenschaften der Polynomialzeit-Hierarchie<br />
∗ Vollständige Probleme in den Stufen der Polynomialzeit-Hierarchie<br />
∗ Die Boolesche Hierarchie kollabiert die Polynomialzeit-Hierarchie<br />
∗ Relativierungen<br />
– Alternierende Turingmaschinen<br />
∗ Definitionen<br />
∗ ATMs als paralleles Berechnungsmodell<br />
∗ ATIME versus DSPACE<br />
∗ ASPACE versus DTIME<br />
– Dodgson Winner ist vollständig für parallelen Zugriff auf NP<br />
Qualifizierungsziele Kryptologie und Komplexitätstheorie sind zwei Gebiete, die eng miteinander verwandt<br />
sind, sich aber recht unabhängig voneinander entwickelt haben. Neben anderen Gebieten (wie etwa der Zahlentheorie)<br />
verwendet die moderne Kryptologie die mathematisch strengen Konzepte und Methoden der Komplexitätstheorie.<br />
Umgekehrt ist die aktuelle Forschung in der Komplexitätstheorie oft durch Fragen und Probleme<br />
motiviert, die in der Kryptologie auftreten. Diesem Trend trägt dieses Modul Rechnung, indem es beide Gebiete<br />
in ihrer Symbiose – als ” Kryptokomplexität“ – behandelt.<br />
In der Einführung in die Kryptologie werden einerseits die wichtigsten Kryptosysteme (also effiziente Algorithmen<br />
zur Verschlüsselung und legitimierten Entschlüsselung) vorgestellt und analysiert; andererseits wird die<br />
Sicherheit solcher Kryptosysteme, die häufig auf der Komplexität geeigneter Probleme beruht, behandelt. In<br />
der Einführung in die Komplexitätstheorie geht es insbesondere um die Klassifizierung von Problemen bezüglich<br />
ihrer Berechnungskomplexität, d. h., um den Nachweis unterer Schranken für die Ressourcen Rechenzeit und<br />
Speicherplatz, die zur algorithmischen Lösung der Probleme nötig sind. Dies ergänzt und komplementiert die<br />
Veranstaltungen zur Algorithmik, die den Nachweis oberer Schranken zum Ziel haben und sich insbesondere<br />
mit dem Entwurf und der Analyse effizienter Algorithmen befassen.<br />
Die Studierenden sollen am Ende dieser Veranstaltung die erlernten Modellbildungen und Techniken auf neue<br />
Probleme, Kryptosysteme und Algorithmen anwenden können. So sollen sie etwa die Komplexität von Problemen,<br />
die Sicherheit von kryptographischen Verfahren und die Laufzeit und den Speicherplatzbedarf von Algorithmen<br />
einschätzen können. Besonderer Wert wird darauf gelegt, dass die Studierenden die enge Verflechtung<br />
dieser Gebiete verstehen.<br />
77
Empfohlene Literatur<br />
• Komplexitätstheorie und Kryptologie. Eine Einführung in Kryptokomplexität, Jörg Rothe.<br />
eXamen.Press, Springer-Verlag, Berlin, Heidelberg, xii+535 Seiten, 2008.<br />
• Complexity Theory and Cryptology. An Introduction to Cryptocomplexity, Jörg Rothe. EAT-<br />
CS Texts in Theoretical Computer Science, Springer-Verlag, Berlin, Heidelberg, xii+478 Seiten, 2005.<br />
Ergänzende Literatur<br />
• Cryptography: Theory and Practice, Douglas R. Stinson. Chapman & Hall/CRC, 3. Auflage, 2006.<br />
• Einführung in die Kryptographie, Johannes Buchmann. Springer-Verlag, Berlin, Heidelberg, 2. Auflage,<br />
2001.<br />
• Computational Complexity, Christos Papadimitriou. Addison-Wesley, 2. Auflage, reprinted with corrections,<br />
1995.<br />
• Vorlesungen zur Komplexitätstheorie, Gerd Wechsung. Teubner-Verlag, Stuttgart, 2000.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Bestehen der schriftlichen Prüfung (Klausur).<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Modul schließt sich an das Modul Kryptokomplexität I“ aus dem Bachelor-Studiengang an und vertieft<br />
”<br />
und erweitert dieses, es kann aber auch unabhängig davon gehört werden, sofern sich die Studierenden eventuell<br />
fehlende Grundkenntnisse selbstständig aneignen.<br />
” Kryptokomplexität II“ (im Master-Studiengang) findet im Wechsel mit Kryptokomplexität I“ (im Bachelor-<br />
”<br />
Studiengang) statt, vorwiegend in den Wintersemestern, aber gelegentlich auch in den Sommersemestern (z. B.<br />
dann, wenn Prof. Rothe nicht die <strong>Informatik</strong> IV“ im Sommer hält). Bisher wurde der Inhalt dieses Moduls in der<br />
”<br />
Form zweier Halb-Module ( Kryptologie II“ und Komplexitätstheorie II“) angeboten. Ab dem WS 2012/2013<br />
” ”<br />
werden diese beiden Halb-Module zu einem Modul, Kryptokomplexität II“, zusammengefasst.<br />
”<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Jörg Rothe<br />
78
7.19 Modul: Medizinische Bildverarbeitung<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung (4 SWS)<br />
• Übungen (4 SWS)<br />
Inhalte und Qualifikationsziele<br />
Verarbeitung von Bild- und Volumendaten in der Medizin, Tomografieverfahren, Radontransformation, 3D-<br />
Filter, kantenerhaltende Glättung und Entrauschung, Segmentierung, Visualisierung von voxelbasierten Volumendaten.<br />
Verwendbarkeit des Moduls<br />
Im Master-Studiengang <strong>Informatik</strong> als Wahlpflicht- oder Schwerpunkt-Modul<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Teilnahme an den Übungen und einer Prüfung am Ende der Veranstaltung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
In der Regel jedes zweite Studienjahr.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Volker Aurich<br />
79
7.20 Modul: Mobilkommunikation<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ”Mobilkommunikation”, 4 SWS<br />
• Übungen, 2 SWS<br />
• Praktikum, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Das Modul richtet sich an Studenten, die bereits elementare Kenntnisse im Bereich Rechnernetze besitzen und<br />
die technischen Grundlagen von mobilen Netzen verstehen wollen. Ziel des Moduls ist das Erlernen allgemeiner<br />
Grundkenntnisse, das Verständnis von praxisrelevanten Systemen und das Erwerben praktischer Fertigkeiten.<br />
Themen der Vorlesung und Übung:<br />
• Grundlagen der Mobilkommunikation (Geschichte, Frequenzen und Regulierungen, Signale, Antennen,<br />
Signalausbreitung)<br />
• Medienzugriff (Space- , Frequency-, Time-, Code Division Multiple Access)<br />
• Drahtlose Lokale Netze (IEEE 802.11, Bluetooth)<br />
• Mobilkommunikationssysteme (GSM, GPRS, UMTS, LTE)<br />
• Wegewahl in mobilen Netzen (Mobile IP, Fast Handover, DHCP)<br />
• Ad-Hoc Netzwerke (Anwendungen, Wegewahl, DSR, AODV, GPSR)<br />
• Transportprotokolle für die Mobilkommunikation (Generelle Problematik, Indirect TCP, Snoop TCP, Mobile<br />
TCP)<br />
Themen des Praktikums:<br />
• Einführung in die Programmierung von Mobiltelefonen mit J2ME<br />
• Entwicklung eines einfachen Medienzugriffsverfahrens für drahtlose Sensoren<br />
• Aufbau, Konfiguration und Sicherheit in IEEE 802.11<br />
• Experimente mit mobilen Ad-Hoc-Netzwerken<br />
• Aufbau eines Mesh Networks mit IEEE 802.11<br />
Empfohlene Literatur Jochen Schiller, ” Mobilkommunikation“, 2. Auflage, Addison-Wesley/Pearson Studium,<br />
2003.<br />
80
Verwendbarkeit des Moduls<br />
Wahlpflicht- oder Vertiefungsmodul im Master-Studiengang <strong>Informatik</strong>.<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Modul “Rechnernetze”.<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Mitwirkung in den Übungen. Aktive Mitarbeit im Praktikum. Erfolgreiche Teilnahme<br />
an der Abschlussprüfung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Jedes Sommersemester.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Martin Mauve<br />
7.21 Halb-Modul: Modellierung metabolischer Netzwerke<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Bioinformatik)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übungen, 2 SWS<br />
81
Inhalte und Qualifikationsziele<br />
Eine zentrale Aufgabe von Bioinformatikern ist die Simulation von Stoff- oder Signalflüssen durch komplexe biologische<br />
Netzwerke. Häufig liegt jedoch nicht genug Information vor, um ein Netzwerk auf atomarer Ebene exakt<br />
mathematisch zu beschreiben. Als praktikabler Ausweg hat sich die “constraint-based” (Beschränkungs-basierte)<br />
Modellierung erwiesen. Hierbei wird das System anhand der in ihm möglichen biochemischen Reaktionen beschrieben;<br />
kinetische Details (Reaktionsraten etc.) werden dabei zunächst vernachlässigt.<br />
Insbesondere lässt sich durch Einführen einer linearen Zielfunktion ein lineares Optimierungsproblem formulieren,<br />
das mit entsprechenden Standardmethoden gelöst werden kann (Flux-Balance-Analyse, FBA). Verschiedene<br />
Zielfunktionen finden Verwendung, beispielsweise die maximale Wachstumsrate oder die maximale Energieproduktion.<br />
Im Kurs werden komplexe metabolische Netzwerke untersucht. Es werden einzelne Stoffechselmodule (wie zum<br />
Beispiel Glykolyse, Pentosephosphatzyklus, Citratzyklus, . . . ) im Zusammenhang betrachtet und deren Verhalten<br />
unter verschiedenen Bedingungen untersucht.<br />
Absolventen des Kurs sollen zum Schluss die wichtigsten Methoden der (constraint-based) bioinformatischen<br />
Modellierung metabolischer Netzwerke im Gleichgewichtszustand verstehen und selbständig anwenden können.<br />
Empfohlene Literatur<br />
• Bernhard Ø. Palsson: Systems Biology: Properties of Reconstructed Networks. Cambridge University<br />
Press, 2006.<br />
• Uwe Ligges: Programmieren mit R. Springer Verlag, 2007<br />
• Günther Gramlich: Lineare Algebra. Eine Einführung für Ingenieure. Fachbuchverlag Leipzig, 2003<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul).<br />
• Im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet oder Vertiefungsfach.<br />
• Als Teil eines Mastermoduls im Master-Studiengang Biologie.<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen<br />
• erfolgreiches Bearbeiten der Übungsaufgaben<br />
• abschließende Prüfung (i.d.R. schriftlich)<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Sommersemester<br />
82
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Martin Lercher<br />
7.22 Halb-Modul: Multimedia-Datenbanksysteme<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Datenbanken und Informationssysteme)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Multimedia-Datenbanksysteme“, 2 SWS<br />
• Übungen/Seminar zu ” Multimedia-Datenbanksysteme“, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Information Retrieval<br />
• Multimedia Information Retrieval<br />
• Feature-Transformationsverfahren<br />
• Distanzfunktionen<br />
• Effiziente Algorithmen und Datenstrukturen<br />
• Text-Datenbanken<br />
• Bild-Datenbanken<br />
Es werden vertiefte Kenntnisse über die Architektur von Multimedia-Datenbanksysteme sowie Konzepte der<br />
Realisierung und der Anwendung von Multimedia-Datenbanksystemen erworben. Durch Übungen und/oder<br />
Seminar werden die Anwendung dieser Kenntnisse sowie darüber hinaus gehende Aspekte vermittelt.<br />
Empfohlene Literatur<br />
• Ingo Schmitt: Ähnlichkeitssuche in Multimedia-Datenbanken, Oldenbourg-Verlag München, 2005.<br />
• K. Meyer-Wegener: Multimedia-Datenbanken – Einsatz von Datenbanktechnik in Multimedia-Systemen<br />
(2. Auflage), Teubner, Stuttgart, 2003.<br />
• B. Prabhakaran: Multimedia Database Management Systems, Kluwer Academic Publishers, Massachusetts,<br />
1997.<br />
• R. Veltkamp, H. Burkhardt, H.-P. Kriegel (Hrsg.): State-of-the-Art in Content-Based Image and Video<br />
Retrieval, Kluwer Academic Publishers, 2001.<br />
• R. Baeza-Yates, B. Ribeiro-Neto: Modern Information Retrieval, Pearson / Addison Wesley, 1999.<br />
83
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlplichtbereich)<br />
• Diplom- oder Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Modul ” Datenbanksysteme“<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen bzw. dem Seminar<br />
• erfolgreiches Bearbeiten der Übungsaufgaben bzw. Anfertigen einer angemessenen Seminarausarbeitung<br />
und Halten eines Vortrags<br />
• abschließende Prüfung (i.d.R. mündlich)<br />
Häufigkeit des Angebots, modulare Schiene<br />
• unregelmäßig<br />
• wird im Wechsel mit den Halbmodulen ” Data Warehouses“, ” Knowledge Discovery in Databases“, ” Transaktionsverwaltung“<br />
und ” Verteilte und Föderierte Datenbanken“ angeboten, so dass jedes Semester mindestens<br />
eines dieser Halbmodule angeboten wird<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Stefan Conrad<br />
7.23 Halb-Modul: Netzwerksicherheit<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
im Bereich Rechnernetze und Mobilkommunikation<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
84
Lehrveranstaltungen<br />
• Vorlesung und Übungen ” Netzwerksicherheit“, 3 SWS<br />
• Praktische Übung ” Netzwerksicherheit“, 1 SWS<br />
Inhalte und Qualifikationsziele<br />
Systeme, die sich mit dem Internet verbinden, sind einer Vielzahl von Angriffen ausgesetzt. Ziel der Vorlesung<br />
ist es ein fundamentales Verständnis dafür zu entwickeln, wie man sich vor diesen Angriffen schützen kann.<br />
Hierzu werden sowohl die theoretischen Grundlagen diskutiert als auch konkrete Angriffe und Abwehrstrategien<br />
praktisch erprobt.<br />
Insbesondere werden die folgenden Themen behandelt:<br />
• Buffer Overflow Exploits<br />
• Malware (Viren, Würmer, Trojaner)<br />
• Absichern von Netzwerken (Architekturen, DMZ, Firewalls, IDS)<br />
• Sicherheitsprotokolle (PKI, Web of Trust, SSL/TLS, PGP, SSH, Kerberos, DNSSec, TOR)<br />
• Vermeiden von SPAM<br />
• WWW- und Anwendungssicherheit (CSRF, XSS, SQL Injection)<br />
Zu dieser Veranstaltung gibt es kein Lehrbuch.<br />
Verwendbarkeit des Moduls<br />
• Wahlpflicht- oder Vertiefungshalbmodul im Master-Studiengang <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Modul ” Rechnernetze“.<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Mitarbeit in Vorlesung<br />
• erfolgreiche Teilnahme an der praktischen Übung<br />
• erfolgreiche Teilnahme an der Abschlussprüfung<br />
Häufigkeit des Angebots, modulare Schiene<br />
Jedes Sommersemester.<br />
85
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Martin Mauve<br />
7.24 Halb-Modul: Neuronale Netze<br />
Modulart<br />
Wahlpflichtmodul<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung (2 SWS)<br />
• Übungen (2 SWS)<br />
Inhalte und Qualifikationsziele<br />
• vorwärtsgerichtete neuronale Netze,<br />
• Backpropagation,<br />
• lineare adaptive Filter,<br />
• Radial-Basis-Functions-Netze,<br />
• Kompetitive Netze,<br />
• Support Vector Machines<br />
• Assoziativspeicher,<br />
• mathematische Formulierung der Aufgabenstellungen, die mit den jeweiligen Netzen gelöst werden soll.<br />
Verwendbarkeit des Moduls<br />
• im Master-Studiengang <strong>Informatik</strong> (als Wahlpflicht-Modul)<br />
• im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
86
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Teilnahme an den Übungen und einer Prüfung am Ende der Veranstaltung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
In der Regel jedes dritte Studienjahr.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Volker Aurich<br />
7.25 Halb-Modul: Primzahltests und das Faktorisierungsproblem<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Theoretischen <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übungen zur Vorlesung und/oder Seminar, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• Einige zahlentheoretische Grundlagen<br />
• Primalitätstests<br />
– Der Fermat-Test<br />
– Der Miller-Rabin-Test<br />
– Der Solovay-Strassen-Test<br />
– PRIMES ist in P<br />
• Das Faktorisierungsproblem<br />
– Probedivision<br />
– Pollards Algorithmus<br />
– Das quadratische Sieb<br />
– Andere Faktorisierungsmethoden<br />
87
Qualifikationsziele Ziel in diesem Halb-Modul ist es, den Studierenden Einblicke in einige der wichtigsten<br />
Themen, Resultate, Modellbildungen und Methoden aus diesem Gebiet zu vermitteln. Am Ende der Veranstaltung<br />
sollten Studierende wichtige Probleme und die zu ihrer Lösung entwickelten Algorithmen und algorithmischen<br />
Techniken nicht nur kennen, sondern sie auch selbstständig modifizieren und anwenden können.<br />
Empfohlene Literatur<br />
• Komplexitätstheorie und Kryptologie. Eine Einführung in Kryptokomplexität, Jörg Rothe.<br />
eXamen.Press, Springer-Verlag, Berlin, Heidelberg, xii+535 Seiten, 2008.<br />
• Complexity Theory and Cryptology. An Introduction to Cryptocomplexity, Jörg Rothe. EAT-<br />
CS Texts in Theoretical Computer Science, Springer-Verlag, Berlin, Heidelberg, xii+478 Seiten, 2005.<br />
Ergänzende Literatur<br />
• Cryptography: Theory and Practice, Douglas R. Stinson. Chapman & Hall/CRC, 3. Auflage, 2006.<br />
• Einführung in die Kryptographie, Johannes Buchmann. Springer-Verlag, Berlin, Heidelberg, 2. Auflage,<br />
2001.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Bestehen der schriftlichen Prüfung (Klausur).<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Halb-Modul findet in unregelmäßigen Abständen im Wechsel mit den Halb-Modulen<br />
• ” Randomisierte Algorithmen und Komplexitätsklassen“ (aus dem Master-Studiengang),<br />
• ” Algorithmische Eigenschaften von Wahlsystemen I“ (aus dem Bachelor-Studiengang),<br />
• ” Algorithmische Eigenschaften von Wahlsystemen II“ (aus dem Master-Studiengang) und<br />
• ” Cake-cutting Algorithms“ (aus dem Master-Studiengang)<br />
statt. Es ergänzt die Module<br />
• ” Kryptokomplexität I“ (aus dem Bachelor-Studiengang) und<br />
• ” Kryptokomplexität II“ (aus dem Master-Studiengang),<br />
kann aber auch unabhängig davon gehört werden, sofern sich die Studierenden eventuell fehlende Grundkenntnisse<br />
selbstständig aneignen.<br />
88
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Jörg Rothe<br />
7.26 Halb-Modul: Programmiersprachen II<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmodul<br />
im Bereich Softwaretechnik und Programmiersprachen<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesungen, 2 SWS<br />
• Übungen, 1 SWS<br />
• Praktische Übungen, 1 SWS<br />
Inhalte und Qualifikationsziele<br />
Dieses Module befasst sich mit der Entwicklung von Interpretern und Programmanalyse- und Verifikationswerkzeugen.<br />
Diese werden oftmals innerhalb der logischen Programmierung vollbracht.<br />
Lernziele<br />
• Interpreterentwicklung in Prolog<br />
• Programmanalyse mit abstrakter Interpretation<br />
• Tabulation in Prolog zur abstrakten Interpretation und Programmverifikation<br />
• Metaprogrammierung in Prolog (Prolog in Prolog) und Anwendungen<br />
• Partielle Auswertung und Automatische Kompilergeneration<br />
Nach erfolgreichem Abschluss des Moduls sollte der Student:<br />
• verstehen wie Programmiersprachen mit Interpretern implementiert werden können,<br />
• in der Lage sein für eine neue Programmiersprache einen Interpreter in Prolog selber zu entwickeln,<br />
• in der Lage sein einen Interpreter für Prolog in Prolog zu schreiben,<br />
• die Grundzüge der abstrakten Interpretation und der Programmverifikation mit Model Checking kennen,<br />
• einfache Analyse- und Verifikationswerkzeuge in Prolog (mit Tabulation) entwickeln können.<br />
Als Lehrbuch wird ein eigenes Skript verwendet.<br />
89
Verwendbarkeit des Moduls<br />
Master <strong>Informatik</strong> als halbes Schwerpunktmodul oder als halbes Wahlpflichtmodule für praktische <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Grundlagen der logischen Programmierung und von Prolog (zum Beispiel aus dem Modul “Softwaretechnik und<br />
Programmiersprachen”)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiche Bearbeitung der Pflichtübungen,<br />
• Bestehen der Klausur.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Normalerweise jedes Jahr im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Michael Leuschel<br />
7.27 Modul: Phylogenetik und virale Evolution<br />
Modulart<br />
Schwerpunkt- oder Wahlpflichtmodul<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 4 SWS<br />
• Programmierpraktikum, 2 SWS<br />
• Seminar, 2 SWS<br />
90
Inhalte und Qualifikationsziele<br />
• Verfahren zur Phylogenetische Inferenz<br />
• Phylodynamische Verfahren<br />
• Evolution von menschlichen Grippeviren mit Anwendung der Impfstoffauswahl<br />
• Enstehung von pandemischen Grippeviren<br />
• Datieren von evolutionaeren Ereignissen<br />
• Identifizierung von genetischen Positionen unter Selektion<br />
• Rekonstruktion von Phylogeographien<br />
Diese Vorlesung besteht aus einem theoretischen und einem anwendungsorientierten Teil:<br />
Der erste Teil orientiert sich an dem Buch Inferring Phylogenies von J. Felsenstein. Hier werden Verfahren<br />
für die Inferenz von phylogenetischen Bäumen vorgestellt, wie beispielsweise Maximum Parsimony, Maximum<br />
Likelihood und Bayessche Verfahren, sowie Distanz-basierte Verfahren, Methoden um nach dem besten Baum zu<br />
suchen, DNA-Evolutionsmodelle, Methoden zur Rekonstruktion von hypothetischen Vorläufersequenzen, sowie<br />
Methoden zum Testen von Bäumen und Modellen.<br />
Der zweite Teil konzentriert sich auf die Anwendung von Phylogenien in der Analyse von rasant evolvierenden<br />
RNA-Viren. So genannte phylodynamische Studien erlauben zum Beispiel die Analyse von viraler Verbreitung<br />
im geografischen Sinn mit Hilfe von genetischem Sequenzmaterial und phylogenetischer Inferenz. Derartige<br />
Methoden sind inzwischen ein wichtiger Bestandteil bei der Prävention, Kontrolle und dem Verständnis von<br />
viralen Erkrankungen. Die Vorlesung behandelt verschiedene Beispiele hierfür, wie die Rekonstruktion der evolutionären<br />
Ursprünge des im Jahr 2009 erschienenen Schweinegrippe-Virus, das Datieren von evolutionären<br />
Ereignissen sowie die Identifizierung von genetischen Positionen, die unter natürlicher Selektion stehen.<br />
Verwendbarkeit des Moduls<br />
Schwerpunktmodul oder Wahlpflichtmodul (Praktische <strong>Informatik</strong>) im Master-Studiengang <strong>Informatik</strong><br />
Nebenfach Bioinformatik im Bachelor- oder Master-Studiengang Biologie<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive und erfolgreiche Mitwirkung in den Übungen und im Programmierpraktikum;<br />
aktive und erfolgreiche Mitwirkung im Seminar;<br />
Prüfung zu Vorlesung und Übungen am Ende des Semesters (schriftlich oder mündlich - wird jeweils zu Beginn<br />
des Semesters angekündigt)<br />
Literatur<br />
Felsenstein, J. 2004. Inferring Phylogenies. Sinauer Associates, Sunderland, Mass.<br />
91
Häufigkeit des Angebots, modulare Schiene<br />
jedes Studienjahr, in der Regel im Sommersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Alice McHardy<br />
7.28 Halb-Modul: Randomisierte Algorithmen und Komplexitätsklassen<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Theoretischen <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übungen zur Vorlesung und/oder Seminar, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte<br />
• SAT: Das Erfüllbarkeitsproblem der Aussagenlogik<br />
– Deterministische SAT-Algorithmen<br />
– Randomisierte SAT-Algorithmen<br />
• Probabilistische Polynomialzeitklassen<br />
– PP, RP und ZPP: Monte-Carlo- und Las-Vegas-Algorithmen<br />
– BPP: Bounded-Error Probabilistic Polynomial Time<br />
– Wahrscheinlichkeitsverstärkung<br />
• Quantoren und Arthur-Merlin-Spiele<br />
– Der Mehrheitsquantor und BPP<br />
– Die Arthur-Merlin-Hierarchie<br />
• Zählklassen<br />
– Randomisierte Reduktion von SAT auf ⊕P<br />
– #P, GapP und SPP<br />
• Graphisomorphie und Lowness<br />
– Graphisomorphie ist in der Low-Hierarchie<br />
– Graphisomorphie ist in SPP<br />
92
Qualifikationsziele Ziel in diesem Halb-Modul ist es, den Studierenden Einblicke in einige der wichtigsten<br />
Themen, Resultate, Modellbildungen und Methoden aus diesem Gebiet zu vermitteln. Am Ende der Veranstaltung<br />
sollten Studierende wichtige Probleme und die zu ihrer Lösung entwickelten Algorithmen und algorithmischen<br />
Techniken nicht nur kennen, sondern sie auch selbstständig modifizieren und anwenden können.<br />
Empfohlene Literatur<br />
• Komplexitätstheorie und Kryptologie. Eine Einführung in Kryptokomplexität, Jörg Rothe.<br />
eXamen.Press, Springer-Verlag, Berlin, Heidelberg, xii+535 Seiten, 2008.<br />
• Complexity Theory and Cryptology. An Introduction to Cryptocomplexity, Jörg Rothe. EAT-<br />
CS Texts in Theoretical Computer Science, Springer-Verlag, Berlin, Heidelberg, xii+478 Seiten, 2005.<br />
Ergänzende Literatur<br />
• Computational Complexity, Christos Papadimitriou. Addison-Wesley, 2. Auflage, reprinted with corrections,<br />
1995.<br />
• Vorlesungen zur Komplexitätstheorie, Gerd Wechsung. Teubner-Verlag, Stuttgart, 2000.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Bestehen der schriftlichen Prüfung (Klausur).<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Halb-Modul findet in unregelmäßigen Abständen im Wechsel mit den Halb-Modulen<br />
• ” Primzahltests und das Faktorisierungsproblem“ (aus dem Master-Studiengang),<br />
• ” Algorithmische Eigenschaften von Wahlsystemen I“ (aus dem Bachelor-Studiengang),<br />
• ” Algorithmische Eigenschaften von Wahlsystemen II“ (aus dem Master-Studiengang) und<br />
• ” Cake-cutting Algorithms“ (aus dem Master-Studiengang)<br />
statt. Es ergänzt die Module<br />
• ” Kryptokomplexität I“ (aus dem Bachelor-Studiengang) und<br />
• ” Kryptokomplexität II“ (aus dem Master-Studiengang),<br />
kann aber auch unabhängig davon gehört werden, sofern sich die Studierenden eventuell fehlende Grundkenntnisse<br />
selbstständig aneignen.<br />
93
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Jörg Rothe<br />
7.29 Modul: Signalverarbeitung<br />
Modulart<br />
Wahlpflicht- oder Schwerpunktmodul<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
15 CP<br />
Lehrveranstaltungen<br />
• Vorlesung (4 SWS)<br />
• Übungen (4 SWS)<br />
Inhalte und Qualifikationsziele<br />
Mathematische Modellierung von diskreten und kontinuierlichen Signalen, lineare Filter, Fouriertransformation<br />
auf unterschiedlichen Gruppen, Beschreibung von Signalen und Übertragungssystemen im Frequenzbereich,<br />
Konstruktion von Filtern, Anwendungen.<br />
Verwendbarkeit des Moduls<br />
• im Master-Studiengang <strong>Informatik</strong> (als Wahlpflicht- oder Schwerpunkt-Modul)<br />
• im Bachelor-/Master-Studiengang Mathematik als Modul im Anwendungsgebiet<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Aktive und erfolgreiche Teilnahme an den Übungen und einer Prüfung am Ende der Veranstaltung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
In der Regel jedes dritte Studienjahr.<br />
94
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Volker Aurich<br />
7.30 Halb-Modul: Softwaretechnik II<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
im Bereich Softwaretechnik und Programmiersprachen<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesungen, 2 SWS<br />
• Übungen, 1 SWS<br />
• Praktische Übungen, 1 SWS<br />
Inhalte und Qualifikationsziele<br />
Dieses Module befasst sich mit der Entwicklung möglichst fehlerfreier Software mit Hilfe der formalen B-<br />
Methode.<br />
Die B-Methode wurde in den 80er Jahren von Jean-Raymond Abrial entworfen und hat eine sehr gute Werkzeugunterstützung<br />
(AtelierB, BToolkit, B4Free, ProB). Sie ist außerdem eine der am weitesten verbreiteten formalen<br />
Methoden in Europa. Ein Paradebeispiel der formalen Entwicklungsweise in B ist das erfolgreiche METEOR<br />
Projekt (Steuersystem für die automatischen Züge der Linie 14 der Pariser U-Bahn), bei dem 100,000 Zeilen<br />
von B mit Hilfe von 28,000 Beweisen in eine robuste Implementierung übersetzt wurde.<br />
Lernziele<br />
• Kenntnisse der B Sprache (Syntax und Semantik)<br />
• Spezifikationen mit B schreiben können<br />
• Kenntnisse der B Werkzeuge (hauptsächlich B4Free und ProB)<br />
• Spezifikationen auf Fehler untersuchen können<br />
• Einfache Spezifikationen mit Hilfe der Beweisumgebung (Click N Prove für B4Free) beweisen können<br />
• Grundlagen der Verfeinerung<br />
• Entwicklung einer kompletten Implementation von einer einfachen B Spezifikation<br />
Empfohlene Literatur<br />
• Steve Schneider, The B-Method: An Introduction,<br />
95
Verwendbarkeit des Moduls<br />
Master <strong>Informatik</strong> als Schwerpunktmodul oder als Wahlpflichtmodul für praktische <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Grundlagen in mathematischer Logik (zum Beispiel aus dem Modul “Softwaretechnik und Programmiersprachen”)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiche Bearbeitung der Pflichtübungen,<br />
• Bestehen der Klausur.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Normalerweise jedes Jahr im Wintersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Michael Leuschel<br />
7.31 Halb-Modul: Softwaretechnik III<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
im Bereich Softwaretechnik und Programmiersprachen<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesungen in Seminarform, 2 SWS<br />
• Übungen, praktische Übungen, Eigenarbeit, 2 SWS<br />
96
Inhalte und Qualifikationsziele<br />
Dieses Module befasst sich mit der vollautomatischen Verifikation von Hardware und Software mit Hilfe von<br />
Model Checking Algorithmen und Werkzeugen.<br />
• Kenntnisse der temporalen Logiken LTL, CTL und CTL*<br />
• Spezifikationen in LTL, CTL, CTL* lesen und schreiben können<br />
• Kenntnisse der Model Checking Algorithmen (CTL, LTL) und der theoretischen Grundlagen (Büchi Automaten)<br />
• Kenntnisse der Model Checking Werkzeuge (hauptsächlich SMVund Spin)<br />
• Grundlagen fortgeschrittener Methoden (Binary Decision Diagrams, Partial Order Reduction, Symmetrie,...)<br />
• Entwicklung eigener Spezifikationen.<br />
Empfohlene Literatur Als Lehrbuch wird verwendet:<br />
• M. Clarke, O. Grumberg und D.A. Peled, Model Checking, MIT Press.<br />
Verwendbarkeit des Moduls<br />
Master <strong>Informatik</strong> als halbes Schwerpunktmodul oder als halbes Wahlpflichtmodule für praktische <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Grundlagen in mathematischer Logik (zum Beispiel aus dem Modul “Softwaretechnik und Programmiersprachen”)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreicher Vortrag eines Kapitels des Lehrbuches,<br />
• Eigenständige Entwicklung einer Spezifikation und Überprüfung mit Hilfe von Spin und SMV<br />
• mündliche Prüfung<br />
Häufigkeit des Angebots, modulare Schiene<br />
Normalerweise jedes Jahr im Sommersemester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Michael Leuschel<br />
97
7.32 Halb-Modul: Systemprogrammierung<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Praktischen/Technischen <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung 2 SWS<br />
• Übung 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• PC-Hardware<br />
• Linux Kernel<br />
• Linux Treiber<br />
• Windows NT Treiber<br />
Im Zentrum stehen die Betriebssysteme Windows 7 und Linux, sowie deren Kern- und Treiberarchitekturen,<br />
basierend auf moderner PC-Hardware.<br />
Literatur<br />
• Messmer Hans Peter und Dembowski K.: PC-Hardwarebuch, Addison-Wesley 2006<br />
• Rubini Alessandro: Linux Device Drivers, O’Reilly, 2005<br />
• Dokumentation des Windows DDKs<br />
• Intel Prozessor Manuals<br />
Qualifikationsziele Die Studierenden sollen ein tieferes Verständnis der Wechselwirkung zwischen PC-Hardund<br />
Software erreichen. Die vermittelten Konzepte sollen sie in eigenen Worten erklären können. Ferner sollen<br />
die Teilnehmer am Ende in der Lage sein die erlernten Konzepte in praktischen Übungen an PC-Hardware<br />
anwenden zu können. Die Übungen umfassen im Wesentlich Kern- und Treiberprogrammierung unter Linux.<br />
Verwendbarkeit des Moduls<br />
Wahlpflichtmodul (Technische <strong>Informatik</strong>) oder Schwerpunktmodul im Master-Studiengang <strong>Informatik</strong><br />
98
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiche Bearbeitung von Übungsaufgaben<br />
• Abschließende Prüfung am Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
alle zwei Jahre<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Michael Schöttner<br />
7.33 Halb-Modul: Transaktionsverwaltung<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Datenbanken und Informationssysteme)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Transaktionsverwaltung“, 2 SWS<br />
• Übungen zu ” Transaktionsverwaltung“, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Transaktionseigenschaften und -anforderungen (ACID, ...)<br />
• Serialisierbarkeit (Final-State-, Sicht-, Konfliktserialisierbarkeit)<br />
• Abbrucheigenschaften (Rücksetzbarkeit, Vermeidung kaskadierender Abbrüche, Striktheit)<br />
• Sperrverfahren und -protokolle<br />
• Recovery<br />
99
• Strukturierte Transaktionsmodelle<br />
• ACTA<br />
Es werden vertiefte Kenntnisse über die Transaktionseigenschaften im Mehrbenutzerbetrieb und Konzepte zur<br />
Erreichung dieser Eigenschaften in realen Systemen erworben. Durch die Übungen wird die Anwendung dieser<br />
Kenntnisse vermittelt.<br />
Empfohlene Literatur<br />
• P. Bernstein, V. Hadzilacos, N. Goodman: Concurrency Control and Recovery in Database Systems,<br />
Addison-Wesley, Reading, MA, 1987.<br />
• J. Gray, A. Reuter: Transaction Processing: Concepts and Techniques, Morgan Kaufmann Publishers, San<br />
Mateo, CA, 1993.<br />
• G. Weikum, G. Vossen: Transactional Information Systems: Theory, Algorithms, and the Practice of<br />
Concurrency Control and Recovery, Morgan Kaufmann Publishers, 2001.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlplichtbereich)<br />
• Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Modul ” Datenbanksysteme“<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen<br />
• erfolgreiches Bearbeiten der Übungsaufgaben<br />
• abschließende Prüfung (i.d.R. mündlich)<br />
Häufigkeit des Angebots, modulare Schiene<br />
• unregelmäßig<br />
• wird im Wechsel mit den Halbmodulen “Data Warehouses“, Knowledge Discovery in Databases“,<br />
”<br />
” Multimedia-Datenbanksysteme“ und Verteilte und Föderierte Datenbanken“ angeboten, so dass jedes<br />
”<br />
Semester mindestens eines dieser Halbmodule angeboten wird<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Stefan Conrad<br />
100
7.34 Halb-Modul: Verteilte und Föderierte Datenbanken<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
in der Praktischen <strong>Informatik</strong> (Datenbanken und Informationssysteme)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Verteilte und Föderierte Datenbanken“, 2 SWS<br />
• Übungen/Seminar zu ” Verteilte und Föderierte Datenbanken“ , 2 SWS<br />
Inhalte und Qualifikationsziele<br />
• Entwurf verteilter Datenbanken<br />
• Verteilte Anfragebearbeitung<br />
• Verteilte Transaktionen<br />
• Replikationsverfahren<br />
• Föderierte Datenbanken: Architekturen<br />
• Entwurf Föderierter Datenbanken: Schema Matching und Schema Mapping<br />
• Multidatenbanksprachen<br />
• Transaktionen in Föderierten Datenbanksystemen<br />
Es werden vertiefte Kenntnisse über verteilte und föderierte Datenbank- und Informationssystem–Architekturen<br />
sowie zu Konzepten des Enwurfs und der Realisierung solcher Architekturen erworben. Durch Übungen und/oder<br />
Seminar werden die Anwendung dieser Kenntnisse sowie darüber hinaus gehende Aspekte vermittelt.<br />
Empfohlene Literatur<br />
• T. Özsu, P. Valduriez: Distributed Database Systems, Prentice Hall, 1999.<br />
• P. Dadam: Verteilte Datenbanken und Client/Server-Systeme, Springer-Verlag, 1996.<br />
• S. Conrad: Föderierte Datenbanksysteme, Springer-Verlag, 1997.<br />
• U. Leser, F. Naumann: Informationsintegration, dpunkt-verlag, 2006.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlplichtbereich)<br />
• Master-Studiengang Mathematik (Nebenfach)<br />
101
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Modul ” Datenbanksysteme“<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Teilnahme an den Übungen bzw. dem Seminar<br />
• erfolgreiches Bearbeiten der Übungsaufgaben bzw. Anfertigen einer angemessenen Seminarausarbeitung<br />
und Halten eines Vortrags<br />
• abschließende Prüfung (i.d.R. mündlich)<br />
Häufigkeit des Angebots, modulare Schiene<br />
• unregelmäßig<br />
• wird im Wechsel mit den Halbmodulen ” Knowledge Discovery in Databases“, ” Multimedia-<br />
Datenbanksysteme“, ” Transaktionsverwaltung“ und ” Data Warehouses“ angeboten, so dass jedes Semester<br />
mindestens eines dieser Halbmodule angeboten wird<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Stefan Conrad<br />
7.35 Halb-Modul: Verteilte und parallele Programmierung<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Praktischen <strong>Informatik</strong> (Verteilte Systeme)<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung, 2 SWS<br />
• Übung: 2 SWS<br />
102
Inhalte und Qualifikationsziele<br />
• Verteilte Objektsysteme: Corba, WCF<br />
• Web Anwendungen: CGI, Services, Servlets, Ajax<br />
• Message Queues: JMS<br />
• Message Passing Interface (MPI)<br />
• Shared Memory: OpenMP, transactional memory<br />
• GPU Programmierung: OpenCL<br />
• MapReduce: Hadoop<br />
• Google AppEngine: AppScale<br />
Empfohlene Literatur Wird in der Vorlesung bekannt gegeben.<br />
Qualifikationsziele Die Studierenden sollen ein tieferes Verständnis für die Programmierung verteilter und<br />
paralleler Systeme erreichen. Hierzu werden verschiedene Programmierparadigmen anhand konkreter Beispiele<br />
vorgestellt. Die vermittelten Konzepte sollen die Teilnehmer(innen) in eigenen Worten erklären können. Ferner<br />
sollen sie in der Lage sein die erlernten Konzepte praktisch anzuwenden.<br />
Verwendbarkeit des Moduls<br />
Wahlpflichtmodul (Praktische <strong>Informatik</strong>) oder Schwerpunktmodul im Master-Studiengang <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Modul: “Grundlagen verteilter Systeme”<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• Erfolgreiche Bearbeitung von Übungsaufgaben<br />
• Abschließende Prüfung am Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
alle 1,5 Jahre<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Michael Schöttner<br />
103
7.36 Halb-Modul: Vertiefung Rechnernetze<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls<br />
im Bereich Rechnernetze und Mobilkommunikation<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ”Vertiefung Rechnernetze”, 2 SWS<br />
• Durcharbeiten von wissenschaftlichen Veröffentlichungen, 2SWS<br />
Inhalte und Qualifikationsziele<br />
Rechnernetze im allgemeinen und das Internet im besonderen wurden seit den frühen Anfängen des ARPANET<br />
maßgeblich durch wisschenschaftliche Arbeiten geprägt. Ziel der Veranstaltung ist es, das Grundwissen aus der<br />
Vorlesung Rechnernetze durch ein intensives Studium der richtungsweisenden Veröffentlichungen im Bereich<br />
Rechnernetze zu vertiefen. Um dieses Lernziel zu erreichen wird folgende Lehrform verwendet: jede Wochen<br />
wird den Teilnehmern eine wissenschaftlichen Veröffentlichungen genannt. Diese ist prinzipiell in englischer<br />
Sprache verfasst. Die Teilnehmer arbeiten diese Veröffentlichungen selbständig durch, so dass sie in der Lage<br />
sind, deren Inhalt vor allen anderen Teilnehmern an der Tafel zu präsentieren. Jede Wochen findet eine Diskussionsveranstaltung<br />
statt, bei der zufällig ausgewählte Teilnehmer die Veröffentlichungen vorstellen. Anschließend<br />
diskutieren alle Teilnehmer, sowie die Mitarbeiter des Lehrstuhls, die Veröffentlichungen.<br />
Zu dieser Veranstaltung gibt es kein Lehrbuch.<br />
Verwendbarkeit des Moduls<br />
• Wahlpflicht- oder Vertiefungshalbmodul im Master-Studiengang <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Empfohlene Vorkenntnisse<br />
Modul ” Rechnernetze“.<br />
104
Voraussetzungen für die Vergabe von Kreditpunkten<br />
• aktive Mitarbeit in der Vorlesung.<br />
• aktive Vorbereitung,<br />
• erfolgreiche Teilnahme an der Abschlussprüfung.<br />
Häufigkeit des Angebots, modulare Schiene<br />
Jedes Wintersemester.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Prof. Dr. Martin Mauve<br />
7.37 Halb-Modul: Zeichnen von Graphen<br />
Modulart<br />
Teil eines Wahlpflicht- oder Schwerpunktmoduls in der Theoretischen <strong>Informatik</strong><br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
7,5 CP<br />
Lehrveranstaltungen<br />
• Vorlesung ” Zeichnen von Graphen“, 2 SWS,<br />
• dazu Übungen, 2 SWS<br />
Inhalte und Qualifikationsziele<br />
Inhalte Beim Zeichnen von Graphen betrachtet man das Problem der Visualisierung struktureller Informationen,<br />
welche sich als Graphen darstellen lassen. Das automatische Zeichnen von Graphen hat wichtige<br />
Anwendungen in vielen Bereichen der <strong>Informatik</strong>, wie z.B. Datenbanken, VLSI- und Netzwerk-Design, Software<br />
Engineering und visuelle Benutzerschnittstellen. Dieses Modul befasst sich mit verschiedenen Arten zum<br />
Zeichnen von Graphen und Algorithmen, welche diese Zeichnungen konstruieren.<br />
• Grundlagen<br />
• Zeichnen von Bäumen<br />
• Zeichnen von planaren Graphen<br />
• Flüsse und orthogonale Zeichnungen<br />
• Hierarchische Zeichenverfahren<br />
• Kräftebasierte Zeichenverfahren<br />
• Software<br />
105
Qualifizierungsziele Studierende, die das Halb-Modul erfolgreich absolviert haben, besitzen anschließend ein<br />
breites und vertieftes Verständnis für verschiedene Zeichenvarianten für Graphen und bekannte Algorithmen,<br />
welche diese konstruieren.<br />
Ergänzende Literatur<br />
• G. Di Battista, P. Eades, I.G. Tollis, R. Tamassia, Graph Drawing: Algorithms for the Visualization<br />
of Graphs, Prentice Hall, 1999.<br />
• M. Jünger, P. Mutzel, Graph Drawing Software, Springer Verlag, 2004.<br />
• M. Kaufmann, D. Wagner, Drawing Graphs: Methods and Models, Springer Verlag, 2001.<br />
• T. Nishizeki, MD S. Rahman, Planar Graph Drawing, World Scientific Pub Co, 2004.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong> (Schwerpunkt- und Wahlpflichtbereich)<br />
• Diplom- und Master-Studiengang Mathematik (Nebenfach)<br />
Teilnahmevoraussetzungen<br />
Bachelor-Studierende müssen folgende Module erfolgreich abgeschlossen haben:<br />
• Modul “Grundlagen der Softwareentwicklung und Programmierung” (<strong>Informatik</strong> 1)<br />
• Modul “Grundlagen der Technischen <strong>Informatik</strong>” (<strong>Informatik</strong> 2)<br />
• Modul “Grundlagen der Algorithmen und Datenstrukturen” (<strong>Informatik</strong> 3)<br />
• Modul “Grundlagen der Theoretischen <strong>Informatik</strong>” (<strong>Informatik</strong> 4)<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
aktive Mitarbeit in den Übungen, Abgabe der Übungsaufgaben, Bestehen der Klausur zum Ende des Semesters<br />
Häufigkeit des Angebots, modulare Schiene<br />
Dieses Halb-Modul wird in unregelmäßigen Abständen angeboten.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Priv.-Doz. Dr. Frank Gurski<br />
106
Kapitel 8<br />
Projektarbeit (Master-Studium)<br />
8.1 Modul: Projektarbeit<br />
Modulart<br />
Pflichtmodul<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
20 CP<br />
Lehrveranstaltungen<br />
Die Projektarbeit wird in der Regel in der Arbeitsgruppe durchgeführt, in der später dann auch die Masterarbeit<br />
geschrieben wird. Jede Arbeitsgruppe baut dieses Modul so auf, dass es am besten auf eine Masterarbeit<br />
vorbereitet. Die Studierenden werden auch in die Forschungsarbeiten der Arbeitsgruppe eingebunden. Die Projektarbeit<br />
kann auch als Grueppenarbeit durchgeführt werden, sofern die individuelle Leistung hinreichend<br />
festgestellt werden kann.<br />
Folgendes sind typische Bestandteile der Projektarbeit:<br />
• Seminare/Projektpräsentationen,<br />
• individuelle Entwurfs- und Programmieraufgaben,<br />
• Durchführen von Experimenten oder Evaluierungen,<br />
• Lesen und Verarbeiten von Fachliteratur,<br />
• Mitwirken in Forschungsprojekten.<br />
Inhalte und Qualifikationsziele<br />
In diesem Modul soll der Student das selbständige wissenschaftliche Arbeiten erwerben und sich auf die Masterarbeit<br />
vorbereiten.<br />
Verwendbarkeit des Moduls<br />
Master <strong>Informatik</strong><br />
107
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Die konkreten Anforderungen hängen von der zu bearbeitenden Aufgabenstellung ab. Daher sind die Kriterien<br />
zum Erwerb der Kreditpunkte zu Beginn der Projektarbeit individuell festzulegen.<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Semester (je Arbeitsgruppe i.d.R. mindestens jährlich)<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Die Dozenten der <strong>Informatik</strong> sowie gegebenenfalls der Mathematisch-Naturwissenschaftlichen Schwerpunktfächer<br />
108
Kapitel 9<br />
Wahlbereich (Master-Studium)<br />
9.1 Modul: Individuelle Vertiefung<br />
Modulart<br />
Pflicht / Wahlpflicht<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
10 CP<br />
Lehrveranstaltungen<br />
Der Student muss hier mindestens 10 CP in frei wählbaren Lehrveranstaltungen erwerben.<br />
Inhalte und Qualifikationsziele<br />
Dieses Modul dient der fachlichen Vertiefung oder Ergänzung.<br />
Verwendbarkeit des Moduls<br />
Master <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
keine<br />
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Es können nur Lehrveranstaltungen eingebracht werden. Projektarbeiten in der Industrie können somit nicht<br />
angerechnet werden. Folgende Lehrveranstaltungen können prinzipiell angerechnet werden (außer wenn diese<br />
Kurse vorher schon für den Bachelor-Abschluss angerechnet worden sind):<br />
• Mathematik-Vorlesungen,<br />
• Vorlesungen aus dem im Bachelor-Studiengang absolvierten Nebenfach,<br />
109
• CISCO Netzwerk Kurse des Rechenzentrums der <strong>Universität</strong> <strong>Düsseldorf</strong>,<br />
• Veranstaltungen des Studium Universale bis max. 5 CP,<br />
• juristische Kurse über Patentrechte, Datenschutz oder andere Themen mit Relevanz für die <strong>Informatik</strong>,<br />
• Sprachkurse der <strong>Universität</strong> <strong>Düsseldorf</strong>, mit maximal 5 CP insgesamt<br />
Häufigkeit des Angebots, modulare Schiene<br />
jedes Semester<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Dozenten der jeweiligen Fächer<br />
110
Kapitel 10<br />
Masterarbeit<br />
10.1 Modul: Masterarbeit<br />
Modulart<br />
Pflicht<br />
Studiengang<br />
Master-Studiengang <strong>Informatik</strong><br />
Kreditpunkte<br />
30 CP<br />
Lehrveranstaltungen<br />
—<br />
Inhalte und Qualifikationsziele<br />
Mit der schriftlichen Abschlussarbeit sollen die Studierenden nachweisen, dass sie in der Lage sind, innerhalb einer<br />
vorgegebenen Frist (von 6 Monaten) ein Thema aus dem von ihnen gewählten Schwerpunkfach selbstständig<br />
zu bearbeiten und angemessen darzustellen. Die Masterarbeit muss in deutscher oder englischer Sprache verfasst<br />
und in einem mündlichen Vortrag präsentiert werden.<br />
Verwendbarkeit des Moduls<br />
• Master-Studiengang <strong>Informatik</strong><br />
Teilnahmevoraussetzungen<br />
Für die Anmeldung zur Masterarbeit müssen mindestens 60 der im Rahmen des Masterstudiums zu erwerbenden<br />
Kreditpunkte nachgewiesen werden.<br />
Das Thema der Masterarbeit wird aus dem Gebiet des gewählten Schwerpunktfachs vergeben. Dazu sollten<br />
üblicherweise beide Module im Schwerpunktfach erfolgreich abgeschlossen sein.<br />
111
Voraussetzungen für die Vergabe von Kreditpunkten<br />
Erfolgreiche Bearbeitung des Themas und Darstellung in einer fristgerecht abgegebenen Ausarbeitung (Masterarbeit);<br />
Präsentation in einem mündlichen Vortrag mit Diskussion<br />
Häufigkeit des Angebots, modulare Schiene<br />
Bei Vorliegen der Voraussetzungen ist der Beginn der Abschlussarbeit jederzeit möglich, d.h. die Vergabe von<br />
Themen ist nicht an bestimmte Zeiten im Semester gebunden.<br />
Modulbeauftragte und hauptamtliche Lehrende<br />
Dozenten der <strong>Informatik</strong> sowie der als Schwerpunktfach wählbaren mathematisch-naturwissenschaftlichen<br />
Fächer<br />
112