LOG635 - Systèmes intelligents et algorithmes
Ce cours vise la compréhension pour un ingénieur logiciel et un ingénieur TI de trois domaines d’application de l’intelligence artificielle étroitement liés : la représentation des connaissances, le traitement automatique des langues naturelles et les algorithmes de recherche de solutions optimales.
À la fin de ce cours, l’étudiante ou l'étudiant sera en mesure de:
- discuter des avantages et inconvénients des approches symboliques et non symboliques en explicitant les points communs entre les trois domaines explorés;
- construire un système expert et appliquer des techniques de chaînage avant et arrière;
- construire un analyseur pour un langage spécifique;
- comparer différents algorithmes de recherche pour résoudre un problème d’optimisation.
Approches symboliques et non symboliques en IA, intelligence machine vs intelligence humaine, agents intelligents: représentation des connaissances, raisonnement, planification, action, communication. Représentation des connaissances: systèmes experts, systèmes à base de règles, moteur d’inférence, chaînage avant et arrière, forme normale conjonctive, patrons de raisonnement, langages de représentation et de raisonnement, dictionnaires, ontologies, réseaux sémantiques, cadres. Traitement automatique de la langue naturelle: niveaux d’analyse, types d’ambigüités, techniques d’analyse probabilistes, règles de réécriture, formalisme Backus-Naur (BNF), analyseurs descendant et ascendant. Algorithme de recherche: algorithmes génétiques, réseaux de neurones, algorithmes de colonies de fourmis.
Séances de laboratoire couvrant les domaines de la réalisation de trois composantes d’un système : construction d'un système expert dont le moteur d'inférence applique les techniques de chaînage avant et arrière pour poser un diagnostic ; construction d'un système capable d’interpréter, pour le système expert, un texte en langue naturelle; construction d'une composante de recherche d’une solution optimale pour un agent virtuel fonctionnant dans l’environnement utilisé par le système expert et décrit dans le texte.
Note sur les préalables :
LOG320 Structures de données et algorithmes (4 cr.) et MAT350 Probabilités et statistiques (4 cr.) pour les programmes de baccalauréat en génie logiciel, baccalauréat en génie des technologies de l’information et baccalauréat en informatique distribuée et
MAT380 Algèbre linéaire (4 cr.) pour le programme de baccalauréat en informatique distribuée
Groupe | Jour | Type |
---|---|---|
01 | Lundi 13:30 | Activité de cours |
01 | Jeudi 13:30 | Laboratoire (Groupe A) |
01 | Jeudi 15:30 | Laboratoire (Groupe B) |
02 | Lundi 13:30 | Laboratoire (Groupe A) |
02 | Lundi 15:30 | Laboratoire (Groupe B) |
02 | Jeudi 13:30 | Activité de cours |