JGU Logo JGU Logo JGU Logo JGU Logo

Institut für Informatik

Markus Blumenstock
Sommersemester 2024

Mathematische Modellierung am Rechner

Praktikum
Teil I: Sommersemester 2024
Teil II: Wintersemester 2024/25

Letzte Änderung : 12:06 Uhr, 19 April 2024


Logo Logo Logo Logo


Wichtige Links

Materialien zum Praktikum — Teil I

Skript
Zum Praktikum gibt es umfangreiches Skript. Das Material kann direkt von dieser Webseite heruntergeladen werden.
  • Online Skript — mit extra Features und interaktiven Elementen. Mit dem Tablet und dem Smartphone auch fast überall lesen!

Einführungsfolien

Praktikumsaufgaben
  • Übungsblatt 1: GUIs und interaktive Grafik in PyQt5 HTML Version
  • Übungsblatt 2: Empirische Modellierung HTML Version
  • Übungsblatt 3: Die Entstehung komplexer Struktur (und etwas Mengenlehre) HTML Version
  • Übungsblatt 4: Numerische Ableitung und Automatic Differentiation HTML Version
  • Übungsblatt 5: Ableitungen und Differentialgleichungen HTML Version
  • Übungsblatt 6: Abschlussprojekt — angewandte Differentialgleichungen HTML Version



Allgemeine Informationen

Über das Praktikum

Zielgruppe

Voraussetzungen Das Praktikum wendet sich an Studierende der Informatik im zweiten Semester; laut Studienverlaufsplan würde es typischerweise parallel zur "Mathematik für Informatiker 2a/b" (Standard-Track) bzw. "Analysis 1" (Nebenfach Mathematik) bzw. "Mathematik für Physiker 1" (Nebenfach Physik) belegt. Die Veranstaltung "Mathematik für Informatiker 1" (oder äquivalente Kenntnisse, z.B. aus Mathematik Grundvorlesungen) wird vorausgesetzt.
Die Teilnahme wird gemäß Studienverlaufsplan stark empfohlen, ist aber freiwillig (es handelt sich um eine Wahlpflichtveranstaltung).
Fortgeschrittene Fachsemester Studierende aus einer früheren Prüfungsordnung können ebenfalls an der Veranstaltung teilnehmen. Grundkenntnisse in der Mathematik (typischerweise durch erfolgreichen Besuch der Veranstaltungen "Lineare Algebra 1" und "Analysis 1" oder der entsprechenden Veranstaltungen "Mathematik für Physiker") liefern auf jeden Fall einen ausreichenden Hintergrund für eine erfolgreiche Teilnahme.
Ein wenig Affinität zur Mathematik Die Veranstaltung richtet sich ausdrücklich sowohl an Studierende, die den forschungsorientierten Studienverlauf (aktuell: Analysis 1 / Mathematik für Physiker) gewählt haben als auch an Studierende, die sich für den Standardverlauf (aktuell: Mathematik für Informatiker 2a/b) entschieden haben. Die Veranstaltung ist soweit in sich abgeschlossen, dass alle wichtigen Konzept nochmal kurz eingeführt und erklärt werden, um Wissensunterschiede möglichst auszugleichen. Eine grundsätzliches Interesse an mathematischen-konzeptionelle Fragen ist natürlich in jedem Fall nötig und ein wenig Neugier für und Talent in diesem Bereich schade sicher auch nicht.
Zweisemestrige Veranstaltung Die Veranstaltung zählt zusammen mit dem Praktikum "Mathematische Modellierung am Rechner 2", welches im kommenden Semester angeboten wird, insgesamt als eine Wahlfplichtveranstaltung. Eine Teilnahme an nur einer der beiden Veranstaltungen ist nicht möglich (bzw. ergibt nicht die Creditpoints der vollen Wahlpflichtveranstaltung). Die Veranstaltung ist unbenotet (sie kann also nicht als benotetes Wahlpflichtfach eingebracht werden). Bestehen erfordert eine aktive Teilnahme an dem Praktikum (s.u.).
Programmierkenntnisse Für die Teilnahme am Praktikum sind Programmierkenntnisse (EiP) erforderlich. Bevorzugt ist eine Bearbeitung der Aufgaben in Python (alle unterstützenden Materialien sind in Python verfasst). Eine Bearbeitung der Aufgaben in JAVA oder C/C++ ist ebenfalls erlaubt; hier stehen allerdings keine Vorlagen/Frameworks/Musterlösungen zur Verfügung und die Unterstützung durch Tutoren kann nicht garantiert werden (diese Option ist daher eher für erfahrenere Programmiererinnen und Programmierer geeignet, z.B. Studierende aus fortgeschrittenen Fachsemestern, die anderen Sprachen in der Grundausbildung gelernt haben).

Inhalt

