• Aucun résultat trouvé

Systèmes Multi-Agents pour la gestion d’ontologies

3.3 Ontologies et Systèmes Multi-Agents

3.3.2 Systèmes Multi-Agents pour la gestion d’ontologies

Peu de travaux se sont intéressés à la construction ou à l’évolution d’ontologies à l’aide de SMAs. Souvent le SMA est un outil pour aider l’ontographe pour chercher des connais- sances ou à vérifier la cohérence de l’ontologie. Aussi, à notre connaissance, seul le travail de [Ottens, 2007] a utilisé le SMA en tant qu’ontologie.

[Aldea et al., 2003] utilisent un SMA dans une plateforme d’évolution d’ontologies. Le SMA de [Aldea et al., 2003] contient deux types d’agents : le coordinator agent et l’internet agent dont les rôles sont de retrouver des documents sur Internet, de les pondérer et de les classer pour aider un utilisateur à faire évoluer une ontologie. Le coordinator agent prend en entrée une ontologie. Cette ontologie est découpée en plusieurs parties. Chaque partie comporte un ou plusieurs concepts. Ensuite, le coordinator agent transmet chaque partie à l’internet agent dont le rôle est de retrouver sur Internet des pages qui contiennent des instances de ces concepts. Enfin, chaque internet agent retourne un résultat de recherche sous la forme de pages ordonnées selon une fonction de tri. L’ensemble des résultats est ensuite présenté à l’utilisateur pour l’aider à faire évoluer son ontologie. Le rôle du SMA n’est pas de faire évoluer l’ontologie mais plutôt d’apporter des documents pouvant contenir de nouveaux concepts ou de nouvelles instances.

[Hadzic et Dillon, 2009] proposent un système d’évolution d’ontologies à l’aide du pa- radigme agent. Pour faire évoluer une ontologie de domaine, ils ont défini quatre types d’agents : l’information agent, le data warehouse agent, le data mining agent et l’ontology agent. Un utilisateur, pour faire évoluer son ontologie, envoie une demande à l’information agent. Cette requête correspond à une demande de collecte d’information sur le domaine modé- lisé. L’information agent a pour rôle de chercher dans des bases de données, des informations sur le domaine traité. Ensuite, il envoie ces données au data warehouse agent pour les stocker. A la réception de nouvelles données, le data warehouse agent demande à l’agent data mining agent de traiter les données. Ce dernier a pour rôle d’extraire de nouvelles connaissances en appliquant des techniques de data mining pour identifier des concepts et de relations entre concepts. Enfin, ce dernier envoie son résultat à l’ontology agent qui compare les nouvelles connaissances avec l’ontologie courante. S’il existe des différences, l’ontology agent propose

une liste de modifications à l’utilisateur. L’utilisateur peut alors accepter ou refuser ces pro- positions.

[Hadzic et Dillon, 2009] ont exploité leur outil dans le domaine des maladies mentales où plusieurs banques de données structurées sont disponibles. Les mécanismes de ce sys- tème ressemblent beaucoup à ceux utilisées dans [Zablith et al., 2009]. La différence est que [Zablith et al., 2009] n’utilisent pas des agents et s’appuient sur des ontologies disponibles sur le Web plutôt que des bases de données. [Zablith et al., 2010] ont montré que l’utilisa- tion de sources de données externes devient inefficace si les connaissances du domaine sont très spécifiques. Les sources d’information qui décrivent les domaines que nous essayons de traiter sont très rares, de tels travaux ne sont donc pas exploitables pour notre cas d’étude.

La construction et l’évolution d’ontologies est un travail d’équipe qui fait intervenir plu- sieurs personnes. Souvent ces personnes sont éloignées et travaillent ensemble sur plusieurs versions d’une même ontologie. Afin de gérer ce travail d’équipe, plusieurs outils collabo- ratifs de gestion d’ontologies utilisant des SMAs ont été proposés.

[Bao et Honavar, 2004] utilisent des agents dans un outil collaboratif de construction d’ontologies. [Bao et Honavar, 2004] proposent un seul type d’agent nommé interface agent. Chaque interface agent est un représentant d’un utilisateur de l’outil. Le rôle de cet agent est de s’assurer de la cohérence de l’ontologie modélisée en suivant les modifications concur- rentes des utilisateurs.

[Slimani et al., 2011a] [Slimani et al., 2011b] proposent un outil nommé P2OManager pour

gérer les évolutions d’une ontologie à l’aide d’un SMA. L’objectif de cet outil est de mainte- nir la cohérence entre une ontologie et les ontologies dépendantes en utilisant un ensemble d’agents. Un agent peut avoir trois rôles : ontology agent, initiator ontology agent et dependant ontology agent. L’objectif des agents est de gérer les changements d’une ontologie est leurs propagations aux ontologies dépendantes. En fonction du rôle d’un agent, un ensemble d’actions sont réalisées. L’ontology agent a pour rôle de détecter si l’ontologie a changé ou non. C’est un "listeneur" qui perçoit les changements faits par un utilisateur du système sur l’ontologie. Lorsque cela ce produit l’agent change de rôle et devient initiator ontology agent. Son objectif est alors de détailler tous les changements qui ont affecté l’ontologie en compa- rant la version initiale de l’ontologie avec la version modifiée. Ensuite, l’agent décide de pro- pager ces changements aux autres agents ayant pour rôle dependant ontology agent. Pour cela, l’agent initiator ontology agent vérifie pour chaque changement l’existence d’un lien entre un élément modifié dans l’ontologie et les ontologies dépendantes. Si un tel lien existe, l’agent envoie un message de demande de propagation du changement aux agents dependant onto- logy agent. Dans le cas contraire la modification n’est pas propagée. Les travaux de [Slimani et al., 2011a] [Slimani et al., 2011b] s’intéressent à la propagation des évolutions d’ontologies

à d’autres ontologies dépendantes. P2OManager fournit une aide pour maitenir la cohérence

d’une ontologie avec d’autres ontologies dépendante à l’aide du paradigme agent. Cepen- dant, l’identification et l’extraction automatique de nouvelles connaissances ainsi que l’ajout automatique de nouveau concept dans l’ontologie ne sont pas proposés dans cet outil.