dimanche 28 avril 2013

A0386 Moteur d'Inférence en logique des prédicats en Java ou C# pour les nuls

C'est très facile de construire soi-même son moteur d'inférence avec un langage orienté objet comme Java ou C#.
Voici le support du cours d'Intelligence Artificielle de l'ESILV ( 4 ème année) qui explique comment rédiger un tel moteur.

http://fr.slideshare.net/Jean_Rohmer/construire-un-moteur-dinfrence

On explique en particulier comment tout se ramène à des opérations de jointure sur des tables.

Il s'agit d'un moteur sophistiqué, en logique des prédicats avec des variables, en chaînage avant.
On parle aussi de la Méthode d'Alexandre en Datalog, qui permet de faire du chaînage arrière à partir du chaînage avant.
On explique aussi comment ce moteur peut être le cœur d'un système réactif intelligent, de type "Complex Event Processing'.

La représentation des connaissances utilisée est le réseau sémantique, (ou triplets). Ceci permet au moteur de travailler sur des données de type RDF du Web sémantique.

L'expérience montre que la quasi-totalité des élèves terminent leur moteur d'inférence en 3 séances de TP.
Ecrire soi-même son moteur d'inférence plutôt qu'en utiliser un déjà tout fait offre évidemment de multiples avantages, entre autres ceux de pouvoir l'adapter, le faire évoluer, l'insérer dans n'importe quelle application.
Et évidemment le plaisir d'écrire soi-même un programme relativement complexe, et de comprendre à fond les mécanismes d'inférence !

1 commentaire:

Anonyme a dit…

Bonjour,

Tous les slides du cours sont coupés...dommage hyper intressant