Überblick und Motivation Das Praktikum soll die Brücke zwischen Informatik auf der einen Seite und mathematischen Modellen auf der anderen Seite schließen. Die Mathematik als Disziplin beschäftigt sich vorwiegend mit strukturellen Fragen: Wie können Folgerungen (Rechenregeln, Gleichungen, Sätze) aus bestehenden Annahmen (Axiome, Modelle) abgeleitet werden. Der Fokus liegt dabei auf statischer Logik: Die Frage ist "ist die Aussage wahr - ja oder nein". Was dabei in den Hintergrund tritt, und erst in späteren Semestern, z.B. in der numerischen Mathematik geklärt wird, ist die Frage, wie man konkret mit diesen mathematischen Modellen rechnet (Algorithmen, dynamische Abläufe) bzw. wie man Phänomene der realen Welt damit modelliert (Anwendung mathematischer Modelle auf praktische Probleme). Für Studierende der Informatik kann das Verständnis und die Motivation für das (extrem wichtige) Gebiet der mathematischen Modelle und Konzepte leiden. Dieses Praktikum soll dazu beitragen, die Lücke zwischen Theorie und Anwendung zu schließen und den logischen Aussagen der Mathematik algorithmische Methodik (Umsetzung in Programme) an die Seite zu stellen.
Aufbau und Inhalte Der erste Teil dieses Praktikums behandelt (voraussichtlich) unter anderem die folgenden Themen:
  • Grundlagen mathematischer Modellierung (Mengen, Funktionen, Logik, Ausdrücke, Relationen, etc.) und deren Zusammenhang zu algorithmischen Strukturen (Datenstrukturen, Algorithmen).
  • Grenzen der Berechenbarkeit und emergente Komplexität oder auch: sehr einfache Programme erzeugen komplexe Strukturen.
  • Modelle und Methoden aus der Analysis (Reihen, Ableitungen, Integrale, Differentialgleichungen).
  • Umsetzung / Anwendung in Programmiersprachen (Python bzw. für Fortgeschrittene auch in JAVA/C/C++).

Ablauf

Aufbau der Veranstaltung
Die Veranstaltung besteht im Kern aus mehreren zu bearbeitenden Praktikumsaufgaben.
  • Bearbeitung: Die Bearbeitung finden in Gruppen von je drei Studierenden statt. Gemeinsam werden sowohl die theoretischen als auch die praktischen Aufgaben bearbeitet und präsentiert.
  • Aufgaben: Jede Aufgabe besteht aus mehreren Teilen und ist insgesamt relativ umfangreich (daher ist die Gruppenarbeit obligatorisch). Sie besteht aus einem theoretischen Teil, in welcher das Problem sowie die mathematische Herangehensweise erläutert wird. Daran schließen sich ein oder mehrere praktische Teile an, in denen die mathematischen Ideen in einem Programm umgesetzt werden sollen. Neben der praktischen Umsetzung sind auch begleitende theoretische Fragen zu bearbeiten.
  • Abnahme: Die Bearbeitungszeit jeder Aufgabe beträgt zwei Wochen. Jeweils zum Termin der Veranstaltung stellt jede Gruppe ihre Ergebnisse in etwa 20 Minuten vor, wobei für jede Gruppe ein bestimmter Zeitslot vorgesehen ist. Die Lösung ist spätestens einen Tag zuvor in einem entsprechenden Git-Repository hochzuladen.
  • Tutorium: In den Wochen, in denen keine Abnahme der Aufgaben stattfindet, findet in der Zeit der Veranstaltung ein Tutorium statt, in dem wichtige Schwerpunkte erläutert werden und insbesondere auf Rückfragen und Probleme bei der Bearbeitung der Aufgaben eingegangen werden kann.

Für eine erfolgreiche Teilnahme müssen
  1. alle Aufgaben bearbeitet und alle Abgabe-Meetings besucht werden und
  2. ein Mindestanteil der Aufgaben gelöst werden (Bewertung erfolgt individuell - alle Gruppenmitglieder müssen die Lösung und deren Konzeption erklären können).

Veranstaltungs- und Abnahmetermine
Die Tutorien sowie die Abnahmen finden donnerstags von 16:15-17:45 Uhr in 03-428 jeweils im wöchentlichen Wechsel statt.
TerminThema
18.04.2024 Einführung
25.04.2024 Tutorium Blatt 1
02.05.2024 Abnahme Blatt 1
08.05.2024 03-424, 10-12 Uhr Tutorium Blatt 2
09.05.2024
16.05.2024 Abnahme Blatt 2
23.05.2024 Tutorium Blatt 3
30.05.2024
06.06.2024 Abnahme Blatt 3
13.06.2024 Tutorium Blatt 4
20.06.2024 Abnahme Blatt 4
27.06.2024 Tutorium Blatt 5
04.07.2024 Abnahme Blatt 5
11.07.2024 Tutorium Blatt 6
18.07.2024 Abnahme Blatt 6