Planen Sie ihr SS 2020! - uni-mainz.de · 2020-02-03 · Das Praxismodul gibt Studierenden im...
Transcript of Planen Sie ihr SS 2020! - uni-mainz.de · 2020-02-03 · Das Praxismodul gibt Studierenden im...
Informieren Sie sichüber das Lehrangebot
des Instituts für Informatik für das nächste Semester!
Info-VeranstaltungMittwoch, den 29. Januar 202012.00 bis ca. 14.00 UhrHörsaal C02 – Hörsaalgebäude der Chemie u. Physik
Planen Sie ihr SS 2020!
Machine LearningVorlesung• Donnerstag 14 – 16 Uhr • Material auf Englisch
Übung• Zeit: TBA• Auch: „Live Übungen“
Prüfung• mündlich oder schriftlich
Machine Learning• Lernen = sich durch Erfahrung bei einer Aufgabe verbessern
• Aufgabe (performance task) T• hinsichtlich eines Performancemaßes (performance
measure) P• beruhend auf Erfahrung E.
LernendesSystem
Performance Task / Performance Measure
Umgebung
Machine Learning Course Overview
• Decision trees• Ensemble methods• Bayesian learning• Linear models• Neural networks• Instance-based learning• SVMs and kernels
Machine Learning Course Overview
• Decision trees• Ensemble methods• Bayesian learning• Linear models• Neural networks• Instance-based learning• SVMs and kernels
Machine Learning Course Overview
• Decision trees• Ensemble methods• Bayesian learning• Linear models• Neural networks• Instance-based learning• SVMs and kernels
Machine Learning Course Overview
• Decision trees• Ensemble methods• Bayesian learning• Linear models• Neural networks• Instance-based learning• SVMs and kernels
Machine Learning Course Overview
• Decision trees• Ensemble methods• Bayesian learning• Linear models• Neural networks• Instance-based learning• SVMs and kernels
Machine Learning Course Overview
• Decision trees• Ensemble methods• Bayesian learning• Linear models• Neural networks• Instance-based learning• SVMs and kernels
Machine Learning Course Overview
• Decision trees• Ensemble methods• Bayesian learning• Linear models• Neural networks• Instance-based learning• SVMs and kernels
Margin
Hyperplane
misclassifiedvectors
Data Mining PraktikumAblauf• 3er Gruppen• ein Datensatz pro Gruppe• Daten analysieren• wöchentliche Treffen
Einführung in dieComputationale Logik
Vorlesung• Montag 16 – 18 Uhr• Material auf Deutsch
und Englisch
Übung• Zeit: TBA
Prüfung• mündlich oder schriftlich
Einführung in dieComputationale Logik• Syntax, Semantik, Beweistheorie, Metatheorie von:
• Aussagenlogik, Prädikatenlogik erster Stufe, Klausellogiken• Beschreibungslogiken (inkl.: Ontologien, OWL, …)
• Inkl.: Theorembeweisen, Resolution, Negation,Answer Set Programming
• Deduktion, Induktion, Abduktion• Lernen in Logik (Lernen von Klauseln und
Klauselmengen)• Probabilistische Logiken• Lernen in probabilistischen Logiken
Data Mining SeminarAblauf• Thema aus dem Bereich Data Mining und Machine Learning• ein Vortrag pro Woche• nach jeder Präsentation Diskussion und Feedback• Ausarbeitung• Feedback zum Schreiben am Ende des Semesters
Page 1Matthias Schott
Einführung in die Künstliche Intelligenz
§ Titel: Einführung in die künstlicheIntelligenz
§ Inhalt: Es werden grundlegendeMethoden, Verfahren und Anwendungender künstlichen Intelligenz behandelt. ImMittelpunkt der Lehrveranstaltung stehendie Themen Suchen, Planen, Lernen undSchließen. Des Weiteren werden wir einenkurzen Überblick zu künstlichenneuronalen Netzwerken sowie derProgrammiersprache PROLOG geben.
§ Bemerkung: Dies ist keine spezielleVorlesung zu künstlichen neuronalenNetzwerken bzw. Mustererkennung!
§ Wer?§ Prof. Dr. Matthias Schott
§ Wann?§ Montags 12:00-14:00
(Vorlesung)§ Montags 17:00-18:00
(Übung)
§ Wo?§ Raum 03 428
AG Data Management
Storing
Indexing
Processing
Querying
Jun.-Prof. Panagiotis Bouros
AG Data Management
2
Data de-duplica-on
Routing in road networks
“bridge”
“bridge”
“bridge”
Location-based Social Networks
Core1
Core2
Coren
SharedMemory
…
Modern Hardware and the Cloud
Datenbanken I
• Vorlesung– Tuesdays 14:00 – 16:00, Rm 03-428
• Übung– Deepen your understanding, gain pracRcal experience– Weekly exercises (handins assignments) and quizzes– Appointments to be determined
• Unterrichtssprache– English
• Studiengang– B. Sc. / M. Ed.
Datenbanken I• Course objecRves
– EffecRve and efficient management of data– Databases as part of modern informaRon systems– Learn how to model and develop effecRve database
systems – SQL for working with databases– ApplicaRons from various areas, including the web– Apply in your future work
Databases: enRty-relaRonship model, relaRonal model, SQL, …
Applications: standalone, internet and the web, …
Development: analysis, conceptual model
Datenbanken Seminar• Termin
– TBD• Inhalte
– Advanced topics on data management– How to criRcally read and review research literature– How to write a report on research literature– How to present research literature
• Unterrichtssprache– English
• Studiengang– B. Sc. / M. Ed.
29. Januar 2020 | Johannes Gutenberg-Universität Mainz * Institut für Informatik
Vorlesungen
AG Fachdidaktik
Seminar Fachdidaktik IDozent Prof. Dr. Jens Gallenbacher & StD Erich MessnerInhalte
Studiengang B.Ed.Termin n.V.
29. Januar 2020 | Johannes Gutenberg-Universität Mainz * Institut für Informatik
Vorlesungen
AG Fachdidaktik
Seminar Informatik & GesellschaftDozent Martin Mattheis o. Prof. J. GallenbacherInhalte
Studiengang B.Ed.Termin
Kommunikationsnetze
• Dozent: Dr. Michael Distler• Termin: Do. 12 – 14 Uhr
Praktikum Betriebssysteme
• Teilnehmer: max. 6
• Termin: August 2020
IT-Sicherheit
• Dozent: Dr. Duc Bao Ta• Termin: Mi. 14 – 16 Uhr
Berufspraktikum
• Dozent: Dr. H.-J. Schröder• Termin: flexibel
B.Ed + M.Ed. - Projektpraktikum
• Dozent: Prof. Dr. E. Schömer / Dr. H.-J. Schröder• Termin: n.V.
29. Januar 2020 | Johannes Gutenberg-Universität Mainz * Institut für Informatik
Mensch-Maschine-Interaktion - PraktikumPraktikum Mensch-Maschine-InteraktionDozent/en Prof. Dr. V. Luckas(Lehrauftrag)Inhalte Werden noch bekannt gegebenStudiengang B.Sc.Termin ?? 16.03.- 27.03.2020 (ganztägig, 2 Wochen)
Praxismodul “Hacker Contest” usd HeroLab
Autor Frei, Christian Datum 26.06.2019
Klassifikation vertraulich
Praxismodul “Hacker Contest” 2
Inhaltsverzeichnis
1 Über usd AG 3
2 Kurzbeschreibung des Praxismoduls 3
3 Zulassungsaufgabe 4
4 Praxisteil 4
5 Schriftliche Aufgabe („Papieraufgabe“) 4
6 Beschreibung der Laborumgebung 5
7 Modulbeschreibung 6
Praxismodul “Hacker Contest” 3
1 Über usd AG
Die usd AG schützt Unternehmen vor Hackern und Kriminellen. So dynamisch und vielfältig wie die Bedrohung, ist unsere Arbeit. Als akkreditierter Auditor beraten und zertifizieren wir Unternehmen nach den Vorgaben der Kreditkartenindustrie weltweit. Die Experten des usd HeroLabs identifizieren Schwachstellen in IT-Systemen und Applikationen. Unsere Security Consultants beraten Unterneh-men ganzheitlich in Fragen der Informationssicherheit, des Risikomanagements und der IT-Compli-ance. Wir tragen Verantwortung, die Cyber Security Transformation Academy (CST Academy) för-dert Austausch und Wissenstransfer in der Community. more security ist unsere Mission. www.usd.de
2 Kurzbeschreibung des Praxismoduls
Das Praxismodul gibt Studierenden im Masterstudiengang die Gelegenheit, IT-Sicherheit praktisch zu erfahren. In einer abgesicherten Umgebung können Angriffsmethoden und Schutzmaßnahmen für Netzwerke, Systeme und Applikationen ausprobiert werden. Technologische Basis ist dabei das PentestLab des usd HeroLabs. In Zweiergruppen wird ein pentest-spezifisches Thema im Team er-arbeitet und im Plenum präsentiert und diskutiert. Die teilnehmenden Studierenden erhalten einen VPN-Zugang zum usd PentestLab. Hier stehen alle zwei Wochen unterschiedliche virtuelle Maschi-nen (VMs) zur Verfügung, die thematisch mit den Vortragsthemen übereinstimmen. Eine VM besitzt mindestens zwei Schwachstellen mit unterschiedlichen Schwierigkeitsgraden, die erfolgreich von den Studierenden komplett übernommen werden muss („root“-Zugriff). Nach erfolgter Systemüber-nahme bzw. „root“-Zugriff können Token ausgelesen und in eine Webanwendung eingegeben wer-den. Nach erfolgreicher Überprüfung werden die Punkte den Studierenden gutgeschrieben – Teil-punktevergabe möglich. Die Studierenden erhalten unabhängig vom Praxisteil des Moduls zusätz-lich eine schriftliche Aufgabe („Papieraufgabe“), die es innerhalb eines vereinbarten Zeitrahmens zu bearbeiten gilt. Hierzu sind drei Schwachstellen mit vorgegebenen Klassifizierungen und Anforde-rungen in Open-Source-Projekten zu ermitteln.
Praxismodul “Hacker Contest” 4
3 Zulassungsaufgabe
Die Zulassungsaufgabe beinhaltet ein Szenario, in dem entweder ein Angriff in der abgesicherten Umgebung nachgestellt oder analysiert werden muss. Die Studierenden werden anschließend nach einem internen Bewertungsverfahren ausgewählt. Je mehr Punkte während der Aufgabe gesammelt werden, desto höher ist die Chance zum Praxismodul zugelassen zu werden. Die Zulassungsaufgabe darf nicht in Gruppen erarbeitet werden.
4 Praxisteil
Zu Beginn werden die Studierenden in Zweiergruppen eingeteilt. Jede Gruppe erhält ein pentest-spezifisches Thema (z.B. Auswahl an OWASP Top 10 Web-Schwachstellen), das im Team zu ei-nem 30-minütigen Vortrag ausgearbeitet wird. Anschließend werden die Themen im Plenum vorge-tragen. Pro Vortrag ist eine 15-Minütige Diskussionsrunde angesetzt. Parallel zur Vortragserarbeitung erhält jeder Studierende einen VPN-Zugang zum usd PentestLab, mit dem sich in das Netzwerk eingewählt werden kann. Hier stehen alle zwei Wochen drei bis vier unterschiedliche virtuelle Maschinen (VMs) zur Verfügung mit mindestens zwei Schwachstellen. Eine Schwachstelle um auf das System zu kommen und eine weitere, um „root“ auf dem System zu werden. Die Schwachstellen stimmen mit den Vortragsthemen überein und besitzen variierende Schwerpunkte und Schwierigkeitsgrade. Die Aufgabe für die Studierenden besteht darin, die VMs komplett („root“-Zugriff) zu übernehmen. Jede Schwachstelle ist mit einem Token verknüpft, der in eine Webanwendung zur Überprüfung an den Dozenten eingereicht wird. Nach erfolgreicher Über-prüfung werden den Studierenden pro VM zwischen 5 und 50 Punkte gutgeschrieben. Teilpunkte sind möglich, wenn zwar die erste Schwachstelle gefunden wird, aber kein „root“-Zugriff gelingt.
5 Schriftliche Aufgabe („Papieraufgabe“)
Am Anfang des Semesters gibt der Dozent eine schriftliche Aufgabe („Papieraufgabe“) heraus, die innerhalb der vorgegeben Frist selbstständig zu erarbeiten ist. Hierzu müssen zusätzlich drei Schwachstellen mit vorgegebenen Klassifizierungen und Anforderungen in Open-Source-Projekten gefunden werden. Das Rechercheergebnis muss fristgerecht in schriftlicher Form eingereicht wer-den. Nach erfolgreicher Überprüfung durch den Dozenten werden den Studierenden die Punkte gut-geschrieben.
Praxismodul “Hacker Contest” 5
6 Beschreibung der Laborumgebung
Technologische Basis des Praxismoduls ist das PentestLab des usd HeroLabs. Mit einer ständig wachsenden Anzahl vorkonfigurierter Serverumgebungen, unterschiedlicher Technologien und Schwachstellen verschiedener Schwierigkeitsgrade, können Pentester ihr methodisches Können, ihre Kreativität und ihr Durchhaltevermögen im „Real life Pentesting“ trainieren. Neben der Nutzung durch die Sicherheitsexperten des usd HeroLabs, stellt das PentestLab die Schulungsumgebungen für Veranstaltungen der CST Academy bereit. Die Plattform ist zudem die technische Basis der re-gelmäßig stattfindenden Hackertage für Studierende und Hochschulen. Mit Hilfe des LabManagers bietet das PentestLab die Möglichkeit, individuelle Umgebungen zu definieren, um zielgerichtete und bedarfsorientierte Trainings durchzuführen. Wenn der Einstieg ins Training schnell erfolgen soll, kann das „Hacking on Demand“ genutzt werden, wobei dem Pentester zufallsbasiert ein Pool anfälli-ger Systeme zugeordnet wird. Skillpoints verbunden mit einer Rankingfunktion ermöglichen das Ein-schätzen der eigenen Fähigkeiten und der persönlichen Weiterentwicklung.
Praxismodul “Hacker Contest” 6
7 Modulbeschreibung
Lehrform Praktikum
Modulname Hacker Contest
Zielgruppe Das Modul richtet sich an Masterstudierende
Sprache Deutsch (englische Vorträge der Studierenden werden akzeptiert)
Dauer 1 Semester
Anzahl der Plätze 32
Anmeldung/Registrierung Zulassung zum Praktikum erst nach erfolgreich gelöster Zulassungsauf-gabe.
Modulgestaltung Ein gemeinsames Treffen alle zwei Wochen, dazwischen ist freie Zeitein-teilung möglich. Die Arbeit erfolgt in Zweiergruppen.
Modulprüfung
Die Modulabschlussnote ergibt sich auf Basis der erreichten Punktzahl:
Teamvortrag (max. 80 Punkte)
Erreichte Punkte bei Systemen (VMs) (max. 275 Punkte)
Erreichte Punkte bei „Papieraufgabe“ (max. 95 Punkte)
Insgesamt 450 erreichbare Punkte
Prüfungsvorleistung (PVL)
Keine
Arbeitsaufwand P4 (6 Credit Points)
Erforderliche
Vorkenntnisse
Gute Kenntnisse in IT-Sicherheit, Netzwerken, Programmie-rung und Systemadministration (Linux, optional Windows)
Die Bereitschaft, viel Zeit in das Praktikum zu investieren.
Die Fähigkeit, benötigte Fertigkeiten in kurzer Zeit selbstständig zu erarbeiten.
Grundkenntnisse in gängigen Pentesttools (Kali Linux und ei-nige installierte Tools).
Grundkenntnisse in der Bedienung von Nmap, Netcat, GDB, Proxy.
Grundkenntnisse der OWASP Top 10
Praktische Erfahrungen in den genannten Gebieten sind von Vorteil.
Praxismodul “Hacker Contest” 7
Lernziele
Die Studierenden
sind mit Tools und Techniken zur Identifizierung und Ausnutzung von Schwachstellen vertraut,
sind mit dem Vorgehen für technische Sicherheitsanalysen ver-traut
können nachvollziehbare, technische Sicherheitsanalysen von IT-Infrastrukturen durchführen,
können Präsentationen im Team erarbeiten, gestalten und vor-tragen
besitzen detailliertes Wissen über spezifische Schwachstellen
können nach erfolgreicher Erarbeitung der „Papieraufgabe“ po-tentielle CVEs einreichen.
Lerninhalte
In der abgesicherten Umgebung des usd PentestLabs können Angriffs-methoden und Schutzmaßnahmen für Netzwerke, Systeme und Applika-tionen ausprobiert werden. Es werden Themen behandelt wie:
- Unterschiede zwischen Hacking und Pentests
- Vorgehensweise bei einem Pentests
- Klassifizierung eines Pentests (White-, Grey- und Blackbox)
- Pentests Standards, z.B. Open Source Security Testing Methodology Manual (OSSTMM)
- WLAN-Sicherheit und App-Sicherheit/Mobile Security
- Behandlung spezifischer Angriffsarten, unter anderem:
Buffer-Overflow
Cross-Site-Scripting
SQL Injection
Brute Force
Formatstring
Privilege Escalation
User Enumeration
o Digitale Forensik
o Aufbau der Dokumentation und Berichterstellung
Literaturhinweise
Für das Praktikum sind die international anerkannten IT-Sicherheitsstan-dards für Pentests empfehlenswert aber nicht verpflichtend:
- Open Source Security Testing Methodology Manual (OSSTMM)
- BSI-Modell für Penetrationstests
- Open Web Application Security Project (OWASP)
- Anforderungen des Payment Card Industry Data Security Standard (PCI DSS)
Praxismodul “Hacker Contest” 8
Hilfsmittel Inhalte der Teamvorträge und die technologische Basis des usd Pentest-Labs
Referenzen Prof. Dr. Stefan Katzenbeisser, Technische Universität Darmstadt
Prof. Dr. Harald Baier, Hochschule Darmstadt
Mathematische Modellierung am Mathematische Modellierung am Rechner I & IIRechner I & II
Frank FischerDi. 16-18 Uhr, 03-428
Überblick
Worum geht‘s?
l Mathematik sehr abstrakt
l Wichtig für viele Bereiche der Informatik (und für‘s Studium ;))
l Man merkt erst viel später, wozu das alles gut ist
MMR bietet einen angewandten Einstieg
l Frühzeitig gemeinsam Beispiele erarbeiten, wo und wie Mathematik angewandt werden kann
l Praktisch, das heißt, wir werden Mathematik am Rechneranwenden
l Ergänzung zu Grundvorlesungen
Inhalte und Ziele
Zielel Mathe ist cool
l Informatik ist cooll Mathe + Informatik = …
Inhaltel Wir schnuppern in verschiedene Gebiete hinein:
- Mathematische Modellierung- Analysis, Physik- Algebra- Geometrie/3D- Datenanalyse
- Optimierung- Komplexität
l Umsetzung kleiner algorithmischer Aufgaben in Python
Modulinhalt
Zielgruppel B.Sc. Informatik ab dem 2. Semester
Aufbaul MMR 1 im Sommersemester 2020
l MMR 2 im Wintersemester 2020/2021
l Nur wer beide besucht, kann das Modul abschließen!
Ablaufl Praktikum, Gruppenarbeit in Gruppen zu je drei Personenl Je zwei Wochen zur Bearbeitung einer Aufgabel Dazwischen Diskussion über das Thema in Form einer
Vorlesung/eines Tutoriums
Voraussetzungen und Termin
Notwendigl Grundkenntnisse mathematische Sprache und Notation
l Programmierung (in Python)
Empfohlenl Interesse oder gar Spaß an angewandter Mathematik
Terminel Dienstag 16-18 Uhr, 03-428
Bei Fragenl Frank Fischer <[email protected]>
Algorithmen und Techniken der Optimierung
Frank FischerDi. 12-14 Uhr, 03-428
Überblick
Worum geht‘s?l Viele (kombinatorische) Optimierungsprobleme lassen sich als
mathematische Optimierungsaufgabe auffassen:- Rucksackproblem:
- Probleme aus Logistik, Fabrikplanung, Lagerhaltung, Transport, Verkehr, Telekommunikation, …
l Exakte Lösungsverfahren mit Gütegarantiel Alternative zu heuristischen Verfahren (Genetische Algorithmen,
Simulated Annealing, Tabu-Search, ...)
Quelle: Wikipedia
Inhalte und Ziele
Inhaltel Lineare Optimierung
l Lineare Ganzzahlige Optimierung- Komplexität
- Exakte Verfahren für Spezialfälle (Unimodularität)
- Schnittebenenverfahren
l Dekompositionsverfahren
Zielel Kenntnis der Möglichkeiten
und Grenzen mathematischer Optimierung
l „know your tools“l Modellierung praktischer
Problemstellungen als „mathematische Programme“
l Lösungs- und Näherungsverfahren, Gütegarantien, Komplexität
l Praktikum: Umsetzung mit State-of-the-Art Optimierungssoftware
Modulinhalt
Zielgruppel B.Sc. und M.Sc., theoretische Informatik
Sommersemester 2020l 2 SWS Vorlesung + Übung
- Theoretische Grundlagen
Wintersemester 2020/2021l Seminar
- Selbständige Bearbeitung vertiefender theoretischer Konzepte
l Praktikum- Einführung in State-of-the-Art Optimierungssoftware- Eigenständige Modellierung und Implementierung- Praktische Umsetzung fortgeschrittener algorithmischer Konzepte
Voraussetzungen
Notwendig
l Solide Grundkenntnisse Lineare Algebra
l Geometrisches Vorstellungsvermögen
l Praktikum: Programmierung
Empfohlen
l Graphentheorie
l Grundkenntnisse Kombinatorische Optimierung (Flussprobleme, Färbeprobleme, …)
Es geht um Mathematische Optimierung
Termine
Vorlesung
l Dienstag, 12-14 Uhr, 03-428
Übung
l Steht noch nicht fest (vermutlich Freitag, 8-10 Uhr)
Bei Fragenl Frank Fischer <[email protected]>
Modellierung mit partiellenDifferentialgleichungen
Annette Miltenberger Manuel Baumgartner
Institut für Physik der Atmosphäre, JGU Mainz
29. Januar 2020
Motivation
3 Säulen der NaturwissenschaftenÉ Theorie/ModellÉ ExperimentÉ (Numerische) Simulation
Differentialgleichungen zur ModellbildungViele physikalische Prozesse können mit Differentialgleichungenbeschrieben werden.
,2/5
Motivation
3 Säulen der NaturwissenschaftenÉ Theorie/ModellÉ ExperimentÉ (Numerische) Simulation
Differentialgleichungen zur ModellbildungViele physikalische Prozesse können mit Differentialgleichungenbeschrieben werden.
,2/5
Beispiele
,3/5
Beispiele für PDEs (Zeit und eine Raumdimension)
Wärmeleitungs-/Diffusionsgleichung
∂ u(t, x)∂ t
=∂
∂ x
�
D(x)∂ u(t, x)∂ x
�
Wellengleichung
1c2
∂ 2u(t, x)∂ t2
=∂ 2u(t, x)∂ x2
Strukturgleichung (Swift-Hohenberg-Gleichung)
∂ u(t, x)∂ t
= r · u(t, x)− u(t, x)3 −�
∂ 2
∂ x2+ 1
�2
u(t, x)
,4/5
Vorlesung Modellierung mit PDEs (3V + 2Ü)
InhaltÉ (Ein bisschen) Theorie von PDEsÉ Lineare PDEs in BeispielenÉ Numerische Methoden für PDEsÉ Beispiele nichtlinearer PDEs (Navier-Stokes Gleichung fürStrömungen, Reaktions-Diffusions-Gleichungen etc.)
VoraussetzungenÉ Mathematikvorlesungen aus dem BachelorÉ Von Vorteil: Modellierung mit gewöhnlichenDifferentialgleichungen
É Interesse an naturwissenschaftlicher Modellierung
TermineDi: 10:15 – 12:00, Raum 04-426Do: 10:15 – 12:00 (vierzehntägig), Raum 04-426
,5/5
Parallele und Verteilte Architekturen –Lehrangebot: SoSe 2019/20
• Praktikum
– Paralleles Programmieren
• Seminar
– Paralleles Rechnen
– Deep Learning for BioinformaticsProf. Bertil
Schmidt
Block-Praktikum: Paralleles Programmieren
• Paralleles Programmieren mit MPI, OpenMP, C++ multi-threading
– 30.3-9.4.2019 und 14.4. (für Präsentationen)
– Voraussetzung: Erfolgreiche Teilnahme an HPC
Seminarvorbesprechung:Paralleles Rechnen
Prof. Bertil Schmidt
Seminar: Paralleles Rechnen – Themen
1. The Case for Learned Index Structures
2. Performance extraction and suitability analysis of multi- and many-core architectures for next generation sequencing secondary analysis
3. Exascale Deep Learning for Climate Analytics
4. Efficient Architecture-Aware Acceleration of BWA-MEM for Multicore Systems
5. A Modular Benchmarking Infrastructure for High-Performance and Reproducible Deep Learning
6. Distributed enhanced suffix arrays
7. A Versatile Software Systolic Execution Model for GPU Memory-Bound Kernels
8. Legate NumPy: Accelerated and Distributed Array Computing
9. Differentiable Programming for Image Processing and Deep Learning in Halide
10. Selber vorgeschlagenes Thema (muss aber von mir genehmigt werden)
Themenvergabe
• E-Mail mit 2 bevorzugten Themen (mit Präferenz) an Prof Schmidt bis spätestens 7.2.2020
• Ich werde dann versuchen die Themen an Studenten zuzuordnen
• Neue Themen können auch vorgeschlagen werden (müssen dann aber von mir genehmigt werden)
Scheinkriterien und Organisation
• Voraussetzung: Erfolgreiche Teilnahme an PAA oder HPC (mindestens Klausurzulassung)
• Vortrag von ca. 45min (inkl. Q&A)– Termine: werden noch bekanntgegeben (voraussichtlich Freitags, 12-14Uhr)
• Abgabe der Vortragsfolien – zwei Wochen vor dem Vortrag einzureichen per Email – Danach persönliche Vorbesprechung mit Professor Schmidt
• Abgabe einer ausführlichen Ausarbeitung als Basis für die Bewertung des schriftlichen Teils – Ausarbeitung im IEEE CS Format (Umfang mindestens 5-7 Seiten) – Abgabe bis spätestens vier Wochen nach dem Vortrag!
• Teilnahme am Seminar (Anwesenheitspflicht)
Seminarvorbesprechung:Deep Learning for Bioinformatics
Prof. Bertil Schmidt
Seminar: Deep Learning for Bioinformatics
• Nur für Master-Studierenden Angewandte Bioinformatik• Zusammenarbeit mit Prof. Hankeln (Biologie)• Bis spätestens 12.2.2020 anmelden bei studienbuero-informatik@uni-
mainz.de• Teilnehmerzahl beschränkt• Vorbesprechung wird nach Ende der Anmeldephase bekannt gegeben• Mögliche Themen aus den Bereichen:
– Variant calling– Gene expression (single-cell sequencing)– Repeat identification– Genome annotation– Metagenomics
Scheinkriterien und Organisation
• Voraussetzung: ABI Student, mindestens Klausurzulassung in EiB
• Vortrag von ca. 45min (inkl. Q&A)– Termine: werden noch bekanntgegeben
• Abgabe der Vortragsfolien – zwei Wochen vor dem Vortrag einzureichen per Email
– Danach persönliche Vorbesprechung
• Abgabe einer ausführlichen Ausarbeitung (Deutsch oder Englisch) als Basis für die Bewertung des schriftlichen Teils – Ausarbeitung im IEEE CS Format (Umfang mindestens 5-7 Seiten)
– Abgabe bis spätestens vier Wochen nach dem Vortrag!
• Teilnahme am Seminar (Anwesenheitspflicht)
Arbeitsgruppe
Scientific Computing and Bioinformatics
Prof. Dr. Andreas HildebrandtSommersemester 2020
Vorlesung
Strukturbasierte BioinformatikI Termin: donnerstags, 12-14 Uhr, Raum 03-428
I Sprache: Deutsch oder EnglischI Inhalt:
I Grundlegende Begriffe der BioinformatikI Einfuhrung in die ProteinphysikI Simulation von MolekulbewegungenI ProteinstrukturminimierungI Docking und Wirkstoffdesign
Praktikum
Praktikum Big DataI Umfang: 2 Wochen Vollzeit
I Zeitraum: in Absprache mit den Teilnehmern
I Sprache: Deutsch
I Inhalte: basieren auf den Projekten zur Vorlesung imWintersemester 2019/20
I VoraussetzungenI Besuch der Vorlesung Big DataI Hinreichendes Interesse der Vorlesungsteilnehmer
Lehrveranstaltungen der theoretischen Informatik
Vorlesung: Formale Sprachen und BerechenbarkeitProf. Ernst Althaus, Di 10-12 (HS 20)
Vorlesung: Fortgeschrittene AlgorithmenMarkus Blumenstock, Mi 10-12
Blockseminar: AlgorithmenProf. Ernst Althaus, vorlesungsfreie Zeit (September)
Praktikum: Approaching Programming ContestsDomenico Mosca, semesterbegleitend
29. Januar 2020 Johannes Gutenberg-Universitat Mainz 1
Vorlesung: Fortgeschrittene Algorithmen
Formales:
Vorlesung: Mi 10-12 (03-428), Markus Blumenstock
Ubungsbetrieb: Domenico Mosca
Ubungstermin(e): TBA
Inhalt:
Lineare und ganzzahlige lineare Programmierung
Randomisierte Algorithmen
Approximationsalgorithmen
Online-Algorithmen
Sekundarspeicheralgorithmen
Parametrisierte Algorithmen
zusatzlich geplant: Distributed Computing
29. Januar 2020 Johannes Gutenberg-Universitat Mainz 2
Seminar: Algorithmen
Betreuung: Prof. Ernst Althaus
Zeit und Ort: Blockseminar im September (genauer Termin wirdper doodle bestimmt)
Vorbesprechung: 01.04.2020, 13:00 Uhr, Raum 03-331
Voraussetzungen: DSEA oder aquivalent
Scheinvergabe:
Vortrag von ca. 30 minAusarbeitung in LaTeX
Inhalte:
Vorstellung eines Algorithmus ahnlich denen aus DSEAGenauere Themenvorschlage gibt es in der Vorbesprechung
29. Januar 2020 Johannes Gutenberg-Universitat Mainz 3
Praktikum: Approaching Programming Contests
Zeit: wird mit den Teilnehmern vereinbart
Betreuung: Domenico Mosca
Voraussetzungen: EiP, EiS, DSEA
Inhalt:
Losen von Problemen, wie sie typischerweise inProgrammierwettbewerben auftreten
Eingesetzte Algorithmen: z. B. Breitensuche, Berechnen vonminimalen Spannbaumen, Max-Flow-Algorithmen, dynamischeProgrammierung, Divide-and-Conquer
Teilnahme am GCPC 2020 (Termin noch unbekannt)
Erwunscht:
Bereitschaft, am NWERC 2020 in Reykjavık teilzunehmen
29. Januar 2020 Johannes Gutenberg-Universitat Mainz 4
Wintercontest am 25.01.2020
Die Mainzer Teams erreichten beim Wintercontest der FAU Erlangendie Platze 8, 49, 65 und 70 von insgesamt 87 angetretenen Teams.
29. Januar 2020 Johannes Gutenberg-Universitat Mainz 5
Veranstaltungen der AG Computational Geometry Prof. Elmar Schömer
SS 2020
1) Computergrafik und Animation (Erbes / von Dziegielewski) Di 10:00-12:00 03-428
2) Computergrafik Seminar Vorbesprechung in den ersten Semesterwochen (Voraussetzung: CGA oder CGVR)
3) Computergrafik Praktikum in der Vorlesungsfreien Zeit (Voraussetzung: CGA oder CGVR)
Physikalische Simulation von starren und verformbaren Körpern
Computergrafik und Animation (Erbes / von Dziegielewski)
Di 10:00-12:00 03-428
Physikalische Simulation von Flüssigkeiten
Computergrafik und Animation (Erbes / von Dziegielewski)
Di 10:00-12:00 03-428
Physikalische Simulation von einem Tuch
Computergrafik und Animation (Erbes / von Dziegielewski)
Di 10:00-12:00 03-428
Kinematische Ketten (Robotik)
Computergrafik und Animation (Erbes / von Dziegielewski)
Di 10:00-12:00 03-428
35
Prof. Dr. Ulrich SchwaneckeRheinMain University of Applied Sciences
Wiesbaden Rüsselsheim
SoSe 2020
3D Computer Vision
Content• History and Applications of 3D Computer Vision
• Representation of 3D moving scenes• Rigid-body motion, canonical exponential coordinates, …
• Image Formation• Mathematical model for ideal perspective projection, pinhole camera, …
• Image primitive and correspondence• Photometric and geometric features, image correspondences, …
• Single-view geometry• Shape from Shading (Photometric Stereo), monocular 3D tracking, …
• Two-view geometry• Epipolar geometry, seven-/eight-point algorithm, 3D reconstruction from two views, …
• Camera calibration and self-calibration• Camera calibration from a rig, fundamental matrix, camera self-calibration, …
• Learning based 3D reconstruction
36
Prerequisites and Literature
• Prerequisites• Basic knowledge of linear algebra and analysis • Programming exercises will be done in Python using OpenCV
• Literature• Richard Szeliski, Computer Vision: Algorithms and Applications,
Springer, 2011• Richard Hartley, Andrew Zissermann, Multiple View Geometry in
Computer Vision, Cambridge University Press, 2004 • Yi Ma, An Invitation to 3-D Vision: From Images to Geometric
Models, Springer, 2010• Ian Goodfellow, Yoshua Bengio, Aaron Courville: Deep Learning,
MIT Press, 2016 • Selected primary literature
37
Institutfür
Informatik
Design Patterns SoSe 2020
Dr. Stefan Endler
Johannes Gutenberg-Universitat Mainz
Vorlesung: Dienstags 12-14, Raum 04-432Ubung: Dienstags 14-16, Raum 04-432
Design Patterns –
Auswahl an Patterns
Abbildung: Singleton Abbildung: Strategy
Abbildung: Composite
Abbildung: Abstract Factory
Johannes Gutenberg-Universitat Mainz S. Endler 2
Design Patterns –
Erarbeitung anhand Real-Life Beispielen
Johannes Gutenberg-Universitat Mainz S. Endler 3
Design Patterns –
Erarbeitung anhand Real-Life Beispielen
Johannes Gutenberg-Universitat Mainz S. Endler 3
Design Patterns –
Erarbeitung anhand Real-Life Beispielen
Johannes Gutenberg-Universitat Mainz S. Endler 3
Design Patterns –
Ubungsleiterschulung
� Pflichtveranstaltung fur alle neuen Ubungsleiter bzw.Ubungsleiter, die die Schulung noch nicht besucht haben
� Offen fur jeden (1CP Softskills)
� Maximal 12 Teilnehmer
� Termin:� 08. + 09. April 2020� Ganztagig (9 - 17 Uhr)� Raum: 03-424
Johannes Gutenberg-Universitat Mainz S. Endler 4
Design Patterns –
Ubungsleiterschulung
� Pflichtveranstaltung fur alle neuen Ubungsleiter bzw.Ubungsleiter, die die Schulung noch nicht besucht haben
� Offen fur jeden (1CP Softskills)
� Maximal 12 Teilnehmer
� Termin:� 08. + 09. April 2020� Ganztagig (9 - 17 Uhr)� Raum: 03-424
Johannes Gutenberg-Universitat Mainz S. Endler 4
Design Patterns –
Ubungsleiterschulung
� Pflichtveranstaltung fur alle neuen Ubungsleiter bzw.Ubungsleiter, die die Schulung noch nicht besucht haben
� Offen fur jeden (1CP Softskills)
� Maximal 12 Teilnehmer
� Termin:� 08. + 09. April 2020� Ganztagig (9 - 17 Uhr)� Raum: 03-424
Johannes Gutenberg-Universitat Mainz S. Endler 4
Design Patterns –
Ubungsleiterschulung
� Pflichtveranstaltung fur alle neuen Ubungsleiter bzw.Ubungsleiter, die die Schulung noch nicht besucht haben
� Offen fur jeden (1CP Softskills)
� Maximal 12 Teilnehmer
� Termin:� 08. + 09. April 2020� Ganztagig (9 - 17 Uhr)� Raum: 03-424
Johannes Gutenberg-Universitat Mainz S. Endler 4
...31
0f
73
10
f7
31
0f
73
1.
...73
10
73
10
73
10
73
10
7.
3 us
3.01
us
clkI
n_80
0pR
eset
Encl
kOut
_4n
clkO
ut_3
n2cl
kOut
_1n6
res_
nFa
stC
nt5
...31
0f
73
10
f7
31
0f
73
1.
Res
etC
ntFa
stC
nt4
...73
10
73
10
73
10
73
10
7.
Res
etC
nt4
PreR
eset
Cnt
4re
sspi
ke4
ress
pike
5
clkO
ut_3
n2_d
el
0f
73
10
f7
31
0f
73
10
f
31
07
31
07
31
07
31
07
3
3.02
us
3.03
us
0f
73
10
f7
31
0f
7
31
0f
31
07
31
07
31
07
31
07
33
10
f7
31
0f
73
10
f7
31
07
31
07
31
07
31
07
31
0
3.04
us
3.05
us
31
0f
73
10
f7
31
0f
73
1
07
31
07
31
07
31
07
31
0
...0f
73
10
f7
31
0f
73
10
f..
...73
10
73
73
73
73
73
73
7..
3.06
us
3.07
us
...0f
73
10
f7
31
0f
73
10
f..
...73
10
73
73
73
73
73
73
7..
73
10
f7
31
0f
73
10
f7
31
37
37
37
37
37
37
37
37
37
3.08
us
3.09
us
73
10
f7
31
0f
73
10
f7
31
37
37
37
37
37
37
37
37
37
1
FPGAs
• Field Programmable Gate Array
• Programmierbare Logikbausteine
• Massiv parallele Datenverarbeitung
• Low-level: Spiele mit einzelnen Bits
• Werden in einer Hardware-Beschreibungssprache programmiert: Hier VHDL
...31
0f
73
10
f7
31
0f
73
1.
...73
10
73
10
73
10
73
10
7.
3 us
3.01
us
clkI
n_80
0pR
eset
Encl
kOut
_4n
clkO
ut_3
n2cl
kOut
_1n6
res_
nFa
stC
nt5
...31
0f
73
10
f7
31
0f
73
1.
Res
etC
ntFa
stC
nt4
...73
10
73
10
73
10
73
10
7.
Res
etC
nt4
PreR
eset
Cnt
4re
sspi
ke4
ress
pike
5
clkO
ut_3
n2_d
el
0f
73
10
f7
31
0f
73
10
f
31
07
31
07
31
07
31
07
3
3.02
us
3.03
us
0f
73
10
f7
31
0f
7
31
0f
31
07
31
07
31
07
31
07
33
10
f7
31
0f
73
10
f7
31
07
31
07
31
07
31
07
31
0
3.04
us
3.05
us
31
0f
73
10
f7
31
0f
73
1
07
31
07
31
07
31
07
31
0
...0f
73
10
f7
31
0f
73
10
f..
...73
10
73
73
73
73
73
73
7..
3.06
us
3.07
us
...0f
73
10
f7
31
0f
73
10
f..
...73
10
73
73
73
73
73
73
7..
73
10
f7
31
0f
73
10
f7
31
37
37
37
37
37
37
37
37
37
3.08
us
3.09
us
73
10
f7
31
0f
73
10
f7
31
37
37
37
37
37
37
37
37
37
1
Kursziele
• Praktisch: Sie können in VHDL einen FPGA programmieren: Übungen mit FPGA-Boards
• Technische Informatik: Wie funktioniert ein FPGA? Einblick in digitale Schaltungen
• Algorithmen: Wie kommt mein Design in den FPGA? Logikvereinfachung, Technology Mapping, Place & Route - alles exponentiell schwierige Probleme für die elegante Heuristiken existieren
...31
0f
73
10
f7
31
0f
73
1.
...73
10
73
10
73
10
73
10
7.
3 us
3.01
us
clkI
n_80
0pR
eset
Encl
kOut
_4n
clkO
ut_3
n2cl
kOut
_1n6
res_
nFa
stC
nt5
...31
0f
73
10
f7
31
0f
73
1.
Res
etC
ntFa
stC
nt4
...73
10
73
10
73
10
73
10
7.
Res
etC
nt4
PreR
eset
Cnt
4re
sspi
ke4
ress
pike
5
clkO
ut_3
n2_d
el
0f
73
10
f7
31
0f
73
10
f
31
07
31
07
31
07
31
07
3
3.02
us
3.03
us
0f
73
10
f7
31
0f
7
31
0f
31
07
31
07
31
07
31
07
33
10
f7
31
0f
73
10
f7
31
07
31
07
31
07
31
07
31
0
3.04
us
3.05
us
31
0f
73
10
f7
31
0f
73
1
07
31
07
31
07
31
07
31
0
...0f
73
10
f7
31
0f
73
10
f..
...73
10
73
73
73
73
73
73
7..
3.06
us
3.07
us
...0f
73
10
f7
31
0f
73
10
f..
...73
10
73
73
73
73
73
73
7..
73
10
f7
31
0f
73
10
f7
31
37
37
37
37
37
37
37
37
37
3.08
us
3.09
us
73
10
f7
31
0f
73
10
f7
31
37
37
37
37
37
37
37
37
37
1
Vorläufiges Vorlesungsprogramm
• Weshalb FPGAs? Weshalb VHDL?
• CMOS, Gatter, kombinatorische Logik
• Register, Takt, Pipelines
• Simulation
• Synthese
• Place & Route
• Schnelle Schaltungen
• VHDL Design Patterns
• Synchronisation
• Speicher und vordefinierte Logikblöcke (IP)
• Busse und andere Interfaces
• Anwendungsbeispiele
Sommersemester 2020
LehrangebotVisual Computing
LehrangebotVisual Computing
Veranstaltungen Visual ComputingVorlesungen
§ Einführung in die Softwareentwicklung(ein letztes Mal in C++, diesmal wirklich)
§ Modellierung I
Seminare§ Seminar Visual Computing
§ Im Block nach in den Semesterferien
§ Praktikum Visual Computing / Modellierung§ Im Block nach in den Semesterferien
Modellierung I
Modellierung 1: Lineare Modelle§ Lineare Algebra 101
§ Mit praktischen Anwendung
§ Diskretisierung, Simulation, Optimierung§ Mit praktischen Anwendung
Modellierung ILineare Modelle
§ Repräsentationen§ Funktionenräume§ Finite Elemente§ Meshes, Gitter, Meshless§ Signaltheorie, Sampling§ Geometrische Modelle (3D)
§ Automatisches Modellieren§ Least-Squares, Variationsmethoden§ Dynamische Modelle (Animation, Simulation)
Eigencats
Modellierung 1Voraussetzungen
§ Analysis 1, Lineare Algebra 1oder
Mathematik für Physiker*innen§ Mathematik für Informatiker*innen weniger geeignet
– Auf eigenes Risiko§ Programmieren
§ C++ Kenntnisse empfohlen (nicht zwingend)§ Vertiefungsveranstaltungen
§ Computergraphik oder maschinelles Lernen helfen,sind aber optional
Seminar + PraktikumSeminar Visual Computing
§ Aktuelle Themen aus Mustererkennung,maschinellem Lernen und Graphik
Praktikum Visual Computing§ Mustererkennung, tiefe Netze & Modellierung
Planung (Vorbesprechung für Praktikum & Seminar zusammen!)
§ Format: im Block, nach dem Semester§ Vorbesprechung: Freitag, 20. April 2020, 14-16h (c.t.)§ Ort: Raum 03-424, Staudingerweg 9§ Teilnehmerzahl: jeweils max. 15 Personen
SpeichersystemeDr. Reza Salkhordehhaghighi(Mitarbeiter von Prof. Brinkmann, ZDV)
Vorlesung: Do. 10-12 Uhr, Raum 04-432Übung: tba
AG Programming LanguagesProf. Dr. Sebastian Erdweg
Vorlesungen§ Programmiersprachen§ Program analysis
Seminare und Praktikum§ Seminar - Domain-specific languages
§ Praktikum - Program analysis
Program analysis 1/2Voraussetzungen / OrganisatorischesVorlesung "Programmiersprachen". Gute Programmierkenntnisse.
Empfohlene LiteraturFachartikel, die im Laufe der Veranstaltung bekanntgegeben werden "Types and Programming Languages" von Benjamin C. Pierce"Principles of Program Analysis" von Flemming Nielson, Hanne R. Nielson, and Chris Hankin
InhaltProgrammanalysen sind ein fundamentales Werkzeug der Softwareentwicklung und treten in vielfältiger Form in der Praxis auf. Man kann dabei grob drei Einsatzgebiete von Programmanalysen unterscheiden:Zum Bug Finding verwendet man Analysen, die Fehlerquellen in einem Program auffinden bzw. die Abstinenz solcher Fehler validieren. Zum Beispiel: type checking, bounds checking, information flow.Für Compiler Optimierungen verwendet man Analysen, die Eigenschaften eines Programms berechnen, welche Optimierungen ermöglichen. Zum Beispiel: reaching definitions, constant propagation.Für Editor Support verwendet man Analysen, die Informationen über ein Programm ableiten um damit Tools zu speisen, die Entwickler beim Programmieren unterstützen. Zum Beispiel: Code completion, Refactorings.
Program analysis 2/2Die Entwurfsmöglichkeiten für Programmanalysen sind entsprechend vielfältig und es haben sich verschiedene Analysetechniken etablieren können. Das Ziel der Veranstaltung "Programmanalysen" ist das Studierende die Grundlagen des Entwurfs von Programmanalysen erlernen, für ein gegebenes Einsatzgebiet geeignete Analysetechniken auswählen können, und einfache Programmanalysen selbst entwickeln und bewerten können. Dazu werden wir eine Auswahl der folgenden Themen besprechen:
• Code smells• Program semantics• Dynamic analysis• Type systems• Control-flow graphs and data-
flow analyses• Abstract interpretation• Soundness, Recall, and Precision
Termin: Vorlesung: Mittwoch, 12-14 Uhr, Raum 05-426 Übungen: tba
29. Januar 2020 | Johannes Gutenberg-Universität Mainz * Institut für Informatik
wählbare Sprachen: § English for the Natrual Sciences§ Englisch, Französisch, Portugisisch, Spanisch, Russisch,
Chinesisch, Japanisch§ weitere Sprachen nach Genehmigung des Prüfungsausschusses
Änderungen der Softskill-Angebot ab dem SS 2020
wählbare Veranstaltungen: § Angebot von Studium Generale§ Geschichte der Naturwissenschaften§ Schreibwerkstatt§ Studieneingangsangebote (TK-MentalStrategien)§ Tutorenschulung § Spez. Lehrangebot in Jogustine§ ausgewählte Sprachkurse des ISSK (anerkannt werden nur noch maximal 3 LP)
29. Januar 2020 | Johannes Gutenberg-Universität Mainz * Institut für Informatik
Softskill-Angebot im SS 2020 (2 LP)
TK-MentalStrategien
29. Januar 2020 | Johannes Gutenberg-Universität Mainz * Institut für Informatik
Softskill-Angebot im SS 2020 (2 LP)
TK-MentalStrategien
Inhalt: Vermittlung allgemeiner Grundlagen
zum Thema „wissenschaftliches Arbeiten“
1. recherchieren, zitieren, gliedern2. Schreibmethoden, -techniken3. Praktische Übungen zum Verfassen von
z.B. Abstracts und Einleitungen4. Präsentationsmethoden: Poster,
Vorträge5. Kommunikation mit dem Betreuer6. …
Zeit: Donnerstags, 14 – 16 Uhr
Start 16.4.2020
Raum: 05-136 (mittlerer Kreuzbau)
Die Teilnehmerzahl ist auf max. 15 begrenzt.
Aktive Teilnahme zum Erlangen von 3 Softskill-LPs
Anmeldung über Jogustine
Fragen an: Esther Reineke ([email protected])
Workshop-Marathon „Wissenschaftliches Schreiben, Präsentieren, Kommunizieren“
Jeden Dienstag von 13 – 16 Uhr, auch in den Semesterferien!
Wo: Seminarraum D 01-227 (Staudingerweg 9, mittlerer Kreuzbau)
Ohne Anmeldung, einfach vorbeikommen und hier an deinem wissenschaftlichen Text schreiben, zusammen mit anderen Studis und in Begleitung einer Tutorin!
Für alle Studis der Fächer Mathematik, Informatik, Physik und Meteorologie!
Schreibwerkstatt FB 08
Hilfestellungen bei Seminararbeiten, Hausarbeiten, Bachelor- und Masterarbeiten u.a.
Kontakt: Dipl.-Met. Esther Reineke ([email protected])
www.studium.fb08.uni-mainz.de/helpdesk/schreibwerkstatt
Ferienkurse der Fachschaft Mathematik/Informatik
(Anwendungsorientiertes) PythonTermin: vsl. 23.03.-27.03.
Raspberry Pi/LinuxTermin: tba
• Nutzung eines Linuxsystems an einem Raspberry Pi• Grundlagen der Linux-Shell, ssh und weitere Werkzeuge• Programmierung der GPIO-Pins• Geräte werden voraussichtlich gestellt
• Aufbauend auf „Einführung in die Programmierung“• Python zur Problemlösung und zum Vermeiden von Tipparbeit• Nützliche und einzigartige Sprachkonstrukte kennenlernen• Effektive Verwendung der Standardbibliothek• Einführung weiterer im Studium nützlicher Bibliotheken (numpy, pandas, pil, requests)
def min_dist(points):if len(points) < 2:
raise ValueErrormd = points[0].dist(points[1])result = points[0], points[1]for i in range(len(points)):
for j in range(i):p, q = points[i], points[j]if p.dist(q) < md:
md = p.dist(q)result = p, q
return result
def min_dist(points):return min(combinations(points, 2), key=lambda x: Point.dist(*x))
class Point:...