Plate-forme GALILEI

1 Description

Le projet GALILEI vise à développer une approche cohérente et intégrée en science de l'information. Il s'agit de proposer un cadre conceptuel commun pour différentes catégories d'algorithmes (partitionnement d'un corpus documentaire, calcul de profils de recherche, détection de communautés d'intérêts, etc.), ainsi qu'une plate-forme logicielle qui les implémente. Cette dernière se veut autant une infrastructure scientifique, avec laquelle des chercheurs peuvent implémenter et évaluer leurs propres algorithmes, qu'une solution informatique susceptible d'être déployée dans des environnements industriels.
Démarré en 2000 grâce à des financements de recherche de la Région wallonne, le projet GALILEI est maintenu depuis 2010 par le Paul Otlet Institute.
Les informations techniques (notamment la description de l'API) et scientifiques (algorithmes, modèles, etc.) du projet GALILEI se retrouvent sur WikiCS.

2 La plate-forme GALILEI

La plate-forme logicielle GALILEI propose une implémentation en C++ du cadre théorique. Elle se présente comme une librairie offrant une API générique (avec notamment des outils de base) ainsi qu'un ensemble de plug-ins fournissant les différents algorithmes. L'ensemble est disponible sous forme de logiciel libre (licence GNU LGPL). Actuellement, la plate-forme GALILEI représente un effort de plus de 40 années-homme.
Architecture GALILEI
Concrètement, la plate-forme se compose de cinq couches :
  1. Une série de librairies libres et open source existantes.
  2. Les librairies R (également maintenue par le Paul Otlet Institute) qui propose plusieurs outils C++ génériques.
  3. La librairie C++ GALILEI proprement dite, qui fournit les différentes classes correspondantes aux modèles du cadre théorique.
  4. Une série de plug-ins implémentant les divers algorithmes (lemmatisation dans plusieurs langues, extraction textuelle, etc.).
  5. Des applications pour piloter la plate-forme.
La totalité du code (exceptée les parties graphiques) se conforme aux standards ANSI C++ et Posix, et la gestion des projets se fait avec cmake. Actuellement, seuls les systèmes type UNIX sont supportés (en particulier GNU/Linux), mais le code devrait se compiler dans d'autres environnements. Une description des étapes à suivre pour installer la plate-forme est disponible sur WikiCS.

3 Les applications

Actuellement, deux applications sont supportées :
  1. QGALILEI est une application Qt pour surveiller les différents aspects de la plate-forme. L'utilisateur peut facilement y configurer les plug-ins, lancer des tâches de calcul, générer des simulations, évaluer et consulter les solutions. Elle a été conçue pour les chercheurs afin de facilement piloter leurs expérimentations.
  2. UpGALILEI est une application textuelle qui exécute un script décrivant différentes tâches à accomplir. Elle a été pensée pour être lancée automatiquement dans un environnement de production (par exemple via un logiciel comme cron).
figure wikics/figs/qgalilei.png
L'application QGALILEI.