Suchergebnis: Katalogdaten im Herbstsemester 2018
Informatik Bachelor | ||||||
Grundlagenfächer | ||||||
Nummer | Titel | Typ | ECTS | Umfang | Dozierende | |
---|---|---|---|---|---|---|
252-0057-00L | Theoretische Informatik | O | 7 KP | 4V + 2U | J. Hromkovic, H.‑J. Böckenhauer | |
Kurzbeschreibung | Konzepte zur Beantwortung grundlegender Fragen wie: a) Was ist völlig automatisiert machbar (algorithmisch lösbar) b) Wie kann man die Schwierigkeit von Aufgaben (Problemen) messen? c) Was ist Zufall und wie kann er nützlich sein? d) Was ist Nichtdeterminisus und welche Rolle spielt er in der Informatik? e) Wie kann man unendliche Objekte durch Automaten und Grammatiken endlich darstellen? | |||||
Lernziel | Vermittlung der grundlegenden Konzepte der Informatik in ihrer geschichtlichen Entwicklung | |||||
Inhalt | Die Veranstaltung ist eine Einführung in die Theoretische Informatik, die die grundlegenden Konzepte und Methoden der Informatik in ihrem geschichtlichen Zusammenhang vorstellt. Wir präsentieren Informatik als eine interdisziplinäre Wissenschaft, die auf einer Seite die Grenzen zwischen Möglichem und Unmöglichem und die quantitativen Gesetze der Informationsverarbeitung erforscht und auf der anderen Seite Systeme entwirft, analysiert, verifiziert und implementiert. Die Hauptthemen der Vorlesung sind: - Alphabete, Wörter, Sprachen, Messung der Informationsgehalte von Wörtern, Darstellung von algorithmischen Aufgaben - endliche Automaten, reguläre und kontextfreie Grammatiken - Turingmaschinen und Berechenbarkeit - Komplexitätstheorie und NP-Vollständigkeit - Algorithmenentwurf für schwere Probleme | |||||
Skript | Die Vorlesung ist detailliert durch das Lehrbuch "Theoretische Informatik" bedeckt. | |||||
Literatur | Basisliteratur: 1. J. Hromkovic: Theoretische Informatik. 5. Auflage, Springer Vieweg 2014. 2. J. Hromkovic: Theoretical Computer Science. Springer 2004. Weiterführende Literatur: 3. M. Sipser: Introduction to the Theory of Computation, PWS Publ. Comp.1997 4. J.E. Hopcroft, R. Motwani, J.D. Ullman: Einführung in die Automatentheorie, Formale Sprachen und Komplexitätstheorie. Pearson 2002. 5. I. Wegener: Theoretische Informatik. Teubner Weitere Übungen und Beispiele: 6. A. Asteroth, Ch. Baier: Theoretische Informatik | |||||
Voraussetzungen / Besonderes | Während des Semesters werden zwei freiwillige Probeklausuren gestellt. | |||||
252-0061-00L | Systems Programming and Computer Architecture | O | 7 KP | 4V + 2U | T. Roscoe | |
Kurzbeschreibung | Introduction to systems programming. C and assembly language, floating point arithmetic, basic translation of C into assembler, compiler optimizations, manual optimizations. How hardware features like superscalar architecture, exceptions and interrupts, caches, virtual memory, multicore processors, devices, and memory systems function and affect correctness, performance, and optimization. | |||||
Lernziel | The course objectives are for students to: 1. Develop a deep understanding of, and intuition about, the execution of all the layers (compiler, runtime, OS, etc.) between programs in high-level languages and the underlying hardware: the impact of compiler decisions, the role of the operating system, the effects of hardware on code performance and scalability, etc. 2. Be able to write correct, efficient programs on modern hardware, not only in C but high-level languages as well. 3. Understand Systems Programming as a complement to other disciplines within Computer Science and other forms of software development. This course does not cover how to design or build a processor or computer. | |||||
Inhalt | This course provides an overview of "computers" as a platform for the execution of (compiled) computer programs. This course provides a programmer's view of how computer systems execute programs, store information, and communicate. The course introduces the major computer architecture structures that have direct influence on the execution of programs (processors with registers, caches, other levels of the memory hierarchy, supervisor/kernel mode, and I/O structures) and covers implementation and representation issues only to the extend that they are necessary to understand the structure and operation of a computer system. The course attempts to expose students to the practical issues that affect performance, portability, security, robustness, and extensibility. This course provides a foundation for subsequent courses on operating systems, networks, compilers and many other courses that require an understanding of the system-level issues. Topics covered include: machine-level code and its generation by optimizing compilers, address translation, input and output, trap/event handlers, performance evaluation and optimization (with a focus on the practical aspects of data collection and analysis). | |||||
Skript | - C programmnig - Integers - Pointers and dynamic memory allocation - Basic computer architecture - Compiling C control flow and data structures - Code vulnerabilities - Implementing memory allocation - Linking - Floating point - Optimizing compilers - Architecture and optimization - Caches - Exceptions - Virtual memory - Multicore - Devices | |||||
Literatur | The course is based in part on "Computer Systems: A Programmer's Perspective" (3rd Edition) by R. Bryant and D. O'Hallaron, with additional material. | |||||
Voraussetzungen / Besonderes | 252-0029-00L Parallel Programming 252-0028-00L Design of Digital Circuits | |||||
401-0213-16L | Analysis II | O | 5 KP | 2V + 2U | E. Kowalski | |
Kurzbeschreibung | Differential and Integral calculus in many variables, vector analysis. | |||||
Lernziel | Differential and Integral calculus in many variables, vector analysis. | |||||
Inhalt | Differential and Integral calculus in many variables, vector analysis. | |||||
Literatur | Für allgemeine Informationen, sehen Sie bitte die Webseite der Vorlesung: Link | |||||
401-0663-00L | Numerical Methods for CSE | O | 8 KP | 4V + 2U + 1P | R. Alaifari | |
Kurzbeschreibung | The course gives an introduction into fundamental techniques and algorithms of numerical mathematics which play a central role in numerical simulations in science and technology. The course focuses on fundamental ideas and algorithmic aspects of numerical methods. The exercises involve actual implementation of numerical methods in C++. | |||||
Lernziel | * Knowledge of the fundamental algorithms in numerical mathematics * Knowledge of the essential terms in numerical mathematics and the techniques used for the analysis of numerical algorithms * Ability to choose the appropriate numerical method for concrete problems * Ability to interpret numerical results * Ability to implement numerical algorithms afficiently | |||||
Inhalt | 1. Direct Methods for linear systems of equations 2. Least Squares Techniques 3. Data Interpolation and Fitting 4. Filtering Algorithms 8. Approximation of Functions 9. Numerical Quadrature 10. Iterative Methods for non-linear systems of equations 11. Single Step Methods for ODEs 12. Stiff Integrators | |||||
Skript | Lecture materials (PDF documents and codes) will be made available to the participants through the course web page: Link | |||||
Literatur | U. ASCHER AND C. GREIF, A First Course in Numerical Methods, SIAM, Philadelphia, 2011. A. QUARTERONI, R. SACCO, AND F. SALERI, Numerical mathematics, vol. 37 of Texts in Applied Mathematics, Springer, New York, 2000. W. Dahmen, A. Reusken "Numerik für Ingenieure und Naturwissenschaftler", Springer 2006. M. Hanke-Bourgeois "Grundlagen der Numerischen Mathematik und des wissenschaftlichen Rechnens", BG Teubner, 2002 P. Deuflhard and A. Hohmann, "Numerische Mathematik I", DeGruyter, 2002 | |||||
Voraussetzungen / Besonderes | The course will be accompanied by programming exercises in C++ relying on the template library EIGEN. Familiarity with C++, object oriented and generic programming is an advantage. Participants of the course are expected to learn C++ by themselves. |
- Seite 1 von 1