182.702 Distributed Algorithms
Diese Lehrveranstaltung ist in allen zugeordneten Curricula Teil der STEOP.
Diese Lehrveranstaltung ist in mindestens einem zugeordneten Curriculum Teil der STEOP.

2019S, VU, 4.0h, 6.0EC

Merkmale

  • Semesterwochenstunden: 4.0
  • ECTS: 6.0
  • Typ: VU Vorlesung mit Übung

Ziele der Lehrveranstaltung

Fehlertolerante verteilte Algorithmen sind das Herzstück jedes verteilten Computersystems für kritische Anwendungen und implementieren grundlegende Services wie Uhrensynchronisation, Group Membership und Consensus. Derartige Algorithmen müssen ihre Spezifikation trotz der inhärenten Unsicherheit erfüllen, die in netzwerk- oder shared-memory-gekoppelten verteilten Systemen unvermeidbar ist. Quellen dieser Unsicherheit sind variable/unbekannte Ausführungs- und Nachrichtenübertragungszeiten und, insbesondere, Fehler von Subsystemen. Die daraus resultierende kombinatorische Explosion macht es in vielen Fällen unmöglich, die korrekte Operation solcher Algorithmen durch Model Checking (oder gar erschöpfendes Testing) zu verifizieren. Korrektheitsbeweise basierend auf einer geeigneten formal-mathematischen Modellierung stellen hier die einzig taugliche Alternative dar. Diese Master-level Basis-LVA bietet eine Einführung in verteilte Algorithmen und deren formal-mathematische Analyse. Neben der generellen Entwicklung formal-mathematischer Fertigkeiten soll sie es ihren Absolventen erlauben, (1) Modelle, Probleme, Algorithmen, Lower-Bounds, Impossibility-Resultate und Korrektheitsbeweise im Bereich Distributed Computing zu verstehen, (2) existierende Lower-Bounds und Impossibility-Resultate in neuen Situationen anzuwenden, (3) auf Basis der erlernten Algorithmen und Techniken neue verteilte Algorithmen für spezielle Problemstellungen zu entwickeln und deren Korrektheit zu beweisen, und (4) neue Lower-Bounds und Impossibility-Resultate zu finden.

Die LVA wird im "angloamerikanischen Modus" abgehalten, der auf kontinuierlicher Beschäftigung mit den Inhalten während des gesamten Semesters basiert: Mehrere Quizzes und Homework-Assignments stellen sicher, dass (1) die in Vorlesung vermittelten Inhalte effizient erlernt und (2) die individuelle Problemlösungskompetenz im formal-mathematischen Bereich entwickelt werden. Die Homework-Assignments werden in Form von "Mini-Konferenzen" (LaTex Ausarbeitung, Reviewing, Lösungspräsentation) abgewickelt, wodurch (3) auch die entsprechenden wissenschaftlichen Soft-Skills "hands-on" trainiert werden.

Inhalt der Lehrveranstaltung

Grundlagen: Execution runs, safety and liveness properties, causality and time; Modelle: Message passing vs. shared memory, synchronous vs. asynchronous, failure models; Algorithmen: Leader election, mutual exclusion, clock synchronization, consensus, distributed snapshots; Beweistechniken: Impossibility proofs, lower bounds, simulation, indistinguishability, bivalence.

Weitere Informationen

Alle, die die LVA im nächsten SS besuchen möchten: Bitte die LVA im TISS LVA-Forum & News noch vor den Semesterferien abonnieren. [Die eigentliche LVA-Anmeldung (via myTI) ist erst nach Semesterbeginn (und Erfüllung der Zulassungsbedingungen) möglich.]

ECTS-Breakdown (6 ECTS = 150 Stunden):

 30h             Lecture time
   4.5h          6 Quizzes
 12h             4 Homework-Präsentationen
 18h             Vorbereitungszeit für 6 Quizzes
 85.5h          Vorbereitungszeit für 4 Homework-Assignments  (jeweils 3-5 Exercises): First and Final Version (in LaTeX); Reviewing.

Vortragende

Institut

LVA Termine

TagZeitDatumOrtBeschreibung
Fr.08:00 - 11:0001.03.2019 - 28.06.2019EI 10 Fritz Paschke HS SCHMID
Do.08:00 - 10:0007.03.2019 - 27.06.2019EI 10 Fritz Paschke HS SCHMID
Distributed Algorithms - Einzeltermine
TagDatumZeitOrtBeschreibung
Fr.01.03.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.07.03.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID
Fr.08.03.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.14.03.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID
Fr.15.03.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.21.03.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID
Fr.22.03.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.28.03.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID
Fr.29.03.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.04.04.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID
Fr.05.04.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.11.04.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID
Fr.12.04.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.02.05.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID
Fr.03.05.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.09.05.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID
Fr.10.05.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.16.05.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID
Fr.17.05.201908:00 - 11:00EI 10 Fritz Paschke HS SCHMID
Do.23.05.201908:00 - 10:00EI 10 Fritz Paschke HS SCHMID

Leistungsnachweis

Lösung und Präsentation von Übungsbeispielen + schriftliche Tests + schriftliche Prüfung

LVA-Anmeldung

Anmeldemodalitäten:

Nach 2. Quiz (via myTI)

Curricula

Literatur

Textbook: Hagit Attiya, Jennifer Welch. Distributed Computing: Fundamentals, Simulations and Advanced Topics (2nd ed.), John Wiley and Sons, 2004. ISBN 0-471-45324-2

Vorkenntnisse

Vertrautheit mit der Analyse von sequentiellen Algorithmen und elementarer diskreter Mathematik; ausreichende Fertigkeiten bei der Erstellung mathematischer Beweise. Hintergrundwissen über verteilte Systeme und fehlertolerante Systeme ist hilfreich, aber nicht notwendig. Vertrautheit mit den Grundlagen wissenschaftlichen Arbeitens (LaTeX, reviewing).

Vorausgehende Lehrveranstaltungen

Weitere Informationen

Sprache

bei Bedarf in Englisch