• Aucun résultat trouvé

dule ISIS

Cette section propose une m´ethodologie de d´eveloppement pour passer d’une ontologie `a l’impl´ementation du module ISIS pour un engin donn´e, lors de la conception de son logiciel de bord.

L’ontologie g´en´erique, d´efinie dans le chapitre pr´ec´edent, permet de d´efinir le domaine g´en´eral des missions d’exploration plan´etaire.

Dans le cadre d’une mission particuli`ere, les concepteurs d’un engin doivent cr´eer une instance de cette ontologie pour cet engin avant son lancement, ap- pel´ee ontologie mission.

L’utilisation de l’ontologie est consommatrice en ressource, et donc peu adapt´ee aux syst`emes embarqu´es. L’ontologie ne sera donc pas directement

impl´ement´ee `a bord des engins.

La m´ethodologie propos´ee pour aller de l’ontologie g´en´erique `a l’impl´ementation sp´ecifique d’un module ISIS comprend plusieurs ´etapes : d´eveloppement d’une ontologie g´en´erique, adaptation de l’ontologie g´en´erique vers une ontologie mission, sp´ecification du module ISIS, impl´ementation du module ISIS.

4.2.1

D´eveloppement d’une ontologie g´en´erique

Tout d’abord, une partie du travail consiste `a d´efinir une ontologie mod´elisant l’ensemble du contexte d’une mission d’exploration robotique. Cette ontologie est centr´ee autour de la notion d’engins et de services de hauts niveaux offerts par ces engins. Cela inclut ´egalement la connaissance associ´ee aux notions d’environnement physique, description des engins, description des services. Cette ontologie doit ˆetre vue comme la composante principale du proces- sus de standardisation et elle n’est pas restreinte `a une seule mission, mais couvre autant que possible l’ensemble du domaine des missions d’exploration spatiale robotiques.

4.2.2

Adaptation de l’ontologie g´en´erique vers une on-

tologie mission

Quand un nouvel engin est con¸cu pour une mission d´ej`a en cours ou bien `

a venir, une instance sp´ecifique de l’ontologie est produite pour correspondre `

a la mission donn´ee et aux sp´ecificit´es de cet engin et des services qu’il peut fournir. Cette instanciation particuli`ere de l’ontologie, repr´esentant un engin donn´e dans son environnement futur, utilisera les concepts de l’ontologie g´en´erique en l’´etendant et en la raffinant si n´ecessaire pour correspondre aux caract´eristiques de la mission et de l’engin. A ce stade, les interfaces de communication avec le logiciel de contrˆole de l’engin devront ˆetre d´efinies, ainsi que les informations `a propos de l’impl´ementation dans l’architecture logicielle.

4.2.3

Sp´ecification du module ISIS

Cette ´etape consiste `a construire le module de gestion de la connais- sance ISIS et la base de connaissance associ´ee qui correspondent aux pos- sibilit´es d’int´egration sur l’engin. Cette transcription de l’ontologie mission, doit g´en´erer du code de mani`ere aussi automatique que possible pour ´eviter les erreurs. Typiquement une ontologie peut ˆetre export´ee dans un format de fichier OWL (du type XML), mais ce n’est pas une obligation d’utiliser

ce format directement dans le module. D’autres solutions sont possibles : l’une d’elle est d’utiliser un traducteur pour la transformer en repr´esentation orient´ee objet, en impl´ementant les fonctions sp´ecifiques associ´ees pour ex- ploiter cette repr´esentation. Une autre option consisterait `a utiliser des fra- meworks de repr´esentation de la connaissance comme celui propos´e par le projet ”RoboEarth”, qui permet d’encoder une ontologie en langage Prolog pour effectuer des tˆaches de raisonnement sur ce mod`ele logique.

4.2.4

Impl´ementation du module ISIS

Finalement le composant ISIS, destin´e `a ˆetre int´egr´e dans l’architecture logicielle de l’engin, impl´ementera les fonctions standards charg´ees de g´erer la connaissance locale, en la maintenant `a jour et en la propageant sur le r´eseau d’engins. Ce module sera connect´e `a l’architecture sp´ecifique de l’en- gin l’embarquant en utilisant des interfaces logicielles d´edi´ees, permettant ainsi de garder une conception g´en´erique.

Il est important de noter que cette approche permet de respecter la di- versit´e d’origines probable des diff´erents engins. Elle impose seulement que la mˆeme ontologie soit utilis´ee comme point de d´epart (comme dans tous les standards) mais elle n’impose pas d’utiliser un moyen particulier pour cr´eer et g´erer le logiciel embarqu´e. La seule contrainte est qu’il puisse s’interfacer avec un module ISIS, qui sera consid´er´e comme une brique additionnelle de l’architecture logicielle, en charge de g´erer les interactions locales.

4.2.5

Probl`emes de compatibilit´e ascendente

Dans le cas de la conception d’un nouvel engin utilisant la version courante de l’ontologie g´en´erique, par exemple l’engin Y, embarquant une version Vj de la repr´esentation de la connaissance, sur la figure4.1, se pose le probl`eme de sa compatibilit´e avec les engins pour lesquels il avait ´et´e utilis´e une version ant´erieure de cette ontologie, par exemple l’engin X, embarquant une version Vi de la repr´esentation de la connaissance.

Trois situations sont `a envisager :

– Si le nouvel engin embarque seulement une nouvelle instanciation de l’ontologie g´en´erique, il n’y aura aucun probl`eme de compatibilit´e. Il suffira de partager la nouvelle instance avec les anciens engins pour qu’ils mettent `a jour leur connaissance.

Figure 4.1 – Evolution de la version de la repr´esentation de la connaissance au cours du temps

– Si le nouvel engin embarque une nouvelle version de l’ontologie, dans laquelle il a fallu d´efinir de nouveaux concepts. Il faudra veiller `a ce que ces nouveaux concepts ´etendent seulement la version pr´ec´edente de l’ontologie, sans modifier les relations existantes. Cela permettra que le nouvel engin soit compatible avec les anciens et qu’ils puissent s’´echanger des informations issues de la premi`ere version de l’ontologie. Ce sera alors `a l’engin le plus r´ecent de s’adapter `a cette limitation. – Une autre possibilit´e est que l’engin le plus ancien mette `a jour sa

version de l’ontologie, si ses ressources mat´erielles et logicielles le lui permettent, en int´egrant les nouveaux concepts.