Vous êtes sur la page 1sur 3

UNIVERSITE VIRTUELLE DE CÔTE D’IVOIRE

www.uvci.edu.ci
SYLLABUS MASTER 1
ALC2107 – Algorithmique avancée
Semestre 1
Spécialités : BC

1. Informations générales
- Code et Titre de l’UE : ALA2107 – Algorithmique avancée
- Auteur : AYIKPA Kacoutchy Jean
Contacts : +225 01 71 03 03 59 ; kacoutchy.ayikpa@uvci.edu.ci
- Nombre de crédits : 4 Crédits
- Charge de travail : Enseignement : 28 H ; apprentissage : 20 H ; Travail Personnel de l’Etudiant : 45
H, Charge Total de travail : 52 H
- Organisation de la formation : 1er semestre
- Début du cours : à consulter sur le calendrier pédagogique

2. Démarche pédagogique : Approche Projet


Dans ce cours, les apprenants réalisent des travaux à rendre en se basant sur des lectures et des vidéos qui leur
seront recommandées. Les travaux rendus sont évalués par l’enseignant à la fin de chaque leçon. Des travaux
seront réalisés individuellement ou par groupe.

La participation aux forums et aux activités collaboratives est exigée et notée.

3. Description du Cours
Ce cours est une introduction à l’algorithmique avancée et plus particulièrement de calculer la complexité d’un
algorithme et aussi l’optimisation de celui-ci. Il s’adresse à tout apprenant désireux de savoir résoudre des
problèmes complexes. Il est obligatoire et s’adresse à tout apprenant en sciences informatiques.

4. Prérequis

Ce cours nécessite des connaissances de l’algorithme de base et de la structure de données.

5. Objectifs du cours
L'objectif de ce cours est d'une part d’étudier les complexités qui permet de vérifier l’efficacité d’un
algorithme, aussi nous verrons la puissance des algorithmes de tri et la souplesse que nous propose des
structures de données. D’autre part nous allons faire la revue des stratégies fondamentales de l’algorithmique
notamment les méthodes diviser pour régner, gloutonne et la programmation dynamique.

De façon spécifique, ce cours vise à :


1
1. Utiliser la complexité d’un algorithme ;
2. Utiliser les structures de données ;
3. Calculer la complexité d’un algorithme ;
4. Utiliser la méthode diviser pour régner ;
5. Décrire la méthode de gloutonne ;
6. Décrire la méthode de la programmation dynamique ;

6. Compétences acquises

A la fin de cours, l’apprenant est capable de :


- Calculer un estimateur ponctuel ;
- Calculer un estimateur par intervalle de confiance ;
- Comparer deux estimateurs quelconques ;
- Evaluer la qualité des estimateurs ;
- Tester des hypothèses pour en choisir une.

7. Contenus du cours

7.1. Présentation du cours


Ce cours est structuré en 5 leçons et se déroule sur semaines 6 à savoir :
• Leçon I : Base de langage Python (Semaine 1)
• Leçon II : Techniques de conception d’algorithmes (Semaine 2 à 3)
• Leçon III : Algorithmes de tri (Semaine 4)
• Leçon IV : Structures de données avancées (Semaine 5)
• Leçon V : Algorithmes classiques à connaître (semaine 7).

7.2. Description synthétique des cours

Description synthétique de la leçon 1

Cette leçon des bases en python vise à donner les notions du langage python qui sera utilisé pour exécuter les
algorithmes. Nous aborderons les notions suivantes :
Le typage
Structure de contrôle
Les boucle
Les fonctions Range, Map
Traitement des list, des dictionnaires.

Description synthétique de la leçon 2

Cette leçon porte sur les techniques de conception d’algorithmes et nous aborderons les notions suivantes :
• Algorithmes gloutons
• Technique du backtracking
• Récursivité
• La programmation dynamique
2
Description synthétique de la leçon 3

Cette leçon porte sur les algorithmes de tri tels que :


• Tri par sélection
• Tri à bulles
• Tri par insertion
• Tri par comptage
• Tri fusion
• Tri rapide
• Tri par tas

Description synthétique de la leçon 4

Cette leçon porte sur structures de données avancées tels que les piles, les files et les listes et les arbres.
Description synthétique de la leçon 5
Cette leçon porte sur les algorithmes classiques à connaître
Algorithme génétique
Particle Swarm Optimization (PSO)

8. Encadrement
L'encadrement est par le tuteur et l’enseignant. Les communications se font sur les forums de la plateforme ou
par courriel. La participation aux forums sur la plateforme est obligatoire.

9. Évaluation
L'évaluation repose sur quatre travaux (projets) à rendre chaque semaine. Chaque devoir à rendre compte pour
25% de la note finale. Les devoirs sont constitués d’exercices applicatifs sur les notions vues chaque semaine
en cours.

10. Renseignements technologiques


Ce cours nécessite :

- Un équipement informatique (Ordinateur);


- Une connexion internet ;
- L’un des systèmes d’exploitation suivants : Linux, Windows, Mac OS, Android;

11. Ressources bibliographiques


https://info.blaisepascal.fr/nsi-complexite-dun-algorithme

http://www.dil.univ-mrs.fr/~gcolas/algo-licence/slides/complexite.pdf

https://moodle.insa-rouen.fr/course/view.php?id=60

Vous aimerez peut-être aussi