TI5009 Algorithmen: Entwurf, Analyse, Implementierung
Modulverantwortliche
- Prof. Dr. Andreas Gogol-Döring
Lehrende
- Prof. Dr. Michael Elberfeld
- Prof. Dr. Andreas Gogol-Döring
Notwendige Voraussetzungen zur Teilnahme
Keine
Kurzbeschreibung
Dieser Kurs behandelt algorithmische Techniken, ihren Einsatz im Algorithmenentwurf und die Realisierung der Algorithmen mit modernen programmiersprachlichen Mitteln.
Inhalte
- Analyse von Algorithmen
- Algorithmische Entwurfstechniken: Divide-and-Conquer, Dynamic Programming, Branch-and-Bound, Succinct Data Structures, etc.
- Techniken für reale Maschinen: Cache Efficiency, Bit-level Parallelism, etc.
- Algorithm Engineering: Anwendung der Entwurfstechniken auf diverse Probleme; Messung und Optimierung der erreichten Effizienz.
Qualifikations- und Lernziele
Fachkompetenzen
- Die Studierenden können die wichtigsten Entwurfstechniken für Algorithmen benennen und erläutern.
- Sie können sowohl theoretische als auch auf reale Maschinen abzielende Methoden zur Analyse und Optimierung von Algorithmen benennen und erläutern.
Methodenkompetenzen (fachlich & überfachlich)
- Die Studierenden können algorithmische Techniken kreativ zur Lösung algorithmischer Probleme einsetzen.
- Sie sind in der Lage, Algorithmen und Datenstrukturen auf die Anwendung hin zu entwerfen, effizient zu implementieren und zu optimieren.
- Sie können die Adäquatheit der von ihnen gewählten Problemlösungen begründen, ihre Leistungsparameter abschätzen und ihre Korrektheit nachweisen.
Sozialkompetenzen
- Die Studierenden können im Team Lösungen für algorithmische Probleme erarbeiten und erläutern.
- Sie können ihre Lösungen auf unmissverständliche und formal korrekt Weise kommunizieren.
Selbstkompetenzen
- Die Studierenden können selbständig Lösungen für algorithmische Probleme erarbeiten und erläutern.
- Die Studierenden sind in der Lage, den Nutzen algorithmischer Techniken in ihrem zukünftigen beruflichen Werdegang als Softwareentwickler einzuschätzen.
ECTS-Leistungspunkte (CrP)
- 6 CrP
- Arbeitsaufwand 180 Std.
- Präsenzzeit 60 Std.
- Selbststudium 120 Std.
Lehr- und Lernformen
- 4 SWS
- Seminaristischer Unterricht 4 SWS
Studiensemester
- Informatik (M.Sc. 2010)
Dauer
1 Semester
Häufigkeit des Angebots
Nach Bedarf
Unterrichtssprache
Deutsch
Bonuspunkte
Nein
Bonuspunkte werden gemäß § 9 (4) der Allgemeinen Bestimmungen vergeben. Art und Weise der Zusatzleistungen wird den Studierenden zu Veranstaltungsbeginn rechtzeitig und in geeigneter Art und Weise mitgeteilt.
Prüfungsleistungen
Prüfungsvorleistung: Hausübungen (Anzahl der Hausübungen wird den Studierenden rechtzeitig und in geeigneter Weise bekannt gegeben)
Prüfungsleistung: Mündliche Prüfung, Klausur oder Projekt (Art des Leistungsnachweises wird den Studierenden rechtzeitig und in geeigneter Weise bekannt gegeben.)
Benotung
Die Bewertung des Moduls erfolgt gemäß §§ 9, ggf. 12 (Teilleistungen), ggf. 18 (Arbeiten, Kolloquien) der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung).
Verwendbarkeit
Gemäß § 5 der Allgemeinen Bestimmungen (Teil I der Prüfungsordnung) Verwendbarkeit in allen Masterstudiengänge der THM möglich.
Literatur, Medien
- Gogol-Döring, A.; Letschert, T.: Algorithmen für Dummies. Wiley.
- Cormen, T. H.; Leiserson, C. E.; Rivest, R.; Stein, C.; Molitor, P.: Algorithmen. Eine Einführung. De Gruyter.
- Skiena; S.: The Algorithm Design Manual. Springer.
- Robert, Y.; Benoit, A.; Vivien, F.: A Guide To Algorithm Design. Paradigms, Methods, and Complexity Analysis. Chapman & Hall / CRC Press.
Rechtliche Hinweise
- Diese Informationen geben den in den Online-Diensten für Studierende erfassten Datenbestand wieder.
- Die rechtskräftigen und damit verbindlichen Fassungen der Modulhandbücher finden Sie im Amtlichen Mitteilungsblatt der THM (AMB).
- Alle gültigen Prüfungsbestimmungen für die THM-Studiengänge können Sie außerdem in komfortabler Leseversion über den Downloadbereich auf der Homepage des Prüfungsamts einsehen.