L’objectif de l'Intelligence Artificielle est de donner aux machines une certaine "intelligence" = capacité de "raisonner" = de déduire et d'induire. Cela passe par la manipulation de connaissances : la représentation et l'application d'information relatives au problème à résoudre. Par ailleurs, l'IA peut être étudiée sur 2 axes principaux : l'IA "classique" où la machine se borne à déduire des connaissances à partir de celles acquises (raisonnement, systèmes experts modernes, etc...); et l'IA plus récente où la machine cherche à induire des connaissances à partir d'exemples (cf. apprentissage Artificielle). Ce cours donne priorité à l'IA classique et présente les techniques et les outils de base employés en raisonnement et en résolution de problèmes dans différents domaines d'IA. L'étude et l'implantation de ces techniques et outils font appel aux concepts avancés tels que les graphes et les objets. Quelques notions de base en logique seront présentées afin de faciliter l'utilisation du langage Prolog permettant un raisonnement logique. Des exemples d’utilisation industrielle de systèmes intelligents - experts seront présentés. Egalement, ce cours introduit le paradigme de la "programmation avec des contraintes" qui emploie la logique avec les contraintes (numériques) pour dispenser un outil puissant de raisonnement ET d'optimisation.
En parallèle, les élèves choisiront un sujet à préparer en groupe avec restitution et rapport final.