Algorithms - Interactive curriculae of TU Ilmenau
The interactive curriculae provide information on the degree programmes offered by the TU Ilmenau.
Please refer to the respective study and examination rules and regulations for the legally binding curricula (Annex Curriculum).
You can find all details on planned lectures and classes in the course catalogue.
Please note that this page is no longer updated. All modules and study plans from PO version 2021 onwards (Bachelor and Master study programs) are now available on the Campus Portal.
| module properties module number 200080 - common information | |
|---|---|
| module number | 200080 |
| department | Department of Computer Science and Automation |
| ID of group | 2242 (Algorithms) |
| module leader | Prof. Dr. Christoph Berkholz |
| language | Englisch |
| term | Sommersemester |
| previous knowledge and experience | General mathematical maturity:
Algorithms and data structures:
|
| learning outcome | The students know the basic principles of the design and the analysis of algorithms: correctness and running time. They know the Big-O notation and its use for analyzing running times. They know basic number theoretical algorithms (addition, multiplication, division, modular multiplication, modular exponentiation, greatest common divisor), they know basic primality tests and the RSA encryption scheme. The students know the divide-and-conquer paradigm with the master theorem (and its proof) and the most important examples like Karatsuba's algorithm, Strassen's algorithm, Mergesort, Quicksort, and the Fast Fourier Transform. They know basic techniques for orienting oneself in graphs and digraphs: BFS, DFS, Kosaraju's algorithm for strongly connected components. They know Dijkstra's algorithm for calculating shortest paths in graphs, and the data type priority queue with its most important implementation techniques "binary heap" and "d-ary heap". Out of the family of greedy algorithms they know Kruskal's algorithm and Prim's algorithm for the problem of a mimimum spanning tree, including the correctness proof and the runtime analysis including the use of the union find data structure. As another greedy algorithm they know Huffman's algorithm for an optimal binary code. In the context of the dynamic programming paradigm the students know the principal approach as well as the specific algorithms for Edit distance, all-pairs shortest paths (Floyd-Warshall), single-source shortest paths with edge lengths (Bellman-Ford), knapsack problems and matrix chain multiplication. They know the basic definitions and facts from NP-completeness theory, in particular the implications one gets (if P <> NP) from the fact that a search problem is NP-complete as well as central examples of NP-complete problems. Methodenkompetenz: The students can formulate the relevant problems and can describe the algorithms that solve the problems. They are able to carry out the algorithms for example inputs, to prove correctness and analyze the running time. They are able to apply algorithm paradigms to create algorithms in situations similar to those treated in the course. They can explain the significance of the concept of NP-completeness and identify some selected NP-complete problems. Sozialkompetenz: The international students, coming from different countries and different backgrounds, have experienced and trained working together despite of such differences. The lectures make it necessary to respect the right of all other students to a concentrated working atmosphere, while being open for discussion of the subject matter. The students can participate in the discussion of the material in an organized manner. The students can participate actively and interactively in the discussion of the exercise problems in the discussion sessions. They have also experienced the possibility of different approaches to an algorithmic problem within the rules of the game and the state of the art. The (voluntary) practice sessions further have improved the students' ability to explore and assess the significance of the theoretical results of the lecture. |
| content | The course covers a variety of problems and algorithms along different algorithm design strategies. It includes the formal specification and complexity analysis of problems as well as the runtime analysis and proof of correctness of algorithms. The planned content is:
|
| media of instruction and technical requirements for education and examination in case of online participation | Blackboard, slide projection, exercise sheets, Moodle platform for communication |
| literature / references |
|
| evaluation of teaching | |
| Details reference subject | |
|---|---|
| module name | Algorithms |
| examination number | 2200734 |
| credit points | 5 |
| SWS | 3 (2 V, 1 Ü, 0 P) |
| on-campus program (h) | 33.75 |
| self-study (h) | 116.25 |
| obligation | obligatory module |
| exam | written examination performance, 90 minutes |
| details of the certificate | |
| link to Moodle course | https://moodle.tu-ilmenau.de/course/view.php?id=2847 |
| teacher | Prof. Berkholz |
| signup details for alternative examinations | |
| maximum number of participants | |
| Details in degree program Master Research in Computer and Systems Engineering 2021 | |
|---|---|
| module name | Algorithms |
| examination number | 2200734 |
| credit points | 5 |
| on-campus program (h) | 34 |
| self-study (h) | 116 |
| obligation | obligatory module |
| exam | written examination performance, 90 minutes |
| details of the certificate | |
| link to Moodle course | https://moodle.tu-ilmenau.de/course/view.php?id=2847 |
| signup details for alternative examinations | |
| maximum number of participants | |

