Discrete mathematics II : Algorithms and complexity [ LINMA2111 ]
5.0 crédits ECTS
30.0 h + 22.5 h
2q
Enseignant(s) |
Delvenne Jean-Charles (supplée Blondel Vincent) ;
Blondel Vincent ;
|
Langue d'enseignement: |
Anglais
|
Lieu de l'activité |
Louvain-la-Neuve
|
Ressources en ligne |
> https://icampus.uclouvain.be/claroline/course/index.php?cid=INMA2111
|
Préalables |
Ce cours suppose une maturité suffisante en mathématique, d'un niveau équivalent à celle d'un étudiant ingénieur arrivé au terme de sa troisième année d'étude. Le cours est une introduction à l'algorithmique et traite principalement des aspects non numériques. On y fait une analyse mathématique de l'existence et de la complexité d'algorithmes pour des problèmes classiques liés aux structures et problèmes discrets. Il est utile que les étudiants aient déjà été confrontés à des questions algorithmiques non-élémentaires ; il n'y a toutefois pas de prérequis particulier en algorithmique.
|
Thèmes abordés |
Ce cours est une introduction à l'algorithmique et traite principalement des aspects non numériques. On y fait une analyse mathématique de l'existence et de la complexité d'algorithmes pour des problèmes classiques liés aux structures et problèmes discrets.
|
Acquis d'apprentissage |
Eu égard au référentiel AA, ce cours contribue au développement, à l'acquisition et à l'évaluation des acquis d'apprentissage suivants :
-
AA1 : 1,2,3
-
AA3 : 1,3
-
AA4 : 1
-
AA5 : 1,2,3,5,6
Plus précisément, au terme du cours, l'étudiant sera capable de :
-
Etudier des algorithmes exacts et approximatifs pour des problèmes combinatoires de différents points de vue : conception, structures de données, analyse de performance, existence, complexité, implémentation.
-
Mettre en 'uvre les algorithmes de base en algorithmique (tri, implémentations efficaces de différentes structures de données) et en faire une analyse de complexité en moyenne et dans le pire des cas.
-
Evaluer la complexité algorithmique d'un problème donné
-
Prendre des initiatives pour rechercher des informations utiles à l'analyse d'un problème.
-
Proposer des solutions originales et les comparer aux solutions disponibles.
-
Rédiger un travail original.
|
Modes d'évaluation des acquis des étudiants |
Les étudiants sont évalués individuellement et par écrit sur base des objectifs particuliers énoncés plus haut. En outre les étudiants réalisent des devoirs durant le cours. Les devoirs sont corrigés et commentés. Les notes obtenues pour les devoirs sont comptabilisées dans la note finale.
|
Méthodes d'enseignement |
Le cours est organisé autour de séances de cours et de devoirs hebdomadaires pour lesquels un service de consultance facultatif est offert.
|
Contenu |
Introduction aux algorithmes de base en algorithmique (tri, implémentations efficaces de différentes structures de données) avec une analyse de complexité en moyenne et dans le pire des cas. Etudes de différentes classes d'algorithme comme les algorithmes gloutons, la programmation dynamique et les algorithmes approximatifs. Aspects de la théorie de la complexité et la calculabilité : classes de complexité, NP-complétude, difficulté d'approximation, existence d'algorithmes.
|
Bibliographie |
-
Algorithmics: Theory and Practice, G. Brassard and P. Bratley, Prentice Hall, 1988.
-
Introduction to Algorithms, T.H. Cormen, C.E. Leierson and R.L. Rivest, MIT Press 1986.
|
Cycle et année d'étude |
> Master [120] en sciences informatiques
> Master [120] : ingénieur civil en informatique
> Master [120] : ingénieur civil en mathématiques appliquées
> Master [120] : ingénieur civil électricien
|
Faculté ou entité en charge |
> MAP
|
<<< Page précédente
|