Les logiques de description aussi appelées logiques descriptives (LD) sont une famille de langages de représentation de connaissance qui peuvent être utilisés pour représenter la connaissance terminologique d'un domaine d'application d'une manière formelle et structurée. Le nom de logique de description se rapporte, d'une part à la description de concepts utilisée pour décrire un domaine et d'autre part à la sémantique basée sur la logique qui peut être donnée par une transcription en logique des prédicats du premier ordre. La logique de description a été développée comme une extension des langages à cadres, une famille de langage de programmation pour l'intelligence artificielle, et des réseaux sémantiques, qui ne possédaient pas de sémantique formelle basée sur la logique.
Les logiques de description ont été conçues à partir des réseaux sémantiques de Quillian (ref) qui sont des graphes orientés étiquetés dans lesquels on associe des concepts aux nœuds et des relations aux arcs, et de la sémantique des cadres de Minsky (ref) où l'on a des concepts représentés par des cadres qui sont caractérisés par un certain nombre d'attributs (appelés aussi slots) qui contiennent de l'information sur leur contenu.
Les logiques de description forment une famille de langages de représentation de connaissances qui peuvent être utilisés pour représenter la connaissance terminologique d'un domaine d'application d'une façon structurée et formelle. Le nom « logique de description » peut être interprété de deux manières. D'une part, ces langages ont été élaborés pour écrire la « description » des concepts pertinents d'un domaine d'application. D'autre part, une caractéristique cruciale de ces langages est qu'ils ont une sémantique formelle définie en logique du premier ordre (à la différence des propositions précédentes comme les cadres de Minsky). Dans ce sens, nous pouvons dire que les LDs ont une sémantique « descriptive » formelle.
Les logiques de description sont utilisées pour de nombreuses applications. Sans être exhaustifs, nous pouvons dire que ces applications font partie des domaines suivants :
La plupart des logiques de description divisent la connaissance en deux parties :
Toutes les informations connues sont alors modélisées comme un couple , où est un ensemble de formules relatives aux informations terminologiques (la T-Box) et où est un ensemble de formules relatives aux informations sur les assertions (la A-Box).
Une autre manière de voir la séparation entre ces informations est d'associer la T-Box aux règles qui régissent notre monde (par exemple la physique, la chimie, la biologie, etc.), et d'associer les individus de notre monde à la A-Box (par exemple Jean, Marie, un chat, etc.).
Les logiques de description utilisent les notions de concept, de rôle et d'individu. Un concept correspond à une « classe d'éléments » et est interprété comme un ensemble dans un univers donné. Les rôles correspondent aux « liens entre les éléments » et sont interprétés comme des relations binaires sur un univers donné. Les individus correspondent aux éléments d'un univers donné. La sémantique des logiques de description est définie comme suit :
Définition 1 :
En d'autres termes, une interprétation de la logique de description n'est rien de plus qu'un modèle pour un type particulier de signature du premier ordre, où seuls les prédicats unaires et binaires sont autorisés, et où l'ensemble des symboles de fonction est vide.
Typiquement, la base de connaissances standard utilisée par les logiques de description est définie de la manière suivante :
Définition 2 :
Les axiomes terminologiques ont été pensés à l'origine comme des définitions, et nombre de conditions plus restrictives leur ont été imposées. Les deux restrictions les plus importantes sont les suivantes :
Ces restrictions sont liées à l'idée de considérer les axiomes terminologiques comme des définitions de concepts.
Les logiques de descriptions ont une base commune enrichie de différentes extensions (voir tableau ci-dessous). On peut dès lors avoir des concepts complexes composés de concepts atomiques, et de même pour les rôles.
| Lettre | Constructeur | Syntaxe | Sémantique |
|---|---|---|---|
| nom de concept | |||
| nom de rôle | |||
| top | |||
| conjonction | |||
| quantificateur universel | |||
| négation de concepts non nécessairement primitifs | |||
| disjonction | |||
| quantificateur existentiel typé | |||
| restriction de cardinalité | |||
| restriction de cardinalité qualifiée | |||
| un-de | |||
| role filler | |||
| conjonction de rôles | |||
| rôles inverses | |||
| hiérarchie des rôles | |||
| transitivité des rôles | Plus petite relation transitive contenant |
L'une des premières logiques de description est le langage [Brachman and Levesque, 1984], qui est défini comme une logique de description permettant l'utilisation des quantificateurs universels, de la conjonction, et des quantificateurs existentiels de la forme . Le langage a été proposé comme un formalisme pour la sémantique des cadres de Minsky. La conjonction de concepts est implicite dans la structure d'un cadre, qui requiert un ensemble de conditions pour être satisfait. La quantification des rôles permet de caractériser les slots.
La logique [Schmidt-Schauss and Smolka, 1991] a étendu la logique en y ajoutant la négation des concepts atomiques. Cette logique peut être considérée comme la logique de base des autres logiques de description.
Les logiques de description qui existent sont des combinaisons des différents éléments du tableau ci-dessus. Par exemple, si l'on rajoute la négation complète à la logique , on obtient la logique .
Certaines logiques sont équivalentes, notamment et . Ces deux logiques augmentées par sont notées . Les langages utilisés par OWL en sont une extension, respectivement pour OWL-Lite et pour OWL-DL.
En LD, la notion d'inférence est décrite comme ci-dessous:
Définition 3 :
Soit une base de connaissance et une interprétation, alors est un modèle de (notation, ) si pour tous . Nous disons dans ce cas que est un modèle de la base de connaissance . Étant donné une base de connaissance et un axiome terminologique ou une assertion , si pour tout modèle de nous avons .
En LD, l'expression raisonnement sur la T-Box fait référence à la capacité de réaliser des inférences depuis une base de connaissance où est non-vide, et d'une manière similaire, raisonnement sur la A-Box est l'implication pour une A-Box non vide.
Définition 4 :
Les tâches de déduction de base peuvent être utilisées pour définir des tâches plus complexes. En particulier:
La saturation de la A-Box sert à compléter les informations de la A-Box en accord avec les connaissances de la T-Box, on obtient donc: Définition 5 :
Exemple
La formule de dit que les chevaux de sexe masculin sont des étalons, et la formule de dit que le cheval shadowfax est un étalon. La sémantique formelle que nous donnons dans la définition 3 nous permet de vérifier que a au moins un modèle (i.e., il est cohérent). Et à partir de nous pouvons déduire plusieurs informations, par exemple que le concept est cohérent avec (il existe une certaine interprétation satisfaisant qui assigne une extension non-vide à :
Notons qu'à cause des limitations syntaxiques dans la définition de base des assertions, il n'est pas possible de représenter les implications fortes (qui proviennent de ) telle que par exemple le fait que dans tous les modèles de , l'extension de est non-vide:
Avec comme connaissance de base on a la A-Box saturé :