Ecole Polytechnique Universitaire de Marseille
Département Génie Industriel et Informatique
1999 - 2000

TITRE DU COURS : CONCEPTS ET OUTILS DE L'INTELLIGENCE ARTIFICIELLE


NOM DE L'INTERVENANT :  Bernard ESPINASSE

OBJECTIFS VISES PAR LE COURS :


Ce cours a pour objet de permettre à l'étudiant/e une reflexion articulée sur les principaux concepts et outils de l'intelligence artificielle (IA). La première partie est consacrée à la logique formelle. La deuxième partie, en s'appuyant sur la précédente introduit la programmation logique et le langage Prolog. La troisième partie développe les différentes méthodes de résolution de problèmes et présentera des outils de l'IA pour la repérsentation des connaissances (Réseaux sémantiques, schémas, ...). Dans la dernière partie on aborde la programmation déclarative et plus particulièrement les moteurs d'inférences à règles de production que nous illustrons par une présentation du langage CLIPS en montrant sa puissance notamment en résolution de problème.

OUVRAGES DE REFERENCE
  1. F.GIANNESINI, M. VAN CANEGHEM, H.KANOUI, R.PASERO, "Prolog", Masson, 85.
  2. J.L.LAURIERE, "Intelligence Artificielle : Représentation des connaissances", Eyrolles, 1988.
BIBLIOGRAPHIE COMPLEMENTAIRE
  1. B. ESPINASSE, "Eléments de logique formelle pour l'IA", support de cours, 1991.
  2. B. ESPINASSE, "Représentation des connaissances", support de cours, 1991.

PROGRAMME (séances de 2 heures) :

PARTIE 1 : LOGIQUE FORMELLE POUR L'IA


Séance 1: Présentation du cours
Introduction à l'Intelligence artificielle et à la logique formelle

Systèmes formels : définition, interprétation et décidabilité
Logique des propositions
• Organisation générative et déductive de la logique des propositions
• Tautologie et décidabilité dans la logique des propositions
Lecture recommandée : "Eléments de logique formelle pour l'IA", B.ESPINASSE, support de cours.

Travail personnel 1 : semaine 7 (vacances de février)
CLIPS  6.0 :
• manuel de l'utilisateur et manuel de référence :
    • acquerir CLIPS (gratuit) : http://www.ghgcorp.com/clips/
    • documentation CLIPS : http://www.ghgcorp.com/clips/
    • manuel de référence
    • tutorial complet

Séance 2: Logique des prédicats
• Organisation générative et déductive de la logique des prédicats
• Quantification universelle, ordre et particularisation des prédicats
• Décidabilité en logique des prédicats d'ordre 1
Lecture recommandée : "Eléments de logique formelle pour l'IA", support de cours.

PARTIE 2 : PROGRAMMATION LOGIQUE : PROLOG


Séance 3 : Les fondements thèoriques du langage Prolog

• Mise en forme de Clause : forme prenexe, skolemisation, FNC, forme de clauses
• Déduction automatique : unification, principe de résolution, introduction à Prolog
Lecture recommandée :  "Eléments de logique formelle pour l'IA", support de cours.

Travail personnel 2 : semaine 9
Travail sur un exposé par équipe sur des outils de l'IA

Séance 4 : Le programme Prolog
• Les assertions, les règles, l'effacement, la remontée
• Les règles prédéfinies : le dif(x,y) et la coupure "/"
• Les structures de données de Prolog : Listes et suites finies
• Codage d'une liste, Accès aux éléments d'une liste, Récursivité, Construction
Lecture recommandée :  "Prolog", F.GIANNESINI et al., InterEditions, 1985, Chapitre 1.

Travail personnel 3 : semaine 10
Listes et sous-listes finies : Arbres représentatifs, Systèmes d'équations
Application : les analyseurs : Approche naïve, Approche par les graphes.
Lecture recommandée :  "Prolog", F.GIANNESINI et al., InterEditions, 1985, Chapitre 2.

Séance 5 : Les structures de données de Prolog (suite) : Termes préfixés, N-uplets

Les principales règles prédéfinies de Prolog
Lecture recommandée :  "Prolog", F.GIANNESINI et al., InterEditions, 1985, Chapitre 3.

PARTIE 3 : RESOLUTION DE PROBLEMES ET REPRESENTATION DES CONNAISSANCES

Séance 6 : Résolution de problèmes
• La complexité des problèmes et des algorithmes, espaces de problèmes
• Résolution dans un espace d'état : Méthodes en largeur d'abord, en profondeur d'abord, A*
• Résolution par décomposition de problèmes, systèmes de production
Lecture recommandée :  "Intelligence Artificielle (tome 1)", J-L. LAURIERE, Chapitre 4.

Séance 7 : Des Réseaux Sémantiques aux représentations structurées
• Représentation et interprétation des connaissances avec les réseaux sémantiques
• Représentation des connaissances struturée : Frames, Scripts, Objets, Agents/Acteurs
Lecture recommandée : "Représentation et interprétation des connaissances", Support de cours.

Vacances de Paques : semaines 15 & 16

PARTIE 4 : PROGRAMMATION DECLARATIVE : CLIPS

Séance 8 : Systèmes à règles de production et programmation déclarative
• Règles de production en logique d'ordre 0 élargie, en logique d'ordre 1 et 2
• Espace de travail, cycle de base, particularités liées à la logique d'ordre 1, modes d'inférence
• Introduction à Clips : types de données, les constructs, faits ordonnés et les faits structurés
• Les règles de Clips et le contrôle dans Clips
Lecture recommandée :  "Manuel de l'utilisateur et manuel de référence"

Séance 9 : Présentation de Clips (suite)
• Objets et Classes dans Clips : Objets et Classes, construct defclass, héritage
• Création et destruction de classe, d'instances d'un objet
• Fonctions de manipulation de slots
• Facettes, fonctions  et démons
Lecture recommandée :  "Manuel de l'utilisateur et manuel de référence"

Séance 10 : Présentations des équipes.

Exament sans document le ...