Problems in Distributed Computing (182.703)

Aim

Advanced knowledge in the area of fault-tolerant distributed algorithms; improved skills for developing mathematical correctness proofs and performance analyses; practice in reading scientific papers in the area of distributed algorithms.

ECTS breakdown (4.5 ECTS = 112.5 hours):

15h           Introductory lectures
20h           Solution of homework assignments
10h           Student sessions
67.5h        Paper reading

 

Subject

System and failure models, advanced concepts in distributed algorithms (ranodmization, self-stabilization, epistemics, etc.), advanced proof techniques.


Lecturer

Ulrich Schmid, Thomas Schlögl

Homepage

https://ti.tuwien.ac.at/ecs/teaching/courses/prdc/

 

ORGANIZATION

This course is devoted to selected advanced topics in distributed algorithms, and builds on prerequisite knowledge and skills established in 182.073 Verteilte Algorithmen (or similar).

Enrolling takes place in the first lecture (see the schedule below).

The course gives an overview on advanced topics in distributed computing, with a more detailed treatment of some selected topics detailed below. In addition to a number of overview lectures, which are complemented by some homework assignments, these topics are primarily dealt with in plenary discussion sessions led by the students. Every plenary discussion will be devoted to (part of) a seminal scientific paper, which must be read by all participants in advance. The leading student has to give a presentation of the most important parts of the paper (using slides or blackboard), to stimulate and lead discussions, and to answer questions by the other participants and the instructor.

Please note that attendance is mandatory; please let one of the instructors know about unusual circumstances prohibiting attendance in advance, and clear all excused (= to be certified) absences with them as well.

GRADING

Grading is primarily based on the assessment of:

  • The quality of your homework solutions (35%): Please turn in solutions to at least three problem sets ("food for thoughts") during the semester (just email them to the instructor); turning in more may improve your grade.
  • The quality of your presentation and discussion leadership (55%)
  • Your participation in the discussion sessions and in the lectures (10%).

TOPICS

Papers can be chosen from several topics, which are still to be determined. Possible candidates are e.g.

  • Fault-tolerant distributed algorithms
  • Knowledge in distributed computing
  • Dynamic networks
  • Digital circuits

You will find suggestions for particular papers here.

Homework will be assigned in the lectures ("Food for Thoughts").

SCHEDULE (permanently under construction ...)

All lectures take place in presence, in the library of the Embedded Computing Systems Group E182/2 (room DE0258, Treitlstraße 3, 2nd floor) on Thursdays from 14:15-15:45. See the schedule below for possible exceptions, though.

Day

 

Date

Time

 

Event

Lecturer

Slides
Thu   5.10.2023 14:15   Course Introduction Schmid Slides
Thu   12.10.2023 14:15   Lecture: Short Introduction to Distributed Algorithms Schmid  
Thu 19.10.2023 Lecture: Short Introduction to Distributed Algorithms Schmid
Thu 26.10.2023 No lecture
Thu 2.11.2023 No lecture
Thu   09.11.2023 14:15   Lecture: Advanced Topics in Distributed Algorithms (Randomization) Schmid  Slides
Thu 16.11.2023 14:15 Lecture: Advanced Topics in Distributed Algorithms (Self-Stabilization)
Thu   23.11.2023 14:15   Lecture: Synchrony and Time in FT Distributed Algorithms Schmid  Slides
Thu   30.11.2023 14:15   Assignment and scheduling of students presentations    
Thu   7.12.2023 14:15   Lecture: Basics Knowledge-based Approach Schmid  Slides
15:00 Sample session Schlögl
Thu 14.12.2023 14:15  Lecture: Topology in Distributed Computing Schmid  Slides
   
Thu   11.1.2024 14:15  

Student session

 
Thu   18.1.2024 14:15  

Student session

 
Thu   25.1.2024 14:15  

Students session

 

 

 

OTHER RESOURCES

Some useful links for finding scientific papers:

 

Miscellaneous: