Université du Québec en Outaouais Département d'informatique et d'ingénierie
Sigle : INF6043  Gr. 01
Titre : Algorithmique répartie
Session : Automne 2018  Horaire et local
Professeur : Pelc, Andrzej
1. Description du cours paraissant à l'annuaire :

Objectifs

Permettre à l'étudiant d'analyser les différents algorithmes spécifiques au traitement réparti. Lui permettre d'évaluer leur efficience et leur complexité. Lui permettre d'acquérir une compréhension des méthodes générales qui sous-tendent l'algorithmique répartie.

Contenu

Concept d'algorithmes répartis. Mesures de complexité. Analyse de performance. Méthodes de validation. Algorithmes : de routage, d'élection, de synchronisation, de consensus (communication défaillante, processus défaillant, stabilisation), pour l'exclusion mutuelle, pour l'allocation des ressources, spécifiques aux réseaux asynchrones, pour snapshots. Applications aux réseaux de communication, bases de données réparties, etc.

2. Objectifs spécifiques du cours :
  1. Familiariser avec les avantages et les défis du calcul réparti par rapport au calcul séquentiel.
  2. Montrer le rôle de la synchronie dans le calcul réparti.
  3. Développer l'aptitude de construire et d'analyser des algorithmes répartis pour des problèmes fondamentaux.
  4. Montrer le rôle et les méthodes de la tolérance aux pannes dans les systèmes répartis.
3. Stratégies pédagogiques :
  1. Cours magistral contenant les principes théoriques, le développement et l'analyse des algorithmes et la discussion des exemples pratiques.
  2. Devoirs.
  3. Consultations.
4. Heures de disponibilité ou modalités pour rendez-vous :

Sur rendez-vous (andrzej.pelc@uqo.ca).

5. Plan détaillé du cours sur 15 semaines :
Semaine Thèmes Dates
1   

1. Introduction

2. Les modèles

05 sept. 2018 
2   

Partie I. ALGORITHMES SYNCHRONES

3. Élection du chef dans l'anneau synchrone

12 sept. 2018 
3   

4. Algorithmes distribués pour les réseaux généraux

4.1.1 Élection du chef dans un réseau général

4.1.2 Fouille en largeur

4.1.3 Les plus courts chemins

4.1.4 Arbre sous-tendant minimal


19 sept. 2018 
4   

5. Consensus distribué avec pannes des liens

26 sept. 2018 
5   

6. Consensus distribué avec pannes des processeurs

6.1 Le modèle des pannes-arrêt

03 oct. 2018 
6   

Semaine d'études

10 oct. 2018 
7   

Examen de mi-session

17 oct. 2018 
8   

6.2 Le modèle des pannes byzantines

24 oct. 2018 
9   

7. Diffusion de messages en présence de pannes aléatoires de transmission

31 oct. 2018 
10   

Partie IIA. ALGORITHMES ASYNCHRONES AVEC MÉMOIRE PARTAGÉE

8. Exclusion mutuelle

07 nov. 2018 
11   

9. Allocation de ressources

14 nov. 2018 
12   

Partie IIB. ALGORITHMES ASYNCHRONES DANS LES RÉSEAUX

10. Algorithmes asynchrones de base pour réseaux

10.1 Élection du chef

10.2 Construction d'un arbre sous-tendant

10.3 Fouille en largeur

21 nov. 2018 
13   

11. Diagnostic des pannes

28 nov. 2018 
14   

12. Perspectives de recherche en calcul distribué

05 déc. 2018 
15   

Examen final

12 déc. 2018 
6. Évaluation du cours :

Examen de mi-session : 30 %

Examen final : 50 %

Devoirs : 20 %

7. Politiques départementales et institutionnelles :
8. Principales références :

1. Nancy A. Lynch, Distributed Algorithms, Morgan Kaufmann Publ., Inc., San Francisco 1996.

2. Gerard Tel, Introduction to Distributed Algorithms, Cambridge University Press, Cambridge 1994.

9. Page Web du cours :