Rapport d`activité 2003–2006 - Lina
Transcription
Rapport d`activité 2003–2006 - Lina
Laboratoire d’Informatique de Nantes Atlantique, FRE 2729 Demande de création d’UMR Contractualisation année 2008 Rapport d’activité 2003–2006 LINA, Université de Nantes – 2, rue de la Houssinière – BP 92208 – 44322 NANTES CEDEX 3 Tél. : 02 51 12 58 17 – Fax. : 02 51 12 58 97 – http://www.lina.atlanstic.net/ Laboratoire d’Informatique de Nantes Atlantique R APPORT D ’ ACTIVITÉ 2003–2006 Résumé Directeur Frédéric Benhamou Le Laboratoire d’Informatique de Nantes Atlantique (LINA, CNRS FRE 2729) est une unité de recherche en sciences du logiciel, qui compte 165 membres dont 70 enseignants-chercheurs permanents. Le LINA est issu du regroupement, en 2004, de l’Institut de Recherche en Informatique de Nantes (IRIN) et du département informatique de l’École des Mines de Nantes. Les établissements partenaires du LINA sont donc le CNRS, l’Université de Nantes et l’École des Mines de Nantes. Sa création était l’un des objectifs du projet de pôle informatique régional, inscrit au contrat État de Plan 2000-2007. Aujourd’hui le LINA joue un rôle moteur dans l’animation de la fédération AtlanSTIC (CNRS FR 2819), le lancement du projet MILES financé par la région Pays de la Loire et la proposition Math-STIC soumise au CPER 2007. [email protected] Directeur adjoint Pierre Cointe [email protected] Sur le plan scientifique, le LINA développe deux axes de recherche : les architectures logicielles distribuées et les systèmes d’aide à la décision. Ce rapport d’activité décrit les travaux accomplis par les équipes du LINA de 2003 à 2006 et en précise succinctement leurs projets scientifiques. Deux documents spécifiques présentant respectivement le bilan-perspectives du laboratoire ainsi que les projets scientifiques de ses équipes pour le quadriennal 2008-2011 sont téléchargeables sur le site web du LINA et seront envoyés sur simple demande à Anne-Françoise Quin ([email protected]) Laboratoire d’Informatique de Nantes Atlantique 2, rue de la Houssinière, B.P. 92208, F-44322 NANTES CEDEX 3 Téléphone : +33 2 51 12 58 17 Télécopieur : +33 2 51 12 58 97 WEB : http://www.lina.atlanstic.net/ Table des matières Introduction 15 1 GDD: Gestion de Données Distribuées 1.1 Composition de l’équipe . . . . . . . . . . . . . . . . . . . . . . . 1.2 Présentation et objectifs généraux . . . . . . . . . . . . . . . . . . 1.2.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.2.2 Les thèmes de recherche . . . . . . . . . . . . . . . . . . . 1.2.3 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . 1.3 Fondements scientifiques . . . . . . . . . . . . . . . . . . . . . . . 1.3.1 Gestion de données . . . . . . . . . . . . . . . . . . . . . . 1.3.2 Gestion de modèles . . . . . . . . . . . . . . . . . . . . . . 1.3.3 Médiation . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.4 Domaines d’applications . . . . . . . . . . . . . . . . . . . . . . . 1.4.1 Applications transactionnelles et décisonnelles . . . . . . . 1.4.2 Applications transformationnelles . . . . . . . . . . . . . . 1.4.3 Communautés professionnelles et applications scientifiques 1.5 Résultats nouveaux . . . . . . . . . . . . . . . . . . . . . . . . . . 1.5.1 Gestion de données dans les grappes . . . . . . . . . . . . . 1.5.2 Gestion de données en P2P . . . . . . . . . . . . . . . . . . 1.5.3 Ingénierie des données dirigée par les modèles . . . . . . . 1.5.4 Médiation de données . . . . . . . . . . . . . . . . . . . . 1.6 Logiciels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6.1 APPA (Atlas P2P Architecture) . . . . . . . . . . . . . . . 1.6.2 ATL (Atlas Transformation Language) . . . . . . . . . . . . 1.6.3 AMW (Atlas Model Weaver) . . . . . . . . . . . . . . . . . 1.6.4 AM3 (Atlas MegaModel Manager) . . . . . . . . . . . . . 1.6.5 RepDB* . . . . . . . . . . . . . . . . . . . . . . . . . . . 1.6.6 BaGates For You . . . . . . . . . . . . . . . . . . . . . . . 1.6.7 CorbaTrace . . . . . . . . . . . . . . . . . . . . . . . . . . 1.7 Diffusion des résultats . . . . . . . . . . . . . . . . . . . . . . . . 1.7.1 Rayonnement . . . . . . . . . . . . . . . . . . . . . . . . . 1.7.2 Comités de programmes et comités de lecture . . . . . . . . 1.7.3 Organisation de congrès . . . . . . . . . . . . . . . . . . . 1.7.4 Impact sur la formation universitaire . . . . . . . . . . . . . 1.7.5 Transfert de technologie . . . . . . . . . . . . . . . . . . . 1.8 Stratégie de valorisation et de coopération . . . . . . . . . . . . . . 5 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 19 20 20 21 21 22 22 22 23 23 23 24 24 24 25 27 28 30 33 33 33 34 34 35 35 35 36 36 36 37 37 37 38 6 Rapport d’activité LINA 2003–2006 1.8.1 Actions internationales . . . . . . . . . . . . 1.8.2 Contrats labellisés par l’ANR . . . . . . . . 1.9 Publications de référence de l’équipe hors période . . 1.10 Publications de référence de l’équipe dans la période 1.11 Publications de l’équipe . . . . . . . . . . . . . . . . 2 GRIM: Gestion et Résumé d’Information Multimédia 2.1 Composition de l’équipe . . . . . . . . . . . . . . . 2.2 Présentation et objectifs généraux . . . . . . . . . . 2.2.1 Historique . . . . . . . . . . . . . . . . . . . 2.2.2 Les thèmes de recherche . . . . . . . . . . . 2.3 Fondements scientifiques . . . . . . . . . . . . . . . 2.3.1 Des structures aux bases de données . . . . . 2.3.2 L’analyse de données multimédias . . . . . . 2.3.3 La théorie des ensembles flous . . . . . . . . 2.3.4 Gestion de données distribuées . . . . . . . . 2.4 Domaines d’applications . . . . . . . . . . . . . . . 2.4.1 Systèmes de gestion de données multimédia . 2.4.2 Les résumés de données volumineuses . . . . 2.5 Résultats nouveaux . . . . . . . . . . . . . . . . . . 2.5.1 Les résumés de données . . . . . . . . . . . 2.5.2 Gestion de données multimédia . . . . . . . 2.6 Logiciels . . . . . . . . . . . . . . . . . . . . . . . 2.6.1 SaintEtiQ . . . . . . . . . . . . . . . . . . . 2.6.2 FindImAGE . . . . . . . . . . . . . . . . . . 2.7 Stratégie de valorisation et de coopération . . . . . . 2.7.1 Actions internationales . . . . . . . . . . . . 2.7.2 Actions nationales . . . . . . . . . . . . . . 2.7.3 Actions régionales . . . . . . . . . . . . . . 2.8 Diffusion des résultats . . . . . . . . . . . . . . . . 2.8.1 Rayonnement . . . . . . . . . . . . . . . . . 2.8.2 Comités de programmes et comités de lecture 2.8.3 Organisation de congrès . . . . . . . . . . . 2.8.4 Impact sur la formation universitaire . . . . . 2.9 Publications de référence de l’équipe hors période . . 2.10 Publications de référence de l’équipe dans la période 2.11 Publications de l’équipe . . . . . . . . . . . . . . . . 3 COLOSS: Composants et Logiciels Sûrs 3.1 Composition de l’équipe . . . . . . 3.2 Présentation et objectifs généraux . 3.2.1 Historique . . . . . . . . . . 3.2.2 Objectifs principaux . . . . 3.2.3 Les thèmes de recherche . . 3.2.4 Perspectives . . . . . . . . . 3.3 Fondements scientifiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 40 43 44 44 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 55 56 56 57 62 62 63 63 64 64 64 64 65 65 68 70 70 70 71 71 72 73 73 73 74 74 75 75 76 76 . . . . . . . 83 83 83 83 84 85 88 88 7 3.4 3.5 Domaines d’applications . . . . . . . . . . . . . . . . . . . . . . . . . Logiciels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.1 BOSCO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.2 COSTO . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.3 ORYX . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.5.4 ATACORA . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6 Résultats nouveaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.6.1 Spécification et vérification de modèles à objets et à composants 3.6.2 Intégration de méthodes formelles et analyse multifacette . . . . 3.7 Stratégie de valorisation et de coopération . . . . . . . . . . . . . . . . 3.7.1 Actions internationales . . . . . . . . . . . . . . . . . . . . . . 3.7.2 Actions européennes . . . . . . . . . . . . . . . . . . . . . . . 3.7.3 Actions nationales . . . . . . . . . . . . . . . . . . . . . . . . 3.7.4 Actions régionales . . . . . . . . . . . . . . . . . . . . . . . . 3.8 Diffusion des résultats . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8.1 Rayonnement . . . . . . . . . . . . . . . . . . . . . . . . . . . 3.8.2 Expertise de projets . . . . . . . . . . . . . . . . . . . . . . . . 3.8.3 Comités de programmes et comités de lecture . . . . . . . . . . 3.8.4 Organisation de congrès . . . . . . . . . . . . . . . . . . . . . 3.8.5 Impact sur la formation universitaire . . . . . . . . . . . . . . . 3.9 Publications de référence de l’équipe hors période . . . . . . . . . . . . 3.10 Publications de référence de l’équipe dans la période . . . . . . . . . . 3.11 Publications de l’équipe . . . . . . . . . . . . . . . . . . . . . . . . . . 3.12 Bibliographie externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 . 91 . 91 . 91 . 91 . 92 . 92 . 92 . 93 . 94 . 95 . 95 . 95 . 95 . 96 . 96 . 96 . 96 . 97 . 97 . 98 . 98 . 99 . 102 4 MODAL: Langages de Modélisation d’Architectures Logicielles 4.1 Composition de l’équipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2 Présentation et objectifs généraux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.2 Objectifs principaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.3 Les thèmes de recherche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.2.4 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.3 Fondements scientifiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.4 Domaines d’applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5 Résultats nouveaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.5.1 Thème - Modèles de spécification et de conception d’architectures logicielles . . 4.5.2 Thème - Modèles d’évolutions structurale et comportementale d’architectures logicielles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6 Logiciels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6.1 MY . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6.2 SAEV . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.6.3 COSA . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.7 Activités contractuelles . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8 Actions régionales, nationales et internationales . . . . . . . . . . . . . . . . . . . . . . 4.8.1 Actions régionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8.2 Actions nationales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 105 105 106 106 107 108 110 110 111 111 111 114 116 116 117 117 117 118 118 118 8 Rapport d’activité LINA 2003–2006 4.9 4.10 4.11 4.12 4.13 4.8.3 Actions européennes . . . . . . . . . . . . . . . . . . . . . . . . . . 4.8.4 Actions internationales . . . . . . . . . . . . . . . . . . . . . . . . . 4.8.5 Expertise de projets . . . . . . . . . . . . . . . . . . . . . . . . . . . Diffusion des résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4.9.1 Organisation de conférences scientifiques, d’écoles de chercheurs,. . . 4.9.2 Comités de programmes et comités de lecture . . . . . . . . . . . . . 4.9.3 Impact sur la formation universitaire . . . . . . . . . . . . . . . . . . 4.9.4 Conférences et séminaires donnés . . . . . . . . . . . . . . . . . . . 4.9.5 Activités collectives . . . . . . . . . . . . . . . . . . . . . . . . . . Publications de référence de l’équipe hors période . . . . . . . . . . . . . . . Publications de référence de l’équipe dans la période . . . . . . . . . . . . . Publications de l’équipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . Bibliographie externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 OBASCO: OBjets, ASpects, COmposants 5.1 Composition de l’équipe . . . . . . . . . . . . . . . . . . . 5.2 Présentation et objectifs généraux . . . . . . . . . . . . . . 5.2.1 Historique . . . . . . . . . . . . . . . . . . . . . . . 5.2.2 Les thèmes de recherche . . . . . . . . . . . . . . . 5.2.3 Perspectives . . . . . . . . . . . . . . . . . . . . . . 5.3 Fondements scientifiques . . . . . . . . . . . . . . . . . . . 5.3.1 À propos de l’évolution des langages à objets . . . . 5.3.2 Des objets aux composants . . . . . . . . . . . . . . 5.3.3 Des objets aux aspects . . . . . . . . . . . . . . . . 5.3.4 Des langages d’aspects aux langages dédiés . . . . . 5.4 Domaines d’applications . . . . . . . . . . . . . . . . . . . 5.4.1 Systèmes d’exploitation et réseaux . . . . . . . . . . 5.4.2 Intergiciels et systèmes d’information des entreprises 5.5 Résultats nouveaux . . . . . . . . . . . . . . . . . . . . . . 5.5.1 Post-objets . . . . . . . . . . . . . . . . . . . . . . 5.5.2 Composants . . . . . . . . . . . . . . . . . . . . . . 5.5.3 Aspects . . . . . . . . . . . . . . . . . . . . . . . . 5.5.4 Langages dédiés (DSL) . . . . . . . . . . . . . . . . 5.6 Logiciels . . . . . . . . . . . . . . . . . . . . . . . . . . . 5.6.1 Arachne . . . . . . . . . . . . . . . . . . . . . . . . 5.6.2 Bossa . . . . . . . . . . . . . . . . . . . . . . . . . 5.6.3 EAOP . . . . . . . . . . . . . . . . . . . . . . . . . 5.6.4 Safran . . . . . . . . . . . . . . . . . . . . . . . . . 5.6.5 Reflex . . . . . . . . . . . . . . . . . . . . . . . . . 5.7 Stratégie de valorisation et de coopération . . . . . . . . . . 5.7.1 Actions internationales . . . . . . . . . . . . . . . . 5.7.2 Actions nationales . . . . . . . . . . . . . . . . . . 5.7.3 Actions régionales . . . . . . . . . . . . . . . . . . 5.8 Diffusion des résultats . . . . . . . . . . . . . . . . . . . . 5.8.1 Rayonnement . . . . . . . . . . . . . . . . . . . . . 5.8.2 Comités de programme et comités de lecture . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 119 120 121 121 121 123 123 124 124 124 125 130 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 131 133 133 133 134 134 134 135 136 137 138 138 139 139 139 141 145 149 150 150 151 151 152 152 153 153 157 162 164 164 165 9 5.8.3 Organisation de congrès . . . . . . . . . . . 5.8.4 Impact sur la formation universitaire . . . . . 5.8.5 Transfert de technologie . . . . . . . . . . . 5.9 Publications de référence de l’équipe hors période . . 5.10 Publications de référence de l’équipe dans la période 5.11 Publications de l’équipe . . . . . . . . . . . . . . . . 5.12 Bibliographie externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 167 169 169 169 170 171 180 6 CD: Contraintes Discrètes 6.1 Composition de l’équipe . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2 Présentation et objectifs généraux . . . . . . . . . . . . . . . . . . . . . 6.2.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.2.2 Les thèmes de recherche . . . . . . . . . . . . . . . . . . . . . . 6.2.3 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.3 Fondements scientifiques . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4 Domaines d’applications . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.1 Planification et ordonnancement . . . . . . . . . . . . . . . . . . 6.4.2 Gestion d’entrepôts . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.3 Bio informatique . . . . . . . . . . . . . . . . . . . . . . . . . . 6.4.4 Outils de programmation par contraintes . . . . . . . . . . . . . . 6.5 Résultats nouveaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.1 Applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.2 Apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.3 Contraintes globales . . . . . . . . . . . . . . . . . . . . . . . . 6.5.4 Explications . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.5 Filtrage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.6 Hybridation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.7 Ordre . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.5.8 Outils de mise au point . . . . . . . . . . . . . . . . . . . . . . . 6.5.9 Problèmes sur-contraints . . . . . . . . . . . . . . . . . . . . . . 6.6 Logiciels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.6.1 Le système de programmation par contraintes CHOCO . . . . . . 6.6.2 Le système PaLM: Un noyau de contraintes équipé d’explications 6.6.3 VISEXP: Un outil pour la visualisation d’explications . . . . . . 6.6.4 SICStus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.6.5 Apprentissage . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.7 Activités contractuelles . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.7.1 Actions internationales . . . . . . . . . . . . . . . . . . . . . . . 6.7.2 Actions nationales . . . . . . . . . . . . . . . . . . . . . . . . . 6.7.3 Actions régionales . . . . . . . . . . . . . . . . . . . . . . . . . 6.8 Diffusion des résultats . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.8.1 Rayonnement . . . . . . . . . . . . . . . . . . . . . . . . . . . . 6.8.2 Comités de programmes et comités de lecture . . . . . . . . . . . 6.8.3 Organisation de congrès . . . . . . . . . . . . . . . . . . . . . . 6.8.4 Impact sur la formation universitaire . . . . . . . . . . . . . . . . 6.8.5 Transfert de technologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 185 185 186 186 187 189 190 191 191 191 191 192 192 192 194 194 195 196 196 197 198 198 198 198 199 199 199 200 200 200 201 203 203 203 206 208 208 208 10 Rapport d’activité LINA 2003–2006 6.9 Publications de référence de l’équipe hors période . . . . . . . . . . . . . . . . . . . . . 208 6.10 Publications de référence de l’équipe dans la période . . . . . . . . . . . . . . . . . . . 209 6.11 Publications de l’équipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 209 7 CoCoA: Contraintes Continues et Applications 7.1 Composition de l’équipe . . . . . . . . . . . . . . . . . . . . . . 7.2 Présentation et objectifs généraux . . . . . . . . . . . . . . . . . 7.2.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . 7.2.2 Les axes de recherche . . . . . . . . . . . . . . . . . . . 7.2.3 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . 7.3 Fondements scientifiques . . . . . . . . . . . . . . . . . . . . . . 7.3.1 Satisfaction de contraintes . . . . . . . . . . . . . . . . . 7.3.2 Analyse par intervalles . . . . . . . . . . . . . . . . . . . 7.3.3 De la programmation logique aux contraintes . . . . . . . 7.3.4 Coopération de solveurs . . . . . . . . . . . . . . . . . . 7.4 Domaines d’applications . . . . . . . . . . . . . . . . . . . . . . 7.5 Résultats nouveaux . . . . . . . . . . . . . . . . . . . . . . . . . 7.5.1 CP et analyse par intervalles . . . . . . . . . . . . . . . . 7.5.2 CP, recherche locale et optimisation . . . . . . . . . . . . 7.5.3 CP et collaboration de solveurs . . . . . . . . . . . . . . . 7.5.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . 7.5.5 Autres résultats . . . . . . . . . . . . . . . . . . . . . . . 7.6 Logiciels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7.6.1 Gaol (NOT Just Another Interval Library) . . . . . . . . . 7.6.2 Realpaver . . . . . . . . . . . . . . . . . . . . . . . . . . 7.6.3 ELISA: la plate-forme de COCOA . . . . . . . . . . . . . 7.6.4 DecLIC (Declarative Language with Interval Constraints) 7.6.5 OpAC (Open Architecture for Constraints) . . . . . . . . 7.6.6 TOM (The Open Modeller) . . . . . . . . . . . . . . . . 7.6.7 USV (Universal Solution Viewer) . . . . . . . . . . . . . 7.6.8 Interface Buddy-Sicstus . . . . . . . . . . . . . . . . . . 7.6.9 Interface Polylib-Sicstus . . . . . . . . . . . . . . . . . . 7.7 Stratégie de valorisation et de coopération . . . . . . . . . . . . . 7.7.1 Actions internationales . . . . . . . . . . . . . . . . . . . 7.7.2 Actions nationales . . . . . . . . . . . . . . . . . . . . . 7.7.3 Actions régionales . . . . . . . . . . . . . . . . . . . . . 7.8 Diffusion des résultats . . . . . . . . . . . . . . . . . . . . . . . 7.8.1 Rayonnement . . . . . . . . . . . . . . . . . . . . . . . . 7.8.2 Comités de programmes et comités de lecture . . . . . . . 7.8.3 Organisation de congrès . . . . . . . . . . . . . . . . . . 7.8.4 Impact sur la formation universitaire . . . . . . . . . . . . 7.9 Publications de référence de l’équipe hors période . . . . . . . . . 7.10 Publications de référence de l’équipe dans la période . . . . . . . 7.11 Publications de l’équipe . . . . . . . . . . . . . . . . . . . . . . . 7.12 Bibliographie externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 219 219 220 220 221 222 222 223 223 224 224 225 226 226 226 228 229 231 233 233 233 233 233 234 234 234 234 235 235 235 238 239 240 240 241 242 243 243 244 244 249 11 8 Xavier G ANDIBLEUX 8.1 Composition de l’équipe . . . . . . . . . . . . . . . 8.2 Présentation et objectifs généraux . . . . . . . . . . 8.2.1 Historique . . . . . . . . . . . . . . . . . . . 8.2.2 Les thèmes de recherche . . . . . . . . . . . 8.2.3 Perspectives . . . . . . . . . . . . . . . . . . 8.3 Fondements scientifiques . . . . . . . . . . . . . . . 8.4 Domaines d’applications . . . . . . . . . . . . . . . 8.4.1 Transport ferroviaire . . . . . . . . . . . . . 8.4.2 Télécommunications . . . . . . . . . . . . . 8.4.3 Systèmes de production . . . . . . . . . . . 8.4.4 Solveurs . . . . . . . . . . . . . . . . . . . . 8.5 Logiciels . . . . . . . . . . . . . . . . . . . . . . . 8.5.1 RECIFE et RECIFE PC . . . . . . . . . . . 8.5.2 RMC . . . . . . . . . . . . . . . . . . . . . 8.5.3 MEETME . . . . . . . . . . . . . . . . . . . 8.6 Résultats nouveaux . . . . . . . . . . . . . . . . . . 8.6.1 Applications . . . . . . . . . . . . . . . . . 8.6.2 Optimisation combinatoire multi-objectif . . 8.7 Activités contractuelles . . . . . . . . . . . . . . . . 8.8 Actions régionales, nationales et internationales . . . 8.8.1 Actions régionales . . . . . . . . . . . . . . 8.8.2 Actions internationales . . . . . . . . . . . . 8.8.3 Expertise de projets . . . . . . . . . . . . . . 8.9 Diffusion des résultats . . . . . . . . . . . . . . . . 8.9.1 Rayonnement . . . . . . . . . . . . . . . . . 8.9.2 Comités de programmes et comités de lecture 8.9.3 Organisation de congrès . . . . . . . . . . . 8.9.4 Impact sur la formation universitaire . . . . . 8.9.5 Transfert de technologie . . . . . . . . . . . 8.10 Publications de référence de l’équipe hors période . . 8.11 Publications de référence de l’équipe dans la période 8.12 Publications de l’équipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 251 251 251 251 252 255 256 257 257 258 258 258 258 258 259 259 259 259 260 261 262 262 262 262 263 263 263 263 264 264 264 264 265 9 COD: COnnaissances et Décision 9.1 Composition de l’équipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.2 Présentation et objectifs généraux . . . . . . . . . . . . . . . . . . . . . . . . . . 9.2.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.2.2 Les thèmes de recherche . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.2.3 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3 Fondements scientifiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.3.1 De l’Analyse de Données à la Fouille de Connaissances . . . . . . . . . . 9.3.2 Vers la modélisation et l’extraction adaptatives des connaissances . . . . . 9.4 Domaines d’applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.4.1 Management : Gestion des connaissances et des compétences en entreprise 9.4.2 Sciences de la Vie : Biologie moléculaire et Cognition animale . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 269 269 270 270 271 272 273 273 274 275 275 275 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 Rapport d’activité LINA 2003–2006 9.5 Résultats nouveaux . . . . . . . . . . . . . . . . . . . . . . . . . . 9.5.1 Ingénierie des ontologies . . . . . . . . . . . . . . . . . . . 9.5.2 Fouille de données . . . . . . . . . . . . . . . . . . . . . . 9.5.3 Intégration des préférences de l’utilisateur . . . . . . . . . . 9.5.4 Applications . . . . . . . . . . . . . . . . . . . . . . . . . 9.6 Logiciels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.6.1 ARQUAT (Association Rule Quality Analysis Tool) . . . . 9.6.2 ARVAL (Association Rules VALidation) . . . . . . . . . . 9.6.3 ARVIS (Association Rules VISualization) . . . . . . . . . . 9.6.4 CHIC (Classification Hiérarchique Implicative et Cohésitive) 9.6.5 GVSR (Graph Visualization Software References) . . . . . 9.6.6 KAPPALAB . . . . . . . . . . . . . . . . . . . . . . . . . 9.6.7 MADTools . . . . . . . . . . . . . . . . . . . . . . . . . . 9.6.8 TooCom . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9.7 Stratégie de valorisation et de coopération . . . . . . . . . . . . . . 9.7.1 Actions internationales . . . . . . . . . . . . . . . . . . . . 9.7.2 Actions nationales . . . . . . . . . . . . . . . . . . . . . . 9.7.3 Actions régionales . . . . . . . . . . . . . . . . . . . . . . 9.8 Diffusion des résultats . . . . . . . . . . . . . . . . . . . . . . . . 9.8.1 Rayonnement . . . . . . . . . . . . . . . . . . . . . . . . . 9.8.2 Comités de programmes et comités de lecture . . . . . . . . 9.8.3 Organisation de congrès . . . . . . . . . . . . . . . . . . . 9.8.4 Impact sur la formation universitaire . . . . . . . . . . . . . 9.8.5 Transfert de technologie . . . . . . . . . . . . . . . . . . . 9.9 Publications de référence de l’équipe dans la période . . . . . . . . 9.10 Publications de l’équipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 276 276 277 279 280 282 282 282 282 282 282 283 283 283 283 283 284 288 290 290 291 292 292 292 293 293 10 ComBi: Combinatoire et Bio-Informatique 10.1 Composition de l’équipe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2 Présentation et objectifs généraux . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.1 Historique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.2 Les thèmes de recherche . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.2.3 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3 Fondements scientifiques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.1 Biologie . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.2 Algorithmique discrète . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.3.3 Méthodes probabilistes . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.4 Domaines d’applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.5 Résultats nouveaux . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.5.1 Thématique « Découverte et analyse statistique de motifs » . . . . . . . . . 10.5.2 Thématique « Génomique Comparative » . . . . . . . . . . . . . . . . . . 10.6 Logiciels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.6.1 Stars : découverte de motifs basée sur des fonctions de score multiples . . . 10.6.2 BAC T RANS2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10.6.3 DistGen : croisement contraint à base de distances génétiques . . . . . . . 10.6.4 GenesOrder : Similarités entre Génomes et Reconstruction Phylogénétique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305 305 306 306 306 309 310 310 310 311 311 314 314 316 318 318 319 319 320 13 10.7 Stratégie de valorisation et de coopération . . . . . . 10.7.1 Actions internationales . . . . . . . . . . . . 10.7.2 Actions nationales . . . . . . . . . . . . . . 10.7.3 Actions régionales . . . . . . . . . . . . . . 10.8 Diffusion des résultats . . . . . . . . . . . . . . . . 10.8.1 Rayonnement . . . . . . . . . . . . . . . . . 10.8.2 Comités de programmes et comités de lecture 10.8.3 Organisation de congrès . . . . . . . . . . . 10.8.4 Impact sur la formation universitaire . . . . . 10.8.5 Transfert de technologie . . . . . . . . . . . 10.9 Publications de référence de l’équipe hors période . . 10.10Publications de référence de l’équipe dans la période 10.11Publications de l’équipe . . . . . . . . . . . . . . . . 10.12Bibliographie externe . . . . . . . . . . . . . . . . . 11 TALN: Traitement Automatique du Langage Naturel 11.1 Composition de l’équipe . . . . . . . . . . . . . . 11.2 Présentation et objectifs généraux . . . . . . . . . 11.2.1 Historique . . . . . . . . . . . . . . . . . . 11.2.2 Les thèmes de recherche . . . . . . . . . . 11.2.3 Perspectives . . . . . . . . . . . . . . . . . 11.3 Fondements scientifiques . . . . . . . . . . . . . . 11.3.1 Modèles formels du langage naturel . . . . 11.3.2 Fouille textuelle . . . . . . . . . . . . . . . 11.4 Domaines d’applications . . . . . . . . . . . . . . 11.4.1 Recherche d’information . . . . . . . . . . 11.4.2 Veille scientifique et technologique . . . . 11.4.3 Reconnaissance de l’écriture manuscrite . . 11.4.4 Traduction automatique et automatisée . . 11.5 Résultats nouveaux . . . . . . . . . . . . . . . . . 11.5.1 Théorie des langages . . . . . . . . . . . . 11.5.2 Analyse et acquisition lexicale . . . . . . . 11.5.3 Analyse et acquisition grammaticale . . . . 11.5.4 Analyse du discours et des documents . . . 11.6 Logiciels . . . . . . . . . . . . . . . . . . . . . . 11.6.1 ACABIT . . . . . . . . . . . . . . . . . . 11.6.2 ANA . . . . . . . . . . . . . . . . . . . . 11.6.3 CoRRecT . . . . . . . . . . . . . . . . . . 11.6.4 DINOSYS . . . . . . . . . . . . . . . . . 11.6.5 FLORE . . . . . . . . . . . . . . . . . . . 11.6.6 NEMESIS . . . . . . . . . . . . . . . . . 11.6.7 PRODICOS . . . . . . . . . . . . . . . . . 11.7 Stratégie de valorisation et de coopération . . . . . 11.7.1 Actions internationales . . . . . . . . . . . 11.7.2 Actions nationales . . . . . . . . . . . . . 11.7.3 Actions régionales . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 320 320 322 327 327 327 328 329 329 330 330 330 331 334 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 337 337 338 338 338 339 341 341 341 341 341 342 342 342 343 343 344 348 351 353 353 353 354 354 354 354 355 355 355 357 361 14 Rapport d’activité LINA 2003–2006 11.8 Diffusion des résultats . . . . . . . . . . . . . . . . 11.8.1 Rayonnement . . . . . . . . . . . . . . . . . 11.8.2 Comités de programmes et comités de lecture 11.8.3 Organisation de congrès . . . . . . . . . . . 11.8.4 Impact sur la formation universitaire . . . . . 11.9 Publications de référence de l’équipe hors période . . 11.10Publications de référence de l’équipe dans la période 11.11Publications de l’équipe . . . . . . . . . . . . . . . . 11.12Bibliographie externe . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 363 363 364 366 366 366 367 367 376 Introduction Le Laboratoire d’Informatique de Nantes Atlantique (LINA) est une formation de recherche en évolution (FRE 2729), créée par le CNRS en 2004 et reconduite en 2006. Elle résulte du rapprochement de l’Institut de Recherche en Informatique de Nantes (IRIN) et du département informatique de l’Ecole des Mines de Nantes (EMN). Ce rapprochement a été initié dans le cadre du CPER 2000-2006 qui a fait émerger un laboratoire informatique nantais unique construit autour de deux axes de recherche ; les « Architectures Logicielles Distribuées » (ALD) et les « Systèmes d’Aide à la Décision » (SAD). Ce document présente le rapport d’activité des dix équipes de ces deux axes : – Architectures logicielles distribuées 1. équipe GDD (P. Valduriez) ; gestion de données distribuées, 2. équipe GRIM (N. Mouaddib) ; gestion et recherche d’information multimédia, 3. équipe projet COLOSS (C. Attiogbé) ; composants et logiciels sûrs, 4. équipe projet MODAL (M. Oussalah) ; langages de modélisation d’architectures logicielles, 5. équipe OBASCO (P. Cointe) ; objets, aspects et composants. – Systèmes d’aide à la décision 1. équipe CD (N. Beldiceanu) ; contraintes discrètes, 2. équipe C O C OA (L. Granvilliers) ; contraintes continues et applications, 3. équipe COD (P. Kuntz) ; connaissances et décision, 4. équipe C OM B I (I. Rusu) ; combinatoire et bio-informatique, 5. équipe TALN (B. Daille) ; traitement automatique du langage naturel. Ce rapport inclut également le rapport du groupe de X. Gandibleux recruté en septembre 2004 et qui a travaillé avec le soutien de l’équipe COD à la constitution d’une onzième équipe sur le thème de la recherche opérationnelle et de l’optimisation multi-objectifs. Ce projet a donné lieu (fin 2006) à la création de l’équipe-projet ROOM dont la génèse et le projet scientifique sont décrits dans les deux documents intitulés respectivement « Bilan & Perspectives » et « Projet scientifique ». Le premier texte réalise une analyse de ces rapports d’activités et l’utilise pour développer le projet scientifique du LINA. Pour en revenir au rapport d’activité relatif au dernier quadriennal, le CPER a contribué à l’établissement d’un axe Nantes-Angers (LINA-LERIA) dans le domaine de la « programmation par contraintes ». Pour ce qui concerne le bi-pôle Nantes-Rennes, deux projets INRIA ont été créés en 2003 sur les sujets de la « gestion distribuée des données » (Atlas) et de la « programmation post-objets » (Obasco). Ils renforcent la synergie LINA-IRISA sur les deux thèmes de la « gestion des données » et du « génie logiciel ». 15 16 Rapport d’activité LINA 2003–2006 Toujours pendant la période 2002-2006, les équipes du LINA ont participé à la constitution de la fédération de recherche AtlanSTIC créée en 2006 par le CNRS (FR 2819) pour quatre ans et regroupant les trois laboratoires STIC nantais : l’IRCCyN (UMR 6597), IREENA (EA 1770) et le LINA. Les premières contributions d’AtlanSTIC concernent le financement d’une dizaine de projets interdisciplinaires entre les trois laboratoires, le partenariat avec le pôle Breton « Images et Réseaux » et la rédaction du projet MILES. Ce projet également soumis au nouveau CPER dessine un pôle STIC entre les régions Bretagne-Pays de la Loire autour des quatre grands thèmes de « l’aide à la décision », du « multimédia », du « génie du logiciel » et des « télécommunications mobiles ». D’un point de vue quantitatif les effectifs du laboratoire sont au 1er décembre 2006 de 165 membres dont une moitié de permanents et une moitié d’associés, doctorants et post-doctorants. L’un des points remarquables des quatre dernières années est la croissance de 50% du nombre de permanents qui a permis de consolider par des recrutements, principalement externes (75%), les équipes de recherche existantes. Ces équipes ont à leur tête une génération de jeunes professeurs avec globalement le ratio d’un professeur pour 2,2 maı̂tres de conférence. D’un point de vue qualitatif, les thématiques de recherche des deux axes ont acquis une visibilité et un impact internationaux. Les membres du LINA ont obtenu des publications dans les conférences majeures de leurs domaines (IJCAI, CP, VLDB, ACM Multimedia, IJCNLP, ECOOP, OOPSLA, AOSD, PKDD, etc.) et des revues internationales renommées. Au plan national, nous avons obtenu sept projets ANR sur le premier appel 2005 et dix sur le deuxième appel 2006. Au plan européen, nous participons dans le cadre du 6eme PRCD à deux réseaux d’excellence (AOSD-Europe et INTEROP), deux IP et trois STREP. Nos relations internationales se sont à la fois étendues et renforcées, avec par exemple une collaboration durable et un memory of understanding signé avec le National Institute for Informatics de Tokyo sur les thématiques « bases de données », « programmation par contraintes » et « traitement automatique des langues ». Le LINA est finalement organisateur de trois conférences internationales majeures des domaines du génie logiciel, des contraintes et des bases de données (respectivement ECOOP 2006, CP 2006, EDBT 2008) à la Cité des Congrès de Nantes. Sur le plan de l’impact économique régional le projet du LINA a donné naissance à des coopérations industrielles sous forme de contrats et de bourses CIFRE, mais également à la création sur Nantes de trois entreprises innovantes : IST (solutions objet embarquées sur mesure), PurpleLine (ingénierie du Web sémantique et cartographie Web interactive) et Knowesia SA (modélisation de scenarios d’action pour l’aide à la décision). Les équipes ont permis la participation de la région des Pays de la Loire au pôle de compétitivité à vocation mondiale « Images et Réseaux » (deux premiers projets labélisés au LINA, création d’un axe génie logiciel). Au-delà, nos collaborations industrielles avec de grands groupes internationaux (IBM, Microsoft, Siemens, Thalès, Dassault Aviation, Bouygues et France Telecom) et notre participation à d’autres pôles de compétitivité (par exemple System@TIC en Ile-de-France) amènent nos équipes à créer des liens industriels qui auront à terme un impact régional. Le reste de ce document est donc consacré à la présentation des rapports d’activité de chacune de nos équipes. 17 Fiche signalétique du LINA Titre du laboratoire, label : LINA Laboratoire d’Informatique de Nantes Atlantique Numéro identification ; FRE2729 Localisation ; Adresse du site Web : Faculté des Sciences, 2 rue de la Houssinière BP 92208, 44322 NANTES Cedex 3 lina.atlanstic.net Directeur du laboratoire Téléphone Fax e-mail Directeur adjoint Téléphone Fax e-mail : : : : : : : : Mr Frédéric B ENHAMOU 02 51 12 58 17 02 51 12 58 97 [email protected] Mr Pierre C OINTE 02 51 85 82 02 02 51 85 82 49 [email protected] Responsable administrative Téléphone Fax e-mail Responsable technique informatique Téléphone Fax e-mail : : : : : : : : Mme Anne-Françoise Q UIN 02 51 12 58 15 02 51 12 58 97 [email protected] Mr Jean-Yves L EBLIN 02 51 12 58 96 02 51 12 58 12 [email protected] : : : : : : : : : 70 (20 PR, 1 DR CNRS, 1 DR INRIA, 48 MdC/MA) 23 75 4 8.5 839 dont articles en revues 177=114 (int)+63 (nat) dont conférences internationales 305 4 000 KEUR Effectifs 2006-2007 Nombre d’enseignants-chercheurs Nombre de HDR Nombre de thésards Nombre de post-docs nombre de IATOSS/ITA Publications 2003-2006 Montants des contrats 2003-2006 Équipe GDD : Gestion de Données Distribuées 1.1 Composition de l’équipe Responsable : Patrick Valduriez Chercheurs-enseignants : – Jean Bézivin Pr., Université de Nantes, depuis le 1/1/2003 – Sylvie Cazalens M.C., Université de Nantes, depuis le 1/1/2003 – Phillipe Lamarre Université de Nantes, depuis le 1/1/2003, – Gilles Nachouki M.C., IUT de Nantes, depuis le 1/10/2002 – Esther Pacitti M.C., Université de Nantes, depuis le 1/9/2002 – Patricia Serrano Alvarado M.C., Université de Nantes, depuis le 1/9/2005 – Gerson Sunyé M.C., Université de Nantes, depuis le 1/9/2004 – Patrick Valduriez D.R., INRIA, depuis le 1/9/2002 Ingénieurs de recherche : – Freddy Allilaire CDD INRIA, depuis le 1/10/2004, – David Touzet CDD INRIA, 1/2/2005-13/3/2006, – Gaëtan Gaumer CDD INRIA, 1/9/2003-30/9/2005, – Peter Rosenthal CDD INRIA, 1/9/2004-31/3/2005, Chercheurs post-doctorants : 19 20 Rapport d’activité LINA 2003–2006 – Ivan Kurtev postdoc INRIA, 1/9/2005-31/11/2006, – Kwangjin Park postdoc INRIA, depuis le 1/9/2006, Chercheurs doctorants : – Reza Akbarinia Doctorant, Bourse gouv. Iranien, depuis le 1/9/2003 – Eduardo Cunha de Almeida Doctorant, Bourse AlBan, depuis le 1/9/2005 – Cédric Coulon Doctorant, ATER, depuis le 1/9/2002 – Marcos Didonet Del Fabro Doctorant, Bourse INRIA, depuis le 1/9/2004 – David Faye Doctorant, Bourse Egide, depuis le 1/9/2003 – Rabab Hayek Doctorante, Bourse MENRT, depuis le 1/9/2005 – Frédéric Jouault Doctorant, Bourse INRIA, depuis le 1/9/2004 – Sandra Lemp Doctorante, Bourse MENRT, depuis le 1/9/2003 – Alexandre Lima Doctorant, Bourse CAPES, 1/11/2003-30/6/2004 – Denivaldo Lopes Doctorant, Bourse C.G. Maine et Loire, 1/9/2002-30/9/2005 – Vidal Martins Doctorant, Bourse Université PUC-PR, 1/9/2003-31/12/2006 – Jorge Manjarrez Sanchez Doctorant, Bourse Conacyt, depuis le 1/9/2004 – Jorge Quiane Doctorant, Bourse Conacyt, depuis le 1/9/2004 – Anthony Ventresque Doctorant, Bourse MENRT, depuis le 1/9/2004 – André Victor Doctorant, Bourse CNPQ, 1/10/2003-31/12/2004 1.2 Présentation et objectifs généraux 1.2.1 Historique L’équipe a été créée en septembre 2002 par P. Valduriez avec comme objectif de faire émerger une activité de recherche forte et visible à Nantes en gestion de données, notamment dans le cadre du projet ATLAS commun entre l’INRIA et l’université de Nantes. Au départ, l’équipe Atlas-GDD ne comptait que des chercheurs en bases de données parallèles et distribuées (G. Nachouki, E. Pacitti, P. Valduriez). GDD : Gestion de Données Distribuées 21 Début 2003, l’équipe s’est enrichie de compétences complémentaires en ingénierie des modèles avec l’arrivée de J. Bézivin et en systèmes multi-agents avec l’arrivée de S. Cazalens et de P. Lamarre. Ces compétences nous permettent d’aborder des problèmes spécifiques de gestion de données sous un angle nouveau, par ex. la migration de données distribuées en s’appuyant sur des techniques de transformation de modèles ou l’intégration de données en s’appuyant sur des agents médiateurs. 1.2.2 Les thèmes de recherche La gestion de données distribuées désigne le stockage, l’organisation, la recherche et la manipulation de données dans des systèmes distribués. Aujourd’hui, les problèmes de recherche difficiles dans ce domaine dépassent très largement le cadre des systèmes de bases de données (SGBD) que l’on peut considérer comme matures. Ces problèmes sont causés par les évolutions conjuguées des données, des systèmes et des applications. D’abord, les données à gérer sont de plus en plus riches et complexes en termes de formats (par ex. objets multimédias), de structures (par ex. documents), de sémantique associée (par ex. métadonnées), et de code associé (par ex. procédures stockées). La gestion de telles données pose notamment de gros problèmes de développement d’applications, de migration de données vers de nouvelles plate-formes et de performances. Ensuite, les systèmes manipulant les données doivent pouvoir supporter la distribution à grande échelle (par ex. dans des grappes, grilles ou des systèmes P2P) et être accessibles depuis des postes fixes ou mobiles. Dans ce contexte, les sources de données accessibles peuvent être très nombreuses et de formats hétérogènes, rendant l’intégration de données difficile. Enfin, ces évolutions permettent d’envisager de nouvelles applications, typiquement complexes, permettant l’accès aux données en ligne : ASP (application service provider), magasins virtuels, catalogues globaux, services de gestion de données mobiles, etc. 1.2.3 Perspectives La problématique générale de l’équipe Atlas-GDD concerne la gestion de données dans les systèmes distribués. Les verrous scientifiques sur lesquels nous nous concentrons sont (1) le passage à l’échelle en nombre de sources de données, (2) la transformation automatisée de données, et (3) l’intégration de données à grande échelle. Le problème du passage à l’échelle des techniques de gestion de données est adressé par de nombreux projets dans le monde, en exploitant des grappes, par ex. les projets PowerDB à l’ETH-Zurich ou le projet Trapp à l’université de Stanford, ou des réseaux P2P, par ex. les projets ActiveXML à l’INRIA-Saclay, le projet PIER à l’université de Berkeley ou le projet Piazza à l’université de Washington. Dans Atlas-GDD, nous nous concentrons sur les problèmes de réplication, de traitement de requêtes et d’équilibrage de charge transactionnelle dans une grappe ou système P2P en respectant l’autonomie des données et en nous rendant indépendant des SGBD, afin de gagner en généralité. Le problème de la transformation automatisée de données (et de schémas de données) fait partie du problème plus général de transformation de modèle abordé notamment dans le cadre de l’approche MDA (Model Driven Architecture) de l’OMG (Object Management Group). Notre approche est similaire à celle de Ph. Bernstein (Microsoft Research) qui propose de considérer les modèles et les transformations de modèles comme entités de première classe dans une vision globale des systèmes d’information. L’originalité de notre approche consiste à traiter les opérateurs de transformation ou de composition euxmêmes comme des modèles et de s’appuyer sur une famille de langages spécifiques de transformation permettant la prise en compte de différents formats, par ex. XML, XMI, EBNF, ou même binaire. L’augmentation rapide du nombre et de l’hétérogénéité des sources de données accessibles en ligne (bases de données, documents HTML ou XML, fichiers, flots de données, etc.), notamment grâce au Web, rend 22 Rapport d’activité LINA 2003–2006 l’intégration de données de plus en plus difficile. La technologie des médiateurs de données relationnels ou des médiateurs plus récents basés sur XML facilite l’intégration d’information mais en considérant les sources de données comme passives. Notre approche basée sur un modèle économique de compétition entre agents donne un rôle actif aux sources de données, ce qui permet de mieux équilibrer la charge globale du système. Les objectifs à moyen terme (4 ans) de l’équipe Atlas-GDD sont les suivants : conception et validation de solutions de gestion de données pour réseaux P2P avec le système APPA (Atlas Peer-to-Peer Architecture) ; conception, validation et valorisation de techniques de transformation de données avec le système AMMA (Atlas Model Management Architecture) ; enfin, conception et validation de techniques d’intégration sémantique de données distribuées. 1.3 Fondements scientifiques 1.3.1 Gestion de données La gestion de données désigne le stockage, l’organisation, la recherche et la manipulation de données de toutes sortes, depuis les plus simples et petites jusqu’aux plus grandes et complexes. C’est aujourd’hui une discipline majeure de l’informatique, avec une communauté de recherche internationale forte 1 et un secteur d’activité très prospère. Cette discipline a permis le développement des SGBD, essentiels à tout système d’information, et plus généralement, la mise en œuvre de fonctions de gestion de données dans de nombreux autres logiciels (serveurs d’application, systèmes de gestion de documents, annuaires, etc.). Le principe fondamental de la gestion de données est l’indépendance des données, qui permet aux utilisateurs et aux applications de manipuler les données avec un haut niveau d’abstraction (en termes conceptuels), en ignorant les détails d’implémentation physique. C’est ce principe d’indépendance des données qui a permis aux SGBD d’intégrer régulièrement de nouvelles fonctionnalités comme des langages de requêtes de haut niveau, le traitement et l’optimisation automatique des requêtes, la modélisation des données et des métadonnées, le support des transactions et de la réplication, le support de XML, etc. et de s’adapter à toutes les plate-formes matérielles (PC, multiprocesseur, grappe, etc.) et aux environnements distribués. L’équipe GDD considère la gestion de données dans le contexte des systèmes distribués, avec l’objectif de rendre la distribution transparente aux utilisateurs et aux applications. Ainsi, nous pouvons capitaliser sur les principes des systèmes distribués, en particulier, les systèmes distribués à grande échelle comme les grappes, les grilles ou les réseaux P2P, pour nous concentrer sur les fonctions à forte valeur ajoutée de réplication et de disponibilité des données, d’équilibrage de charge transactionnelle et de traitement de requêtes. Pour ce faire, nous nous appuyons aussi sur les principes des systèmes transactionnels et des systèmes de bases de données distribuées, en particulier, les médiateurs de données. 1.3.2 Gestion de modèles Les métadonnées et la métamodélisation ont été étudiées dans le contexte des bases de données pendant longtemps, notamment pour la gestion des schémas, en s’appuyant sur l’indépendance des données. Il est intéressant de faire le parallèle avec le principe d’abstraction que fournissent les modèles en génie logiciel. Un modèle est une structure complexe représentant un artefact de conception comme un schéma relationnel, une définition d’interface, un schéma XML, un réseau sémantique, un modèle UML ou 1 Les organisations scientifiques les plus prestigieuses étant l’ACM Special Interest Group on the Management of Data (SIGMOD) et le Very Large Data Base (VLDB) Endowment. GDD : Gestion de Données Distribuées 23 un document hypermédia. Les développeurs d’applications complexes doivent typiquement manipuler différents modèles et réaliser des transformations entre ces modèles. Dans le cas de la gestion de données, des exemples sont : la transformation de schémas relationnels en définitions de classes pour générer des adaptateurs objet ; la transformation de descriptions de sources de données hétérogènes en un schéma unique pour réaliser l’intégration de données ; la transformation d’un schéma de base de données dans une nouvelle version pour faire migrer les données. La gestion de schémas de base de données devient donc un cas particulier de gestion de modèles. Les métamodèles sont utilisés aujourd’hui pour définir des langages spécifiques à des domaines afin de capturer les différents aspects d’un logiciel. Ainsi, un modèle n’est plus contemplatif (et servir seulement à la documentation) mais peut être manipulé par des opérations exécutables précises. Pour ces raisons, l’ingénierie des modèles est un fondement commun à la gestion de données et au génie logiciel. 1.3.3 Médiation Les médiateurs de données “classiques” reposent sur la technologie des bases de données distribuées. Ils permettent à des utilisateurs d’interroger des sources de données hétérogènes via une interface uniforme. Leur utilisation repose sur la présence d’un schéma global (relationnel ou XML) qui décrit l’ensemble des données disponibles sur les différentes sources. Dans les systèmes ouverts comportant de très nombreuses sources autonomes, tels que les systèmes pair à pair, les nouvelles techniques de médiation doivent prendre en compte l’autonomie des sources de données, leur hétérogénéité sémantique, et l’ouverture du système. La gestion et la régulation de systèmes où les participants sont autonomes, voire compétitifs, est un champ d’application majeur des approches économiques. Le principe fondamental d’une telle approche pour la médiation consiste à monétariser certains aspects : achat de ressources, achat de requêtes, coûts relatifs à l’exécution de requêtes, . . .L’équipe GDD étudie les solutions dans lesquelles les sources de données “achètent” les requêtes. L’objectif est d’obtenir une médiation la plus équitable possible dans laquelle les sources de données et les utilisateurs puissent avoir confiance. Le rapprochement de sources de données et de requêtes, dans le cas d’une forte hétérogénéité, peut bénéficier de la prise en compte de la sémantique des données et des requêtes. Le passage par ce niveau sémantique peut aider la mise en correspondance de schémas. Dans certains cas, la médiation peut aussi se faire directement au niveau sémantique par une mise en correspondance d’ensembles de concepts. Ce type de travaux bénéficie de résultats issus aussi bien de la gestion de modèles que de l’ingénierie des connaissances ou du traitement automatique du langage naturel. 1.4 Domaines d’applications 1.4.1 Applications transactionnelles et décisonnelles La gestion de données dans les systèmes distribués est très générique et peut s’appliquer à toutes sortes de données et d’applications manipulant des données. Donc, nous sommes potentiellement intéressés par de nombreuses applications qui pourraient nous aider à démontrer et valider nos résultats en vraie grandeur. Cependant, la gestion de données est un domaine très mature pour lequel existent des scénarios d’applications bien établis, par ex. les benchmarks transactionnels (TPC-C et TPC-D), décisionnels (TPC-H et TPC-R) et Web (TPC-W) du Transaction Processing Council (TPC). Nous utilisons souvent ces benchmarks dans nos expérimentations car ils sont faciles à déployer dans nos prototypes et favorisent la comparaison avec des projets concurrents. Cependant, il n’y a pas de benchmark complet qui 24 Rapport d’activité LINA 2003–2006 permet de capturer tous les besoins de gestion de données. C’est pourquoi nous nous intéressons aussi à des applications nouvelle qui peuvent exhiber des besoins spécifiques et poser de nouveaux problèmes de recherche. Des exemples de telles applications sont l’hébergement d’applications (Application Service Provider) et les communautés professionnelles. Dans le modèle ASP, les applications et les bases de données des entreprises utilisatrices sont gérées sur le site d’un hébergeur et doivent pouvoir être accédées, typiquement via Internet, aussi bien que si elles étaient locales à l’entreprise. Le problème pour l’hébergeur est alors de pouvoir gérer les applications et les bases de données sur son site avec un excellent rapport coût/performance. Nous abordons ce problème en exploitant une grappe de PC et en développant des techniques de réplication et d’équilibrage de charge transactionnelle. Nous validons notre approche pour des applications de gestion de pharmacies. 1.4.2 Applications transformationnelles En ingénierie des données tout comme en ingénierie du logiciel, les problématiques de transformation et d’intégration de données deviennent critiques et centrales. Les méthodes de production de logiciel s’appuient sur des chaı̂nes de transformation de données, depuis la spéfication jusqu’à la mise en oeuvre et la maintenace. Les techniques MDA préconisées par l’OMG, par IBM ou par Microsoft (DSL Tools) se retrouvent dans de nombreuses applications allant de la gestion de systèmes distribués de gestion de flots (metadata-based stream processing) à la gestion intégrée de documentation dans les systèmes d’information. 1.4.3 Communautés professionnelles et applications scientifiques Les communautés professionnelles ont besoin de collaborer et de partager des données pour améliorer leur activité. Par exemple, une communauté de chercheurs veut pouvoir partager des documents scientifiques et pédagogiques, des bibliographies, des bases de données pour banc d’essai, des bancs d’essai en ligne, des résultats d’expérience, etc. La solution classique consiste à centraliser les données dans une base de données sur un serveur. Pour des communautés dynamiques, qui se constituent rapidement pour une durée déterminée (par ex. pour réaliser une expérimentation en parallèle), la solution classique est trop lourde. Nous abordons ce problème avec une approche P2P où les participants (les pairs) peuvent rejoindre ou quitter le système de façon unilatérale sans aucun contrôle centralisé. 1.5 Résultats nouveaux Dans un système distribué à grande échelle, les sources de données sont nombreuses, autonomes (sous fort contrôle local), et très hétérogènes en taille et complexité. La gestion de données dans un tel contexte pose des problèmes de recherche difficiles car les techniques doivent passer à l’échelle tout en supportant les nouveaux besoins liés à l’autonomie et l’hétérogénéité des données, et à la mobilité des terminaux clients. Ces problèmes font partie de nouveaux courants de recherche importants (cluster, grid, P2P). Pour aborder ces problèmes, nous avons mené des actions de recherche dans quatre thèmes complémentaires : la gestion de données dans les grappes, la gestion de données en P2P, l’ingénierie des données dirigée par les modèles, et la médiation de données. GDD : Gestion de Données Distribuées 25 1.5.1 Gestion de données dans les grappes Les grappes de bases de données sont devenus une alternative économique très intéressante aux SGBD sur multiprocesseurs fortement couplés. Une grappe de bases de données désigne une grappe où chaque nœud possède un SGBD autonome, comme une boı̂te noire, et sa propre base de données. La gestion de données doit alors se faire par un middleware qui coordonne les différents SGBD. Les fonctions importantes de ce middleware sur lesquelles nous avons obtenu des résultats significatifs concernent la réplication préventive des données, l’équilibrage de charge transactionnelle et le traitement parallèle des requêtes décisionnelles. Réplication préventive Participants : Esther Pacitti, Cédric Coulon, Patrick Valduriez. La réplication de données permet d’augmenter la disponibilité grâce à la redondance et les performances grâce au parallélisme. Dans une grappe de bases de données, nous pouvons copier les données et les SGBD sur différents nœuds. Le problème principal est alors d’assurer la cohérence de bases de données autonomes répliquées suite aux mises à jour. De manière plus générale, notre objectif est de définir un modèle de réplication pour les architectures distribuées qui respecte l’autonomie des applications et des bases de données. Nous cherchons donc à utiliser des techniques non-intrusives en interceptant les appels aux SGBD et en exploitant les interfaces des journaux des SGBD. Une bonne solution qui passe à l’échelle est la réplication asynchrone multi-maı̂tre. Elle permet de mettre à jour différentes copies sur différents nœuds en parallèle. Cependant, les mises à jour conflictuelles peuvent produire la divergence des copies. Pour éviter les conflits, nous avons proposé un nouveau modèle de réplication préventive [91] qui offre la cohérence forte sans le sur-coût de la réplication synchrone. L’idée essentielle est de retarder la validation des transactions de rafraı̂chissement pour assurer leur ordonnancement. En exploitant le réseau rapide de la grappe, le retard est très court et négligeable. Notre modèle supporte les configurations avec réplication partielle [61]. A la différence de la réplication totale, la réplication partielle augmente la localité de référence et réduit le nombre de messages pour propager les mises à jour. Dans [62], nous avons proposé différentes optimisations (élimination des retards, exécution concurrente). La solution complète de réplication préventive, avec preuves des algorithmes, est décrite dans [23]. Pour valider notre approche, nous avons réalisé le logiciel RepDB* [104] qui fonctionne sur différents SGBD (Oracle, PostGRESQL and BerkeleyDB). Nos expérimentations sur une grappe Linux de 64 nœuds (le site GRID5000 de l’IRISA à Rennes) avec le benchmark TPC-C montrent que notre approche passe à l’échelle et introduit une très faible perte de fraı̂cheur des données. Equilibrage de charge transactionnelle Participants : Esther Pacitti, Patrick Valduriez. L’équilibrage de charge transactionnelle nécessite des techniques d’exécution dynamiques pour s’adapter aux variations des charges qui peuvent comporter des transactions (mises-à-jour) ou des requêtes (lectures). Dans le contexte grappe, la réplication offre la possibilité de choisir les nœuds à accéder dynamiquement lorsque les données sont nécessaires au traitement. Ainsi, le parallélisme inter-transaction peut être réalisé simplement au niveau d’un répartiteur de charge. En supposant les bases de données répliquées en mode optimiste, nous pouvons augmenter le parallélisme inter-transaction. Cependant, même si nous avons des solutions pour maintenir la cohérence des copies, celles-ci peuvent avoir différents 26 Rapport d’activité LINA 2003–2006 niveaux de fraı̂cheur dans la mesure où certaines transactions n’ont pas encore été reportées sur certaines copies. Dans [21], nous avons défini un modèle complet de fraı̂cheur qui permet de définir les classes de conflits entre requêtes et transactions. Nous avons aussi proposé des algorithmes pour évaluer la fraı̂cheur des données et calculer l’ensemble minimal de transactions de rafraı̂chissement nécessaires pour garantir qu’un nœud est suffisamment frais pour une requête donnée [116]. Ensuite, nous avons proposé une solution au routage des transactions qui préserve l’autonomie des applications et des bases de données (un besoin important des applications ASP) et un modèle de coût pour estimer la fraı̂cheur des copies. Nous avons réalisé notre solution pour une grappe Linux/Oracle 8i de 11 nœuds et procédé à de nombreuses expérimentations avec le benchmark transactionnel TPC C et une application de gestion de pharmacies en mode ASP [20]. Nos résultats montrent que notre solution est supérieure aux solutions existantes en termes d’équilibrage de charge. D’autre part, lorsque les requêtes décisionnelles acceptent de relâcher le besoin de fraı̂cheur, leur temps de réponse se voit réduit considérablement. Traitement de requêtes décisionnelles Participants : Alexandre Lima, Esther Pacitti, Patrick Valduriez, André Victor. Les requêtes décisionnelles complexes (avec des sous-requêtes et de nombreuses agrégations) et lourdes (accédant de très grandes quantités de données) peuvent avoir des temps de réponse beaucoup trop élevés par rapport aux besoins des décideurs. Pour traiter ce problème, nous avons cherché à exploiter la réplication et le parallélisme intra-requête dans une grappe. Une solution traditionnelle à ce problème consiste à répliquer toutes les données (réplication totale) et partitionner statiquement la requête en sous-requêtes qui peuvent alors accéder chacune un sous-ensemble différent des données. Mais cette solution fonctionne mal pour des distributions de données non uniformes. Nous avons proposé un algorithme de partitionnement virtuel qui s’adapte aux variations de charge et de distribution des données [80]. Le partionnement virtuel offre une grande flexibilité pour l’équilibrage de charge des nœuds. Cependant, dans le cas d’une grappe sans disque partagé, la réplication totale conduit à une mauvaise utilisation des disques. Dans [66, 19, 86], nous avons proposé une solution qui combine le partitionnement physique et virtuel. Cette solution permet un haut niveau de parallélisme intra-requête tout en optimisant l’utilisation des disques. Nous avons réalisé notre solution pour une grappe Linux/PostGRESQL de 32 nœuds et procédé à de nombreuses expérimentations avec le benchmark décisionnel TPC H. Les résultats montrent que notre solution donne une accélération linéaire, parfois super-linéaire, en augmentant le nombre de nœuds. Pour la plupart des requêtes du benchmark TPC H, certaines très complexes, notre solution donne des gains de performances importants (plus d’un ordre de grandeur) par rapport aux solutions statiques. Considérant plus finement le fait que le coût d’accès à un objet de grande taille par un prédicat dépend fortement de la valeur passée en paramètre, nous avons étudié une nouvelle approche qui exploite les dépendances de données via ces valeurs de paramètres. Nous avons proposé une nouvelle stratégie d’optimisation qui modélise ces dépendances par un graphe k-partie [92]. Nous avons montré que cette stratégie s’intégrait facilement dans un optimiseur de requêtes. Nous avons aussi proposé un algorithme gourmand qui traite le graphe en sélectionnant les valeurs candidate qui minimisent le temps d’exécution. Nos résultats de simulation ont montré que notre algorithme pouvait produire des exécutions 100% plus rapide que les stratégies statiques. GDD : Gestion de Données Distribuées 27 1.5.2 Gestion de données en P2P Les systèmes P2P adoptent une approche complètement décentralisée au partage des ressources. En distribuant données et traitements sur tous les pairs du réseau, ils peuvent passer à très grande échelle sans recourir à des serveurs très puissants. Différentes architectures P2P ont été proposées (non structurée, DHT, super-pair) mais il reste beaucoup à faire pour comprendre leurs avantages respectifs entre performances, tolérance aux fautes, passage à l’échelle, etc. [98]. C’est pourquoi nous avons commencé la conception et le développement du système de gestion de données Atlas P2P Architecture (APPA) avec des résultats nouveaux en réplication de données et traitement de requêtes. Atlas P2P Architecture (APPA) Participants : Reza Akbarinia, Eduardo Cunha de Almeida, Vidal Martins, Esther Pacitti, Gerson Sunyé, Patrick Valduriez APPA (Atlas Peer-to-Peer Architecture) est un système de gestion de données P2P pour des applications collaboratives telles que les communautés virtuelles, les forums de discussion, les calendriers partagés, ou les catalogues e-commerce. Comme exemple d’application qui peut bénéficier d’APPA, nous pouvons citer la collaboration de chercheurs ou d’utilisateurs d’un Wiki qui sont prêts à partager des données (pendant une expérimentation ou le montage d’un projet) sans recourir à un serveur central. APPA a une architecture indépendante du réseau en termes de services pouvant être implémentés sur différents réseaux P2P (structurés, DHT, super-pair) [37, 128, 36]. Ceci nous permet de profiter des progrès constants dans les différentes technologies de réseaux P2P. Pour permettre la collaboration au sein d’un réseau P2P, APPA supporte des données riches en sémantique (par ex. documents XML, tables relationnelles) pouvant être manipulées par un langage de requêtes de haut niveau (comme SQL). APPA supporte des services avancés comme la réplication optimiste et le traitement de requêtes top-k. APPA est en cours de réalisation avec le framework JXTA qui offre un bon niveau d’indépendance par rapport à la couche réseau sous-jascente. Le développement d’applications P2P se distingue de celui des systèmes distribués traditionnels dans plusieurs points. Nous nous intéressons plus particulièrement à la validation et au test de ces systèmes. En raison de la très grande volatilité qui caractérise les systèmes P2P, les problèmes qui concernent la validation sont quelque peu différents d’un système traditionnel. Les problèmes de concurrence, tel que l’interblocage ou les situations de course ont une importance moindre, car ils sont systématiquement résolus par des time-out . A l’inverse, de nouveaux problèmes tels que la synchronisation, la centralisation et l’analyse des traces d’exécution, ou simulation de la volatilité, prennent une importance considérable. Dans une plate-forme P2P, la mise en place d’un test, le plus simple qu’il soit, est une tâche complexe. Elle comprend le déploiement du système sur différentes machines et systèmes, souvent hétérogènes, la configuration et l’exécution synchronisée de plusieurs applications et la récupération des traces d’exécution. Pour simplifier la validation et la mise en place de test, APPA dispose d’un mécanisme de synchronisation de pairs et de différents outils permettant le déploiement de systèmes basés sur ANT, un outil de construction d’applications ouvert et indépendant de plate-forme. Réplication optimiste dans APPA Participants : Reza Akbarinia, Vidal Martins, Esther Pacitti, Patrick Valduriez La réplication de données dans les systèmes P2P devient un enjeu majeur pour les applications collaboratives. En effet, les données partagées doivent pouvoir être mises à jour en parallèle par différents 28 Rapport d’activité LINA 2003–2006 pairs. Les premiers systèmes P2P ont été conçus pour des données statiques (fichier multimédias) et n’intègrent aucun mécanisme de gestion des mises à jour et de réplication. Une mise à jour d’une donnée par un pair produit une nouvelle version non propagée aux copies, ce qui résulte en diverses versions sous le même identifiant et aucune forme de cohérence entre les copies. La réplication multi-maı̂tre est indispensable dans un système P2P afin d’assurer la disponibilité des données. En particulier, la réplication multi-maı̂tre optimiste basée sur la réconciliation sémantique est bien adaptée au P2P. Cependant, les solutions de réconciliation existantes sont typiquement centralisées et le pair réconciliateur devient un point de défaillance. Nous avons proposé une solution de réconciliation sémantique qui exploite la distribution et le parallélisme pour le passage à l’échelle et la réduction des latences. Notre algorithms garantit la cohérence éventuelle des données et supporte les connexions et déconnexions des pairs [115, 85, 83]. Nous avons prouvé la correction de nos algorithmes. Nous avons aussi réalisé notre algorithme dans APPA. Notre validation basée sur notre implémentation et une simulation montre que nos algorithmes ont un excellent passage à l’échelle. Traitement de requêtes top-k dans APPA Participants : Reza Akbarinia, Vidal Martins, Esther Pacitti, Patrick Valduriez Dans un système P2P à grande échelle, avec des milliers de pairs, les requêtes de haut niveaux peuvent produire de très grandes quantités de résultas, submergeant ainsi l’utilisateur. Une solution à ce problème est d’utiliser des requêtes top-k, avec lesquelles l’utilisateur spécifie un nombre limité (k) des résultats les plus pertinents avec une fonction d’évaluation de la pertinence (scoring function). Le traitement efficace des requêtes top-k dans un système P2P est difficile. Des solutions ont été proposées pour les systèmes distribués en utilisant des histogrammes sur certains sites pour estimer la pertinence des résultats. Mais, dans un système P2P où les pairs peuvent se déconnecter à tout moment, les histogrammes peuvent devenir inaccessibles ou obsolétes, empêchant ainsi la production de résultats corrects. Dans [38, 13], nous avons proposé un premier algorithme complètement décentralisé pour traiter les requêtes top-k dans les systèmes P2P. Nous avons décrit cet algorithme pour les systèmes non structurés, afin d’avoir des hypothèses minimales sur le réseau. Notre algorithme ne cécessite aucun information globale, ne dépend pas de l’existence de certains pairs, a un coût de bande passante réduit, exploite le parallélisme et supporte la volatilité des pairs. Nous avons prouvé la correction de notre algorithme. Nous l’avons aussi implémenté dans APPA sur une grappe de 64 nœuds et simulé avec SimJava et le générateur de topologie Brite pour étudier de grandes configurations (10,000 nœuds). Notre évaluation de performances montre que notre algorithme a une complexité logarithmique et améliore les temps de réponse de manière significative par rapport à des algorithmes de naifs. 1.5.3 Ingénierie des données dirigée par les modèles La relation de représentation entre un modèle et le système qu’il représente ainsi que la relation de conformité entre un modèle et son métamodèle caractérisent les fondements de la nouvelle ingénierie des modèles [44]. Les modèles deviennent ainsi des entités de première classe dans différents domaines comme le génie logiciel, l’ingénierie des systèmes, la gestion de données, le Web sémantique, les ontologies, etc. Notre objectif est de contribuer à l’utilisation des modèles en ingénierie des données. Des exemples d’utilisation sont : la transformation de descriptions de sources de données hétérogènes en un schéma unique pour réaliser l’intégration de données ; la transformation d’un schéma de base de données dans une nouvelle version pour faire migrer les données. Nos travaux s’appuient sur les standards UML, MOF, XMI, SOAP, WSDL et surtout le standard de transformation MOF/QVT de l’OMG. Nos actions GDD : Gestion de Données Distribuées 29 de recherche dans cette direction concernent la transformation de modèles, la composition de modèles et la gestion globale de modèles. Les résultats obtenus sont à la fois de niveau conceptuel et expérimental. Une plateforme nommée AMMA (ATLAS Model Management Architecture) a été défine et construite [26]. Cette plateforme s’appuie sur un certain nombre de principes bien définis exposés intitialement dans [16, 42]. Le modèle est l’élément unificateur et correspond à un programme en technologie conventionnelle. Le métamodèle, correspondant à une grammaire en technologie conventionnelle, permet de définir un langage spécifique (DSL, Domain Specific Language). Le langage spécifique KM3 a été défini avec sa sémantique pour décrire les métamodèles [69]. Les outils de définition syntaxique de langages spécifiques ont été complétés par des facilités de définition sémantique [149]. Pour illustrer l’approche, des langages de téléphonie ont été définis [150] syntaxiquement et sémantiquement. La plateforme AMMA permet de définir de nouveaux langages pour des domains variés [126], mais il est possible d’utiliser ces outils pour définir avec précision les langages noyaux comme KM3, ATL pour la transformation de modèles, TCS pour la définition de syntaxes concrètes, AMW pour la composition de modèles, etc. Transformation de modèles Participants : Jean Bézivin, Frédéric Jouault, Ivan Kurtev, Freddy Allilaire, Patrick Valduriez. Parmi les opérations sur les modèles, la plus importante reste la transformation, qui devrait être spécifiée avec une grande précision algorithmique. Nous avons proposé ATL, un langage mixte (déclaratif / impératif) permettant de réaliser la transformation d’un modèle en un autre modèle, le programme de transformation étant lui-même considéré comme un modèle [72, 71, 73]. Parallèlement à la définition du langage, une première version du moteur a été implémentée dans l’environnement MDR/NetBeans de Sun. Une seconde version est actuellement disponible dans l’environnement Eclipse. En plus du moteur (une machine virtuelle de transformation construite autour d’un certain nombre de ”byte-codes”, un environnement complet de développement est également disponible. Ces travaux ont été complétés par une validation pratique et conceptuelle du langage. L’objectif de créer une communauté d’utilisateurs du langage ATL dans différents secteurs d’application a été pleinement atteint. Il est maintenant possible d’étudier expérimentalement les problèmes de réutilisabilité des composants de transformation, un problème d’ingénierie qui n’a jusqu’à présent reçu aucune solution significative à grande échelle. Nous pouvons aussi étudier les aspects plus conceptuels comme la vérification des programmes de transformation, l’interopérabilité de différents langages de transformation, le potentiel des transformations d’ordre supérieur (transformations prenant d’autres transformations en entrée ou générant des transformations en sortie), les pré-conditions, post-conditions et invariants des transformations, les bibliothèques de patrons de transformation, etc. Tous ces réultats ont été illustrés sur des illustrations concrètes, par exemple :[122, 55, 45, 35]. Spécification d’un atelier générique de tissage de modèles Participants : Jean Bézivin, Frédéric Jouault, Freddy Allilaire, Marcos Didonet del Fabro, Patrick Valduriez. Pour pouvoir disposer d’une plateforme puissante capable de satisfaire nos objectifs de recherche en ingénierie des données, il est tout d’abord nécessaire de pouvoir traiter les modèles comme des entités de première classe. Il faut ensuite pouvoir considérer les transformations comme une forme particulière de modèles. Tout ceci est nécessaire, mais reste néanmoins encore insuffisant. La raison essentielle est que l’opération ternaire de tissage (ou de composition) de modèles n’est pas directement réductible à une 30 Rapport d’activité LINA 2003–2006 simple transformation. Or notre objectif à moyen et long terme est bien d’être capable de travailler sur des problèmes de type intégration de données. Mais pour ceci, il nous faut d’abord disposer de la capacité expérimentale de réaliser concrètement l’opérateur ”merge” de Ph. Bernstein (Microsoft Research). Ceci étant réalisé par l’environnement expérimental AMW sous Eclipse [106], nous pouvons maintenant opérer un tissage à partir de deux métamodèles source et d’un modèle de tissage. Ce tissage nous permet de générer automatiquement des composants de transformation en langage ATL, dans l’environnement de ce langage [107]. Nous avons montré que l’opération de tissage de modèles est non seulement applicable en ingénierie des données, mais qu’elle est également essentielle en ingénierie du logiciel. En effet la prise en compte du schéma de développement en ”Y” , c’est à dire de la liaison entre les aspects ”métier” et les aspects ”plateforme”, ne peut se faire qu’à partir d’une opération de tissage, similaire au ”merge” de Bernstein. Comme souvent la montée en abstraction permet de mettre en évidence des concepts similaires dans des situations différentes et d’appliquer à un domaine (ici l’ingénierie du logiciel) des résultats d’un autre domaine (ici l’ingénierie des données). Construction d’un environnement de gestion globale de modèles Participants : Jean Bézivin, Frédéric Jouault, Freddy Allilaire, Patrick Valduriez. Tout comme en technologie classique il est nécessaire de disposer d’environnements de gestion globale d’artefacts, en ingénierie des modèles ceci est également incontournable [137]. Ici aussi les résultats sont conceptuels et expérimentaaux et s’articulent autour de la plateforme AM3 (ATLAS MegaModel Management) disponible sous le projet Eclipse GMT tout comme ATL et AMW. Cet environnement de développement intégré comprend en particulier des outils de gestion de composants MDA. Un composant MDA correspond à tout artefact pouvant être produit ou utilisé au cours d’un développement basé sur les modèles. Des exemples classiques sont des transformations, des modèles ou des métamodèles. Mais pour permettre l’utilisation du langage en dehors du cadre strict du MDA, des collections d’importateurs et d’exportateurs génériques sont aussi nécessaires pour communiquer avec d’autres espaces techniques comme celui des documents XML, des grammaires, des fichiers plats et des bases de données. La prise en compte de différents espaces techniques [60] comme XML, MDA, EBNF, etc. dans la gestion globale de modèles reste l’une des originalités du projet AMMA. 1.5.4 Médiation de données Dans un système distribué à grande échelle intégrant des sources de données hétérogènes, un utilisateur doit pouvoir poser une requête en utilisant une forme locale. Il peut ensuite s’adresser directement à un pair ou utiliser les services d’un médiateur. Dans tous les cas, l’intégration de données nécessite de : 1 - déterminer quelles sont les sources pertinentes à interroger, 2 - assurer une traduction entre l’expression de la requête et les modèles de données utilisés par les sources, et 3 - intégrer les différents résultats. Chacune de ces étapes peut, suivant les applications, être réalisée chez l’utilisateur, chez les sources, ou chez un médiateur. La mise en oeuvre de ces étapes diffère selon le contexte. Dans certain cas, il est possible de supposer l’existence d’un modèle de données commun à toutes les sources. C’est cette hypothèse qui sert de cadre à l’action “transformation de sources de données”. Elle n’est plus envisagée dans l’action “médiation équitable” où le processus de sélection ne nécessite plus qu’une vue très synthétique des données et permet la prise en compte des intérêts des sources et des utilisateurs pour le choix des sources. Enfin l’action “fédération de médiateurs” étudie les aspects organisationnels pour un passage à grande échelle. GDD : Gestion de Données Distribuées 31 Médiation sémantique Participants : Sylvie Cazalens, David Faye, Philippe Lamarre, Gilles Nachouki, Patrick Valduriez, Anthony Ventresque. Le besoin de coopération ou d’interopérabilité des sources de données hétérogènes, distantes et autonomes constitue un défi majeur dans les systèmes d’information d’aujourd’hui. Les données manipulées dans ces systèmes peuvent être structurées (type base de données) ou non-structurées (type base documentaire). Dans le premier cas, structures et schémas peuvent aider à la formulation des requêtes et l’intégration des résultats. Cependant, si aucun schéma global, commun à tous n’est imposé, cela pose le problème de l’interopératibilité des différents schémas. Dans le second cas, lorsque les données manipulées ne sont structurées par aucun schéma, la recherche d’informations sur des sources multiples nécessite cependant une représentation commune pour supporter les interactions. Ces constatations nous ont conduit dans les deux cas à utiliser des approches basées sur la sémantique. Médiation sémantique pour des données structurées. Les sytèmes P2P classiques tels que Napster ou Kaaza se sont illustrés par une description des noeuds par clés et une localisation des données par un routage de ces mêmes clés dans le réseau. Les systèmes P2P de gestion de données communément appelés PDMS (Peer Data Management System) combinent la technologie P2P et celle des bases de données distribuées et s’appuient sur une description sémantique des sources de données pour aider dans la formulation des requêtes, l’intégration des résultats, mais aussi dans le routage des requêtes à travers le réseau. Cependant la plupart de ces systèmes, soit ne permettent pas le partage de données décrites par des méta-modèles différents, soit ont une mise en place est lourde car nécessitant un certain nombre de mapping ou parfois même faisant appel à l’intervention humaine, ce qui n’est pas envisageable dans un environnement distribué décentralisé mettant en jeu un nombre important de peers. Nous considérons les applications pour lesquelles chaque Peer joignant le réseau est intéressé par le partage décentralisé de données. L’hétérogeneité autorise les peers à contribuer à l’information globale à travers des données s’appuyant sur des modèles de données différents. En effet, nous supposons que les données de chaque peer sont décrites par un schéma et qu’une requête sur le PDMS sera posée sur le schéma d’un peer spécifique. Un peer peut par exemple stocker une base de données relationnelles là ou les autres peuvent stocker des documents XML. Le problème principal serait donc de pouvoir traiter de l’hétérogéneité des sources, mais aussi de leur distribution. Dans ce contexte nous proposons SenPeer, un système P2P de gestion de données sur la vallée du fleuve Sénégal. SenPeer présente une architecture hybride de type Super-peer s’appuyant sur le regroupement des peers en domaines sémantiques. Chaque peer apporte des données basées sur un modèle de données quelconque et dispose en plus de sa propre interface d’accès et de son propre langage d’interrogation. Dans le but d’une médiation flexible, chaque peer exporte une couche de ses données dans un modèle pivot interne qui a une structure de graphe enrichi sémantiquement avec un certain nombre de méta-données issus des schémas et destinées à guider les mappings. Ces mappings permettent ainsi l’établissement d’un réseau sémantique à coté du réseau physique existant permettant ainsi le routage intelligent des requêtes et leur réécriture sur d’autres schémas Mediation sémantique pour des données non structurées. Nous considérons ici les données pour lequelles nous ne faisons pas l’hypothèse d’existence d’un schéma décrivant leur structure, que ce soit au niveau d’un pair ou au niveau du système. La recherche de documents peut ainsi entrer dans le champ de cette approche. 32 Rapport d’activité LINA 2003–2006 Le principe de l’approche que nous proposons consite à décrire, au moyen d’ontologies le contenu des documents, les informations, mais aussi les requêtes. Pour décrire son document ou sa requête, un pair place des pondérations sur les concepts d’une ontologie partagée par tous. Nous appelons l’objet résultant de cette pondération un focus [121, 119]. Cela permet de décrire, indépendamment d’une application, une requête, un document, un pair, un groupe de pairs. . .Il est ainsi possible d’utiliser le focus pour rapprocher requêtes et pairs, ou requêtes et documents. Dans un premier temps, nous nous sommes attachés à étudier la proximité sémantique entre différents focus[120]. Cette proximité peut être mise à profit pour router les requêtes vers les pairs les plus adéquats, calculer les réponses aux requêtes, mais aussi pour permettre un affichage des résultats suivant des critères sémantiques. Nos premiers travaux ont donc porté sur l’étude et la comparaison de telles proximités. Les considérations liées à l’efficacité d’une telle solution n’ont pas été négligées car si l’on n’y prend garde, les calculs peuvent se révéler particulièrement coûteux. Nous avons donc étudiés différentes solutions permettant de limiter ce coût. Deux pistes ont été abordées : 1 - propagation des pondérations lors de la définition d’un focus et non pas au moment du calcul de proximité, et 2 - utilisation de techniques d’indexation proposées dans le domaine des bases d’images pour la recherche de proximités dans des espaces de grandes dimensions. Médiation équitable Participants : Sylvie Cazalens, Philippe Lamarre, Sandra Lemp, Jorge Quiane RuizPatrick Valduriez. Ces travaux se focalisent sur le choix, par un médiateur, des sources à interroger dans le contexte largement distribué suivant : – Les sources sont très hétérogènes et il est très difficile de définir un modèle commun des données qui représente toutes les informations dans tous leurs détails. – Le système est ouvert. Les sources peuvent entrer et quitter librement le système pour des raisons qu’elles sont seules à maı̂triser. Elles peuvent en particulier décider de ne plus travailler avec un médiateur ne leur donnant pas satisfaction. – Pour que le médiateur puisse prendre en compte la satisfaction des sources, ces dernières doivent être plus impliquées dans le processus de médiation. – Les sources peuvent être en compétition les unes avec les autres pour l’obtention des requêtes. – De façon à ne pas léser les intérêts des utilisateurs, le médiateur doit aussi tenir compte de leur satisfaction et donc de la qualité des sources de données. Notre objectif a été de définir un mécanisme qui prenne en compte les aspirations des différents acteurs (les utilisateurs et les sources), qui peuvent être antagonistes. La première étape consiste à obtenir des sources capables de traiter la requête. La deuxième consiste à définir une procédure de sélection des sources qui devront traiter la requête. Pour ce dernier point, les approches économiques se sont révélées intéressantes pour deux raisons principales : 1 - l’intérêt d’une source pour la requête d’un utilisateur se représente “simplement” par une offre “monétaire”, 2 - sur le long terme, ces mécanismes permettent une régulation entre participants et évitent le monopole des requêtes par les mêmes sources. Les ventes aux enchères sont un exemple de tels mécanismes. Cependant, les approches économiques classiques n’ont pas vocation à s’intéresser à la qualité des enchérisseurs. C’est pourtant ici un point crucial pour l’utilisateur. C’est pourquoi, la procédure de choix que nous avons proposée [74, 109, 112] utilise un mécanisme combinant offre et qualité et qui assure que toute requête trouve le nombre de sources requises (pour peu qu’il y en ait suffisamment qui disposent des capacités adéquates et ce indépendamment de leurs souhaits). Ce dernier point est obtenu grâce à un GDD : Gestion de Données Distribuées 33 mécanisme de réquisition qui vient compléter celui de vente aux enchères. Le principe de la réquisition est de dédommager financièrement la source réquisitionnée grâce à la participation des autres sources. La procédure que nous proposons possède certaines des propriétés habituellement attendues des processus économiques, telles que la Pareto Optimalité [110]. Par contre nous avons montré qu’elle n’est pas individuellement rationnelle. Ceci est du au fait qu’une source peut être réquisitionnée pour répondre à une requête. Pour étudier le comportement à long terme de la procédure, nous avons défini un ensemble de mesures de satisfaction (pour les utilisateurs, les sources), d’adéquation et de répartition de charge en termes de requêtes. Des premières validations de cette procédure ont été réalisées par simulation dans une problématique d’équilibrage de charge [75]. Les résultats montrent que la procédure améliore sur moyen et long terme la satisfaction des utilisateurs et des sources sans dégradation importante de la répartition de charge. Après avoir prouvé la Pareto-optimalité de ce processus, nous avons implémenté un outil de simulation permettant d’évaluer son comportement. Des tests sont encore en cours. 1.6 Logiciels Dans le contexte de concurrence international en gestion de données, la réalisation de logiciels expérimentaux à fin de validation est indispensable. L’équipe GDD développe les prototypes suivants : 1.6.1 APPA (Atlas P2P Architecture) (Responsable: Patrick Valduriez) URL/DOI: http://www.sciences.univ-nantes.fr/lina//APPA/ Mots-clés: Système de gestion de données pair-à-pair Équipe de développement: Reza Akbarinia, Eduardo Cunha de Almeida, Vidal Martins, Gerson SunyéM.C., Esther Pacitti, Patrick Valduriez APPA est un système de gestion de données pair-à-pair dont les objectifs sont le passage à l’échelle, la disponibilité et les performances pour des applications collaboratives. APPA a une architecture indépendante du réseau en termes de services de base et services avancés pour pouvoir fonctionner sur différents réseaux pair-à-pair (non structuré, DHT, super-pair). Les services avancés d’APPA sont la réplication optimiste, le traitement de requêtes, la gestion des résumés et l’équilibrage de charge. APPA est en cours de réalisation avec le framework JXTA. 1.6.2 ATL (Atlas Transformation Language) (Responsable: Jean Bézivin) URL/DOI: http://www.eclipse.org/gmt/atl Mots-clés: Langage et système de transformation de modèles Équipe de développement: Freddy Allilaire, Jean Bézivin, Ivan Kurtev, Frédéric Jouault, Patrick Valduriez 34 Rapport d’activité LINA 2003–2006 ATL est un système de gestion et de transformation de modèles, avec la gestion de données et de métadonnées comme application principale. Le langage ATL est conçu pour être général et abstrait. Il peut être utilisé non seulement dans des approches de type MDA, mais aussi avec des approches plus générales d’ingénierie des données. La conception d’ATL assure un bon niveau de compatibilité avec les standards MDA de l’OMG, en particulier OCL ou MOF/QVT. ATL est implémenté en Java sur environnement EMF (Eclipse Modeling Framework). ATL a été déposé à l’Agence pour la Protection des Programmes (APP) en 2004 (avec l’INRIA et la société TNI-Software) et est livré en logiciel libre sous Eclipse Public Licence (EPL). Il est constitué d’une machine virtuelle de transformation, d’un compilateur vers les byte codes de cette machine, d’un environnement complet de programmation (ccoloriage syntaxique, auto-complétion, debugging, etc.). Une bibliothèque significative de composants de transformation ATL existe et le langage est quotidienneemnt utilisé sur un centaines de sites d’enseignement, de recherche mais surtout de sites industriels (Airbus, NASA, ILOG, CS, Sodius, TNI, etc.). C’est l’un des langages de transformation de modèles les plus connus et il a été choisis dans plusieurs pôles de compétitivité français comme System@tic (région parisienne) ou TopCased (Toulouse). Les utilisaturrs d’ATL se trouvent en Allemagne, Italie, Espagne, Canada, etc. et animent ds groupes de discussion et de contribution très actifs. 1.6.3 AMW (Atlas Model Weaver) (Responsable: Jean Bézivin) URL/DOI: http://www.eclipse.org/gmt/amw Mots-clés: Système de tissage de modèles Équipe de développement: Freddy Allilaire, Jean Bézivin, Marcos Didonet Del Fabro, Frédéric Jouault, Patrick Valduriez AMW est une plateforme de composants pour le tissage de modèles, permettant d’établir et de gérer des correspondances entre modèles. La plateforme s’appuie sur le mécanisme de contribution d’Eclipse où les composants sont définis comme des plugs-ins. Les plug-ins sont interconnectés pour produire l’atelier de tissage de modèles. Les composants d’interface utilisateur, les algorithmes de correspondance et de sérialisation de modèles peuvent être branchés au besoin. Nous utilisons les API réflexives de l’architecture EMF d’Eclipse pour obtenir un éditeur de tissage standard qui adapte son interface aux modifications de métamodèles. AMW a été déposé à l’Agence pour la Protection des Programmes (APP) en 2005 (avec l’INRIA et la société Sodifrance) et est livré en logiciel libre sous Eclipse Public Licence (EPL). 1.6.4 AM3 (Atlas MegaModel Manager) (Responsable: Jean Bézivin) URL/DOI: http://www.eclipse.org/gmt/amw Mots-clés: Système de gestion globale de modèles Équipe de développement: Freddy Allilaire, Jean Bézivin, Frédéric Jouault, Patrick Valduriez GDD : Gestion de Données Distribuées 35 AM3 est une plateforme expérimentale de gestion globale de modèles. Tout comme ATL et AMW, AM3 est maintenant intégré dans le projet GMT (Generative Modeling Tools), qui constitue l’incubateur de recherche du nouveau projet Eclipse de niveau supérieur dirigé par Borland et IBM (EMP, Eclipse Modeling Project) depuis Mars 2006. L’objectif de AM3 est de permettre la gestion globale et intégrée d’un grand nombre d’artefacts de modélisation disponibles sur de nombreux sites géographiquement distribués. Le concept de ”mégamodèle” est à la base de l’approche. Il est illustré dans AM3 par de nombreuses bibliothèques de modèles, de métamodèles, de transformations, d’injecteurs ou d’extracteurs vers des espaces techniques différents (OMG/MDA, Microsoft/DSLTools, EBNF, XML, SQL, Web sémantique, Ontologies, etc.). AM3 est constitué de contributions en provenance de l’équipe et de la communauté Eclipse. 1.6.5 RepDB* (Responsable: Esther Pacitti) URL/DOI: http://www.sciences.univ-nantes.fr/lina/RepDB/ Mots-clés: Système de réplication de bases de données en grappe Équipe de développement: Cédric Coulon, Gaetan Gaumer, Esther Pacitti, Patrick Valduriez RepDB* est un ensemble de services pour répliquer des bases de données ou des sources de données autonomes dans une grappe de PC. RepDB* a été initialement développé dans le projet RNTL LegNet puis dans le projet ACI MDP2P. RepDB* supporte une technique de replication preventive qui évite les conflits et assure la coherence forte des données répliquées. Les techniques sont générales, non intrusives et indépendantes du SGBD. Il est implémenté en Java sous Linux et supporte plusieurs SGBD : Oracle, PostGRESQL and BerkeleyDB. Il a été validé sur la grappe de 8 processeurs de l’équipe GDD et sur une grappe de 64 nœuds à l’INRIA-Rennes. RepDB* a été déposé à l’Agence pour la Protection des Programmes (APP) en 2004 (avec l’INRIA) et est livré en logiciel libre sous General Public Licence (EPL). 1.6.6 BaGates For You (Responsable: Philippe Lamarre) URL/DOI: Mots-clés: Système de déploiement d’agents Équipe de développement: Sylvie Cazalens, Philippe Lamarre BAG ATES F OR YOU fournit les outils nécessaires au déploiement d’agents organisés en fonction d’une hiérarchie de concepts. Cette hiérarchie est construite par l’utilisateur en fonction de sa problématique mais il est possible de faire évoluer cette hiérarchie en cours d’exécution sans avoir à réinitialiser les agents ou le système. Le nombre d’agents, leur répartition, et leur configuration propre sont laissés au libre choix de l’utilisateur. Les agents fournissant des services sont regroupés en fonction des concepts présents dans la hiérarchie. Les utilisateurs joignent les fournisseurs de services en expédiant une requête qui précise le ou les concepts concernés par leurs requêtes. Ce prototype est programmé en JAVA et les agents communiquent en utilisant la norme CORBA. Des outils permettent d’implanter des agents utilisateur, site et BaGate et de visualiser l’organisation des agents. Le logiciel est l’un de ceux ayant pour objet le contrat passé avec la société e-Manation. 1.6.7 CorbaTrace URL/DOI: http ://corbatrace.sourceforge.net Mots-clés: Système de trace de communications CORBA Équipe de développement: Philippe Lamarre (Responsable: Philippe Lamarre) 36 Rapport d’activité LINA 2003–2006 C ORBAT RACE est un ensemble d’outils permettant de tracer les communications entre objets CORBA. Une fois que CorbaTrace est installée, les appels distants sont interceptés et des logs sont sauvegardés en XML. Après l’application de plusieurs filtres, des fichiers XMI sont générés, permettant ainsi une visualisation graphique sous forme de diagramme de séquence UML. Il est distribué sous licence LGPL et est publié par tuxfamilly (http ://corbatrace.tuxfamily.org) et sourceforge (http ://corbatrace.sourceforge.net/). La nécessité de développer un tel outil est apparue lors du débuggage de logiciel BAG ATES F OR YOU qui utilise le Middleware CORBA (communications et services). 1.7 Diffusion des résultats 1.7.1 Rayonnement – J. Bézivin. 2003-2006 : Membre du steering committee des conférences ECOOP (AITO) et MoDELS (ex.UML). 2003 : cours de l’école d’été d’informatique EDF/CEA/INRIA, conférencier invité à la conférence UML à San Francisco, USA ; 2004 : conférencier invité à la conférence WCRE à Delft, Pays-Bas ; 2005 : conférencier invité à la conférence Fujaba à Paderborn, Allemagne, conférencier invité à la conférence Net.Object Days à Erfurt, Allemagne ; 2006 : conférencier invité à la conférence LDTA à Vienne, Autriche. – E. Pacitti. 2003-2006 : conférences invitées à UFRJ et PUC-Rio, Rio de Janeiro ; 2004 : conférencière invitée, Ecole d’été INRIA Druide à Port-aux-Rocs ; 2005 : conférencière invitée, Université de Waterloo, Canada. – P. Valduriez. 2002-2005 : membre de l’ACM SIGMOD steering committee ; 2003 : membre du conseil scientifique de l’ACI GRID ; 2003-2006 : conférencier invité, UFRJ et PUC-Rio, Rio de Janeiro ; 2003 : conférencier invité, Journées MIAGE, Rennes, Journées RNTL, Grenoble ; 2004 : conférencier invité, VecPar (Int. Conf. on High-performance Computing for Computational Science), Valence. 1.7.2 Comités de programmes et comités de lecture Les membres de l’équipe participent régulièrement à des comités de lecture de revues, dont les plus prestigieuses de leur domaine : – Distributed and Parallel Database Systems, Kluwer Academic Publishers, P. Valduriez – Internet and Databases : Web Information Systems, Kluwer Academic Publishers, P. Valduriez – Ingénierie des Systèmes d’Information, Hermes, P. Valduriez – Journal of Object Technology, journal électronique, J. Bézivin – SoSyM, Software and System Modeling, Springer Verlag, J. Bézivin D’autre part, les membres de l’équipe participent régulièrement à des comités de programme de grandes conférences : – ACM-SIGMOD Int. Conf., E. Pacitti : 2004 – Int. Conf. on VLDB, P. Valduriez : 2003, 2005, 2006 – IEEE Int. Conf. on Data Engineering, P. Valduriez (Président du CP industriel), E. Pacitti : 2007 – IEEE Int. Conf. on Distributed Computing Systems (ICDCS), Data Management track : P. Valduriez (Président), E. Pacitti : 2007 GDD : Gestion de Données Distribuées 37 – ACM Int. Symp. on Applied Computing (SAC) : Model Engineering Track, 2006 : J. Bézivin (co-Président) – Brazilian Symposium on Databases, E. Pacitti : 2005 – Int. Conf. on High Performance Computing for Computational Science (VecPar), 2005, 2006 : P. Valduriez – Int. Workshop on High-Performance Data Management in Grid Environments (HPDGrid 2006), VecPar 2006 : P. Valduriez (Président), E. Pacitti (Présidente du CP) – Int. Conf. on Parallel and Distributed Computing (Euro-Par), 2005 : P. Valduriez (Vice président, Distributed and Parallel Databases track) – Int. Conf. on Parallel and Distributed Computing (Euro-Par), 2006 : P. Valduriez (Président, Distributed and Parallel Databases track) – International Conference on Cooperative Information Systems (CoopIS), 2006 : P. Valduriez – Generative Programming (GPCE), 2004 : J. Bézivin – Fundamental Approaches to Software Engineering (ETAPS/FASE), 2004-2006 : J. Bézivin – Enterprise Distributed Object Computing (EDOC), J. Bézivin : 2003-2006 – Int. Conf. on Enterprise Information Systems (ICEIS), J. Bézivin : 2003-2006 – Int. MoDELS Conf. (ex. UML), J. Bézivin : 2003-2006 – Journées Bases de Données Avancées (BDA), P. Valduriez : 2003, E. Pacitti : 2005 – Journées Françaises des Systèmes Multi-Agents, P. Lamarre : 2004 – Systèmes Formels de l’Interaction, P. Lamarre : 2003-2005 – International Workshop on Organization in Multi-Agent Systems, P. Lamarreé : 2005 – Artificial Economics (AE), P. Lamarre : 2005-2006 1.7.3 Organisation de congrès – P. Valduriez a été président de la conférence ACM SIGMOD à Paris en 2004. Il s’agit de la plus grande conférence internationale en bases de données qui s’est tenue pour la première fois de son histoire hors de l’Amérique du Nord. – P. Valduriez est président de la conférence EDBT qui se tiendra à Nantes en 2008. N. Mouaddib et G. Raschia (Atlas-GRIM) sont respectivement président exécutif et président de l’organisation. Il s’agit de la plus grande conférence européeenne en bases de données. – J. Bézivin a co-organisé une école Dagsthul sur l’ingénierie des modèles en 2004. – J. Bézivin a co-organisé avec P. Cointe (Obasco) la conférence ECOOP à Nantes en 2006. Il s’agit de la plus grande conférence européeenne en génie logiciel. 1.7.4 Impact sur la formation universitaire Tous les membres de l’équipe participent à des enseignements en troisième cycle à l’Université de Nantes en bases de données, systèmes multi-agents et génie logiciel. Les membres seniors du projet participent régulièrement à des jurys de thèses en France et à l’étranger et à des jurys d’habilitation. 1.7.5 Transfert de technologie Le prototype (BaGates For You) a fait l’objet d’un transfert de technologie à la société e-Manation, Nantes. 38 Rapport d’activité LINA 2003–2006 1.8 Stratégie de valorisation et de coopération Les actions contractuelles reflètent les collaborations scientifiques et industrielles de l’équipe. Les collaborations industrielles sont importantes pour l’équipe pour plusieurs raisons. D’abord, elles permettent de valider nos résultats de recherche en vraie grandeur, en nous donnant des contraintes fortes sur l’architecture et l’environnement de travail. Ensuite, elles peuvent générer de nouveaux problèmes de recherche. Enfin, elles nous mettent en contact direct avec des applications ou produits réels, difficiles à concevoir dans un laboratoire de recherche public. Nos contrats nationaux (RNTL), européens (IP, STREP) et nos contrats directs avec des industriels majeurs (Microsoft, IBM) sont le résultat de cette stratégie. D’autre part, les relations internationales sont importantes pour l’équipe, notamment pour l’échange de chercheurs et l’acceuil de doctorants et postdocs. 1.8.1 Actions internationales 5ième et 6ième PCRD STREP Grid4All (2006-2008) Responsable: Patrick Valduriez Montant: 200 000 e Mots-clés: Grilles de données, organisations virtuelles, travail collaboratif, réplication, découverte de ressources. Participants: Reza Akbarinia ,Sylvie Cazalens ,Philippe Lamarre ,Vidal Martins ,Esther Pacitti ,Jorge Quiane ,Gerson Sunyé ,Patrick Valduriez . Partenaires: INRIA (Equipes Atlas, Grand-Large, Régal, et Sardes), France Telecom R&D, Kungliga Tekniska Hoegskolan (Suède), Swedish Institute of Computer Science (Suède), Institute of Communication and Computer Systems (Grèce), University of Piraeus Research Center (Grèce), Universitat Politècnica de Catalunya (Espagne), Rededia S.L. (Espagne). L’objectif du projet est de développer une infrastructure de grilles pour la collaboration d’organisations virtuelles et dynamiques telles que les communautés, écoles et familles. La principale innovation technique est de combiner les avantages des systèmes de grilles et de systèmes P2P pour offrir une solution flexible. Dans ce projet, l’équipe Atlas participe à la définition de l’infrastructure P2P et au développement des services de découverte de ressources et de traitement de requêtes, et de réplication décentralisée adaptée aux applications collaboratives. . . . Modelware (2004-2006) Responsable: Jean Bézivin Montant: 330 000 e Mots-clés: Ingénierie des modèles, intéropérabilité des outils, MDA Participants: Freddy Allilaire ,Jean Bézivin ,Frédéric Jouault ,Yvan Kurtev ,Patrick Valduriez . Partenaires: Atlas (INRIA), Thales, Softeam, IBM UK, As Aprote, Enabler Informatica, Telenor Communication, France Telecom, Logon Technology Transfer, Fraunhofer Gesellschaft, WesterGeco, IBM Israël, University of York, Universidad Politecnica de Madrid, Université Pierre et Marie Curie, Fundacion European Software Institute, Adaptive Limited, Imbus AG, SINTEF, Interactive Objects Software. GDD : Gestion de Données Distribuées 39 Le projet intégré européen ”Modelware” rassemble les acteurs les plus importants dans le domaine de l’ingénierie des modèles en Europe. L’objectif est de démontrer sur les quatre prochaines années la réalité industrielle des approches basées sur les modèles tout en faisant avancer la recherche dans ce domaine. ModelPlex (2006-2009) Responsable: Jean Bézivin Montant: 335 000 e Mots-clés: Ingénierie des modèles, intéropérabilité des outils, MDA. Participants: Freddy Allilaire ,Jean Bézivin ,Frédéric Jouault ,Yvan Kurtev ,Patrick Valduriez . Partenaires: Atlas (INRIA), Thales Research TRT, Thales Information Systems, Softeam, IBM Belgium, Fraunhofer Gesellschaft, WesterGeco, IBM Israël, University of York, Universidad Politecnica de Madrid, Université Pierre et Marie Curie, Fundacion European Software Institute, Adaptive Limited, XJTech, Xactium, Imbus AG, SINTEF, Sodifrance-MIA Software, Technical university Braunschweig, University Dresden, Telefonica, CEA, SAP. Le projet intégré européen ModelPlex prend la suite du projet Modelware à partit de l’automne 2006 et pour une durée de trois ans. Il part de l’hypothèse que les bases de l’ingénierie des modèles sont maintenant bien établies et vise à les appliquer dans le domaine des systèmes complexes ou des sytèmes de systèmes. Parmi les sujets sur lesquels l’équipe ATLAS va contribuer à ce nouveau projet on peut citer l’ingénierie inverse des systèmes d’information (model based reverse engineering), la gestion globale des modèles (mégamodèles), et la gestion de métadonnées dans les systèmes distribués à base de flots. Comme dans le précédent projet, l’équipe apportera sa contribution sous forme de logiciel libre (composants de la plate-forme AMMA, principalement ATL, AMW et AM3. Grands Editeurs Microsoft Research (2003-2006) Responsable: Jean Bézivin Montant: 80 000 e Mots-clés: Transformation de données, tissage de modèles, intégration de données. Participants: Jean Bézivin ,Marcos Didonet Del Fabro ,Frédéric Jouault ,Patrick Valduriez . Partenaires: Equipe Atlas L’objectif est d’aider au développement de la plate-forme ATL et encourager la dissémination des résultats en logiciel libre sous une licence non restrictive. Un objectif est de porter des composants de transformation de données pour l’environnement Dotnet. L’équipe a aussi un second contrat de 2 ans (2004-2005) pour produire des contenus pédagogiques autour d’ATL et promouvoir l’approche transformation de modèles. IBM/Eclipse Responsable: Jean Bézivin Montant: 20 000 e Mots-clés: ATL, Eclipse. Participants: Frédéric Jouault ,Jean Bézivin Partenaires: Equipe Atlas-GDD (2004-2005) 40 Rapport d’activité LINA 2003–2006 L’équipe ATLAS a été distinguée en recevant en 2004 le prix IBM d’innocvation Eclipse. Le projet consistait à porter la plate-forme ATL dans l’environnement Eclipse. Le portage de l’environnement ATL sous Eclipse a été le seul projet français retenu en 2004 pour ce soutien spécifique IBM. La première version du prototype ATL a été présentée à l’automne 2004 à la conférence OOPSLA à Vancouver (Canada) et possède aujourd’hui une visibilité industrielle internationale grâce au soutien de ce prix. Programmes d’échanges D’autre part, les membres de l’équipe participent aux actions internationales suivantes : – le projet Daad (Distributed computing with Autonomous Applications and Databases) (20042007), financé par CAPES-COFECUB, dirigé par P. Valduriez, avec les Universités PUC-Rio et UFRJ, sur les techniques de réplication et de traitement de requêtes dans les grappes. La thèse d’Alexandre Lima a été élaborée dans le contexte de ce projet sous la direction de Marta Mattoso et Patrick Valduriez. – le projet Gridata (Grid data management) (2006-2009), financé par CNPQ-INRIA, dirigé par P. Valduriez, avec l’équipe Gemo (INRIA-Futurs) et les Universités PUC-Rio et UFRJ, sur les techniques de gestion de données dans les grilles de données – le projet STIC Génie Logiciel (Franco-Marocain) portant sur la conception de systèmes par points de vue, avec le laboratoire GRIMM de Toulouse, le LSR de Grenoble, et l’équipe AXIS de Sophia Antipolis. – l’OMG : depuis la proposition initiale du langage UML par l’OMG en 1996, J. Bézivin participe et contribue régulièrement aux travaux de ce consortium industriel L’équipe a contribué à l’élaboration par l’OMG du guide MDA. De plus, les membres de l’équipe ont une collaboration scientifique régulière avec les équipes suivantes : – Tamer Özsu, Univ. Waterloo (Canada) sur la gestion de bases de données distribuées : Esther Pacitti et Patrick Valduriez ont été chercheurs invités à Waterloo en juillet 2005 ; Tamer Özsu a été chercheur invité au LINA en mai 2006. – Dennis Shasha, NYU (USA) sur la confidentialité et la sécurité des données distribuées ; Dennis Shasha a visité l’équipe plusisuers fois en 2006 pendant son sabbatique à l’INRIA-Rocquencourt. – Alvaro Couthino et Marta Mattoso, UFRJ, Rio de Janeiro, PUC-Rio, sur la gestion de données dans les grappes et les grilles. – Fabio Porto, EPFL, Lausanne, sur l’optimisation de requêtes. – Mehmet Aksit, Groupe TRESE, Université de Twente, Pays Bas, sur les relations entre la gestion des aspects et les modèles. Ivan Kurtev, ancien doctorant de cette équipe est actuellement en postdoctorat à Nantes. – Alfonso Pierantonio, Université di L’Aquila, Italie sur la définition des sémantiques des langages dédiés. Davide Di Ruscio a été chercheur invité au LINA de février à avril 2006. – Jeff Gray, Université d’Alabama à Birmingham (USA) sur l’ingénierie des modèles. En collaboration avec l’université Vanderbilt(Gabor Karsai), les échanges portent sur l’alignement des plates-formes d’ingénierie des modèles (GME et AMMA). 1.8.2 Contrats labellisés par l’ANR ARA Masses de Données Respire Responsable: Esther Pacitti (2003-2006) GDD : Gestion de Données Distribuées 41 Montant: 80 000 e Mots-clés: Gestion de resources P2P, infrastructure, réplication, traitement de requêtes, équilibrage de charge. Participants: Reza Akbarinia, Eduardo Cunha de Almeida, Sylvie Cazalens, Philippe Lamarre, Vidal Martins, Esther Pacitti, Jorge Quiane, Gerson Sunyé, Patrick Valduriez. Partenaires: Atlas-GDD, INT, LIP6, Paris (IRISA), Regal (INRIA et LIP6). Le projet a pour but d’offrir une infrastructure intégrant des fonctionnalités innovantes pour le partage de ressource dans les systèmes P2P. Les problèmes étudiés sont la publication et le catalogage réparti des ressources, le regroupement dynamique des participants, la réplication des ressources pour améliorer les performances et assurer la robustesse vis-à-vis de la volatilité des pairs, et l’accès efficace et équitable aux ressources. Pour valider l’infrastructure Respires, nous développons des prototypes de services, qui seront pour certains livrés en logiciel libre. Afin d’assurer l’interopérabilité de ces services, les réalisations s’appuient sur des standards établis (XML, SOAP, RDF, Xquery, JXTA, etc.). ARA Masses de Données MDP2P (2003-2006) Responsable: Patrick Valduriez Montant: 80 000 e Mots-clés: Gestion de masses de données en P2P, réplication, requêtes, indexation, multimédia. Participants: Reza Akbarinia ,Gaetan Gaumer ,José Martinez ,Vidal Martins ,Esther Pacitti ,Patrick Valduriez . Partenaires: Atlas (INRIA-Rennes et LINA), Gemo (INRIA-Futurs), Paris (IRISA), Texmex (IRISA). L’objectif du projet est d’offrir des services de gestion de documents textuels et multimédia dans des systèmes pair-à-pair (P2P) à très grande échelle. Nous nous concentrons sur les services suivants : haute disponibilité des données (avec réplication et reprise sur panne dynamique) et équilibrage de charge à grande échelle ; indexation et recherche à grande échelle de documents textuels et multimédia ; gestion de données massives dans un cadre P2P. Pour le LINA, ce projet est l’occasion d’une collaboration forte avec l’équipe Atlas-GRIM (J. Martinez). RNTL Leganet (2002-2003) (2002-2003) Responsable: Patrick Valduriez Montant: 330 000 e Mots-clés: Hébergement d’applications, grappe de PC, réplication, équilibrage de charge. Participants: Cédric Coulon ,Esther Pacitti ,Patrick Valduriez . Partenaires: Atlas-GDD, ASP-Line, LIP6, Prologue Software. Le projet Leg@net (Legacy applications on the Net) réunissait Prologue Software (éditeur de logiciels Application Service Provider - ASP), ASPLine (éditeur d’un logiciel de gestion de pharmacies) et le LIP6 pour réaliser une solution d’hébergement d’applications bases de données sur cluster (en mode ASP) à base de composants logiciels libres. La contribution d’Atlas-GDD a concerné l’équilibrage de charge des transactions et la réplication préventive. Dans ce contexte, nous avons réalisé et livré le logiciel RepDB*. RNTL XWiki Concerto Responsable: Patrick Valduriez Montant: 150 000 e (2002-2003) 42 Rapport d’activité LINA 2003–2006 Mots-clés: Wiki, mobilité, pair-à-pair, réplication Participants: Esther Pacitti ,Patrick Valduriez ,Gerson Sunyé Partenaires: XPertNet, ObjectWeb, INRIA, ENST, Mandriva, EISTI L’objectif du projet est de permettre à XWiki, projet ObjectWeb de Wiki de seconde génération de fonctionner dans un réseau P2P et de supporter des utilisateurs mobiles. Dans ce projet, l’équipe AtlasGDD développe avec le LORIA les technologies de collaboration à partir des solutions éprouvées en réplication de données optimiste. Programme blanc ANR FLFS (2006-2009) Responsable: Jean Bézivin Montant: 68 800 e Mots-clés: DSL, MDE, Aspects Participants: Jean Bézivin ,Frédéric Jouault Partenaires: OBASCO, Phoenix, INRIA, ENST L’objectif du projet FLFS (Familles de Langages pour Familles de Systèmes) consiste à étudier le continuum modélisation de domaine/mise en oeuvre par les technologies complémentaires des modèles, des DSLs (langages dédiés) et des aspects. Dans ce projet, l’équipe Atlas-GDD développe des solutions basées sur la plateforme AMMA et en particulier sur les langages de transformation de modèles ATL et TCS. RNTL OpenEmbeDD (2006-2009) Responsable: Jean Bézivin Montant: 75 000 e Mots-clés: DSL, MDE, Aspects, Participants: Jean Bézivin ,Frédéric Jouault Partenaires: Airbus, Anyware, CEA, CS, FT R&D, LAAS, Thales DAE, Thales TRT, Verimag OpenEmbeDD est une plateforme open-source sous Eclipse ouverte, standardisée, générique basée sur les principes de l’IDM pour le génie logiciel des systèmes embarqués. L’équipe fournit une machine virtuelle de transformation de modèles, des composants de gestion globale de modèles. Par ailleurs l’équipe travaille dans le cadre de ce projet sur l’interopérabilité des platesformes AMMA et GME. OpenDevFactory, Usine Logicielle Systematic Pôle de Compétitivité région Parisienne (2005-2008) Responsable: Jean Bézivin Montant: 64 200 e Mots-clés: Ingénierie des modèles, Transformation de modèles Participants: Jean Bézivin ,Frédéric Jouault ,Freddy Allilaire Partenaires: THALES TRT, TCF, EADS CCR, EADS ST, EDF, Dassaut Aviation, Hispano Suiza, MBDA, Trialog, Esterel Technologies, Softeam, CEA, IFP, CNES, LRI, LIP6, SupElec,Polytechnique Dans ce projet, l’équipe Atlas-GDD travaille, en relation avec les différents partenires industriels pour développer des solutions basées sur une plateforme ouverte d’ingénierie des modèles. Des développements de chaı̂nes de transformation pour les besoins de transformation de données des partenaires industriels permettront d’améliorer les solutions existantes. GDD : Gestion de Données Distribuées 43 Autres Motor (2003) Responsable: Jean Bézivin Montant: 20 000 e Mots-clés: Ingénierie des modèles, transformation, interopérabilité des langages. Participants: Jean Bézivin, Frédéric Jouault ,Patrick Valduriez . Partenaires: INRIA-Atlas, CEA, INRIA, Thales. Dans le cadre du projet commun Carroll entre l’INRIA, le CEA et Thales, l’équipe a participé à l’étude de l’interopérabilité des langages de transformations (projet MOTOR), en s’appuyant sur notre logiciel ATL. Un ingénieur financé sur ce contrat pendant six mois a maintenant rejoint les équipes de recherche de FT R&D, pour travailler sur des sujets similaires. BonomCV (2002-2003) Responsable: Phillipe Lamarre Montant: 23 000 e Mots-clés: Système multi-agent, organisation d’agents, indexation sémantique. Participants: Sylvie Cazalens, Emmanulel Desmontils, Christine Jacquin, Philippe Lamarre ,Emmanuel Morin. Partenaires: Fondation Recherche et Emploi, VediorBis. L’objectif de ce projet était d’adapter l’organisation d’agents et les méthodes d’indexation sémantique développées dans les équipes GDD et TALN pour appliquer ces techniques à la recherche de profils dans des sources distribuées de CV libres. L’équipe a obtenu 3 bourses CIFRE avec France Telecom, TNI/Valyosis et SoftMain. P. Valduriez a participé à l’action spécifique CNRS Bases de données et mobilité (2002-2003). J. Bézivin a co-dirigé l’action spécifique CNRS Ingénierie des modèles (2003-2004). J. Bézivin a aussi créé et dirigé de 2000 à 2003 le groupe de travail sur l’ingénierie des modèles de l’OFTA (Observatoire Français des Techniques Avancées) qui a permis l’émergence initiale d’une importante activité en France sur le sujet. Depuis son origine, P. Valduriez participe à l’animation de la communauté française Bases de données dans le cadre du GDR I3 et de la conférence annuelle Bases de Données Avancées (BDA). P. Lamarre et S. Cazalens sont membres du groupe ASA du GDR-I3, Systèmes Multi-Agents. 1.9 Publications de référence de l’équipe hors période [1] S. C AZALENS, E. D ESMONTILS, C. JACQUIN, et P. L AMARRE. A distributed agent-based system for knowledge-based internet information retrieval. In P. G RAHAM et M. M AHESWARAN, réds., Internet Computing 2000 (IC’2000), pages 135–141. CSREA Press, 2000. ISBN : 1-892512-65-3. [2] S. C AZALENS, E. D ESMONTILS, C. JACQUIN, et P. L AMARRE. Process for an internet information retrieval agent system. In Int. Conf. on Web Information Systems Engineering (WISE’2000), pages 245–249. IEEE Computer Society Press, 2000. ISBN : 0-7695-0577-5. [3] S. C AZALENS et P. L AMARRE. Organizing internet agents according to a hierarchy of information domains. In N. Z HONG, J. L IU, S. O HSUGA, et J. B RADSHAW, réds., Intelligent Agent Technology (IAT’2001), pages 469–473. World Scientific, 2001. ISBN : 981-02-4706-0. 44 Rapport d’activité LINA 2003–2006 [4] T. Ö ZSU et P. VALDURIEZ. Principles of Distributed Database Systems, 2nd edition. Prentice Hall, 1999. [5] E. PACITTI, P. M INET, et E. S IMON. Fast algorithms for maintaining replica consistency in lazy master replicated databases. In Int. Conf. on Very Large Databases (VLDB), pages 126–137. Morgan Kaufmann, 1999. ISBN : 1-55860-615-5. [6] E. PACITTI et E. S IMON. Update propagation strategies to improve freshness in lazy master replicated databases. The VLDB Journal, 8(3-4), 2000. [7] P. P UCHERAL, L. B OUGANIM, P. VALDURIEZ, et C. B OBINEAU. PicoDBMS : Scaling down database techniques for the smartcard. In Int. Conf. on Very Large Databases (VLDB), Le Caire, 2000. Prix du meilleur article. [8] P. P UCHERAL, L. B OUGANIM, P. VALDURIEZ, et C. B OBINEAU. Picodbms : Scaling down database techniques for the smartcard. VLDB Journal, 10(2-3) :120–132, 2001. [9] G. S UNY É, A. L. G UENNEC, et J.-M. J ÉZ ÉQUEL. Using UML action semantics for model execution and transformation. Information Systems, 27(6) :445–457, 2002. [10] A. T OMASIC, L. R ASCHID, et P. VALDURIEZ. Scaling access to heterogeneous data sources with disco. IEEE Trans. on Knowledge and Data Engineering, 10(5), 1998. 1.10 Publications de référence de l’équipe dans la période [11] F. A LLILAIRE, J. B ÉZIVIN, M. D IDONET D EL FABRO, F. J OUAULT, D. T OUZET, et P. VAL DURIEZ. Amma : vers une plate-forme générique d’ingénierie des modèles. Génie Logiciel, (73) :8–15, 2005. [12] J. B ÉZIVIN, M. D IDONET D EL FABRO, F. J OUAULT, I. K URTEV, et P. VALDURIEZ. Model Engineering : From Principles to Applications. Springer, 2006. 1.11 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [13] R. A KBARINIA, E. PACITTI, et P. VALDURIEZ. Reducing network traffic in unstructured p2p systems using top-k queries. Distributed and Parallel Databases, 19(2) :67–86. Springer, 2006. ISSN 0926-8782. [14] G. B ERNARD, J. B EN -OTHMAN, L. B OUGANIM, G. C ANALS, B. D EFUDE, J. F ERRI É, S. G ANÇARSKI, R. G UERRAOUI, P. M OLLI, P. P UCHERAL, C. RONCANCIO, P. S ERRANO A LVARADO, et P. VALDURIEZ. Mobile Databases : a Selection of Open Issues and Research Directions). ACM SIGMOD Record, 33(2) :78–83, June 2004. ISSN 0163-5808. [15] J. B ÉZIVIN. In search of a basic principle for model-driven engineering. Novatica – Special Issue on UML (Unified Modeling Language), 5(2) :21–24, 2004. [16] J. B ÉZIVIN. On the unification power of models. Software and System Modeling (SoSym), 4(2) :171–188. Springer, 2005. ISSN : 1619-1366. GDD : Gestion de Données Distribuées 45 [17] J. B ÉZIVIN et E. B RETON. Applying the basic principles of model engineering to the field of process engineering. Novatica – Special Issue on Software Process Technologies, 5(171) :27–33, 2004. [18] D. FAYE, G. NACHOUKI, et P. VALDURIEZ. Un système pair-à-pair de médiation de données. Revue Africaine de la Recherche en Informatique et Mathématique Appliquées (ARIMA), 4, 2006. ISSN=1638-5713. [19] C. F URTADO, A. L IMA, E. PACITTI, P. VALDURIEZ, et M. M ATTOSO. Adaptive hybrid partitioning for olap query processing in a database cluster. Int. Journal of High Performance Computing and Networking. InderScience, 2006. Special Issue on Best Papers from SBAC2005. [20] S. G ANÇARSKI, H. NAACKE, E. PACITTI, et P. VALDURIEZ. The leganet system. freshness-aware transaction routing in a database cluster. Information Systems. Elsevier, 2006. In press, version électronique sur http ://www.sciencedirect.com/. [21] C. L E PAPE, S. G ANÇARSKI, et P. VALDURIEZ. Data Quality Management in a Database Cluster with Lazy Replication. Journal of Digital Information Management, 3(2) :82–87. Digital Information Research Foundation, 2005. [22] P.-A. M ULLER, P. S TUDER, F. F ONDEMENT, et J. B ÉZIVIN. Platform independent web application modeling and development with netsilon. Software and System Modeling (SoSym), 4(4) :424– 442, 2005. ISBN=1619-1366. [23] E. PACITTI, C. C OULON, P. VALDURIEZ, et T. Ö ZSU. Preventive Replication in a Database Cluster. Distributed and Parallel Databases, 18(3) :223–251. Springer, 2005. ISSN 0926-8782. [24] P. S ERRANO -A LVARADO, C. RONCANCIO, et M. A DIBA. A survey of mobile transactions. Kluwer Academic Publishers Distributed and Parallel Databases (DAPD), 16(2) :193–230, 2004. ISSN 0926-8782. [25] P. S ERRANO -A LVARADO, C. L. RONCANCIO, M. A DIBA, et C. L ABB É. An Adaptable Mobile Transaction Model for Mobile Environments. International Journal of Computer Systems Science and Engineering (IJCSSE), Special Issue on Mobile Databases, 20(3), 2005. ISSN 0267-6192. A2. Revues d’audience nationale avec comité de lecture [26] F. A LLILAIRE, J. B ÉZIVIN, M. D. D. FABRO, F. J OUAULT, D. T OUZET, et P. VALDURIEZ. Amma : vers une plate-forme générique d’ingénierie des modèles. Génie Logiciel, (73) :8–15, 2005. ISBN=0295-6322. [27] G. B ERNARD, J. B EN -OTHMAN, L. B OUGANIM, G. C ANALS, B. D EFUDE, J. F ERRI É, S. G ANÇARSKI, R. G UERRAOUI, P. M OLLI, P. P UCHERAL, C. RONCANCIO, P. S ERRANO A LVARADO, et P. VALDURIEZ. Mobilité et Bases de Données : Etat de l’Art et Perspectives (Partie I et II). Chronique Technique et science informatiques (TSI), 22(3 and 4), 2003. 50 pages. [28] J. B ÉZIVIN. Les évolutions récentes en ingénierie des modèles. IT Expert Journal, (51) :1–4, September/October 2004. ISSN=1270-4881. [29] J. B ÉZIVIN. Sur les principes de base de l’ingénierie des modèles logiciels. L’Objet, 10(4) :145– 157, 2004. Colloque en l’honneur de J.-F. Perrot. [30] S. H AMMOUDI, D. L OPES, et J. B ÉZIVIN. Approche mda pour le développement d’applications internet sur des plates-formes service web. modélisation, transformation et prototypage. Ingénierie des Systèmes d’Information, 10(3) :67–90. Hermes Sciences, 2005. ISBN=1633-1311. 46 Rapport d’activité LINA 2003–2006 [31] H. NAACKE, F. D. N GOC, et P. VALDURIEZ. Routage de transactions dans un cluster de bases de données autonomes. Ingénierie des Systèmes d’Information, 9(1) :85–107. Hermès Science, 2004. [32] P. S ERRANO -A LVARADO, C. L. RONCANCIO, M. A DIBA, et C. L ABB É. Modèles, Protocoles et Architectures pour Transactions Mobiles Adaptables. Ingénierie des Systèmes d’Information, Numéro spécial sur Mobilité dans les Systèmes d’Information et de Bases de Données, 10(6) :95– 121. Hermès Sciences, 2005. D1. Colloques de diffusion internationale avec comité de lecture et actes [33] OCL and Model Driven Engineering Workshop Report, volume 3297. LNCS, Springer, 2004. ISBN=3-540-25081-6. [34] Workshop on Model Driven Development (WMDD). Springer, 2004. ISBN=3-540-23988-X. [35] A. A BOUZAHRA, J. B ÉZIVIN, M. D IDONET D EL FABRO, et F. J OUAULT. A practical approach to bridging domain specific languages with uml profiles. In OOPSLA Workshop on Best Practices for Model Driven Software Development, 2005. [36] R. A KBARINIA et V. M ARTINS. Data management in the appa p2p system. In Int. Workshop on High-Performance Data Management in Grid Environments (HPDGRID), 2006. [37] R. A KBARINIA, V. M ARTINS, E. PACITTI, et P. VALDURIEZ. Replication and query processing in the appa data management system. In Int. Workshop on Distributed Data and Structures (WDAS), 2004. [38] R. A KBARINIA, V. M ARTINS, E. PACITTI, et P. VALDURIEZ. Top-k query processing in the appa p2p system. In Int. Conf. on High Performance Computing for Computational Science (VecPar). Springer, 2006. [39] P. A NDR É, G. A RDOUREL, et G. S UNY É. The bosco project - a JMI-compliant template-based code generator. In Int. Conf. on Intelligent & Adaptive Systems and Software Engineering (IASSE’04), pages 157–162, 2004. [40] B. BAUDRY, Y. L. T RAON, G. S UNY É, et J.-M. J ÉZ ÉQUEL. Measuring and improving design patterns testability. In Proceedings of Metrics 2003, pages 50–61, September 2003. [41] J. B ÉZIVIN. Model engineering for software modernization. In Working Conference on Reverse Engineering (WCRE), page 4, 2004. [42] J. B ÉZIVIN. Model driven engineering : Principles, scope, deployment and applicability. In Generative and Transformational Techniques in Software Engineering (GTTSE’05), Tutorials, pages 1–33, 2005. LNCS, Springer. [43] J. B ÉZIVIN. Some lessons learnt in the building of a model engineering platform. In Int. Workshop in Software Model Engineering (WiSME), 2005. [44] J. B ÉZIVIN. snets : A first generation model engineering platform. In LNCS 3844, Satellite Events at the MoDELS 2005 Conference, pages 169–181. Springer, 2006. [45] J. B ÉZIVIN, H. B RUNELI ÈRE, F. J OUAULT, et I. K URTEV. Model engineering support for tool interoperability. In Int. Workshop in Software Model Engineering (WiSME), Montego Bay, Jamaica, 2005. [46] J. B ÉZIVIN, C. B RUNETTE, R. C HEVREL, F. J OUAULT, et I. K URTEV. Bridging the generic modeling environment (gme) and the eclipse modeling framework (emf). In OOPSLA Workshop on Best Practices for Model Driven Software Development, 2005. GDD : Gestion de Données Distribuées 47 [47] J. B ÉZIVIN, V. D EVEDZIC, D. D JURIC, J. FAVREAU, D. G ASEVIC, et F. J OUAULT. An m3-neutral infrastructure for bridging model engineering and ontology engineering. In S PRINGER, réd., Int. Conf. on Interoperability of Enterprise Software and Applications (INTEROP-ESA), pages 159– 171, Geneva, Switzerland, 2005. Springer. 1-84628-151-2. [48] J. B ÉZIVIN, M. D IDONET D EL FABRO, F. J OUAULT, et P. VALDURIEZ. Combining preoccupations with models. In ECOOP Workshop on Models and Aspects - Handling Crosscutting Concerns in Model-Driven Software Development (MDSD), 2005. [49] J. B ÉZIVIN, N. FARCET, J.-M. J ÉZ ÉQUEL, B. L ANGLOIS, et D. P OLLET. Reflective model driven engineering. In Int. Conf. on UML, pages 175–189, 2003. [50] J. B ÉZIVIN, S. G ÉRARD, P.-A. M ULLER, et L. R IOUX. Mda components : Challenges and opportunities. In Workshop on Metamodelling for MDA, pages 23–41, York, England, 2003. [51] J. B ÉZIVIN, S. H AMMOUDI, D. L OPES, et F. J OUAULT. Applying mda approach for web service platform. In IEEE Enterprise Distributed Object Computing Conference (EDOC), pages 58–70, Monterey, California, USA, 2004. [52] J. B ÉZIVIN, S. H AMMOUDI, D. L OPES, et F. J OUAULT. Applying mda approach to b2b applications : A road map. In ECOOP Workshop on Model Driven Development (WMDD), 2004. [53] J. B ÉZIVIN, S. H AMMOUDI, D. L OPES, et F. J OUAULT. B2B applications, BPEL4WS, web services and dotnet in the context of MDA. In Int. Conf. on Enterprise Integration and Modelling Technology (ICEIMT), 2004. [54] J. B ÉZIVIN, G. H ILLAIRET, F. J OUAULT, et W. P IERS. Towards interoperability between ms/dsl tools and the eclipse modeling framework. In First European Workshop on Model Transformation (EWMT), 2005. [55] J. B ÉZIVIN et F. J OUAULT. Using atl for checking models. In Int. Workshop on Graph and Model Transformation (GraMoT), 2005. [56] J. B ÉZIVIN, F. J OUAULT, I. K URTEV, et P. VALDURIEZ. Model-based dsl frameworks. In Onwards ! track of the 21st Annual ACM SIGPLAN Conference on Object-Oriented Programming, Systems, Languages, and Applications, OOPSLA 2006, Oc tober 22-26, 2006, Portland, OR, USA. ACM, 2006. à paraı̂tre. [57] J. B ÉZIVIN, F. J OUAULT, et J. PALI ÈS. Towards model transformation design patterns. In First European Workshop on Model Transformation (EWMT), 2005. [58] J. B ÉZIVIN, F. J OUAULT, P. ROSENTHAL, et P. VALDURIEZ. Modeling in the large and modeling in the small. In A. R. U WE A SSMANN , M EHMET A KSIT, réd., European MDA Workshops : Foundations and Applications, MDAFA 2003 and MDAFA 2004, volume 3599, pages 33–46. LNCS, Springer, 2005. ISBN=3-540-28240-8. [59] J. B ÉZIVIN, F. J OUAULT, et D. T OUZET. Principles, standards and tools for model engineering. In Workshop on Using metamodels to support MDD, IEEE Int. Conf. on Engineering of Complex Computer Systems (ICECCS), pages 28–29, Shanghai, China, June 2005. 0-7695-2284-X. [60] J. B EZIVIN et I. K URTEV. Model-based technology integration with the technical space concept. In Metainformatics Symposium. Springer, 2006. [61] C. C OULON, E. PACITTI, et P. VALDURIEZ. Scaling up the preventive replication of autonomous databases in cluster systems. In Int. Conf. on High Performance Computing for Computational Science (VecPar’2004), pages 174–188. LNCS 3402, Springer, 2004. 48 Rapport d’activité LINA 2003–2006 [62] C. C OULON, E. PACITTI, et P. VALDURIEZ. Consistency Management for Partial Replication in a High Performance Database Cluster. In IEEE Int. Conf. on Parallel and Distributed Systems (ICPADS), pages 809–815. IEEE Computer Society, 2005. ISBN 0-7695-2281-5. [63] M. D IDONET D EL FABRO et F. J OUAULT. Model transformation and weaving in the amma platform. In Generative and Transformational Techniques in Software Engineering (GTTSE), Workshop, pages 71–77, 2005. LNCS, Springer. [64] M. D. D. FABRO, J. B ÉZIVIN, et P. VALDURIEZ. Model-driven tool interoperability : an application in bug tracking. In ODBASE’06 : Proceedings of the The 5th International Conference on Ontologies, DataBases, and Applications of Semantics, 2006. To appear. [65] D. FAYE, G. NACHOUKI, et P. VALDURIEZ. Intégration de données hétérogènes dans senpeer. In Colloque Africain sur la Recherche en Informatique (CARI), 2006. [66] C. F URTADO, A. L IMA, E. PACITTI, P. VALDURIEZ, et M. M ATTOSO. Physical and virtual partitioning in olap database clusters. In Int. Symp. on Computer Architecture and High Performance Computing (SBAC), pages 143–150, 2005. ISBN : 076952446X. [67] S. G ANÇARSKI, C. L E PAPEPAPE, et P. VALDURIEZ. Trading freshness for performance in a cluster of replicated databases. In Int. Conf. on Cooperative Information Systems (CoopIS), LNCS. Springer, 2003. [68] F. J OUAULT. Loosely coupled traceability for atl. In European Conference on Model Driven Architecture (ECMDA) Workshop on Traceability, pages 29–37, 2005. ISBN=82-14-03813-8. [69] F. J OUAULT et J. B ÉZIVIN. Km3 : a dsl for metamodel specification. In IFIP Int. Conf. on Formal Methods for Open Object-Based Distributed Systems, LNCS 4037, pages 171–185. Springer, 2006. [70] F. J OUAULT et I. K URTEV. Transforming models with atl. In Model Transformations in Practice Workshop at MoDELS, 2005. [71] F. J OUAULT et I. K URTEV. On the architectural alignment of atl and qvt. In ACM Symposium on Applied Computing (SAC), model transformation track, 2006. [72] F. J OUAULT et I. K URTEV. Transforming models with atl. In Satellite Events at the MoDELS 2005 Conference, LNCS 3844, pages 128–138. Springer, 2006. ISBN=0302-9743. [73] I. K URTEV, K. van den B ERG, et F. J OUAULT. Rule-based modularization in model transformation languages illustrated with atl. In ACM Symposium on Applied Computing (SAC), model transformation track, 2006. [74] P. L AMARRE et S. C AZALENS. A procedure for mediating between service requesters and providers. In Int. Conf. on Intelligent Agents Technology (IAT). IEEE press, 2003. ISBN : 0-76951931-8. [75] P. L AMARRE, S. C AZALENS, S. L EMP, et P. VALDURIEZ. A flexible mediation process for large distributed information systems. In Int. Conf. on Cooperative Information Systems (CoopIS). Springer, 2004. [76] C. L E PAPE, S. G ANÇARSKI, et P. VALDURIEZ. Refresco : Improving query performance through freshness control in a database cluster. In Int. Conf. on Cooperative Information Systems (CoopIS’04). Springer, 2004. [77] C. L E PAPE, S. G ANÇARSKI, et P. VALDURIEZ. Trading Freshness for Performance in a Cluster of Replicated Databases. In Int. Conf. on Cooperative Information Systems (CoopIS), number 2889 in LNCS, pages 14–15. Springer, 2003. ISBN 3-540-20494-6. GDD : Gestion de Données Distribuées 49 [78] C. L E PAPE, S. G ANÇARSKI, et P. VALDURIEZ. Trading freshness for performance in a cluster of replicated databases. In Y. M ANOLOPOULOS, réd., Distributed data and structures 5 : records of the 5th international meeting, Thessaloniki, Greece, pages 45–60. Carleton Scientific, 2003. ISBN 1-894145-18-6. [79] A. L IMA, M. M ATTOSO, et P. VALDURIEZ. Adaptive virtual partitioning for olap query processing in a database cluster. In Brazilian Symposium on Databases (SBBD), 2004. [80] A. L IMA, M. M ATTOSO, et P. VALDURIEZ. Olap query processing in a database cluster. In Int. Conf. on Parallel and Distributed Computing (Euro-Par). Springer, 2004. [81] D. L OPES, S. H AMMOUDI, J. B ÉZIVIN, et F. J OUAULT. Generating transformation definition from mapping specification : Application to web service platform. In Int. Conf. on Advanced Information Systems Engineering (CAiSE), pages 309–325, Porto, Portugal, 2005. ISBN=03029743. [82] D. L OPES, S. H AMMOUDI, J. B ÉZIVIN, et F. J OUAULT. Mapping specification in mda : from theory to practice. In Int. Conf. on Interoperability of Enterprise Software and Applications (INTEROP-ESA), pages 253–264. Springer-Verlag, 2005. [83] V. M ARTINS, R. A KBARINIA, E. PACITTI, et P. VALDURIEZ. Reconciliation in the appa p2p system. In IEEE Int. Conf. on Parallel and Distributed Systems (ICPADS). IEEE Computer Society, Juillet 2006. [84] V. M ARTINS et E. PACITTI. Dynamic and distributed reconciliation in p2p-dht networks. In European Conf. on Parallel Computing (Euro-Par), Dresden, Germany, 2006. Springer. [85] V. M ARTINS, E. PACITTI, et P. VALDURIEZ. A dynamic distributed algorithm for semantic reconciliation. In Int. Workshop on Distributed Data and Structures (WDAS), Records of the 7th Int. Meeting. Carleton Scientific, 2006. [86] B. M IRANDA, A. L IMA, P. VALDURIEZ, et M. M ATTOSO. Apuama : Combining intra-query and inter-query parallelism in a database cluster. In Currents Trends in Database Technology – EDBT 2006, Lecture Notes In Computer Science, pages 649–661. Springer, 2006. [87] P.-A. M ULLER, P. S TUDER, et J. B ÉZIVIN. Platform independent web application modelling. In Int. Conf. on UML, pages 220–233, San Francisco, USA, 2003. [88] G. NACHOUKI. Integration of static and active data sources. In A. YAZICI et C. S ENER, réds., Int. Symp. on Computer and Information Sciences, volume 2869 of LNCS, pages 147–154. Springer, 2003. ISBN : 3-540-20409-1. [89] G. NACHOUKI et M. P. C HASTANG. Connecting multi-data sources : Design and scenarios. In VLDB Workshop on Multimedia and Data Document engineering (VLDB-MDDE), 2003. [90] G. NACHOUKI et M. P. C HASTANG. On-line analysis of a web data warehouse. In Int. Workshop on Databases in Networked Information Systems (DNIS), volume 2822 of LNCS, pages 112–121. Springer, Septembre 2003. ISBN : 540-20111-4. [91] E. PACITTI, T. Ö ZSU, et C. C OULON .. Preventive multi-master replication in a cluster of autonomous databases. In Int. Conf. on Parallel and Distributed Computing (Euro-Par 2003), LNCS. Springer, 2003. [92] F. P ORTO, E. L ABER, et P. VALDURIEZ. Cherry picking : a semantic query processing strategy for the evaluation of expensive predicates. In Brazilian Symposium on Databases (SBBD), 2003. Nominé parmi les 3 meilleurs articles. 50 Rapport d’activité LINA 2003–2006 [93] J. Q UIAN É -RUIZ, P. L AMARRE, et P. VALDURIEZ. Satisfaction based query load balancing. In Int. Conf. on Cooperative Information Systems (CoopIS’06), 2006. [94] R. ROUVOY, P. S ERRANO -A LVARADO, et P. M ERLE. A component-based approach to compose transaction standards. In Int. Symposium on Software Composition (SC), 2006. [95] R. ROUVOY, P. S ERRANO -A LVARADO, et P. M ERLE. Towards context-aware transaction services. In Int. Conf. on Distributed Applications and Interoperable Systems (DAIS), LNCS 4025. Springer, 2006. [96] P. S ERRANO -A LVARADO, C. RONCANCIO, M. A DIBA, et C. L ABB É. Context aware mobile transactions. In Int. Conf. on Mobile Data Management (MDM), page 167, 2004. ISBN 0 7695 2070 7. [97] P. S ERRANO -A LVARADO, R. ROUVOY, et P. M ERLE. Self-adaptive component-based transaction commit management. In MIDDLEWARE Int. Workshop on Adaptive and Reflective Middleware (ARM), volume 116. ACM, 2005. ISBN 1-59593-270-4. [98] P. VALDURIEZ et E. PACITTI. Data management in large-scale p2p systems. In Int. Conf. on High Performance Computing for Computational Science (VecPar’2004), pages 109–122. LNCS 3402, Springer, 2004. [99] P. VALDURIEZ, E. PACITTI, et C. C OULON. Large-scale Experimentation with Preventive Replication in a Database Cluster. In VLDB Workshop on Design, Implementation, and Deployment of Database Replication (DIDDR), 2005. D2. Colloques de diffusion nationale avec comité de lecture et actes [100] R. A KBARINIA, E. PACITTI, et P. VALDURIEZ. Top-k query processing in dhts. In Journées Bases de Données Avancées (BDA), 2006. [101] J. B ÉZIVIN, A. B ELANGOUR, et M. F REDJ. The design decision assistant tool : A contribution to the mda approach. In Journées sur l’Ingénierie Dirigée par les Modèles (IDM), pages 55–66, 2005. 2-7261-1284-6. [102] C. B OBINEAU, C. L ABB É, C. RONCANCIO, , et P. S ERRANO -A LVARADO. Performances de protocoles transactionnels en environnement mobile. In Journées de Bases de Données Avancées (BDA), 2004. [103] C. B OBINEAU, C. L ABB É, C. L. RONCANCIO, et P. S ERRANO -A LVARADO. Protocoles de validation pour transactions en environnements mobiles : Première étude. In Conférence Francophone sur Ubiquité et Mobilité (UbiMob), volume 64, pages 86–89. ACM, 2004. ISBN 1-58113-915-2. [104] C. C OULON, G. G AUMER, E. PACITTI, et P. VALDURIEZ. The RepDB* prototype : Preventive replication in a database cluster. In Journées Bases de Donnéees Avancéees (BDA’2004), 2004. [105] C. C OULON, E. PACITTI, et P. VALDURIEZ. Optimistic Preventive Replication in a Database Cluster. In Bases de données avancées. Université de Rennes 1, 2005. [106] M. D IDONET D EL FABRO, J. B ÉZIVIN, F. J OUAULT, E. B RETON, et G. G UELTAS. Amw : a generic model weaver. In Journées sur l’Ingénierie Dirigée par les Modèles (IDM05), pages 105–114, 2005. 2-7261-1284-6. [107] M. D IDONET D EL FABRO, J. B ÉZIVIN, F. J OUAULT, et P. VALDURIEZ. Applying generic model management to data mapping. In Journées Bases de Données Avancées (BDA), pages 343–355, 2005. GDD : Gestion de Données Distribuées 51 [108] S. G ANÇARSKI, C. L E PAPE, H. NAACKE, I. S EBEI, et P. VALDURIEZ. The leganet prototype : Managing autonomous databases in a cluster system. In Journées Bases de Donnéees Avancéees (BDA’2004), 2004. [109] P. L AMARRE et S. C AZALENS. Médiation équitable dans un environnement ouvert d’agents compétitifs. In Modèles Formels de l’Interaction. Cépaduès, 2003. ISBN : 2-85428-622-7. [110] P. L AMARRE, S. L EMP, et S. C AZALENS. Une procédure de médiation équitable pareto optimale. In RSTI/hors série, volume JFSMA/2003, pages 283–295, 2003. ISBN : 2-7462-0810-5. [111] C. L E PAPE, S. G ANÇARSKI, et P. VALDURIEZ. Replica refresh strategies in a database cluster. In Bases de données avancées, pages 83–98. Université de Rennes 1, 2005. [112] S. L EMP. Un processus de médiation flexible dans un système d’informations distribué. In CORIA, Session Jeunes Chercheurs, pages 359–364, 2006. 2-9520326-6-1. [113] J. M ARTINEZ et P. VALDURIEZ. Vers un passage à l’échelle dans un sgbd d’images. In Conférence en Recherche d’Information et Applications (CORIA), 2004. [114] V. M ARTINS, E. PACITTI, R. J IMENEZ -P ERIZ, et P. VALDURIEZ. Scalable and available reconciliation on p2p networks. In Journées Bases de Données Avancées (BDA), pages 343–355, 2006. [115] V. M ARTINS, E. PACITTI, et P. VALDURIEZ. Distributed semantic reconciliation of replicated data. In Journées Francophones sur la Cohérence des Données en Univers Réparti (CDUR). IEEE France et ACM SIGOPS France, Juillet 2005. [116] H. NAACKE, F. D. N GOC, et P. VALDURIEZ. Transaction routing with freshness control in a cluster of replicated databases. In Journées Bases de Donnéees Avancéees (BDA’2003), 2003. [117] E. PACITTI et T. Ö ZSU. Multi-master replica consistency in a cluster of peer-to-peer autonomous databases. In Journées Bases de Donnéees Avancéees (BDA’2003), 2003. [118] P. S ERRANO -A LVARADO, C. RONCANCIO, M. A DIBA, et C. L ABB É. Environment awareness in adaptable mobile transactions. In Journées de Bases de Données Avancées (BDA), 2003. [119] A. V ENTRESQUE. Recherche d’information efficace utilisant la sémantique : le focus. In CORIA, Session Jeunes Chercheurs, pages 377–382, 2006. 2-9520326-6-1. [120] A. V ENTRESQUE. Une mesure de similarité sémantique utilisant des résultats de psychologie. In CORIA, Session Jeunes Chercheurs, pages 371–376, 2006. 2-9520326-6-1. [121] A. V ENTRESQUE, P. L AMARRE, et S. C AZALENS. Echange d’informations grâce à des caractérisations sémantiques. In A. H ERZIG, Y. L ESP ÉRANCE, et A.-I. M OUADDIB, réds., MFI, pages 247–252, 2005. E. Colloques (avec ou sans actes) à diffusion restreinte [122] J. B ÉZIVIN, G. D UP É, F. J OUAULT, G. P ITETTE, et J. E. ROUGUI. First experiments with the atl model transformation language : Transforming XSLT into xquery. In OOPSLA Workshop on Generative Techniques in the context of MDA, 2003. [123] J. B EZIVIN et R. H ECKEL, réds. Language Engineering for Model-driven Software Development, number 04101 in Dagstuhl Seminar Proceedings. Internationales Begegnungs und Forschungszentrum (IBFI), Schloss Dagstuhl, Germany, 2005. [124] J. B ÉZIVIN, G. H ILLAIRET, F. J OUAULT, I. K URTEV, et W. P IERS. Bridging the ms/dsl tools and the eclipse modeling framework. In OOPSLA Int. Workshop on Software Factories, 2005. 52 Rapport d’activité LINA 2003–2006 [125] C. B OBINEAU, C. L ABB É, C. L. RONCANCIO, et P. S ERRANO -A LVARADO. Comparing transaction commit protocols for mobile environments. In DEXA Int. Workshop on Mobility in Databases and Distributed Systems (MDDS, pages 673–677, 2004. ISBN 0-7695-2195-9. [126] F. J OUAULT, J. B ÉZIVIN, C. C ONSEL, I. K URTEV, et F. L ATRY. Building dsls with amma/atl, a case study on spl and cpl telephony languages. In ECOOP Workshop on Domain-Specific Program Development (DSPD), 2006. [127] S. NAOUALI, G. NACHOUKI, et M. Q UAFAFOU. Extracting semantic links in olap cubes. In IEEE Int. Conference on Information & Communication Technologies : From Theory To Applications, pages 320–327, 2004. F1. Ouvrages ou chapitres d’ouvrage scientifique [128] R. A KBARINIA, V. M ARTINS, E. PACITTI, et P. VALDURIEZ. Global Data Management, chap. Design and Implementation of Atlas P2P Architecture. IOS Press, first édition, 2006. [129] J. B ÉZIVIN. Ingénierie des modèles Logiciels et Systèmes – Ouvrage ARAGO 30. éditions Lavoisier, Mai 2004. [130] J. B ÉZIVIN, S. de C ESARE, G. H OLLAND, M. LYCETT, et C. PARTRIDGE, réds. Legacy Transformation : Capturing Business Knowledge from Legacy Systems ( OOPSLA 2004 workshop), 2004. [131] J. B ÉZIVIN, F. J OUAULT, et D. T OUZET. Model Engineering : From Principles to Platforms, chap. 1, pages 15–30. Hermes Sciences, 2005. [132] J.-M. FAVRE, J. B ÉZIVIN, et I. B ULL. Evolution, Rétro-ingénierie, et IDM. Hermès Sciences, 2006. [133] T. Ö ZSU et P. VALDURIEZ. Handbook of Computer Science and Engineering, 2nd Edition, chap. Distributed and Parallel Database Systems. CRC Press, 2004. G. Autres manifestations sans actes [134] F. A LLILAIRE et T. I DRISSI. Adt : Eclipse development tools for atl. In EWMDA-2, 2004. [135] J. B ÉZIVIN. MDA : From hype to hope, and reality (guest talk), 2003. [136] J. B ÉZIVIN, F. J OUAULT, et P. VALDURIEZ. First experiments with a modelweaver. In Best practices for model-driven software development, 2004. [137] J. B ÉZIVIN, F. J OUAULT, et P. VALDURIEZ. On the need for megamodels. In Best practices for model-driven software development, 2004. [138] P. S ERRANO -A LVARADO. Transacciones adaptables en ambientes móviles. In Consorcio Doctoral del Encuentro Internacional de Ciencias de la Computación (ENC), page 2 pages, 2003. In Spanish. H. DEA, thèses et habilitations [139] C. C OULON. Réplication préventive dans une grape de bases de données. PhD thesis, Université de Nantes, Octobre 2006. GDD : Gestion de Données Distribuées 53 [140] C. L E PAPE. Contrôle de Qualité des Données Répliquées sur un Cluster. PhD thesis, UPMC Paris 6, Paris, December 2005. [141] A. L IMA. Traitement parallèle de requêtes OLAP dans un cluster de bases de données. PhD thesis, UFRJ, Rio de Janeiro, 2004. [142] M. P ELTIER. Techniques de transformation de modèles basées sur la méta-modélisation. PhD thesis, University of Nantes, 2003. J. Rapports internes [143] B ÉZIVIN, E. B RETON, P. VALDURIEZ, et G. D UP É. The ATL transformation-based model management framework. Rapport technique, IRIN, 2003. [144] J. B ÉZIVIN et X. B LANC. Mda : Vers un important changement de paradigme en génie logiciel, Juillet 2003. [145] J. B ÉZIVIN, S. H AMMOUDI, D. L OPES, et F. J OUAULT. An experiment in mapping web services to implementation platforms. Rapport technique 04.01, LINA, Université de Nantes, March 2004. [146] J. B ÉZIVIN, F. J OUAULT, P. ROSENTHAL, et P. VALDURIEZ. The amma platform support for modeling in the large and modelling in the small. Rapport technique 04.09, LINA, 2004. [147] J. B ÉZIVIN, F. J OUAULT, et D. T OUZET. An introduction to the atlas model management architecture. Rapport technique 05-01, LINA, 2005. [148] J. B ÉZIVIN, F. J OUAULT, et P. VALDURIEZ. An eclipse-based ide for the atl model transformation language. Rapport technique 04.08, LINA, 2004. [149] D. D. RUSCIO, F. J OUAULT, I. K URTEV, J. B ÉZIVIN, et A. P IERANTONIO. Extending amma for supporting dynamic semantics specifications of dsls. Rapport technique 06.02, LINA, 2006. [150] D. D. RUSCIO, F. J OUAULT, I. K URTEV, J. B ÉZIVIN, et A. P IERANTONIO. A practical experiment to give dynamic semantics to a dsl for telephony services development. Rapport technique 06.03, LINA, 2006. L. Diffusion dans le milieu socio-économique, revues non spécialisées [151] J. B EZIVIN. On models. In Segravis School on Foundation of Visual Modelling Techniques, 2004. [152] J. B ÉZIVIN. Aspect-oriented modeling : Oxymoron or pleonasm ?, 2003. Équipe GRIM : Gestion et Résumé d’Information Multimédia 2.1 Composition de l’équipe Responsable : Noureddine M OUADDIB Enseignants-chercheurs permanents : – Noureddine M OUADDIB Professeur des universités, École polytechnique de l’université de Nantes, — – José M ARTINEZ Professeur des universités, École polytechnique de l’université de Nantes, 1.2.2004 Maı̂tre de conférences, École polytechnique de l’université de Nantes, —. – Julien C OHEN Maı̂tre de conférences, École polytechnique de l’université de Nantes, 1.9.2005 – Marc G ELGON Maı̂tre de conférences, École polytechnique de l’université de Nantes, — – Guillaume R ASCHIA Maı̂tre de conférences, École polytechnique de l’université de Nantes, 1.9.2003 A.T.E.R., École polytechnique de l’université de Nantes, — – Laurent U GHETTO Maı̂tre de conférences, Faculté des Sciences, université de Nantes, — Ingénieurs de recherche : – Gaëtan G AUMER Ingénieur de recherche, École polytechnique de l’université de Nantes, contrat RNTL D O MUS V IDEUM , depuis le 1.9.2002 ; jusqu’au 31.3.2004, affecté à l’équipe GDD du même axe BaDRI au 1.4.2004 Personnel : – Marie-Andry P IVAUT Secrétaire, sur contrat, 2004, – Coralie ROBERT Secrétaire, sur contrat, 2005, 55 56 Rapport d’activité LINA 2003–2006 – Leila N ECIBI Secrétaire, sur contrat, 2006, Chercheurs doctorants (15 doctorants pour 6 permanents) : – Mounir B ECHCHI INRIA, 01.01.2006, – Christophe C ANDILLIER CIFRE, Geobs, Nantes, 01.09.2002, soutenance prévue été 2006, CDI Geobs – Nicolas D ESSAIGNE CIFRE, Arisem, Paris, 01.06.2001, soutenue en 2005, ingénieur ARISEM – Najlae I DRISSI co-tutelle franco-marocaine, 01.09.2003, – Erwan L OISANT co-encadrement franco-japonais, bourse Monbusho, Tokyo Metropolitan University, Japon, 01.09.2001, soutenue en 2005, Ingénieur (USA) – Rania L UTFI bourse franco-syrienne, 01.09.2000, soutenue en 2003, enseignant-chercheur Univ. Homs, – Jorge M ANJARREZ S ANCHEZ Bourse mexicaine Conacyt, en co-encadrement avec P.Valduriez (équipe GDD), 01.09.2004, – Ibrahima M BAYE co-encadrement franco-marocain, 01.09.2002, – Lamia NAOUM CIFRE, BDC, Nancy, 01.09.2001 – Afshin N IKSERESHT Bourse SFERE, gouv. iranien, 01.03.2004, – Quang-Khai P HAM Bourse BDI, 01.09.2005, – Antoine P IGEAU MNERT, 01.09.2002, soutenue en 2005, ATER Univ. Nantes, – Jamal ROUGUI co-tutelle franco-marocaine avec D.Aboutajdine, 01.09.2003, – Régis S AINT-PAUL MNERT, 01.09.2001, soutenue en 2005, Post.Doc. Univ. Sydney, – Stéphane TAYEB MNERT, 01.09.2004, – Amenel VOGLOZIN MNERT, 01.09.2003, 2.2 Présentation et objectifs généraux 2.2.1 Historique Les travaux de recherche de l’équipe ont débuté dans la deuxième moitié des années 1990 et s’articulent autour de deux thèmes qui traitent de la gestion de données complexes : les données multimédias et les données volumineuses. GRIM : Gestion et Résumé d’Information Multimédia 57 Les travaux du thème ’multimédia’ concernent les bases de données multimédia ; nous avons traité l’ interrogation et la navigation dans des collections d’images (thèse de E.Loisant 2002-2005), l’interrogation de documents audio (thèse de R.Lutfi 2000-2003). Il s’agissait d’identifier et de résoudre des problèmes de bases de données particuliers aux données multimédia, domaine relativement ouvert. Ce travail conjoint à deux domaines a impliqué essentiellement J. Martinez et M. Gelgon, apportant respectivement des compétences en bases de données et en traitement des données audiovisuelles. Par ailleurs, une action a été menée sur les collections multimédia personnelles (thèse de A.Pigeau 2002-2005). Depuis 2004, toujours dans des problèmes conjoints bases de données/analyse de données multimédia, nous concentrons le travail sur le ”passage à l’échelle”, c.a.d. la capacité des tâches classiques (recherche par similarité, apprentissage/reconnaissance) à se comporter correctement (rapidité et précision des résultats) malgré de grands volumes de données. La répartition des calculs et des données sur des infrastructures distribuées (pair-à-pair, cluster) est privilegiée. Le recrutement de J.Cohen (MC) s’est fait en ce sens et ce reserrement thématique coı̈ncide avec une collaboration avec l’équipe ATLAS-GDD, qui se fait notamment au moyen du projet commun INRIA Atlas. La seconde activité de recherche de l’équipe traite de la génération de résumés à partir de bases de données, et fait suite aux travaux de l’équipe sur les bases de données incomplètes. Les premiers travaux ont abouti à un algorithme et à un prototype de génération de résumés hiérarchiques. L’algorithme s’appuie sur des techniques de la logique floue, est incrémental et linéaire en la taille des données à résumer. Au sein de l’équipe, cet outil fait maintenant l’objet de travaux communs avec le thème multimédia. L’ancrage dans le domaine des bases de données est également volontariste et suscite d’autres collaborations, notamment avec l’équipe Atlas-GDD, telle que l’utilisation des résumés dans un environnement P2P. Les travaux se sont poursuivis par la thèse de doctorat de Régis Saint-Paul, soutenue en 2005, et qui ont donné lieu au prototype SaintEtiq, qui a fait l’objet d’un dépôt APP. Des travaux connexes sont menés actuellement sur : l’interrogation des bases de résumés, la gestion des résumés dans un système P2P, la gestion de flux continu de données, la représentation des résumés par des prototypes flous, et la personnalisation de l’information. Le recrutement de G. Raschia en 2003 a confirmé l’intérêt du thème “résumés” pour l’équipe. Depuis 2002, ces deux thèmes sont représentés dans le projet INRIA ATLAS, localisé à Nantes et rattaché à l’IRISA (U.R. INRIA Rennes). Le projet ATLAS s’intéresse plus largement à la gestion de données complexes dans les environnements distribués. Les volets « données complexes » et « distribution » correspondent respectivement aux compétences et aux directions de recherche de l’équipe Atlas-GRIM. 2.2.2 Les thèmes de recherche Gestion de résumés de données Le développement des systèmes d’information dans les entreprises et l’utilisation massive de systèmes de gestion de bases de données (SGBD) ont eu, entre autres, une conséquence importante : la génération de gros volumes de données. L’enjeu du résumé de données est précisément la synthèse de l’information disséminée au sein de myriades de faits individuels, éventuellement complexes et éventuellement distribués, pour en fournir une représentation complète, concise et intelligible. La problématique générale à laquelle se rapporte cette idée est traditionnellement appelée compression sémantique. Les approches de la compression sémantique sont fréquentes et largement répandues, non seulement en tant qu’objets d’études scienti- 58 Rapport d’activité LINA 2003–2006 fiques mais également dans le monde industriel au travers d’outils dédiés. Ces approches peuvent être classées selon trois grandes familles : 1. le calcul d’agrégats. Les outils décisionnels commerciaux offrent tous un point de vue quantitatif (statistique) sur les données, sous la forme de tableaux de bord, de cubes de données multidimentionnels (OLAP), ou encore par l’intermédiaire de techniques de classification. En général, ces approches analysent les données stockées dans un entrepôt (datawarehouse), c’est-à-dire une duplication unifiée et formatée des multiples bases de donnes de production. Outre que le point de vue proposé n’est que quantitatif, le problème de la mise à jour des entrepôts de données n’est toujours pas résolu de façon efficace. 2. la compression sémantique guidée par les modèles Dans cette classe d’approches sont rangés les travaux qui mettent en œuvre des techniques de fouille de données (arbres de décision, règles d’association, etc.) pour construire des versions réduites de collections de données structurées. Une des difficultés de ces approches réside dans l’interprétation à donner aux modèles découverts : une expertise forte est souvent nécessaire pour exploiter le résultat de telles solutions. 3. la compression sémantique guidée par les méta-données C’est dans cette catégorie que se positionne notre approche dès lors que l’on considère que les résumés produits tirent profit des connaissances de domaine (les caractérisations foues) et notamment de leur capacité descriptive. Les autres approches sont ici fondées, soit sur l’induction par attribut, soit sur le résumé linguistique. Dans le premier cas (DBLEARN, S. Fraser Univ.) l’algorithme est efficace mais peu contrôlable quant aux généralisations opérées (jusqu’où compresser, quels attributs choisir, etc.). Dans le second cas (SummarySQL, Iona College), il s’agit plus vraisemblablement d’un outil d’interrogation flexible permettant à l’utilisateur de formuler des propositions quantifiées floues (appelés résumés) en langage contrôlé. Malgré ces offres de solutions académiques et industrielles un grand nombre de problèmes liés aux techniques de compression sémantique restent ouverts : – la génération de synthèses ou de résumés à partir de l’ensemble des données de la base et non sur une partie des données ou vers un objectif spécifique (ce sont les approches dites « par sujet » utilisées dans la plupart des travaux et outils), – la correction des informations synthétisées par rapport aux mises à jour et à l’incomplétude des données initiales, qui renvoie à la disponibilité des résumés dans un système d’information, – le contrôle de la qualité des résumés générés avec perte d’information, qui dépend du taux de compression et doit réaliser un compromis délicat entre précision et concision, – etc. Ainsi, les enjeux sont à la fois scientifiques (plusieurs problèmes ouverts), technologiques (manque d’outils robustes de génération de résumés et insuffisance des propositions d’intégration dans des SGBD existants ou des environnements logiciels ouverts) et économiques (besoin dans les grandes entreprises d’outils de synthèse). Notre objectif est de contribuer à répondre à ces besoins en termes de méthodes, d’outils et d’applications industrielles, en s’appuyant sur nos acquis et expériences (quinze années d’expérience dans les domaines des bases de données et de la théorie des ensembles flous, nos récents résultats sur la génération de résumés à partir de bases de données relationnelles, nos collaborations industrielles et une politique volontariste de diffusion des logiciels produits). L’axe « résumés de données » traite de la construction, la maintenance et l’utilisation de versions réduites de collections de données volumineuses. Les résultats obtenus dans la période précédente, tant GRIM : Gestion et Résumé d’Information Multimédia 59 d’un point de vue théorique qu’expérimental, tendent à montrer l’apport de la logique floue dans les systèmes de classification automatique et multi-niveaux. Le modèle de résumé s’appuie sur une base de connaissance offrant des caractérisations linguistiques floues pour décrire de façon concise des sousgroupes d’enregistrements d’une base de données. L’approche proposée repose sur un algorithme de classification conceptuelle incrémentale dont la complexité est linéaire par rapport au nombre de n-uplets de la base de données. Les propriétés et les performances du système ont été validées expérimentalement à l’aide du prototype nommé S AINT E TI Q, sur des bases de données réelles atteignant le million d’enregistrements. Les travaux scientifiques de l’équipe Atlas-GRIM dans le domaine de la compression sémantique (i.e. les résumés), sont inédits de par leurs caractéristiques intrinsèques (processus incrémental, caractérisation linguistique des résumés, préservation du schéma de la base, granularité multiple) et les différents domaines mis en jeu dans l’approche proposée (théorie des sous-ensembles flous et classification conceptuelle appliquées aux très grandes bases de données). Les modes d’utilisation ainsi que les domaines d’application des outils construits sur cette approche sont variés. Initialement, un service de résumé a pour vocation d’être au cœur de dispositifs permettant le passage à l’échelle pour des données de gros volume, aussi bien dans des environnements centralisés (entrepôts de données) que dans des systèmes totalement distribués tels que les grilles de stockage et les réseaux pair à pair. En premier lieu, les résumés peuvent donc être utilisés directement comme données de substitution aux données de la base, à la manière d’un échantillon. Le procédé contrôle la perte d’information induite par la généralisation des descriptions de n-uplets, tout en garantissant la complétude de la représentation. Au-delà même de l’intérêt immédiat de disposer d’une version réduite d’une collection de données, l’exploitation des résumés se décline selon deux grands axes : l’interrogation des résumés et l’analyse en ligne (exploration). Des contributions significatives ont été apportées sur ces deux points et sont décrites dans la section« résultats nouveaux ». Gestion de données multimédia Le thème « multimédia » s’intéresse aux problèmes issus de la manipulation, la structuration et la recherche de l’information multimédia (image, audio, vidéo, géolocalisation). Ses travaux participent à l’émergence des solutions futures pour la manipulation et la gestion de bases de données multimédias avec des données en provenance de sources diverses. Un des outils de validation du thème est l’intégration des développements de ces activités dans une plateforme logicielle commune. Les difficultés à surmonter sont nombreuses. Les propositions issues des travaux en vision par ordinateur, traitement des données audio et reconnaissance de formes doivent être évaluées et sélectionnées, en vue de leur couplage à un SGDB : on recherche un bon compromis entre la qualité de reconnaissance visuelle ou auditive et les temps de traitements acceptables pour l’intégration des données brutes et/ou des représentations associées. Plus généralement, le passage à l’échelle des techniques et outils (stockage, indexation, interrogation) est incontournable pour rendre une plateforme multimédia opérationnelle. De même, des techniques d’interrogation des données multimédias, notamment utilisées conjointement, sont encore en grande partie à élaborer. Par ailleurs, le descriptif des axes de recherche, ci-après, fait mention de plusieurs points de recherche où ces deux grands axes de travail (bases de données multimédia, résumé de données) se croisent. 60 Rapport d’activité LINA 2003–2006 Bases de données multimédias Les briques de base d’un système multimédia sont les systèmes mono-médias sous-jacents. Les premiers travaux sur ce thème ont pris en compte les objets multimédias complexes du point de vue de leur organisation temporelle. Les travaux ultérieurs, présentés succinctement ci-dessous, ont concerné la problématique importante de la recherche par le contenu afin de rendre les médias numérisés (image, son et vidéo) utilisables dans des systèmes de gestion de bases de données (SGBD) relationnels ou objetrelationnels et aboutir en fin de compte à un véritable SGBD multimédia (SGBDMM). Plusieurs auteurs, y compris nous-même, ont défini ce qu’un SGBDMM devrait être, et quelles extensions doivent être apportées pour atteindre l’objectif. Les premières avancées ont eu lieu dans le cadre de l’image fixe. Elles ont permis de dégager une architecture à trois composantes. Cette dernière sert d’appui aux recherches suivantes sur les médias audio et vidéo. On peut considérer que les bases d’images (respectivement de vidéo ou d’audio) sont des cas spéciaux de SGBD avancés. Les systèmes d’information géographiques et les SGBD textuels ne seraient alors que d’anciennes variations sur le même thème, la différence principale portant sur la nature du média. En ce sens, les SGBD d’images ne constituent qu’un pas vers le développement d’un véritable SGBDMM. Sans négliger d’autres aspects importants, la modélisation, l’interrogation par le contenu et l’indexation physique sont les directions de recherche et de développement primordiales. En ce qui concerne l’image, l’aspect modélisation est relativement simple. Nous présentons ici notre position sur le deuxième aspect. Les travaux sur l’image fixe ont abouti à une proposition d’architecture bâtie sur trois approches complémentaires de la recherche par le contenu : (i) langage de requêtes, (ii) évaluation de la pertinence et rétroaction, (iii) navigation, correspondant à des modes d’interrogation relevant respectivement des bases de données, de la recherche d’information et de l’hypertexte. Cette partition permet de mieux cerner les fonctions d’un système de recherche par le contenu, ainsi que de situer nos travaux par rapport aux travaux concurrents. Une description plus complète de cette architecture de référence pour la suite de nos travaux a été reportée dans la section « Résultats ». La mise en oeuvre de ses propositions a été réalisée dans le prototype F indIm AGE (voir section « Logiciels »), qui sert de plateforme logicielle aux travaux de l’équipe et à des collaborations internationales (voir section « Actions », Japon et Maroc). Résumés de données multimédia personnelles des mobiles Dans le cadre général de la structuration des collections de données multimédia en vue de la recherche d’information, nous menons une activité dédiée aux ensembles de données collectées et consultées par une même personne, à partir d’un terminal mobile (du téléphone usuel à l’assistant numérique multimédia). Ces données constituent ainsi un « journal personnel » multimédia de son passé (photos, vidéos portées, position géographique, audio continu ou intermittent...). Rapidement, on fait face au problème de la recherche d’information dans des grandes collections de données, et la construction automatisée de résumés dédiés à ce contexte apparaı̂t essentielle. Ce champ d’application a été reconnu par les laboratoires éditeurs de logiciel pour mobiles grand public comme important et plusieurs projets ou premiers produits émergent (MIT, Carnegie Mellon, projet LifeBlog de Nokia, projet MyLifeBits de Microsoft). Les besoins diffèrent de ceux posés par la recherche d’information sur la Toile ou les contenus audio-visuels télévisés sur au moins trois points : la nature des données collectées et traitées, la connaissance partielle des contenus qu’en a l’utilisateur et les terminaux de consultation visés. GRIM : Gestion et Résumé d’Information Multimédia 61 L’objectif que nous avons poursuivi jusqu’ici est la structuration des contenus multimédia personnels. Cette tâche a été formulée comme un ensemble de problèmes d’apprentissage et de classification, supervisée ou non ; nous avons privilégié une approche statistique et une modélisation probabiliste, cadre efficace pour décrire le lien entre les données multimédia et la structure qu’on souhaite extraire. Les travaux réalisés et à venir se veulent des contributions complémentaires de construction de résumés de données multimédia. Perspectives Les perspectives de recherche associées au thème ”résumés” s’orientent vers plusieurs directions dont la cohérence est assurée par le besoin saillant de disposer de telles structures compactes dans des environnement numériques de plus en plus « hostiles » : on entend par là, des architectures complètement décentralisées dont les composants sont distribués, autonomes, hétérogènes et volatiles, des terminaux mobiles, des données complexe, multimédia et en quantité, des flux de données continus dont le stockage est impossible, et pire encore, la combinaison de tous ces facteurs. Il paraı̂t donc important de poursuivre nos travaux pour fournir des solutions innovantes répondant à des situations nouvelles. Parmi ces perspectives, nous privilégions en premier lieu l’adaptation aux environnements distribués et aux systèmes ouverts. L’idée principale est d’élargir la portée du service de résumé telle que l’architecture logicielle du prototype actuel la définit (à base de service web, d’échange de messages et de documents XML), en considérant l’apport mutuel des résumés et des environnements complètement décentralisés, i.e. caractérisés par des sources de données distribuées, autonomes, hétérogènes et volatiles. La construction et la maintenance de résumés globaux de données partagées sur des réseaux pair-àpair soulèvent quelques problèmes dont il est utile de consacrer une étude détaillée, notamment en ce qui concerne la réconciliation de résumés. L’usage de telles structures est double : i) améliorer les techniques de routage de requêtes, en réduisant les nœuds cible à partir de la connaissance (même imprécise et non à jour) du contenu des sources, et ii) offrir des réponses approchées à des requêtes portant sur les données partagées, sans solliciter un accès aux sources. L’étude menée doit conduire à proposer des stratégies pour maximiser le gain à l’interrogation des données partagées tout en maı̂trisant le surcoût engendré par la construction et la maintenance des résumés. Par ailleurs, l’intégration de résumés provenant de sources multiples donne lieu à de nouvelles problématiques que nous nous proposons d’étudier autour de la fusion de résumés par alignement de structures d’arbres correspondant à des hiérarchies de résumés. L’objectif de ce travail est de construire une vue générique matérialisée qui représente l’ensemble des sources de données sans toutefois nécessiter la lecture des n-uplets : la fusion a lieu dans le domaine exclusif des résumés, ce qui limite significativement la consommation de ressources (temps CPU, accès disque et bande passante) et rend envisageable le passage à l’échelle (en nombre et volume de sources) pour la technique de réduction de données employée. Les perspectives de recherche du thème « multimédia » visent à consolider et étendre les résultats obtenus sur les bases d’images. Chaque type de média donne lieu à des orientations de recherche différentes, en fonction de l’intérêt immédiat présupposé et de l’aboutissement rapide escompté de ces recherches. Nous privilégions donc les axes suivants : 1. Image : nous avons décidé de prendre en compte les informations de texture dans l’ensemble du processus d’indexation et de recherche. Cela s’est toujours avéré un domaine de recherche difficile car si cette information est primordiale, elle est en revanche extrêmement difficile à caractériser puisqu’elle est mal définie. Nous portons l’accent sur la reconnaissance et la classification visuelle 62 Rapport d’activité LINA 2003–2006 des différents paramètres de texture. Pour cela, nous allons continuer la collaboration avec le thème ¡¡ résumés ¿¿ en exploitant l’outil de classification S AINT E TI Q. Le but est de déterminer un sousensemble de critères suffisamment concis et discriminants parmi ceux nombreux proposés dans la littérature. La qualité visuelle des classifications obtenues nous permettra d’effectuer ce tri. 2. Audio : les très bons taux de reconnaissance des locuteurs obtenus permettent de nous intéresser à une étape ultérieure. Dans le cadre de l’indexation continue des archives radiophoniques, l’indexation physique des descripteurs retenus (attrbiuts mel-cepstraux) est primordiale. En effet, l’accroissement du nombre de locuteurs reconnus et leur stockage dans un SGBD se heurte actuellement à des traitements quadratiques, envisageables seulement en mémoire centrale et pour quelques centaines à milliers de locuteurs. Cet aspect rejoint, en le particularisant, les travaux génériques entamés sur l’indexation physique des données multimédias. 3. Vidéo : la meilleure façon d’exploiter une base de vidéos ne fait pas encore partie des pratiques courantes. Après avoir procédé à une modélisation du contenu d’une telle base, nous avons décidé de privilégier une approche navigationnelle. (Néanmoins, l’interrogation n’est pas totalement oubliée et s’appuiera sur les résultats déjà obtenus pour l’audio.) En effet, les vidéos de grande taille présentent des similitudes visuelles importantes entre différents plans et différentes scènes, les informations diffusées sur différentes chaı̂nes et à différent moments traitent de sujets identiques, etc. La redondance est donc souvent importante. Il est donc probable qu’un utilisateur sera fortement intéressé par la possibilité de visualiser en vis-à-vis d’un document principal un ensemble de liens visuels lui permettant d’accéder à des portions de vidéos « semblables ». Ce travail sera combiné avec les recherches en cours sur les très grandes bases d’images. Les différents travaux de l’équipe devront à terme être intégrés dans une même plate-forme de gestion de données complexes qui sera partagée avec l’équipe GDD (Gestion de Données Distribuées). 2.3 Fondements scientifiques 2.3.1 Des structures aux bases de données Nos travaux sont fondamentalement basés sur la manipulation des données. Cela se traduit, à l’origine, par la mise en œuvre d’une algorithmique efficace : nous avons parfois à faire face à problèmes NP-complets, les algorithmes retenus se doivent d’être incrémentaux, etc. Le souci de trouver des compromis algorithmiques efficaces est dicté par le souci d’offrir des outils utilisables sur de grands volumes de données et plus particulièrement pour gérer des systèmes de gestion de bases de données (SGBD) volumineux. La mise en œuvre d’un véritable SGBD intégrant des données multimédias et/ou des résumés nécessite de s’appuyer sur les connaissances importantes accumulées sur la gestion physique de l’information (indexation, regroupement des données, répartition et parallélisation, optimisation des requêtes, etc.). Seule cette double exigence vis-à-vis des masses de données permet de supporter le passage à l’échelle requis dans le cadre d’applications manipulant des données du monde réel en très grande quantité : les SGBD multimédias sont bien évidemment volumineux quant aux données de base mais également en ce qui concerne les multiples descripteurs associées, les résumés de données offrent tout leur intérêt lorsqu’on les applique à des volumes de données ingérables de manière « traditionnelle ». Par ailleurs, l’exploitation des nouvelles fonctions des SGBD passe également par la définition de couches d’accès parmi lesquelles les langages de requêtes, ou plus exactement leur extension, est primordiale. Cela se traduit, pour les résumés de données, par l’ajout d’opérateurs flexibles et, pour les données GRIM : Gestion et Résumé d’Information Multimédia 63 multimédias, par des extensions temporelles, ces extensions pouvant prendre leurs racines dans la théorie des sous-ensembles flous. 2.3.2 L’analyse de données multimédias Les techniques d’analyse de données forment un corpus essentiel pour la gestion efficace de ces données par un système informatique. Une première idée défendue dans notre approche de génération de résumés, issue de l’analyse de données, consiste à proposer des résumés de granularité variable, c’est-à-dire à construire une hiérarchie de résumés de plus en plus spécifiques (de la racine vers les feuilles). La technique mise en œuvre adopte une démarche analogue aux méthodes de classification hiérarchique descendante non supervisée. La caractérisation des classes, propre à la génération de résumés (information synthétique sur les données), permet de plus un rapprochement immédiat avec la classification conceptuelle ou « formation de concepts ». Enfin, une propriété essentielle défendue dans notre approche de génération de résumés est la forme incrémentale de l’apprentissage de la hiérarchie de résumés. En d’autres termes, chaque nouvelle observation (un n-uplet de la base de données) permet d’améliorer l’estimation du modèle par optimisation d’une fonction de coût dont la portée est locale à chaque niveau de la hiérarchie. Enfin, les applications manipulant des données audiovisuelles sont fréquemment fondées sur des tâches de classification, notamment supervisée. Les outils utilisés sont ceux de la reconnaissance des formes, largement indépendants du média traité. Voici trois exemples représentatifs liés à des applications importantes, entraı̂nant une recherche dynamique et concernant des données de média différents : la reconnaissance du visage, du locuteur, d’événement vidéo. Les implications de ce domaine de recherche sur les bases de données sont importantes : – un SGDB multimedia devrait savoir manipuler les représentations des classes construites par les techniques performantes employées dans ce contexte : jeu de paramètres de modèles probabilistes, fonctions-noyaux,. . . – le choix de représentation des classes pourrait être guidé par des critères issus de la base de données. 2.3.3 La théorie des ensembles flous En premier lieu, la théorie des ensembles flous, et plus particulièrement l’approche possibiliste, permet de représenter les données imprécises, incertaines et graduelles que notre méthode de construction de résumés sait gérer. Elle offre en effet un cadre formel solide pour le traitement de l’incertitude (notion prise dans son acception la plus large). D’autre part, la théorie des ensembles flous supporte également le mécanisme de mise en conformité des n-uplets vis-à-vis des connaissances de domaine. En effet, ces connaissances de domaine, définies par une collection de partitions linguistiques floues, délivrent un vocabulaire contrôlé qui sert à décrire les résumés et les n-uplets dans un langage proche de celui de l’utilisateur. Les sous-ensembles flous permettent d’éviter les effets de seuil relatifs aux processus usuels de discrétisation et de classification. Enfin, la théorie des ensembles flous offre une interface symbolique / numérique à la base de la représentation unifiée du modèle de résumé : quelle que soit la nature des domaines d’attributs qui caractérisent les n-uplets, les résumés sont décrits sur tous les attributs par des étiquettes linguistiques partageant un formalisme commun. 64 Rapport d’activité LINA 2003–2006 2.3.4 Gestion de données distribuées La gestion de données concerne le stockage, l’organisation, la recherche et la manipulation de données ; les problèmes de recherche importants se posent pour des données complexes et volumineuses. Les systèmes distribués de gestion de données, en particulier adaptés au fonctionnement à grande échelle (pair-à-pair, cluster), sont une question de recherche importante, centre d’études fondamentales pour l’équipe Atlas-GDD. Pour l’équipe Atlas-GRIM, ce type d’infrastructure est vu comme un contexte privilégié, offrant une spécificité à nos travaux en résumé de données ou classification de données multimédia. Les applications appellent de plus en plus ces derniers problèmes à fonctionner de façon distribuée, dynamique, décentralisée, soit parce que les données sont intrinsèquement distribuées, soit parce que cela offre un parallélisme assurant un passage à l’échelle. 2.4 Domaines d’applications 2.4.1 Systèmes de gestion de données multimédia L’impact technologique des bases de données multimédia est assez direct, et fait d’ailleurs partie des priorités annoncées par des grands organismes menant ou finançant la recherche (INRIA, CNRS, UE, MNERT). Dans l’ensemble, on peut qualifier de systèmes de gestion de données multimédia la plupart des applications concernées par nos travaux. Ils doivent faire face au problème de l’organisation et de la structuration de l’information en vue de la recherche et de la manipulation efficaces sur un système informatique. Ces systèmes d’information multimédia concernent notamment : – les producteurs, détenteurs et diffuseurs de contenus multimédia et audiovisuels : l’objectif est alors souvent de faciliter et de personnaliser la sélection des contenus, d’en créer plusieurs versions, l’ensemble visant à augmenter la diffusion et l’adéquation du contenu au client ; – la formation, où le multimédia est une forme véhicule efficace de transmission l’information, figure aussi parmi les bénéficiaires de ces systèmes ; – les constructeurs de biens d’équipement électroniques, de logiciels et de services destinés aux particuliers : ces derniers peuvent maintenant recevoir et créer de grands volumes de contenus, qui doivent être organisés efficacement, aux niveaux logique et physique. 2.4.2 Les résumés de données volumineuses Le principe général de ce type d’application consiste à offrir différentes vues synthétiques, de granularité variable, sur une collection de données de taille importante. Des outils pour la navigation dans la hiérarchie de résumés sont également développés pour faciliter l’interprétation immédiate et la prise de décision consécutive lors d’une analyse en ligne. D’un point de vue opérationnel, nous sommes conduits à examiner l’intégration du service de résumé au cœur des SGBD, i.e. en tant que fonctionnalité de ces systèmes, au même titre que les représentations multi-dimentionnelles offertes par les approches de construction d’entrepôts de données pour les processus OLAP (pour On-Line Analytical Process). Cette approche a été validée au travers d’une expérience avec des données marketing du CIO (groupement bancaire) comprenant 33 000 tuples caractérisés sur 10 attributs. De manière analogue, nous avons appliqué la méthode de résumé couplée avec des outils de visualisation et de navigation, sur le jeu de données du recensement U.S. de 1990, disponible sur le dépôt UCI KDD et comprenant 2 458 285 tuples définis sur 67 attributs. GRIM : Gestion et Résumé d’Information Multimédia 65 Dans le contexte général de l’aide à la décision, les résumés sont également employés pour développer des modes de navigation avancée dans des données complexes et volumineuses. Par exemple, l’intérêt des résumés pour la navigation dans des collections d’images tient en deux points : i) la caractérisation linguistique des images et ii) le regroupement d’images similaires dans des classes homogènes. L’idée fondamentale de cette approche consiste à tenter de faire face à la malédiction de la dimensionnalité de telle sorte que la navigation dans les collections d’images soit rendue efficace et intuitive pour l’utilisateur. 2.5 Résultats nouveaux 2.5.1 Les résumés de données La technologie des SGBD a maintenant atteint un niveau de maturité tel qu’elle est au cœur de tout système d’information moderne. Son usage intensif dans de grandes organisations a eu des conséquences importantes : la production de très grandes bases de données et le besoin croissant d’applications variées pour accéder aux données. On relève alors un paradoxe intéressant qui traduit le fait que plus la technologie des SGBD se perfectionne, plus elle est en mesure de produire des BD de grande taille, et ainsi plus il lui est difficile de fournir des solutions fiables et performantes pour accéder aux données. Le système SaintEtiQ, au centre de la contribution de l’équipe Atlas-GRIM concernant le thème des résumés, fournit une solution innovante pour représenter, interroger, et explorer les données contenues dans des bases de grande taille. Les derniers résultats obtenus sur ce sujet d’étude concernent d’abord la consolidation des résultats préalablement enregistrés, mais également de nouvelles contributions dans les domaines de l’interrogation et de l’indexation des données par les résumés et enfin, un travail original pour l’exploration en ligne des résumés. Définition et mise en œuvre d’une architecture ouverte pour un service de résumé Participants : Noureddine Mouaddib, Guillaume Raschia, Régis Saint-Paul Le procédé de réduction de données développé dans SaintEtiQ a été profondément amélioré pour permettre l’intégration dans les SGBD existants. Les principaux objectifs poursuivis ont été l’optimisation de l’emprunte mémoire, un mécanisme efficace de sérialisation et de chargement des résumés, une complexité effectivement linéaire par rapport au nombre de n-uplets traités. Pour atteindre ces objectifs, nous avons proposé une architecture logicielle distribuée à base de services et dont les principales caractéristiques sont les suivantes : – des modèles diffusés sous la forme de schémas W3C XML Schema pour toutes les entrées/sorties du procédé de construction de résumés (données brutes, données préparées, connaissances de domaine et résumés) ; – des procédures stoquées et des déclencheurs (triggers) pour permettre un couplage étroit avec MS-SQL Server et Oracle ; – un gestionnaire de cache conçu pour charger en mémoire centrale les résumés les plus fréquemment utilisés, et sérialiser les autres sous la forme d’un simple flux binaire ; – l’écriture et la publication de deux services web, l’un pour la construction des résumés, l’autre pour la préparation des données ; – la décomposition du service de construction en composants indépendants, chaque structure de résumé étant par exemple distribuée sur les nœuds d’une grille, qui autorise un calcul parallèle de la mise à jour des résumés. 66 Rapport d’activité LINA 2003–2006 Les données préparées sont des documents XML qui contiennent une forme réécrite des n-uplets de la base de données ; ce sont les données d’entrée pour le service de construction des résumés. La préparation des données consiste à proposer une représentation unifiée des valeurs d’attributs sous la forme d’étiquettes linguistiques pondérées par un degré de satisfaction. L’intérêt premier de cette étape est l’indépendance du service de construction vis-à-vis du type des données sous-jacent. Ce second service réalise effectivement la tâche de construction des résumés multi-niveaux. Il accepte des données préparées en entrée et produit une collection de résumés organisés au sein d’une hiérarchie de généralisation. Cette structure d’arbre est utilisée a posteriori pour produire une version réduite de la base de données à un taux de compression variable. Le gestionnaire de cache réduit drastiquement l’emprunte mémoire et offre des garanties sur la consommation de mémoire pendant le calcul, de sorte à adapter le mécanisme selon la plate-forme et le besoin de l’utilisateur. La stratégie de cache traite les instances de résumés selon leur fréquence d’utilisation dans le processus de construction. De cette façon, des branches entières de la hiérarchie peuvent résider en mémoire et les résumés rarement sollicités sont stockés sur disque. L’implémentation proposée adopte un paradigme de programmation par messages (Message-oriented Middleware) : les composants sont indépendants et l’exécution des tâches à réception des messages est asynchrone. La mise en place de cette architecture garantit de faibles exigences relativement à la disponibilité et à la centralisation du service. L’indépendance des composants autorise également la distribution du calcul de sorte à obtenir une architecture pipeline : une fois qu’un composant a mis à jour le résumé (un nœud de l’arbre) dont il est responsable, il transmet un message avec le n-uplet courant au composant correspondant au résumé fils, et ce de façon récursive jusqu’aux feuilles de l’arbre. Le gestionnaire de cache est en mesure de contrôler plusieurs listes de résumés répartis sur différents nœuds d’un réseau. Il est également responsable de l’équilibrage de la charge estimée par comptage des n-uplets traités sur chaque nœud. De l’interrogation des résumés à l’indexation sémantique multidimensionnelle Participants : Noureddine Mouaddib, Guillaume Raschia, Laurent Ughetto, Amenel Voglozin L’interrogation des résumés consiste à adresser des requêtes à la structure de résumés plutôt qu ?à une base de données. Le vocabulaire de construction des résumés permet de spécifier les critères de sélection sous la forme de descripteurs. Les requêtes correspondent informellement à des questions d ?existence (”y a-t-il des personnes jeunes et très bien payées ?”) ou de description (”quelles sont les caractéristiques des personnes jeunes et très bien payées ?”) bien que leur formulation reste la même. La nature d ?existence ou de description est dérivée de l ?interprétation des résultats. La description est l ?élément le plus intéressant de l ?interrogation des résumés. Elle permet de connaı̂tre toutes les caractéristiques des objets sélectionnés par la requête sur tous leurs attributs. Par exemple si les données sont décrites sur les attributs (âge, salaire, sexe, durée des études) on obtient des résultats dont l’interprétation est ”les personnes jeunes et bien payées sont de sexe masculin ou féminin, et ont fait de longues études”. Les moyens que nous mettons en ?uvre pour l’interrogation permettent de déterminer les critères de sélection responsables de l ?échec d ?une requête (c ?est-à-dire lorsqu ?elle n ?a pas de résultat dans le jeu de données interrogé). La ”réparation” des requêtes s ?inspire des méthodes coopératives où le critère responsable de l ?échec est exhibé de manière à ce que l ?utilisateur puisse le modifier. À la différence des méthodes coopératives, nous avons mis en place un cadre formel qui autorise une modification automatique de la requête. L ?objectif visé est de toujours fournir une réponse, même imparfaite, à une requête. GRIM : Gestion et Résumé d’Information Multimédia 67 Les résumés sont exploitables dans un profil utilisateur par le biais du vocabulaire d ?interrogation. Nos travaux ont consisté à établir les scénarios d ?utilisation envisageables, à les analyser et à déterminer l ?impact d ?un vocabulaire différent sur l ?interrogation. Les divers scénarios mettent en parallèle la nature des hiérarchies de résumés et celle du vocabulaire. La principale conclusion est que l’utilisation d’un autre vocabulaire que celui de la construction teinte d’incertitude les résultats de l’interrogation. Les hiérarchies de résumés partagent plusieurs caractéristiques structurelles avec les index multidimensionnels existants. Nous étudions ces traits communs dans le cadre de la sélection de n-uplets dans une table de données. Les résultats ne sont plus des résumés mais des n-uplets comme dans une requête SQL classique. Utiliser une hiérarchie de résumés comme index revient à définir les informations nécessaires pour répondre à une requête, à les organiser, et à implémenter les algorithmes de recherche adéquats. Nous nous substituons alors aux méthodes standard du SGBD. Pour ce travail, le SGBD PostgreSQL a été utilisé en raison du fait qu ?il est ”libre” et déjà utilisé dans l’équipe Atlas. L’objectif était d’évaluer les performances de cet index (et des procédures de recherche associées) selon les métriques usuelles du domaine (temps de réponse, nombre d’E/S, ...). Les résultats expérimentaux sur des données réelles et aléatoires sont encourageants et ont déjà mis en évidence la nécessité de réorganiser le fichier d’index afin de réduire les E/S. Analyse en ligne de résumés Participants : Noureddine Mouaddib, Guillaume Raschia, Lamiaa Naoum, La proposition consiste à définir un cadre général pour l’exploration et l’analyse de résumés de bases de données de taille significative. Pour mémoire, les résumés sont des vues matérialisées multi-niveaux de classes homogènes de données. Leur représentation est définie à l’aide de collections d’étiquettes floues disponibles sur chaque attribut en tant que connaissance de domaine. En premier lieu nous avons défini un modèle de données logique appelé partition de résumés, par analogie avec les cubes de données OLAP, dans le but d’offrir à l’utilisateur final un outil de présentation des données sous forme condensée et adaptée à l’analyse. Dans l’espace des partitions de résumés, les relations entre les différentes partitions sont établies sur base du procédé de construction de résumés multi-niveaux développé dans SaintEtiQ. Nous avons défini une collection d’opérateurs algébriques sur l’espace multidimensionnel de partitions de résumés. Ces opérateurs sont à la base d’une algèbre de manipulation des résumés. Cette algèbre prend en compte les spécificités du modèle de résumé que nous traitons et permet d’explorer succinctement le contenu de la base de données sans y accéder. Nous avons adapté la majorité des opérateurs d’analyse proposés dans les systèmes OLAP. Ainsi, nous avons identifié pour cette algèbre trois catégories d’opérateurs : les opérateurs de base (restriction, projection, union, . . .) issus de l’algèbre relationnelle, les opérateurs de changement de granularité (roll-up et le drill-down) et les opérateurs de restructuration (rotation, permutation, . . .). Ces résultats offrent de nouvelles perspectives pour l’exploitation effective des résumés dans un système décisionnel. Pour compléter ce travail, nous nous sommes intéressés à la représentation des résumés et des partitions de résumés produits par SaintEtiQ, notamment pour en fournir une présentation claire et concise à l’utilisateur final. En effet, ces structures de données complexes, bien que définies à partir d’un langage contrôlé avec lequel l’utilisateur est familier, sont encore trop riches pour être interprétées correctement par des non spécialistes. Nous avons donc introduit une approche fondée sur les prototypes flous pour représenter des résumés de bases de données volumineuses. Appliquée à une hiérarchie de résumés produite par le système SaintEtiQ, l’approche tente d’extraire des prototypes selon deux orientations distinctes. La première proposition consiste à calculer pour chaque résumé une représentation 68 Rapport d’activité LINA 2003–2006 linguistique dite « idéale » en identifiant le meilleur descripteur du résumé sur chacun de ses attributs. La seconde proposition vise à fournir comme prototype le résumé le plus précis situé dans le sous-arbre du résumé courant et qui traduit le plus fidèlement la représentation calculée précédemment. Pour finir, nous travaillons actuellement sur les possibilités de caractériser les résumés en apportant à l’utilisateur une information complémentaire à celle des prototypes flous. Cette caractérisation doit permettre de valuer un résumé en calculant des coefficients à partir de ses propriétés afin de l’identifier par exemple comme majoritaire, discriminant, exceptionnel, . . .. 2.5.2 Gestion de données multimédia Passage à l’échelle pour l’indexation multimédia Participants : José Martinez, Jorge Manjarrez Un système de gestion de bases d’images doit a priori s’appuyer sur un système de gestion de bases de données (SGBD). Nous avons identifié un certain nombre de limitations des SGBD relationnels. Cinq points clés ont été identifiées et certaines réponses apportées : réduction physique de la taille des métadonnées, introduction d’informations redondantes, exploitation du parallélisme, classification et répartition des données, indexation physique différenciée [49]. La combinaison de la classification et du parallélisme permet, en théorie, d’obtenir des algorithmes de recherche sous-linéaires [64]. Les expérimentations sont en cours pour valider ce résultat théoriques à partir de simulations basées sur différents jeux d’hypothèses [62]. Apprentissage statistique distribué décentralisé de modèle probabiliste pour caractériser une classe audiovisuelle Participants : Marc Gelgon, Afshin Nikseresht Une tâche fondamentale en indexation multimédia la caractérisation de classe (définir des observations sur des données audiovisuelles, puis en représenter la variabilité ou un critère la discriminant d’autres classes). On suppose de grandes quantités de données, pour partie étiquetées de leur classe, et disponibles en ligne, de façon distribuée à large échelle. Comme l’apprentissage de très nombreuses classes, à partir de grands volumes de données, est une tâche coûteuse, nous en proposons une version répartie (données et calcul) et décentralisée. Ce contexte est celui d’un système flexible et dynamique, de type pair-à-pair, privilégié par les équipes Atlas-GRIM et Atlas-GDD. Dans le cas de modèle de mélange de gaussiennes (un des plus employés pour les données audiovisuelles), nous avons proposé une technique d’estimation distribuée basée sur une propagation par rumeur, sur le réseau, des paramètres des modèles locaux. On procède, à chaque étape, à une fusion de modèles via la recherche d’une combinaison des composantes des modèles à fusionner, optimale au sens d’une perte minimale de divergence de Kullback approximative [11]. Ce procédé est économe en terme de calcul et d’information à transmettre, puisque l’estimation collective se base sur les paramètres des modèles plutôt que sur les données. La validité de chaque fusion est enfin évaluée, pour améliorer l’optimisation globale sur le réseau. Ce travail a été lauréat d’une bourse ACM/IBM/Microsoft au workshop ACM MIR’2005 [37]. Organisation hiérarchique d’un ensemble de mélange de lois Participants : Jamal Rougui, Marc Gelgon, José Martinez GRIM : Gestion et Résumé d’Information Multimédia 69 Cette étude s’intéresse à la réduction du coût de phase de classification, dans un contexte d’apprentissage statistique supervisé, dans le cas où l’adéquation entre un modèle de classe M et des données D doit être évaluée pour de très nombreuses classes candidates. Dans notre contexte, la quantité-clé à calculer est la vraisemblance p(D|M ), et M prend la forme d’un mélange de gaussiennes. L’exemple applicatif choisi est la reconnaissance du locuteur. La direction de recherche consiste en l’élaboration d’un arbre de modèles en vue d’un coût d’évaluation sous-linéaire, relativement au nombre de classes candidates. La tâche consiste donc à adapter les techniques de structures arborescentes classiquement employées en bases de données ; ici l’élément élémentaire à indexer est une densité de probabilité. Plutôt que de revenir aux données, la technique de génération de l’arbre travaille sur les paramètres des composantes gaussiennes. Le choix de la divergence de Kullback, liée à la log-vraisemblance, dans les noeuds parents permet de contrôler, dans une certaine mesure, la perte de fiabilité d’une recherche dans l’arbre relativement à une recherche exhaustive [42, 13]. Par ailleurs, nous examinons l’opportunité des techniques hybrides génératrice/discriminantes récemment proposées (C.Bishop et al.). Gestion de collection d’images personnelles pour terminaux mobiles Participants : Marc Gelgon, Antoine Pigeau L’extension des systèmes de recherche d’information multimédia aux documents personnels fait partie des besoins émergeants et suscite un intérêt industriel et académique. En particulier, les terminaux mobiles munis de capteurs audiovisuels sont un cas intéressant pour la création et la consultation de documents. Dans ce contexte, nous avons proposé un ensemble de techniques pour la structuration de collection personnelle d’images, exploitant les méta-données géo-temporelles associées à ces images. L’objectif est en fait de retrouver la structure geo-temporelle présente dans un tel jeu de donnnées. Les propriétés d’incrémentalité, de non supervision et l’obtention d’une hiérarchique de partitions reposent sur des mélanges de modèles probabilistes, associés à l’optimisation d’un critère statistique [21, 12]. L’exploitation conjointe du temps et de l’espace a également été abordée [40]. Selection d’attributs de texture discriminants pour l’indexation dans un SGBD Participants : Najlae Idrissi, José Martinez Un SGBD d’images devrait s’appuyer sur la technologie standard des SGBD et nous avons montré, dans des travaux antérieurs, que cela impliquait une difficulté à préserver l’efficacité du traitement des requêtes. Nous avons conclu que : (i) réduire le volume de descripteurs (cela affecte l’exigence en taille et donc la complexité en temps), (ii) matérialiser de l’information redondante pour améliorer les requêtes (spécialement quand l’information dérivée est obtenue par des requêtes complexes que l’optimiseur du SGBD ne sait pas identifier), (iii) faire usage du parallélisme, (iv) distribuer les images sur les noeuds d’un réseau, sur la base de leurs propriétés visuelles, (v) d’exploiter les techniques d’indexation multidimensionelle, autant que possible. Nous traitons ici principalement les points (i) et (v) pour ajouter des descripteurs de texture à nos travaux exploitant des descripteurs de couleur. Nous avons utilisé des attributs calculés à partir de matrices de co-occurence, classiques et efficaces. La difficulté ici a consisté en la recherche d’un sous-ensemble réduit d’attributs, à la fois suffisamment discriminants et compacts pour rester compatible avec les techniques d’indexation multi-dimensionelle. Ils doivent être les plus décorrélés possibles pour éviter les biais quand les requêtes sont évaluées et les classifications construites. Enfin, nous avons recherché des descriptions qui peuvent être reliés à des qualificatifs linguistiques, et donc la perception humaine, car 70 Rapport d’activité LINA 2003–2006 les travaux ultérieurs doivent combiner ces attributs avec la technique de résumé de données décrite dans la première partie de cette section. 2.6 Logiciels L’équipe a une politique de mise en œuvre de ses algorithmes. Actuellement, chaque thème dispose d’un prototype pour les développements internes ainsi que pour des collaborations aussi bien entre thèmes de l’équipe qu’au sein de l’axe BaDRI ou encore dans le cadre de collaborations internationales (Tokyo Metropolitan University, Japon ; réseau STIC franco-marocain). À court terme, il est prévu de diffuser ces outils. Les stratégies envisageables sont diverses : distribution de prototypes opérationnels (ex. : RPMs sous Linux), voire ouverture des codes sources, participation à des plateformes nationales, démonstrations en ligne. 2.6.1 SaintEtiQ (Responsable: Guillaume Raschia) URL/DOI: http ://www.simulation.fr/seq Mots-clés: Résumé de données, hiérarchie, incrementalité Équipe de développement: Régis Saint-Paul, Guillaume Raschia, Amenel Voglozin Le prototype S AINT E TI Q met en œuvre la méthode de génération de résumés qui a été développée dans l’équipe. Considérant un à un les n-uplets d’une relation, le logiciel crée une hiérarchie de résumés relativement à des connaissances de domaine pré-établies. Un certain nombre de modules supplémentaires sont également proposés, pour assister l’utilisateur dans la préparation de ses données et l’exploitation immédiate des résumés. Enfin, la visualisation graphique d’informations statistiques permet de contrôler et d’ajuster le comportement dynamique du système. La dernière version du prototype S AINT E TI Q a été développé en C# sur une plateforme .NET. Il reprend et améliore considérablement les fonctions et les performances du prototype précédent, développé de façon monolithique avec le langage Delphi. La nouvelle mouture du prototype fournit un service web de résumé que l’on peut aisément coupler avec les SGBD du marché. Les sous-systèmes correspondant aux modules de transformation des n-uplets et des résumés sont indépendants et la communication entre les composants logiciels est mise en œuvre par échange de messages. Un grand nombre d’optimisations de la méthode de construction ont été apportées, et des modèles pour les données, les connaissances de domaine et les résumés ont été écrits en XML, de sorte que l’interopérabilité soit sinon garantie, du moins facilitée. Enfin, la parallélisation des traitements et la répartition des composants logiciels est rendue possible grâce à l’autonomie des documents XML correspondant aux résumés. 2.6.2 FindImAGE (Responsable: José Martinez) URL/DOI: Mots-clés: Multimédia, image, vidéo, recherche par le contenu, navigation, classification Équipe de développement: José Martinez, Erwan Loisant, Régis Saint-Paul, Ibrahima Mbaye, Najlae Idrissi GRIM : Gestion et Résumé d’Information Multimédia 71 F indIm AGE est un système de recherche d’images par le contenu. Il est relativement complet du point de vue fonctionnel, offrant au moins une implémentation de chacune des trois approches préconisées pour accéder à une base d’images. Un premier module permet d’extraire des informations de bas niveau à partir du signal, stockées dans un SGBD ou un fichier XML. L’utilisation d’un SGBD permet d’employer le langage d’interrogation correspondant (SQL, OQL, XQuery. . .). La recherche via l’interrogation par un langage de requêtes nous semble la brique de base incontournable pour l’intégration dans un futur SGBD multimédia. Le second module permet des recherches interactives à la manière des systèmes de recherche d’information textuelle (cf. la rétro-action dans le modèle vectoriel). Il évite à l’utilisateur de rédiger des requêtes complexes – dans le cas d’un SGBD – ou même dénuées de toute sémantique – dans le cas de l’exploitation directe d’informations de très bas niveau (descripteurs statistiques, transformées...). Enfin, un troisième module permet d’organiser les images a priori afin d’offrir une structure de navigation aisée et intuitive pour l’utilisateur. Des pré-traitements coûteux, et une certaine perte de discrimination, sont compensés par les performances de recherches les plus élevées. L’architecture de F indIm AGE se veut flexible pour pouvoir s’adapter à des applications spécifiques. Comportant actuellement quelques 100 000 lignes de code C++ et 10 000 de code Java, il se décompose d’ailleurs en deux versions : une version dite « légère » est opérationnelle et peut être considérée comme une boı̂te à outils pouvant être intégrée à d’autres systèmes (elle utilise des techniques d’indexation simples) ; le développement d’une version plus ambitieuse (basée sur des données plus difficiles à obtenir et donc des traitements plus complexes) se poursuit en parallèle avec la prise en compte des autres médias numérisés, l’audio et la vidéo. 2.7 Stratégie de valorisation et de coopération 2.7.1 Actions internationales – Collaboration avec University of New South Wales (UNSW), Australie (stage master et thèse de Q.K.Pham, post-doc à UNSW de R.Saint-Paul (ancien doctorant de l’équipe GRIM), N.Mouaddib a été professeur invité à UNSW en 2005 et 2006 ; article de revue issu de la collaboration [16]). – L’équipe est impliquée dans le réseau STIC multimédia franco-marocain, avec l’université Mohammed V de Rabat, l’EMI, l’ENSIAS et l’université de Fès ; trois thèses se déroulent en cotutelle, aboutissant à de nombreuses publications communes. – L’équipe entretient des relations scientifiques régulières avec les institutions suivantes : University of Michigan-Dearborn, USA (William Grosky), Kettering University, USA (Peter Stanchev), University of Roskilde (Henrick Larsen), Nokia Research Center, Finlande (Andreas Myka, visite dans l’équipe et participation au jury de thèse d’A.Pigeau), Delphi corp., USA (Riad Hammoud, chapitre de livre commmun [61]). – G. Raschia, impliqué dans un projet européen TEMPUS, dispense chaque année 12 heures de cours et 8 heurs de TP sur “XML et les bases de données” à l’université de Tetovo (Macédoine). – Université Métropolitaine de Tokyo (Pr Ishikawa depuis 2002) : le thème de la collaboration est la recherche par le contenu de données multimédias. Cette collaboration a donné le lieu au financement de la thèse de E. Loisant par le gouvernement japonais (bourse Monbusho). 72 Rapport d’activité LINA 2003–2006 2.7.2 Actions nationales ANR . Contrat RNTL Domus Videum (2002-2004) Responsable: M. Gelgon, G. Raschia Montant: 120 Ke Mots-clés: Apprentissage, profil utilisateur, télévision Participants: Guillaume R ASCHIA, Marc G ELGON, Noureddine M OUADDIB, Régis S AINT-PAUL, Gaëtan G AUMER, Antoine P IGEAU Partenaires: Thomson multimédia (Rennes), INRIA (projets VISTA, METISS, TEMICS), Ecole polytechnique de l’université de de Nantes (laboratoires d’appui LINA et IRCCyN), INA, SFRS Le projet D OMUS V IDEUM a pour objectif le développement des outils algorithmiques d’analyse et d’indexation de données audiovisuelles, de constitution de résumés courts et de condensés, d’extraction de connaissances et d’apprentissage appliqués à la gestion des plates-formes multimédia domestiques. Une plate-forme multiédia domestique est ici vue comme un appareil intelligent capable de filtrer le flux d’information descendante et d’enregistrer les programmes correspondant aux choix explicites de l’utilisateur ou à son profil construit par le système. . ACI SemWeb (2004-2007) Responsable: G. Raschia Montant: 60 Ke Mots-clés: Médiateur, XQuery Participants: Noureddine M OUADDIB, Guillaume R ASCHIA, José M ARTINEZ Partenaires: PRiSM Versailles, CNAM, LIP6, Paris, SIS Toulon et LINA Le projet identifie les problèmes et propose des solutions pour les médiateurs basés sur XML dans le contexte du web semantique,utilisant XQuery. Les problèmes concernent le passage à l’échelle de l’architecture, l’intégration de données hétérogènes et le traitement des méta-données. Le résultat attendu pour le projet est une architecture de médiateur, illustré sur des exemples représentatifs, et livré en logiciel open-source. . ACI APMD (2004-2007) Responsable: N. Mouaddib Montant: 80 Ke Mots-clés: Recherche d’information, personalisation Participants: Noureddine M OUADDIB, Guillaume R ASCHIA, José M ARTINEZ Partenaires: PRiSM, Versailles, CLIPS-IMAG, Grenoble, IRISA, Lannion, IRIT, Toulouse, LINA, Nantes and LIRIS, Lyon GRIM : Gestion et Résumé d’Information Multimédia 73 Le projet a pour objectif l’améliorer la qualité de l’information retournée lors de recherche, grâce à une personnalisation du traitement. Il s’agit là d’une tâche de grande importance pour de nombreuses applications grand public, comme le commerce electronique, où doivent être pris en compte de nombreux paramètres : hétérogéneité des sources, variété des formats, langages employés, quantité de données disponible, etc. Le projet doit définir les composantes du profil utilisateur, la manière dont il peut évoluer, et tirer parti des profils pour filtrer les informations et les présenter. Autres – L’équipe a été impliquée dans plusieurs actions spécifiques CNRS du RTP9 : – Personnalisation de l’information (2003) ; – Passage à l’échelle dans la taille des corpus (2003) ; – Le projet MDP2P, s’est déroulé sur 3 ans (2003-2006) et a impliqué trois autres projets INRIA : Paris, Texmex et Gemo. – L’équipe a reçu (2003) la visite de C. Demange, expert dans le domaine du multimédia au Ministère de l’industrie pour les réseaux RNTL et RIAM, pour des présentations générales et démonstration de ses travaux dans le domaine du multimédia. 2.7.3 Actions régionales CPER L’équipe Atlas-GRIM participe au projet COM financé par la région des Pays de la Loire qui, dans le cadre du CPER 2000-2006, a contribué à la structuration de la recherche en informatique dans la région. En 2006, l’équipe a participé très activement au montage des nouveaux projets régionaux dans le domaine des STIC (projet MILES 2006-2009, CPER 2007-). Notre contribution concerne la recherche d’information multimédia en contexte distribué. Pôles de compétivité L’équipe a participé, par sa contribution propre et en coordonnant les contributions des contributeurs académiques (LINA,IRCCYN) au montage du projet SAFEIMAGE, mené par Alcatel, qui a été labelisé par le Pôle de Compétitivité ”Images et Réseaux” (juin 2006). Ce projet a été soumis à l’ANR. Notre contribution concerne la classification de données multimédia pour une application de sécurité. 2.8 Diffusion des résultats 2.8.1 Rayonnement – Les membres de l’équipe GRIM sont depuis longtemps fortement impliqués dans l’organisation de la communauté française des bases de données, dans le contexte du GDR I3 et l’organisation du congrès national BDA. – N. Mouaddib est vice-président recherche de SPECIF (Société des Personnels Enseignants et Chercheurs en Informatique de France), depuis jan.2006. – N. Mouaddib est Directeur adjoint du LINA – N. Mouaddib est membre élu au conseil scientifique et à la commission permanente de l’université de Nantes 74 Rapport d’activité LINA 2003–2006 – N. Mouaddib est membre nommé à la commission des sciences exactes du conseil régional des Pays de la Loire, depuis 2005. – N. Mouaddib est coordinateur du projet région ”Miles : Multimedia - Ingénierie du logiciel - Aide à la décision - Télécommunications, détection, localisation” 2.8.2 Comités de programmes et comités de lecture N.Mouaddib est membre du comité de lecture des revues IEEE Transactions on Fuzzy Systems, International Journal of Uncertainty, Fuzziness and Knowledge-based systems, Ingénierie des systèmes d’information. 2006 – Congrès Flexible Query/Answering Systems (FQAS) : N. Mouaddib – Congrès Recherche d’Information et Applications (CORIA’2006) : J. Martinez, N.Mouaddib – Workshop HPDGrid 2006 - International Workshop on High-Performance Data Management in Grid Environments : G. Raschia – Congrès BDA’2006 : J. Martinez – Congrès INFORSID’2006 : J. Martinez 2005 – Congrès Recherche d’Information et Applications (CORIA’2005) : J. Martinez, N.Mouaddib – Congrès BDA’2005 : N. Mouaddib 2004 – Workshop “Computer Vision meets Databases” (CVDB’2004) conjoint à ACM SIGMOD’2004 : J.Martinez, N.Mouaddib – ACM Int. Symp. on Applied Computing : Multimedia and Visualisation Track (SAC) : J. Martinez – Congrès Flexible Query/Answering Systems (FQAS) : G. Raschia, N. Mouaddib – Journées Recherche d’Information Assistée par Ordinateur (RIAO), 2004 : J. Martinez – Congrès Recherche d’Information et Applications (CORIA’2004) : J. Martinez, N. Mouaddib – Congrès BDA’2004 : N. Mouaddib 2003 – Journees Bases de Donnees Avancees (BDA), 2003 : J. Martinez – Atelier “Information retrieval : scaling up the size of corpus” avec le Congrès sur l’Informatique des Systèmes d’Information et de Décision (INFORSID), 2003 : J. Martinez – Journées francophones sur la Logique Floue et ses Applications, N.Mouaddib 2.8.3 Organisation de congrès – N. Mouaddib et G. Raschia organiseront, avec P. Valduriez, le congrès EDBT à Nantes, en 2008. EDBT est un congrès international majeur dans le domaine des bases de données, – L’équipe a organisé les rencontres francophones sur la Logique Floue et ses Applications (LFA), 18-19 novembre 2004, Nantes, GRIM : Gestion et Résumé d’Information Multimédia 75 – J. Martinez a été responsable du site internet de ACM SIGMOD 2004, Paris. – J.Cohen est membre du comité d’organisation (poster chair, demonstration chair) de European Conference on Object-Oriented Programming (ECOOP’2006), Nantes. 2.8.4 Impact sur la formation universitaire Les thèmes de l’équipe, gestion de l’information multimédia et résumés de données, font l’objet d’enseignements de troisième cycle : les membres de l’équipe interviennent dans le master ALD (Architectures Logicielles Distribuées), J.Martinez a été responsable de ce master lors sa première année d’existence (2004-2005). Ces thèmes sont également l’objet d’enseignement dans la troisième année du cycle ingénieur en informatique, à l’Ecole polytechnique de l’université de Nantes. 2.9 Publications de référence de l’équipe hors période [1] F. A NDR ÈS, N. D ESSAIGNE, J. M ARTINEZ, N. M OUADDIB, K. O NO, D. C. S CHMIDT, et P. T OSU KHOWONG . A flexible image search engine. In Proceedings of the 7th ACM Multimedia Conference (ACM MM’99), volume 2, pages 87–90, Orlando, Florida, USA, Octobre 1999. ISBN : 1-58113151-8. [2] P. B OUTHEMY, M. G ELGON, et F. G ANANSIA. A unified approach to shot change detection and camera motion characterization. IEEE Trans. on Circuits and Systems for Video Technology, 9(7) :1030–1044, 1999. ISSN : 1051-8215. [3] M. G ELGON et P. B OUTHEMY. A region-level motion-based graph representation and labeling for tracking a spatial image partition. Pattern Recognition, 33(4) :725–740. Elsevier, mars 2000. ISSN : 0031-3203. [4] R. L UTFI, M. G ELGON, et J. M ARTINEZ. Vers une base de données radiophonique. Ingéniérie des Systèmes d’Information (ISI), RTSI série ISI-NIS, 7(5-6) :119–140. Hermès Science, 2002. ISBN : 2-74620-0684-6. [5] J. M ARTINEZ. Database browsing. Journal of Research and Practice in Information Technology (JRPIT), Australian Computer Society Inc., 34(1) :20–33, Février 2002. [6] J. M ARTINEZ et E. L OISANT. Browsing image databases with Galois’ lattices. In Proceedings of the 17th ACM International Symposium on Applied Computing (SAC’02), Multimedia and Visualisation Track, pages 971–975, Madrid, Spain, Mars 2002. ACM Computer Press. ISBN : 1-58111239-5. [7] J. M ARTINEZ et N. M OUADDIB. Multimedia and databases : A survey. Networking and Information Systems Journal (NISJ), 2(1) :89–123. Hermès Science, 1999. ISBN : 2-74620-046-5. [8] G. R ASCHIA et N. M OUADDIB. A fuzzy set-based approach to database summarization. Int. Journal of Fuzzy Sets and Systems, 129(2) :137–162, July 2002. [9] R. S AINT-PAUL, G. R ASCHIA, et N. M OUADDIB. Prototyping and browsing image databases using linguistic summaries. In Proc. of the 11th IEEE Int. Conf. on Fuzzy Systems (FUZZ-IEEE’2002), volume 1, pages 476–481, Hawaı̈, USA, May 2002. ISBN : 0-7803-7281-6. 76 Rapport d’activité LINA 2003–2006 2.10 Publications de référence de l’équipe dans la période [10] D. D UBOIS, H. P RADE, et L. U GHETTO. A new perspective on reasoning with fuzzy rules. International Journal of Intelligent Systems, 18(5) :541–563, 2003. [11] A. N IKSERESHT et M. G ELGON. Decentralized distributed learning of a multimedia class for content-based indexing. In 14th Euromicro Conference on Parallel, Distributed and Network-based Processing (PDP 2006). IEEE Computer Society., pages 373–379, Montbeliard-Sochaux, France, February 2006. IEEE Computer Society. ISBN : 0-7695-2513-X. [12] A. P IGEAU et M. G ELGON. Building and tracking hierarchical partitions of image collections on mobile devices. In H. J. Z HANG, T.-S. C HUA, R. S TEINMETZ, M. S. K ANKANHALLI, et L. W ILCOX, réds., ACM Multimedia conference, pages 141–150, Singapore, November 2005. ACM. ISBN : 1-59593-044-2. [13] J. ROUGUI, M. G ELGON, M. R ZIZA, J. M ARTINEZ, et D. A BOUTAJDINE. Fast incremental clustering of Gaussian mixture speaker models for scaling up retrieval in on-line broadcast. In Proc. of IEEE International Conference on Acoustics, Speech and Signal Processing (ICASSP 2006), pages 521–524, Toulouse, France, May 2006. ISBN : 1-4244-0469-X/06/. [14] R. S AINT-PAUL, G. R ASCHIA, et N. M OUADDIB. General purpose database summarization. In K. B ÖHM, C. S. J ENSEN, L. M. H AAS, M. L. K ERSTEN, P.-A. L ARSON, et B. C. O OI, réds., Proc. of the 31st International Conference on Very Large Databases (VLDB 2005), pages 733– 744, Trondheim, Norway, August 2005. Morgan Kaufmann Publishers. ISBN : 81-59593-154-6, 1-59593-177-5. [15] W. VOGLOZIN, G. R ASCHIA, L. U GHETTO, et N. M OUADDIB. Querying a summary of database. Journal of Intelligent Information Systems (JIIS), 26(1) :59–73, January 2006. ISSN : 0925-9902 (Paper) 1573-7675 (Online). 2.11 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [16] B. B ENATALLAH, M. H ASSAN, N. M OUADDIB, H. PAIK, et F. T OUMANI. Building and querying an e-catalog network using P2P and data summarisation techniques. Journal of Intelligent Information Systems (JIIS), 26(1) :7–24, January 2006. ISSN : 0925-9902 (Paper) 1573-7675 (Online). [17] M. G ELGON, P. B OUTHEMY, et J.-P. L E C ADRE. Recovering and associating the trajectories of multiple moving objects in an image sequence with a PMHT approach. Image and Vision Computing, 23(1) :19–31. Elsevier, January 2005. ISSN : 0262-8856. [18] E. L OISANT, H. I SHIKAWA, J. M ARTINEZ, O. M ANABU, et K. K ATAYAMA. User-adaptive navigation structures for image retrieval. DBSJ Letters, 3(1) :133–136, June 2004. ISSN : 1347-8915. [19] E. L OISANT, J. M ARTINEZ, H. I SHIKAWA, M. O HTA, et K. K ATAYAMA. Galois lattices as a classification technique for image retrieval. IPSJ Digital Courier, 2 :1–13, 2006. ISSN : 13497456 (Online). [20] R. L UTFI, M. G ELGON, et J. M ARTINEZ. Structuring and querying documents in an audio database management system. Multimedia Tools and Applications, 24(2) :105–123. Kluwer Academic, Novembre 2004. ISSN : 1380-7501 (1573-7721 online). GRIM : Gestion et Résumé d’Information Multimédia 77 [21] A. P IGEAU et M. G ELGON. Organizing a personal image collection with statistical model-based icl clustering on spatio-temporal camera phone meta-data. Journal of Visual Communication and Image Representation, 15(3) :425–445. Elsevier, September 2004. A2. Revues d’audience nationale avec comité de lecture [22] M. B OUGHANEM, S. C ALABRETTO, J.-P. C HEVALLET, J. M ARTINEZ, et L. L ECHANI -TAMINE. Un nouveau passage à l’échelle en recherche d’information ? Ingéniérie des Systèmes d’Information (ISI’06), RTSI série ISI-NIS. Hermès Science, 2006. A paraitre. [23] I. M BAYE, J. M ARTINEZ, et R. O ULAD H AJ T HAMI. Un modèle d’indexation de la vidéo. Ingénierie des Systèmes d’Information (ISI), RTSI série ISI-NIS, 8(5–6) :173–196. Hermès Science, 2003. [24] R. S AINT-PAUL, G. R ASCHIA, et N. M OUADDIB. Résumé de bases de données : application au domaine bancaire. Technique et Science Informatiques (TSI), 22 :1353–1379. Hermes, 2003. D1. Colloques de diffusion internationale avec comité de lecture et actes [25] C. C ANDILLIER, P. C OURONN É, M. G ELGON, et N. M OUADDIB. Msat : A multiscale spatial analysis tool. In Proc. of the 19th International Conference : Informatics for Environmental Protection (Enviroinfo 2005), page 302, Brno, Czech Republic, September 2005. ISBN : 80-210-3780-6. [26] L. C ARMINATI, J. B ENOIS, et M. G ELGON. Human detection and tracking for video surveillance applications in a low-density environment. In S. . 786X, réd., SPIE Visual Communications and Im age Processing conference, pages 51–60, Lugano, Switzerland, Juillet 2003. [27] N. D ESSAIGNE et J. M ARTINEZ. A model for describing and annotating documents. In J. H ENNO, H. JAAKKOLA, H. K ANGASSALO, et Y. K IYOKI, réds., 15th European-Japanese Conference on Information Modelling and Knowledge Bases (EJC 2005), volume XVII of Frontiers in Artificial Intelligence and Applications, Tallinn, Estonia, May 2005. IOS Press, Amsterdam. ISBN : 1-58603591-6. [28] N. D ESSAIGNE et J. M ARTINEZ. A model for describing and annotating documents. In Y. K IYOKI, J. H ENNO, H. JAAKKOLA, et K ANGASSALO, réds., Information Modelling and Knowledge Bases, volume 136 of Frontiers in Artificial Intelligence and Applications. IOS Press, Amsterdam, Février 2006. ISBN : 1-58603-591-6. [29] N. I DRISSI, J. M ARTINEZ, et D. A BOUTAJDINE. On the use of co-occurrence matrices for texture description in image databases. In International Conference on Modeling and Simulation (ICMS 2005), Marrakech, Morocco, November 2005. [30] N. I DRISSI, J. M ARTINEZ, et D. A BOUTAJDINE. Selecting a discriminant subset of co-occurrence matrix features for texture-based image retrieval. In G. B EBIS, R. D. B OYLE, D. KORACIN, et B. PARVIN, réds., International Symposium on Visual Computing (ISVC 2005), volume 3804 of Lecture Kinds in Computer Science, pages 696–703, Lake Tahoe, Nevada, USA, December 2005. Springer. ISBN : 3-540-30750-8. [31] N. I DRISSI, J. M ARTINEZ, et D. A BOUTAJDINE. Selection of a discriminant subset of cooccurrence matrix features for image search-by-content. In IEEE International Conference on Computer Systems and Information Technology (ICSIT 2005), volume 1, pages 267–272, Algiers, Algeria, July 2005. Centre de Développement des Technologies Avancées. 78 Rapport d’activité LINA 2003–2006 [32] E. L OISANT, H. I SHIKAWA, J. M ARTINEZ, O. M ANABU, et K. K ATAYAMA. User-adaptive navigation structures for image retrieval. In Data Engineering Workshop (DEWS 2004), Iseshima, Japan, March 2004. Database Society of Japan. ISSN : 1347-4413. [33] E. L OISANT, J. M ARTINEZ, H. I SHIKAWA, M. O HTA, et K. K ATAYAMA. Building an image navigation structure from a fuzzy relationship. In I. C. S OCIETY, réd., Proc of the 1st IEEE International Workshop on Managing Data for Emerging Multimedia Applications (EMMA 2005), page 1179, Tokyo, Japan, April 2005. ISBN : 0-7695-2285-8. [34] I. M BAYE, R. O ULAD H AJ T HAMI, et J. M ARTINEZ. A model for indexing videos and still images from the moroccan cultural heritage. In IEEE International Workshop on Multimedia Signal Processing (MMSP 2005), Shangai, China, October-November 2005. [35] L. NAOUM, G. R ASCHIA, et N. M OUADDIB. Manipulating fuzzy summaries of databases : Unary operators and their properties. In Proc. of the Joint 4th EUSFLAT & 11th LFA Conference (EUSFLAT-LFA 2005), pages 1194–1200, Barcelona, Spain, September 2005. Universitat Politécnica de Catalunya. ISBN : 84-7653-872-3. [36] L. NAOUM, G. R ASCHIA, et N. M OUADDIB. Towards on-line analytical processing for database summaries : The core algebra. In IEEE International Conference on Fuzzy Systems (FUZZ-IEEE), page To appear, Vancouver, Canada, July 2006. IEEE Press. ISBN : To appear, ISSN : To appear. [37] A. N IKSERESHT et M. G ELGON. Low-cost distributed learning of a Gaussian mixture model for multimedia content-based indexing on a P2P network. In H. J. Z HANG, T.-S. C HUA, R. S TEIN METZ, M. S. K ANKANHALLI, et L. W ILCOX , réds., ACM SIGMM Workshop on Multimedia Information Retrieval (MIR 2005), pages 44–51, Singapore, November 2005. ACM. ISBN : 1-59593244-5. [38] Q.-K. P HAM, N. M OUADDIB, et G. R ASCHIA. Data stream synopsis using saintetiq. In H. L E GIND L ARSEN , G. PASI, D. O RTIZ -A RROYO , T. A NDREASEN , et H. C HRISTIANSEN , réds., 7th International Conference on Flexible Query Systems (FQAS 2006), volume 4027 of Lecture Kinds in Computer Science, pages 530–540, Milano, Italy, May 2006. Springer-Verlag. ISBN : 3-54034638-4. [39] A. P IGEAU et M. G ELGON. Spatio-temporal organization of one’s personal image collection with model-based icl-clustering. In 3rd Int. Workshop on Content-Based Multimedia Indexing (CBMI’2003), pages 111–118, Rennes, France, Septembre 2003. [40] A. P IGEAU et M. G ELGON. Incremental statistical geo-temporal structuring of a personal camera phone image collection. In Proc. of the 17th International Conference on Pattern Recognition (ICPR 2004), pages 224–228, Cambridge, U.K., August 2004. IEEE Computer Society. ISBN : 0-7695-2128-2. [41] A. P IGEAU, G. R ASCHIA, M. G ELGON, N. M OUADDIB, et R. S AINT-PAUL. A fuzzy linguistic summarization technique for tv recommender systems. In IEEE Int. Conf. of Fuzzy Systems (FUZZIEEE’2003), pages 743–748, St-Louis, USA, Mai 2003. [42] J. ROUGUI, M. G ELGON, M. R ZIZA, J. M ARTINEZ, et D. A BOUTAJDINE. Hierarchical clustering of mixture models for scaling up speaker recognition. In Proc. of ACM Symposium on applied computing (SAC 2006), pages 1369–1373, Dijon, France, April 2006. ISBN : 1-59593-108-2/06/00004. [43] L. U GHETTO, A.VOGLOZIN, et N. M AOUDDIB. Personalized database querying using data summaries. In IEEE International Conference on Fuzzy Systems (FUZZ-IEEE), page To appear, Vancouver, Canada, July 2006. IEEE Press. ISBN : To appear, ISSN : To appear. GRIM : Gestion et Résumé d’Information Multimédia 79 [44] W. VOGLOZIN, G. R ASCHIA, L. U GHETTO, et N. M OUADDIB. Querying the S AINT E TI Q summaries – a first attempt. In Proc. of the 6th Int. Conf. on Flexible Query Answering Systems (FQAS 2004), pages 404–417, Lyon, France, June 2004. Springer. ISBN : 3-540-22160-3, ISSN : 03029743. [45] W. VOGLOZIN, G. R ASCHIA, L. U GHETTO, et N. M OUADDIB. Querying the saintetiq summaries – dealing with null answers. In Proc. of the 14th IEEE International Conference on Fuzzy Systems (FUZZ-IEEE 05), volume 1, pages 585–590, Reno, Nevada, USA, May 2005. ISBN : 0780391586, ISSN : 10987584. D2. Colloques de diffusion nationale avec comité de lecture et actes [46] C. C ANDILLIER et N. M OUADDIB. Outil de classification et de visualisation de grands volumes de données mixtes. In S. P INSON et N. V INCENT, réds., Actes des 5èmes journées d’Extraction et de Gestion des Connaissances (EGC 2005), Revue des Nouvelles Technologies de l’Information (RNTI-E-3), Paris, France, January 2005. Cépaduès-Editions. ISBN : 2.85428.677.4. [47] N. D ESSAIGNE. Les ontologies dans l’entreprise pour le non structuré : enjeux et cas concrets. In AFIA2003, journée Web Sémantique, Laval, France, July 2003. [48] E. L OISANT, R. S AINT-PAUL, J. M ARTINEZ, G. R ASCHIA, et N. M OUADDIB. Browsing clusters of similar images. In Actes des 19e Journées Bases de Donnéees Avancéees (BDA’2003), Lyon, France, Octobre 2003. [49] J. M ARTINEZ et P. VALDURIEZ. Vers un passage à l’échelle dans un SGBD d’images. In Conférence en Recherche d’Information et Applications (CORIA 2004), pages 347–361, Toulouse, France, March 2004. IRIT. ISBN : 2-9520326-2-9. [50] I. M BAYE, J. M ARTINEZ, et R. O. H. T HAMI. Un modèle de découpage progressif et d’indexation de la vidéo par le contenu. In 2e Journées NTIC, Ecole Nationale des Sciences Appliquées, Tanger, Maroc, Avril 2003. [51] N. M OUADDIB et J. M ARTINEZ. Résumé de bases de données et application au données multimédias. In 2e Rencontres Inter-Associations (AFIA, ARIA, EGC, INFORSID, SFC, SFDS, LMO, ASTI) : La classification et ses applications (RIAs’2006), Bron (Lyon), France, Mars 20-21 2006. [52] A. N IKSERESHT et M. G ELGON. Agrégation légère de mélange de lois gaussiennes en vue de l’indexation multimédia répartie. In Congrès Reconnaissance des Formes et Intelligence Artificielle (RFIA 2006), Tours, France, January 2006. ISBN : 2-86906-216-8, ISSN : 1772-4953, Actes disponibles sur http ://www.afrif.asso.fr/archive/rfia2006/idx-theme.html. [53] A. P IGEAU et M. G ELGON. Organistion statistique spatio-temporelle d’une collection d’images acquises d’un terminal mobile géolocalisé. In Congrès Reconnaissance des Formes et Intelligence Artificielle (RFIA 2004), volume 1, pages 76–84, LAAS/Toulouse, France, January 2004. [54] A. P IGEAU et M. G ELGON. Construction et suivi d’une hiérarchie de partitions géo-temporelles pour les collections d’images sur appareils mobiles. In Congrès Reconnaissance des Formes et Intelligence Artificielle (RFIA 2006), Tours, France, January 2006. ISBN : 2-86906-216-8, ISSN : 1772-4953, Actes disponibles sur http ://www.afrif.asso.fr/archive/rfia2006/idx-theme.html. [55] R. S AINT-PAUL, G. R ASCHIA, et N. M OUADDIB. Résumé généraliste de bases de donnéees. In V. B ENZAKEN, réd., Proc. of Bases de Données Avancées (BDA 2005), St-Malo, France, October 2005. Université de Rennes 1. ISBN : Non referenced. 80 Rapport d’activité LINA 2003–2006 [56] W. VOGLOZIN, G. R ASCHIA, L. U GHETTO, et N. M OUADDIB. Interrogation de résumés de données et réparation de requêtes. In 12es rencontres francophones sur la Logique Floue et ses Applications (LFA 2004), pages 239–246, Nantes, France, November 2004. Cépaduès Editions. ISBN : 2.85428.661.8. E. Colloques (avec ou sans actes) à diffusion restreinte [57] L. E SSANNOUNI, M. R ZIZA, D. A BOUTAJDINE, M. G ELGON, et N. M OUADDIB. Détection de visages en utilisant les machines à vecteurs de support. In ENST-B RETAGNE, réd., International Symposium on Image and Video communications over Fixed and Mobile Networks (ISIVC 2004), volume XXII, pages 31–36, ENSTB, Brest, France, July 2004. GLAT. ISBN : 2-908849-13-5(br.). [58] N. I DRISSI, G. M ARTINEZ , J. AND R ASCHIA, D. A BOUTAJDINE, et N. M OUADDIB. On the use of co-occurrence matrices for texture description in image databases. In Workshop sur les Technologies de l’Information et de la Communication (WOTIC 2005), Kenitra, Morocco, June 2005. [59] I. M BAYE, R. O ULAD H AJ T HAMI, et J. M ARTINEZ. Navigation dans une base d’images et de vidéos : application au patrimoine culturel marocain. In Workshop sur les Technologies de l’Information et de la Communication (WOTIC 2005), Kenitra, Morocco, June 2005. [60] A. P IGEAU et M. G ELGON. Hybrid spatio-temporal structuring and browsing of an image collection acquired from a personal camera phone. In ENST-B RETAGNE, réd., International Symposium on Image and Video communications over Fixed and Mobile Networks (ISIVC 2004), volume XXII, pages 53–58, ENSTB, Brest, France, July 2004. GLAT. ISBN : 2-908849-13-5(br.). F1. Ouvrages ou chapitres d’ouvrage scientifique [61] M. G ELGON et R. H AMMOUD. Building object-based hyperlinks in videos, in Interactive video : methods and applications (R.Hammoud, ed.), pages 45–66. Springer Verlag NY, Series Signal and Communication Technology, May 2006. ISBN : 3540332146. G. Autres manifestations sans actes [62] J. M ANJARREZ, J. M ARTINEZ, et P. VALDURIEZ. High-dimensional data allocation in a sharednothing cluster (on-going research). Réunion de travail de l’ACI MDP2P, LINA, Université de Nantes, Avril 2006. [63] J. M ARTINEZ. Gestion de bases d’images sur un réseau : un panorama de propositions. In Journées masses de données en pair-à-pair (ACI MDP2P), Orsay, France, March 2005. [64] J. M ARTINEZ. Classification et parallélisme pour une recherche efficiente par le contenu. Réunion de travail de l’ACI MDP2P, LINA, Université de Nantes, Avril 2006. [65] A. P IGEAU et M. G ELGON. Collections multimedia personnelles sur les mobiles : problèmes et perspectives. Journée du GDR-ISIS ”Les applications de l’indexation multimédia : mythes ou réalités”., Janvier 2003. H. DEA, thèses et habilitations [66] N. D ESSAIGNE. Le modèle DOAN : modélisation de l’information complexe appliquée à la plateforme Arisem Kaliwatch Server. PhD thesis, Université de Nantes, Décembre 2005. GRIM : Gestion et Résumé d’Information Multimédia 81 [67] F. E VEN. Extraction d’information et modélisation de connaissance à partir de notes de communication orale. PhD thesis, Université de Nantes, 2005. [68] G. G AUMER. Résumé de données en Extraction de Connaissances à partir des Données (ECD). Application aux données relationnelles et textuelles. PhD thesis, Université de Nantes, Février 2003. [69] E. L OISANT. Browsing a Classification of an Image Collection. PhD thesis, Université de Nantes, Décembre 2005. [70] R. L UTFI. Indexation ”intelligente” et recherche par le contenu de l’audio. PhD thesis, University of Nantes, 2003. [71] A. P IGEAU. Structuration geo-temporelle de données multimédia personnelles pour la navigation sur terminal mobile. PhD thesis, Université de Nantes, Décembre 2005. [72] R. S AINT-PAUL. Une architecture pour le résumé en ligne de données relationnelles et ses applications. PhD thesis, Université de Nantes, Juillet 2005. K. Brevets [73] A. M YKA, Y. Y RJ ÄNAINEN, et M. G ELGON. Enhanced storing of personal content. US Patent 16660/10502275, Nokia corp., July 2004. Équipe projet COLOSS : Composants et Logiciels Sûrs 3.1 Composition de l’équipe L’équipe s’est constituée en juillet 2005 avec les membres cités ci-dessous. Responsable : Christian Attiogbé Chercheurs-Enseignants : – Pascal André maı̂tre de conférences, Université de Nantes, 01/09/1996, en coopération en Côte d’Ivoire à l’INPHB de 1999 à 2003 – Gilles Ardourel maı̂tre de conférences, Université de Nantes, 01/09/2003 – Christian Attiogbé maı̂tre de conférences, Université de Nantes, 01/09/1994 – Henri Habrias professeur, Université de Nantes, 01/09/1991 Chercheur associé : – Alain Vailly maı̂tre de conférences, Université de Nantes, 01/09/1992 Chercheurs doctorants : – Gwen Salaün (encadré par C. Attiogbé) Bourse MNRT, 2001–2003, thèse soutenue en juin 2003 – Cédric Stoquer (encadré par H. Habrias) Bourse MNRT, 2003–, thèse démarrée le 01/10/2003 3.2 Présentation et objectifs généraux 3.2.1 Historique L’équipe-projet COLOSS s’est créée en juillet 2005 suite à une restructuration de l’ex-équipe MOC. Les membres de l’équipe constituaient alors l’un des trois thèmes de l’ex-équipe MOC (Modèles, Objets, Composants - cf rapport d’activité 2004 du LINA). Il s’agit du thème « Spécification, validation et 83 84 Rapport d’activité LINA 2003–2006 vérification d’architectures logicielles » où deux principales actions étaient développées : i) vérification de modèles et ii) concepts, mécanismes et outils multiparadigmes pour les composants logiciels. Le noyau de l’équipe (C. Attiogbé et H. Habrias) qui a une coloration forte dans les thématiques liées aux méthodes formelles, a intégré en septembre 2002 l’équipe MOC et a développé les travaux sur l’intégration de méthodes formelles et la spécification multi-formalismes. En Septembre 2003, Gilles Ardourel et Pascal André intègrent l’équipe MOC et apportent des compétences sur les modèles à objets et les composants ; ils partagent des préoccupations communes sur les méthodes formelles. En avril 2004, nous avons initié un projet de recherche commun (Composants et logiciels sûrs) où les compétences en méthodes formelles étaient mises en œuvre sur les problématiques ”composants et architectures logicielles”. Ce projet constitue en partie la genèse des travaux poursuivis jusqu’au moment de la rédaction de ce rapport. 3.2.2 Objectifs principaux Notre objectif principal est de trouver des moyens pour construire des composants et des logiciels sûrs à l’aide de méthodes formelles. De façon générale, les recherches dans le domaine des méthodes formelles visent à offrir aux développeurs de meilleurs outils de travail et aux utilisateurs, des logiciels sûrs correspondant aux besoins exprimés. Plus particulièrement, nos objectifs sont l’étude et la mise au point de concepts, techniques et langages pour modéliser, concevoir, analyser et développer rigoureusement des logiciels corrects. Ces objectifs sont déclinés de différentes façons : – la recherche de modèles correspondant aux problèmes posés, leur étude (preuve de propriétés) et leur raffinement (passage de modèles abstraits aux codes concrets) ; – la recherche de techniques pour le développement de composants ou de logiciels modulaires sûrs et la vérification de propriétés sur les produits du développement (spécifications, programmes) ; – l’interaction entre modèles formels et les outils de raisonnement associés. Du point de vue pratique, l’objectif principal est l’élaboration de techniques et d’outils logiciels pour aider au développement des composants et des logiciels dont on peut garantir les propriétés. Les propriétés peuvent porter sur i) les systèmes modélisés : fiabilité, sûreté, vivacité, etc et ii) sur les modèles utilisés : cohérence (on ne peut pas déduire une propriété et son contraire), complétude (un modèle contient suffisament de propriétés pour que toute conjecture y soit démontrable ou non). Les sous-objectifs ciblés évaluables à moyen terme sont : – l’élaboration et la proposition de moyens langagiers pour spécifier et modéliser, – l’étude de concepts et mécanismes adaptés à la spécification de systèmes complexes (i.e. ceux qui ne se réduisent pas à un problème connu, mais qui nécessitent une abstraction non triviale), – l’étude de modèles sémantiques (structures mathématiques permettant d’interpréter les objets d’études, par opposition aux modèles de description qui ne véhiculent pas d’interprétations), de leur interactions et de leur utilisation conjointe dans des développements, – la définition de méthodes et d’environnements pour la construction de composants logiciels corrects par des approches compositionnelles, – l’élaboration de concepts, de mécanismes et d’outils pour assurer la qualité des composants logiciels (sûreté, extensibilité, maintenabilité), – la mise au point de bibliothèques (bases de spécification), de plateformes de spécification formelle et d’analyse formelle, COLOSS : Composants et Logiciels Sûrs 85 – la validation des spécifications formelles par leur liaison au besoin réel. 3.2.3 Les thèmes de recherche Elaborer des concepts, techniques et outils pour la spécification, l’analyse et le développement formels des composants et des logiciels sûrs. La spécification formelle (on parle aussi de modélisation formelle) est une démarche scientifique qui consiste, pour des fins d’étude, à élaborer une abstraction d’un phénomène ou d’un système (on en a ainsi un modèle qui est plus ou moins abstrait selon le niveau de détails considérer). On peut modéliser un système existant, ou bien modéliser un système à construire. L’analyse formelle consiste à étudier un système sur la base de sa spécification formelle et des propriétés spécifiques ou des propriétés générales. L’analyse permet de déceler les erreurs de la modélisation ou de s’assurer de la correction du modèle par rapport aux propriétés étudiées. Le développement formel consiste à partir d’une spécification formelle et à la transformer, par des raffinements successifs prouvés, en un code exécutable. Les recherches sur les composants logiciels, après ceux sur les objets et classes, se situent dans le prolongement des travaux sur la modularité. L’intérêt de la modularité des logiciels a été prouvé ; il s’agit de maı̂triser la construction et la maintenance de grandes applications logicielles. Un composant est une entité logicielle dotée d’une spécification précise, d’un fonctionnement précis et d’une interface permettant de l’utiliser dans la construction d’autres logiciels. Nous adoptons la vision module réutilisable à la PARNAS [76, 67], reprise dans les travaux de M EYER (Trusted Components [72]) et aussi dans bien d’autres travaux. Par sûreté, nous entendons un fonctionnement correct, sans défaillance ; c’est-à-dire un fonctionnement tel qu’il est prévu par les spécifications informelles puis les spécifications formelles. La modélisation et la technologie des composants font l’objet de nombreuses études depuis plusieurs années [79, 70, 60, 72]. Cependant de nombreux problèmes demeurent ; par exemple la construction de modèles mathématiquement corrects, la construction de composants sûrs, la preuve de correction des propriétés attendues des composants, la réutilisation des composants, les méthodes rigoureuses d’élaboration et de composition de composants, la validation d’une spécification du composant par son client, l’utilisation de plusieurs paradigmes dans un composant, etc. Les problèmes ouverts auxquels nous nous intéressons sont de différents types : – fondamental : élaboration de concepts et de méthodes de modélisation et de développement, analyse des modèles issus des spécifications, étude de problèmes généraux dont les solutions peuvent être utilisés dans d’autres contextes similaires, étude des interactions sémantiques entre différentes approches d’analyse formelle, mise au point de systèmes de raisonnement, etc ; – technologique : applications directes sur des cas concrets, mise au point d’outils pour spécifier et développer, élaboration de solutions ad hoc selon des cas d’étude, etc. Nous attaquons ces problèmes en nous basant sur des méthodes formelles fondées sur la logique, les systèmes de transition, les algèbres de processus, la preuve de théorème, l’évaluation de modèle (model checking) ; ces aspects sont détaillés ci-dessous. 86 Rapport d’activité LINA 2003–2006 En somme, les thèmes de recherche développés dans notre équipe sont des préoccupations importantes identifiées clairement en génie logiciel et plus particulièrement dans les communautés méthodes formelles et composants logiciels. Le positionnement de nos travaux dans ces communautés se situe à la frontière entre les travaux théoriques et les travaux plus technologiques. Ceci est en soi une de nos spécificités ; en effet, les groupes de recherche se situent souvent dans l’une ou l’autre communauté. Nous avons structuré nos travaux en deux actions principales présentées ci-après. Spécification et vérification des modèles à objets et à composants Le cadre général est celui de l’ingénierie de logiciels à base de composants (CBSE) où plusieurs axes sont développés : conception (Component-Based Design) ; programmation (Component-Based Programming) et vérification de propriétés. Nous travaillons spécifiquement sur les axes conception et vérification de propriétés des composants. La préoccupation principale consiste à s’assurer de la correction des composants utilisés dans les assemblages de composants et aussi celle des architectures logicielles ainsi construites. De bonnes techniques de spécification sont nécessaires en amont. La spécification formelle d’un composant induit des modèles permettant de vérifier mathématiquement les propriétés attendues du (sous-)système réel et ensuite de le développer par des raffinements successifs. La complexité croissante des systèmes informatiques impose pour leur étude et développement le recours d’une part, aux approches modulaires et, d’autre part, aux méthodes rigoureuses. Les approches modulaires, et plus particulièrement celles orientées objets, composants ou services, induisent un découpage structurel du logiciel et permettent ainsi de répartir l’effort de développement et les coûts et aussi de factoriser les produits (capitalisation). Les modèles à objets ont eu un impact considérable dans l’industrie du logiciel. Ils ont été adoptés pour la conception et la programmation. Plus spécifiquement, la notation UML (Unified Modelling Language) a suscité des initiatives de consortium d’industriels tels que l’OMG (Object Management Group) pour en faire un modèle standard. De ce fait, malgré les limitations de UML –notamment dues au manque de sémantique globale et à la multitude des éléments manipulés– son usage s’est généralisé et il a servi (et sert encore) de langage de modélisation de nombreux systèmes devenus des systèmes patrimoniaux (legacy systems), pour lesquels se pose le problème de la maintenance et/ou de la réingénierie. D’où la nécessité de disposer de techniques et d’outils permettant d’analyser les modèles résultants. Dans ce cadre, nous travaillons à la vérification des modèles à objets à la UML. Ces préoccupations sont aussi l’objet d’étude d’autres groupes de recherche tel que le groupe pUML [63] sur la formalisation de la notation UML. Contrairement à la plupart des travaux du domaine, nous ne nous focalisons pas sur une description figée et complète d’un modèle mais sur des descriptions variant selon le positionnement dans un processus. Nous cherchons des moyens pour décrire et implanter des règles de vérification de modèles d’architectures logicielles au niveau de leur méta-modèle. Ces règles concernent la validité des modèles (cohérence entre diagrammes, complétude) ainsi que le respect de critères de qualité logicielle (notamment sur le couplage et le contrôle d’accès [55]). Nous travaillons sur des modèles UML, éventuellement enrichis [10], variant selon leur utilisation dans le processus de conception. Nous nous inspirons de travaux sur la sémantique des diagrammes de classes et d’objets d’UML avec les spécifications algébriques ou à l’aide de modèles spécifiques au problème traité ([55] pour la protection), ainsi que sur la détection d’incohérences. Afin d’implanter nos algorithmes, nous participons à l’évolution de l’outil Bosco [12]. Il s’agit d’un générateur de code qui permet de traiter des modèles COLOSS : Composants et Logiciels Sûrs 87 décrits dans un modèle (méta-modèle) qui est lui-même une entrée de l’outil. Cette approche permettra de s’adapter à d’autres modèles, notamment aux modèles par composants. Notre démarche est décrite dans [50] et constitue un chapitre de [51]. L’approche de développement de logiciels à base de composants (Component-Based Software Engineering - CBSE) [79, 72, 70] ouvre des champs d’investigation additionnels par rapport aux cycles de développement classiques. Ce développement ne remet pas fondamentalement en cause les cycles classiques de développement. Cependant, il pose de nouvelles questions : développement des composants corrects, indépendants des plateformes d’exécution, réutilisables dans diverses applications, maintenables sans effets dommageables pour les applications qui les utilisent, robustes par rapport à la migration des plateformes. Ces questions avaient fait l’objet de travaux de recherche autour des modules, des classes et par conséquent des méthodes et des résultats sont exploitables. Nous recherchons donc des voies et moyens pour : – concevoir et développer des systèmes à partir de composants et services prédéfinis et validés, – réutiliser ces composants dans d’autres applications, – faciliter leur maintenance, leur vérification et leur évolution, – vérifier la conformité des interactions entre composants et détecter les incompatibilités, – faciliter leur adaptabilité pour offrir de nouvelles fonctionnalités. Intégration de méthodes formelles et analyse multifacette Nous nous consacrons ici à l’élaboration des concepts, des mécanismes et des outils multiparadigmes pour le développement formel des logiciels. L’aspect multiparadigme (intégration de plusieurs langages/méthodes/techniques) constitue l’une des originalités de nos travaux ; en effet contrairement à d’autres approches formelles, nous mettons l’accent sur la nécessaire complémentarité des langages, méthodes et outils pour réussir le développement des systèmes complexes. Certaines insuffisances des méthodes de spécification ou de développement (telles que le déséquilibre dans la prise en compte des différents paradigmes, les limitations ou les manques dans les systèmes de raisonnement, etc) peuvent être corrigées en intégrant des méthodes complémentaires du point de vue de leurs apports respectifs au développement des systèmes complexes. L’intégration ainsi envisagée est une solution qui ne sera effective qu’après la résolution de plusieurs problèmes aujourd’hui ouverts : – expression dans un cadre formel homogène (possibilité de se ramener à un cadre logique de référence pour interpréter et raisonner sur les objets décrits), de la description d’un système complexe en utilisant éventuellement diverses logiques et techniques appropriées aux aspects considérés du système. – raisonnement sur l’ensemble du système ainsi décrit (les problèmes fondamentaux ici relèvent de l’interaction entre modèles sémantiques différents) et possibilité de raffinement jusqu’au code implantant le système. Par conséquent nous nous préoccupons des problèmes liés à l’élaboration des modèles sémantiques appropriés aux méthodes intégrées, puis des environnements d’expérimentation et d’analyse formelle associés (vérification de propriétés) ; l’analyse devra être multifacette pour prendre en compte les aspects différents impliqués dans l’intégration. Nous traitons essentiellement les aspects liés à la vérification par la preuve de théorèmes (theorem proving), pendant la construction du système. Avec la méthode B par exemple, on prouve qu’un niveau concret correspond bien à un niveau abstrait (raffinement). L’évaluation de modèles (model-checking) est 88 Rapport d’activité LINA 2003–2006 l’autre technique de vérification que nous utilisons pour mettre l’accent sur la couverture de propriétés dites de vivacité. La combinaison des deux principales techniques est indispensable dans ce cadre. La technologie des composants peut bénéficier de ces travaux via la production de composants sûrs. Nos recherches s’appuient, entre autres, sur le langage Z, les algèbres de processus, la méthode B, le système PVS, le système SPIN, le GRAFCET, la notation UML. En guise d’expérimentation, nous étudions plusieurs cas de spécification, puis le passage d’un modèle sémantique à un autre ; – l’interaction entre les systèmes abstraits B et les processus asynchrones concurrents ; interaction entre les outils associés par exemple, B et SPIN, B et Réseaux de Petri, B et Grafcet, etc – la formalisation du GRAFCET en systèmes abstraits B afin de disposer des outils d’analyse formelle de B pour les spécifications à base de GRAFCET (principal objet de la thèse de Cédric Stoquer sous la direction de Henri Habrias). 3.2.4 Perspectives En perspectives, nous devons faire la preuve des concepts sur des prototypes de recherche (éventuellement transférables en industrie). Nous visons : – La production de concepts et langages de référence pour une technologie rigoureuse des composants. Les bases de tels langages existent déjà ; nous avons développé un modèle à composants et le langage de spécification associé : Kmelia. Comparé aux modèles existants tels que EJB, CCM, .NET, notre modèle à composant, Kmelia, ne se situe pas au niveau programmation mais il suit le cycle classique de développement (allant de l’abstrait au concret) ; il est indépendant des plateformes d’exécution et nous visons à pouvoir raffiner un modèle abstrait Kmelia vers différentes plate-formes d’exécution. – La constitution de bibliothèques de composants et spécifications réutilisables. La boı̂te à outils COSTO (cf section 3.5) développée conjointement avec l’élaboration de Kmelia constitue déjà les bases de telles bibliothèques. – La diffusion, non seulement à travres les publications académiques mais aussi sous forme de prototypes libres, des techniques, méthodes et outils de spécification et d’analyse formelle multifacette. Les bases sont là aussi posées avec ORYX, NABLA, CBS, ATACORA, Grafcet2B (cf section 3.5). 3.3 Fondements scientifiques Nos travaux se situent dans la lignée des recherches fondamentales sur les méthodes formelles, les approches modulaires, les algèbres de processus, les modèles sémantiques, etc : Dijkstra[61, 62], Parnas[76, 67], Gries [64, 58] Hoare [65, 66], Milner[73, 74], Khan [68], Abrial [48], les handbooks [81, 82] et d’autres encore [77, 80, 56, 75, 59, 69, 72]. Les outils mis en œuvre relèvent de la logique, de l’algèbre et des mathématiques discrètes. Les spécifications formelles sont des modèles mathématiques de systèmes à étudier. Leur élaboration et la formalisation des propriétés des systèmes se basent sur les logiques classique et modale, l’algèbre, la théorie des ensembles, la théorie des types, la théorie des graphes, la théorie des automates, etc. Les fondements scientifiques de nos recherches sont donc bien établies et solides. Les approches et techniques que nous utilisons s’enracinent dans le cadre général des méthodes formelles. L’étude et le développement des systèmes informatiques exigent le recours aux méthodes rigoureuses (mathématiques) comme c’est le cas dans d’autres disciplines scientifiques. COLOSS : Composants et Logiciels Sûrs 89 Les méthodes formelles offrent le cadre scientifiquement rigoureux nécessaire pour valider la construction des systèmes informatiques qu’ils soient logiciels ou matériels, critiques ou non. L’exploitation des spécifications (analyse, raffinement) fait appel à la preuve de théorèmes, la théorie des graphes (analyse, couverture), la théorie des automates, la théorie du raffinement, la théorie des types, etc. La spécification formelle est une démarche qui consiste à élaborer une abstraction d’un système (existant ou non) pour des fins d’étude et de développement. Elle induit des modèles sémantiques permettant de vérifier mathématiquement les propriétés attendues du système réel et ensuite de le développer soit par une programmation rigoureuse soit par des raffinements successifs prouvés. Spécification et vérification de composants logiciels Notre approche de développement des composants s’appuie sur les méthodes formelles : spécification des composants et vérification de leurs propriétés. Les fondements classiques sont utilisés mais adaptés ici à des besoins spécifiques liés aux caractéristiques des composants. Les algèbres de processus par exemple permettent d’exprimer des comportements de composants ou des services. Les propriétés des composants (fonctionnelles, de surêté, de vivacité, etc) sont exprimées avec les approches traditionnelles en logiques classique ou modale. Du point de vue des approches formelles un composant est un modèle mathématique d’un système ouvert ou fermé, mono-service ou multi-service, et à communication synchrone ou asynchrone avec son environnement. Un composant ou un logiciel est formellement spécifié à l’aide des modèles logiques, des modèles à états ou des axiomatisations et des combinaisons adéquates de ces modèles. Le composant est ensuite validé à travers l’étude de ses propriétés. L’étude des propriétés est effectuée par la preuve de théorèmes ou l’évaluation de modèles. L’assemblage de composants est défini à l’aide d’opérateurs de composition munis de contraintes spécifiques. Les outils de la logique, de la théorie des ensembles, de l’algèbre ou de la théorie des graphes sont utilisés. Le problème (ouvert) de la compositionalité est de nouveau au premier plan. En effet les travaux sur la compositionalité (préservation des propriétés des parties composées, et déduction des propriétés du tout à partir de celles des parties lorsqu’on les compose), avaient été longtemps étudié notamment (Gries, Owicki, etc), puis se sont estompés. Or la vérification de propriétés dans le cadre de l’approche de développement à l’aide de composants est intrinsèquement liée à la composition des composants et de leurs propriétés. La composition de composants hétérogènes (différents modèles sous-jacents) peut être ramenée aux problèmes abordés par ailleurs dans le cadre de l’intégration de méthodes formelles (interaction entre modèles sémantiques et système d’analyse multifacette). Intégration de méthodes formelles et analyse multifacette La logique formelle et la sémantique constituent les fondements des travaux sur l’intégration de méthodes. En effet, intégrer des méthodes consiste à assurer la cohérence des modèles sémantiques impliqués et pouvoir analyser des propriétés globales sur des modèles sémantiques différents. Les systèmes informatiques complexes (pas seulement du fait de leur grande taille mais aussi du fait qu’il n’est pas trivial de les appréhender) peuvent incorporer différents sous-systèmes ou composants 90 Rapport d’activité LINA 2003–2006 matériels ou logiciels provenant d’origines différentes. L’expression de la sémantique globale nécessite l’usage et l’adaptation des modèles sémantiques classiques. L’analyse des propriétés de tels systèmes requiert des modèles conçus par l’intégration des modèles associés à la spécification des différents sous-systèmes. L’expression de propriétés globalement cohérentes par rapport aux différents modèles intégrés est un problème de logique formelle. L’étude des propriétés des systèmes se ramène ici à l’interaction entre différents modèles sémantiques. Ce type de problème est abordé avec les outils logiques (Transfer Problem) et relève aussi de la combinaison de systèmes de raisonnement. Sur la base de compatibilité de modèles sémantiques (en recherchant des cadres formels unificateurs : systèmes de transition étiquetées, théorie des ensembles), des techniques d’encodage entre logiques sont employées afin d’exprimer et d’analyser les propriétés dans des cadres unifiés. L’analyse multifacette est fondée sur la combinaison des techniques de preuve de théorèmes et des techniques d’évaluation de modèles. 3.4 Domaines d’applications Les domaines qu’il nous semble important de citer comme exemples sont : – les systèmes concurrents et réactifs ; ils nécessitent le recours aux approches formelles du fait de la complexité intrinsèque à ce type de systèmes, – l’élaboration de composants logiciels certifiés corrects et leur composition pour décrire des logiciels plus grands (ou leurs architectures), – les protocoles et services de communication, – les systèmes enfouis dans les équipements domestiques ou industriels. De façon générale, les domaines d’application des méthodes formelles recouvrent potentiellement toutes les activités de développement du logiciel mais aussi du matériel. Cependant, le coût relativement élevé aujourd’hui (haut niveau de qualification des développeurs, délais de développement importants), de l’utilisation des méthodes formelles restreint les domaines d’application à ceux dits critiques. Composants certifiés corrects et logiciels à base de composants La contribution des méthodes formelles dans le domaine aujourd’hui appelé Component-based Software Engineering se traduit concrètement par : la spécification des composants, la preuve des propriétés voulues pour les composants, la détection de problèmes de cohérence, la génération de composants réutilisables, l’aide à l’assemblage de composants. Nous explorons des applications relatives à ces différents domaines cités ; concrètement nous travaillons sur les moyens langagiers pour spécifier les composants et leurs propriétés ; nous travaillons sur des techniques d’analyse des propriétés et nous développons des outils associés. Nous visons particulièrement deux cibles qui sont d’actualités dans le domaine des objets : d’une part le langage UML, un quasi-standard industriel mais qui est reconnu comme informel et d’autre part, les composants logiciels industriels (EJB, DCOM, CORBA/CCM) et des langages d’architectures. En ce qui concerne le développement des composants, nous considérons un cycle allant de la spécification formelle (d’un composant en tant qu’entité logicielle) jusqu’à son implantation en passant par des raffinements. Un utilisateur du composant peut se contenter de sa spécification formelle (composant abstrait) dans les phases de spécification et utiliser ensuite une implantation particulière de ce composant (composant concret) dans les phases d’implantation de son application. COLOSS : Composants et Logiciels Sûrs 91 Systèmes d’exploitation, systèmes distribués, systèmes enfouis Les systèmes enfouis (ou embarqués) sont de plus en plus présents dans les équipements courants. Un système enfoui est fondamentalement une version allégée d’un système d’exploitation ; il permet de gérer l’équipement ou les ressources offertes par celui-ci. La preuve des concepts sur les applications ou cas génériques connus en système d’exploitation permet d’envisager une mise à l’échelle. Nous appliquons nos techniques à l’étude de plusieurs problèmes génériques en systèmes d’exploitation (synchronisation[28], exclusion mutuelle[3], communication de groupe[5], etc). 3.5 Logiciels 3.5.1 BOSCO (Responsable: G. Sunyé) URL/DOI: bosco.tigris.org/ Mots-clés: MetaModèle, UML, Génération de code Équipe de développement: Pascal André, Gilles Ardourel, Gerson Sunyé Bosco est un générateur de code à deux niveaux qui permet de traiter des modèles décrits dans un modèle (méta-modèle) qui est lui-même une entrée de l’outil. Il est paramétré par des méta- modèles. Il accepte des modèles, décrits dans le méta-modèle, et génère le code associé ; ce code comprend différents traitements à appliquer au modèle, sous forme de visiteurs. Les entrées et paramètres sont des descriptions XMI conformes aux standards de l’OMG. Le code généré est pour l’instant du code Java, conforme au standard JMI. Bosco est un logiciel libre, accessible sur Internet 3.5.2 COSTO (Responsable: Gilles Ardourel) URL/DOI: Mots-clés: Composants, Verification Comportementale Équipe de développement: Pascal André, Gilles Ardourel, Christian Attiogbé COSTO (Component Study Toolbox) est une boı̂te à outils pour spécifier, analyser et développer des composants Kmelia. COSTO dispose d’un analyseur/compilateur de spécifications qui permet de compiler des spécifications Kmelia et de les représenter dans une structure abstraite sous forme d’objets. COSTO comprend également des traducteurs de spécifications Kmelia en Lotos et en MEC afin d’obtenir des spécifications en entrée des outils d’analyse formelle tels que CADP et MEC. 3.5.3 ORYX (Responsable: Christian Attiogbé) URL/DOI: Mots-clés: Intégration de méthodes, génération d’environnements spécifiques Équipe de développement: Christian Attiogbé, Etudiants de Master 92 Rapport d’activité LINA 2003–2006 ORYX est un générateur d’environnements de spécification dédiés aux besoins exprimés par l’utilisateur. A partir des caractéristiques du cahier des charges, ORYX permet de génerer l’environnement (langages de spécification, outils d’analyse) spécifique. Les principaux composants sont : i) un système d’information pour les méthodes formelles de developpement et la base de données associée. Ils permettent d’aider l’utilisateur à cerner les caractéristiques de son cahier de charges, les langages appropriés, les outils appropriés. ii) un noyau du générateur d’environnements qui s’appuie sur des opérateurs abstraits modélisant les concepts à la base de différents paradigmes de spécification. Il permet de construire le langage de spécification abstraite. Nous avons fait des expérimentations pour la génération d’environnements intégrant des données et des comportements (interactions). 3.5.4 ATACORA (Responsable: Christian Attiogbé) URL/DOI: Mots-clés: Passerelles entre spécifications, Intégration de méthodes Équipe de développement: Christian Attiogbé, Etudiants de Master ATACORA est une plate-forme prototype de spécifications multiformalismes et d’analyse multifacette. Parmi les composants de base, il y a un ensemble d’analyseurs et de décompilateurs. Ils ont en commun des descriptions ATS (Abstract Transition Systems) qui expriment la sémantique commune à plusieurs formalismes de spécification. Nous nous servons des systèmes de transitions abstraits pour effectuer des traductions de formalisme à formalisme afin d’analyser les spécifications avec les outils appropriés. Des expériences sont faites avec les formalismes/méthodes B, Promela et Réseaux de Petri. 3.6 Résultats nouveaux 3.6.1 Spécification et vérification de modèles à objets et à composants Participants : Pascal André, Gilles Ardourel, Christian Attiogbé, Henri Habrias, Cédric Stoquer. Dans le cadre des travaux sur les modèles à objets et leur vérification, nous avons étudié un processus générique de vérification de la cohérence de modèles de type UML, extensible à d’autres modèles ; nous avons poursuivi le développement de BOSCO (mise en œuvre de référentiels de langages de modélisation, à partir des leur méta-modèles ; acquisition et manipulation de modèles UML 1.4 et UML 1.5). Ce travail a donné lieu à deux publications [12, 27]. Concernant les modèles à composants, nous avons défini un modèle formel à composants à base de services : Kmelia. Le langage de spécification associé au modèles est aussi développé. Contrairement à la plupart des modèles à composants, Kmelia ne manipule que des composants via des services ; les composants Kmelia n’ont a priori pas de comportements, ce sont plutôt les services qui en ont ; cela accroı̂t la réutilisabilité. Nous avons proposé Kmelia comme base de modèles à composants formels, simples et flexibles pour le développement de logiciels (prouvés) corrects. En plus du concept de composant abstrait (indépendant des plateformes d’exécution et donc support des analyses préliminaires), l’aspect multiservice de notre modèle à composants constitue une de ses originalités. En effet, parmi les modèles à composants actuels, nombreux sont des modèles adhoc (CCM, EJB, ...) orientés vers la programmation directe ; d’autres ne facilitent pas les preuves de propriétés parce qu’ils utilisent de nombreux concepts ; d’autres encore négligent l’expressivité ce qui les rend inutilisables en pratique. Ces travaux ont aboutit à des résultats qui ont fait l’objet de diverses publications : COLOSS : Composants et Logiciels Sûrs 93 – un algorithme de vérification de conformité des interactions entre composants Kmelia [29] ; – une technique de vérification des compositions de services en utilisant la composition parallèle de systèmes de transitions [28] ; – les fondements de la composabilité et la vérification de la composabilité des composants Kmelia [6] ; – la vérification avec MEC d’assemblages de composants logiciels [20] ; – des techniques de coordination et d’adaptation de composants et services [30] ; – la spécification d’architectures logicielles avec Kmelia [19]. L’élaboration du modèle est conjointement menée avec la réalisation d’un prototype d’expérimentation : COSTO (Component Study Toolbox). Ce prototype permet actuellement la spécification de composants Kmelia, la vérification des propriétés comportementales en utilisant Lotos/CADP et MEC. 3.6.2 Intégration de méthodes formelles et analyse multifacette Participants : Pascal André, Gilles Ardourel, Christian Attiogbé, Henri Habrias, Gwen Salaün (jusqu’en juin 2003), Cédric Stoquer. Dans le cadre des travaux sur l’intégration de méthodes formelles, nous avons construit une plateforme (Natif/Oryx) d’aide à la spécification et à l’intégration de méthodes [2, 57, 46] ; elle est constituée : d’un système d’information pour l’aide à usage des méthodes formelles appropriés aux problèmes courants et de la base de données associées, des outils interface d’aide à l’analyse des cahiers de charge, d’un générateur d’environnements de spécification dédiés aux besoins de l’utilisateur ; des éditeurs de spécification et de décompilateurs. Cette plateforme est maintenant complétée par un prototype spécifique à l’intégration et à l’analyse multifacette (Atacora). Nous avons étudié la combinaison de modules de spécifications hétérogènes ; la thèse de Gwen Salaün soutenue en juin 2003 [42] a contribué à ces travaux ; nous avons proposé une solution basée sur les machines à états étendus pour l’utilisation conjointe de modules de données (statique) et de comportements (dynamique). Des résultats sont publiés : – la traduction des modules dynamiques intégrant des données en PVS afin d’utiliser ce systèmes de preuve [8] ; – la formalisation de notre combinaison de modules hétérogènes [7] ; – l’expérimentation sur une étude de cas de notre proposition de combinaison de dynamique et de données [17] ; – une méthode d’intégration de modules de données dans les algèbres de processus [9] ; – une approche pour l’intégration de données formelles dans les diagrammes d’états d’UML [22]. Dans le cadre de la méthode B et son intégration avec d’autres méthodes formelles, nous avons travaillé sur un cadre formel intégrant les systèmes abstraits B et les réseaux de Petri de façon à combiner les outils d’analyse associés dans des projets intégrant les deux méthodes de spécification : [47]. Nous étudions la formalisation des modèles de GRAFCET en B (thèse de Cédric Stoquer, en cours de rédaction, sous la direction de H. Habrias) [26]. Nous avons élaboré une approche ascendante (CBS : Communicating B Systems) pour la composition parallèle de systèmes abstraits B. Cette technique est mise en œuvre pour reconstruire formellement l’algorithme d’exclusion mutuelle de Peterson par exemple : [3, 11]. Nous avons comparé les approches de spécification en B, B événementiel et LTSA [33]. Nous avons travaillé sur la formalisation des approches semi-formel, des expérimentations et des études de cas ont été faites et publiées : [31, 24, 25, 34, 23, 32, 35]. 94 Rapport d’activité LINA 2003–2006 Nous avons étendu la méthode B par intégration des opérateurs de composition parallèle issus des algèbres de processus : [3], [4]. Concernant l’analyse multifacette nous avons proposé une méthode d’analyse partant d’un modèle formel de référence unique qui est ensuite décliné selon les facettes à étudier et les outils appropriés. Les résultats sont publiés : – dérivation de modèles de validation à partir d’un modèle de référence sous forme de règles logiques [13], – d’un modèle de référence à son analyse multifacette combinant preuve de théorème et évaluation de modème [14], – d’un modèle de référence B et son analyse multifacette utilsant divers outils B (preuve de théorèmes et évaluation de modèle) [16]. Nous avons élaboré des techniques d’analyse combinant les techniques de preuve de théorèmes (theorem proving) et d’évaluation de modèles (model checking) avec B, SPIN, ProB, Lotos. Le développement d’un prototype est entamé : Atacora, il permettra à terme le passage d’un modèle formel à un autre afin de réutiliser des outils d’analyse sur un même modèle initial ou sur une combiniaison de modèles formels spécifiques. Les techniques élaborées ont été mises en œuvre avec CBS pour le développement formel de systèmes [3]. Nous avons proposé une nouvelle méthode pour aider à la spécification de système multi-processus [15]. Elle est mise en œuvre sur plusieurs études de cas et aussi utilisée pour spécifier des systèmes de communication de groupe [5]. 3.7 Stratégie de valorisation et de coopération L’équipe COLOSS existe depuis juillet 2005. Certains membres ont cependant participé à un contrat précédent (2001-2003) dans le cadre des programmes du CIES (avec Oumtanaga Souleymane, INPHB Cote d’Ivoire). Nous avons participé au CPER précédent (projet COM axe Objet-Composant-Modèles) et nous sommes acteurs dans le nouveau projet CER (projet MILES). Stratégiquement nous privilégions dans un premier temps les collaborations académiques avec ou sans développement d’outils –qui permettent de promouvoir à moyens termes nos résultats à travers des publications scientifiques– par rapport aux coopérations industrielles de type développement de logiciels répondant à des besoins précis. Cependant nous portons une attention particulière à la contribution à la réponse aux appels d’offres (programmes ANR, PCRD) impliquants plusieurs laboratoires et industriels sur des thématiques alliant travaux fondamentaux et travaux de développement spécifiques. Projet ANTA (2001–2003) Responsable: Christian Attiogbé Montant: 6 000 e Mots-clés: Platefomes d’enseignement électronique(Web), Modélisation, Réseaux Participants: Pascal André, Christian Attiogbé, Souleymane Oumtanaga Partenaires: Institut National Polytechnique Houphoüet-Boigny, Equipe MOC/COLOSS(LINA) COLOSS : Composants et Logiciels Sûrs 95 Dans le cadre de ce projet, nous avons contribué à la mise en place d’une plateforme logicielle pour le développement de formations accessibles via le Web. Cela suppose notamment la mutualisation et la réutilisation de ressources pédagogiques. La modélisation et la description des ressources pédagogiques pour un usage flexible sur le Web ont été traitées. Notre avons recherché des techniques et des modèles de représentation de ressources pédagogiques afin de pouvoir valider les contenus des systèmes d’enseignement. Ce travail a produit le modèle SCOPE (Structuration des Contenus Pédagogiques) [52] pour structurer des modules d’enseignement notamment dans le domaine des réseaux ; une plateforme prototype est aussi développée avec la collaboration d’étudiants de Maı̂trise Informatique. 3.7.1 Actions internationales Des contacts récents ont été établis avec des collègues de Université de Halle en Allemagne (Pr. Zimmerman) et des collègues de l’Université de Prague (Pr. Plasil) pour travailler autour des composants logiciels, l’organisation d’ateliers de travail et l’encadrement de thèse en co-tutelles. 3.7.2 Actions européennes Nous avons déposé un projet franco-allemand, avec les collègues de Halle en Allemagne, dans le cadre du programme PROCOPE (2007-2008). Il s’agit de conjuguer les compétences et expériences des deux équipes impliquées pour résoudre des problèmes de vérification de protocoles de composants. L’équipe COLOSS contribue par ses compétences sur les algèbres de processus et les systèmes de transitions ; l’équipe allemande partenaire utilise elle des techniques basées sur la technologie des langages formels. 3.7.3 Actions nationales Participation de l’équipe dans : – le GDR I3 3.2 : Modélisation et conception de systèmes – le GDR ALP : Pôle composition et réutilisation d’objets répartis – le GDR ALP - SPL (Pôle Spécification, Programmation et Logique) – le GDR ALP - AFADL (Groupe Approches Formelles dans l’Assistance au Développement de Logiciels) – le GDR ALP - B (Méthode B) – le nouveau groupe GDR Transformation de modèles (2006) – le nouveau groupe GDR Génie du Logiciel et de la Programmation (2006) 3.7.4 Actions régionales Contrat Etat-Région L’équipe a participé au projet COM (CPER 2001-2006) financé par la région Pays de la Loire. Elle est également fortement impliquée dans le montage du nouveau projet CER (axe Ingénierie du Logiciel du projet ”MILES”). 96 Rapport d’activité LINA 2003–2006 3.8 Diffusion des résultats 3.8.1 Rayonnement Séminaires 2006 : – C. Attiogbé, Composants logiciels : spécification, composition et vérification avec Kmelia, SeminaireUR/Vasy INRIA Rhône-Alpes, Mars 2006, Grenoble – C. Stoquer, Vérification de Grafcet avec la méthode B, Université Bretagne Ouest, juin 2006, Brest 2004 : – G. Ardourel, La protection statique dans les langages à classes, Workshop Projet COM, Avril 2004, Nantes. – P. André, La vérification avec UML, CRI Ouest, Mars 2004, Nantes 2003 : – C. Attiogbé, Etude de la composition parallèle de systèmes abstraits B, GDR-ALP-AFADL, Paris H. Habrias a été secrétaire d’un groupe OFTA (Application des techniques formelles au logiciel) et membre d’un autre groupe OFTA (Architectures de logiciels et réutilisation de composants). H. Habrias est membre du CERCI (Centre d’Etudes et de Recherche sur les Conflits d’Interprétation), Université de Nantes, http ://www.lalic.paris4.sorbonne.fr/stic/as5.html. 3.8.2 Expertise de projets H. Habrias a été : – Expert pour les Presses Universitaires Romandes, – Expert pour le Ministère de l’Education Nationale (Enseignement supérieur) français – Expert pour le FCAR (Fonds pour la Formation de Chercheurs et l’Aide à la Recherche) du Canada, 2002. – Expert pour l’Université de Teesside, U.K., 2003 – Expert pour le RNTL, 2003 3.8.3 Comités de programmes et comités de lecture P. André a été : – Co-éditeur d’un numéro spécial sur les méthodes formelles à objets dans la revue L’Objet. – Membre du comité de programme de ESUG’05 (Smalltalk), – Rapporteur pour des articles de conférences (ZB’03, IFM’04, Inforsid’04, ADVIS’04, ZB’2005, ICFEM’05, INFORSID’05, IFM’05, MOSIM’06) et de revues (L’OBJET, SoSym) G. Ardourel a été membre des comités de lecture de : – WEAR03 (OOIS, Genève 2003), – INFORSID (Biarritz, 2004), – OCM-SI(Biarritz, 2004), – MOSIM’06 C. Attiogbé a été membre des comités de programme et de lecture de : – ZB2003, B2003, Majestic03, – IFM04, ADVIS’04, IFM2004, CARI04 COLOSS : Composants et Logiciels Sûrs 97 – ZB’2005, ICFEM’05, IFM’05 – MOSIM’06 H. Habrias a été membre des comités de programme des conférences internationales suivantes : – ZB 2003 (Turku, Finland) ; IFM 2003 – IFM 2004 ; MCSEAI 2004 ; FME/Teaching Formal Methods 2004(Gent, Belgique) – ZB 2005 (Kent, U.K.) – MOSIM’06 3.8.4 Organisation de congrès L’équipe a participé avec les autres équipe de l’axe « architectures logicielles distribuées » du LINA à l’organisation de la conférence ECOOP’2006 à Nantes. G. Ardourel a été membre des comités d’organisation de : – LMO’2002 (Montpellier, 2002), – WEAR’03 (Genève), – MOSIM’06 H. Habrias a : – créé à Nantes la série des conférences internationales sur la méthode B. Il est le secrétaire du comité de pilotage (association APCB) depuis 1996. – organisé les journées nationales ”Informatique et Droit”, Avril 2003, Avril 2004 à Nantes – membre du comité d’organisation de MOSIM’06 3.8.5 Impact sur la formation universitaire Les membres de l’équipe dispensent des enseignements ou encadrent des projets autour de la problématique des objets, des composants et des méthodes formelles au sein des formations suivantes : – DEA (actuellement MASTER Recherche) d’informatique de Nantes – DESS (actuellement MASTER Professionnelle) d’informatique de Nantes – DESS Génie logiciel, économie, droit et normes de Nantes (créé par H. Habrias) – Licence, Maitrise et licence professionnelle – IUP d’informatique – Master MDBS Sophia Antipolis P. André, G. Ardourel – co-responsables du DESS Génie Logiciel : Economie, droit et normes. 2004/2006 – co-encadrement du DEA de Sami Dakkha. 2004/2005 C. Attiogbé a encadré – le DEA de Nassima Sadou [78], en 2002, – le DEA de Gwen Salaun, en 1999/2000, – la thèse de Gwen Salaun, soutenue en 2003, – de nombreux étudiants de Master1 (TER) et Master2 P. (ex DESS) H. Habrias – monté deux écoles de printemps (2000-01) destinées aux collègues pour montrer comment relier l’enseignement de mathématiques et logique à ceux de spécification, bases de données, programmation. 98 Rapport d’activité LINA 2003–2006 – a organisé à la demande du Président de l’Université de Nantes le colloque international sur Pierre Abélard (histoire, logique, ontologie, musicologie, littérature, philosophie) en 2001 – monté le DESS Génie Logiciel : Economie, droit et normes et en a été responsable de 2003 à 2005. H. Habrias – Rapport et jury de thèses IRIT/Toulouse/2002, Rapport/Lyon/2002 – Rapport et jury de viva voce, Université de Teesside, U.K., 2002 – Rapport et jury de thèses LORIA/Nancy/décembre 2002, Loria/Nancy/mai 2006, Jury HDR/Cnam Evry/2002, – Rapport et jury, Université de Sherbrooke, Canada, 2003 – Rapport de thèse, Swinburne University of Technology, Autralie, 2003 3.9 Publications de référence de l’équipe hors période [1] P. A NDR É, F. BARBIER, et J.-C. ROYER. Une expérimentation de développement formel à objets. Techniques et Sciences Informatique, 14(8) :973–1005, Octobre 1995. ISSN : 0752-4072. [2] C. ATTIOGB É. Mechanization of an Integrated Approach : Shallow Embedding into SAL/PVS. In 4th International Conference on Formal Engineering Methods, ICFEM 2002, volume 2495 of Lecture Notes in Computer Science, pages 120–131, Shanghai, China, Octobre 2002. Springer Verlag. ISBN : 3-540-00029-1. 3.10 Publications de référence de l’équipe dans la période [3] C. ATTIOGB É. A Mechanically Proved Development Combining B Abstract Systems and Spin. In 4th International Conference on Quality Software, QSIC’04, pages 42–49, Braunschweig, Germany, Septembre 2004. IEEE Computer Society Press. ISBN : 0-7695-2207-6. [4] C. ATTIOGB É. A Stepwise Development of the Peterson’s Mutual Exclusion Algorithm Using B Abstract Systems. In 4th International Conference of B and Z Users, ZB 2005, volume 3455 of Lecture Notes in Computer Science, pages 124–141, Guildford, UK, Avril 2005. Springer Verlag. ISBN : 3-540-25559-1. [5] C. ATTIOGB É. Multi-Process Systems Analysis using Event B : Application to Group Communication Systems. In Eighth International Conference on Formal Engineering Methods (ICFEM’06), volume 4260 of Lecture Notes in Computer Science, pages 660–677, Macau, China, Novembre 2006. Springer Verlag. [6] C. ATTIOGB É, P. A NDR É, et G. A RDOUREL. Checking Component Composability. In 5th International Symposium on Software Composition (ETAPS/SC’06, volume 4089 of Lecture Notes in Computer Science. Springer Verlag, 2006. [7] C. ATTIOGB É, P. P OIZAT, et G. S ALA ÜN. Integration of Formal Datatypes within State Diagrams. In Fundamental Approaches to Software Engineering, 6th International Conference, FASE 2003, volume 2621 of Lecture Notes in Computer Science, pages 341–355, Genova, Italy, Avril 2003. ETAPS, Springer Verlag. ISBN : 3-540-00899-3. [8] G. S ALA ÜN et C. ATTIOGB É. Formalising an Integrated Language in PVS. In 5th International Conference on Formal Engineering Methods, ICFEM 2003, volume 2885 of Lecture Notes in COLOSS : Composants et Logiciels Sûrs 99 Computer Science, pages 187–205, Singapore, Novembre 2003. Springer Verlag. ISBN : 3-54020461-X. [9] G. S ALA ÜN et C. ATTIOGB É. MIAOw : a Method to Integrate a Process Algebra with Formal Data. Informatica, 28(2) :207–219, 2004. ISSN : 0350-5596. 3.11 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [10] G. A RDOUREL et M. H UCHARD. Class-Based Visibility from an MDA Perspective : From Access Graphs to Eiffel Code. Journal of Object Technology, Novembre 2004. ISSN : 1660-1769. [11] C. ATTIOGB É. Analyzing the Readers/Writers System Using the B Theorem Prover. GESTS International Transaction on Computer Science and Engineering, 7(1) :87–98, 2005. ISBN : 89953729-5-8, ISSN : 1738-6438. D1. Colloques de diffusion internationale avec comité de lecture et actes [12] P. A NDR É, G. A RDOUREL, et G. S UNY É. The Bosco Project, A JMI-Compliant Template-based Code Generator. In ISCA 13th International Conference on Intelligent and Adaptive Systems and Software Engineering, pages 157–162, Nice, France, Juillet 2004. ISBN : 1-880843-52-X. [13] C. ATTIOGB É. Systematic Derivation of a Validation Model from a Rule-oriented Model : A System Validation Case Study using P ROMELA /S PIN. In 4th International Conference on Information and Communication Technologies : from Theory to Applications, ICTTA’04, Damscus, Syria, Avril 2004. IEEE. ISBN : 0-7803-8483-0. [14] C. ATTIOGB É. Practical Combination of Theorem Proving and Model Checking for the Multi-facet Analysis. In 31st Annual Conference on Current Trends in Theory and Practice of Informatics, SOFSEM’05, pages 1–10, Liptovsky Jan, Slovakia, 2005. Slovak Society for Computer Science. ISBN : 80-969255-4-7. [15] C. ATTIOGB É. Combining B Tools for Multi-Process Systems Specification. In 8th African Conference on Research in Computer Science (CARI’06), 2006. to appear. [16] C. ATTIOGB É. Tool-Assisted Multi-Facet Analysis of Formal Specifications (Using Alelier-B and ProB). In IASTED Conf. on Software Engineering, pages 85–90, Innsbruck, Austria, Février 2006. IASTED/ACTA Press. ISBN : 0-88986-574-4. [17] C. ATTIOGB É, P. P OIZAT, et G. S ALA ÜN. Specification of a Gas Station using a Formalism Integrating Formal Datatypes within State Diagrams. In 8th International Workshop on Formal Methods for Parallel Programming : Theory and Applications, FMPPTA’03, Nice, France, Avril 2003. IEEE Computer Society Press. ISBN : 0-7695-1926-1. [18] H. H ABRIAS et S. FAUCOU. Linking Paradigms, Semi-formal and Formal Notations. In Teaching Formal Methods, CoLogNET/FME Symposium, TFM 2004, volume 3294 of Lecture Notes in Computer Science, pages 166–184, Ghent, Belgium, Novembre 2004. Springer Verlag. ISBN : 3-540-23611-2. 100 Rapport d’activité LINA 2003–2006 D2. Colloques de diffusion nationale avec comité de lecture et actes [19] P. A NDR É, G. A RDOUREL, et C. ATTIOGB É. Spécification d’architectures logicielles en Kmelia : hiérarchie de connexion et composition. In 1ère Conférence Francophone sur les Architectures Logicielles, pages 101–118. Hermès Sciences Publications - Lavoisier, 2006. ISBN : 2-7462-15772. [20] P. A NDR É, G. A RDOUREL, et C. ATTIOGB É. Vérification d’assemblage de composants logiciels Expérimentations avec MEC. In 6e conférence francophone de MOdélisation et SIMulation, MOSIM 2006, pages 497–506, Rabat, Maroc, Avril 2006. Lavoisier. ISBN : 2-7430-0892-X. [21] G. A RDOUREL, P. C RESCENZO, et P. L AHIRE. Lamp : vers un langage de définition de mécanismes de protection pour les langages de programmation à objets. In 9e Conférence Langages et Modèles à Objets, LMO’03, volume 9 of L’OBJET, pages 151–163, Vannes, France, Janvier 2003. Hermès Sciences Publications - Lavoisier. ISBN : 2-7462-0635-8. [22] C. ATTIOGB É, P. P OIZAT, et G. S ALA ÜN. Intégration de données formelles dans les diagrammes d’états d’UML. In J.-M. J ÉZ ÉQUEL, réd., Approches Formelles dans l’Assistance au Développement de Logiciels, AFADL’2003, pages 3–17, Janvier 2003. ISBN : 2-7261-1236-6. [23] H. H ABRIAS. Phases en B. In 5e conférence francophone de MOdélisation et SIMulation, MOSIM 2004, Nantes, France, Septembre 2004. Lavoisier. ISBN : 2-7430-0731-1. [24] H. H ABRIAS. Du semi-formel au formel, un exemple. In 6e conférence francophone de MOdélisation et SIMulation, MOSIM 2006, pages 842–851, Rabat, Maroc, Avril 2006. Lavoisier. ISBN : 2-7430-0892-X. [25] H. H ABRIAS et P. A NDR É. Préconditions et invariants, l’écriture de contraintes mal adaptées à un paradigme de spécification. In 22e congrès INFORSID, Biarritz, France, Mai 2004. Hermès Sciences Publications. ISBN : 2-906855-20-0. [26] C. S TOQUER. Traduction de modèles grafcet en B : exemple des séquences alternées. In 6e conférence francophone de MOdélisation et SIMulation, MOSIM 2006, pages 737–146, Rabat, Maroc, Avril 2006. Lavoisier. ISBN : 2-7430-0892-X. E. Colloques (avec ou sans actes) à diffusion restreinte [27] P. A NDR É et G. A RDOUREL. Domain Based Verification for UML Models. In L. K UZNIARZ, G. R EGGIO, J.-L. S OURROUILLE, et M. S TARON, réds., Workshop on Consistency in Model Driven Engineering C@Mode’05, pages 47–62, Novembre 2005. [28] P. A NDR É, G. A RDOUREL, et C. ATTIOGB É. Behavioural Verification of Service Composition. In ICSOC Workshop on Engineering Service Compositions, WESC’05, pages 77–84, Amsterdam, The Netherlands, 2005. IBM Research Report RC23821. [29] P. A NDR É, G. A RDOUREL, C. ATTIOGB É, H. H ABRIAS, et C. S TOQUER. Vérification de conformité des interactions entre composants. In P. C OLLET et P. L AHIRE, réds., LMO Workshop (Objets, Composants et Modèles), OCM’05, Berne, Suisse, Janvier 2005. [30] P. A NDR É, G. A RDOUREL, et C. ATTIOGB É. Coordination and Adaptation for Hierarchical Components and Services. In Third International ECOOP Workshop on Coordination and Adaptation Techniquesfor Software Entities (WCAT’06), pages 15–23, 2006. [31] P. A NDR É et H. H ABRIAS. Application d’ontologies formelles au droit. In SDC’06 Workshop on Ontologies et textes juridiques, OTJ’06, pages 30–39, Nantes, France, 2006. COLOSS : Composants et Logiciels Sûrs 101 [32] H. H ABRIAS et S. FAUCOU. Some reflections on the teaching of Formal Methods. In Teaching Formal Methods, Workshop, TFM 2003, page 5 pages, Oxford, UK, Décembre 2003. Oxford Brookes University, BCS-FACS, Oxford Brookes University. [33] H. H ABRIAS et C. S TOQUER. Approches comparées de la méthode B, B événementiel et LTSA. In XII Colloque National de la Recherche en IUT, CNRIUT’06, Brest, France, Juin 2006. [34] H. H ABRIAS et C. S TOQUER. Une sémantique formelle pour le raffinage en UML. In XII Colloque National de la Recherche en IUT, CNRIUT’06, Brest, France, Juin 2006. [35] C. S TOQUER, H. H ABRIAS, et S. FAUCOU. Do you want a small or a big chocolate ? In Stateoriented vs. Event-oriented thinking in Requirements Analysis, Formal Specification and Software Engineering, ST.EVE’03, Pisa, Italy, Septembre 2003. Satellite Workshop of FM’03. [36] M. Z IANE, G. A RDOUREL, M. H UCHARD, et S. C HANTIT. Formalizing the Decoupling Constraints of Design Patterns. In Workshop on Encapsulation and Access Rights, WEAR’2003 held in OOIS’2003, page 10 pages, Geneva, Switzerland, Septembre 2003. F1. Ouvrages ou chapitres d’ouvrage scientifique [37] P. A NDR É et A. VAILLY. Exercices corrigés en UML - Passeport pour une maı̂trise de la notation., volume 5 of Collection Technosup. Editions Ellipses, 2003. ISBN : 2-7298-1725-5. [38] P. A NDR É et A. VAILLY. Exercices corrigés en langage Z - Les spécifications formelles par la pratique, volume 4 of Collection Technosup. Editions Ellipses, 2004. ISBN : 2-7298-1942-8. [39] D. B ERT, H. H ABRIAS, et V. D ONZEAU -G OUGE, réds. Méthode B, volume 22 of Technique et Science Informatiques. Hermès Sciences Publications - Lavoisier, 2003. ISBN : 2-7462-0651-X. [40] H. H ABRIAS et M. F RAPPIER. Software Specification Methods - An Overview Using a Case Study. ISTE, London, U.K., 2006. ISBN : 1905209347. H. DEA, thèses et habilitations [41] S. DAKKA. Retro-Ingénierie de Java vers UML. Master’s thesis, Laboratoire d’Informatique de Nantes Atlantique, University of Nantes, Août 2004. [42] G. S ALA ÜN. Contributions à l’intégration de langages pour la spécification formelle et la vérification de systèmes complexes. PhD thesis, Laboratoire d’Informatique de Nantes Atlantique, University of Nantes, Juin 2003. J. Rapports internes [43] P. A NDR É, G. A RDOUREL, C. ATTIOGB É, H. H ABRIAS, et C. S TOQUER. Vérification de conformité des interactions entre composants. Rapport technique RR-04-11, LINA, University of Nantes, Janvier 2005. [44] P. A NDR É, G. A RDOUREL, et G. S UNY Ë. Un cadre pour la vérification de modèles UML. Rapport technique RR-04-12, LINA, University of Nantes, Janvier 2005. [45] P. A NDR É, G. A RDOUREL, C. ATTIOGB É, H. H ABRIAS, et C. S TOQUER. A Service-Based Component Model : Description Formalism, Formal Analysis and Mechanization. Rapport technique RR-05.08, Laboratoire d’Informatique de Nantes Atlantique, University of Nantes, Décembre 2005. 102 Rapport d’activité LINA 2003–2006 [46] C. ATTIOGB É. Towards a Generic Analysis and Design Framework : the KEPU Information System (NatIF Project). Rapport technique RR-04-10, LINA, University of Nantes, Novembre 2004. [47] C. ATTIOGB É. Semantic Embedding of Petri Nets into Event-B. Rapport technique SE/0510073, LINA, University of Nantes, Octobre 2005. 3.12 Bibliographie externe [48] J.-R. A BRIAL. The B Book. Cambridge University Press, 1996. [49] R. A LLEN et D. G ARLAN. A Formal Basis for Architectural Connection. ACM Transactions on Software Engineering and Methodology, 6(3) :213–249, Juillet 1997. [50] P. A NDR É. A propos de la vérification dans UML. Rapport technique RR-04-02, IRIN, University of Nantes, Juillet 2002. [51] P. A NDR É et A. VAILLY. Spécification des logiciels - Deux exemples de pratiques récentes : Z et UML, volume 2 of Collection Technosup. Editions Ellipses, 2001. ISBN : 2-7298-0774-8. [52] P. A NDR É, C. ATTIOGB É, et S. O MTANAGA. Un modèle de représentation des connaissances. Rapport technique, IRIN, University of Nantes, Juillet 2002. [53] G. A RDOUREL. A study of access control mechanisms in object-oriented languages. Rapport technique, LIRMM, 2001. [54] G. A RDOUREL et M. H UCHARD, réds. Access Graphs : Formalizing Static Access Control Mechanisms, volume 2323 of Lecture Notes in Computer Science. Springer Verlag, Juin 2001. [55] G. A RDOUREL et M. H UCHARD. Access Graphs : Another View on Static Access Control for a Better Understanding and Use. Journal of Object Technology, 1(5) :95–116, Novembre 2002. ISSN : 1660-1769. [56] A. A RNOLD. Systèmes de transitions finis et sémantique des processus communiquants. Collection Etudes et recherches en informatique. Masson, 1992. ISBN : 2-225-82746-X. [57] C. ATTIOGB É. A Generic Framework for Methods Integration(NatIF Project). Rapport technique RR-02-05, IRIN, University of Nantes, Juillet 2002. [58] C. BACKHOUSE. Construction et vérification de programmes. coll. MIM. Masson, Prentice-Hall, 1989. [59] E. M. C LARKE et J. M. W ING. Formal Methods : State of the Art and Future Directions. ACM Computing Surveys, 28(4) :626–643, Décembre 1995. [60] I. C RNKOVIC et M. L ARSSON. Building Reliable Component-Based Software Systems. Artech House Publishers, 2002. ISBN : 1-58053-327-2. [61] E. W. D IJKSTRA. Guarded commands, nondeterminacy and formal derivation of programs. Communications of the ACM, 18(8) :453–457, 1975. [62] E. W. D IJKSTRA. A Discipline of Programming. Prentice Hall, Englewoods, Cliffs, NJ, 1976. [63] A. E VANS, R. F RANCE, K. L ANO, et B. RUMPE. The UML as a formal modelling notation. In UML’98 Beyond the notation, lncs. Spinger-Verlag, 1998. [64] D. G RIES. The Science of Programming. Springer-Verlag, 1981. [65] C. A. H OARE. Communicationg Sequential Process. Communications of the ACM, 21(8) :666–667, 1978. COLOSS : Composants et Logiciels Sûrs 103 [66] C. A. R. H OARE et H. J IFENG. Unifying theories of programming. Prentice-Hall, 1998. [67] D. M. H OFFMAN et D. M. W EISS, réds. Software fundamentals : collected papers by David L. Parnas. Addison-Wesley, 2001. ISBN : 0-201-70369-6. [68] G. K AHN. Natural Semantics. In STACS, volume 247 of Lecture Notes in Computer Science, pages 22–39. Springer Verlag, 1987. [69] Y. K ESTEN, Z. M ANNA, et A. P NUELI. Temporal Verification of Simulation and Refinement. In REX Symposium A Decade of Concurrency, volume 803 of Lecture Notes in Computer Science, pages 273–346. Springer Verlag, 1994. [70] N. M EDVIDOVIC et R. N. TAYLOR. A Classification and Comparison Framework for Software Architecture Description Languages. IEEE Transactions on Software Engineering, 26(1) :70–93, Janvier 2000. [71] E. M EIJER et C. S ZYPERSKI. Overcoming Independent Extensibility Challenges. Communications of the ACM, 45(10) :41–44. ACM Press, 2002. ISSN : 0001-0782. [72] B. M EYER. The Grand Challenge of Trusted Components. In IEEE International Conference on Software Engineering, ICSE’03. IEEE Computer Society Press, Mai 2003. [73] R. M ILNER. A Calculus of Communicating Systems, volume 92 of Lecture Notes in Computer Science. Springer Verlag, 1980. [74] R. M ILNER. Communication and Concurrency. International Series in Computer Science. PrenticeHall, 1989. ISBN : 0-13-115007-3, ISBN 0-13-115007-3. [75] J.-F. M ONIN. Comprendre les méthodes formelles. coll. CNET-ENST. Masson, Paris, 1996. [76] D. L. PARNAS. On the Criteria To Be Used in Decomposing Systems Into Modules. Communications of the ACM, 15(12) :1053–1058, 1972. [77] G. P LOTKIN, réd. A structural approach to Operational Semantics. DAIMI FN-19, Computer Science Dpt, Aarhus University, Denmark, 1981. [78] N. S ADOU. Un noyau d’environnement multiparadigme. Master’s thesis, Institut de Recherche en Informatique de Nantes, University of Nantes, Septembre 2002. [79] C. S ZYPERSKI. Component Software : Beyond Object-Oriented Programming. ACM Press/Addison-Wesley Publishing Co., New York, NY, USA, 1998. ISBN : 0-201-17888-5. [80] T. H. T SE. A Unifying Framework for Structured Analysis and Design Models. Number 21 in Cambridge Tracts in Theoretical Computer Science. Cambridge University Press, 1991. ISBN : 0-521-39196-2. [81] J. van L EEUWEN, réd. Handbook of Theoretical Computer Science, Volume A : Algorithms and Complexity. Elsevier and MIT Press, 1990. ISBN : 0-444-88071-2, 0-262-22038-5. [82] J. van L EEUWEN, réd. Handbook of Theoretical Computer Science, Volume B : Formal Models and Sematics. Elsevier and MIT Press, 1990. ISBN : 0-444-88074-7, 0-262-22039-3. Équipe projet MODAL : Langages de Modélisation d’Architectures Logicielles 4.1 Composition de l’équipe Responsable : Mourad Oussalah Chercheurs-Enseignants : – Tahar Khammaci maı̂tre de conférences, Université de Nantes, 01/02/00 – Mourad Oussalah professeur, Université de Nantes, 01/09/99 – Dalila Tamzalit maı̂tre de conférences, Université de Nantes, 01/09/01 Chercheurs doctorants : – Gautier Bastide doctorant, Bourse Ecole des Mines de Douai, LINA/Ecole des Mines de Douai, 01/10/04 – Sylvain Chardigny doctorant, Bourse Ecole des Mines de Douai, LINA/Ecole des Mines de Douai, 01/01/06 – Olivier Le Goaer doctorant, Bourse MNRT, LINA, 01/10/05 – Nassima Sadou doctorante, Salariée, LINA, 01/10/03 Collaborateurs extérieurs : – Adel Alti doctorant/maı̂tre – Abdelkrim Amirat doctorant/maı̂tre – Djamal Bennouar doctorant/maı̂tre – Amar Bessam doctorant/maı̂tre assistant, Université de Sétif, 01/10/04 assistant, Université de Annaba, 01/10/05 assistant, Université de Blida, 01/03/03 assistant, Université de Annaba, 01/10/05 105 106 Rapport d’activité LINA 2003–2006 – Djamel Seriai maı̂tre assistant, Ecole des Mines de Douai, 01/10/03 – Adel Smeda post-doctorant, LINA, 01/09/06 Stagiaires : – Cedric Brun stagiaire Master Recherche ALD, Université de Nantes, 2006 – Olivier Le Goaer stagiaire Master Recherche ALD, Université de Nantes, 2005 – Houari Madani stagiaire Master Recherche ALD, Université de Nantes, 2006 – Brice Turcaud stagiaire Master Recherche ALD, Université de Nantes, 2005 4.2 Présentation et objectifs généraux 4.2.1 Historique 1999 : – arrivée de Mourad Oussalah à l’Université de Nantes avec trois doctorants – création de l’équipe Modélisation par Objets et par Composants de systèmes complexes (MOC) et fédération des activités « objets et composants »du laboratoire IRIN. 2000 : – participation à la création de la conférence OCM (Objets, Composants, Modèles) à Nantes en 2000. – participation à la création du pôle OCM régional regroupant l’EMN et l’Université de Nantes. – reconversion thématique de T. Khammaci (initialement dans le thème spécifications formelles). 2001 : – recrutement de D. Tamzalit sur un poste de MC à l’Université de Nantes. – co-organisation avec l’EMN de la manifestation nationale LMO au Croisic (Nantes). 2002 : – recrutement de G. Sunyé sur un poste de MC à l’Université de Nantes. – organisation du Workshop National OCM-SI (Objets, Composants, Modèles dans l’ingénierie des Systèmes d’information) à Nantes – rattachement des membres de l’ancienne équipe Méthodes et Spécification Formelles (MSF) : M. Allemand (MC), C. Attiogbé (MC), H. Habrias (Pr), P. André (MC). Compte tenu du projet scientifique de l’équipe MOC, ce rattachement est justifié par le fait que les anciens membres de l’équipe MSF partagent les mêmes centres d’intérêt que les membres de l’équipe MOC, à savoir la spécification et la conception d’architectures logicielles. 2003 : – F. Trichet (MC), ex-responsable de l’ancien thème Ingénierie des connaissances, intègre l’équipe MOC en y apportant ses compétences dans le cadre des architectures logicielles et des architectures à base de connaissances. – recrutement de G. Ardourel sur un poste de MC à l’Université de Nantes MODAL : Langages de Modélisation d’Architectures Logicielles 107 – organisation du Workshop National OCM-SI à Nancy 2004 : – organisation du Workshop National OCM-SI à Biarritz 2005 : – création de l’équipe MODAL, suite à la restructuration de l’équipe MOC – organisation du Workshop National OCM-SI à Grenoble 2006 : – organisation de la Première Conférence Francophone sur les Architectures Logicielles (CAL’06) à Nantes – organisation du Third European Workshop on Software Architecture (EWSA’06) à Nantes 4.2.2 Objectifs principaux Aujourd’hui, nous vivons une nouvelle évolution dans l’art de concevoir des systèmes complexes. Après les technologies objets qui ont modifié profondément l’ingénierie des systèmes logiciels améliorant ainsi leur analyse, leur conception et leur développement, nous entrons dans une nouvelle ère de conception de systèmes, « l’orienté-composant », qui a émergé au sein de la communauté de recherche « Architectures logicielles ». L’orienté-composant consiste à concevoir et à développer des systèmes par assemblage de composants réutilisables à l’image par exemple des composants électroniques ou des composants mécaniques. Plus précisément, il s’agit de : – concevoir et développer des systèmes à partir de composants préfabriqués, préconçus et pré-testés, – réutiliser ces composants dans d’autres applications, – faciliter leur maintenance, leur vérification et leur évolution, – favoriser leur adaptabilité et leur configurabilité pour produire de nouvelles fonctionnalités et de nouvelles caractéristiques. Par ailleurs, la complexité croissante des systèmes informatiques et leur évolution de plus en plus rapide ont motivé ces dix dernières années un intérêt accru pour le développement de logiciels à base de composants. Cet intérêt est motivé principalement par la réduction des coûts et des délais de développement des applications. En effet, on prend moins de temps à acheter (et donc à réutiliser) un composant que de le concevoir, le coder, le tester, le debogguer et le documenter. Cependant, plusieurs problèmes doivent encore être résolus avant qu’on parvienne à l’ubiquité du composant logiciel. En effet, l’utilisation de l’approche « Composants »dans le développement d’applications « grandeur réelle »révèle rapidement certaines insuffisances. Par exemple : quelle est la granularité d’un composant ? Comment peut-on distinguer et rechercher les composants de manière rigoureuse ? Comment peut-on les manipuler ? les assembler ? les réutiliser ? les valider, les installer dans des contextes matériels et logiciels variant dans le temps, les administrer, les faire évoluer, . . . Pour tenter de répondre à l’ensemble de ces questions, notre équipe s’est essentiellement intéressée à l’étude et au développement de nouvelles architectures logicielles ouvertes (c-a-d capables de dialoguer et de s’interfacer avec d’autres architectures), adaptables (c’est-à-dire susceptibles d’être adaptées à des conditions opératoires et à des domaines d’application différents) et évolutives (capables d’être complétées/modifiées pour prendre en compte des services non prévus lors de leur conception). Ces architectures que nous avons baptisées COSA (Component-Object based Software Architecture), s’appuient d’une part sur les modèles définitionnels et fonctionnels de composants architecturaux et d’autre part doivent être capables de se projeter sur des infrastructures objets. Il nous semble naturel de rapprocher « l’orienté composant »à « l’orienté Objet »puisque tous deux ont en commun de privilégier le développement d’un système et ce depuis sa phase de spécification jusqu’à son implémentation. Bien que 108 Rapport d’activité LINA 2003–2006 chacun d’eux porte l’accent sur des aspects différents du développement logiciel en termes de niveaux d’abstraction, de granularité et de mécaniques opératoires, il n’ y a pas de frontières très nettes entre les deux. En ce sens, il n’est pas étonnant de retrouver des points communs tant au niveau des motivations, des techniques que des méthodes, tout en notant cependant certaines différences. Aussi, nous voulons profiter de leur coexistence afin que chaque paradigme tire parti de l’apport de l’autre. Aussi, nous pensons ainsi pouvoir contribuer à l’émergence de nouvelles architectures logicielles en prenant en compte, de facto, les évolutions des standards académiques (SOFA, ACME, . . .) et industriels (.NET, EJB, CCM, . . .). L’objectif de l’équipe MODAL est donc de contribuer à l’élaboration de nouveaux languages de modélisation d’architectures logicielles ouvertes, adaptables et évolutives basées sur les ADLs et capables d’être projetés sur des architectures objets exécutables. 4.2.3 Les thèmes de recherche L’équipe Langages de Modélisation des Architectures Logicielles (MODAL) fédère ses activités autour de deux thèmes : Modèles de spécification et de conception d’architectures logicielles Dans ce thème nous nous intéressons aux langages de conception d’architectures logicielles ouvertes, adaptables et évolutives. Aujourd’hui, un certain nombre de propositions [72] [75], . . .commence à émerger sur les architectures logicielles. Ils sont pour la plupart orientés très fortement sur l’aspect implémentation (bas niveau) (EJB, COM/DCOM, .NET, CCM, . . .). D’un autre côté les architectures logicielles haut-niveau préconisées par les ADLs (Architectures Description languages) comme ACME, WRIGHT, UNICON, RAPIDE, . . .perdent leurs atouts dès qu’ils sont projetés au niveau implémentation. Dans tous les cas, les enjeux à termes sont, l’amélioration de la qualité et de la productivité, et l’industrialisation de la production de logiciel. De fait, la situation des langages d’architectures logicielles rappelle celle des langages à objets au début des années Soixante dix : une syntaxe disparate qui renvoie à une sémantique ambiguë. En outre, les composants issus aussi bien des modèles académiques (RAPIDE, Wright, ACME, . . .) que des modèles industriels, plus orientés objets (COM/DCOM, EJB, CCM, . . .) souffrent d’un certain nombre de lacunes au regard de la description de systèmes à base de composants. En effet, ces modèles : – fournissent un nombre limité de forme d’interconnexion de primitives (invocation de méthodes) : ceci rend difficile la prise en compte d’interactions complexes, – disposent de faibles supports pour les descriptions hiérarchiques, rendant difficile la description de systèmes à différents niveaux d’abstraction, – ne fournissent pas (ou peu) de support direct pour caractériser et analyser les propriétés nonfonctionnelles, – permettent difficilement la définition de l’architecture globale d’un système avant la construction complète (implémentation) de ses composants, en effet certains modèles exigent l’implémentation de leurs composants avant que l’architecture ne soit définie, – ne respectent pas en général le principe de conformité système-architecture, – proposent peu de solutions pour faciliter l’adaptation et l’assemblage de composants, – abordent rarement (si ce n’est jamais) le problème de l’évolution de composants. Pour notre part, et pour contribuer à combler ces lacunes, notre stratégie est de nous attaquer, dans le cadre de la modélisation de systèmes complexes, au problème de conception et de développement d’un MODAL : Langages de Modélisation d’Architectures Logicielles 109 composant en empruntant les formalismes de description des ADLs (configuration, interface, connecteur, ports, . . .) et en les étendant grâce aux mécanismes de raisonnement inhérents aux modèles objets (héritage, généricité, raffinement, . . .). Cela permettra de développer des systèmes à base de composants de meilleure qualité, offrant un meilleur potentiel de réutilisation et surtout limitant la distance sémantique entre conception et implémentation. Il s’agit de développer de nouveaux modèles de description d’architectures logicielles permettant d’une part d’étendre les formalismes de modèles de description des ADLs pour la prise en compte d’éléments architecturaux complexes (composants composites, composants multi-vues, styles, connecteurs explicites actifs) et d’autre part de projeter ces modèles sur des modèles d’architecture objets exécutables. Modèles d’évolutions structurale et comportementale d’architectures logicielles Ces dernières années ont vu l’émergence de systèmes à base de composants. Fondée sur le concept d’architecture logicielle, cette nouvelle approche permet de décrire le système comme un ensemble de composants en interaction. A l’inverse du monde industriel, qui propose des composants fortement liés à des serveurs, systèmes ou modèles propriétaires, l’approche académique s’intéresse à la formalisation de la notion d’architecture logicielle grâce aux ADL.Ces derniers offrent un niveau d’abstraction élevé pour la spécification et le développement des systèmes logiciels, qui se veut indépendant des langages de programmation et de leurs plates-formes d’exécution. Plusieurs ADLs ont été définis pour aider au développement à base de composants, tels que C2, ACME, Rapide, Wright, UML2.0, UniCon, Metah, etc. Malgré les progrès constants sur les ADLs, l’évolution logicielle reste mal ou peu abordée. La majorité des efforts de recherche dans le domaine se focalise sur la spécification, le développement et le déploiement des architectures logicielles. Peu de travaux à notre connaissance se consacrent à l’évolution de ces architectures logicielles. L’évolution logicielle est un mécanisme très important dans le monde du logiciel et des systèmes informatiques. Elle permet dans le cadre des architectures logicielles, d’éviter que celles-ci ne restent figées et soient obsolètes par rapport aux besoins en perpétuel changement. En effet, cette évolution architecturale allonge la durée de vie des systèmes et ainsi garantit leur viabilité économique. Un autre objectif essentiel est la possibilité de pouvoir élargir les architectures logicielles et d’appliquer le passage à l’échelle, pour prendre en compte de nouveaux besoins ou des fonctionnalités plus complexes. Une architecture doit donc pouvoir être modifiée pour rester utilisable, disponible et robuste auprès de ses utilisateurs, et cela tout au long du cycle de vie du système. Une évolution dans une architecture logicielle peut concerner sa structure ou son comportement, elle peut être réalisée à l’étape de spécification ou de compilation du système qu’elle décrit, on parle alors d’évolution statique ou à l’exécution de ce système, on parle alors d’évolution dynamique. Dans chacun de ces cas il faut considérer que tout élément de l’architecture logicielle peut être amené à évoluer, ainsi il faut identifier ce qui peut évoluer, comment le faire évoluer, comment garantir la cohérence de l’architecture ayant évoluée et ensuite comment répercuter ces évolutions de l’architecture logicielle sur le système qu’elle décrit. Pour répondre à ces besoins nos travaux se concentrent sur l’élaboration de modèles d’évolutions structurale et comportementale d’architectures logicielles. Nous nous focalisons dans un premier temps sur l’évolution statique avec une perspective d’utiliser les mêmes modèles dans le cas d’évolution dynamique. Nous abordons entre autres dans ces travaux l’aspect répercussion de l’évolution de l’architecture sur son système. Notre objectif est de développer des modèles d’évolution génériques et indépendants du langage cible hôte, en proposant un ensemble de concepts pour décrire et modéliser une évolution donnée 110 Rapport d’activité LINA 2003–2006 ainsi que des mécanismes pour gérer l’exécution de cette évolution tout en sauvegardant la cohérence de l’architecture ayant évoluée. 4.2.4 Perspectives Notre projet scientifique est de proposer des modèles et des méthodes de construction de nouvelles architectures logicielles ouvertes, adaptables et évolutives à base de modèles hybrides composants- objets. Il est nécessaire pour cela d’une part de capitaliser les expériences acquises en matière de conception d’architectures objet et d’autre part d’intégrer les nouvelles propositions émanant des architectures logicielles à base de composants et de les étendre pour tenir compte des besoins, des points de vue et des contraintes spécifiques des utilisateurs-concepteurs. Aussi, l’objectif scientifique que nous nous fixons est de : 1. contribuer à asseoir les fondements des nouvelles architectures logicielles dans le cadre du génie logiciel en général et celui des architectures logicielles à base de composants et d’objets en particulier. Nous nous intéresserons particulièrement aux aspects structurels et comportementaux des ADLs (ACME, RAPIDE, UNICON, . . .) et des architectures objets telles que le langage UML (spécification, conception). 2. fixer un cadre conceptuel de définition, de formalisation et de validation des différents modèles d’architectures logicielles à base de composants et d’objets, 3. élaborer des outils permettant de spécifier, de concevoir, de valider et de faire évoluer des architectures logicielles décrites par une approche hybride (composants et objets) pour maı̂triser la modélisation de systèmes complexes. 4.3 Fondements scientifiques Mots clés : – Génie logiciel : – Architectures logicielles – Représentation des architectures logicielles – Méta modèle de description des architecture logicielles – Démarche de description d’une architecture logicielle – Méta méta modèle de représentation des architectures logicielles – Evolution des architectures logicielles – Assemblage de composants architecturaux – Adaptation des composants architecturaux Actuellement, un grand intérêt est porté au domaine de l’architecture logicielle [76] [78]. Cet intérêt est motivé principalement par la réduction des coûts et des délais de développement des applications. En effet, on prend moins de temps à acheter (et donc à réutiliser) un composant que de le concevoir, le coder, le tester, le déboguer et le documenter. Une architecture logicielle modélise un système logiciel en termes de composants et d’interactions entre composants. L’architecture logicielle joue le rôle d’une passerelle entre l’expression des besoins du système logiciel et l’étape de codage du logiciel. Elle fournit une description abstraite ou un modèle du système logiciel. Les études menées dans le domaine du génie logiciel ont montré l’importance de la notion d’architecture logicielle. Cette dernière permet d’exposer de manière compréhensible et synthétique la complexité d’un système logiciel et de faciliter MODAL : Langages de Modélisation d’Architectures Logicielles 111 l’assemblage de composants logiciels. Les axes de travail autour de ce thème sont multiples. L’idée fondamentale est de profiter des avantages d’une architecture clairement explicitée pour ne laisser en second plan que la programmation d’applications. Pour décrire l’architecture d’un logiciel et modéliser ainsi les interactions entre les composants d’un système logiciel, deux principales approches ont vu le jour depuis quelques années : la description architecturale et la modélisation par objet [9]. L’approche de description architecturale, qui a émergé au sein de la communauté de recherche « Architectures logicielles », a permis notamment de prendre en compte les descriptions de haut niveau de systèmes complexes, et de raisonner sur leurs propriétés à un haut niveau d’abstraction (protocole d’interaction, conformité avec d’autres architectures, . . .). Cette approche décrit un système logiciel comme un ensemble de composants qui interagissent entre eux par le biais de connecteurs. Elle décrit aussi explicitement les composants et définit des mécanismes opérationnels permettant leur réutilisation. Aujourd’hui, la communauté scientifique porte son effort, en plus du passage à l’échelle, sur la gestion de la complexité des interactions entre les composants hétérogènes des architectures logicielles. L’approche orientée objet est devenue un standard de modélisation d’un système logiciel durant les dix dernières années. Avec l’unification des méthodes de développement objet sous le langage UML, cette approche est largement utilisée et bien appréciée dans le monde industriel. Les recherches récentes dans le domaine de la modélisation par objet ont essentiellement concerné la modélisation d’objets composites et complexes et ont surtout tenté de résoudre les problèmes d’incompatibilités entre les langages et entre les plates formes. Nos recherches se focalisent à la fois sur des aspects fondamentaux des architectures logicielles (élaboration de concepts et de méthodes de modélisation et de développement, analyse des modèles issus des spécifications, étude de problèmes généraux, mise au point de systèmes de raisonnement, . . .) et technologiques (applications directes sur des cas concrets, mise au points d’outils, élaboration de solutions ad-hoc, . . .). Elles ont donc pour fondements ces deux grandes approches plus connues sous les noms : « Architecture Logicielle à base d’Objets »et « Architecture logicielle à base de composants ». 4.4 Domaines d’applications – Modélisation de systèmes d’information dans les télécommunications et les systèmes de CAO circuits. – Dans le cadre du projet METEDI, nous avons appliqué des techniques de modélisation des architectures logicielles à base de composants à une plateforme d’EAD. Le but étant essentiellement la composition de documents pédagogiques, leur assemblage et leur évolution. Par exemple, les enseignants ont la possibilité d’ajouter, de composer et d’intégrer des ressources pédagogiques dans une « bibliothèque de cours »via des mécanismes opérationnels inhérents aux modèles d’architectures logicielles. Ces ressources pédagogiques (distribuées sur les ordinateurs des enseignants) pouvaient être de plusieurs types : fichiers Word, XML, vidéo, PowerPoint, . . . 4.5 Résultats nouveaux 4.5.1 Thème - Modèles de spécification et de conception d’architectures logicielles Quatre actions sont menées dans le cadre de ce thème : Action 1 : Modèles de connecteurs actifs explicites dans les architectures logicielles Participants : Tahar Khammaci, Mourad Oussalah, Nassima Sadou, Adel Smeda, Dalila Tamzalit. 112 Rapport d’activité LINA 2003–2006 Dans les architectures logicielles, les connecteurs entre composants sont des entités très importantes de modélisation qui malheureusement ne sont pas souvent pris en charge par les modèles de composants conventionnels. En effet, la plupart des langages de description ou de programmation de composants, lors de la phase d’implémentation, n’offrent aucun moyen d exprimer les connecteurs de façon explicite. En général, soit ils introduisent des types de connecteurs prédéfinis (si toutefois ils les proposent), soit les connecteurs sont programmés au sein des composants, et même parfois au sein des programmes d’application. En tout cas, ces modèles et langages ne fournissent pas de mécanismes permettant à l’utilisateur de définir de nouveaux types de connecteurs avec des sémantiques spécifiques à ses applications. Force est de constater : – d’une part, que différentes applications peuvent être modélisées plus facilement en empruntant une approche séparant explicitement les composants et les connecteurs. Parmi celles qui nous semblent les plus concernées, nous citons : 1. La gestion de configuration : Les composants peuvent interagir de plusieurs façons : – Ils peuvent, être composés d’autres composants (hiérarchie de composition), – Ils peuvent exister en plusieurs versions (hiérarchie de dérivation) – Ils peuvent avoir plusieurs représentations ou points de vue. La combinaison de ces différentes hiérarchies requiert souvent des mécanismes complexes de propagation au sein même des connecteurs. Par exemple, si un composant d’un composite devient invalide le composite lui-même devrait être invalide ou encore la création ou la destruction d’une version d un composant peut entraı̂ner la création (ou la destruction) d’une nouvelle version du composite. 2. Les systèmes distribués : Si des composants sont localisés à différents noeuds (endroits) d’un système distribué, la coopération des composants distants est déterminée par la sémantique des connecteurs qui les relient. 3. Le couplage de sous-systèmes : Si des sous systèmes doivent être couplés, des connecteurs doivent être définis entre les composants des sous-systèmes. Les mises à jours ou les changements opérés dans un des sous-systèmes doivent alors être propagés via ces connecteurs dans les autres sous-systèmes. Il en résulte donc que d une part, les conséquences des activités (fonctionnalités) d’un composant ne sont pas des propriétés propres à ce composant, mais plutôt une propriété des connecteurs entre les composants, et d’autre part, les interactions (i.e. connecteurs) entre les composants ont souvent besoin d’être adaptés aux besoins d un environnement spécifique. Même au sein d’un seul système de gestion de configuration, différents concepteurs voudraient éventuellement rajouter leurs règles d’interaction spécifiques aux règles générales déjà admises. – d’autre part, une non prise en compte explicite des connecteurs dans les modèles de composants conduirait à différents problèmes parmi lesquels nous pouvons citer : 1. Le manque d’abstraction : le manque d abstraction des mécanismes utilisés pour modéliser les connecteurs ne permet pas de donner aux connecteurs une véritable place au sein du paradigme de composants. De plus, cette absence d’abstraction des connecteurs nuit aux concepteurs et développeurs qui ne peuvent pas facilement maintenir et faire évoluer leur conception et leur code. Aussi sont-ils souvent amenés à comprendre l’ensemble des fonctionnalités d’un composant pour distinguer les connecteurs implicites qui s’y trouvent, leur déclaration (ensemble de composants) et leur sémantique se fondent dans les composants. 2. L’augmentation de la complexité d’un composant : l’existence de nombreuses interactions entre les composants d’un système contribue à une augmentation significative de la com- MODAL : Langages de Modélisation d’Architectures Logicielles 113 plexité des composants. Et chaque nouvelle interaction ajoute de la complexité au composant. 3. Le manque de réutilisabilité : quand les composants et les connecteurs sont fusionnés, il devient difficile d’identifier les comportement intrinsèques d un composant. Ce qui nuit à la fois à la réutilisation et à l’évolution des composants et des connecteurs. 4. La mise en oeuvre difficile : la mise en oeuvre des connecteurs (sous forme par exemple de propriétés de composants) peut s’avérer difficile ; tout d’abord le développeur doit, dès la définition des composants, avoir pensé aux interactions auxquelles ses instances pourraient participer. Par ailleurs, la création dynamique des connecteurs est difficile, et il est à souligner que certaines interactions possèdent des comportements dynamiques complexes. De ce fait, c’est alors à la charge du développeur de mettre en oeuvre ces mécanismes et les contrôles associés. Pour répondre à ces lacunes, nous avons élaboré un modèle de description d’architectures logicielles baptisé COSA [30] [33] [20] dans lequel les connecteurs sont définis comme des entités actives de première classe, génériques, héritables et composables. Une telle approche confère aux connecteurs un niveau de granularité et de réutilisation semblables à celui des composants. Actuellement, nous sommes en train d’implémenter ce modèle dans l’environnement de modélisation UML2.0. Action 2 : Méta modèle de description structurale d’une architecture logicielle Participants : Tahar Khammaci, Mourad Oussalah, Adel Smeda. Le modèle, que nous avons dénommé COSA (Component-Object based Software Architecture), est basé sur la modélisation par objets et la modélisation par composants pour décrire des systèmes logiciels [9] [25]. La contribution principale de ce modèle est, d’une part d’emprunter le formalisme des ADLs et de les étendre grâce aux concepts et mécanismes objets, et d’autre part d expliciter les connecteurs en tant qu’entités de première classe pour traiter les dépendances complexes entre les composants. COSA est une approche de description d’architecture basée sur la description architecturale et la modélisation par objets. Dans COSA, les composants, les connecteurs et les configurations sont des classes qui peuvent être instanciées pour établir différentes architectures. Comme COSA sépare la description d’architecture du déploiement, il est possible de déployer un composant architectural donné de plusieurs manières, sans réécrire le programme de configuration-déploiement. Les éléments de base de COSA sont : les composants, les connecteurs, les interfaces, les configurations, les contraintes et les propriétés. Pour ces éléments, nous avons choisi un nombre de mécanismes opérationnels qui ont prouvé leur efficacité dans le paradigme orienté objet. Aussi, COSA améliore la réutilisabilité en augmentant l’extensibilité, l’évolutivité et la compositionalité des systèmes logiciels. Il propose également un nombre de mécanismes opérationnels pratiques constituant un bon support de raisonnement. Action 3 : Démarche pour guider la conception des architectures logicielles Participants : Tahar Khammaci, Mourad Oussalah, Adel Smeda. En ce qui concerne la démarche d’élaboration d’une architecture logicielle, elle permet de guider le concepteur dans son processus de modélisation d’architecture logicielle. Cette démarche se base sur le modèle MY, qui décrit les concepts des architectures logicielles selon trois branches : composant, connecteur et architecture. Ces branches représentent successivement tout ce qui est lié aux calculs, 114 Rapport d’activité LINA 2003–2006 aux interactions et à la structure et à la topologie du système décrit. Le modèle MY a quatre niveaux conceptuels : méta-méta architecture, méta architecture, architecture et application. Ce modèle améliore la réutilisation des architectures logicielles en supportant une bibliothèque multi-hiérarchique pour les quatre niveaux conceptuels [15]. Action 4 : Méta méta modèle de description d’architectures logicielles Participants : Tahar Khammaci, Mourad Oussalah, Adel Smeda. Le méta-modèle que nous avons dénommé MADL (Meta Architecture Description Language) permet d’abstraire les concepts des architectures (composants, connecteurs, configurations). Il facilite la manipulation, la réutilisation et l’évolution des architectures logicielles. Enfin, il peut être vu comme une base pour l’unification des langages de description d’architecture et peut être utilisé pour la projection des concepts des langages de description d’architecture vers UML. En plus, il s’agit d’intégrer via un meta-ADL (construit au dessus de COSA) certaines notions et sémantiques des ADLs (comme les connecteurs, les configurations, les architecture) dans les techniques de modélisation architecturales proposées par l’OMG notamment dans UML2.0. A notre connaissance, il s’agit de la première tentative utilisée dans la communauté des architectures logicielles pour proposer une méthodologie de metamodélisation des ADLs. Cette méthodologie [19] [43] [12], en plus de réduire la distance sémantique entre la conception et l’implémentation, permet entre autres d’établir des modèles de correspondance d’une part entre les ADLs et d’autre part entre les ADLs et UML, et met en exergue les limites des techniques de modélisation proposées par l’OMG dans le cadre des « C&C views »des ADLs. 4.5.2 Thème - Modèles d’évolutions structurale et comportementale d’architectures logicielles Quatre actions sont menées dans le cadre de ce thème : Action 1 : Elaboration de modèles d’évolution statique et dynamique d’architectures logicielles Participants : Olivier Le Goaer, Mourad Oussalah, Nassima Sadou, Djamel Seriai, Dalila Tamzalit. Une architecture logicielle n’est jamais figée et est toujours amenée à évoluer soit pour prendre en compte de nouveaux besoins fonctionnels, techniques ou matériels, soit pour adapter les besoins déjà exprimés, et cela à n’importe quelle phase de son cycle de développement. Actuellement la majorité des efforts de recherche se focalise sur la spécification, le développement et le déploiement des composants d’une architecture logicielle. A notre connaissance, peu de travaux se consacrent à l’analyse et la gestion de l’évolution de ces architectures ainsi qu’à leur vérification. Ce manque est d’autant plus crucial dans les phases d’analyse et de conception. Pour ceux qui l’abordent, les solutions proposées se limitent à des techniques offertes le plus souvent par les ADLs eux-mêmes, mais qui restent souvent influencées par les langages d’implémentation support et les techniques qu’ils proposent, tels que le sous typage ou l’héritage. L’approche que nous préconisons est de permettre non seulement l’évolution d’un élément architectural (composant, interface, etc.) mais aussi de son architecture globale. Il s’agit par exemple d’ajouter un nouveau composant représentant une nouvelle fonctionnalité, de modifier l’interface d’une configuration ou encore de réorganiser l’interaction entre les différents éléments architecturaux, on parle alors d’architectures logicielles évolutives. Pour ce faire nous proposons d’élaborer un modèle d’évolution [11] [38] [39] permettant de : MODAL : Langages de Modélisation d’Architectures Logicielles 115 – abstraire l’évolution, en la distinguant du comportement propre à tout élément de l’architecture. Cela a pour avantage : – d’offrir des mécanismes pour décrire et gérer cette évolution indépendamment des éléments architecturaux et de leurs langages de description, – de favoriser la réutilisation de ces mécanismes d’évolution. – ajouter de nouvelles méthodes d’évolutions, notamment celles non prévues initialement. – prendre en compte l’évolution aussi bien statique (lors des spécifications de l’architecture) que dynamique (lors de l’exécution de l’application) car l’évolution peut intervenir à n’importe quelle phase du cycle du développement du logiciel. – vérifier la cohérence de l’architecture au cours de son évolution tout en respectant ses invariants. Action 2 : Styles de mise à jour dans les architectures logicielles Participants : Olivier Le Goaer, Mourad Oussalah, Nassima Sadou, Djamel Seriai, Dalila Tamzalit. Un système logiciel devra probablement être remanié au cours de sa vie pour satisfaire de nouveaux besoins et de nouvelles contraintes souvent imprédictibles au moment de sa construction. Peu de systèmes logiciels restent définitivement figés et l étude de leur dynamique émerge comme une discipline à part entière du génie logiciel. Dès lors il devient nécessaire de proposer des outils et des méthodes pour supporter et faciliter les évolutions, les adaptations ou encore les paramétrisations appliquées aux éléments des systèmes logiciels. Il s’agit d’abord d’offrir les moyens de transformer des systèmes existants tout en contrôlant les impacts de ces modifications. Des techniques variées ont été proposées et des frameworks dédiés sont régulièrement développés. Nos travaux se positionnent davantage sur le savoirfaire - ou l’expertise de mise à jour - et sa réutilisation [37] [44]. Nous cherchons à réifier cette expertise comme une entité logicielle de première classe pour pouvoir la manipuler et développer une gamme d’outils spécifiques. Comme sujet d’expertise, nous nous sommes intéressés aux familles d’architectures et de leur réification sous forme de styles architecturaux. Ces styles architecturaux fournissent principalement un vocabulaire du domaine pour les éléments de conception et un ensemble de contraintes topologiques qui déterminent les compositions autorisées sur ces éléments. De même, il existe des familles de mise à jour. Une famille est dédiée à la mise à jour d’une famille architecturale et est également réifiée sous forme de Style : le Style de mise à jour. Un Style récupère le vocabulaire du domaine et offre une stratégie avérée de mise à jour, c-a-d un ensemble ordonné de tâches. Un Style de MAJ est une entité pseudo-formelle constituée de deux parties : l’entête et la compétence. L’entête correspond à la signature du service de MAJ offert, la compétence est sa réalisation. On fait la distinction entre les Styles concrets et les Styles abstraits selon que la compétence est renseignée ou non. Cette entité bénéficie des mécanismes d’héritage et de composition pour la construction d’expertises de plus en plus complexes, par réutilisation. Le lien d héritage et la notion de Style abstrait/concret permet une classification arborescente des différents Styles de MAJ d’un même domaine. On souhaite désormais proposer un algorithme pour sélectionner semi-automatiquement dans ces arbres les Styles candidats pour guider à la fois les utilisateurs finaux lors de la MAJ de leur architectures et les experts eux-même pour la construction de nouveaux Styles. Enfin nous pensons que l’algorithme peut être amélioré si les Styles candidats possèdent un coefficient de similarité par rapport aux attentes initiales de l’utilisateur (final ou expert). Action 3 : Modèles d’éléments architecturaux multi-vues Participants : Mourad Oussalah, Djamel Seriai. 116 Rapport d’activité LINA 2003–2006 Durant cette dernière décennie, plusieurs ADLs ont été définis et ont contribués à fournir un cadre adéquat pour la spécification d’architectures logicielles. Une architecture d’un système définit celui-ci en terme de composants et d’interactions entre ces composants. Cette définition met en relief une forme de séparation de préoccupations qui consiste à séparer les composants (unités de stockage et de calcul) des connecteurs qui modélisent les interactions. Nous pouvons dores et déjà distinguer deux types de préoccupations : – celles qui concernent les composants, permettant ainsi d’étendre leur moyen de calcul et de stockage, – celles qui concernent les connecteurs, permettant ainsi de transformer les protocoles d’interaction et de les enrichir. A partir de ce constat, nous pensons qu’il est indispensable de disposer d’un modèle de description multi-vues d’architectures logicielles [14] [28] qui servira de base pour raisonner, analyser et réaliser la séparation et la composition des différentes vues d’un élément architectural. Action 4 : Modèle d’adaptation des composants logiciels Participants : Gautier Bastide, Sylvain Chardigny, Mourad Oussalah, Djamel Seriai, Dalila Tamzalit L’ingénierie logicielle à base de composants prévoit de construire des applications en assemblant des composants réutilisables. Cependant, l’expérience a montré que la réutilisation directe est extrêmement faible et que les composants doivent généralement être changés d’une manière quelconque pour s’intégrer à l’application ou aux autres composants. Ce constat est d’autant plus accentué avec la diversité des plates-formes logicielles qui sont proposées aujourd hui. La solution à ce problème de réutilisation réside évidemment dans le développement de composants logiciels capables de s’adapter à des conditions d’exécutions nouvelles ou changeantes. Ainsi un composant logiciel est dit adaptable s’il est capable de fonctionner dans des conditions d’exécution non prévues au moment de sa conception. L’adaptation est le processus qui consiste à changer un élément pour l’utiliser dans une application particulière, pour un besoin particulier. L’adaptation est donc une forme d’évolution. Nous nous intéressons dans cette action plus précisément à l’adaptation structurelle d’un composant logiciel [8] [18]. Il s’agit de modifier la structure de ce dernier tout en préservant ses services et son comportement. Ainsi, l’adaptation peut concerner la structure externe d’un composant (e.g. ses ports et ses interfaces, etc.) et/ou sa structure interne (e.g. ses sous-composants, ses classes d implémentation, etc.). Par exemple, dans le cas d’un composant logiciel conforme au modèle UML 2.0, l’adaptation structurelle peut consister en la réorganisation des services de ce composant dans des nouvelles interfaces ou en la décomposition de la structure interne monolithique d’un composant en un ensemble constitué d’autres (sous-) composants. L’invariant pour le composant à adapter est que l’ensemble des services offerts ou requis par le composant doit rester le même avant et après l’adaptation. En effet, l’adaptation structurelle ne s’intéresse pas à modifier le comportement, ni les fonctionnalités du composant, mais plutôt à réorganiser la structure de celui-ci. 4.6 Logiciels 4.6.1 MY (Responsable: Mourad Oussalah) URL/DOI: http ://www.sciences.univ-nantes.fr/info/perso/permanents/khammaci Mots-clés: métamodélisation, multi-abstractions, multi-hiérarchies Équipe de développement: Tahar Khammaci, Karima Messaadia, Mourad Oussalah, Virginie Gaborit MODAL : Langages de Modélisation d’Architectures Logicielles 117 MY est un prototype basé sur les classes d’objets complexes en utilisant le langage Java. Il est basé sur les techniques de méta-modélisation et méta-niveaux qui sont maintenant arrivées à maturité et ont été largement utilisés pour répondre à des problèmes réels dans les langages de programmation, des bases de données ou des environnements distribués. 4.6.2 SAEV (Responsable: Dalila Tamzalit) URL/DOI: http ://www.sciences.univ-nantes.fr/info/perso/permanents/tamzalit Mots-clés: architecture logicielle, évolution dynamique Équipe de développement: Mourad Oussalah, Nassima Sadou, Dalila Tamzalit SAEV est un prototype basé sur les classes d’objets complexes en utilisant le langage Java. C’est un modèle d’évolution générique et indépendant du langage cible hôte ADL. Son avantage est de pouvoir gérer l’évolution d’une architecture logicielle dans sa globalité, avec la gestion de l’ensemble des impacts et propagations engendrés par une évolution d’un seul élément architectural. 4.6.3 COSA (Responsable: Tahar Khammaci) URL/DOI: http ://www.sciences.univ-nantes.fr/info/perso/permanents/khammaci Mots-clés: architecture logicielle, composant, connecteur, configuration Équipe de développement: Tahar Khammaci, Mourad Oussalah, Adel Smeda COSA (Component-Object based Software Architecture) est un prototype développé sous Eclipse. C’est un modèle de description structurelle d’une architecture logicielle. C’est un modèle hybride qui se base sur une modélisation par objets et une modélisation par composants. En outre, il intègre un métamodèle qui permet la projection des concepts COSA vers le langage UML 2.0. 4.7 Activités contractuelles METEDI (2001-2007) Responsable: Mourad Oussalah Montant: 52ke Mots-clés: Enseignement à distance, nouvelles technologies de l’information et de la communication Participants: Mourad Oussalah, Nassima Sadou, Dalila Tamzalit Partenaires: P. Tchounikine, LIUM, Université du Mans L’objectif de METEDI (MEthodes et Technologies pour l’EAD via Internet) est d’utiliser les Nouvelles Technologies de l’Information et de la Communication (NTIC) pour l’enseignement à distance (EAD). L’objectif du projet est de développer des méthodologies et des technologies permettant de créer et de diffuser des enseignements à distance via Internet. On s’intéresse en particulier à la problématique de l’interaction (enseignement collaboratif, systèmes d’aide interactive), qui est une des clés principales de la réussite des formations EAD. L’accent est mis sur le développement de technologies pouvant faire l’objet de transferts de technologie à brève échéance, notamment dans le cadre des projets EAD de la Région. COM Responsable: Mourad Oussalah Montant: 85ke (2001-2006) 118 Rapport d’activité LINA 2003–2006 Mots-clés: objets, composants, modèles Participants: Tahar Khammaci, Olivier Le Goaer, Mourad Oussalah, Nassima Sadou, Adel Smeda, Dalila Tamzalit Partenaires: Equipe OBASCO, Equipe GDD-ATLAS, Equipe COLOSS L’objectif du projet COM (Composants, Objets et Modèles) est de concrétiser la place de Nantes en tant que pôle d’excellence en recherche et en enseignement sur les thèmes des objets, des modèles et des composants logiciels, de favoriser et renforcer, au niveau régional, la synergie Universités/Ecoles/Industries dans le but d’accélérer les transferts technologiques dans les différents domaines concernés par les OCM, d’inventer de nouvelles structures pour aider à la valorisation industrielle, d’attirer dans la région les meilleurs enseignants/chercheurs du domaine OCM et de contribuer à la création de PME innovantes dans le domaine des T.I.C. 4.8 Actions régionales, nationales et internationales 4.8.1 Actions régionales OBEO (2005–) Responsable: Dalila Tamzalit Mots-clés: évolution, migration, modèles architecturaux Participants: Dalila Tamzalit, Mourad Oussalah, Olivier Le Goaer, Cedric Brun Partenaires: OBEO Nantes Il s’agit de développer une plateforme d’ingénierie permettant de passer de modèles architecturaux conceptuels de haut niveau à des cibles techniques respectant différentes possibilités d’architectures ouvrant ainsi de nouvelles perspectives dans la cartographie, la refonte et la migration de patrimoines applicatifs. 4.8.2 Actions nationales Implication des membres de l’équipe MODAL dans : CAL (2005–) Responsable: Mourad Oussalah Mots-clés: conception, composant, architecture, spécification Participants: Tahar Khammaci, Mourad Oussalah, Dalila Tamzalit Partenaires: CAL (Conception d’architectures logicielles) est un groupe de travail crée par M. Oussalah et F. Oquendo dans le cadre du nouveau GDR GPL du CNRS regroupant une douzaine d’équipes travaillant sur la problématique de la conception d’architectures logicielles. OCM-SI Responsable: Dalila Tamzalit Mots-clés: systèmes d’information, architecture logicielle Participants: Tahar Khammaci, Mourad Oussalah, Dalila Tamzalit Partenaires: (2003–) MODAL : Langages de Modélisation d’Architectures Logicielles 119 OCM-SI est un groupe de travail du GDR I3 qui regroupe une quinzaine d’équipes travaillant sur la problématique des Objets, Composants, Modèles dans l’ingénierie des Systèmes d’information. ALP-SPL-OCM (2003–) Responsable: Mourad Oussalah Mots-clés: objets, modèles, composants Participants: Tahar Khammaci, Mourad Oussalah, Dalila Tamzalit Partenaires: ALP-SPL est un groupe de travail dirigé par J. Malenfant qui regroupe une vingtaine d’équipes travaillant sur la problématique des Objets, Composants et Modèles. GPL-Evolution (2003–) Responsable: Dalila Tamzalit Mots-clés: évolution, architectures logicielles Participants: Mourad Oussalah, Dalila Tamzalit Partenaires: GPL-Evolution est un groupe de travail qui s’interesse à la problématique de l’évolution dans les architectures logicielles 4.8.3 Actions européennes ERCIM-Software Evolution (2003–) Responsable: Dalila Tamzalit Mots-clés: évolution, reengineering, reverse engineering, transformation de modèles Participants: Mourad Oussalah, Dalila Tamzalit Partenaires: Université de Mons-Hainaut en Belgique, Université en Autriche, Université en Allemagne, Université aux Pays-Bas, Université en Suisse, Université en Grande Bretagne, Université au Portugal ERCIM-Evolution est un groupe de travail du Groupement Européen de Recherche en Informatique et en Mathématiques (ERCIM) qui est une organisation dédiée à l’avancement de la recherche européenne et au développement des technologies de l’information et des mathématiques appliquées. Evolution-Aspect (2003–) Responsable: Dalila Tamzalit Mots-clés: évolution, aspects Participants: Dalila Tamzalit Partenaires: Awais Rashid, Université de Lancaster, UK Evolution-Aspect est un groupe de travail travaillant sur la problématique de l’évolution-Aspect. 4.8.4 Actions internationales Encadrement-Annaba (Algérie) Responsable: Tahar Khammaci Mots-clés: architectures logicielles, UML, Réseau de Pétri, Requirements Engineering (2005–) 120 Rapport d’activité LINA 2003–2006 Participants: Tahar Khammaci Partenaires: Université de Annaba, Algérie Encadrement de deux thèses de Doctorat de l’Université de Annaba, de M. Amar Bessam et de M. Abdelkrim Amirat. Encadrement-Sétif (Algérie) (2004–) Responsable: Tahar Khammaci Mots-clés: architectures logicielles, Profil UML, MDA, 0CL Participants: Tahar Khammaci Partenaires: Université de Sétif, Algérie Encadrement de thèse de Doctorat de l’Université de Sétif de M. Adel Alti. Encadrement-INI (Algérie) (2003–) Responsable: Tahar Khammaci Mots-clés: architectures logicielles, modèles de composants, modèles de connecteurs Participants: Tahar Khammaci Partenaires: Institut National d’Informatique de Oued Smar, Algérie Encadrement de thèse de Doctorat de M. Djamal Bennouar. WSEAS-Working Group on Computers (2006–) Responsable: Mourad Oussalah Mots-clés: normes, standards, architectures logicielles Participants: Mourad Oussalah Partenaires: Une vingtaine de laboratoires internationaux WSEAS-WGC est un groupe de travail dont le but est de normaliser et standardider certains concepts dans des domaines variés comme celui de l’architecture logicielle. 4.8.5 Expertise de projets M. Oussalah a été : – Expert à l’évaluation de projets RNTL 2003 – Expert à l’évaluation de projets de développement scientifique de la région Languedoc Roussillon, depuis 1999. – Expert à l’évaluation de projets de développement scientifique de la région Nord Pas de Calais, 2004-2005. – Expert à l’évaluation des chercheurs de l’école ESIEE, 2006. – Membre du Conseil d’Evaluation Scientifique du Haut Commissariat à la Recherche d’Alger, depuis 1996. D. Tamzalit a été : – Experte à l’évaluation du projet de recherche en équipe du fonds Nature et Technologie du gouvernement canadien en 2005-2006. MODAL : Langages de Modélisation d’Architectures Logicielles 121 4.9 Diffusion des résultats 4.9.1 Organisation de conférences scientifiques, d’écoles de chercheurs,. . . M. Oussalah a : – organisé la Première Conférence Francophone sur les Architectures Logicielles (CAL’06), Université de Nantes, co-président du comité scientifique avec F. Oquendo (Univ. Vannes) – organisé l’European Workshop on Software Architecture (EWSA’06), Université de Nantes, Président du comité d’organisation T. Khammaci a : – été co-président du comité d’organisation de la Première Conférence Francophone sur les Architectures Logicielles (CAL’06), Université de Nantes, – été membre du comité d’organisation de l’European Workshop on Software Architecture (EWSA’06) à Nantes. D. Tamzalit a été : – co-présidente du comité de programme des seconde et troisième éditions du workshop OCM-SI (Nancy 2003 et Biarritz 2004) avec publications d’actes. – co-présidente du comité d’organisation de la Première Conférence Francophone sur les Architectures Logicielles (CAL’06), Université de Nantes. – membre du comité d’organisation de l’European Workshop on Software Architecture (EWSA’06), Université de Nantes. 4.9.2 Comités de programmes et comités de lecture M. Oussalah a été membre des comités de programme et de lecture de : – KSCE : International Conference on Knowledge Sharing and Collaborative Engineering – 2006, Virgin Islands, USA – 2004, Virgin Islands, USA – RTSI-L’objet : Numero special, Vues, Points de vue, Rôles et paradigmes proches : du concept à son exploitation, Coordinateur B. Coulette, 2006. – EWSA’05 : European Workshop on Software Architecture, Saint Andrews, Scotland, 2005 – CTS’05 : International Symposium on Collaborative Technologies and Systems, In cooperation with the IEEE, May 2005, Missouri, USA – JC : Journées Composants, Conférence Francophone autour des Composants Logiciels – Perpignan, Octobre 2006, Conjointement avec RenPar’17/SympA’2006/CFSE’5 – Le Croisic, Presqu’ı̂le de Guérande, Avril 2005 – ISI : Ingénierie des Systèmes d’Information, Revue des Sciences et Technologies de l’Information Numéro spécial, Méthodes Avancées de Développement des Systèmes d’Information, Editeurs : Jean-Pierre Giraudin et Dominique Rieu, 2005 – Software, Practice and Experience : Journal on “Experiences with Auto-adaptive and Reconfigurable Systems”, Wiley InterScience (ed), 2005 – INFORSID’04, Mai 2004, Biarritz – ICCE’03 : 10th ISPE International Conference on Concurrent Engineering : Research and Applications, July, 2003, Madeira Island, Portugal – CAPS’4 : Fourth International Conference on Human-System Learning, July 2003 in Caledonian University in Glasgow, UK – ALCAA : Agents Logiciels, Coopération, Apprentissage & Activité humaine, Bayonne, France 122 Rapport d’activité LINA 2003–2006 – 2003 – 2004 – WEAR’03 : Workshop on Encapsulation and Access Rights in Object-Oriented Design and Programming Septembre 2003, Geneva, Switzerland – IKS’03 : Information and Knowledge Sharing, November 2003, Scottsdale Arizona – ISPS : International Symposium on Programming and Systems, Algiers, Algeria – 2005 – 2003 – LMO : Langages et Modèles à Objets – Nimes (mars 2006) – Berne (mars 2005) – Lille (mars 2004) – Vannes (février 2003) T. Khammaci a été membre des comités de programme et de lecture de : – OCM-SI : Worskshop sur les Objets, Composants, Modèles dans l’ingénierie des Systèmes d’Information, – 2006, Hammamet, Tunisie – 2004, Biarritz, France, – 2003, Nancy, France – CTS : IEEE International Symposium on Collaborative Technologies and Systems – CTS’06 : Las Vegas, Nevada, USA, – CTS’05 : Saint Louis, Missouri, USA – ISPS : International Symposium on Programming Systems, Algiers, Algeria – 2005 – 2003 – IJSEKE : International Journal of Software Engineering and Knowledge Engineering, 2006. – SERP’03 : International Conference on Software Engineering Research and Practice, Las Vegas, NV, USA, 2003. – CISCO’04 : International Conference on Complex Systems, Jijel, Algeria, 2004. – Handbook of Software Engineering and Knowledge Engineering, Vol. 3, Recent Advances, 2005. – INFORSID’04, Biarritz. – CAPS’4 : Fourth International Conference on Human-System Learning, Caledonian University in Glasgow, UK, July 2003. D. Tamzalit a été membre des comités de programme et de lecture de : – EWSA’06 : European Workshop on Software Architecture, Nantes, France, 2006, – OCM-SI : Worskshop sur les Objets, Composants, Modèles dans l’ingénierie des Systèmes d’Information, – 2006, Hammamet, Tunisie – 2005, Grenoble, France – 2004, Biarritz, France – 2003, Nancy, France – LMO’05 : Langages et Modèles à Objet, Berne, Suisse, 2005. – Revue l’Objet – numéro spécial Evolution, 2006. – numéro spécial Objets, Composants et Systèmes d’Information, 2006. MODAL : Langages de Modélisation d’Architectures Logicielles 123 – revue e-TI, depuis 2004. 4.9.3 Impact sur la formation universitaire Les membres de l’équipe dispensent des enseignements ou encadrent des projets autour de la problématique des objets et des composants au sein des formations suivantes : – Master Recherche ALD (Architectures Logicielles Distribuées) de Nantes – Master Professionnel ALMA de Nantes – Licence, licence professionnelle et Master I de l’Université de Nantes M. Oussalah a été membre du jury de 17 thèses (rapporteur : noté *), pour la période 2003-2006 : – H. Albin-Amiot, 2003, G. Salaun, 2003, Y-G. Guéhéneuc, 2003, – A. Farias, 2003, P. Aniorte* (HDR), 2004, R. Hamouche*, 2004, F. Leymonerie*, 2004, – A. Chouli*, 2004, I. Hassine*, 2005, S. Matougui*, 2005, – M. Saidane*, 2005, N. Merle*, 2005, J. Revillard*, 2005, – A. Corbière*, 2006, A. Smeda, 2006, C. Tibermacine, 2006, E. Khoumeiri, 2006. T. Khammaci a été membre du jury (examinateur) de deux thèses pour la période 2003-2006 : – J.B. Filippi, 2003 – A. Smeda, 2006 M. Oussalah encadre les thèses de : – N. Sadou, co-encadrement de D. Tamzalit – O. Le Goaer, co-encadrement de D. Tamzalit – G. Bastide, co-encadrement de D. Seriai – S. Chardigny, co-encadrement de D. Seriai T. Khammaci encadre les thèses de Doctorat de : – D. Bennouar (Institut National d’Informatique, Algérie) – A. Alti (Université de Sétif, Algérie) – A. Bessam (Université de Annaba, Algérie) – A. Amirat (Université de Annaba, Algérie) M. Oussalah a encadré les Master Recherche de : – N. Amara, co-encadrement de T. Khammaci – H. Madani, co-encadrement de T. Khammaci – B. Turcaud, co-encadrement de D. Tamzalit et de D. Seriai – O. Le Goaer, co-encadrement de D. Tamzalit et de D. Seriai – C. Brun, co-encadrement de D. Tamzalit 4.9.4 Conférences et séminaires donnés 2004 : – M. Oussalah, T. Khammaci, A. Smeda, Expliciter les connecteurs dans les architectures logicielles, GDR-ALP, Mars 2004, Lille. – T. Khammaci, Les modèles de composants académiques, International Conference on Complex Systems, Septembre 2004, Jijel, Algérie. 2003 : – M. Oussalah, Les composants architecturaux, invité aux journées SEE-SIC, 22 mai 2003, thème : « composant : gestion, composition », Paris. 124 Rapport d’activité LINA 2003–2006 4.9.5 Activités collectives – M. Oussalah est président de la commission de spécialistes 27ième section de Nantes depuis 2001. – M. Oussalah est membre de la commission de spécialistes 27ème section, Université d’Angers, du Mans et de Corté, depuis avril 2001. – M. Oussalah a été membre du conseil d’administration de l’UFR des Sciences de Nantes, 20012004. – D. Tamzalit est membre de la commission des spécialistes 27ième section de Nantes et de Vannes depuis 2004. – D. Tamzalit est membre du conseil de direction de l’IUT de Nantes depuis 2005. – T. Khammaci est webmaster de l’équipe MODAL. – M. Oussalah est membre du conseil du département de l’IUP Miage de Nantes depuis 2005. 4.10 Publications de référence de l’équipe hors période [1] M. O USSALAH et al. (E DS ). Génie Objet, Analyse et Conception de l’évolution. Editions Hermès, Septembre 1999. ISBN : 2-7462-0029-5. [2] M. O USSALAH et M. M AGNAN. Multiple inheritance systems with exceptions. Artificial Intelligence, 6 :3–24, 1994. Kluwer Acad. Pub. [3] M. O USSALAH et K. M ESSAADIA. The ontologies of semantic and transfer links. In D. F ENSEL et R. S TUDER, réds., Proceedings of the 11th European Workshop on Knowledge Engineering and Knowledge Management (EKAW’99), volume 1621 of LNAI, pages 225–242, Dagstuhl Castle, Germany, Mai 1999. Springer. ISBN : 3-540-66044-5. [4] M. O USSALAH et A. S ERIAI. A Reuse Based Object-Oriented Frameworks Towards Easy Formulation of Complex Queries. In Proceedings of the 19th International Conference on Conceptual Modelling (ER’2000), Salt Lake City, Utah, USA, Octobre 2000. In co-operation with ACM, SIGMOD, SIGMIS. [5] M. O USSALAH et D. TAMZALIT. Allowing conceptual emergence through instance evolutionary processes. Journal of Engineering Intelligent Systems, 8(3) :177–192, Septembre 2000. ISSN 0969-1170. [6] G. TALENS et C. O USSALAH. Versions of simple and composite objects. In Proceedings of the 19th Intl. Conf. on VLDB, pages 62–72, Dublin, Irlande, Août 1993. [7] S. VAUTTIER, M. M AGNAN, et M. O USSALAH. Extended Specification of Composite Objects in UML. Journal of Object-Oriented Programming, pages 29–39, Juin 1999. 4.11 Publications de référence de l’équipe dans la période [8] G. BASTIDE, A. S ERIAI, et M. O USSALAH. Adaptation of monolithic software components by their transformation into composite configurations based on refactoring. In Proceedings of the 9th International ACM SIGSOFT Symposium on Component-Based Software Engineering, Västerås near Stockholm, Sweden, july 2006. MODAL : Langages de Modélisation d’Architectures Logicielles 125 [9] T. K HAMMACI, A. S MEDA, et M. O USSALAH. Coexistence of Object-oriented Modeling and Architectural Description, volume III of Handbook of Software Engineering and Knowledge Engineering, chap. 5, pages 119–149. S. K. Chang Ed., World Scientific Publishing Co. Int, Singapore, 2005. ISBN : 981-256-273-7. [10] M. O USSALAH et al. (E DS ). Ingénierie des composants : concepts, techniques et outils. Editions Vuibert, Juin 2005. ISBN : 2-7117-4836-7. [11] N. S ADOU, D. TAMZALIT, et M. O USSALAH. How to manage uniformly Software Architecture at different abstraction levels. In Proceedings of the 24th ACM International conference on Conceptual Modelling (ER’05), volume 3716 of Lecture Notes in Computer Science, pages 16–30, Klagenfurt, Austria, August 2005. Springer. ISBN : 3-540-29389-2. [12] A. S MEDA, M. O USSALAH, et T. K HAMMACI. Mapping ADLs into UML 2.0 using a meta ADL. In Proceedings of the IEEE/IFIP International Working Conference on Software Architecture (WICSA’05), pages 247–248, Pittburgh, Philadelphia, USA, november 2005. IEEE Computer Society. ISBN : 0-7695-2548-2. 4.12 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [13] D. B ENNOUAR, T. K HAMMACI, et A. H ENNI. The Design of a Complex Software System with ArchJava. Journal of Computer Science, 2(11) :807–814, september 2006. ISSN : 1549-3636, Science Publications. [14] A. G ACEMI, A. S ERIAI, et M. O USSALAH. Code generation from architectural multiviews description. Journal of Object Technology, 4(3) :41–49, april 2005. ISSN : 1660-1769, ETH publisher. [15] M. O USSALAH. Reuse in KBS : A components approach. International Journal of Expert Systems With Applications (ESWA), 24(2) :173–181. Pergamon Press, Elsevier Science, 2003. ISSN : 09574174. [16] M. O USSALAH, N. S ADOU, et D. TAMZALIT. An architecture-based model for software evolution. WSEAS Transactions on Information Science and Applications Journal, 1(67) :1713–1720, december 2004. ISSN : 1790-0832. [17] M. O USSALAH, N. S ADOU, et D. TAMZALIT. SAEV, a model to ensure a static and dynamic software architecture evolution. WSEAS Transactions on Systems Journal, 4(5) :671–681, may 2005. ISSN : 1109-2777. [18] A. S ERIAI, G. BASITIDE, et M. O USSALAH. How to generate distributed software components from centralized ones ? Journal of Computers, 1(5), august 2006. ISSN : 1796-203X. [19] A. S MEDA, T. K HAMMACI, et M. O USSALAH. Meta architecting : Toward a new generation of architecture description languages. Journal of Computer Science, 1(4) :454–460, 2005. ISSN : 1549-3636, Sciences Publications. [20] A. S MEDA, M. O USSALAH, et T. K HAMMACI. A multi-paradigm approach to describe complex software system. WSEAS Transactions on Computers, 3(4) :936–941, Octobre 2004. ISSN : 1109-2750. 126 Rapport d’activité LINA 2003–2006 A2. Revues d’audience nationale avec comité de lecture [21] F. BARBIER, C. C AUVET, M. O USSALAH, D. R IEU, S. B ENNASRI, et C. S OUVEYET. Concepts clés et techniques de réutilisations dans l’ingénierie des systèmes d’information. L’objet, 10(1) :11–35, 2004. ISSN : 1262-1137. [22] G. BASTIDE, M. O USSALAH, et D. S ERIAI. Restructuration des composants logiciels - une approche d’adaptation structurelle pour les composants logiciels basée sur la refactorisationde code orienté objet. L’objet - Numéro spécial Evolution dans les architectures logicielles, 2006. ISSN : 1262-1137. [23] N. S ADOU, D. TAMZALIT, et M. O USSALAH. SAEV : une solution à l’évolution structurelle dans les architectures logicielles. L’objet - Numéro spécial Evolution dans les architectures logicielles, 2006. ISSN : 1262-1137. C. Colloques de diffusion nationale ou internationale sur invitation [24] T. K HAMMACI. Les modèles de composants académiques. In International Conference on Complex Systems), Jijel, Algérie, 2004. D1. Colloques de diffusion internationale avec comité de lecture et actes [25] A. A LTI, T. K HAMMACI, et A. S MEDA. Building a UML Profil for COSA Software Architecture. In Proceedings of the Second IEEE International Conference on Information & Communication Technologies : From Theory to Applications (ICTTA’06), pages 1041–1042, Damascus, Syria, Avril 2006. ISBN : 0-7803-9521-2, Edition électronique IEEE Catalog Number 06EX220. [26] G. BASTIDE. A refactoring-based tool for software component adaptation. In Proceedings of the 10th European Conference on Software Maintenance and Reengineering, Bari, Italia, march 2006. ISBN : ISBN 0-7695-X-X, IEEE Computer Society. [27] G. BASTIDE, A. S ERIAI, et M. O USSALAH. Adapting software components by structure fragmentation. In Proceedings of the 21st Annual ACM Symposium on Applied Computing ; Software Engineering : Applications, Practices, and Tools (SE), Dijon, France, april 2006. ISBN : 1-58113X. [28] A. G ACEMI, A. S ERIAI, et M. O USSALAH. Separation of concerns in software architecture level via a multiviews description. In Proceedings of the IEEE International Conference on Information Reuse and Integration (IRI 2004), pages 60–65, Las Vegas, Nevada, USA, November 2004. IEEE Systems, Man, and Cybernetics Society. ISBN : 0-7803-8819-4. [29] T. K HAMMACI, A. S MEDA, et M. O USSALAH. Active connectors for component-object based software architecture. In Proceedings of the International Conference on Software Engineering and Knowledge Engineering (SEKE’04), pages 346–349, Banff, Canada, Juin 2004. ISBN : 1891706-14-4. [30] T. K HAMMACI, A. S MEDA, et M. O USSALAH. ALBACO : Une Architecture logicielle à base de composants et d’objets pour la description de systèmes complexes. In Proceedings of the 8th Maghrebian Conference on Software Engineering and Artificial Intelligence (MCSEAI’04), pages 37–48, Sousse, Tunisia, Mai 2004. MODAL : Langages de Modélisation d’Architectures Logicielles 127 [31] T. K HAMMACI, A. S MEDA, et M. O USSALAH. Mapping COSA Software Architecture Concepts into UML 2.0. In Proceedings of the 5th IEEE/ACIS International Conference on Computer and Information Science (ICIS’06), Honolulu, Hawaii, july 2006. [32] M. O USSALAH, N. S ADOU, et D. TAMZALIT. SAEV :a Model to Face Evolution Problem in Software Architecture. In Proceedings of the International ERCIM Workshop on Software Evolution, pages 137–146, Lille, France, april 2006. [33] M. O USSALAH, A. S MEDA, et T. K HAMMACI. Software Connectors Reuse in Component-Based Systems. In Proceedings of the IEEE International Conference on Information Reuse and Integration (IRI’03), pages 543–550, Las Vegas, NV, USA, Octobre 2003. IEEE Systems, Man, and Cybernetics Society. [34] M. O USSALAH, A. S MEDA, et T. K HAMMACI. An Explicit Definition of Connectors for Component-Based Systems. In Proceedings of the 11th IEEE International Conference on the Engineering of Computer Based Systems (ECBS’04), pages 44–51, Brno, Czech Republic, Mai 2004. IEEE Computer Society. ISBN : 0-7695-2125-8. [35] M. O USSALAH et D. TAMZALIT. A Conceptualization of OO evolution. In Proceedings of the 9th International Conference of Object-Oriented Information Systems (OOIS’03), volume 2817 of Lecture Notes in Computer Science, pages 274–278, Geneva, Switzerland, Septembre 2003. Springer. ISBN : 3-540-40860-6. [36] M. O USSALAH et D. TAMZALIT. A study of Object Evolution. In Proceedings of the 15th Conference on Advanced Information Systems Engineering (CAiSE’03), volume 74 of CEUR Workshop Proceedings, Klagenfurt/Velden, Austria, june 2003. CEUR-WS.org. ISBN : 86-435-0549-8. [37] M. O USSALAH, D. TAMZALIT, O. L. G OAER, et A. S ERIAI. Updating styles challenge the updating needs within component-based software architectures. In Proceedings of the Eighteenth International Conference on Software Engineering and Knowledge Engineering, San Francisco Bay, USA, july 2006. [38] N. S ADOU, D. TAMZALIT, et M. O USSALAH. E-COSA : a Model for enhancing Software Architecture Evolution. In Proceedings of the International Conference on the PRInciples of Software Engineering (PRISE’04), Buonos Aires, Argentina, November 2004. [39] N. S ADOU, D. TAMZALIT, et M. O USSALAH. A Software Architecture Evolution : Description and Management Process. In Proceedings of the International Conference on Software Engineering Research and Practice (SERP’05), pages 368–374, Las Vegas, USA, June 2005. CSREA Press. ISBN : 1-932415-49-1. [40] N. S ADOU, D. TAMZALIT, et M. O USSALAH. A unified approach for software architecture evolution at different abstraction levels. In International Workshop on Principles of Software Evolution September (IWPSE 2005), in association with 8th European Software Engineering Conference and 12th ACM SIGSOFT International Symposium on the Foundations of Software Engineering (ESEC/FSE 2005), pages 65–70, Lisbonne, Portugal, September 2005. IEEE Computer Society. ISBN : 0-7695-2349-8. [41] A. S ERIAI, G. BASTIDE, et M. O USSALAH. Transformation of centralized software components into distributed ones by code refactoring. In Proceedings of the International Conference on Distributed Applications and Interoperable Systems (DAIS’06), volume 4025 of Lecture Notes in Computer Science, Bologna, Italia, june 2006. Springer. ISBN : 3-540-35126-4. 128 Rapport d’activité LINA 2003–2006 [42] A. S MEDA, T. K HAMMACI, et M. O USSALAH. Operational Mechanisms For Component-Object Based Software Architecture. In Proceedings of the First IEEE International Conference on Information & Communication Technologies : From Theory to Applications (ICTTA’04), Damascus, Syria, Avril 2004. ISBN : 0-7803-8483-0, Edition électronique catalogue IEEE (04EX852C). [43] A. S MEDA, M. O USSALAH, et T. K HAMMACI. MADL : Meta Architecture Description Language. In Proceedings of the Third ACIS International Conference on Software Engineering, Research, Management and Applications (SERA’05), pages 152–159, Pleasant, Michigan, USA, august 2005. IEEE Computer Society. ISBN : 0-7695-2297. [44] D. TAMZALIT, M. O USSALAH, O. L. G OAER, et A. S ERIAI. Updating Software Architectures :a style-based approach. In International Conference on Software Engineering Research and Practice, Las Vegas, Nevada, USA, july 2006. [45] D. TAMZALIT, N. S ADOU, et M. O USSALAH. Evolution problem within Component-Based Software Architecture. In Proceedings of the 2006 International Conference on Software Engineering and Knowledge Engineering (SEKE’06), San Francisco Bay, USA, july 2006. D2. Colloques de diffusion nationale avec comité de lecture et actes [46] A. A LTI et T. K HAMMACI. Transformation des concepts architecturaux en uml 2.0. In Actes du Congrès International en Informatique Appliquée, pages 195–201, Bordj Bou Arréridj, Algérie, november 2005. ISBN : 9947-0-1042-2. [47] A. A LTI et A. S MEDA. Un profil UML 2.0 pour l’architecture logicielle COSA. In Actes du Workshop Objets, Composants et Modèles dans l’Ingénierie des Systèmes d’Information (OCMSI’06), In conjunction with INFORSID’06”, pages 62–73, Hammamet, Tunisie, Juin 2006. [48] G. BASTIDE. Adaptation de composants logiciels dans les environnements ubiquitaires et mobiles. In Actes des Journées JDOC, Saint Nazaire, France, april 2006. [49] G. BASTIDE. Restructuration de composants logiciels : Une approche d’adaptation structurelle statique basée sur la refactorisation de code orienté-objet. In Actes du Workshop Objets, Composants et Modèles dans l’Ingénierie des Systèmes d’Information (OCM-SI’06), INFORSID’06, pages 95–106, Hammamet, Tunisie, Juin 2006. [50] T. K HAMMACI, M. O USSALAH, et A. S MEDA. Les ADLs : Une voie prometteuse pour les architectures logicielles. In Actes du colloque Agents Logiciels, Coopération, Apprentissage & Activité humaine (ALCAA’03), Bayonne, France, Septembre 2003. [51] N. S ADOU, D. TAMZALIT, et M. O USSALAH. SAEV : un modèle d’évolution pour les architectures logicielles. In Actes du Workshop Objets, Composants et Modèles dans l’Ingénierie des Systèmes d’Information (OCM-SI’05), In conjunction with INFORSID’05”, pages 24–35, Grenoble, France, Mai 2005. [52] N. S ADOU, D. TAMZALIT, et M. O USSALAH. La problématique de l’évolution dans les Architectures Logicielles. In Proceedings de la Deuxième Journée sur l’Ingénierie Dirigée par les Modèles (IDM’06), Lille, France, june 2006. E. Colloques (avec ou sans actes) à diffusion restreinte [53] M. O USSALAH, T. K HAMMACI, et A. S MEDA. Expliciter les connecteurs dans les architectures logicielles. In Actes Journée GDR-ALP-OCM, pages 43–48, Lille, France, mars 2004. MODAL : Langages de Modélisation d’Architectures Logicielles 129 [54] A. S MEDA, M. O USSALAH, et T. K HAMMACI. Improving Component-Based Software Architecture by Separating Computations from Interactions. In Proceedings of the First International Workshop on Coordination and Adaptation Techniques for Software Entities (WCAT’04), Oslo, Norway, Juin 2004. in conjunction with ECOOP 2004. F1. Ouvrages ou chapitres d’ouvrage scientifique [55] M. O USSALAH, T. K HAMMACI, et A. S MEDA. Les composants : définitions et concepts de base, chap. 1, pages 1–18. Les systèmes à base de composants : principes et fondements. M. Oussalah et al. Eds, Editions Vuibert, Juin 2005. ISBN : 2-7117-4836-7. [56] A. S MEDA, T. K HAMMACI, et M. O USSALAH. Les modèles de composants académiques, chap. 3, pages 45–86. Les systèmes à base de composants : principes et fondements. M. Oussalah et al. Eds, Editions Vuibert, juin 2005. ISBN : 2-7117-4836-7. F3. Direction d’ouvrage [57] M. O USSALAH et al. (E DS ). L’ingénierie des composants dans les systèmes d’information (L’objet, Logiciel, Réseaux). Editions Hermès, Avril 2004. ISSN : 2-7462-0886-5. [58] M. O USSALAH, F. O QUENDO, D. TAMZALIT, et T. K. (E DS ). Actes de la première conférence francophone sur les Architectures Logicielles, (CAL ’2006). Editions Hermès, Septembre 2006. ISBN : 2-7462-1577-2. [59] A. S ERIAI et al. (E DS ). Actes du Workshop Objets, Composants et Modèles dans l’Ingénierie des Systèmes d’Information (OCM-SI’06). May 2006. [60] D. TAMZALIT et al. (E DS ). L’ingénierie des composants dans les systèmes d’information (L’Objet, Logiciel, bases de données, réseaux). Editions Hermès, février 2005. ISBN : 2-7462-1321-4. G. Autres manifestations sans actes [61] D. B ENOUAR, T. K HAMMACI, et A. H ENNI. A layered connector model for a complex software system design. In International Arab Conference on Information Technology (ACIT’04), Constantine, Algeria, december 2004. [62] D. B ENOUAR, T. K HAMMACI, et A. H ENNI. Vers la définition d’un modèle de connecteurs logiciels pour la description de systèmes complexes. In International Conference on Complex Systems, Jijel, Algeria, september 2004. [63] D. B ENOUAR, T. K HAMMACI, et A. H ENNI. A Connector Model for Software Design System by Assembling Components. In IEEE/CDTA International Computer System and Information Technology (ICSIT’05), Alger, Algeria, july 2005. [64] A. S MEDA, T. K HAMMACI, et M. O USSALAH. Software Connectors in the COSA Approach. Third Aspect-Oriented Software Development (AOSD) - Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS)- (Poster avec sélection), Mars 2004. H. DEA, thèses et habilitations [65] C. B RUN. Migration des architectures logicielles. Rapport de stage de Master ALD, Université de Nantes, France, Septembre 2006. 130 Rapport d’activité LINA 2003–2006 [66] O. L E G OAER. Auto-adaptation dans les architectures logicielles. Rapport de stage de Master ALD, Université de Nantes, France, Septembre 2005. [67] H. M ADANI. Modèle de Correspondance ADL/UML. Rapport de stage de Master ALD, Université de Nantes, France, Septembre 2006. [68] A. S MEDA. Contribution à la métamodélisation des architectures logicielles. PhD thesis, Thèse de Doctorat de l’Université de Nantes, Juin 2006. [69] B. T URCAUD. Validation de SAEV : un modèle d’évolution d’architectures logicielles à base de composants. Rapport de stage de Master ALD, Université de Nantes, France, Septembre 2005. 4.13 Bibliographie externe [70] R. A LLEN et D. G ARLAN. A formal basis for architectural connection. ACM Transaction on Software Engineering and Methodology, 6(3) :213–249, Juillet 1997. [71] D. F ENSEL et AL .. The unified problem-solving method development language UPML. Knowl. Inf. Syst, 5(1) :83–131, 2003. [72] D. G ARLAN. Software architecture and object-oriented systems. In Proceedings of the the Information Processing Society of Japan (IPSJ), Object-Oriented Symposium 2000, Tokyo, Japan, 2000. [73] D. G ARLAN, S. C HENG, et J. KOMPANEK. Reconciling the needs of architectural description with object-modeling notations. Science of Computer Programming Journal, Special UML, 44 :23–49, april 2002. Elsevier Press. [74] J. I VERS, P. C LEMENTS, D. G ARLAN, R. N ORD, B. S CHMERL, et J. RODRIGO. Documenting component and connector views with uml 2.0. Rapport technique, School of Computer Science, Carnegie Mellon University, April 2004. [75] N. M EDVIDOVIC, D. S. ROSENBLUM, J. E. ROBBINS, et D. F. R EDMILES. Modeling software architecture in the unified modeling languages. ACM Transactions on Software Engineering and Methodology, 11(1) :2–57, Janvier 2002. [76] N. M EDVIDOVIC et R. N. TAYLOR. A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering, 26 :39–70, 2000. [77] F. O QUENDO. Formally modeling software architectures with the uml2.0 profile for pi-adl. ACM Sofware Engineering Notes, 31(1) :1–19, 2006. [78] D. P ERRY et A. W OLF. Foundations for the study of software architectures. Software Engineering Notes, 17(4) :40–52, 1992. Équipe OBASCO : OBjets, ASpects, COmposants 5.1 Composition de l’équipe Responsable : Pierre Cointe Chercheurs-enseignants : – Pierre Cointe Professeur, EMN, — – Rémi Douence Maı̂tre-assistant, EMN, — – Thomas Ledoux Maı̂tre-assistant, EMN, — – Jean-Marc Menaud Maı̂tre-assistant, EMN, — Chargé de recherche, INRIA, 01/09/2006-31/08/2007 – Gilles Muller Professeur, EMN, — – Jacques Noyé Maı̂tre-assistant, EMN, — Chargé de recherche, INRIA, 01/09/2002-31/08/2004 – Jean-Claude Royer Professeur, EMN, — – Mario Südholt Maı̂tre-assistant, EMN, — Chargé de recherche, INRIA, 01/09/2004-31/08/2006 Chercheurs associés : – Hervé Grall Maı̂tre-assistant associé, EMN, 01/09/2004 – Yoan Padioleau Maı̂tre-assistant associé, EMN, 01/09/2005 Chercheurs invités : – Julia Lawall Visiting Scientist, University of Copenhagen, 05/2003–08/2003, 05/2006–08/2006 131 132 Rapport d’activité LINA 2003–2006 Chercheurs post-doctorants : – Didier Le Botlan Post-Doc, Région-CNRS, 01/09/2005 Chercheurs doctorants : – Ali Assaf Allocataire MENRT, Université de Nantes, 03/10/2005 – Christophe Augier Allocataire CIFRE Jaluna, Université de Nantes, 01/10/2004 – Fabien Baligand Allocataire FT R&D MAPS/AMS Issy, Ecole des Mines de Paris, 01/01/2005 – Luis Daniel Benavides Navarro Allocataire EMN, Université de Nantes, 01/10/2005 – Gustavo Bobeff Ingénieur, ProxiAD, 01/09/2001 – Simon Denier Allocataire EPA, Université de Nantes, 01/10/2003 – Simplice Djoko Djoko Allocataire INRIA, Université de Nantes, 01/10/2005 – Marc Léger Allocataire FT R&D MAPS/AMS Grenoble, Ecole des Mines de Paris, 01/10/2005 – Nicolas Loriant Allocataire EPA, Université de Nantes, 01/10/2004 – Florian Minjat Allocataire MENRT, Université de Nantes, 01/10/2004 – Dong Ha Nguyen Allocataire INRIA, Université de Nantes, 01/04/2005 – Sebastian Pavel Allocataire MENRT, ACI sécurité, Université de Nantes, 01/10/2003 – Richard Urunuela Allocataire Région Pays de la Loire, Université de Nantes, 01/10/2004 – Hugo Arboleda Allocataire EMN, Cotutelle Université de Nantes et de Colombie, 01/10/2006 – Fabricio Fernandes Allocataire gouvernement Brésilien, Université de Nantes, 01/10/2006 – Fabien Hermenien Allocataire EMN, Université de Nantes, 01/10/2006 – Angel Nunez Allocataire Armines STREP AMPLE, Université de Nantes, 01/10/2006 Anciens doctorants : – Hervé Albin-Amiot Ingénieur R&D, Sodifrance, thèse soutenue le 06/02/2003 – Pierre-Charles David Ingénieur de recherche, France Telecom-Grenoble, thèse soutenue le 01/07/2005 – Hervé Duchesne Coopérant, Afrique, thèse abandonnée le 31/07/2005 OBASCO : OBjets, ASpects, COmposants 133 – Andrès Farı́as Ingénieur, SSII au Chili, thèse soutenue le 18/12/2003 – Yann-Gaël Guéhéneuc Professeur associé, Université de Montréal, thèse soutenue le 23/06/2003 – Éric Tanter Professeur associé, Université du Chili, thèse soutenue le 07/11/2004 – Luc Teboul Ingénieur R&D, Banque Parisienne, thèse abandonnée le 01/10/2004 – Marc Ségura-Devillechaise Ingénieur R&D, BTP Banque, thèse soutenue le 01/07/2005 5.2 Présentation et objectifs généraux 5.2.1 Historique Le projet Obasco1 créé conjointement par l’INRIA et l’EMN en novembre 2003 investigue le continuum entre les approches par objets et par composants, en explorant le nouveau domaine de la programmation par aspects [1, 161, 20, 106]. Les plus anciens membres du projet Obasco possèdent une solide expérience dans la conception et l’implémentation des langages à objets (réflexifs et dynamiquement typés) [1, 2, 7, 102]. Les arrivées successives de J. Noyé, M. Südholt, R. Douence et J.-C. Royer ont enrichi cette expertise langage avec l’apport de compétences fortes en programmation fonctionnelle et logique, tout particulièrement en matière d’évaluation partielle et d’analyses statiques [6], de spécifications algébriques et de preuves [26]. Les recrutements de J.-M. Menaud puis de G. Muller ont ouvert de nouveaux champs d’application dans l’implémentation de composants système [8, 19] sensibilisant l’équipe aux langages dédiés et à leur mise en œuvre pour la description des aspects [16]. 5.2.2 Les thèmes de recherche Les thèmes de recherche d’Obasco s’inscrivent donc dans le domaine du génie du logiciel et de la programmation. Notre but est de vérifier la possibilité d’un continuum entre les objets, les aspects et les composants. Nous étudions les modèles formels de composants et d’aspects pour raisonner sur les systèmes logiciels adaptables. Un résultat naturel de nos recherches est la réalisation de prototypes fruits de nos investigations en matière de réalisation de nouveaux langages de programmation et de nouveaux paradigmes pour les architectures à base de composants. Dans cette démarche [28], nous rejoignons l’approche générative suggérée par K. Czarnecki & U. Eisenecker dans [154] au travers de la mise en œuvre des deux techniques duales que sont la réflexion (au sens de B.C. Smith [174, 179]) et la spécialisation (au sens de N.D. Jones [158]). Langages post-objets Nous voulons contribuer à l’évolution des langages à objets vers un modèle unifié permettant la programmation à grande échelle et l’adaptation par la réflexion. Nous travaillons donc à une meilleure compréhension du modèle des classes, aux alternatives des mécanismes d’encapsulation et d’héritage, 1 http://www.emn.fr/x-info/obasco/. 134 Rapport d’activité LINA 2003–2006 ainsi qu’à une meilleure représentation des patrons de conception (design patterns) et des cadriciels (frameworks). Nous nous attaquons finalement à la résolution des problèmes résultant, d’une part, de l’évolution des objets vers les composants. et d’autre part, de l’intégration des objets et des aspects. Programmation par composants Nous travaillons à la définition d’un langage permettant (i) de programmer avec des composants en explicitant leur composition à la fois au niveau structurel et au niveau comportemental, (ii) de gérer leur adaptation tout au long de leur cycle de vie. A cette fin nous nous reposons sur les techniques de réflexion, de spécialisation et de preuves. Nous sommes vigilants à la façon dont un tel langage peut s’interfacer avec les propositions industrielles, en particulier les modèles EJB, .NET, CCM, et Fractal. Programmation par aspects Nous proposons une formalisation de ce nouveau courant de programmation en introduisant au niveau langage les mécanismes supportant la séparation des préoccupations. Ainsi, le développement de notre modèle EAOP (Event-Based Aspect Oriented Programming) est basé sur les notions d’événement, de trace et de moniteur. Nous travaillons à l’implémentation Java, C et C++ de ce modèle mais également à son extension vers la concurrence et la distribution. Les langages dédiés Au niveau applicatif, la conception sûre, efficace et prédictible de systèmes d’exploitation qu’ils soient généralistes (Linux, Windows) ou embarqués nous a conduit à étudier les relations entre l’approche par langages dédiés (DSL) et l’approche par aspects. Au delà de la réalisation de nouvelles politiques d’ordonnancement ou de nouvelles politiques d’évolution des pilotes Linux, nous travaillons à l’expression de langages d’aspects dédiés à un domaine comme par exemple, les systèmes d’exploitation. 5.2.3 Perspectives Notre ligne directrice élaborée lors de la proposoition de création du projet Obasco [20] est l’évolution de la programmation à petite échelle, telle qu’elle se pratique avec des langages à objets à la Smalltalk, Java, et C#, vers la programmation à grande échelle, telle qu’elle apparait avec les modèles de composants. Cette ligne nous conduit aujourd’hui à privilégier l’approche des aspects et les techniques de transformation de programme associées. Nous considérons en effet que les aspects, au même titre que les modèles et les langages dédiés constituent un élément clef dans le développement du génie logiciel. Ces trois paradigmes concourent à la mise en œuvre d’une programmation générative devant soutenir la réalisation des usines logicielles [28, 144]. 5.3 Fondements scientifiques 5.3.1 À propos de l’évolution des langages à objets Les architectures à base de composants tout comme les architectures à métaniveaux (réflexives) sont des sujets de recherche depuis une vingtaine d’années et leur importance s’est accrue de façon parallèle au succès des langages à objets. Avec la fin des années 70, la technologie des objets a mûri avec la réalisation de nombreux projets industriels basés sur des langages comme Smalltalk, ObjectiveC, C++, Eiffel ou OBASCO : OBjets, ASpects, COmposants 135 Java [102]. Aujourd’hui, le support des objets dans les langages de programmation est devenu un standard de fait. Toutefois la programmation d’applications de très grandes tailles a révélé des déficiences dans le modèle des objets. Des problèmes comme ceux de la construction de systèmes fiables à partir de composants développés indépendamment ou bien de l’adaptation du comportement d’un système à de nouvelles caractéristiques de l’application sont très largement ouverts. Plutôt que de décliner les fondements scientifiques qui relèvent essentiellement de l’implémentation des langages de programmation nous avons pris le parti de livrer ici quelques observations portant sur les évolutions des langages (à objets). À nos yeux, ces observations en expliquant la convergence actuelle entre langages de programmation et langages de description d’architectures, inspirent notre programme de recherche. Donc, plutôt que de décrire notre arsenal technologique (sémantique, techniques d’analyse statique, techniques de compilation, techniques de preuve) nous avons choisi de donner notre vision de l’évolution des objets aux composants, cette vision conduit à considérer la nouvelle approche de la programmation par aspects, approche qui suggère également de revisiter l’usage des langages dédiés. À terme, nous postulons que les différentes méthodes et outils mis en œuvre dans cette étude du continuum objets, aspects et composants constitueront les éléments permettant d’expliciter la programmation dite générative en donnant corps à l’idée d’usines logicielles. 5.3.2 Des objets aux composants Malgré d’indéniables succès, les objets n’ont pas confirmé tous les espoirs qu’ils avaient engendrés2 et ils ont partiellement échoué en ce qui concerne l’amélioration générale de la réutilisabilité. Ceci est dû aux difficultés de réutilisation d’un modèle dit de type boı̂te blanche. La réutilisation par héritage (ou par clonage) demande une bonne connaissance de l’implémentation de la classe (ou de l’objet). Les applications ont également connu des changements significatifs en terme d’échelle et de domaines d’application. L’intégration de morceaux logiciels hétérogènes reposant sur la connaissance des services techniques (distribution, transaction, sécurité ...), est devenue un enjeu fondamental. Partant de ces constats, la programmation par composants est née (C. Szyperski en livre une bonne introduction dans [177]). L’idée de base, comme exposée par M.D. McIlroy dès 1968 [163], est d’orchestrer la réutilisation en mettant en place une industrie et un marché des composants logiciels. Ceci impose une dissociation forte entre le producteur et le consommateur, mais introduit aussi de nouvelles étapes dans le cycle de vie d’un composant (e.g., packaging, déploiement). Ceci conduit à une approche par couches de la programmation « du petit grain au gros grain » avec les objets comme langage d’implémentation des composants primitifs et un langage de composants pour exprimer la composition et ce que l’on appelle également les éléments de l’architecture logicielle. Les deux traits principaux d’un langage de composants sont : – La compositionnalité : un composant encapsule proprement son implémentation derrière une interface et il représente une unité logicielle composable. La composition met en correspondance les services fournis et les services requis en utilisant des protocoles d’interaction précis (communications synchrones ou asynchrones) et des propriétés. Ceci définit la structure et le comportement des composants composites. Dans l’idéal cette notion de composition devrait être indépendante de tout langage d’implémentation. – L’adaptabilité : un composant est une entité générique qui doit s’adapter à ses différents contextes d’utilisation et cela tout au long de sa vie logicielle. Cette adaptation peut être statique (à l’assemblage) mais aussi dynamique (à l’exécution). Des architectures flexibles peuvent être créées 2 Voir http://www.dreamsongs.com/Essays.html et http://www-poleia.lip6.fr/˜briot/colloque-JFP/. 136 Rapport d’activité LINA 2003–2006 en considérant les composants comme des entités de première classe, par exemple un composant peut être le résultat d’un service. Cette aptitude est une différence importante avec la notion de module. Évidemment ces propriétés soulèvent de nouveaux enjeux dans la conception des langages de programmation et leur implémentation. Ils deviennent le lieu d’intersection et d’intégration d’idées provenant des langages d’interconnexion de modules à la Prieto Diaz & Neighbors [171], des langages de description d’architectures à la Shaw & Garlan [173] (Architectural Description Languague ou ADL) et des langages à objets [1, 180]. Les modules proposent une approche intéressante pour leur structuration. En particulier des propositions comme les modules mixin combinent la généricité, les définitions récursives et la liaison dynamique. Les ADL proposent beaucoup des caractéristiques précédentes mais à un niveau de description formelle plutôt qu’au niveau langage de programmation par essence exécutable. Finalement les langages à objets restent une source importante d’inspiration pour ces nouvelles technologies. D’autres extensions, comme l’introduction de protocoles explicites dans l’interface ont été proposées. Ces protocoles sont souvent des machines à états finis mais on y trouve également quelques idées plus originales basées sur les types. Récemment plusieurs prototypes « orientés connexion » [177] ont été développés comme des extensions de Java, ils se focalisent surtout sur la structure des composants. Au niveau implémentation une difficulté importante réside dans le conflit entre la liaison statique et la liaison dynamique. Celui-ci est dû à deux tendances antinomiques : d’un côté l’encapsulation stricte et le besoin de trouver les erreurs au plus tôt dans le cycle de vie, de l’autre côté la possibilité d’adapter un composant tout au long de son cycle de vie. Pour résoudre ce conflit et d’une certaine manière réconcilier « ouverture » et « efficacité/sécurité », notre objectif est de combiner deux méthodologies duales : la réflexion pour retarder les choix au plus tard et la spécialisation pour tirer partie des choix fixés au plus tôt. 5.3.3 Des objets aux aspects Les communautés des objets et de la réflexion ont très bien illustré l’utilisation du principe de séparation des préoccupations dans les domaines du génie logiciel et des intergiciels. La programmation tout comme la modélisation par aspects sont devenues des champs très actifs de recherche pour lesquels il s’agit de dépasser le modèle des objets en proposant deux nouvelles idées : – les aspects : ces nouvelles unités logicielles permettent l’identification, l’encapsulation et la manipulation d’un ensemble de propriétés relatives à un domaine précis (par exemple la distribution, les transactions, la sécurité. . .), – le tissage : la prise en compte de nouveaux concepts, buts, besoins ou services, ne doit pas se faire, si l’on veut respecter le principe de modularité, en tissant sans contrôle les nouveaux codes de ces aspects avec l’ancien code du programme de l’application. Ainsi les aspects doivent être spécifiés et programmés comme des unités indépendantes ensuite tissées avec le programme original (dit de base) d’une façon non intrusive. Nous développons ici deux contributions des objets (à la Smalltalk [157]) pour l’émergence de cette nouvelle forme de programmation dite par aspects. L’approche réflexive : fait l’hypothèse qu’il est possible de séparer dans une application donnée, le quoi exprimé dans le niveau de base et le comment exprimé au métaniveau. – Dans le cas d’un langage de programmation réflexif à la Smalltalk, le principe est de réifier au métaniveau la représentation structurelle du programme, par exemple les classes, leurs méthodes, les erreurs mais également son comportement, par exemple l’envoi de message, l’allocation des OBASCO : OBjets, ASpects, COmposants 137 objets et l’héritage. Suivant la partie de la représentation qui sera concernée, la réflexion est dite structurale ou comportementale. Les protocoles des métaobjets (MetaObject Protocol ou MOP) sont des protocoles spécifiques décrivant au métaniveau le comportement des entités réifiées. La spécialisation d’un MOP par héritage est une approche standard (voir le livre de synthèse sur le langage CLOS [160, 151]) pour étendre un langage de base avec de nouveaux mécanismes comme l’héritage multiple, la concurrence, la combinaison des méthodes ou la composition des métaclasses [3]. – Dans le cas d’un intergiciel ouvert [7], l’utilisation principale de la réflexion comportementale est le contrôle des envois de messages par interposition d’un métaobjet en charge de traitements additionnels (par exemple transaction, gestion de cache, distribution). Néanmoins, l’introduction de tels métaobjets intercepteurs demande d’instrumenter le niveau de base avec des crochets qui feront le lien sémantique entre l’objet de base et son métaobjet. Le Modèle-Vue-Contrôleur : appelé communément MVC [157] est le premier patron de conception (connu maintenant sous le nom Observateur [156]) utilisant implicitement la notion d’aspect. L’idée principale était de séparer, au niveau de la conception, le modèle décrivant l’application comme une hiérarchie de classes et deux aspects distincts : la présentation visuelle et le contrôle, eux-mêmes également décrits comme deux autres hiérarchies de classes. Au niveau de l’implémentation, l’encapsulation usuelle et l’héritage n’étaient pas à même d’exprimer ces aspects transverses et de permettre le couplage entre le modèle, sa vue et son contrôleur. Ce couplage requiert : – l’introduction d’un mécanisme de dépendance en charge de la notification à un observateur des changements de l’objet source ; Ce mécanisme est requis pour mettre à jour la vue automatiquement quand l’état du modèle change. – l’instrumentation de méthodes du modèle pour lever un événement chaque fois qu’une variable d’instance change de valeur. Cette rétrospective développée dans [29] montre que la réflexion est un cadre conceptuel général qui autorise la modularisation des préoccupations d’implémentation dès lors que le développeur comprend la description du métaniveau. En ce sens la réflexion est dirigée par la solution puisqu’elle repose sur les protocoles du langage pour produire une solution. D’un autre côté, le patron MVC a donné aux développeurs une méthode dirigée par le problème puisque basée sur l’expression et la combinaison de trois préoccupations (aspects) distinctes. Le MVC était le précurseur de la programmation événementielle, au sens de Java, et a contribué (avec les combinaisons de méthode de CLOS) à l’émergence de la notion de point de jonction, c’est-à-dire un point bien défini de l’exécution d’un modèle où se fait le déclenchement des aspects associés à la vue ou au contrôleur. Aujourd’hui, dans le cadre du réseau d’excellence AOSD-EUROPE3 (voir section 5.7.1) nous travaillons à la formaliser les nombreux travaux menés autour des aspects en proposant la définition de langages de coupes pour exprimer un ensemble de points de jonction, mais également de langages d’actions pour décrire le comportement des aspects. 5.3.4 Des langages d’aspects aux langages dédiés Un langage dédié ou DSL (Domain Specific Language) est un langage de haut niveau permettant des constructions bien adaptées à une classe donnée de problèmes correspondant à une famille de programmes. Un langage dédié simplifie la programmation car il est naturellement conçu pour un domaine 3 http://www.aosd-europe.net. 138 Rapport d’activité LINA 2003–2006 restreint, les optimisations de bas niveau sont capturées par le langage plutôt qu’à la charge explicite du programmeur. La distance plus grande avec le code de bas niveau renforce la robustesse des applications. Plus important, l’utilisation des constructions dédiées facilite la vérification de propriétés spécifiques qui seraient impossibles à prouver ou trop coûteuses avec une approche plus générale, c’est le cas par exemple de la terminaison [8]. Dans le cadre d’une conception par aspects, lorsque le comportement des aspects vise une famille de programmes bien identifiée, il peut être judicieux de concevoir un langage dédié pour le langage d’action. Cette approche est particulièrement intéressante lorsque le domaine visé requiert une grande expertise technique ou que le logiciel cible se doit d’être d’une grande robustesse. Nous appliquons donc cette méthodologie au développement de logiciels critiques comme les noyaux des systèmes d’exploitation et les applications systèmes (cache web, serveur ftp). Plus précisément, l’utilisation d’un langage de coupe nous permet de réutiliser de gros logiciels patrimoniaux tels que le noyau Linux ou le gestionnaire de cache web Squid en introduisant de nouvelles interfaces fonctionnelles pour l’ordonnancement ou le préchargement. Ces nouvelles fonctionnalités sont apportées par le biais de composants écrits soit directement en C, ou dans un langage dédié lorsque le domaine fonctionnel est bien identifié, comme dans le cas de l’ordonnancement [56]. 5.4 Domaines d’applications Du fait de sa nature distribuée, la technologie des composants est une technologie clé dans le domaine des télécommunications et des systèmes d’informations des entreprises [149]. Pour industrialiser efficacement ces domaines, il est stratégique de définir des lignes de produits pour automatiser la production des composants logiciels associés tout en garantissant la sécurité des assemblages. Comme les autres chercheurs du domaine de la programmation générative [154, 153], nous développons de nouvelles méthodes de programmation comme la réflexion, la spécialisation, les langages dédiés et les aspects pour décrire et adapter les architectures logicielles à base de composants. Nous entendons appliquer ces méthodes et les outils associés d’une façon systématique et uniforme du système d’exploitation jusqu’aux systèmes d’information de l’entreprise. Nos résultats applicatifs portent entre autre sur l’extension de politique d’ordonnancement Linux, sur l’adaptation de stratégies de chargement anticipé pour les caches Web et sur l’adaptation dynamique des composants Fractal à leur environnement (voir section 5.6 sur les logiciels). 5.4.1 Systèmes d’exploitation et réseaux Le développement des systèmes d’exploitation est traditionnellement considéré à la frontière du génie logiciel et des langages de programmation. En fait, l’absence de méthodes de conception pour les systèmes d’exploitation produit des systèmes très fermés qui sont très difficiles à étendre et modifier. Trop souvent la généralité du système est sacrifiée au profit des performances. Par ailleurs, l’utilisation fréquente de langages de programmation peu sûrs, combinée avec la réalisation d’optimisations manuelles, compromet fortement la sécurité. Nous postulons que l’étude des langages dédiés à un domaine est une approche prometteuse pour résoudre ce double problème de l’ouverture et de la sûreté. Notre premier champ d’application est celui de la mise en œuvre des langages dédiés pour la programmation sûre des politiques d’ordonnancement d’un système d’exploitation et ce indépendemment du système cible. L’idée est d’intégrer automatiquement le code d’une politique dans les composants du système qui sont concernés. Cette approche conduit à séparer ces politiques des mécanismes sous-jacents du système de base. Ces politiques sont vues comme des aspects et programmées à l’aide d’un langage OBASCO : OBjets, ASpects, COmposants 139 dédié. Cette combinaison de la programmation par aspects et des langages dédiés a été validée dans le contexte de Linux grâce à Bossa. Une autre réalisation concerne la rétro-conception et l’évolution dynamique des applications systèmes par instrumentation du code de base et l’introduction d’aspects. Dans ce cadre, deux expérimentations ont été menées : l’ajout de protocoles réseaux dans le cache Web Squid et la correction à chaud de trous de sécurité dans divers applicatifs comme le serveur ftp wu ftpd. 5.4.2 Intergiciels et systèmes d’information des entreprises Stimulée par la croissance des applications réseaux et les besoins en intéropérabilité de ses applications distribuées, la technologie des intergiciels a pris une importance stratégique. Elle couvre une variété importante de systèmes logiciels, incluant les objets distribués et les composants, les applications mobiles et finalement les applications ubiquitaires. Les entreprises et les organisations utilisent aujourd’hui ces intergiciels pour développer leur système d’information en intégrant leurs anciennes applications dans des infrastructures plus homogènes. Du fait du nombre important d’équipements intervenant dans un réseau informatique, la mobilité et la reconfiguration dynamique sont deux traits dominants, ayant comme caractéristique commune de nécessiter une adaptation continue des applications à leur environnement. En particulier, les applications travaillant dans un environnement très changeant pour lequel la disponibilité des ressources évolue dynamiquement, doivent s’auto-adapter en permanence à celui-ci. Nous étudions l’adaptation d’un composant à son contexte d’exécution comme un aspect en le traitant de manière distincte et transverse au reste de l’application. Là encore cet aspect est décrit par un langage dédié. Nous avons ainsi exprimé des politiques d’adaptation pour deux sortes de composants : les EJB et les composants Fractal. 5.5 Résultats nouveaux 5.5.1 Post-objets Participants : Pierre Cointe, Jacques Noyé, Thomas Ledoux, Hervé Albin-Amiot, Eric Tanter, Simon Denier, Florian Minjat Nous investiguons les nouvelles directions prises par les langages à objets. Il s’agit en particulier d’améliorer les mécanismes d’héritage et d’encapsulation en précisant les différents rôles des classes, d’introduire de nouveaux mécanismes pour factoriser les méthodes et rendre compte de l’évolution des classes, de réifier au niveau du langage de programmation les patrons de conception, de marier (méta)objets, classes et aspects [27, 28]. Réification des patrons de conception. Les patrons de conception permettent de comprendre, modéliser et implémenter des micro-architectures basées sur les classes à l’aide des relations d’agrégation et d’héritage. Néanmoins, et du fait de l’absence de mécanismes langage pour les représenter, ces patrons sont difficiles à tracer et donc à réutiliser dans la mesure où les éléments qui les constituent au niveau de la conception disparaissent dans le code des programmes. Les deux thèses de H. Albin et Y.-G. Guéhéneuc sont consacrées à l’étude de la traçabilité et à l’analyse de ces patrons de conception. Leur but commun est de combler le fossé entre les langages de programmation à la Java, et les langages de modélisation à la UML en proposant, d’un côté la génération 140 Rapport d’activité LINA 2003–2006 automatique de code à partir d’un modèle de patrons [108] et de l’autre la détection automatique des patrons de conception dans du code source Java [120]. Elles reposent sur un métamodèle commun PDL (Pattern Description Language) que nous avons développé spécifiquement pour la description de ces patrons. Un premier outil, PatternsBox, utilise ce métamodèle pour décrire des métapatrons, instancier ces métapatrons en patrons abstraits, paramétrer les patrons abstraits et générer le code source associé. Un second outil, Ptidej, utilise ce même métamodèle en collaboration avec le solveur de contraintes Choco/Palm pour détecter les formes exactes ou dégradées des applications des patrons puis les visualiser dans les bibliothèques en cours de rétroconception. Finalement, ces deux thèses et les outils de rétroconception de programmes Java associés, nous ont permis de préciser un ensemble de définitions des relations entre classes proposées par UML [47]. Une autre approche pour réifier au niveau du langage de programmation les patrons de conception est de les représenter sous forme d’aspects. Le sujet de thèse de S. Denier expérimente les aspects comme une nouvelle forme de représentation des patrons. Dans le prolongement des travaux de Hanneman et Kiczales nous avons étudié comment « aspectiser » avec AspectJ les différents patrons du GOF [156] ainsi que leurs compositions. Ensuite, l’étude de la mise en œuvre des patrons de conception et de leurs interactions dans le cadriciel JHotDraw nous a permis de répertorier différents scenarii de composition [23, 40]. Des (méta) objets aux aspects Nous avons développé une visite guidée d’AspectJ illustrant les nouveaux concepts de points de jonction (join points), de coupes (pointcuts), d’actions (advice) et de déclarations inter-types (ou introductions), Cette visite est l’opportunité de discuter en quoi l’approche des aspects répond à certain des problèmes de dispersion et de mélange de codes mal résolus par les objets. Cette visite présente une genèse des aspects du point de vue de la réflexion et des architectures à métaniveaux et montre finalement comment les aspects permettent d’améliorer la mise en œuvre des classes, des patrons de conception et des cadriciels [29]. Réflexion comportementale partielle en Java. La réflexion est une approche puissante pour adapter le comportement d’une application en cours d’exécution et pour permettre une séparation claire des préoccupations. Néanmoins l’applicabilité de la réflexion comportementale est limitée par l’absence d’un consensus large concernant les propriétés d’une infrastructure réflexive. Dans [13], nous avons : – présenté une approche compréhensible de la réflexion basée sur le modèle des crochets. L’idée consiste à grouper des points d’exécution réifiés en des ensembles composables, puis d’attacher au métaniveau un comportement associé à ces ensembles au travers d’un lien explicite et configurable, – développé dans le contexte de Java l’implémentation de l’architecture ouverte Reflex qui supporte cette approche et rend possible la combinaison d’une configuration statique et dynamique pour la réflexion (voir section 5.6). La thèse d’Eric Tanter [134] décrit dans les détails la construction de Reflex et montre en quoi ces travaux comblent le vide entre les protocoles de métaobjets et la programmation par aspects d’une manière mutuellement profitable. La section 5.5.3 s’intéresse plus particulièrement à Reflex en tant que noyau pour la programmation par aspects. Finalement, [99] explore comment Reflex peut être utilisé pour permettre l’introspection interactive. OBASCO : OBjets, ASpects, COmposants 141 Réflexion et aspects en Smalltalk. Dans la lignée d’ObjVlisp et de ClassTalk [4, 3], nous avons aussi étudié l’utilisation de la réflexion pour implémenter les aspects dans Smalltalk. Dans [101], T. Ledoux et N. Bouraqadi introduisent le MOP MetaclassTalk et discutent d’une approche possible pour isoler les aspects comme des métaclasses explicites et les tisser ensemble grâce à la composition des métaclasses. Nous travaillons aujourd’hui dans le contexte du « laboratoire langage » du réseau d’excellence AOSDEurope à la définition en Smalltalk d’un métamodèle rendant compte des principaux langages d’aspects existants. Modèles des Traits et des Classboxes Le modèle des TRAITS (tel que défini par le Software Composition groupe de Berne [147, 22]) introduit un niveau de granularité intermédiaire entre celui des méthodes et des classes. En factorisant une collection de méthodes au sein d’une entité du langage réutilisable par plusieurs classes, le trait offre un mécanisme de factorisation complémentaire à celui de l’héritage des classes. Nous avons montré comment utiliser le mécanisme des déclarations inter-types d’AspectJ pour transposer en Java ce modèle des traits initialement conçu pour Smalltalk/Squeak [81, 22]. Le modèle des CLASSBOX également défini par le groupe de Berne [181], permets lui d’étendre localement une collection de classes par ajout de nouveaux membres (variables et méthodes d’instance). En collaboration avec Berne, nous avons proposé une hybridation des deux modèles au terme de laquelle une classe peut être localement étendue en utilisant un trait. Le modèle résultant est illustré par une implémentation efficace du modèle de coopération pour laquelle une collaboration est représentée par un CLASSBOX et un rôle par un TRAIT [74]. 5.5.2 Composants Notre objectif principal est de proposer un modèle hiérarchique de composant avec protocoles explicites permettant la synthèse de code Java. Nous souhaitons disposer d’un niveau de description des composants assez abstrait et lisible, intégrant des protocoles en plus des descriptions de données et qui soit également opérationnel. Notre volonté est de concilier un niveau de spécification formelle avec un niveau langage de programmation permettant ainsi plus de confiance dans les composants et une conception plus assistée. Les travaux sous-jacents sont donc selon les cas orientés, plus théorie ou plus pratique, mais avec un soucis de cohérence et de traçabilité entre les deux visions. Protocoles explicites Participants : Gustavo Bobeff, Rémi Douence, Andrés Farı́as, Jacques Noyé, Sebastian Pavel, JeanClaude Royer, Mario Südholt Andrés Farı́as a développé dans sa thèse le modèle C W EP (Components with Explicit Protocols) basé sur le principe des interactions explicites entre composants [118]. Ces protocoles sont définis sur la base des automates d’états finis. Il s’agit d’une notion de système de transitions étiquetées enrichie par des notations exprimant la gestion des identités des composants et servant des besoins de communication aussi bien que de sécurité, comme par exemple les contrôles d’accès par rôle. Ce modèle introduit formellement la notion de substitution des composants dérivée de travaux sur les types réguliers d’O. Nierstraz. Cette notion de substitution a été étendue pour valider la correction entre une spécification de composant et son implémentation [44]. Nous avons également utilisé une classe de protocoles définis à l’aide de compteurs pour la définition concise de ces protocoles d’interactions entre composants [65]. Ce type de protocoles permet d’exprimer 142 Rapport d’activité LINA 2003–2006 des structures algébriques et même certaines structures non-algébriques tout en fournissant une définition des propriétés fondamentales de composants, la compatibilité et la substitution, à l’aide d’un système de types. Une autre classe de protocoles non réguliers, basés sur des automates à pile visible (Visibly Pushdown Automata) a été introduite dans le cadre du sujet de thèse de Dong Ha Nguyen. Contrairement aux protocoles réguliers, ces protocoles permettent de compter des occurrences d’événements d’exécution tout en supportant les mêmes propriétés de fermeture que les protocoles réguliers [57]. Finalement, nous avons expérimenté l’introduction de protocoles très généraux dans les composants. Cette approche se base sur la notion de systèmes de transitions symboliques (STS). Il s’agit de systèmes à états finis mais dont les transitions comportent des paramètres et des gardes. L’objectif étant de disposer d’un langage confortable d’un point de vue expressivité et lisibilité, un besoin commun avec les travaux sur les algèbres de processus avec passage de valeurs. Nous avons donc défini un modèle hiérarchique de composant en Java avec des STS explicites et nous avons testé son implémentation. Le principe, au cœur des travaux de S. Pavel, est décrit dans [58] et repose sur des contrôleurs qui encapsulent la partie donnée et protocole. Les communications entre composants sont réalisées par des canaux de communications dans un style voisin de ce qui se fait entre agents. Vérifications de propriétés Participants : Hervé Grall, Jacques Noyé, Sebastian Pavel, Jean-Claude Royer Nous nous intéressons aux moyens généraux de décrire le comportement dynamique des composants et de vérifier des propriétés sur les composants et les architectures [95]. Notre approche représente la dynamique d’un composant (son protocole) par un Système de Transitions Symbolique (STS). Le comportement dynamique d’une architecture peut être calculé par le principe du produit synchronisé. Nous avons défini une méthode générale [17] pour décrire la partie donnée et la partie comportement dynamique d’une architecture à base de composants concurrents et communicants. Nos expériences montrent que des assistants de preuve comme PVS nous permettent de prouver des propriétés générales aussi bien que des propriétés de logiques temporelles [26]. Dans [62] nous avons montré que notre approche de preuve en logique du premier ordre sur les STS coı̈ncide avec la logique temporelle CTL*. Plus précisément nous avons enrichi CTL* avec des données et défini son interprétation sur les STS. Ainsi nous avons prouvé qu’une propriété comme le non-blocage d’un STS peut s’exprimer comme une formule simple du premier ordre ou par la formule AG EX true de CTL*. Ceci nous permet de disposer, pour les STS, d’un lien avec les outils classiques de vérification de modèles. La méthode initialement présentée dans [17] est étendue avec des files d’attentes pour les messages, des émissions et des réceptions de messages. Cette extension nous donne un modèle uniforme de composant avec communications synchrones et asynchrones. Toutefois l’utilisation des communications asynchrones complexifie le comportement dynamique, ceci accroı̂t le besoin d’outils de vérification. Nous avons proposé une première approche de l’analyse du contenu des boı̂tes à lettres et un algorithme calculant la dynamique du système [63]. Nous nous sommes intéressés à la boundedness de certaines classes de STS d’une part pour des raisons d’analyse et d’autre part, dans l’idée que cette propriété est importante dans le cadre de la disponibilité de ressources ou de services. Dans un premier temps nous avons considéré des systèmes avec compteurs simples (+1, -1) et nous avons étendu ce résultat à des compteurs plus généraux autorisant les communications de valeurs entre composants et des fonctions affines de type a × X ± b. Les premiers résultats ont été appliqués au cas de composants communicants de façon asynchrone. Nous avons montré que ceci aidait à l’analyse de certains systèmes dans [53]. Une utilisation OBASCO : OBjets, ASpects, COmposants 143 intéressante de cette analyse de borne est de permettre, sous certaines conditions, la simplification automatique de spécification [92]. La bornitude est une propriété importante du protocole mais également une condition nécessaire pour satisfaire des requêtes en temps fini. Nous avons ainsi montré que cette analyse pouvait aider à prouver des propriétés de disponibilité sur un système asynchrone de réservation de billets. Nous avons poursuivi ces travaux en définissant une notion de décomposition bornée simple et pertinente dans le cadre des composants. Cette notion a été formalisée et nous avons démontré qu’elle permettait de construire une abstraction (parfois automatiquement) du comportement dynamique. Ces travaux ont été publiés dans [61] avec application à un exemple d’allocateur de ressources. Adaptation dynamique Participants : Gustavo Bobeff, Pierre-Charles David, Thomas Ledoux, Jacques Noyé Dans [77] nous avons montré que l’adaptation est un trait clé des composants et nous avons proposé une définition de la notion de composant prenant cet aspect en compte. Nous avons discuté le fait que les implémentations standard des composants sont limitées à une adaptation superficielle. Elle consiste en une enveloppe de code qui entoure le composant initial laissant intacte son implémentation. Nous avons conclu que l’implémentation elle-même pouvait aussi être adaptée sans casser le principe d’encapsulation en s’appuyant sur des techniques de spécialisation (plus précisément, nous considérons une combinaison d’évaluation partielle et de découpage). Un point important, pour préserver l’encapsulation, est d’utiliser des scénarios de spécialisation, précédemment introduits dans le contexte du langage C par Le Meur et al [162]. Ceci peut être complété par l’utilisation de générateurs de composants pour mieux séparer la production du composant de son utilisation. Nous travaillons actuellement sur un modèle de composant, un langage et une infrastructure basés sur ces idées [33]. Ce premier type d’adaptation est automatique et prend effet durant la phase d’assemblage des composants. Nous nous sommes aussi intéressés à une autre approche très différente qui est programmée et prend effet à l’exécution. Dans [37, 79], nous avons montré comment étendre le modèle de composants Fractal pour répondre au besoin des applications s’exécutant dans des contextes toujours plus variés et dynamiques et devant s’adapter de façon autonome à ces changements. Les composants Fractal sont rendus auto-adaptables par le biais de politiques d’adaptation attachées dynamiquement aux composants grâce à un contrôleur Fractal spécifique. Ces politiques sont écrites dans un langage dédié sous la forme de règles réactives. Leur exécution repose d’une part sur WildCAT, un système permettant de détecter les évolutions du contexte d’exécution [38], et d’autre part sur FScript, un langage dédié pour la reconfiguration dynamique consistante de composants Fractal [80]. L’ensemble constitue le modèle d’exécution Safran décrit dans la thèse de P.-C. David [115]. Configuration dynamique et intégrité des communications Participants : Thomas Ledoux, Marc Léger, Jacques Noyé, Sebastian Pavel, Jean-Claude Royer Un aspect avancé des architectures à base de composants est la possibilité d’évolution dynamique des connexions qui va de pair avec le besoin de contrôler les communications. Un premier travail a été fait avec le langage de programmation de composant ArchJava. Nous avons expérimenté la définition de lignes de produits dans ce langage pendant le mémoire de DEA de S. Pavel [128]. La correspondance entre composants et produits est assez naturelle mais la notion de variabilité 144 Rapport d’activité LINA 2003–2006 est plus délicate. La principale difficulté est que le langage propose une notion d’intégrité des communications mais que celle-ci empêche la configuration externe d’un composant. Elle peut être contournée en transformant les composants en générateurs de composants [59]. L’analyse du domaine produit un générateur statique dont le rôle est de fabriquer un générateur responsable de la configuration dynamique. Assurer la conformité entre la spécification d’une architecture logicielle à base de composants et son implémentation repose sur le respect d’un certain nombre de contraintes structurelles. L’intégrité des communications, qui est l’une de ces contraintes, est garantie statiquement à la compilation dans ArchJava. Cependant, dans le cas d’un modèle plus ouvert comme Fractal l’ensemble des reconfigurations dynamiques du système ne sont pas déterminées à la compilation. Nous nous sommes intéressés aux violations possibles de l’intégrité des communications dans Julia, une implémentation de Fractal en Java, puis nous avons proposé un mécanisme dynamique de contrôle de cette intégrité pour Julia [123, 73]. Formalismes pour les architectures logicielles Participants : Jean-Claude Royer La définition de langages d’architectures logicielles et l’étude de leurs propriétés sont une préoccupation cruciale pour les composants. Les diagrammes d’architecture représentent les composants et leurs liens de communication. Dans la conception d’applications logicielles, la spécification recourt souvent à des descriptions diagrammatiques comme UML ou les patrons de conception. L’idée étant de donner une vue générale et abstraite de l’organisation des classes dans l’application. Ce genre de diagramme intègre des définitions de classes, de types ou d’interfaces et des liens d’héritage et de composition. Notre constat est que il est très facile de dessiner de tels diagrammes mais plus délicat de leur donner un sens. Nous avons donc introduit un modèle formel représentant ces différents éléments, principalement des classes concrètes et abstraites, l’héritage et la composition. A partir de cela nous avons défini un critère d’utilité d’une classe basée sur les notions de type finiment généré et avec au moins une valeur définie. Nous avons élaboré un processus général de vérification de cette propriété et un algorithme qui s’applique dans le cas d’UML [18]. Le langage UML souffre de plusieurs carences et même après les améliorations apportées depuis la version 2. Toutefois il est souvent utilisé et sert souvent d’inspiration aux diagrammes d’architecture. Dans [142] nous avons proposé un langage mélangeant données et protocoles pour spécifier les composants. Les interactions sont décrites à l’aide d’une logique modale très expressive permettant des formules de synchronisation basées états et transitions. Quand cela semblait raisonnable nous avons réutilisé des notations d’UML comme l’héritage ou la composition. Composants et Aspects Participants : Jacques Noyé, Rémi Douence, Mario Südholt Nous avons publié un état de l’art sur la question de l’intégration des aspects dans les modèles à base de composants [105]. Cette synthèse présente en particulier : (i) une introduction détaillée de la notion d’aspect, (ii) les moyens de description des aspects (comme la persistance, les transactions et la sécurité) dans les propositions industrielles à composants, et (iii) l’état courant des recherches visant à intégrer aspects et composants. OBASCO : OBjets, ASpects, COmposants 145 5.5.3 Aspects Dans le cadre du réseau d’excellence AOSD-Europe, nos recherches ont porté principalement sur le développement du modèle des aspects événementiels EAOP (Event-Based AOP ) tant au niveau formel (sémantiques formelles des langages d’aspects, analyse statique des interactions entre aspects) qu’au niveau implémentation (réalisation d’un prototype Java et C et expérimentation avec celui-ci). Récemment, nous avons entrepris des extensions de ce modèle séquentiel pour la programmation concurrente et distribuée. Par ailleurs et de manière complémentaire nous avons développé les techniques réflexives et la réalisation de l’infrastructure Reflex afin de modéliser différents modèle d’AOP. Finalement nous avons expérimenté nos approches sur des applications systèmes écrites en C/C++ et des intergiciels Java. Le modèle EAOP Participants : Luis Daniel Benavides Navarro, Simplice Djoko Djoko, Rémi Douence, Didier Le Botlan, Dong Ha Nguyen, Jacques Noyé, Mario Südholt, Jean-Marc Menaud, Luc Teboul Au niveau conceptuel, EAOP est un modèle de programmation par aspects à base d’événements [5]. Un moniteur reçoit les événements émis par les points de jonction de l’application et active des actions sur détection de suites d’événements. Le pouvoir expressif de ce modèle permet de raisonner sur des patrons d’événements, et ainsi de supporter le raisonnement temporel. Le modèle EAOP offre différentes variantes suivant le langage utilisé pour définir les coupes et les actions [9]. Nous avons principalement exploré deux classes de langages. Pour la première, EAOP statique, les coupes sont définies par des expressions régulières. Ceci limite le pouvoir d’expression mais permet des vérifications formelles automatiques (e.g., analyse statique des interactions). Pour la deuxième variante, EAOP dynamique, les coupes sont définies par un langage Turing complet. Ceci accroı̂t l’expressivité, mais les conflits d’aspects doivent être détectés et résolus dynamiquement. Nous avons également implémenté un prototype d’EAOP pour Java. Il a été testé et validé dans le cadre du projet IST EASYCOMP avec une application de commerce électronique [69]. Sémantiques formelles et analyses statiques Nos travaux sur les sémantiques formelles de langages d’aspects sont caractérisés par la quête de langages d’aspects plus expressifs que ceux principalement utilisés aujourd’hui, et incluant en particulier des constructions explicites pour des coupes basées sur des séquences de points d’exécutions. À partir de nos travaux précédents, nous avons étendu le langage de définitions des coupes tout en préservant la possibilité d’analyse statique. Nous considérons toujours des séquences d’exécution d’événements définies par des expressions régulières mais nous autorisons des contraintes d’égalité entre plusieurs événements par l’utilisation de variables. Nous avons également travaillé sur la résolution des conflits en prenant en compte des contraintes d’égalité de variables et en proposant la notion d’interface enrichie qui explicite la famille des programmes de base susceptibles d’être tissés avec un aspect. Cette extension du langage de coupes donne un support pour la réutilisation des aspects [41]. Ces recherches ont été poursuivies par la définition d’un langage dédié général pour les coupes [43] basé sur une généralisation de l’opérateur CFLOW d’AspectJ. Cet opérateur permet en AspectJ de définir des coupes comportant deux points reliés par un flot de contrôle. On peut par exemple définir des coupes correspondant à « lorsqu’un service est exécuté pendant le traitement d’une tache ». Cet opérateur permet aussi de passer du contexte de l’appelant vers l’appelé et ainsi d’étendre la notion de portée dans le programme de base. Nous avons proposé un opérateur path qui permet de définir des coupes comme « lorsqu’un service a été exécuté pendant le traitement d’une tache » et ainsi de passer du contexte 146 Rapport d’activité LINA 2003–2006 de l’appelé vers l’appelant. Nous avons donné une sémantique de cette extension, défini une analyse d’interaction simple et mis en œuvre un prototype sous la forme d’une bibliothèque pour AspectJ. Dans le cadre du laboratoire sur les méthodes formelles du réseau d’excellence AOSD-Europe nous avons conçu une sémantique petit pas pour la programmation par aspects : la CASB (Common Aspect Base Semantics) [135]. Notre sémantique introduit progressivement les mécanismes de la programmation par aspects et pose uniquement les hypothèses nécessaires. Par exemple le langage de base n’est pas nécessairement un langage à objets. De nombreux mécanismes sont inspirés des modèles tels que AspectJ, EAOP et Caesar mais nos descriptions sont plus générales (par exemple around s’applique à des blocs et pas seulement à des méthodes). Des variantes des différents mécanismes ont été proposées. Nous devons maintenant explorer la composition de ces mécanismes et utiliser ce cadre pour étudier les propriétés formelles des aspects (par exemple les aspects qui conservent certaines propriétés du programme de base). En outre, nous avons travaillé sur la définition formelle de langages d’aspects sur des protocoles d’interactions. Un premier langage permettant la modification de protocoles à états finis a été présenté dans la thèse d’Andrés Farı́as [118]. Nous avons étendu ces travaux par un langage opérant sur des protocoles définis à l’aide d’automates à pile visible VPA (Visibly Pushdown Automata). Contrairement à des automates à états finis, ces automates permettent, en particulier, de compter l’occurrence d’événements d’exécution en présence d’appels récursifs tout en respectant les propriétés de fermetures des langages réguliers. Un langage d’aspects a été formellement défini et un support implémenté sous forme d’une bibliothèque d’opérations de base des VPA [57]. Finalement, nous avons présenté deux sémantiques opérationnelles pour des coupes impliquant des séquences de points d’exécution en Arachne, un tisseur d’aspects dynamiques pour C/C++ [10]. La première de ces sémantiques définit ces coupes abstraitement à l’aide d’une extension du cadre sémantique pour aspects réguliers [41] et la seconde réalise une transformation des termes de la sémantique abstraite en code C exécuté par Arachne. Programmation concurrente Une autre extension récente du modèle EAOP a porté sur l’intégration de mécanismes pour la synchronisation entre tâches concurrentes. La plupart des langages de programmation autorisent la création de processus concurrents via l’utilisation des appels systèmes idoines. Dans ce contexte, il est souvent crucial pour la bonne exécution du programme de définir la manière dont les différents processus doivent se synchroniser, par exemple en marquant certaines sections du programme comme critiques. Ceci est généralement fait à un niveau très bas par la manipulation explicite de verrous ou de sémaphores. Dans le contexte de la programmation par aspect, se pose naturellement la question de la synchronisation des aspects entre eux et de la synchronisation d’un aspect et du programme de base. Dans CEAOP [11, 83, 124, 138], nous nous sommes intéressés à la gestion de la synchronisation en présence d’aspects en développant trois axes. Premièrement, nous avons défini formellement le comportement concurrent des aspects et du programme de base en nous basant sur le modèle formel FSP (Finite Sequential Processes), modèle formel qui permet le model checking grâce à l’outil LTSA d’analyse d’automates. Deuxièmement, nous avons proposé des familles d’opérateurs de composition permettant de contraindre facilement la synchronisation entre aspects et entre aspects et programme de base, offrant ainsi au programmeur la possibilité de gérer la concurrence à un niveau plus abstrait. De plus, il est possible d’analyser le modèle résultant, ce qui permet de vérifier automatiquement que les invariants souhaités sont bien respectés. Troisièmement, nous avons conçu une bibliothèque Java ainsi qu’un langage dédié implémentant ce modèle et les opérateurs de compositions. OBASCO : OBjets, ASpects, COmposants 147 Programmation distribuée Dans le cadre du sujet de thèse de Daniel Benavides, nous avons entrepris la définition d’AWED (Aspects With Explicit Distribution), un langage d’aspects événementiels incluant des constructions pour la distribution explicite. Au niveau des coupes, ce langage permet de repérer l’occurrence d’événements d’exécution sur des machines distantes. Au niveau des actions, il introduit deux nouveaux mécanismes : l’exécution, d’une manière synchrone ou asynchrone, des actions sur une machine distante et un modèle réparti d’aspects permettant, en particulier, de gérer l’instanciation, le déploiement et le partage de données d’aspects dans un système distribué [31, 136, 111]. Ce langage a été réalisé par une extension du tisseur d’aspects dynamiques pour Java JAsCo dans le cadre d’une coopération avec le groupe SSEL de la Vrije Universiteit Brussel. Nous avons montré, en particulier, que le système résultant permet la modularisation des fonctionnalités transversales de réplication des données et du comportement transactionnel dans le cache réparti de la plate-forme compositionnelle JBoss. Récemment, et toujours en collaboration avec la Vrije Universiteit Brussel, nous avons étendu le modèle des aspects d’AWED afin de faciliter la modularisation de systèmes distribues structurés à l’aide de services Web [32]. Concrètement, nous avons généralisé le modèle de synchronisation des actions ainsi que le modèle d’état partagé entre aspects distribués. Cette généralisations nous a permis de fournir un support pour la réalisation distribuée de compositions de ces services Web. Un noyau réflexif pour la programmation par aspects Participants : Jacques Noyé, Éric Tanter, Pierre Cointe Un deuxième ensemble de nos travaux porte sur le développement d’un noyau permettant l’expérimentation d’un large faisceau de différents langages d’aspects. Dans [13], la présentation du modèle de réflexion comportementale partielle sous-tendant Reflex se terminait par une discussion sur la possibilité d’utiliser une infrastructure réflexive, telle que Reflex, comme fondation de la programmation par aspects comportementale. Cette discussion a été complétée dans [143, 100] et a conduit à transformer Reflex en un noyau opérationnel de programmation par aspects multi-langage [67]. Ce travail donne une première idée de ce que pourrait être un noyau pour la programmation par aspects et de ses bénéfices. Il s’attaque expérimentalement à la définition des blocs de base de la programmation par aspects et à une gestion flexible de leur combinaison. L’architecture de Reflex comprend trois couches : une couche de transformation, reposant sur la réflexion et responsable des opérations primitives de tissage, au niveau structurel et au niveau comportemental ; une couche de composition, qui détecte et résout, au chargement, les problèmes d’interaction entre aspects ; et une couche langage, pour la définition modulaire de langages d’aspects. Cette architecture est décrite dans [67] à partir d’un exemple mélangeant un aspect écrit en AspectJ avec deux petits langages dédiés dont le langage traitant de la concurrence décrit dans [35]. La projection des coupes comportementales d’AspectJ sur Reflex est présentée dans [25, 24], avec des évaluations montrant que les performances du système résultant, bien qu’inférieures à l’implémentation originale d’AspectJ, restent raisonnables. Deux thèses de Master ont aussi exploré l’utilisation de Reflex pour l’implémentation d’EAOP [109] et pour une meilleure structuration des aspects [119], en utilisant des collaborations à la Caesar. Ces expérimentations montrent la généralité de l’approche et fournissent de nouvelles briques pour l’implémentation de langages d’aspects à l’aide de Reflex. Application des aspects aux systèmes et aux intergiciels Participants : Pierre-Charles David, Rémi Douence, Julia Lawall, Thomas Ledoux, Nicolas Loriant, Jean-Marc Menaud, Gilles Muller, Marc Ségura-Devillechaise, Mario Südholt 148 Rapport d’activité LINA 2003–2006 Un troisième groupe de nos travaux a porté sur la programmation par aspects des applications systèmes et des intergiciels. Nous avons étudié d’une part l’expression d’un langage dédié comme la composition d’un ensemble d’aspects particuliers (modularisation des politiques de cache et des protocoles de communication réseaux à l’aide du tisseur Arachne) et d’autre part l’expression d’un aspect à l’aide d’un langage dédié (politique d’adaptation de composants Fractal). Arachne et l’évolution d’applications systèmes La gestion de l’évolution est le point critique dans le cycle de vie d’une application. Lorsque cette application est du domaine des systèmes, un nombre important de ses évolutions (e.g. correction de trou de sécurité) doivent être appliquées dynamiquement, sans arrêt de service, et sur du code natif. Nous avons montré qu’un certain nombre de ces évolutions devenaient des propriétés transversales à l’application et/ou nécessitaient pour leurs implémentations des abstractions langages relevant de la programmation par aspect. Dans l’objectif de valider ces premiers résultats nous avons développé Arachne un tisseur dynamique d’aspect pour les langages C et C++. Un volet de nos travaux sur Arachne a porté sur la conception et l’implémentation d’un prototype robuste [75, 64]. Dans cette approche, et d’un point de vue technique, l’évolution est réalisée sur le code binaire de l’applicatif pendant son exécution. Notre approche garantit un certain nombre de propriétés comme la continuité du service lors du tissage, ou un tissage atomique sur l’ensemble des points de réécriture. Nous avons expérimenté l’application d’Arachne à Squid - le logiciel libre de gestion de cache Web le plus utilisé - de façon à changer dynamiquement la stratégie d’allocation du cache [64, 19] ou ses protocoles d’interaction avec d’autres caches [42, 10]. Nos évaluations de performances de cette approche n’ont montré aucune dégradation comparé à un développement sans support d’outil [76]. Nous avons également montré que les failles de sécurité les plus exploitées pouvaient être traité comme un aspect et avons développé un aspect générique contre le débordement de tampon [52]. Nous nous sommes également intéressés aux problèmes de transfert d’état lors de l’application des évolutions et proposés un cadre logiciel pour leur conception [89]. Nous avons enfin appliqué Arachne au problème de l’évolution d’un système pour la génération d’images médicales utilisée dans des scanners à résonance magnétique dans le cadre d’une coopération avec Siemens AG de Munich [45]. Aspect d’adaptation pour applications adaptatives au contexte Dans le cycle de vie d’une application, il est possible de voir le processus d’adaptation comme une préoccupation transverse au code métier que l’on aimerait modulariser afin de garantir une meilleure réutilisation et maintenabilité. Les techniques de la programmation par aspects nous offrent un cadre de solutions à cette problématique de modularisation [79]. Ainsi, nous proposons Safran, un logiciel pour la création d’applications adaptatives dont la conception est basée sur le fait de considérer l’adaptation comme un aspect [115, 21, 39]. L’adaptation dans Safran est caractérisée par : (i) un programme de base correspondant à une architecture de composants Fractal ; (ii) des coupes correspondant à la notification d’événements endogènes (invocations de messages sur les interfaces Fractal, modification des connexions. . .) ou exogènes (grâce au cadriciel WildCAT pour le développement d’applications sensibles au contexte [38]) ; (iii) des actions volontairement restreintes à la reconfiguration de l’architecture (attributs de configuration et structure de l’application) afin de pouvoir offrir des garanties de cohérence [80]. OBASCO : OBjets, ASpects, COmposants 149 5.5.4 Langages dédiés (DSL) Participants : Christophe Augier, Pierre Cointe, Hervé Duchesne, Julia Lawall, Jean-Marc Menaud, Gilles Muller, Mario Südholt, Richard Urunuela Nous nous intéressons aux relations entre les approches par langages dédiés et par langages d’aspects notamment dans le domaine des systèmes d’exploitation. Nos deux cibles applicatives sont les ordonnanceurs de processus dans les noyaux de système d’exploitation et la gestion des évolutions des pilotes de périphériques dans Linux. Politiques d’ordonnancement Le cadriciel Bossa est dans le domaine public depuis 2003. Il offre un noyau Linux complètement compatible avec les noyaux Linux (versions 2.4 et 2.6) et peut être utilisé à leur place. Le premier noyau de Bossa avait été manuellement construit à partir du noyau Linux. Ce processus est délicat, peu sûr et demande beaucoup d’investissement (le noyau Linux fait environ 100MB de code source). Nous avons appliqué une approche reposant sur les aspects pour transformer automatiquement le noyau Linux afin qu’il supporte Bossa. La définition des aspects a été formalisée en terme de règles de logique temporelle [66, 98, 56]. Nous avons réalisé un travail important d’amélioration du cadriciel Bossa. Ces recherches ont porté principalement : (i) sur l’optimisation des performances [54, 55], (ii) le support de hiérarchies d’ordonnanceurs qui permet à une application d’ajuster le comportement global de l’OS à des besoins spécifiques [30, 50, 70], (iii) la modularisation du langage pour capturer la notion de sous-famille d’ordonnanceurs [86, 49]. En guise de démonstrateurs nous avons défini des politiques pour des applications multimédias et des applications d’enseignement de l’ordonnancement [91]. Par ailleurs, dans le contexte de l’ACI CORSS, nous avons vérifié certaines des propriétés du DSL de Bossa en utilisant des outils formels comme B et FMona [78, 34, 68]. Ces travaux ont été réalisé en coopération avec M. Filali and J.P. Bodeveix (projet FERIA/SVC, Toulouse). Finalement, nous regardons comment utiliser Bossa dans le contexte de la gestion d’énergie [97]. Évolutions des pilotes Linux Dans un système d’exploitation moderne, les pilotes de périphériques peuvent représenter jusqu’à 70% du code source. Les pilotes dépendent fortement du reste du système en ce qui concerne de nombreuses fonctions et structures de données définies dans des bibliothèques support et le noyau du système (qui peut être assimilé à une bibliothèque). Ces deux faits induisent un problème significatif relatif aux évolutions ; tout changement dans une interface d’une bibliothèque entraı̂ne de nombreuses répercussions dans les pilotes utilisant ces bibliothèques. Ces répercussions, que nous nommons évolutions collatérales peuvent être complexes, favoriser l’apparition de bogues et s’étaler sur de longues périodes. Nous avons étudié le problème des évolutions collatérales dans le contexte des pilotes de Linux [12, 87]. En particulier, dans le cas d’une des dernières versions de Linux (noyau 2.6.13), il existe plus de 150 bibliothèques support dédiées à des familles de périphériques ou des bus, et plus de 2000 fichiers dédiés à des instances de périphériques. Le nombre d’évolutions collatérales qui affectent ces fichiers est impressionnant. En utilisant un outil que nous avons développé, nous avons identifié plus de 1200 évolutions probables dans les interfaces depuis la sortie de Linux 2.6, alors que dans Linux 2.2, ce nombre était inférieur à 300. Ces évolutions ont pu induire des évolutions collatérales dans plus de 400 fichiers, pour plus de 1000 points au sein du code. 150 Rapport d’activité LINA 2003–2006 Cette étude montre le besoin d’une approche automatique afin d’alléger la tache de mise à jour des pilotes et d’éviter d’introduire des erreurs. Nous travaillons sur une approche reposant sur un langage dédié qui permette à un développeur modifiant une bibliothèque de décrire de manière précise les évolutions collatérales induites par les changements d’interface. Cette spécification d’évolution collatérale peut être présentée comme un aspect d’évolution venant se greffer sur un code initial. Toutefois, à la différence des aspects, le tissage est définitif. Par comparaison avec les patchs qui représentent la solution actuelle pour transmettre les changements dans Linux, nos spécifications doivent être génériques et pouvoir s’appliquer à tous les fichiers impliqués par une évolution collatérale. De fait, une spécification doit reposer sur les sémantiques de l’ancien et du nouveau code, d’où le nom patch sémantique pour décrire une évolution collatérale. Dans le cadre du projet ANR non thématique Coccinelle, nous travaillons à la conception d’un cadriciel offrant à la fois un langage dédié, SmPL4 [93], et un outil de transformation de programmes permettant d’appliquer les patchs sémantiques sur les pilotes de périphériques. Dans l’état actuel d’avancement de nos travaux, SmPL nous a permis d’écrire des patchs sémantiques pour deux tiers des évolutions collatérales que nous avons étudiées en détail. Vers une méthodologie pour la compilation des langages dédiés Les langages dédiés permettent d’abstraire le niveau de la programmation. Ils offrent des constructions et des notations de haut niveau permettant en particulier de garantir des propriétés critiques. D’un côté les DSL facilitent la liaison directe entre un modèle conceptuel et une solution exprimée dans un langage dédié. De l’autre, les DSL compliquent le processus de compilation du fait de la différence de niveau d’abstraction entre le langage source et le langage cible. Par nature la compilation d’un langage dédié est très différente de celle d’un langage généraliste. Nous avons apporté notre expertise AspectJ au groupe Phoenix de C. Consel dans leur mise en œuvre d’une méthodologie pour le développement de compilateurs utilisant les outils de la programmation générative. L’approche consiste à structurer le développement d’un compilateur selon plusieurs facettes qui représente les dimensions de la compilation. Chaque facette peut être implémentée d’une manière modulaire en utilisant les aspects, les annotations et la spécialisation. L’approche est illustré dans la définition d’un langage dédié pour les services téléphoniques [36]. 5.6 Logiciels 5.6.1 Arachne (Responsable: Jean-Marc Menaud) URL/DOI: http://www.emn.fr/x-info/arachne/ Mots-clés: AOP, C language, Dynamic system evolution, Proxies Équipe de développement: Jean-Marc Menaud, Marc Ségura-Devillechaise, Nicolas Loriant, Mario Südholt, Rémi Douence 4 SmPL est l’acronyme de “Semantic Patch Language” OBASCO : OBjets, ASpects, COmposants 151 Arachne est un tisseur dynamique d’aspect pour des applications écrites dans les langages C [10, 19, 64, 42] et C++ [45]. Le langage d’aspect proposé par Arachne regroupe à la fois des abstractions permettant le contrôle des accès aux variables, mais aussi du flot d’exécution (comme le CFLOW ou la S ÉQUENCE). D’un point de vue technique, les principales propriétés d’Arachne sont d’effectuer une vérification syntaxique des aspects compilés, d’injecter le code sans arrêt ni préparation de l’application, de garantir l’atomicité de la réécriture du code binaire, et de garantir la transparence et l’isolation de l’aspect injecté. Arachne a été utilisé avec succès dans diverses expérimentations comme l’ajout de fonctionnalités dans un cache Web [64, 19], l’injection dynamique de mise à jour [89], la modification du comportement d’un scanner d’imagerie medicale [45] ou la correction à la volée de trous de sécurité [52]. Une extension d’Arachne pour le développement d’applications scientifiques a été effectuée dans le cadre du contrat régional Arantèle. Enfin, Arachne est utilisé dans le cadre de la formation EMOOSE. 5.6.2 Bossa (Responsable: Gilles Muller) URL/DOI: http://www.emn.fr/x-info/bossa Mots-clés: AOP, DSL, Linux, OS, Ordonnancement de processus Équipe de développement: Christophe Augier, Gilles Muller, Hervé Duchesne, Julia Lawall, Richard Urunuela Bossa est un environnement de développement (incluant un langage dédié, un compilateur et un système d’exécution) construit pour aider le développement de politiques d’ordonnancement de processus [98, 66, 50, 86, 49, 30, 50, 70, 56, 34, 78, 54, 55, 68]. Le langage dédié de Bossa propose des abstractions de haut niveau spécifique au domaine de l’ordonnancement, ce qui permet simplifier la conception et l’implémentation d’une politique. Bossa a été validé par la reconception du noyau Linux de telle sorte qu’une politique d’ordonnancement puisse être implémentée comme une extension du noyau. L’évaluation des performances de Bossa comparées à celles du noyau Linux sur des applications réelles comme la compilation du noyau ou des applications multimédias montre qu’il n’y a pas de surcoût à son utilisation. Finalement Bossa est utilisé à l’EMN et dans d’autres écoles et universités comme support pour l’enseignement. Bossa a été initialement développé dans le contexte d’un contrat de recherche entre France Télécom R&D et le projet INRIA Compose. Il a été soutenu par Microsoft Research et développé conjointement par l’EMN et l’université de Copenhague (DIKU). Nous appliquons maintenant l’approche Bossa aux moniteurs de machines virtuelles dans le cadre de la thèse CIFRE de C. Augier avec la société Jaluna. Par ailleurs, nous étendons Bossa pour supporter la gestion de l’énergie dans le cadre de la thèse de R. Urunuela financée par la région Pays de Loire [97]. 5.6.3 EAOP (Responsable: Mario Südholt) URL/DOI: http://www.emn.fr/x-info/eaop Mots-clés: Java, aspects évenementiels, distribution, composants logiciels Équipe de développement: Mario Südholt, Luis Daniel Benavides Navarro, Rémi Douence, Andrés Farı́as, Dong Ha Nguyen 152 Rapport d’activité LINA 2003–2006 EAOP est un cadriciel Java pour la définition de langages d’aspects reposant sur le modèle des aspects événementiels de même nom. Ce logiciel permet la reconnaissance d’événements d’exécution dans des programmes Java et l’exécution d’actions après l’occurrence de certaines séquences. Il founit ainsi un support pour différentes variantes séquentielles du modèle EAOP [9]. L’année 2006 a été l’occasion d’étendre cette plate-forme vers deux directions : les systèmes distribués et les composants logiciels. Nous avons réalisé le prototype AWED (Aspects With Explicit Distribution) pour les aspects à distribution explicite [31, 136, 111]. Il est basé sur le tisseur dynamique JAsCo et la bibliothèque pour la communication distribuée JGroups, ce prototype permet la réconnaissance d’événements sur différentes machines d’un système distribué et supporte une notion restreinte de mobilité de code pour l’exécution d’actions. L’application des aspects événementiels à la manipulation de composants logiciels est supporté par une bibliothèque réalisant des protocoles à pile visible (Visibly Pushdown Automata, VPA) [57]. Elle permet la construction de protocoles plus expressifs que ceux définis à l’aide d’automates à états finis, tout en supportant des opérations de fermetures et d’analyse d’interactions équivalents à ceux basés sur des automates à états finis. 5.6.4 Safran (Responsable: Thomas Ledoux) URL/DOI: http://www.emn.fr/x-info/safran Mots-clés: Fractal, adaptation dynamique, aspect d’adaptation, autonomic computing, context-awareness Équipe de développement: Thomas Ledoux, Pierre-Charles David Safran est une extension du modèle de composants Fractal permettant le développement d’un aspect d’adaptation sous la forme de politiques réactives qui détectent les évolutions du contexte d’exécution et adaptent le programme de base en le reconfigurant [21, 115, 39]. Safran étend la notion de points de jonction traditionnels (restreint au programme lui-même) pour intégrer les événements exogènes liés au contexte d’exécution [38]. Il et est capable de reconfigurer dynamiquement et de façon sûre les applications Fractal grâce au langage dédié FScript [80]. Diffusion : Au printemps 2006, le code de FScript a été inclus dans le repository CVS du projet Fractal. FScript est utilisé dans le projet INRIA Jacquard (en particulier dans Fractal Aspect Component (FAC)) et a été utilisé pour programmer des reconfigurations de composants Think pour terminaux embarqués (thèse de J. Polakovic, INRIA Sardes/France Telecom R&D). En septembre 2006, le « College of Architects » de ObjectWeb a accepté la création d’un projet WildCAT à part entière. Fractal, FScript comme WildCAT sont diffusés sous licence LGPL et sont utilisés dans le projet RNTL Selfware. 5.6.5 Reflex URL/DOI: http://www.emn.fr/x-info/reflex Mots-clés: aspects, Java, Javassist, protocoles de métaobjets, réflexion Équipe de développement: Jacques Noyé, Eric Tanter (Responsable: Jacques Noyé) OBASCO : OBjets, ASpects, COmposants 153 Reflex a été initialement conçu comme une extension réflexive ouverte et portable de Java [13] (et peut toujours être utilisé ainsi) mais a ensuite évolué en un noyau de programmation par aspects multilangage [143, 100, 134, 67]. Reflex fournit, dans le contexte de Java, des briques de base facilitant l’implémentation de langages d’aspect divers, permettant ainsi d’expérimenter de nouvelles idées de programmation par aspects, ainsi que de composer, au sein d’une même application, des aspects écrits dans différents langages d’aspects. Reflex est construit autour d’un modèle intermédiaire flexible issu de la réflexion. Ce modèle inclut les notions de coupe, de lien et de métaobjets, utilisées comme cibles de compilation des langages d’aspects. C’est à ce niveau que les interactions entre aspects sont détectées et résolues par une couche logicielle chargée de gérer les problèmes de composition. Cette couche s’appuie sur une couche basse implémentant la machinerie réflexive et supporte à son tour une couche langage, structurée sous la forme d’une architecture de plugins, chargée du lien entre le modèle d’aspects propre à un langage d’aspects particulier et le modèle intermédiaire. La couche réflexive s’appuie sur Javassist pour tisser, au chargement, des crochets dans le pseudo-code Java et connecter ces crochets au métaniveau afin de modifier le comportement de ce pseudo-code, ou pour lui ajouter des éléments structurels (méthodes, classes). Ce tissage est défini par un programme de configuration, généré pour chaque aspect par le plugin associé au langage de définition de l’aspect. Cette configuration peut, pour partie, être modifiée à l’exécution par une interface de programmation spécifique. L’application du programme de configuration au chargement limite les transformations de programme aux seuls points de programme nécessaires (réflexion partielle avec sélection spatiale). Les modifications de configuration à l’exécution permettent d’activer et de désactiver les crochets selon les besoins (réflexion partielle avec sélection temporelle). Comme la couche réflexive de base n’est pas figée mais peut être configurée statiquement et pour partie dynamiquement, il est possible de développer des stratégies efficaces de tissage statique et dynamique. Les capacités de Reflex ont été validées entre autres (voir aussi [99]) par la définition d’un plugin pour un langage d’aspects dédié à la concurrence [35] ainsi que d’un plugin implémentant les coupes comportementales d’AspectJ [25, 24]. La possibilité de créer des applications en combinant ces plugins, et donc en composant des aspects écrits dans différents langages d’aspects, est abordée dans [67]. Reflex est utilisé pour enseigner la réflexion et ses relations avec la programmation par aspects au niveau Master dans les cursus des masters EMOOSE et ALD ainsi qu’à l’Université du Chili (ou il est développé de façon conjointe avec l’EMN). Diffusion : open source, licence MIT. 5.7 Stratégie de valorisation et de coopération 5.7.1 Actions internationales Notre stratégie de valorisation a consisté à nous insérer dès sa création dans les projets européens regroupant les principaux chercheurs des domaines des objets, de la réflexion puis des aspects. Ainsi les projets européens ELASTEX (Alfa) et EASYCOMP (IST) dans le domaine des composants logiciels ont contribué au lancement du réseau d’excellence AOSD sur la programmation et la conception par aspects qui lui-même est à l’origine du STREP AMPLE sur l’application des aspects et des modèles aux lignes de produits. Au niveau international, cette stratégie nous a permis de collaborer avec les laboratoires de recherche d’IBM (Eclipse et aspects), Microsoft (langages dédiés) et Siemens (aspects). 154 Rapport d’activité LINA 2003–2006 5e et 6e PCRD NoE AOSD-Europe (09/2004–09/2008) URL/DOI: http://www.aosd-europe.net Responsable: Pierre Cointe Montant: 265 Ke Mots-clés: développement de logiciels par aspects, conception de langages, implémentation, méthodes formelles Participants: Pierre Cointe, Mario Südholt, Jacques Noyé, Rémi Douence, Didier Le Botlan Partenaires: coordinateur Lancaster University (Royaume-Uni), Technische Uni. Darmstadt (Allemagne), Univ. Twente (Pays-Bas), INRIA (projets Jacquard, Triskell, PopArt), Vrije Univ. Brussel (Belgique), Trinity College Dublin (Irlande), Univ. de Malaga (Espagne), KU Leuven (Belgique), Technion (Israël), Siemens (Allemagne) et IBM (Royaume Uni) Le développement logiciel dirigé par les aspects préconise l’identification systématique, la modularisation, la représentation et la composition de préoccupations transverses comme la sécurité, la mobilité, la distribution et la gestion des ressources. Parmi les bénéfices escomptés par la mise en œuvre de cette approche on peut citer : la possibilité de raisonner sur le domaine du problème (et celui de la solution correspondante) ; la réduction dans la taille du code des applications, une meilleure maı̂trise des coûts de développement et de la maintenance ; une meilleure réutilisation du code au niveau de la programmation. Ce réseau d’excellence regroupe les principales équipes européennes travaillant dans le domaine de la programmation et de la conception par aspects. AOSD-Europe est organisé en quatre laboratoires : Language Lab, Formal Methods Lab, Analysis and Design Lab et Applications Lab. OBASCO participe principalement aux deux premiers laboratoires. Il s’agit de définir un métamodèle commun pour les langages d’aspects et d’intégrer les différentes approches pour leur formalisation. Dans le cadre de ces laboratoires nous avons contribué aux premiers résultats suivants : un modèle et un prototype pour la programmation par aspects avec distribution explicite (coopération avec la VUB) [31, 136, 111] ainsi qu’une sémantique formelle opérationnelle qui sert de base de définition pour les différentes (et diverses) approches à la programmation par aspects qui sont utilisées dans le réseau (coopération avec le Technion de Haifa et l’université de Twente) [135]. STREP AMPLE (10/2006–10/2009) Responsable: Jean-Claude Royer Montant: 370 Ke Mots-clés: lignes de produit, programmation par aspects, ingénierie des modèles Participants: Pierre Cointe, Mario Südholt, Jacques Noyé, Jean-Claude Royer Partenaires: Lancaster Univ. (UK), Technische Univ. Darmstadt (Allemagne), Univ. Twente (Pays-Bas), Univ. de Malaga (Espagne), Univ. Lisbonne (Portugal), HOLOS (Portugal), Siemens (Allemagne) et SAP (Allemagne) OBASCO : OBjets, ASpects, COmposants 155 Dans la lignée du réseau d’excellence AOSD, le but du projet AMPLE (Aspect-Oriented, Model-Driven Product Line Engineeering) est de proposer une méthode de développement des lignes de produit logiciels permettant une meilleure modularisation de la variabilité logicielle, du traitement des variations et de leur traçabilité tout au long du cycle de vie. Le projet part du constat qu’un fossé sépare les recherches en analyse des besoins, les architectures logicielles, les techniques d’implémentation et la pratique industrielle des lignes de produits. Les variations sont identifiées très tôt dans l’analyse des besoins, mais au cours de la conception puis de la programmation ces éléments sont dilués dans le code. Les architectures sont souvent reliées de façon spécifique aux besoins et les implémentations reposent essentiellement sur des pré-processeurs, il n’y a pas de vrais langages pour les variations. Il n’y a pas non plus de support systématique pour la traçabilité des variations tout au long de la vie d’une ligne de produits. La programmation par aspects peut améliorer la façon de modulariser un logiciel, de localiser les variations dans des aspects indépendants et autorise la définition de logiques de configurations complexes pour les lignes de produits. L’ingénierie des modèles peut aider dans l’expression des variations à l’aide de modèles abstraits dépouillés de détails techniques et permettre le support de la traçabilité depuis l’analyse des besoins en utilisant des transformations de modèles. Le projet AMPLE vise à combiner ces deux techniques et pas seulement pour obtenir de la variabilité à toutes les étapes du cycle de vie mais également pour gérer les variations et établir des liens avant et arrière entre les différents éléments. Projet IST EASYCOMP (06/2001–11/2003) URL/DOI: http://www.easycomp.org Responsable: Mario Südholt Montant: 350 Ke Mots-clés: développement de logiciels par composants, programmation par aspects Participants: Mario Südholt, Gustavo Bobeff, Pierre Cointe, Rémi Douence, Jacques Noyé, Andrès Farias Partenaires: Univ. de Karlsruhe, Univ. de Kaiserslautern, Univ. de Linköping, Univ. de Twente, Univ. Techn. de Vienne, Univ. Techn. et Eco.de Budapest, H.E.I GmbH, ILOG S.A., Q-Labs S.A. Le projet EASYCOMP avait pour but de proposer un modèle de composition uniforme et l’infrastructure correspondante pour faciliter l’assemblage des composants logiciels tout au long de leur cycle de vie. Les contributions d’OBASCO ont porté sur l’élaboration du modèle EAOP [9, 41, 43, 69] qui est maintenant disponible publiquement (voir section 5.6), ensuite sur la réalisation d’une étude de l’applicabilité des techniques de spécialisation de programmes au domaine des architectures à composants, étude au cœur des travaux de thèse de G.Bobeff [77, 33]. Par ailleurs, EASYCOMP a été l’occasion de lancer l’atelier SC Software Composition qui se déroule annuellement dans le cadre de la conférence ETAPS [44, 65, 58, 39, 40, 107]. Projet ALFA ELASTEX URL/DOI: http://www.emn.fr/x-info/emoose/ Responsable: Jacques Noyé Montant: 290 Ke (dont 165 Ke de l’Europe) Mots-clés: génie logiciel, objets, aspects, master européen Participants: Jacques Noyé (09/2001–08/2003) 156 Rapport d’activité LINA 2003–2006 Partenaires: Univ. de Chili, Uni. Federal do Rio de Janeiro (Brésil), Pontificia Univ. Católica do Paraná (Brésil), Univ. Nacional de la Plata (Argentine), Univ. de los Andes (Colombie), Vrije Univ. Brussels (Belgique), Univ. Nova de Liboa (Portugal), Univ. Twente (Pays-Bas) Le projet Européen ELASTEX (European And Latin American Students EXchange) du programme ALFA (América Latina, Formación Académica) a rassemblé dix partenaires d’Amérique Latine et d’Europe. Ses objectifs initiaux étaient de contribuer à l’organisation du programme de Master EMOOSE et de renforcer les relations scientifiques avec les partenaires au travers d’échanges d’enseignants et d’étudiants. Ce programme a donc permis le lancement d’un master recherche toujours vivant, master dont la mineur aspect est inscrite dans le programme diffusion/enseignement du réseau d’excellence AOSD. À noter que nous avons accueilli au sein d’OBASCO un nombre significatif de stages de recherche [114, 130, 133, 111, 119] et que A. Farias, E. Tanter, M. Ségura et G. Bobeff ont suivi ce programme de master avant de soutenir leurs thèses [118, 134, 131]. Grands Editeurs Siemens R&D Munich, projet ATOLL (08/2006-06/2007) URL/DOI: http://www.emn.fr/x-info/sudholt/project/atoll/ Responsable: Mario Südholt Montant: 10 Ke Mots-clés: système de télépéage, programmation par aspects, programmation distribuée Participants: Luis Daniel Benavides Navarro Partenaires: Siemens R&D, Munich Ce projet se propose d’évaluer les techniques de la programmation par aspects dans un contexte explicitement distribués avec pour cible le développement de systèmes de télépéage. Il s’agit d’une collaboration financée par l’un de nos partenaires industriels du réseau d’excellence AOSD. Microsoft Research (2002–2004) Responsable: Gilles Muller Montant: 51.7 Ke Mots-clés: Ordonnancement de processus, Bossa Participants: Gilles Muller, Hervé Duchesne Partenaires: Nos travaux sur le développement de Bossa (voir section 5.6) ont été soutenus par Microsoft Research (MSR). Un premier contrat de 30 Ke a eu pour objet l’utilisation de la programmation par aspects pour rétroconcevoir le noyau de Bossa [66, 98] et l’intégration de Bossa dans l’environnement .NET. Un deuxième contrat de 21,7 Ke était un prix résultant d’un appel à projet de MSR intitulé Embedded Systems Request for Proposal. Ce contrat a eu pour objet l’étude du portage de Bossa sur le système Windows XP Embedded. IBM Eclipse Fellowships (07/2002–06/2004) URL/DOI: http://www.eclipse.org/technology/research.html Responsable: Pierre Cointe Montant: 48.5 Ke Mots-clés: patrons de conception, méta modélisation, détection, réingénierie, Java. Ptidej OBASCO : OBjets, ASpects, COmposants 157 Participants: Pierre Cointe, Yann-Gaël Guéhéneuc Partenaires: IBM Ottawa La thèse de Y.-G. Guéhéneuc [120] a exploré les modèles et les algorithmes pour identifier de façon semi-automatique des micro-architectures, similaires à des patrons de conceptions, dans le code source et assurer une meilleure traçabilité lors de la rétroconception. La métamodélisation était utilisée pour décrire les patrons de conception et les programmes Java [46, 47]. L’outil Ptidej a été intégré dans l’environnement Eclipse, il implémente le modèle proposé et les algorithmes de détection. Programmes d’échanges INRIA Équipe associée OSCAR (2004–2007) URL/DOI: http://www-sop.inria.fr/oasis/oscar Responsable: Pierre Cointe Mots-clés: objets, sémantique, concurrence, aspects, réflexion Participants: Pierre Cointe, Jacques Noyé, Jean-Marc Menaud, Eric Tanter Partenaires: OASIS, DCC Chile Nous participons avec l’équipe OASIS (INRIA de Sophia Antipolis) et le laboratoire DCC de l’université de Santiago du Chili au projet OSCAR (Objets et Sémantique, Concurrence, Aspects et Réflexion). Notre but est de partager notre savoir-faire en matière de protocoles de méta objets, de programmation concurrente et de vérification de systèmes distribués. Un premier atelier nous a réuni au Chili en novembre 2004, à l’occasion de la soutenance de thèse d’E. Tanter réalisée en cotutelle entre l’université de Nantes et celle de Santiago [134, 168]. Un deuxième atelier s’est tenu en octobre 2005 à l’occasion de la semaine consacrée au “CoreGrid”. Nous avons présenté nous travaux visant à marier aspects et composants dans le contexte des grilles de calcul [90]. Autres Université d’Erlangen (2004) Responsable: Gilles Muller Montant: 600 e Mots-clés: Système d’exploitation, aspects Participants: Gilles Muller, Julia Lawall Partenaires: Université d’Erlangen Ce financement de la part du BFHZ-CCUFB (Centre de Coopération Universitaire Franco-Bavarois), nous a permis de réaliser deux journées de séminaire avec l’équipe du professeur Wolfgang SchroederPreikschat en mars 2004 sur le thème de la programmation par aspects appliquée aux systèmes d’exploitation. 5.7.2 Actions nationales Au niveau national, nous collaborons régulièrement avec les autres projets INRIA des domaines du génie logiciel et des intergiciels. Outre notre participation commune au REX AOSD avec les projets Triskell (Rennes), PopArt (Grenoble) et Jacquard (Lille), nous travaillons avec le projet Oasis (Sophia) dans le cadre de l’équipe associée Chilienne Oscar sur les thèmes des aspects, de la concurrence et de la réflexion ; avec Lande (Rennes), Arles (Rocquencourt), Phoenix (Bordeaux) et Mosel (Nancy) dans le cadre de deux ACI sécurité (aspect disponibilité, méthodes formelles) ; avec Atlas (Nantes) et Phoenix 158 Rapport d’activité LINA 2003–2006 (Bordeaux) dans le contexte de l’ANR non thématique FLFS sur les aspects, les langages dédiés et les modèles ; avec Sardes (Rhône-Alpes) dans le cadre des RNTL ARCAD et SELFWARE sur le modèle de composant Fractal et sa mise en œuvre ; avec Cristal, Model, Cassis et Phoenix dans le contexte d’une ARC portant sur une environnement de vérification du langage TLA+. ANR ANR non thématique FLFS (Familles de Langages pour Familles de Systèmes) (09/2006–2009) Responsable: Pierre Cointe Montant: 206 Ke (global) Mots-clés: Qualité et vérification du logiciel, génie logiciel, programmation générative Participants: Pierre Cointe, Gilles Muller Partenaires: ATLAS-GDD (J. Bézivin), Phoenix (C. Consel) Du point de vue du développement logiciel, une famille de logiciels constitue un métier, c’est-à-dire, un vocabulaire, des notations, des règles, des représentations et des protocoles qui sont propres à un domaine. Notre objectif vise à placer ce métier au centre du processus de développement de logiciels. Il a pour ambition de lever les verrous actuels du génie logiciel concernant la production à grande échelle, la robustesse, la fiabilité, la maintenance et l’évolutivité des composants logiciels. L’innovation consiste à concevoir un processus de développement logiciel en fonction d’un domaine applicatif particulier. Ce processus couvre toutes les étapes du génie logiciel en combinant les trois approches émergentes suivantes : la modélisation métier aussi appelée “ingénierie de modèles” ; les langages dédiés aussi appelés “Domain-Specific Languages” ; la programmation générative et en particulier les aspects comme vecteurs de transformation de modèles et de programmes. ANR non thématique Coccinelle (01/2006–2008) Responsable: Gilles Muller Montant: 265 Ke Mots-clés: Évolution des logiciels, pilotes de périphériques, Linux Participants: Gilles Muller, Julia Lawall, Yoann Padioleau, Pierre Cointe Partenaires: DIKU - University of Copenhaguen L’objectif de ce projet est de concevoir un environnement de développement qui facilite la gestion des évolutions des pilotes de Linux. L’approche développée repose sur : (i) un langage dédié permettant de spécifier les évolutions collatérales engendrées par les changement d’interfaces dans les bibliothèques support des pilotes, (ii) un outil de transformation de programmes qui permet s’appliquer ces spécifications sur le code source des pilotes. ANR RNTL Selfware (12/2005–5/2008) Responsable: Thomas Ledoux Montant: 222 Ke Mots-clés: autonomic computing, administration autonome, Fractal, JOnAS, Joram Participants: Pierre-Charles David, Thomas Ledoux, Jacques Noyé, Pierre Cointe Partenaires: France Télécom R&D, Bull, Scalagent, INRIA Rhône-Alpes (Sardes), IRIT-ENSEEIHT OBASCO : OBjets, ASpects, COmposants 159 Initié par IBM, le domaine de l’autonomic computing, vise fondamentalement à automatiser le plus possible la configuration et l’administration des systèmes logiciels complexes afin de diminuer les interventions humaines. Dans ce contexte, l’objectif du projet Selfware est le développement d’une plateforme logicielle pour la construction de systèmes informatiques répartis sous administration autonome, et son application à deux domaines particuliers : i) l’administration de serveurs d’applications J2EE de grande taille (serveurs en grappes et fermes de serveurs), ii) l’administration d’un bus d’information d’entreprise. Les résultats du projet ont vocation à venir consolider la base de logiciels du consortium ObjectWeb. ACI sécurité CORSS (10/2003–2006) Responsable: Gilles Muller Montant: 29 Ke Mots-clés: Méthodes formelles, B, Ordonnancement de processus, Bossa Participants: Gilles Muller, Julia Lawall Partenaires: Projet SVF (FERIA), Projet Arles (INRIA), Projet Phoenix (INRIA), Projet Mosel LORIA L’objectif de cette action était d’établir une coopération entre les groupes de recherche travaillant dans les domaines des systèmes d’exploitation et des méthodes formelles. Notre contribution a porté sur l’étude des méthodes et des outils pour développer des services de systèmes d’exploitation qui possèdent de bonnes propriétés de sécurité et de vivacité. Les applications cibles étaient les systèmes téléphoniques, les services de noyaux de systèmes, et la composition des services d’intergiciels. Notre intérêt spécifique portait sur la vérification de propriétés Bossa en utilisant des outils et méthodes formelles tels que B et FMona [78, 34, 68]. ACI sécurité DISPO (10/2003–06/2006) URL/DOI: http://www.irisa.fr/lande/jensen/dispo.html Responsable: Jacques Noyé Montant: 25 Ke Mots-clés: Composants, aspects, protocoles, disponibilité de service Participants: Jacques Noyé, Sebastian Pavel, Jean-Claude Royer, Hervé Grall, Mario Südholt Partenaires: coordinateur projet Lande (IRISA), projet FERIA/SVF U. Paul Sabatier, équipe RSM de l’ENST Bretagne Le but de cette action était de contribuer à une meilleure conception et implémentation des systèmes à base de composants en termes de sécurité et plus précisément de disponibilité de services. Ceci repose d’une part, sur une formalisation des politiques de sécurité en utilisant la logique modale (par exemple logique temporelle ou logique déontique), et d’autre part, sur une analyse modulaire des programmes et des techniques de transformation de programmes permettant d’assurer ces propriétés. Nous nous sommes particulièrement intéressés à l’essence des propriétés de disponibilité et à leur traduction en terme de moniteurs de références [141], ainsi qu’à la définition et à l’implémentation, dans le contexte de Java, d’un langage de composants étendant les interfaces statiques classiques avec des protocoles permettant de synthétiser l’implémentation de ces moniteurs [58]. RNTL ARCAD URL/DOI: http://www.arcad.essi.fr Responsable: Thomas Ledoux (12/2000–06/2004) 160 Rapport d’activité LINA 2003–2006 Montant: 107 Ke Mots-clés: middleware extensible, composants adaptables, JOnAS, Fractal Participants: Thomas Ledoux, Pierre-Charles David, Pierre Cointe, Jacques Noyé, Jean-Marc Menaud, Eric Tanter, Patricio Salinas Partenaires: France Télécom R&D, INRIA Rhône-Alpes (Sarde), INRIA Sophia-Antipolis (Oasis), laboratoire I3S (Rainbow) Le projet ARCAD (Architecture Répartie extensible pour Composants ADaptables) a donné lieu au développement du modèle Fractal et à la réalisation de nombreuses applications tests en synergie avec le consortium ObjectWeb, Nos principales contributions ont porté sur l’extension réflexive de l’intergiciel JOnAS, le développement de l’infrastructure Reflex [13] et l’expression d’un aspect d’adaptation pour Fractal [37, 79, 21, 38, 115, 39]. Autres Toujours au niveau national nous entretenons des relations privilégiées avec France Telecom R&D et son pôle consacré aux architectures et infrastructures logicielles distribuées soit au travers des projets RNTL déjà mentionnés soit par le co-encadrement de thèses. ARC INRIA VeriTLA+ (2006-2007) Responsable: Gilles Muller Montant: 47 Ke (global) Mots-clés: TLA+, Bossa, Vérification, Preuve Participants: Gilles Muller, Julia Lawall Partenaires: Projets INRIA Cristal, Mosel, Cassis, Phoenix, Microsoft Research, DIKU L’objectif de ce projet est de construire un environnement de vérification pour TLA+, un langage de spécification pour les algorithmes et systèmes distribués et réactifs. Nous voulons valider cet environnement dans le contexte de services de télécommunication, et de noyaux de systèmes d’exploitation. Notre participation relève de la formalisation des propriétés de Bossa en TLA+ et de la vérification automatique de ces propriétés. bourse thèse France Télécom R&D (10/05–09/08) Responsable: Thomas Ledoux Montant: 21 Ke Mots-clés: auto-réparation, reconfiguration fiable, Fractal Participants: Marc Léger, Thomas Ledoux, Pierre Cointe Partenaires: France Telecom R&D/MAPS/AMS Le sujet de cette thèse est de proposer une solution pour la reconfiguration fiable et l’auto-réparation des architectures à base de composants Fractal. Elle se réalise dans le contexte du projet RNTL Selfware (voir section 5.7.2). bourse thèse France Télécom R&D Responsable: Thomas Ledoux Montant: 22, 5 Ke Mots-clés: orchestration de Web services, qualité de service, AOP, DSL (01/05–12/07) OBASCO : OBjets, ASpects, COmposants 161 Participants: Fabien Baligand, Didier Le Botlan, Thomas Ledoux, Pierre Cointe Partenaires: France Telecom R&D/MAPS/AMS Le sujet de cette thèse est de proposer une solution pour la composition de qualité de service (QoS) associé individuellement à des Web Services dans le cadre de leur orchestration. La thèse explore les techniques de la programmation par aspects et son application à la composition de Web services, le développement de langages dédiés pour obtenir un pouvoir d’expression et des garanties sur la QoS de l’orchestration. bourse Cifre Jaluna (11/2004–10/2007) Responsable: Gilles Muller Montant: 37.5 Ke Mots-clés: Ordonnancement de processus, Bossa, Moniteur de machine virtuelle Participants: Christophe Augier, Gilles Muller Partenaires: Jaluna Notre travail sur Bossa a conduit a un transfert industriel dans le cadre d’une bourse Cifre financée par Jaluna (thèse de Christophe Augier). Le but de cette thèse est d’appliquer l’approche Bossa à un moniteur de machines virtuelles permettant ainsi de spécialiser l’ordonnancement de plusieurs systèmes d’exploitation sur une même machine. CRE France Telecom : Reflex & Fractal (03/2004-09/2004) Responsable: Thomas Ledoux Montant: 6, 5 Ke Mots-clés: Fractal, Reflex Participants: Thomas Ledoux, Pierre Cointe Partenaires: France Telecom R&D/MAPS/AMS Dans la continuité du RNTL ARCAD (voir section 5.7.2), et avant le lancement du RNTL Selfware, ce contrat a visé à développer la synergie avec le pôle de recherche Polair de FT R& D autour de la mise en œuvre d’architectures logicielles adaptables à base de composants réflexifs. Il s’agissait de réaliser une implémentation de leur modèle de composant Fractal sur notre infrastructure Reflex puis de comparer celle-ci à leur implémentation de référence Julia dans le cadre d’un stage de DEA. ANVAR MAAC (2001–2005) URL/DOI: http://www.csl.ensm-douai.fr/MAAC Responsable: Jean-Claude Royer Montant: 37 Ke Mots-clés: composants, multi-agents, bibliothèques Participants: Jean-Claude Royer, Pierre Cointe, Jacques Noyé, Thomas Ledoux, Gustavo Bobeff, PierreCharles David, Sebastian Pavel Partenaires: Groupe des Ecoles des Mines (Alès, Douai, Nantes et St Etienne) 162 Rapport d’activité LINA 2003–2006 Ce projet regroupe des équipes de quatre écoles des Mines : Douai, Saint-Etienne, Alès et Nantes. Le but de se projet était d’évaluer comparativement les approches à base de composants et à base d’agents et ainsi de proposer un modèle commun. Le projet a commencé en 2003 avec un état de l’art général sur les composants et les agents. Des travaux d’intégration ont été réalisé avec Fractal, pour prendre en compte la communication asynchrone et une étude de cas de système multi-agent précédemment développé à Saint-Etienne par O. Boissier. Les bases d’un modèle commun avec communications asynchrones, protocoles explicites et composants hiérarchiques ont été posées. Une journée nationale a été organisée en 2004 à l’EMP de Paris à l’initiative de ce projet et s’est poursuivi en 2006 à Nı̂mes. CNRS - AS conception systèmes d’exploitation (2002–2003) Responsable: Gilles Muller Montant: 30 Ke Mots-clés: Système d’exploitation, génie logiciel Participants: Gilles Muller, Jean-Marc Menaud Partenaires: LIP6, LaBRI, IRISA, LIFL, LAAS, INRIA Rhône-Alpes Gilles Muller a été l’animateur de cette action spécifique sur le méthodes et outils pour la conception de systèmes d’exploitation. Le but de cette action a été de rencenser les travaux susceptibles d’améliorer les méthodes de développement des systèmes d’exploitation, notamment en ce qui concerne les systèmes flexibles et configurables. Dans le cadre de cette action, nous avons organisé une JTE (Journée Thematique Émergente) de l’ASF à Nantes. 5.7.3 Actions régionales Au niveau Nantais, outre notre participation au CPER, nous collaborons ponctuellement avec des SSII comme Sodifrance ou des entreprises en création comme IST (voir 5.8.5). CPER Région Pays de la Loire - Projet MILES - axe Ingénierie du Logiciel (2006-2009) Responsable: Pierre Cointe Montant: 128, 6 Ke (global) Mots-clés: génération de logiciels métiers Participants: Obasco Partenaires: équipe Coloss, équipe Modal, équipe Systèmes Temps Réel (IRCCyN), LIUM (Angers) L’un des enjeux du génie logiciel moderne est d’industrialiser la production logicielle en proposant des usines logicielles réalisant la fabrication automatique d’une famille de composants logiciels et automatisant l’assemblage de ces composants [154, 28, 153]. Par ailleurs l’un des enjeux des systèmes embarqués est le développement de logiciels sûrs de fonctionnement et dont la construction est la plus automatisée possible. Nous proposons d’aborder le problème de la fabrication automatique de logiciels du point de vue du continuum « modélisation, programmation et implémentation » en revisitant l’approche des langages généralistes et en la comparant à la nouvelle approche des langages dédiés avec comme perspective l’application de cette technique à un atelier logiciel de construction d’applications temps réel sûres de fonctionnement. OBASCO : OBjets, ASpects, COmposants CPER COM - axe Objets, Composants, Modèles (OCM) 163 (2000–2007) Responsable: Pierre Cointe Mots-clés: objets, composants, modèles, architectures logicielles Participants: Obasco Partenaires: équipe Coloss, équipe Modal Fort d’une expertise commune dans la définition formelle et les différentes déclinaisons du modèle objet, les trois équipes de l’axe OCM se sont attaquées à sa mise en œuvre dans le domaine des (grandes) architectures logicielles. Pendant la période 2000-2005, quatre propriétés de ces architectures ont été particulièrement étudiées, leur adaptabilité, leur sûreté, leur évolutivité et leur capacité à passer à l’échelle. Ces travaux nous ont conduit à explorer les nouvelles approches par composants et par aspects en étudiant les techniques de composition et de transformation de programmes. Nous proposons aujourd’hui d’aborder le problème des « usines logicielles » et donc de la fabrication automatique de logiciels toujours du point de vue du continuum « modélisation, programmation et implémentation ». Ce nouvel objectif doit nous conduire à revisiter l’approche des langages généralistes post objets en la comparant à la nouvelle approche des langages dédiés (voir l’axe « ingénierie du logiciel » du nouveau projet MILES). Autres Région Pays de la Loire : projet Arantèle (09/2004–12/2006) Responsable: Jean-Marc Menaud Montant: 78 Ke Mots-clés: AOP, Grille de calcul, Arachne Participants: Jean-Marc Menaud, Pierre Cointe, Nicolas Loriant Partenaires: Subatech - IN2P3 L’objectif du projet Arantèle est de concevoir un environnement de développement facilitant l’utilisation des grilles de calcul. Cet environnement, basé sur le paradigme de la programmation par aspects, offre un suivi complet des applications en cours d’exécution sur la grille [90]. Il permet ainsi aux développeurs de configurer, reconfigurer, analyser et déboguer leurs applications dynamiquement sans perte de service et d’efficacité [51]. Cet environnement est basé sur le prototype de recherche de tissage dynamique Arachne [10, 19, 64, 42]. Sodifrance - mise à disposition d’un ingénieur R&D (01/2005–09/2005) Responsable: Pierre Cointe Montant: 24.5 Ke Mots-clés: réingénierie, aspects, patrons de conception, codes patrimoniaux Participants: Pierre Cointe, Hervé Albin-Amiot ,Simon Denier Partenaires: Sodifrance Dans le prolongement des travaux de thèse d’H. Albin-Amiot sur les schémas de conception [108] ayant donné lieu à une thèse Cifre avec le Groupe Sodifrance nous avons accueilli Hervé pendant un an au sein du projet. Son travail concernait la rétro-conception des applications de quatrième génération dans le but de faire émerger des aspects spécifiques comme le traitement des erreurs ou la persistance [29, 23]. 164 Rapport d’activité LINA 2003–2006 5.8 Diffusion des résultats 5.8.1 Rayonnement P. Cointe. Conférences invitées : Colloque en l’honneur des travaux de J.-F. Perrot à Jussieu en octobre 2003 [20], Unconventional Programming Paradigms au Mont Saint Michel en septembre 2004 [28], Third international Symposium on Formal Methods for Components and Objects à Leiden, Pays Bas, en novembre 2004 [29], 7th African Conference On Research In Computer Science à Hammamet, Tunisie, en novembre 2004 [27]. Écoles : cours sur les aspects à l’École des Jeunes Chercheurs en Programmation du CNRS 2004 (Le Croisic), 2005 (Rennes) et 2006 (Luchon). Responsabilités : responsable du projet Obasco, chef du département informatique de l’EMN, Directeur adjoint du LINA, coordinateur adjoint du pôle informatique du CPER 2000-2006 (projet COM). Charges d’intérêt général : Membre nommé du CNU de décembre 1999 à juillet 2003. Membre du Grand Jury organisé par France Télécom R&D pour l’évaluation du thème « infrastructure et architecture logicielles » en octobre 2003. Participation aux jurys de concours CR2 (Chargé de Recherche 2e classe) organisé par les unités de recherche de Rhônes-Alpes (2003) et Futurs (2005). Membre de la MSTP (Mission Scientifique Technique et Pédagogique) en charge de l’évaluation des propositions ACI Jeunes Chercheurs en 2003 et 2004. Membre du comité STIC franco-marocain depuis mars 2004 (avec M. Mauny et M. Diaz). Membre du comité scientifique de l’Institut Africain de Libreville (sous la présidence de J.C.- Deriame). Membre du comité scientifique du GDR GPL (Génie de la Programmation et du Logiciel). R. Douence. Écoles : participation à l’École d’été sur le développement du logiciel par aspects en 2006 (Bruxelles). J.-M. Menaud. Exposé invité sur « Programmation par aspects et Arachne » dans le cadre du séminaire Réseaux et Systèmes de l’IRISA en février 2006. Trésorier du chapitre français de SIGOPS (ASF) depuis avril 2005. G. Muller. Exposés invités sur Bossa : Berkeley (Université de Californie) en juin 2003, France Télécom R&D à Grenoble en novembre 2003, Gatech (Atlanta) et LAAS en février 2004, Microsoft Research mai 2004, PLOS (workshop ECOOP) juin 2004, École d’été temps réel à Nancy en septembre 2005. Exposés invités sur Coccinelle : Université du Texas à Austin, HP-labs à Palo Alto et Université de Cornell en décembre 2004, EuroSys Senior workshop à Lisbonne en juillet 2005, Georgia-tech (Atlanta) et Université du Texas à Austin en février 2006. Responsabilités : G. Muller est le vice-président de l’ACM/SIGOPS, et a été le président du chapitre français de SIGOPS (ASF) jusqu’en avril 2005. Il est membre du conseil de l’École doctorale ED-STIM et du conseil du LINA. OBASCO : OBjets, ASpects, COmposants 165 Charges d’intérêt général : Gilles Muller fait partie du comité d’experts participant à l’évaluation du laboratoire VERIMAG en septembre 2006. Il a effectué l’expertise d’un projet dans le cadre de l’appel RNTL 2006. J. Noyé. Écoles : participation à l’École des Jeunes Chercheurs en Programmation du CNRS 2004 (Le Croisic), 2005 (Rennes) et 2006 (Luchon) ; participation à l’École d’été sur le développement du logiciel par aspects en 2006 (Bruxelles). M. Südholt. Exposés invités sur la conception de langages par aspects avancés au « Brown/Northeastern Universities Aspects Day » (mars 2005), et au symposium Aspect-Oriented Language Concepts and their Application to Industrial Systems à Twente (juin 2006). Écoles : participation à l’École d’été sur le développement du logiciel par aspects en 2006 (Bruxelles). 5.8.2 Comités de programme et comités de lecture P. Cointe. Comité de pilotage des conférences ECOOP (AITO) et LMO Président des comités d’organisation des manifestations suivantes : – ECOOP 20065 à Nantes en juillet 2006, – première Journée Francophone sur le Développement du Logiciel Par Aspects (JFDLPA), IRCAM, Paris, septembre 2004, – Eclipse Day, mars 2005 à Nantes. – thème : Generative Programming and Aspects de la conférence Unconventional Programming Paradigms, septembre 2004 au mont Saint Michel. R. Douence. Comité de lecture : Software Practice and Experience (SPE) 2003, Higher Order and Symbolic Computation (HOSC) 2004, Science of Computer Programming, Special issue on Foundations of AspectOriented Programming (SCP) 2005-2006. Comité de programme : Aspect-Oriented Software Development (AOSD) 2006. Organisation d’atelier : European Interactive Workshop on Aspect in Software (EIWAS) 2005, Bruxelles, Workshop on Aspect-Oriented Middleware Development (AOMD) 2005, Grenoble. Comité de programme d’atelier : Journées Francophones des Langages Applicatifs (JFLA), deuxième Journée Francophone sur le Développement du Logiciel Par Aspects (JFDLPA)) 2005, workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS) 2005 et 2006. 5 http://2006.ecoop.org/. 166 Rapport d’activité LINA 2003–2006 T. Ledoux. Tutorial co-chair d’ECOOP 2006 (Nantes). Présidence du comité de programme : Journées Composants 2005 (Le Croisic). Comité de lecture de numéro spécial de revue : TSI Systèmes à composants adaptables et extensibles (2003), ISI Adaptation et gestion du contexte (2006). Comité de programme : LMO 2003 (Vannes), CFSE 2006 (Perpignan). Comité de programme d’atelier : Journées Composants 2002 (Grenoble), 2004 (Lille), 2005 (Le Croisic), 2006 (Perpignan). Comité d’organisation de la conférence Eclipse Day 2005 (Nantes). J.-M. Menaud. Comité de programme : CFSE 2006 (Perpignan). G. Muller. Comités de programme : DSN (IEEE Conference on Dependable Systems and Networks) 2003 (San Francisco), 2004 (Florence), 2006 (Philadelphie) ; CFSE ( Conférence Francophone sur les Systèmes d’Exploitation) 2003 (La Colle sur Loup), 2005 (Le Croisic), 2006 (Perpignan) ; DAIS (4th IFIP International Conference on Distributed Applications & Interoperable Systems) 2003 (Paris) ; EDCC-4 (Fourth European Dependable Computing Conference, Toulouse) ; ISAS (Second International Service Availability Symposium)2005 (Berlin) ; HASE (9th Intl. Symposium on High Assurance Systems Engineering (HASE 2005)) 2005 (Heidelberg) ; ICDCS (International Conference on Distributed Computing Systems) 2005 (Columbus) ; ICPP (International conference on parallel processing) 2005 (Oslo) ; ISORC (IEEE International Symposium on Object and component-oriented Real-time distributed Computing), 2006(Gyeongju, Korea) ; SRDS (IEEE Symposium on Reliable Distributed Systems), 2005 (Orlando), 2006 (Leeds) ; ACM EuroSys 2006 (Leuven). Comité de programme d’atelier : FTDCS (International Workshop on Future Trends of Distributed Computing Systems) 2004 (Suzhou) ; 12th ACM/SIGOPS European Workshop 2004 (Louvain) ; PLOS (ECOOP Workshop on Programming Languages and Operating Systems) 2004 (Oslo) ; SaNSO (First International Workshop on System and Networking for Smart Objects) 2005 (Fukuoka). Publicity chair, 6th International ACM/IFIP/USENIX Middleware Conference 2005, (Grenoble). Président du comité de programme de RENPAR (Rencontres Francophones en Parallélisme), 2005 (Le Croisic). Membre du jury pour le prix de la meilleure thèse française en systèmes d’exploitation en 2003 et 2006. Comité de lecture : ACM Surveys. J. Noyé. Comité de programme : LMO (Langages et Modèles à Objets) 2003 (Vannes) et 2004 (Lille), CAL (Conférence francophone sur les Architectures Logicielles) 2006 (Nantes). Comité de programme d’atelier : Journées Composants 2005 (Le Croisic) et 2006 (Perpignan), DSAL 2006 (Workshop on Domain-Specific Aspect Languages, affilié à GPCE 2006, Portland). OBASCO : OBjets, ASpects, COmposants 167 J-C. Royer. Comité de pilotage : RSTI (Revue des Sciences et Technologies de l’Information), Hermès-Lavoisier. Rédacteur de revue : RSTI-L’Objet, Hermès-Lavoisier. Comité de lecture : JOT (Journal of Object Technology). Présidence du comité de programme : JMAC (Journée Multi-Agent et Composants) 2004 (Paris). Comité de programme : IASSE (International Conference on Intelligent & Adaptive Systems, and Software Engineering) 2004 (Nice) ; LMO (Langages et Modèles à Objets) 2005 (Berne) et 2006 (Nı̂mes) ; CAL (Conférence francophone sur les Architectures Logicielles) 2006 (Nantes). Comité de programme d’atelier : OCM-SI (Objets, Composants, Modèles dans l’ingénierie des Systèmes d’Informations) 2003 (Nancy) et 2004 (Biarritz) ; JC (Journée Composants) 2005 (Le Croisic) et 2006 (Perpignan) ; WCAT (Workshop on Coordination and Adaptation Techniques for Software Entities) 2004 (Oslo). M. Südholt. Comité de pilotage : atelier international sur la composition logicielle (Software Composition, SC) Workshop co-chair d’ECOOP 2006 (Nantes) Comité de programme : AOSD (Aspect Oriented Software Design) 2003 (Boston), 2004 (Lancaster) et 2005 (Chicago) ; NetObjectDays 2005 (Erfurt) et 2006 (Berlin) ; Software Composition (SC) 2006 (Vienne) Comité de programme d’atelier : ACP4IS (AOSD 2003), DAW (AOSD 2005, 2006), SC (Software Composition, ETAPS 2003–2005) et FOAL (AOSD 2004). 5.8.3 Organisation de congrès Conférences internationales ECOOP 2006 : http ://2006.ecoop.org/. Les membres de l’équipe ont pris une part prépondérante dans l’organisation de cette vingtième édition qui s’est tenue à la cité des congrès de Nantes en juillet 2006 avec plus de 450 participants. Atelier Software Composition de la conférence ETAPS. Depuis 2002 l’équipe a participé avec les partenaires du projet IST EASYCOMP à l’organisation de l’atelier Software Composition. Celui-ci s’est donc tenu successivement à Grenoble (2002) puis Varsovie (2003), Barcelone (2004), Glasgow (2005) et Vienne (2006). Pour cette dernière édition, Mario Südholt a co-organisé cette manifestation qui est devenue un symposium international [107]. Conférences nationales RenPar/CFSE/JC/SympAA 2005. Gilles Muller et Jean-Marc Menaud ont organisé la colocalisation de ces 4 conférences francophones dédiées au parallélisme. Cette manifestation réalisée en liaison avec le chapitre français de l’ACM/SIGOPS et l’EMN, a réuni 170 personnes au Croisic en avril 2005. 168 Rapport d’activité LINA 2003–2006 JFDLPA 2004. L’équipe a organisé sous l’égide du ReX AOSD-Europe (voir 5.7.1) la première Journée Francophone sur le Développement de Logiciels par Aspects. Cette journée s’est déroulée à l’IRCAM en septembre 2004 et a permis via ses 70 participants de recenser au niveau national les travaux en cours sur les aspects [106]. La deuxième édition s’est tenue à Lille en septembre 2005, organisée par le projet Jacquard avec le support d’Obasco [23, 21]. JMAC 2004. L’équipe a organisé la première Journée Multi-Agent et Composants. Cette journée s’est déroulée le 23 novembre 2004 à l’École des Mines de Paris et a rassemblée une quarantaine de personnes pour confronter les liens entre systèmes multi-agents et composants. Cette journée est issue des activités autour du projet ANVAR MAAC 6 . Manifestations régionales Eclipse Day 2005. Obasco a organisé sous les auspices du réseau d’excellence AOSD-Europe, la première journée Française dédiée à Eclipse (Eclipse Day7 ). Celle-ci a réuni quelques 150 participants. E. Gamma (IBM Zurich) et K. Czarnecki (Waterloo University) étaient les deux conférenciers invités. OCM 2000-2003. Dans la lignée de la conférence Objet qui s’est tenue annuellement de 1995 à 1999, la conférence OCM (Objets, Composants et Modèles) s’est déroulée annuellement de 2000 à 2003, organisée en alternance entre Rennes et Nantes par le Club Objet de l’Ouest (qui réunit des partenaires académiques et industriels du grand ouest, dont l’École des Mines de Nantes, l’IRISA et l’Université de Nantes). Après OCM 2000 avec les participations de K. Nygaard et G. Kiczales, OCM 2002 avec les interventions de S. Cook et B. Stroustrup, OCM 2003 était consacrée à « la migration et à l’interopérabilité logicielle » avec les exposés de P. Grosjean et P. Desfray. Les jeudis de l’objet. Depuis neuf ans, ce séminaire bimestriel est organisé par l’équipe comme un autre lieu de rencontre et de discussion pour les industriels régionaux qui souhaitent échanger leurs résultats et expériences sur les technologies à objets et à composants. Chaque Jeudi de l’objet8 présente soit un état de l’art d’une technologie émergente soit un retour d’expérience dans le domaine des architectures logicielles. Animations nationales CNRS/RTP Systèmes distribués. G. Muller a été membre du bureau du Réseau Thématique Prioritaire sur les systèmes distribués jusqu’à fin 2004. CNRS/GDR ALP. L’équipe était membre du Groupe de Recherche du CNRS « Algorithmes, Langages et Programmation » . En tant que telle , elle a participé aux journées spécifiques OCM organisées dans le cadre des conférences LMO (2003 à Vannes, 2004 à Lille, 2005 à Berne et 2006 à Nı̂mes). Elle vient de rejoindre le thème « Transformations » du nouveau groupe « Génie de la programmation et du logiciel » . 6 http://csl.ensm-douai.fr/MAAC/3. http://www-emn.fr/x-di/eclipse-day/. 8 http://www-emn.fr/jeudis-objet/. 7 OBASCO : OBjets, ASpects, COmposants 169 École des jeunes chercheurs en programmation du GDR ALP. L’école des jeunes chercheurs est un lieu de rencontre privilégié des thésards du domaine de la programmation avec des chercheurs confirmés sur une durée de quinze jours. L’équipe avait organisé une édition précédente en 1998, elle a co-organisé avec le projet Lande de l’IRISA l’édition 2004 bilocalisée sur Nantes (le site de l’EMN) puis le Croisic. 5.8.4 Impact sur la formation universitaire EMOOSE. En septembre 1998 l’équipe a lancé, en collaboration avec un réseau de partenaires, un Master international EMOOSE9 (European Master of Science on Object-Oriented and Software Engineering Technologies). Ce programme est dédié aux technologies à objets pour le génie logiciel, incluant les systèmes à composants et la programmation par aspects. Le réseau de partenaires, SENSO, inclut les partenaires du projet ELASTEX (voir 5.7.1) ainsi que l’Université Technique de Darmstadt (Allemagne) et la Monash University (Australie). Le programme est géré par l’équipe et les cours ont lieu à Nantes dans les locaux de l’EMN. Les étudiants reçoivent un diplôme de Master of Science de la Vrije Universiteit Brussel et un certificat d’études spécialisées de l’École des Mines de Nantes. Aujourd’hui le master EMOOSE est en cours d’intégration dans le curriculum enseignement associé au réseau d’excellence AOSD-Europe [14]. Master ALD Jusqu’à l’année universitaire 2003-2004, les membres de l’équipe participaient au programme du DEA cohabilité avec l’Université de Nantes pour un total de 50 heures sur les nouvelles tendances dans le domaine du génie logiciel à objets. Depuis 2004, ce DEA a évolué en deux spécialités de Master recherche, mention informatique toujours en cohabilitation avec l’Université de Nantes. L’équipe Obasco est impliquée dans la spécialité « Architectures Logicielles Distribuées ». Cette mention a été co-dirigée par J. Martinez (Polytech Nantes) et G. Muller (EMN) de 2004-2005, puis par G. Muller et D. Barba en 2005-2006. 5.8.5 Transfert de technologie Frédéric Rivard, un ancien thèsard de l’équipe [3], a créé à Nantes l’entreprise Industrial Software Technology (IST)10 . Nous collaborons avec lui dans le domaine des « systèmes embarqués Java temps réel automative pour microcontrôleurs bas coûts ». Le projet RNTL SADAJ vient d’être labellisé par l’ANR en août 2006. 5.9 Publications de référence de l’équipe hors période [1] M. A KSIT, A. B LACK, L. C ARDELLI, P. C OINTE, et AL. Strategic Research Directions in Object Oriented Programming. ACM Computing Surveys, 28(4) :691–700, Décembre 1996. ISSN : 03600300. [2] P. A NDR É et J.-C. ROYER. Optimizing Method Search with Lookup Caches and Incremental Coloring. In A. PAEPCKE, réd., Proceedings of the Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA’92), pages 110–126, Vancouver, Canada, Octobre 1992. ACM Press. ISBN : 0-89791-610-7, ACM SIGPLAN Notices, 27(10). 9 10 http://www.emn.fr/emoose. http://www.ist-eu.com/. 170 Rapport d’activité LINA 2003–2006 [3] N. M. B OURAQADI -S A ÂDANI, T. L EDOUX, et F. R IVARD. Safe Metaclass Programming. In C. C HAMBERS, réd., Proceedings of the Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA’98), pages 84–96, Vancouver, British Columbia, Canada, Octobre 1998. ACM Press. ISBN : 0-201-30989-0, ACM SIGPLAN Notices, 33(10). [4] P. C OINTE. Metaclasses are First Class : The ObjVlisp Model. In J. L. A RCHIBALD, réd., Proceedings of the second ACM SIGPLAN conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 1987), pages 156–167, Orlando, Florida, USA, Octobre 1987. ACM Press. ISBN : 0-89791-247-0, ACM SIGPLAN Notices, 22(12). [5] R. D OUENCE, O. M OTELET, et M. S ÜDHOLT. A formal definition of crosscuts. In A. YONEZAWA et S. M ATSUOKA, réds., Proceedings of the 3rd International Conference on Reflection 2001, volume 2192 of Lecture Notes in Computer Science, pages 170–186, Kyoto, Japan, Septembre 2001. Springer-Verlag. ISBN : ? ? [6] L. H ORNOF, J. N OY É, et C. C ONSEL. Effective Specialization of Realistic Programs via Use Sensitivity. In P. VAN H ENTENRYCK, réd., Proceedings of the Fourth International Symposium on Static Analysis, SAS’97, volume 1302 of Lecture Notes in Computer Science, pages 293–314, Paris, France, Septembre 1997. Springer-Verlag. ISBN : 3-540-63468-1. [7] T. L EDOUX. OpenCorba : a Reflective Open Broker. In P. C OINTE, réd., ACM Meta-Level Architectures and Reflection, Second International Conference, Reflection’99, volume 1616 of Lecture Notes in Computer Science, pages 197–214, Saint-Malo, France, Juillet 1999. Springer-Verlag. ISBN : 3-540-66280-4. [8] F. M ÉRILLON, L. R ÉVEILL ÈRE, C. C ONSEL, R. M ARLET, et G. M ULLER. Devil : An IDL for Hardware Programming. In Proceedings of the Fourth Symposium on Operating Systems Design and Implementation, pages 17–30, San Diego, California, Octobre 2000. USENIX Association. ISBN : 1-880446-16-2. 5.10 Publications de référence de l’équipe dans la période [9] R. D OUENCE, P. F RADET, et M. S ÜDHOLT. Trace-based aspects. In M. A KSIT, S. C LARKE, T. E LRAD, et R. E. F ILMAN, réds., Aspect-Oriented Software Development, pages 201–218. Addison-Wesley, 2004. ISBN : 0-321-21976-7. [10] R. D OUENCE, T. F RITZ, N. L ORIANT, J.-M. M ENAUD, M. S ÉGURA -D EVILLECHAISE, et M. S ÜDHOLT. An expressive aspect language for system applications with Arachne. Transactions on Aspect-Oriented Software Development, 3880 :174–213. Springer-Verlag, Mars 2006. ISSN : 0302-9743. [11] R. D OUENCE, D. L E B OTLAN, et J. N. S ÜDHOLT. Concurrent aspects. In Generative Programming and Component Engineering (GPCE). ACM Press, Octobre 2006. [12] Y. PADIOLEAU, J. L AWALL, et G. M ULLER. Understanding collateral evolution in Linux device drivers. In The first ACM SIGOPS EuroSys conference (EuroSys), pages 59–71, Leuven, Belgium, Avril 2006. previous version also available as INRIA Research Report RR-5769. [13] Éric TANTER, J. N OY É, D. C AROMEL, et P. C OINTE. Partial behavioral reflection : Spatial and temporal selection of reification. In R. C ROCKER et G. L. S TEELE , J R ., réds., Proceedings of the 18th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications (OOPSLA 2003), pages 27–46, Anaheim, California, USA, Octobre 2003. ACM Press. ISBN : 1-58113-712-5. OBASCO : OBjets, ASpects, COmposants 171 5.11 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [14] J. B RICHAU, R. C HITCHYAN, S. C LARKE, E. D’H ONDT, A. G ARCIA, M. H AUPT, W. J OOSEN, S. K ATZ, J. N OY É, A. R ASHID, et M. S ÜDHOLT. A model curriculum for aspect-oriented software development. IEEE Software, 23(6) :18, Novembre/Décembre 2006. ISSN : 0740-7459, Special issue on Software Engineering Curriculum Development. [15] R. D OUENCE et P. F RADET. The next 700 Krivine machines. Higher-Order and Symbolic Computation, pages 105–118. Kluwer Academic Publishers, 2003. ISSN : 1388-3690. [16] G. M ULLER, J. L AWALL, S. T HIBAULT, et R. E. V. J ENSEN. A domain-specific language approach to programmable networks. IEEE Transactions on Systems, Man and Cybernetics, 33(3) :370– 381, Août 2003. ISSN : 1094-6977. [17] J.-C. ROYER. The GAT approach to specify mixed systems. Informatica, 27(1) :89–103, 2003. ISSN : 0350-5596. [18] J.-C. ROYER. Checking class schema usefulness. Journal of Object Technology (JOT), 3(1) :157– 176, Janvier 2004. ISSN : 1660-1769. [19] M. S ÉGURA -D EVILLECHAISE, J.-M. M ENAUD, N. L ORIANT, T. F RITZ, R. D OUENCE, M. S ÜDHOLT, et E. W UCHNER. Dynamic Adaptation of the Squid Web Cache with Arachne. IEEE Software, 23(1) :34–41, 2006. ISSN : 0740-7459, Special Issue on Aspect-Oriented Computing. A2. Revues d’audience nationale avec comité de lecture [20] P. C OINTE, J. N OY É, R. D OUENCE, T. L EDOUX, J.-M. M ENAUD, G. M ULLER, et M. S ÜDHOLT. Programmation post-objets : des langages d’aspects aux langages de composants. RSTI - L’objet, 10(4) :119–143. Hermès-Lavoisier, 2004. ISSN : 1262-1137. [21] P.-C. DAVID et T. L EDOUX. Une approche par aspects pour le développement de composants fractal adaptatifs. RSTI - L’objet, 12(2-3) :113–132. Hermès-Lavoisier, 2005. ISSN : 1262-1137. [22] S. D ENIER. Traits Programming with AspectJ. In RSTI - L’objet [106], pages 69–86. HermèsLavoisier, Novembre 2005. ISBN : 2-7462-1266-8, ISSN : 1262-1137, Versions étendues d’une séléction d’articles de JFDLPA’04. [23] S. D ENIER et P. C OINTE. Expression and Composition of Design Patterns with AspectJ. RSTI L’objet, 12(2-3) :41–61. Hermès-Lavoisier, 2006. ISSN : 1262-1137, JFDLPA 2005. [24] L. RODR ÍGUEZ, Éric TANTER, et J. N OY É. La réflexion comportementale partielle comme infrastructure de programmation par aspects - Étude du cas des coupes dynamiques. In RSTI L’objet [106], pages 31–52. Hermès-Lavoisier, Novembre 2005. ISBN : 2-7462-1266-8, ISSN : 1262-1137, Versions étendues d’une séléction d’articles de JFDLPA’04. [25] L. RODR ÍGUEZ, Éric TANTER, et J. N OY É. Supporting dynamic crosscutting with partial behavioral reflection : a case study. In Cointe et Südholt [106], pages 48–58. ISBN : 2-7462-1266-8, ISSN : 1262-1137, Versions étendues d’une séléction d’articles de JFDLPA’04. [26] J.-C. ROYER. Temporal Logic Verifications for UML : the Vending Machine Example. RSTI L’objet, 9(4) :73–92. Hermès-Lavoisier, 2003. ISSN : 1262-1137. 172 Rapport d’activité LINA 2003–2006 C. Colloques de diffusion nationale ou internationale sur invitation [27] P. C OINTE. Comprendre la programmation par aspects. In Actes du 7ième Colloque Africain sur la recherche en Informatique, CARI 2004, pages 27–29, Hammamet, Tunisie, Novembre 2004. ISBN : 2-7261-1277-3, INRIA. [28] P. C OINTE. Towards generative programming. In J.-P. BAN ÂTRE, P. F RADET, J.-L. G IAVITTO, et O. M ICHEL, réds., Unconventional Programming Paradigms, UPP 2004, volume 3566 of Lecture Notes in Computer Science, pages 302–312, Mont St Michel, France, Septembre 2005. SpringerVerlag. ISBN : 3-540-27884-2. [29] P. C OINTE, H. A LBIN -A MIOT, et S. D ENIER. From (meta) objects to aspects : from Java to AspectJ. In F. de Boer et AL ., réd., Third International Symposium on Formal Methods for Components and Objects, FMCO 2004, volume 3657 of Lecture Notes in Computer Science, pages 70–94, Leiden, The Netherlands, Novembre 2005. Springer-Verlag. ISBN : 3-540-29131-8. [30] J. L AWALL, G. M ULLER, et H. D UCHESNE. Language design for implementing process scheduling hierarchies. In ACM SIGPLAN Symposium on Partial Evaluation and Program Manipulation - PEPM’04, pages 80–91, Verona, Italy, Août 2004. ACM Press. ISBN : 1-58113-835-0. D1. Colloques de diffusion internationale avec comité de lecture et actes [31] L. D. B ENAVIDES NAVARRO, M. S ÜDHOLT, W. VANDERPERREN, B. D E F RAINE, et D. S UV ÉE. Explicitly distributed AOP using AWED. In Aspect-Oriented Software Development (AOSD), pages 51–62. ACM Press, Mars 2006. ISBN : 1-59593-300-X. [32] L. D. B ENAVIDES NAVARRO, M. S ÜDHOLT, W. VANDERPERREN, et B. V ERHEECKE. Modularization of distributed web services using Aspects With Explicit Distribution (AWED). In Proceedings of the 8th International Symposium on Distributed Objects and Applications (DOA’06)., London, UK, Novembre 2006. Springer-Verlag. [33] G. B OBEFF et J. N OY É. Component specialization. In ACM SIGPLAN Symposium on Partial Evaluation and Semantics-Based Program Manipulation (PEPM’04), pages 39–50, Verona, Italy, Août 2004. ACM Press. ISBN : 1-58113-835-0. [34] J.-P. B ODEVEIX, M. F ILALI, J. L AWALL, et G. M ULLER. Formal methods meet Domain Specific Languages. In Proceedings of the 5th International Conference on Integrated Formal Methods, pages 187–206, Eindhoven, The Netherlands, 2005. ISBN : 0-7695-2377-3. [35] D. C AROMEL, L. M ATEU, et Éric TANTER. Sequential object monitors. In M. O DERSKY, réd., ECOOP 2004 - Object-Oriented Programming,18th European Conference, volume 3086 of Lecture Notes in Computer Science, pages 316–340, Oslo, Norway, Juin 2004. Springer-Verlag. ISBN : 3-540-22159-X. [36] C. C ONSEL, F. L ATRY, L. R ÉVEILL ÈRE, et P. C OINTE. A Generative Programming Approach to Developing DSL Compilers. In R. G L ÜCK et M. L OWRY, réds., Generative Programming and Component Engineering (GPCE), volume 3676 of Lecture Notes in Computer Science, pages 29–46, Tallinn, Estonia, Septembre/Octobre 2005. Springer-Verlag. ISBN : 3-540-29138-5. [37] P.-C. DAVID et T. L EDOUX. Towards a framework for self-adaptive component-based applications. In J.-B. S TEFANI, I. D EMEURE, et D. H AGIMONT, réds., Proceedings of Distributed Applications and Interoperable Systems 2003, the 4th IFIP WG6.1 International Conference, DAIS 2003, volume 2893 of Lecture Notes in Computer Science, pages 1–14, Paris, Novembre 2003. Federated Conferences, Springer-Verlag. ISBN : 3-540-20529-2. OBASCO : OBjets, ASpects, COmposants 173 [38] P.-C. DAVID et T. L EDOUX. Wildcat : a generic framework for context-aware applications. In Proceeding of MPAC’05, the 3rd International Workshop on Middleware for Pervasive and AdHoc Computing, Grenoble, France, Novembre 2005. ACM Press. ISBN : 1-59593-268-2. [39] P.-C. DAVID et T. L EDOUX. An Aspect-Oriented Approach for Developing Self-Adaptive Fractal Components. In Löwe et Südholt [107], pages 82–97. ISBN : 978-3-540-37657-6, ISSN : 12621137, 5th International Symposium, SC 2006. [40] S. D ENIER et P. C OINTE. Understanding Design Patterns Density with Aspects. a case study in JHotDraw using AspectJ. In Löwe et Südholt [107], pages 243–258. ISBN : 978-3-540-37657-6, ISSN : 1262-1137, 5th International Symposium, SC 2006. [41] R. D OUENCE, P. F RADET, et M. S ÜDHOLT. Composition, Reuse and Interaction Analysis of Stateful Aspects. In Aspect-Oriented Software Development (AOSD), pages 141–150. ACM, ACM Press, Mars 2004. ISBN : 1-58113-842-3. [42] R. D OUENCE, T. F RITZ, N. L ORIANT, J.-M. M ENAUD, M. S ÉGURA -D EVILLECHAISE, et M. S ÜDHOLT. An expressive aspect language for system applications with Arachne. In AspectOriented Software Development (AOSD), pages 27–28. ACM Press, Mars 2005. ISBN : 1-59593042-6. [43] R. D OUENCE et L. T EBOUL. A crosscut language for control-flow. In Generative Programming and Component Engineering (GPCE), volume 3286 of Lecture Notes in Computer Science, pages 95–114, Vancouver, Canada, Octobre 2004. Springer-Verlag. ISBN : 3-540-23580-9. [44] A. FAR ÍAS et Y.-G. G U ÉH ÉNEUC. On the coherence of component protocols. In U. A SSMANN, E. P ULVERMUELLER, I. B ORNE, N. B OURAQADI, et P. C OINTE, réds., Electronic Notes in Theoretical Computer Science, ETAPS-Software Composition workshop. Elsevier, Avril 2003. [45] T. F RITZ, M. S ÉGURA -D EVILLECHAISE, M. S ÜDHOLT, E. W UCHNER, et J.-M. M ENAUD. Automating adaptive image generation for medical devices using aspect-oriented programming. In Proceedings of the 10th IEEE International Conference on Emerging Technologies and Factory Automation (ETFA’05), pages 1025–1032, Septembre 2005. ISBN : 0-7803-9402. [46] Y.-G. G U ÉH ÉNEUC et H. A LBIN -A MIOT. A pragmatic study of binary class relationships. In J. G RUNDY et J. P ENIX, réds., IEEE International Conference on Automated Software Engineering, pages 277–280, Montréal, Canada, Octobre 2003. IEEE Computer Society Press. ISBN : 0-7695-2035-9, Short paper. [47] Y.-G. G U ÉH ÉNEUC et H. A LBIN -A MIOT. Recovering binary class relationships : Putting icing on the UML cake. In J. V LISSIDES et D. C. S CHMIDT, réds., Proceedings of the 19th ACM SIGPLAN conference on Object-Oriented Programming, Systems, Languages and Applications (OOPSLA 2004), pages 301–314, Vancouver, Canada, Octobre 2004. ACM Press. ISBN : 1-58113-831-8. [48] F. H ERMENIER, N. L ORIANT, et J.-M. M ENAUD. Power management in grid computing with xen. In Proceedings of 2006 on XEN in HPC Cluster and Grid Computing Environments (XHPC06), number 4331 in LNCS, pages 407–416, Sorento, Italy, Décembre 2006. Springer Verlag. [49] J. L AWALL, H. D UCHESNE, G. M ULLER, et A.-F. L E M EUR. Bossa Nova : Introducing modularity into the Bossa domain-specific language. In R. G L ÜCK et M. L OWRY, réds., Generative Programming and Component Engineering (GPCE), volume 3676 of Lecture Notes in Computer Science, pages 78–93, Tallinn, Estonia, Septembre/Octobre 2005. Springer-Verlag. ISBN : 3-540-29138-5. 174 Rapport d’activité LINA 2003–2006 [50] J. L AWALL, G. M ULLER, et A.-F. L E M EUR. On the design of a domain-specific language for os process-scheduling extensions. In Generative Programming and Component Engineering (GPCE), volume 3086 of Lecture Notes in Computer Science, pages 436–455, Vancouver, Canada, Octobre 2004. Springer-Verlag. ISBN : 3-540-23580-9. [51] N. L ORIANT et J.-M. M ENAUD. The case for distributed execution replay using a virtual machine. In Proceedings of 2006 WETICE workshop on Emerging Technologies for Grid Computing (ETNGRID06), Manchester, England, Juin 2006. ISBN : 0-7695-2623-3. [52] N. L ORIANT, M. S ÉGURA -D EVILLECHAISE, et J.-M. M ENAUD. Server protection through dynamic patching. In Proceedings of the 11th IEEE Pacific Rim International Symposium on Dependable Computing (PRDC’05), pages 343–349, Changsha, Hunan, China, Décembre 2005. IEEE Computer Society Press. ISBN : 0-7695-2492-3. [53] O. M AR ÉCHAL, P. P OIZAT, et J.-C. ROYER. Checking Asynchronously Communicating Components Using Symbolic Transition Systems. In D. C. S. R. M EERSMAN , Z. TARI et AL ., réds., On The Move to Meaningful Internet Systems 2004 : Coopis, DOA, and ODBASE, volume 3291 of Lecture Notes in Computer Science, pages 1502–1519. Springer-Verlag, 2004. ISBN : 3-54023662-7. [54] G. M ULLER, J. L AWALL, et H. D UCHESNE. A framework for simplifying the development of kernel schedulers : Design and performance evaluation. In Tenth IEEE International Workshop on Object-oriented Real-time Dependable Systems (WORDS 2005), pages 219–227, Sedona, AZ, Février 2005. ISBN : 0-7695-2347-1. [55] G. M ULLER, J. L AWALL, et H. D UCHESNE. A framework for simplifying the development of kernel schedulers : Design and performance evaluation. In HASE 2005 - 9th IEEE International Symposium on High-Assurance Systems Engineering, pages 56–65, Heidelberg, Germany, Octobre 2005. ISBN : 0-7695-2377-3, ISSN : 1530-2059. [56] G. M ULLER, J. L AWALL, J.-M. M ENAUD, et M. S ÜDHOLT. Constructing component-based extension interfaces in legacy systems code. In ACM SIGOPS European Workshop 2004 (EW’2004), Louvain, Belgique, Septembre 2004. ACM Press. [57] D. H. N GUYEN et M. S ÜDHOLT. VPA-based aspects : better support for AOP over protocols. In 4th IEEE International Conference on Software Engineering and Formal Methods (SEFM’06). IEEE Computer Society Press, Septembre 2006. [58] S. PAVEL, J. N OY É, P. P OIZAT, et J.-C. ROYER. Java implementation of a component model with explicit symbolic protocols. In T. G SCHWIND, U. A SSMAN, et O. N IERSTRASZ, réds., International Workshop on Software Composition (SC), volume 3628 of Lecture Notes in Computer Science, pages 115–124. Springer-Verlag, Avril 2005. ISBN : 3-540-28748-5, Short paper. [59] S. PAVEL, J. N OY É, et J.-C. ROYER. Dynamic configuration of software product lines in archjava. In R. L. N ORD, réd., Software Product Lines : Third International Conference, volume 3154 of Lecture Notes in Computer Science, pages 90–109, Boston, MA, USA, Septembre 2004. SpringerVerlag Heidelberg. ISBN : 3-540-22918-3. [60] L. P ENG, A. ROMANCZUK -R ÉQUIL É, et J.-C. ROYER. A Translation of UML Components into Formal Specifications. In T. D’H ONDT, réd., TOOLS East Europe 2002, pages 60–75. Kluwer Academic Publishers, 2003. ISBN : 1-4020-7428-X. [61] P. P OIZAT, J.-C. ROYER, et G. S ALA ÜN. Bounded analysis and decomposition for behavioural description of components. In S PRINGER -V ERLAG, réd., Proceedings of FMOODS, volume 4037 of Lecture Notes in Computer Science, pages 33–47, 2006. ISBN : 3-540-34893-X. OBASCO : OBjets, ASpects, COmposants 175 [62] J.-C. ROYER. A Framework for the GAT Temporal Logic. In ISCA, réd., Proceedings of the 13th International Conference on Intelligent and Adaptive Systems and Software Engineering (IASSE’04), pages 275–280, Nice, France, Juillet 2004. ISBN : 1-880843-52-X. [63] J.-C. ROYER et M. X U. Analysing mailboxes of asynchronous communicating components. In D. C. S. R. M EERSMAN , Z. TARI et AL ., réds., On The Move to Meaningful Internet Systems 2003 : CoopIS, DOA, and ODBASE, volume 2888 of Lecture Notes in Computer Science, pages 1421–1438, Catania, Sicily (Italy), Octobre 2003. Springer-Verlag. ISBN : 3-540-20498-9. [64] M. S ÉGURA -D EVILLECHAISE, J.-M. M ENAUD, G. M ULLER, et J. L AWALL. Web cache prefetching as an aspect : Towards a dynamic-weaving based solution. In Aspect-Oriented Software Development (AOSD), pages 110–119, Boston, Massachusetts, USA, Mars 2003. ACM Press. ISBN : 1-58113-660-9. [65] M. S ÜDHOLT. A model of components with non-regular protocols. In T. G SCHWIND, U. A SS MAN , et O. N IERSTRASZ, réds., International Workshop on Software Composition (SC), volume 3628 of Lecture Notes in Computer Science, pages 99–114. Springer-Verlag, Avril 2005. ISBN : 3-540-28748-5. [66] R. A. Å BERG, J. L AWALL, M. S ÜDHOLT, G. M ULLER, et A.-F. L E M EUR. On the automatic evolution of an OS kernel using temporal logic and AOP. In IEEE International Conference on Automated Software Engineering, pages 196–204, Montréal, Canada, Octobre 2003. ISBN : 0-7695-2035-9. [67] Éric TANTER et J. N OY É. A Versatile Kernel for Multi-Language AOP. In R. G L ÜCK et M. L O WRY , réds., Generative Programming and Component Engineering (GPCE), volume 3676 of Lecture Notes in Computer Science, pages 173–188, Tallinn, Estonia, Septembre/Octobre 2005. Springer-Verlag. ISBN : 3-540-29138-5. D2. Colloques de diffusion nationale avec comité de lecture et actes [68] J.-P. B ODEVEIX, M. F ILALI, J. L AWALL, et G. M ULLER. Vérification automatique de propriétés d’ordonnanceurs Bossa. In AFADL, ENST Paris, pages 95–109. ENST, 15-17 mars 2006. [69] R. D OUENCE et M. S ÜDHOLT. Un modèle et un outil pour la programmation par aspects événementiels. In Langages et Modèles à Objets, pages 105–118, Vannes, Février 2003. HermèsLavoisier. ISBN : 2-7462-0635-8. [70] H. D UCHESNE, C. AUGIER, et R. U RUNUELA. Déploiement d’ordonnanceurs de processus spécifiques dans un système d’exploitation généraliste. In Conférence Francophone sur le Déploiement et la (Re) Configuration de Logiciels (DECOR’04), pages 193–198, Grenoble, France, Octobre 2004. [71] N. L ORIANT, M. S ÉGURA -D EVILLECHAISE, et J.-M. M ENAUD. Des correctifs de sécurité à la mise à jour - audit déploiement distribué et injection à chaud. In DECOR’2004, 1ère conférence Francophone sur le déploiement et la (re)configuration de Logiciels, pages 65–76, Grenoble, Octobre 2004. ISBN : 2-7261-1276-5. [72] N. L ORIANT, M. S ÉGURA -D EVILLECHAISE, et J.-M. M ENAUD. Un bac à sable juste à temps – correctifs ciblés et injection à chaud. In 5ème Conférence Française sur les Systèmes d’Exploitation (CFSE’05), pages 27–38, Le Croisic, France, Mars 2005. ISBN : 2-7261-1264-1. 176 Rapport d’activité LINA 2003–2006 [73] M. L ÉGER, T. C OUPAYE, et T. L EDOUX. Contrôle dynamique de l’intégrité des communications dans les architectures à composants. In S. V. R. ROUSSEAU , C. U RTADO, réd., Langages et Modèles à Objets, pages 21–36. Hermès-Lavoisier, Mars 2006. ISBN : 2-7462-1418-0. [74] F. M INJAT, A. B ERGEL, P. C OINTE, et S. D UCASSE. Mise en symbiose des traits et des classboxes, application à l’expression des collaborations. In Langages et Modèles à Objets, pages 33–46. Hermès-Lavoisier, Mars 2005. ISBN : 2-7462-1125-4. [75] M. S ÉGURA -D EVILLECHAISE et J.-M. M ENAUD. microDyner : Un noyau efficace pour le tissage dynamique d’aspects sur processus natif en cours d’exécution. In Langages et Modèles à Objets, pages 119–133, Vannes, Février 2003. Hermès-Lavoisier. ISBN : 2-7462-0635-8. [76] M. S ÉGURA -D EVILLECHAISE, J.-M. M ENAUD, J. L AWALL, et G. M ULLER. Extensibilité dynamique dans les caches web : une approche par aspects. In 3ème Conférence Française sur les Systèmes d’Exploitation (CFSE’03), pages 477–487, La Colle sur Loup, Octobre 2003. ISBN : 2-7261-1264-1. E. Colloques (avec ou sans actes) à diffusion restreinte [77] G. B OBEFF et J. N OY É. Molding components using program specialization techniques. In J. B OSCH, C. S ZYPERSKI, et W. W ECK, réds., Eighth International Workshop on ComponentOriented Programming, Darmstadt, Germany, Juillet 2003. In conjunction with ECOOP 2003. [78] J.-P. B ODEVEIX, M. F ILALI, J. L AWALL, et G. M ULLER. Applying the b formal method to the bossa domain-specific language. In The 17th Nordic Workshop on Programming Theory (NWPT’05), pages 35–38, Copenhagen, Denmark, Octobre 2005. [79] P.-C. DAVID et T. L EDOUX. Pour un aspect d’adaptation dans le développement d’applications à base de composants. In Actes Journée de l’AS 150, Systèmes répartis et réseaux adaptatifs au contexte, Paris, France, Avril 2004. [80] P.-C. DAVID et T. L EDOUX. Safe dynamic reconfigurations of fractal architectures with fscript. In Proceeding of Fractal CBSE Workshop, ECOOP’06, Nantes, France, Juillet 2006. [81] S. D ENIER et P. C OINTE. A propos du modèle des traits et de sa transposition en java à l’aide d’AspectJ. In Journée du groupe Objets, Composants et Modèles, pages 13–18, Lille, France, Mars 2004. [82] R. D OUENCE. Relational Aspects for Context passing Beyond Stack Inspection. In International Workshop on Software Engineering Properties of Languages and Aspect Technologies (SPLAT’06), Mars 2006. [83] R. D OUENCE, D. L E B OTLAN, J. N OY É, et M. S ÜDHOLT. Towards a model of concurrent AOP. In International Workshop on Software Engineering Properties of Languages and Aspect Technologies (SPLAT’06), Mars 2006. [84] R. D OUENCE et J. N OY É. Towards a concurrent model of event-based aspect-oriented programming. In European Interactive Workshop on Aspects in Software (EIWAS 2005), Brussels, Belgium, Septembre 2005. [85] T. F RITZ, M. S ÉGURA -D EVILLECHAISE, M. S ÜDHOLT, E. W UCHNER, et J.-M. M ENAUD. An application of dynamic AOP to medical image generation. In International Workshop on Dynamic Aspects at AOSD (DAW’05), Mars 2005. OBASCO : OBjets, ASpects, COmposants 177 [86] J. L AWALL, A.-F. L E M EUR, et G. M ULLER. Modularity for the bossa process-scheduling language. In Proceedings of the ECOOP Workshop on Programming Languages and Operating Systems (PLOS’04), Oslo, Norway, Juin 2004. [87] J. L AWALL, G. M ULLER, et R. U RUNUELA. Tarantula : Killing driver bugs before they hatch. In The 4th AOSD Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS), pages 13–18, Chicago, IL, Mars 2005. [88] N. L ORIANT, M. S ÉGURA -D EVILLECHAISE, T. F RITZ, et J.-M. M ENAUD. A reflexive extension to Arachne’s aspect language. In Proceedings of 2006 AOSD workshop on Open and Dynamic Aspect Languages (ODAL’O6), Bonn, Germany, Mars 2006. [89] N. L ORIANT, M. S ÉGURA -D EVILLECHAISE, et J.-M. M ENAUD. Software security patches – audit, deployment and hot update. In Proceedings of the Fourth AOSD Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS’O5), pages 25–29, Chicago, USA, Mars 2005. [90] J.-M. M ENAUD, J. N OY É, P. C OINTE, et C. P EREZ. Mixing aspects and components for grid computing. In International Workshop on Grid Systems, Tools and Environments (GTE’05), Octobre 2005. [91] G. M ULLER et J. L AWALL. The bossa framework for scheduler development. In Ecole d’été Temps Réel 2005, pages 23–29, Nancy, France, Septembre 2005. [92] J. N OY É, S. PAVEL, et J.-C. ROYER. A PVS Experiment with Asynchronous Communicating Components. In 17th Workshop on Algebraic Development Techniques, Barcelona, Spain, Mars 2004. [93] Y. PADIOLEAU, J. L AWALL, et G. M ULLER. SmPL : A domain-specific language for specifying collateral evolutions in Linux device drivers. In International ERCIM Workshop on Software Evolution, Lille, France, Avril 2006. [94] S. PAVEL, J. N OY É, et J.-C. ROYER. Un modèle de composant avec protocole symbolique. In Journée du groupe Objets, Composants et Modèles, Bern, Suisse, Mars 2005. [95] P. P OIZAT, J.-C. ROYER, et G. S ALA ÜN. Formal Methods for Component Description, Coordination and Adaptation. In Proceedings of the ECOOP Workshop on Coordination and Adaptation Techniques for Software Entities (WCAT’04), Oslo, Norway, Juin 2004. ISBN : 84-688-6782-9. [96] L. RODR ÍGUEZ, Éric TANTER, et J. N OY É. Supporting dynamic crosscutting with partial behavioral reflection : a case study. In Cointe et Südholt [137], pages 118–137. 04/7/INFO. [97] R. U RUNUELA. Application coopérative et gestion de l’énergie du processeur. In 1ères Rencontres des Jeunes Chercheurs en Informatique Temps Réel 2005 (RJCITR’05) Conjointement à l’école d’été temps réel 2005 (ETR’05), Septembre 2005. [98] R. A. Å BERG, J. L AWALL, M. S ÜDHOLT, et G. M ULLER. Evolving an OS kernel using temporal logic and aspect-oriented programming. In The Second AOSD Workshop on Aspects, Components, and Patterns for Infrastructure Software (ACP4IS), Mars 2003. [99] Éric TANTER et P. E BRAERT. A flexible approach to interactive runtime inspection. In ECOOP Workshop on Advancing the State-of-the-Art in Runtime Inspection (ASARTI 2003), Darmstadt, Germany, Juillet 2003. [100] Éric TANTER et J. N OY É. Motivation and requirements for a versatile AOP kernel. In European Interactive Workshop on Aspects in Software (EIWAS 2004), Berlin, Germany, Septembre 2004. 178 Rapport d’activité LINA 2003–2006 F1. Ouvrages ou chapitres d’ouvrage scientifique [101] N. M. B OURAQADI -S A ÂDANI et T. L EDOUX. Supporting AOP using reflection. In M. A KSIT, S. C LARKE, T. E LRAD, et R. E. F ILMAN, réds., Aspect-Oriented Software Development, pages 261–282. Addison-Wesley, 2004. ISBN : 0-321-21976-7. [102] P. C OINTE. Les langages à objets. Vuibert, Octobre 2006. ISBN : 2-7117-4846-4, Chapitre de l’Encyclopédie de l’informatique et des systèmes d’information. [103] P. C OINTE, réd. Les langages à objets. Hermès, 2007. Traité multi-volumes sur les sciences de l’ingénieur, série 4C. [104] P. C OINTE, H. A LBIN -A MIOT, et R. D OUENCE. Le langage Java ou JavaHanoi : un cadre pour l’enseignement de Java. In Cointe [103]. Traité multi-volumes sur les sciences de l’ingénieur, série 4C. [105] J. N OY É, R. D OUENCE, et M. S ÜDHOLT. Composants et aspects. In M. O USSALAH, réd., Ingénierie des composants : Concepts, techniques et outils, chap. 6, pages 169–195. Vuibert, 2005. ISBN : 2-7117-4836-7. F3. Direction d’ouvrage [106] P. C OINTE et M. S ÜDHOLT, réds. Programmation par aspects, volume 11-3 of RSTI - L’objet. Hermès-Lavoisier, Novembre 2005. ISBN : 2-7462-1266-8, ISSN : 1262-1137, Versions étendues d’une séléction d’articles de JFDLPA’04. [107] W. L ÖWE et M. S UDHOLT, réds. Software Composition, volume 4089 of Lecture Notes in Computer Science, Vienna, Austria, 2006. Springer-Verlag. ISBN : 978-3-540-37657-6, ISSN : 12621137, 5th International Symposium, SC 2006. H. DEA, thèses et habilitations [108] H. A LBIN -A MIOT. Idiomes et patterns Java : Application à la synthèse de code et à la détection. PhD thesis, École des Mines de Nantes and Université de Nantes, Février 2003. [109] A. A SSAF. Vers un générateur de langages d’aspects. Master’s thesis, École des Mines de Nantes/Université de Nantes, Septembre 2005. [110] F. BALIGAND. Perspectives d’intégration des services web aux architectures orientées services. Master’s thesis, LINA, 2004. [111] L. D. B ENAVIDES NAVARRO. Dhamaca : an aspect-oriented language for explicit distributed programming. Master’s thesis, Vrije Universiteit Brussel and École des Mines de Nantes, Août 2005. [112] S. B ERKANI. Conception d’un système vidéo personnel garantissant la qualité de service. Master’s thesis, École des Mines de Nantes/Université de Nantes, Septembre 2005. [113] G. B OBEFF. Spécialisation de composants. PhD thesis, École des Mines de Nantes and Université de Nantes, Décembre 2006. [114] Y. C HEN. Aspect-oriented programming (aop) : Dynamic weaving for c++. Master’s thesis, Vrije Universiteit Brussel and École des Mines de Nantes, Août 2003. OBASCO : OBjets, ASpects, COmposants 179 [115] P.-C. DAVID. Développement de composants Fractal adaptatifs : un langage dédié à l’aspect d’adaptation. PhD thesis, École des Mines de Nantes and Université de Nantes, Juillet 2005. [116] A. D ENOUAL. Intégration de Bossa dans .NET. Master’s thesis, École des Mines de Nantes, Septembre 2003. [117] H. D UCHESNE. Conception d’ordonnanceurs pour systèmes multiprocesseurs. Master’s thesis, École des Mines de Nantes, Septembre 2003. [118] A. FAR ÍAS. Un modèle de composants avec des protocoles explicites. PhD thesis, École des Mines de Nantes and Université de Nantes, Décembre 2003. [119] R. G UPTA. A wrapper API for Reflex. Master’s thesis, Vrije Universiteit Brussel and École des Mines de Nantes, Août 2005. [120] Y.-G. G U ÉH ÉNEUC. Un cadre pour la traçabilité des motifs de conception. PhD thesis, École des Mines de Nantes and Université de Nantes, Juin 2003. [121] F. H ERMENIER. Gestion dynamique des grilles de cacul : Application à la gestion d’énergie. Master’s thesis, École des Mines de Nantes and Université de Nantes, Septembre 2006. [122] N. L ORIANT. évolution dynamique dans les systèmes d’exploitation, une approche par aop. Master’s thesis, École des Mines de Nantes, Août 2004. [123] M. L ÉGER. Intégrité structurelle dans les architectures à composants. application à l’intégrité des communications dans la plateforme fractal/julia. Master’s thesis, LINA, 2005. [124] A. N. L ÓPEZ. Concurrent aspects. Master’s thesis, Vrije Universiteit Brussel and École des Mines de Nantes, Août 2006. [125] O. M AR ÉCHAL. Algorithmes d’analyse des communications asynchrones entre composants. Master’s thesis, École des Mines de Nantes, Université de Nantes, Août 2004. [126] F. M INJAT. Vers une modélisation transverse et modulaire des collaborations par couplage des traits et des classboxes, crosscutting and scoped collaborations. Master’s thesis, École des Mines de Nantes, Septembre 2004. [127] A. O ZSEMERCIYAN. Passage de contexte par aspects. Master’s thesis, École des Mines de Nantes, Septembre 2006. [128] S. PAVEL. Lignes de produits logiciels en ArchJava (software product lines in ArchJava). Master’s thesis, École des Mines de Nantes, Septembre 2003. [129] A. S EDKAOUI. Implantation d’un modèle à composants en java. Master’s thesis, LaMI - Université d’Évry Val d’Essonne, Août 2004. [130] D. D. S OGOS. Component generators : Towards adaptable and efficient software components. Master’s thesis, Vrije Universiteit Brussel and École des Mines de Nantes, Août 2003. [131] M. S ÉGURA -D EVILLECHAISE. Traitement par aspects des problèmes d’évolution logicielle dans les caches Webs. PhD thesis, École des Mines de Nantes and Université de Nantes, Juillet 2005. [132] R. U RUNUELA. Extension du langage bossa à la problématique de facturation et de gestion de l’énergie du processeur. Master’s thesis, École des Mines de Nantes, Septembre 2004. [133] K. X U. Analysis and implementation of asynchronous component model. Master’s thesis, Vrije Universiteit Brussel and École des Mines de Nantes, Août 2003. [134] Éric TANTER. From Metaobject Protocols to Versatile Kernels for Aspect-Oriented Programming. PhD thesis, École des Mines de Nantes, Université de Nantes, and University of Chile, Novembre 2004. 180 Rapport d’activité LINA 2003–2006 I. Rapports de contrats [135] S. D. D JOKO, R. D OUENCE, P. F RADET, D. L E B OTLAN, et M. S ÜDHOLT. CASB : Common Aspect Semantics Base. Rapport technique 41, AOSD-Europe, Février 2006. J. Rapports internes [136] L. D. B ENAVIDES NAVARRO, M. S ÜDHOLT, W. VANDERPERREN, B. D E F RAINE, et D. S UV ÉE. Explicitly distributed AOP using AWED. Research Report RR-5882, INRIA, Mars 2006. Slightly extended version of [Benavides et al., AOSD’06]. [137] P. C OINTE et M. S ÜDHOLT, réds. Actes de la Première Journée Francophone sur le Développement du Logiciel par Aspects (JFDLPA’04). IRCAM - École des Mines de Nantes, Septembre 2004. 04/7/INFO. [138] R. D OUENCE, D. L E B OTLAN, J. N OY É, et M. S ÜDHOLT. Concurrent aspects. Research Report RR-5873, INRIA, Mars 2006. [139] R. D OUENCE et J. N OY É. Towards a concurrent model of event-based aspect-oriented programming. Research Report RR-5838, INRIA, Février 2006. [140] A. FAR ÍAS et M. S ÜDHOLT. Integrating protocol aspects with software components to address dependability concerns. Rapport technique 04/6/INFO, École des Mines de Nantes, Novembre 2004. [141] H. G RALL. The synthesis of reference monitors. Rapport technique, École des Mines de Nantes, Juillet 2006. [142] P. P OIZAT et J.-C. ROYER. Korrigan : a Formal ADL with Full Data Types and a Temporal Glue. Rapport technique 88-2003, LaMI, CNRS et Université d’Evry Val d’Essonne, September 2003. http ://www.lami.univ-evry.fr/ poizat/publications. [143] Éric TANTER et J. N OY É. Versatile kernels for aspect-oriented programming. Research Report RR-5275, INRIA, Juillet 2004. L. Diffusion dans le milieu socio-économique, revues non spécialisées [144] P. C OINTE. La programmation par aspects relève le défi des usines logicielles. 01 Informatique, page 28, 30 juin 2006. Carte blanche à l’occasion d’ECOOP 2006. 5.12 Bibliographie externe [145] BEA S YSTEMS , I NC ., C OOPERATIVE R ESEARCH C ENTRE FOR D ISTRIBUTED S YSTEMS T ECHNOLOGY, E XPERSOFT C ORPORATION, G ENESIS D EVELOPMENT C ORPORATION, IBM C ORPORATION, I NPRISE C ORPORATION, IONA T ECHNOLOGIES PLS, O RACLE C ORPORA TION , ROGUE WAVE S OFTWARE , I NC ., et U. C ORPORATION . Corba components - volume 1. TC Document orbos/99-07-01, OMG, Août 1999. Joint Revised Submission. [146] A. B EUGNARD, J.-M. J ÉZ ÉQUEL, N. P LOUZEAU, et D. WATKINS. Making components contract aware. IEEE Software, pages 38–45, Juin 1999. OBASCO : OBjets, ASpects, COmposants 181 [147] A. P. B LACK, N. S CH ÄRLI, et S. D UCASSE. Applying Traits to the Smalltalk Collection Classes. In R. C ROCKER et G. L. S TEELE , J R ., réds., Proceedings of the 18th ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications (OOPSLA 2003), pages 47– 64, Anaheim, California, USA, Octobre 2003. ACM Press. [148] P. B OULEZ. Le pays fertile. NRF, Gallimard édition, 1989. [149] Technologies clés 2005. Ministère de l’économie, des finances et de l’industrie, Septembre 2000. Les éditions de l’industrie, Paris. [150] S. C HANDRA, B. R ICHARDS, et J. L ARUS. Teapot : Language support for writing memory coherence protocols. In Proceedings of the ACM SIGPLAN ’96 Conference on Programming Language Design and Implementation, pages 237–248, Philadelphia, PA, Mai 1996. ACM SIGPLAN Notices, 31(5). [151] P. C OINTE. CLOS and Smalltalk - a comparison. In A. PAEPCKE, réd., Object-Oriented Programming : The CLOS Perspective, chap. 9, pages 216–250. The MIT Press, 1993. [152] P. C OINTE. Les langages à objets. Technique et Science Informatique, 19(1-2-3) :139–146. Hermès, 2000. ISSN : 0752-4072. [153] K. C ZARNECKI. Overview of Generatice Software Development. In J.-P. BAN ÂTRE, P. F RADET, J.-L. G IAVITTO, et O. M ICHEL, réds., Unconventional Programming Paradigms, UPP 2004, volume 3566 of Lecture Notes in Computer Science, pages 302–312, Mont St Michel, France, Septembre 2005. Springer-Verlag. ISBN : 3-540-27884-2. [154] K. C ZARNECKI et U. W. E ISENECKER. Generative Programming. Methods, Tools and Applications. Addison Wesley, 2 rd printing édition, 2000. [155] L. D E M ICHIEL, L. YALÇINALP, et S. K RISHNAN. Enterprise JavaBeansT M Specification. SUN Microsystems, Août 2001. Version 2.0, Final Release. [156] E. G AMMA, R. H ELM, R. J OHNSON, et J. V LISSIDES. Design Patterns : Elements of Reusable Object-Oriented Software. Addison-Wesley, 1994. [157] A. G OLDBERG et D. ROBSON. SMALLTALK-80. THE LANGUAGE AND ITS IMPLEMENTATION. Addison Wesley, 1983. [158] N. J ONES, C. G OMARD, et P. S ESTOFT. Partial Evaluation and Automatic Program Generation. International Series in Computer Science. Prentice Hall, 1993. [159] N. J ONES, C. G OMARD, et P. S ESTOFT. Partial Evaluation and Automatic Program Generation. International Series in Computer Science. Prentice Hall, 1993. [160] G. K ICZALES, J. M. A SHLEY, L. RODRIGUEZ, A. VAHDAT, et D. B OBROW. Metaobject protocols : Why we want them and what else they can do. In A. PAEPCKE, réd., Object-Oriented Programming : The CLOS Perspective, chap. 4, pages 101–118. The MIT Press, 1993. [161] G. K ICZALES, J. L AMPING, A. M ENDHEKAR, C. M AEDA, C. L OPES, J.-M. L OINGTIER, et J. I R WIN . Aspect-oriented programming. In M. A KSIT et S. M ATSUOKA , réds., ECOOP’97 - ObjectOriented Programming - 11th European Conference, volume 1241 of Lecture Notes in Computer Science, pages 220–242, Jyväskylä, Finnland, Juin 1997. Springer-Verlag. [162] A.-F. L E M EUR, J. L. L AWALL, et C. C ONSEL. Specialization scenarios : A pragmatic approach to declaring program specialization. Higher-Order Symbolic Computation, 17(1/2), Mars/Juin 2004. Theme issue on Partial Evaluation and Semantics- Based Program Manipulation. 182 Rapport d’activité LINA 2003–2006 [163] M. M C I LROY. Mass produced software components. In P. NAUR et B. R ANDELL, réds., Proceedings of the NATO Conference on Software Engineering, pages 138–155, Garmish, Germany, Octobre 1968. NATO Science Committee. [164] D. M C NAMEE, J. WALPOLE, C. P U, C. C OWAN, C. K RASIC, C. G OEL, C. C ONSEL, G. M UL LER , et R. M ARLET. Specialization tools and techniques for systematic optimization of system software. ACM Transactions on Computer Systems, 19 :217–251, Mai 2001. [165] N. M EDVIDOVIC et R. TAYLOR. A classification and comparison framework for software architecture description languages. IEEE Transactions on Software Engineering, 26(1) :70–93, Janvier 2000. [166] A. L. M EUR, C. C ONSEL, et B. E SCRIG. An environment for building customizable software components. In IFIP/ACM Working Conference - Component Deployment, pages 1–14, Berlin, Germany, Juin 2002. Springer-Verlag. [167] G. M ULLER, C. C ONSEL, R. M ARLET, L. BARRETO, F. M ÉRILLON, et L. R ÉVEILL ÈRE. Towards robust OSes for appliances : A new approach based on domain-specific languages. In Proceedings of the ACM SIGOPS European Workshop 2000 (EW2000), pages 19–24, Kolding, Denmark, Septembre 2000. [168] G. NAVARRO, réd. 14th International Conference of the Chilean Computer Society, Arica, Chile, Novembre 2004. IEEE Computer Society Press. ISBN : 0-7695-2200-9. [169] O. N IERSTRASZ. Regular types for active objects. In O. N IERSTRASZ et D. T SICHRITZIS, réds., Object-Oriented Software Composition, chap. 4, pages 99–121. Prentice Hall, 1995. [170] R. P RIETO -D IAZ et J. N EIGHBORS. Module interconnection languages. The Journal of Systems and Software, 6(4) :307–334, Novembre 1986. [171] R. P RIETO -D IAZ et J. M. N EIGHBORS. Module interconnection languages. The Journal of Systems and Software, 6(4) :307–334, Novembre 1986. [172] R. S ESSIONS. COM+ and the battle for the Middle Tier. Wiley, 2000. [173] M. S HAW et D. G ARLAN. Software Architecture : Perspectives on an Emerging Discipline. Prentice-Hall, 1996. [174] B. S MITH. Procedural reflection in programming languages. PhD thesis, Massachusetts Institute of Technology, 1982. [175] B. C. S MITH. Reflection and semantics in LISP. Rapport technique P84-00030, Xerox Palto Alto Research Center, Palo Alto, 1984. [176] S UN M ICROSYSTEMS. Sun Open Net Environment (Sun ONE) Software Architecture. White Paper, 2001. [177] C. S ZYPERSKI. Component Software. ACM Press, 2003. 2nd edition. [178] S. T HIBAULT, C. C ONSEL, et G. M ULLER. Safe and efficient active network programming. In 17th IEEE Symposium on Reliable Distributed Systems, pages 135–143, West Lafayette, IN, Octobre 1998. [179] D. T HOMAS. Reflective Software Engineering - From MOPS to AOSD. Journal Of Object Technology, 1(4) :17–26, Octobre 2002. [180] P. W EGNER. Dimension of object-based language design. In J. L. A RCHIBALD, réd., Proceedings of the second ACM SIGPLAN conference on Object-Oriented Programing, Systems, Languages, and Applications (OOPSLA 1987), pages 168–182, Orlando, Florida, USA, Octobre 1987. ACM Press. ACM SIGPLAN Notices, 22(12). OBASCO : OBjets, ASpects, COmposants 183 [181] A. B ERGEL, S. D UCASSE, et O. N IERSTRASZ. Classbox/J : Controlling the Scope of Change in Java. In R. J ONHSON et R. G ABRIEL, réds., Proceedings of the 20th ACM SIGPLAN conference on Object-oriented programing, systems, languages, and applications (OOPSLA 2005), pages 177– 190, San Diego, California, USA, Octobre 2005. ACM Press. Équipe CD : Contraintes Discrètes 6.1 Composition de l’équipe Responsable : Nicolas Beldiceanu Chercheurs-enseignants : – Nicolas Beldiceanu Professeur, EMN, 01/09/2003 – Philippe David Maı̂tre-assistant, EMN, — – Romuald Debruyne Maı̂tre-assistant, EMN, — – Sophie Demassey Maı̂tre-assistant, EMN, 01/09/2006 – Narendra Jussien Maı̂tre-assistant, EMN, — – Thierry Petit Maı̂tre-assistant, EMN, 01/09/2003 – Jean-Xavier Rampon Professeur, Université de Nantes, — – Charlotte Truchet Maı̂tre de conférence, Université de Nantes, 01/07/2006 Chercheurs associés : – Sophie Demassey Maı̂tre-assistant associé, EMN, de 01/09/2005 à 31/08/2006 – Jimmy Leblet ATER, Université de Nantes, de 01/09/2005 à 31/08/2006 – Emmanuel Poder Maı̂tre-assistant associé, EMN, de 01/09/2003 à 31/08/2004 Chercheurs doctorants : – Hadrien Cambazard Allocataire EMN, Université de Nantes, 01/09/2003 185 186 Rapport d’activité LINA 2003–2006 – Emilie Grellier Allocataire EMN, Université de Nantes, 01/10/2005 – Gen-Brug Guenver Doctorant, Université de Nantes, 01/09/2003 – Xavier Lorca Allocataire EMN, Université de Nantes, 01/10/2004 – Guillaume Richaud Allocataire BDI-CNRS, Université de Nantes, 01/10/2005 Anciens doctorants : – Abdalla Elkhyari Allocataire EMN, Université de Nantes, de 01/01/2000 à 31/12/2003 – Samir Ouis Allocataire EMN, Université de Nantes, de 01/01/1999 à 31/12/2003 – Guillaume Rochart Allocataire EMN, co-encadrement avec COCOA, Université de Nantes, de 01/01/2002 à 31/12/2005 6.2 Présentation et objectifs généraux 6.2.1 Historique La genèse de l’équipe Contraintes Discrètes se situe dans les années 1994 lorsque la programmation contraintes à commencée à devenir populaire dans l’industrie par l’intermédiaire de sociétés telles que COSYTEC et Ilog. L’historique de l’équipe Contraintes Discrètes est le suivant : 1994 : arrivée de Patrice B OIZUMAULT (prof) – création de l’équipe et co-habilitation du DEA d’Informatique. 1995 : recrutement de Philippe DAVID (ma) et Olivier L HOMME. Création de l’option GIPAD. 1998 : recrutement de Narendra J USSIEN (ma – doctorant à l’EMN de 1994 à 1997 – HDR 2003). 1999 : Olivier L HOMME retourne dans l’industrie (société Ilog) ; il est remplacé par Romuald D E BRUYNE (ma). 2001 : Patrice B OIZUMAULT quitte l’EMN pour l’université de Caen. Narendra J USSIEN est nommé à la tête de l’équipe. 2002 : recrutement de Thierry P ETIT (ma). 2003 : recrutement de Nicolas B ELDICEANU (prof). Il prend la tête de l’équipe. 2004 : création de la FRE LINA. 2004 : rattachement de Jean-Xavier R AMPON (prof) en octobre 2004. 2006 : obtention du STREP netWMS, du RIAM SEISM et de l’ANR non thématique CANAR. recrutement de Sophie Demassey (ma) et rattachement de Charlotte Truche (mc). organisation de la conférence internationale CP à Nantes. L’objectif de l’équipe Contraintes Discrètes est de fournir les résultats clés de la prochaine génération d’outils de programmation par contraintes. Il s’agit principalement de développer des techniques génériques permettant à la fois d’intégrer et d’unifier différentes facettes et nouvelles extensions de la programmation par contraintes. CD : Contraintes Discrètes 187 6.2.2 Les thèmes de recherche Positionnement de l’équipe Contraintes Discrètes dans le contexte national et international Mis à part l’équipe Contraintes Discrètes, les principaux acteurs dans le domaine des contraintes discrètes sont la société Ilog, le LIRMM (Montpellier) pour la France, et le centre sur les contraintes de Cork (Irlande), Imperial College à Londre (Angleterre), l’université de Brown au USA, l’université de Californie (Irvine) au USA, l’université de Melbourne en Australie, et l’université polytechnique de Montréal au Canada. Les points forts des acteurs précédents sont les suivants : – Ilog est en contact direct avec les besoins provenant des applications et possède une double compétence en programmation linéaire et en programmation par contraintes ; – Le LIRMM possède une forte tradition dans le domaine des réseaux de contraintes (M.C. Vilarem, C. Bessière) ; – Cork a une forte équipe dans le domaine de l’intelligence artificielle ; – Imperial College est en contact direct avec les besoins provenant du domaine des réseaux et possède une équipe maı̂trisant la combinaison des techniques de programmation par contraintes, programmation linéaire et méta-heuristiques ; – L’université de Brown a largement contribué au domaine des contraintes en fournissant des systèmes et des langages pour les contraintes non linéaires, les méta-heuristiques ou la modélisation (OPL) ; – L’université d’Irvine en Californie possède une forte compétence établie depuis longtemps dans le domaine des réseaux de contraintes ; – L’université de Melbourne possède une longue tradition dans le domaine des langages logique où l’on encapsule des contraintes. Récemment elle a constitué un pôle de recherche (avec l’université de Sydney et un centre de recherche Australien NICTA) pour la constitution du projet G12 (modélisation, résolution, hybridation) ; – L’université de Montréal possède une équipe de programmation par contraintes qui collabore pleinement avec les équipes de recherche opérationnelle (dans de domaine de la logistique) de Montréal. D’un point de vue théorique, le point fort de l’équipe Contraintes Discrètes vient du fait qu’elle maı̂trise toutes les facettes de ce sujet (contraintes globales, consistances fortes, explications, contraintes dynamiques). D’un point de vue applicatif, l’équipe Contraintes Discrètes s’appuie sur sa collaboration avec Bouygues (pour le développement de CHOCO) ainsi que sur des projets nationaux (projet ANR SEISM) ou Européen (STREP netWMS). Les compétences dans le domaine des Mathématiques Discrètes ont été renforcées par l’intégration de Jean Xavier Rampon dans l’équipe, par le recrutement d’associés (dont Sophie Demassey) ainsi que par des collaborations avec le Max Planck Institut à Saarbrücken. Démarche et verrous motivant nos thèmes de recherche Démarche suivie Le fil rouge guidant nos recherches consiste à rendre la programmation par contraintes plus accessible aux utilisateurs, aux développeurs d’applications ainsi qu’aux disciplines voisines (recherche opérationnelle, algorithmique, combinatoire) qui sont nécessaires à son développement futur. La première partie est justifiée par notre volonté de rendre la programmation par contraintes plus diffusée dans le monde industriel. Cette diffusion passe par une unification de différents domaines tels que la programmation par contraintes, les méta-heuristiques et la programmation linéaire ainsi que par 188 Rapport d’activité LINA 2003–2006 leur mise en oeuvre de manière transparente pour l’utilisateur. On peut noter que ce dernier point à été mentionné comme un verrou important de diffusion des contraintes par le responsable de l’activité optimisation d’Ilog, J.-F. Puget, lors de la conférence CP2004. Enfin, la dernière partie est motivée par le fait que des progrès significatifs en programmation par contraintes passent par une collaboration étroite avec les disciplines mentionnées. Il s’agit, d’après nous, d’une tendance inéluctable qui est confirmée par la constitution de pôles contraintes-recherche opérationnelle aux États-Unis, au Canada et en Australie. Les verrous Les principaux verrous auxquels fait actuellement face la programmation par contraintes sont les suivants : – Le premier verrou est la constitution de plates-formes de programmation par contraintes mettant en oeuvre de manière transparente toutes les différents grandes classes de méthodes disponibles à l’heure actuelle (réseau de contraintes, contraintes globales, méta-heuristiques, programmation linéaire). Idéalement l’utilisateur doit pouvoir décrire son problème dans un langage de modélisation de haut niveau sans se préoccuper de la manière de résoudre son problème. Finalement, une telle plate-forme devrait être indépendante d’un langage de programmation ou d’un solveur particulier. Les motivations d’une telle approche sont les suivantes : – La programmation par contraintes est bien souvent considérée comme difficile à mettre en oeuvre par des utilisateurs novices dans cette technologie. La question du rendu à l’utilisateur afin que ce dernier interprète les solutions est un problème mal pris en compte. Comme il n’y a guère assez d’experts dans ce domaine c’est un frein puissant à la diffusion de cette technologie. – Dans la pratique les problèmes sur-contraints pour lesquels il n’existe pas de solution vérifiant l’ensemble des contraintes sont communément rencontrés. La mise en oeuvre de techniques permettant à la fois de relacher de manière réaliste les contraintes et de propager efficacement représentent à l’heure actuelle un défi. À l’heure actuelle il existe un tel projet (le projet G121 ) en Australie. À moindre échelle un autre projet existe également en Irlande à Cork.2 – Un deuxième verrou est constitué par le passage à l’échelle. Cela passe par des algorithmes plus efficaces (algorithme incrémentaux), par la synthèse de contraintes ad-hoc adaptées à un aspect de problème rencontré, ou par la décomposition automatique de problèmes. Thèmes de recherche en découlant – Classification de contraintes (rattaché à l’Intelligence Artificielle et aux Mathématiques Discrètes). La classification des contraintes globales et de leur relaxation devrait apporter une meilleure vue synthétique du domaine et permettre de faire un lien systématique entre les propriétés des concepts de bases utilisés pour décrire les contraintes et les propriétés des contraintes elles-mêmes. À notre avis c’est un point de départ pour l’élaboration d’une plate-forme pour la Programmation par Contraintes. – Explications, Apprentissage et Relaxation (rattaché à l’Intelligence Artificielle). L’utilisation systématique d’explications permet de couvrir différents aspects de la programmation par contraintes, tels que la construction d’algorithmes hybrides, la prise en compte de contraintes dynamiques, l’aide à l’utilisateur et l’unification de différentes procédures de recherche. L’apprentis1 2 voir http://nicta.com.au/director/research/programs/nip/research_activities/cpp.cfm voir http://4c.ucc.ie/mimic/ CD : Contraintes Discrètes 189 sage de modèles de contraintes à partir d’exemples constitue un pas important vers la construction automatique de modèles. La relaxation de problèmes sur-contraints est nécessaire dans la pratique. – Algorithmes de filtrages (rattaché aux Mathématique Discrètes et à la Théorie des Graphes). La recherche de méthodes génériques permettrait de générer des familles d’algorithmes de filtrage ainsi que des conditions nécessaires de réalisabilité. Ceci est tout aussi vrai dans le cadre des consistances locales que dans le cadre des contraintes globales. Pour ces dernières, on réutilisera et adaptera des techniques provenant de l’algorithmique (structure de données, théorie des graphes, géométrie algorithmique, ensembles ordonnés). On s’attachera également au développement de méthodes offrant des garanties sur la validité des algorithmes de filtrage produits. – Hybridation (rattaché à la Recherche Opérationnelle et à l’Optimisation Combinatoire). Dans ce thème nous nous intéressons au méthodes hybrides combinant la programmation par contraintes avec d’autres techniques de résolutions telles que les méta-heuristiques. 6.2.3 Perspectives Nous envisageons les objectifs de recherche de l’équipe Contraintes Discrètes sous les points de vue complémentaires suivants : – En premier lieu nous avons le souci de mettre en pratique la Programmation par Contraintes et de la faire évoluer par rapport à des applications concrètes motivées par des demandes industrielles et/ou académiques. Cela est fait, d’une part au niveau régional en partenariat avec des entreprises locales (Projet RIAM SEISM avec la société Succubus à Nantes en 2006 et 2007, Projet Régional dans le domaine de la logistique avec l’équipe SLP de l’IRCyN), et d’autre part au niveau européen dans le cadre d’un projet STREP dans le domaine de la gestion d’entrepôts. Les challenges associés à ces applications sont multiples : – La nécessité de concevoir des modèles compacts permettant un passage à l’échelle (typiquement on désire avoir un nombre linéaire de variables et de contraintes). – Le caractère dynamique des problèmes dans lesquels il faut pouvoir rajouter des objets (par exemple des tâches) et des contraintes sans pour autant recommencer complètement le processus résolution à partir du début. – Le fait que, dans la pratique, il semble illusoire de vouloir exprimer toutes les contraintes opérationnelles d’un problème sous forme de contraintes.3 Pour cette raison que dans le projet netWMS une partie du problème sera codée sous la forme de règles métier qui seront par la suite compilées sous la forme de contraintes. Tous ces projets nous permettent d’enrichir la librairie de programmation par contraintes CHOCO que nous développons en partenariat avec Bouygues. – En deuxième lieu, notre souci est de nous projeter à plus long terme sur des systèmes de programmation par contraintes de nouvelles génération intégrant de manière transparente différents paradigmes de résolution (reformulation de modèles, apprentissage de contraintes, filtrage, explications, méta-heuristiques, hybridation, . . .). Notre vision est que de tels systèmes seront basés sur des bases de connaissances dans le domaine de la combinatoire (bornes sur des paramètres de graphes, invariants de graphes, règles de réécriture de contraintes, . . .) et feront intervenir de manière importante les aspects méta-programmation et réflexivité pour synthétiser automatiquement, à partir des bases de connaissances, du code à partir d’un modèle donné pour un système cible particulier. Pour cela nous nous baserons sur le catalogue de contraintes et la base d’invariants 3 Ceci est particulièrement vrai dans le domaine de l’aérien ou les règlementations au niveau national, européen et international se superposent dans le domaine des horaires de vol. 190 Rapport d’activité LINA 2003–2006 de graphes que nous avons commencé à développer.4 Les challenges associés à cette démarche sont les suivants : – Pour être pertinente la base de connaissances doit comporter un grand nombre d’invariants et de bornes pour toutes les classes de graphes particulières rencontrées dans la pratique. Deux solutions complémentaires sont possibles pour aborder cette difficulté : d’une part il s’agit de fédérer plusieurs équipes au niveau international pour permettre de constituer de manière systématique une telle base (à l’heure actuelle nous travaillons avec le Swedish Institute of Computer Science sur ce thème). D’autre part, il s’agit d’identifier des principes généraux permettant de construire d’un seul coup des familles d’invariants ou de bornes. Une piste pour cela est d’identifier des structures sous-jacentes à un ensemble d’invariants. – Il faut doter un tel système de capacités d’apprentissage afin d’apprendre à partir d’exemples et/ou de contre-exemples non seulement des contraintes mais également des ensembles de contraintes (i.e. des modèles). Nous avons commencé à travailler sur ce thème en collaboration avec le LIRMM de Montpellier. – Il faut également doter un tel système de faculté d’explications qui sont peuvent être exploitées dans de nombreux contextes tels que le rendu à l’utilisateur, le guidage de la recherche ou la génération de nogoods. – Il faut également doter un tel système de capacités de reformulation automatique. En effet il est bien souvent nécessaire d’introduire de nouvelles contraintes plus fortes. Enfin, si l’on veut générer du code pour différents systèmes cibles la reformulation dans les contraintes effectivement disponibles du système cible est nécessaire. Le projet blanc ANR canar (2006-2009), en collaboration avec les universités de Montpellier, d’Orléans et de Caen se focalisera sur les problèmes d’apprentissage ainsi que sur les aspects reformulation. 6.3 Fondements scientifiques La programmation par contraintes est un paradigme de résolution de problèmes qui est fondé sur une distinction claire entre, d’une part, la description des contraintes intervenant dans un problème, et d’autre part, les algorithmes et les heuristiques de résolution utilisés. C’est sa capacité à prendre effectivement en compte des contraintes hétérogènes qui a soulevé dans les années 90 un intérêt commercial pour ce paradigme. Ses domaines de prédilection sont l’ordonnancement (à long et court terme), la conception de circuits (simulation, vérification et test), l’aide à la décision dans le domaine financier (gestion de portefeuille), la biologie (séquencement d’ADN, phylogénie) et la logistique. De part sa situation au carrefour de plusieurs disciplines, la programmation par contraintes fut identifiée en 1996 par l’ACM comme une direction stratégique de recherche. En effet, la programmation par contraintes se situe au carrefour de disciplines telles que l’Intelligence Artificielle, les Mathématiques Discrètes, la Théorie des Graphes, la Recherche Opérationnelle et l’Optimisation Combinatoire. Les premiers systèmes de programmation par contraintes imposèrent des restrictions fortes sur la nature des contraintes que l’on pouvait a priori exprimer ainsi que sur les techniques de recherche que l’on pouvait utiliser. La confrontation au monde industriel amena l’introduction de nouvelles contraintes plus proches des problématiques rencontrées. Elle amena aussi l’utilisation d’autres techniques de recherche 4 Voir http://www.emn.fr/x-info/sdemasse/gccat/ CD : Contraintes Discrètes 191 plus adaptée à la taille des problèmes considérés. Ce fut ainsi l’occasion de remplacer des procédures de résolution générales par des algorithmes adaptés aux différents types de problèmes rencontrés. Sans pour autant quitter complètement le domaine de l’intelligence artificielle, ce passage du général au particulier s’est accompagné d’un glissement progressif vers la recherche opérationnelle. À l’heure actuelle la programmation par contraintes est souvent comprise comme une simple juxtaposition ou une ré-appropriation de certaines techniques venant de différentes disciplines. Face au constat précédent, l’objectif de la programmation par contraintes est de tisser des liens profonds entre les aspects déclaratifs et les aspects procéduraux. Cette vision passe par le développement de techniques générales pouvant à la fois unifier et prendre en compte différent aspects de la programmation par contraintes. Nous nous focalisons donc plus particulièrement sur les thèmes suivants : – Classification de contraintes (rattaché à l’Intelligence Artificielle et les Mathématiques Discrètes). – Explications, Apprentissage et Relaxation (rattaché à l’Intelligence Artificielle). – Algorithmes de filtrages (rattaché aux Mathématiques Discrètes, la Théorie des Graphes et l’Intelligence Artificielle). – Hybridation (rattaché à la Recherche Opérationnelle et l’Optimisation Combinatoire). 6.4 Domaines d’applications 6.4.1 Planification et ordonnancement Historiquement, le domaine d’application le plus fructueux de la programmation par contraintes fut l’ordonnancement à court terme avec contraintes de ressources. Dans ce domaine la programmation par contraintes permet de prendre finement en compte des contraintes opérationnelles sur la caractéristique des processus de fabrications, sur les stocks intermédiaires, sur le personnel et la traçabilité des opérations. C’est un domaine toujours d’actualité qui a par exemple été repris dans les progiciels intégrés de SAP. Dans le cadre de l’ordonnancement avec contraintes de ressources nous avons collaboré avec l’équipe du e-lab de Bouygues ainsi qu’avec l’équipe temps réel de l’IRCCyN (dans le cadre de projets Atlanstic). Plusieurs thèses au sein de l’équipe portent sur le domaine de l’ordonnancement : – La thèse de A. Elkhyari a porté sur les problèmes de RCPSP dynamiques ; – La thèse d’É. Grellier porte sur les problèmes de logistique inverse ; – Finalement la thèse de G. Richaud a trait aux problèmes de pick-up delivery. 6.4.2 Gestion d’entrepôts Dans le cadre du projet européen NetWMS (2006-2008) nous nous intéressons au domaine de la gestion des entrepôts. La réalisation de contraintes géométriques génériques ayant un grand pouvoir expressif et permettant un passage à l’échelle constitue le premier défi de ce projet. L’autre défi concerne le fait de pouvoir exprimer des contraintes métier du domaine de la gestion d’entrepôts. Ces contraintes sont très spécifiques et sont définies par l’intermédiaire de règles qu’il faut ensuite traiter comme des contraintes. 6.4.3 Bio informatique En 2005 et 2006 nous avons collaboré (bourse d’échange européenne) avec le centre de bioinformatique de l’université d’Uppsala dans le cadre de problèmeS de phylogénie. Dans ce cadre le défi 192 Rapport d’activité LINA 2003–2006 consiste à fournir un modèle unique pouvant prendre en compte de manière uniforme un grand nombre de variantes du problème de phylogénie. Au printemps 2006 nous avons débuté une première collaboration sur un problème d’appariement de gènes avec l’équipe COMBI du Lina. Dans ce contexte le défi est la définition de modèles comportant un nombre linéaire de variables et de contraintes afin de permettre le passage à l’échelle sur des séquences de quelques milliers de gènes. 6.4.4 Outils de programmation par contraintes Ces quatre dernières années ont vu fleurir un grand nombre de systèmes de programmation par contraintes aussi bien au niveau industriel qu’au niveau académique (plus d’une dizaine de systèmes). Ces systèmes se présentent comme des libraires de contraintes typiquement disponibles dans des langages tels que C++ ou Java. Dans tous ces systèmes chaque contrainte demande un effort de développement important qui reposent sur des choix initiaux plus ou moins discutables à moyen et long terme (choix du langage, choix de l’architecture de noyau). Enfin un grand nombre des algorithmes de filtrage reposent sur un nombre limité d’algorithmes de bases (couplage, flot, programmation dynamique). Cela mène à des systèmes ingérables sur le long terme. Nous pensons que dans la prochaine génération de systèmes de programmation par contraintes les contraintes seront synthétisées à partir de la description explicite de leur sémantique. Dans cet objectif nous constituons une base de connaissance dans le domaine des contraintes globales intégrant les éléments suivants : – une description systématique du sens des contraintes globales en terme de propriétés de graphes et d’automates ; – une base de données d’invariants de graphes permettant la génération automatique de conditions nécessaires pour un grand nombre de contraintes ; – une base de données de bornes de paramètre de graphes pour les classes de graphes rencontrées dans la description des contraintes globales ; – une exploitation des bornes, des invariants et des automates pour produire de manière systèmatique des explications. Dans ce cadre le défi consiste à fédérer une masse critique de chercheurs pour constituer une telle base de connaissances et à trouver des structures cachées reliant différent invariants (afin de pouvoir générer des milliers d’invariants de manière systématique). Une telle base sera utilisée dans le cadre d’au moins deux systèmes de programmation par contraintes différents, à savoir CHOCO et SICStus. 6.5 Résultats nouveaux 6.5.1 Applications Participants : Nicolas Beldiceanu, Patrice Boizumault, Hadrien Cambazard, Philippe David, Sophie Demassey, Abdallah Elkhyari, Émilie Grellier, Narendra Jussien, Muriel Lauvergne, Olivier Lhomme, Samir Loudni, Guillaume Rochart. Ordonnancement Problème Nous avons utilisé la programmation par contraintes pour résoudre des problèmes concrets à contraintes de ressources dans les domaines de l’emploi du temps (projet EMN), de placement de tâches CD : Contraintes Discrètes 193 sur des processeurs (projet Atlanstic) et de la gestion de chantiers de construction de bâtiments (avec Bouygues). Approche Les résolveurs construits pour les applications précédentes combinent des modèles de contraintes intégrant la notion de ressource à capacité limitée avec des explications ainsi que la gestion dynamique de contraintes. Personnes externes Mats Carlsson (Swedish Institute of Computer Science), Pierre Dejax (IRCCYN), Fabien Demazeau (IRCCYN), Anne-Marie Déplanche (IRCCYN), Christelle Guéret (IRCCYN), PierreEmmanuel Hladik (IRCCYN), Antoine Jeanjean (IRCCYN), Zhiqiang Lu (IRCCYN), Yazid Mati (IRCCYN), Claire Pavageau (IRCCYN), Christian Prins (Université de Troyes). Publications – Emplois du temps : [102, 36, 100]. – Temps réel : [51, 91, 52]. – Gestion de projet : [10, 33]. Logistique Problème Le monde industriel se trouve de plus en plus confronté au problème de la logistique inverse, notamment depuis le décret 2005-829 du 20 juillet 2005 obligeant les fabricants d’équipements électriques et électroniques (électroménager, électronique grand public, téléphonie, informatique) à prendre en charge le traitement des déchets de leurs produits, leur recyclage et leur éventuelle élimination. La logistique inverse concerne la prise en compte des flux de retours (de produits, d’emballage, de produits de manutention . . .) du client vers l’entreprise. La prise en compte des flux classiques (de l’entreprise vers le client) et inverses (du client vers l’entreprise) dans un système logistique est un problème complexe auquel nous rajoutons un troisième type de flux que nous appellerons les flux internes (entre les clients ou entre les dépôts de l’entreprise). Approche Nous développons, dans le contexte particulier de la vente de produits dans une chaı̂ne de magasins, diverses méthodes hybrides propagation par contraintes/recherche opérationnelle. Publications [90, 70, 89, 49]. Réseaux Problème Nous nous intéressons à la réservation dynamique de connexions dans le contexte de l’administration de réseaux ATM chez France Telecom. Lors d’une nouvelle demande, on cherche à lui attribuer une route avec garanties de ressources et de qualité de service. Afin de diminuer le risque de rejet d’une demande, on autorise le re-routage éventuel des connexions déjà réservées sous réserve de pouvoir maintenir leurs qualités de service. Approche La solution apportée au problème repose sur une méthode hybride combinant une modélisation sous forme de CSP (avec propagation de contraintes), des algorithmes de graphes et un mécanisme de réparation. 194 Rapport d’activité LINA 2003–2006 Publications [73, 56, 11]. Bioinformatique Problème On s’intéresse à un problème d’ordonnancement pour une machine qui analyse des échantillons de séquences afin d’identifier la présence de certains gènes bien précis. L’enjeu consiste à augmenter la vitesse d’analyse de cette machine en lui faisant traiter plusieurs échantillons en parallèle. La difficulté vient du fait qu’il faut donc concevoir une clef discrimante de longueur minimale valable pour tous les échantillons potentiels. Approche Nous avons construit un résolveur intégrant deux techniques complémentaires : d’une part un modèle de programmation par contraintes traditionnel, et d’autre part l’utilisation de no-goods généralisés générés en cours d’énumération. Publications [86, 41]. 6.5.2 Apprentissage Participants : Hadrien Cambazard, Narendra Jussien, Thierry Petit. Problèmes Nous avons d’une part utilisé l’apprentissage dans le cadre d’un problème pratique d’ordonnancement temps réel basé sur une généralisation de la décomposition de Benders pour apprendre des noogods. De manière plus théorique nous avons proposé un nouveau cadre général pour l’apprentissage de contraintes globales et nous l’avons testé dans le cadre de la contrainte global cardinality. La motivation de ce travail provient du fait que bien souvent on dispose déjà de solutions pour un problème donné à partir desquelles on souhaite construire un modèle. Personnes externes Christian Bessière (LIRMM), Rémi Coletta (LIRMM), Déplanche (IRCCYN), Pierre-Emmanuel Hladik (IRCCYN), Yvon Trinquet (IRCCYN). Publications Anne-Marie [37, 66, 38, 34]. 6.5.3 Contraintes globales Participants : Nicolas Beldiceanu, Hadrien Cambazard, Romuald Debruyne, Sophie Demassey, Emmanuel Poder, Thierry Petit, Jean-Xavier Rampon, Guillaume Rochart. Algorithmes efficaces de filtrage pour une contrainte globale donnée Problème Il s’agit dans un premier temps d’identifier la classe de complexité d’une contrainte globale donnée, puis de trouver un algorithme de filtrage polynomial faisant l’arc consistance ou pas selon la classe de complexité de la contrainte. CD : Contraintes Discrètes 195 Approche On adapte ou développe des algorithmes efficaces basés sur des graphes (contraintes de chemins, d’arbres, forêts), des flots (contraintes d’égalités entre multi-ensembles), de la géométrie algorithmique (contraintes de non-recoupement ou contraintes cumulative) ou du domaine des séquences (contrainte période). Personnes externes Eric Bourreau (LIRMM), Mats Carlsson (Swedish Institute of Computer Science), Pierre Flener (Université d’Uppsala), Irit Katriel (Max-Plank-Institut für Informatik, Université d’Aarhus), Eric Sanlaville (Université de Clermont Ferrand), Charlotte Truchet (Université de Nantes). Publications – Flot : [27, 28, 17]. – Géométrie algorithmique : [82, 31, 13, 16]. – Graphes : [65, 29, 25, 59, 26, 60]. – Séquences : [62, 32]. Algorithmes de filtrage génériques pour une famille donnée de contraintes Problème Dans le cadre du filtrage pour les contraintes globales, la démarche traditionnelle consiste à écrire un algorithme ad-hoc pour chaque contrainte globale rencontrée. Vu le nombre important de contraintes globales cette démarche ne peut être utilisée dans la pratique que pour un nombre restreint de contraintes. Approche Pour cette raison nous avons commencé à explorer une autre approche qui consiste d’abord à décrire explicitement le sens d’une contrainte (en la modélisant soit comme un automate reconnaissant les solutions associées à la contrainte, soit comme une propriété de graphe à rechercher), puis à déduire de cette description un algorithme de filtrage. Publications – Classification : [120, 6]. – Automates : [42, 23, 7]. – Graphes : [18, 61, 30, 24, 58]. 6.5.4 Explications Participants : Patrice Boizumault, Hadrien Cambazard, Romuald Debruyne, Abdallah Elkhyari , Narendra Jussien, Samir Ouis, Guillaume Rochart. Problèmes et résultats Nous avons cherché à exploiter de manière systématique le potentiel des explications dans les différents domaines suivants : – Les problèmes dynamiques : il s’agit de problèmes dans lesquels on peut retirer des contraintes ou rajouter des objets (par exemple dans un problème d’ordonnancement on voudra rajouter dynamiquement de nouvelles tâches). – La mise au point de programmes : bien souvent en programmation par contraintes se pose le problème de mise au point en termes de recherche de performance ou d’identification de la cause d’un échec lors de la pose des contraintes. Dans ce cadre nous avons utilisé les explications pour construire un outil de diagnostic à l’aide au développement. 196 Rapport d’activité LINA 2003–2006 – Contraintes globales expliquées : les algorithmes de filtrage des contraintes globales reposent tous sur des conditions nécessaires spécifiques. Dans le cadre de contraintes sur les séquences ainsi que de contraintes de flots nous avons montré comment produire des explications pertinentes. – Conception d’heuristiques d’énumération : nous avons montré comment les explications peuvent servir à reconnaı̂tre la structure cachée de certains problèmes, ceci afin de développer des heuristiques adaptées. Personnes externes Patrice Boizumault (Université de Caen), Gérard Ferrand (Université d’Orléans), Étienne Gaudin (Bouygues), Christelle Guéret (IRCCYN), François Laburthe (Bouygues), Willy Lesaint (Université d’Orléans), Éric Monfroy (Université de Nantes), Alexandre Tessier (Université d’Orléans), Gérard Verfaillie (Institut de Recherche en Informatique de Toulouse). Publications – Contraintes dynamiques : [43, 97, 44, 69, 45, 103, 15]. – Mise au point : [57, 74]. – Contraintes globales expliquées : [77, 95, 22, 78, 87, 79]. – Conception d’heuristiques d’énumération : [39, 67, 19] 6.5.5 Filtrage Participants : Romuald Debruyne. Problème Dans le cadre des réseaux de contraintes nous nous intéressons à aller plus loin que l’arc consistance afin d’avoir un meilleur filtrage (tout en restant polynomial). Approche La singleton consistance d’arc (SAC) permet de filtrer bien plus que la consistance d’arc en s’assurant qu’aucune affectation ne puisse rendre le réseau de contraintes arc inconsistant. Nous avons étudié des algorithmes efficaces en temps et en espaces et validée leur comportement dans la pratique. Personnes externes Publications Christian Bessière (LIRMM). [84, 83, 35, 63]. 6.5.6 Hybridation Participants : Hadrien Cambazard, Philippe David, Sophie Demassey, Abdallah Elkhyari, Narendra Jussien, Olivier Lhomme, Guillaume Richaud, Mohamed Tounsi. Problèmes et résultats Dans le cadre de problèmes d’ordonnancement et d’emplois du temps nous avons cherche à combiner la programmation par contraintes avec la recherche locale, la méthode de décomposition de Benders, les méthodes rétro-prospectives et la génération de colonnes. Dans le cas de la méthode de décomposition de Benders nous avons montré comment l’intégrer dans le cadre de la programmation par contraintes et comment utiliser les explications pour produire des coupes. CD : Contraintes Discrètes 197 Dans le cas de méthodes rétro-prospectives nous avons introduit la notion de nogood généralisé (basé sur les explications) pour améliorer l’élagage et l’exploration de l’espace de recherche. Personnes externes Christelle Guéret (IRCCYN), Gilles Pesant(Polytechnique Montréal), LouisMartin Rousseau(Polytechnique Montréal). Publications – Recherche locale : [80, 55]. – Décomposition de Benders : [85, 40]. – Méthodes rétro-prospectives : [76, 68]. – Génération de colonnes : [8] 6.5.7 Ordre Participants : Nicolas Beldiceanu, Glen-Brug Guenver, Jimmy Leblet, Xavier Lorca, Jean-Xavier Rampon. Problème Les travaux réalisés au cours de ces années, s’inscrivent dans le cadre de l’étude morphologique des ensembles ordonnés. Ont ainsi été abordé les problèmes de reconstruction au sens de R. Fraı̈ssé et au sens de S. M. Ulam, les problèmes de codages et donc les problèmes de décompositions. Approche Nous nous sommes intéressés aux ensembles ordonnés décomposables en une bipartition induisant d’une part une chaı̂ne et d’autre part un ensemble ne comprenant aucune couverture de l’ordre initial. Lorsque l’expression aucune couverture correspond à aucune relation on obtient les ordres dits split et sinon on obtient les ordres dits chain dominated. Nous avons pu établir que tous ces ordres possèdent de bonnes propriétés structurelles (reconnaissance, dimension, nombre de sauts, . . .) et ceux dits chain dominated sont universels au sens du codage par visibilité. Nous poursuivrons nos travaux d’une part sur les codages par visibilité et d’autre part sur la caractérisation des classes d’ordres dont tous les éléments admettent des extensions respectueuses pour le non abritement, c’est-à-dire, qui préservent les sous-structures interdites. De plus, en relation avec les problèmes de reconstruction, nous comptons approfondir les notions de polymorphie pour les ensembles ordonnés. Personnes externes Publications Alain Guillet, Pierre Ille. [9, 14, 115, 50, 20]. Problème Dans le cadre de la programmation par contraintes nous avons débuté en 2006 une recherche concernant l’utilisation systèmatique de la largueur d’un graphe dans le cadre des contraintes de chemin. Approche Nous utilisons certains résultats classiques dans le cadre d’ordre (théorème de Dilworth, antichaine maximum supérieure) et nous les combinons avec des techniques de filtrage (localisation des arêtes n’appartenant à aucun couplage parfait, points fort d’articulation) dans le cadre d’une contrainte de partionnement d’un graphe orienté par des chemins. 198 Rapport d’activité LINA 2003–2006 6.5.8 Outils de mise au point Participants : Mohammad Ghoniem, Narendra Jussien, Samir Ouis, Guillaume Rochart. Problème La programmation par contraintes est une technique difficile à mettre en oeuvre par les néophytes. En effet à l’inverse de la programmation impérative classique, l’exécution d’un programme avec contraintes peut être vue comme un ensemble de co-routines se déclenchant et se suspendant en attente d’évènements particuliers. Il est donc impossible de connaı̂tre a priori le fil d’exécution ce qui est très déroutant pour l’utilisateur de tels programmes. Approche Nous avons continué nos travaux antérieurs en nous focalisant sur la production d’outils permettant de visualiser de manière concise l’exécution d’un programme avec contraintes. Personnes externes Publications Jean-Daniel Fekete (INRIA Futur). [88, 48, 47]. 6.5.9 Problèmes sur-contraints Participants : Thierry Petit. Problème Bien souvent dans la pratique il arrive qu’un CSP n’admette aucune solution. Dans ce cas, le but est de trouver une solution partielle vérifiant le plus grand nombre de contraintes possibles. Il s’agit en l’occurrence du problème Max-CSP qui a le double intérêt suivant. D’une part il correspond à un sous problème apparaissant effectivement dans des applications pratiques. D’autre part, il permet d’encapsuler ces sous-problèmes dans des contraintes globales possédant des algorithmes de filtrages spécialisés. Approche Jusqu’à récemment, les algorithmes résolvant le problème du Max-CSP évaluent une borne inférieure du nombre de contraintes violées sans utiliser la propagation. En revanche, les méthodes récentes exploitent la propagation pour améliorer l’évaluation du nombre de contraintes violées. Ils cherchent également à identifier des sous-ensembles disjoints de contraintes ne pouvant pas toutes être satisfaites. Nous avons replacé cette technique de recherche de sous-ensembles dans un cas particulier polynomial du problème du ”Hitting set”. Personnes externes Publications Christian Bessière (LIRMM), Jean-Charles Régin (ILOG). [75, 94]. 6.6 Logiciels 6.6.1 Le système de programmation par contraintes CHOCO Jussien) URL/DOI: http://www.choco-solver.net/ (Responsable: Narendra CD : Contraintes Discrètes 199 Mots-clés: Librairie, Java, Contraintes Équipe de développement: Nicolas Beldiceanu, Hadrien Cambazard, Emilie Grelier, Xavier Lorca, Guillaume Richaud, Guillaume Rochart. Notre équipe est l’un des membres fondateurs du projet OCRE.a Le but de ce projet est de mettre à disposition de la communauté programmation par contraintes des outils, des algorithmes, des exemples et des jeux de test utilisables comme une plate-forme d’expérimentation. CHOCO est le noyau de la plate-forme OCRE : il définit les structures de bases d’un système de contraintes telles que les variables domaines, les contraintes, la propagation et la recherche arborescente. Au cours de la période nous avons commencé à intégrer et à développer de nouvelles contraintes globales dans CHOCO (alldifferent, global cardinality, cumulative, tree). CHOCO utilise une licence libre permettant une utilisation académique aussi bien qu’une utilisation commerciale. a Le projet OCRE fut créé en 1999 par des personnes de l’école des Mines de Nantes, de l’Onera de Toulouse, de l’université de Montpellier, de l’INRA de Toulouse et du laboratoire privé e-lab du groupe Bouygues. 6.6.2 Le système PaLM : Un noyau de contraintes équipé d’explications (Responsable: Narendra Jussien) URL/DOI: http://www.e-constraints.net/palm/palm.html/ Mots-clés: Contraintes, Explications Équipe de développement: Hadrien Cambazard, Abdallah Elkhyari, Guillaume Richaud, Guillaume Rochart, Samir Ouis. Fourni en temps que composant de la librairie CHOCO, PaLM (Propagation and Learning with Move) est une librairie implémentant les explications dans le cadre de la programmation par contraintes. Le moteur de propagation de CHOCO est étendu pour produire des explications (chaque déduction que le moteur effectue est justifiée par des explications qui sont mémorisées). PaLM fournit différents algorithmes tirant parti des explications produites par le moteur de propagation CHOCO. Ceci permet une recherche qui n’est plus basée sur la notion classique de retour arrière mais sur la notion de réparation. Cela fournit un cadre unificateur à la recherche en profondeur d’abord et à la recherche locale. PaLM a également été utilisé pour résoudre des problèmes d’ordonnancement dynamiques dans lesquels les contraintes évoluent de manière graduelle dans le temps. 6.6.3 VISEXP : Un outil pour la visualisation d’explications (Responsable: Narendra Jussien) URL/DOI: Mots-clés: Mise au point, visualisation Équipe de développement: Mohammed Ghoniem Dans le cadre du projet RNTL OADYMPPAC nous avons développé un outil pour visualiser les explications. Cet outil prend en entrée la trace générique de l’exécution d’un programme avec contraintes. VISEXP utilise les fonctionnalités de VISADJ qui est un outil pour visualiser une matrice développé au sein de l’école des Mines de Nantes par l’équipe Modélisation et Conception interactive. 6.6.4 SICStus (Responsable: Nicolas Beldiceanu) URL/DOI: http://ftp.sics.se/pub/SICS-reports/Reports/SICS-T--2004-08--SE.ps.Z/ 200 Rapport d’activité LINA 2003–2006 Mots-clés: Contraintes, Filtrage, Automate Équipe de développement: Romuald Debruyne, Sophie Demassey, Thierry Petit Nous avons poursuivi notre travail commun avec Mats Carlsson du Swedish Institute of Computer Science sur l’utilisation d’automates pour la construction d’algorithme de filtrage. Nous avons développé un prototype dans lequel, pour une contrainte donnée, nous construisons automatiquement un algorithme de filtrage à partir d’un automate reconnaissant les solutions associées à la contrainte en question. Cet outil à été appliqué à une cinquantaine de contraintes. Nous avons également développé des automates calculant des bornes inférieures et supérieures pour certaines propriétés de graphes intervenant dans la description des contraintes globales. 6.6.5 Apprentissage (Responsable: Thierry Petit) URL/DOI: Mots-clés: Contraintes, Apprentissage Équipe de développement: Thierry Petit Dans le cadre de la plate-forme d’apprentissage de contraintes du LIRMM à Montpellier, nous avons développé dans CHOCO en collaboration avec Christian Bessière et Rémi Coletta un algorithme d’apprentissage permettant, à partir d’exemples, d’apprendre des contraintes globales. Tout en étant complètement générique le prototype s’est concentré sur l’apprentissage de contraintes de type global cardinality. 6.7 Activités contractuelles 6.7.1 Actions internationales Le groupe contraintes discrètes collaborent régulièrement avec : – Le Cork Computation Constraint Centre à travers d’un programme d’échange Franco-Irlandais Ulysse. Cette coopération a débuté en 2005 et porte sur le domaine de l’agrégation de nogoods somme forme d’automates, ceci dans le but de faire un filtrage plus fort. – Le Swedish Institute of Computer Science depuis 2003 avec le groupe de Mats Carlsson. Le thème concerne la construction systématique d’algorithmes de filtrage à partir d’automates et d’invariants de graphes. Cela s’est traduit en 2004 et 2006 par un article à ESOP, par trois articles dans la conférence de référence sur les contraintes (CP), et par deux articles dans la revue Constraint. – L’université d’Uppsala dans le cadre d’une bourse européenne d’échange avec le groupe de Pierre Flener. Le thème concerne la résolution de problème de phylogénie. Deux articles sur ce thème ont été réalisés. – Irit Katriel du Max Planck Institut à Saarbrücken (et maintenant à l’université d’Aarhus au Danemark). Le thème concerne la conception d’algorithmes de filtrages efficaces basés sur la théorie des graphes. Cette collaboration a amenée à 6 articles (entre 2003 et 2006). – Le groupe de Gilles Pesant et Louis-Martin Rousseau à Montréal sur le thème des automates et de méthodes hybrides pour les tournées de véhicules. La coopération a donnée lieu à un article. 5e et 6e PCRD NetWMS Responsable: Nicolas Beldiceanu (2006–2009) CD : Contraintes Discrètes 201 Montant: 240608 e Mots-clés: Contraintes géométriques, entrepôt Participants: Narendra Jussien Partenaires: ERCIM, INRIA, CEA, SICS, Peugeot, FIAT, KLS, Wide Scope Le projet NetWMS est un projet STREP du sixième PCRD. Le projet concerne le développement d’outils se basant à la fois sur la programmation par contraintes et la réalité virtuelle augmentée pour la gestion des entrepôts. L’équipe Contraintes Discrètes développe dans ce projet des contraintes géométriques génériques et des contraintes métier dans le domaine du placement dans les entrepôts et dans la logistique. Expertise de projets En 2003 et 2005 N. Jussien a été respectivement expert-évaluateur pour l’ISF (Israël Science Foundation) et pour le SFI (Science Foundation Ireland). 6.7.2 Actions nationales – N. Jussien organise avec P. Baptiste (LIX) et P. Lopez (LAAS) le groupe de travail Contraintes et RO. Les deux premières rencontres ont respectivement eu lieu en juin 2003 et en octobre 2003. S. Demassey est co-animatrice, depuis juin 2004, du groupe de travail Contraintes et RO. Ce groupe de travail des GdR ALP et GdR RO est affilié par les associations françaises de programmation par contraintes (AFPC) et de recherche opérationnelle (Roadef). – N. Jussien est membre du conseil d’administration de l’association pour la programmation logique et la programmation par contraintes. Il est également président de la nouvelle association de programmation par contrainte et membre du groupe Flexibilité du GOTHA. OADyMPPac (2000-2003) Responsable: Narendra Jussien Montant: 213000 e Mots-clés: Contraintes, Mise au point Participants: Romuald Debruyne, Samir Ouis, Guillaume Rochart. Partenaires: Ilog, Cosytec, INRIA/CONTRAINTES, IRISA/LANDE, LIFO, EMN Le projet européen DiSCiPl (Debugging Systems for Constraint Programming) a cherché à faciliter la diffusion de la programmation par contraintes auprès d’un plus large public. Pour cela le projet DiSCiPl s’est penché sur plusieurs aspects tels que le diagnostic d’erreur, le diagnostic des goulots de performance, et la conception d’outils de mise ou points interactifs. À l’issue du projet DiSCiPl sont apparues les deux principales difficultés suivantes : d’une part le manque de format générique de trace, d’autre part le problème de l’extraction d’informations pertinentes. L’objectif premier du projet OADyMPPac a été de contribuer à la définition d’une trace générique pouvant être produit par les solveurs et exploités par différents outils d’analyse et de mise au point. Le deuxième objectif a été de faciliter l’extraction d’informations de trace pertinentes en s’appuyant sur les techniques de visualisation de grande quantité d’information. Explications pour les algorithmes de flots Responsable: Narendra Jussien (2004) 202 Rapport d’activité LINA 2003–2006 Montant: 15000 e Mots-clés: contrainte globale, explication, flot Participants: Guillaume Rochart Partenaires: Bouygues (e-lab), EMN L’objectif de ce projet est de fournir des outils d’analyse et de débogage pour un ensemble spécifique de contraintes globales à base d’algorithmes d’optimisation de flot. Contraintes d’ordonnancement (2005) Responsable: Narendra Jussien Montant: 7500 e Mots-clés: contrainte globale, ordonnancement, cumulatif Participants: Emilie Grellier, Hadrien Cambazard. Partenaires: Bouygues (e-lab), EMN L’objectif de ce projet est de fournir une contrainte globale expliquée de gestion de réseau temporel. Expertise couplage PPC-PL (2006) Responsable: Nicolas Beldiceanu Montant: 1500 e Mots-clés: programmation par contraintes, programmation linéaire Participants: Sophie Demassey Partenaires: Total, EMN Conseil dans le cadre du couplage PPC-PL. SEISM (2006-2008) Responsable: Narendra Jussien Montant: 140000 e Mots-clés: Contraintes, Interface Graphique, Editeur de scénario Participants: Philippe David, Nicolas Beldiceanu. Partenaires: Succubus Interactive, École du Design, EMN Il s’agit d’un projet RIAM dont l’objet est d’utiliser la programmation par contraintes dans le cadre de la visualisation. Le domaine pratique concerné est un éditeur de scénario de jeux développé par la société Succubus Interactive. CANAR (2006-2009) Responsable: Thierry Petit Montant: 210974 e Mots-clés: Contraintes globales, Apprentissage, Reformulation Participants: Philippe David, Nicolas Beldiceanu. Partenaires: Montpellier, Orléans, Caen, EMN C’est un projet ANR blanc qui porte sur le thème de l’apprentissage et la reformulation automatique de contraintes (projet accepté mais dont le montant demandé est à confirmer). Il s’agit enjeu important dans le cadre de la mise en oeuvre de la programmation par contraintes par des personnes n’étant pas expertes du domaine. CD : Contraintes Discrètes 203 6.7.3 Actions régionales Placement, ordonnancement pour les systèmes temps-réel (2005) Responsable: Narendra Jussien Montant: 9500 e Mots-clés: contrainte, temps réel Participants: Hadrien Cambazard Partenaires: IRCCyN, EMN Le problème concerne la mise au point d’un résolveur de contraintes pour un problème d’ordonnancement et d’affectation dans le cadre de systèmes temps réels. Il est financé dans le cadre de projet Atlanstic et est réalisé en collaboration avec l’équipe Systèmes Temps Réel de l’IRCCYN. Méthodes hybrides pour les tournées de véhicules (2005) Responsable: Narendra Jussien Montant: 4000 e Mots-clés: contrainte, recherche opérationnelle, tournées de véhicules Participants: Emilie Grellier Partenaires: IRCCyN, EMN, GERAD Ce projet vise au développement de méthodes hybrides (recherche opérationnelle / programmation par contraintes) pour résoudre des problèmes de tournées de véhicules. Il s’agit de développer une nouvelle collaboration entre les équipes LINA/CD et IRCCYN/SLP dans le domaine des tournées de véhicules et d’initier une collaboration tripartite internationale incluant le GERAD de Montréal, Canada. 6.8 Diffusion des résultats 6.8.1 Rayonnement Conférences invitées – N. Beldiceanu a donné une présentation à la deuxième conférence du groupe suédois sur les contraintes 5 en février 2003 à Stockholm. – N. Beldiceanu a été invité à donner une présentation à la réunion annuelle du groupe ERCIM en juillet 2003 à Budapest. – N. Beldiceanu a été invité à donner un exposé au workshop Annual ERCIM Workshop on Constraint Solving and Constraint Logic Programming à Lisbonne en juin 2006.6 Tutoriels N. Jussien en collaboration avec Gérard Verfaillie du LAAS a donné un cours concernant les contraintes dynamiques à la conférence CP sur les contraintes à Cork en septembre 2003. N. Jussien a donné un cours concernant les aspects contraintes et multi-objectifs à MOPGP 2006 à Nimes. 5 6 Voir http://www.sics.se/˜waldemar/sweconsnet/ Voir http://contraintes.inria.fr/˜soliman/ercim/ 204 Rapport d’activité LINA 2003–2006 Séminaires – En mai 2004, N. Jussien a été invité par H. Hosobe pour faire un exposé au séminaire au National Institute for Informatics (Tokyo, Japon). – En février 2005, N. Jussien a été invité par C. Bessière pour faire un exposé au séminaire du Laboratoire d’Informatique et de Micro-électronique de Montpellier. – En avril 2005, N. Jussien a été invité par B. Sullivan pour faire un exposé au séminaire du Cork Constraint Computation Center (4C), University College (Cork, Irlande). – En mai 2005, N. Jussien a été invité par A. Gotlieb dans le cadre d’un séminaire à l’IRISA (Rennes). – En décembre 2005, N. Beldiceanu a été invité pour faire un exposé dans le cadre du séminaire de mathématiques appliquées à l’université de Budapest (BUTE) dans le groupe de András Recski. – En janvier 2006, X. Lorca a été invité par C. Bessière pour faire un exposé au séminaire du Laboratoire d’Informatique et de Micro-électronique de Montpellier. – En janvier 2006, N. Beldiceanu a été invité par F. Fages pour faire un exposé au séminaire du groupe Contraintes de l’INRIA. Ecoles d’été N. Beldiceanu a participé à l’organisation (sélection des intervenants, constitution d’un recueil d’exercices, . . .) de l’école d’été sur le thème des contraintes globales en juin 2006 à Samos.7 Mise en ligne de ressources – N. Jussien maintient et anime le site web portant sur les explications dans le cadre de la programmation par contraintes.8 – N. Jussien anime le site web portant sur la bibliothèque de contraintes CHOCO.9 – S. Demassey a créé le site web 10 concernant le catalogue de contraintes globales.11 Vulgarisation De février à Mai 2006, N. Jussien a monté une campagne de vulgarisation dans les médias (Nouvel Observateur, Science et Vie, France Inter, Canal+, . . .) de la programmation par contraintes en s’appuyant sur le phénomène du Sudoku. 12 N. Jussien a participé aux journées Atlanticiels dans le cadre d’une conférence invitée portant sur l’avenir du décisionnel. Organisation de conférences scientifiques – N. Beldiceanu a organisé les journées COM 2004 réunissant les différents partenaires de Nantes, Angers et Laval. 7 Voir http://www.cse.unsw.edu.au/˜tw/school.html Voir http://www.e-constraints.net 9 Voir http://www.choco-solver.net 10 Voir http://www.emn.fr/x-info/sdemasse/gccat/index.html 11 Voir ftp://ftp.sics.se/pub/SICS-reports/Reports/SICS-T--2005-08--SE.pdf 12 Voir http://njussien.e-constraints.net/sudoku/ 8 CD : Contraintes Discrètes 205 – S. Demassey et N. Jussien ont participés à l’organisation du workshop Combination of Metaheuristics and Local Search with Constraint Programming Techniques à Nantes en novembre 2005. Ce workshop a réuni plus de 70 participants venant de trois continents.13 – P. David, R. Debruyne, S. Demassey, N. Jussien et T. Petit font partis du comité d’organisation de CP’06 (25-29 septembre 2006, Nantes). Organisation d’écoles de chercheurs N. Beldiceanu a assuré en collaboration avec F. Benhamou le cours Programmation par Contraintes (École jeunes chercheurs en programmation, mai 2004).14 Thèse et Habilitation à diriger des recherches Nicolas Beldiceanu a soutenu son habilitation à diriger des recherches en avril 2003 (Université Paris 6). Narendra Jussien a soutenu son habilitation à diriger des recherches en septembre 2003 (Université de Nantes). Nicolas Beldiceanu a été membre des jurys de thèses suivant : – – – – – – HDR de Narendra Jussien en 2003 (Université de Nantes), Thèse de Samis Ouis en 2003 (Université de Nantes), Thèse de Michael Heusch en 2006 (Université de Nantes), Thèse de Khalil Djelloul en 2006 (Université de Marseille), Thèse de Gen-Brug Guenver en 2006 (Université de Nantes), Thèse de Luis Quesada en 2006 (Université Catholique de Louvain) Narendra Jussien a été membre des jurys de thèses suivant : – – – – – – – – – Thèse de Samis Ouis en 2003 (Université de Nantes), Thèse de Abdalla Elkhyari en 2003 (Université de Nantes), HDR de Christian Artigues en 2004 (Université d’Avignon), Thèse de Ludovic Langevine en 2004 (Université de Rennes), Thèse de Djamal Habet en 2004 (Université de Picardie), Thèse de Pierre-Emmanuel Hladik en 2004 (Université de Nantes), Thèse de Guillaume Rochart en 2005 (Université de Nantes), Thèse de Cyril Canon en 2005 (Université de Tours), Thèse de Rémi Coletta en 2006 (Université de Montpellier). Jean-Xavier Rampon a été membre des jurys de thèses suivant : – Thèse de Jimmy Leblet en 2005 (Université de Nantes), – Thèse de Gen-Brug Guenver en 2006 (Université de Nantes). 13 14 Voir http://webhost.ua.ac.be/eume/welcome.htm?workshops/mlscp/index.php&1 Voir http://www.irisa.fr/manifestations/2004/EJCP2004/programme.htm 206 Rapport d’activité LINA 2003–2006 6.8.2 Comités de programmes et comités de lecture Responsabilités éditoriales – N. Beldiceanu et N. Jussien font partie depuis le printemps 2006 du comité éditorial de la nouvelle revue Constraint Programming Letters 15 pour ce qui concerne respectivement le domaine des contraintes globales ainsi que le domaine des problèmes sur contraints et des explications. – N. Beldiceanu a été l’éditeur invité en 2006 pour un numéro spécial dans la revue Constraint sur le thème des contraintes globales. – N. Jussien a été avec F. Laburthe l’éditeur d’un numéro spécial de la revue AOR concernant une sélection d’articles de l’édition 2002 de la conférence CPAIOR. – N. Jussien, en collaboration avec P. Baptiste et P. Lopez ont été éditeur d’un numéro spécial de la revue RAIRO parue en 2005. – N. Jussien est en charge de la revue Programmation par Contraintes chez Hermès France. Comités de programmes – CP-AI-OR 2003 (N. Beldiceanu, N Jussien) : Fifth International Workshop on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems, Montréal, Canada, 8-10 mai 2003. – JFPLC’2003 (N. Beldiceanu, N Jussien) : Douzièmes Journées Francophones de Programmation Logique et Programmation par Contraintes, Amiens, France, du 17 au 19 juin 2003. – CP’2003 (N Jussien) : Ateliers à CP’03 sur Online Constraint Solving : Handling Change and Uncertainty (OCS) et sur User interaction in Constraint Satisfaction (UICS). – JNPC’2003 (N. Beldiceanu, R. Debruyne, T. Petit) : Journées Nationales sur les Problèmes NPComplets, Amiens, France, du 17 au 19 juin 2003. – ECAI-2004 (N. Beldiceanu) : Workshop on Modelling and Solving Problems with Constraints, ECAI, Valencia, Espagne, 22 août 2004. – CP 2004 (N. Jussien) : 2004 International conference on Constraint Programming (CP), Toronto, Canada. – FLAIRS 2004 (N. Jussien) : International conference of the Florida Artificial Intelligence Research Society (FLAIRS). – CPAIOR 2004 (N. Jussien) : Conference on the integration of AI and OR techniques in Constraint Programming (CP-AI-OR). – JNPC 2004 (N. Jussien, T. Petit) : Président des Journées Nationales pour la résolution des problèmes NP-Complets. – JFPLC 2004 (N. Jussien) : Journées Francophones pour la Programmation en Logique et programmation par Contraintes. – ACM-SAC 2005 (N. Jussien) : Track on constraint solving and programming part of the 20th Annual ACM Symposium on Applied Computing. – IJCAI-2005 (N. Beldiceanu) : Workshop on Modelling and Solving Problems with Constraints, IJCAI, Edindurgh, Scotland, du 30 juillet au 1 août, 2005. – CPAIOR 2005 (N. Jussien) : Conference on the integration of AI and OR techniques in Constraint Programming. – FLAIRS 2005 (N. Jussien) : International conference of the Florida Artificial Intelligence Research Society. 15 Voir http://www.constraint-programming-letters.org/ CD : Contraintes Discrètes 207 – JFPC 2005 (N. Jussien) : Journées Francophones de Programmation par Contraintes. – CHANGES 2005 (N. Jussien). – CP 2005 (N. Beldiceanu) : Eleventh International Conference on Principles and Practice of Constraint Programming, Barcelona, Espagne, du 1 au 5 octobre 2005. – RJCIA 2005 T. Petit – CPAIOR 2006 (N. Jussien) : Conference on the integration of AI and OR techniques in Constraint Programming. – ECAI 2006 (N. Jussien, T. Petit) : Seventeenth European Conference on Artificial Intelligence. – PADL 2006 (N. Jussien) : Eighth International Symposium on Practical Aspects of Declarative Languages. – MOPGP 2006 (N. Jussien) : International Conference devoted to Multi-Objective Programming and Goal Programming. – JFPC 2006 (N. Jussien) : Journées Francophones de Programmation par Contraintes. – CP 2006 (N. Beldiceanu) : Twelfth International Conference on Principles and Practice of Constraint Programming, Nantes, France, septembre 2006. – CPAI 2006 (R Debruyne) : Atelier CPAI à CP’06. – BeyondFD 2006 (N. Beldiceanu) : 2nd International Workshop on Constraint Programming Beyond Finite Integer Domains, Nantes, France, septembre 2006. – CPTools 2006 (N. Jussien) : International Workshop, Nantes, France, septembre 2006. – SOFSEM 2007 (N. Beldiceanu) : Current Trends in Theory and Practice of Computer Science, Prague, République Tchèque, janvier 2007. – IJCAI-2007 (N. Beldiceanu, N. Jussien). Comités de lecture En dehors de relectures pour Artificial Intelligence, Annals of Operations Research et Journal of Scheduling voici la liste des acronymes des manifestations dans lesquelles des membres de notre équipe ont des activités de relecture : – AAAI : National Conference on Artificial Intelligence. – AOR : Annals of Operations Research. – CJ : Constraint journal. – CP : Principle and practice of Constraint Programming. – CPAIOR : Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems. – DO : Discrete Optimization. – ECAI : European Conference on Artificial Intelligence. – EJOR : European Journal of Operational Research. – FLAIRS : International FLAIRS conference. – IJAIT : International Journal on Artificial Intelligence Tools. – IJCAI : International Joint Conference on Artificial Intelligence. – JFPLC : Journées Francophones de Programmation en Logique et de Programmation par Contraintes. – JNPC : Journées Nationales sur la Résolution Pratique de Problèmes NP-Complets. – JFPC : Journées Francophones de Programmation par Contraintes. – JH : Journal of Heuristics. – MP : Mathematical Programming. – RAIRO : Operation Research. 208 Rapport d’activité LINA 2003–2006 – SAC : ACM Symposium on Applied Computing. Nous précisons ci-dessous, pour chaque année, l’état de notre participation : – 2003 : CP, CP-AI-OR, IJCAI, JFPLC, JNPC, FLAIRS. – 2004 : AAAI, CP, CP-AI-OR, ECAI, FLAIRS, IJAIT, JNPC, JFPLC, ECAI, RAIRO. – 2005 : AOR, CP, CP-AI-OR, DO, EJOR, FLAIRS, IJCAI, JNPC, JH, MP, SAC. – 2006 : CJ, CP, CP-AI-OR, ECAI, FLAIRS, IJCAI, JFPC. 6.8.3 Organisation de congrès L’équipe Contraintes Discrètes est impliquée avec l’équipe COCOA dans l’organisation de CP à Nantes. Il s’agit de la conférence internationale de référence dans le domaine des contraintes. Après 10 ans hors de France, elle revient à Nantes pour sa 12ième édition en septembre 2006. N. Jussien est Conference Chair de la manifestation.16 6.8.4 Impact sur la formation universitaire L’équipe contraintes discrètes gère un module sur les contraintes dans le master recherche d’aide à la décision de l’université de Nantes (LINA) ainsi que l’option GIPAD : Génie Informatique pour l’Aide à la Décision des élèves en dernière année de l’école des Mines de Nantes. 6.8.5 Transfert de technologie Au cours de la période 2003-2006 nous avons continué nos développements sur CHOCO (explications, contraintes globales, hybridation), en collaboration avec Bouygues, avec Montpellier (le LIRMM) ainsi qu’avec Cork. Il s’agit d’une librairie Java de contraintes dans le domaine des logiciels libres.17 Cette libraire est utilisée en interne chez Bouygues pour des applications chez TF1, Bouygues Télécom ou Bouygues Construction. Elle est également diffusée auprès de centres académiques, aussi bien en France (par exemple à Montpellier chez C. Bessière), qu’au niveau international (par exemple à Cork dans le centre de recherche sur les contraintes). Mise à part Bouygues, elle est utilisée dans un cadre industriel chez Nokia et Peugeot. 6.9 Publications de référence de l’équipe hors période [1] A. AGGOUN et N. B ELDICEANU. Extending CHIP in order to solve complex scheduling and placement problems. Mathl. Comput. Modelling, 17(7) :57–73. Pergamon Press Ltd., 1993. [2] N. B ELDICEANU et E. C ONTEJEAN. Introducing global constraints in CHIP. Mathl. Comput. Modelling, 20(12) :97–123. Pergamon Press Ltd., 1994. [3] R. D EBRUYNE et C. B ESSI ÈRE. Domain filtering consistencies. Journal of Artificial Intelligence Research, 14 :205–230, Mai 2001. [4] C. G U ÉRET, N. J USSIEN, et C. P RINS. Using intelligent backtracking to improve branch and bound methods : an application to open-shop problems. European Journal of Operational Research, 127(2) :344–354, 2000. ISSN 0377 2217. 16 17 Voir http://www.sciences.univ-nantes.fr/cp06/ Voir http://choco.solver.net/ CD : Contraintes Discrètes 209 [5] N. J USSIEN et O. L HOMME. Local search with constraint propagation and conflict-based heuristics. Artificial Intelligence, 139(1) :21–45, Juillet 2002. ISSN 0004-3702. 6.10 Publications de référence de l’équipe dans la période [6] N. B ELDICEANU, M. C ARLSSON, S. D EMASSEY, et T. P ETIT. Global constraint catalog : Past, present and future. Constraints, 2006. ISSN 1383-7133. Special issue on global constraints, to appear. [7] N. B ELDICEANU, M. C ARLSSON, R.D EBRUYNE, et T. P ETIT. Reformulation of global constraints based on constraint checkers. Constraints, 10(3), 2005. ISSN 1383-7133. [8] S. D EMASSEY, G. P ESANT, et L.-M. ROUSSEAU. A Cost-Regular based hybrid column generation approach. Constraints, 2006. ISSN 1383-7133. Special issue following CPAIOR’05, to appear. [9] G.-B. G UENVER et J.-X. R AMPON. Split orders. Discrete Mathematics, 276(1-3) :249–267, 2004. ISSN 0012-365X. [10] C. G U ÉRET, N. J USSIEN, O. L HOMME, C. PAVAGEAU, et C. P RINS. Loading aircraft for military operations. Journal of the Operational Resarch Society, 54(5) :458–465, 2003. ISSN 0160-5682. [11] S. L OUDNI, P. B OIZUMAULT, et P. DAVID. On-line resources allocation for ATM networks with rerouting. Computer and Operations Research, 2005. to appear. [12] E. N ÉRON, C. A RTIGUES, P. BAPTISTE, J. C ARLIER, S. D EMASSEY, et P. L ABORIE. Perspectives in modern project scheduling, volume 92 of International Series in Operations Research and Management Science, chap. Lower bounds computation for RCPSP. Springer-Verlag, Boston, 2006. ISBN 0-387-33643-5. J. Weglarz et J. Józefowska (eds.). [13] E. P ODER, N. B ELDICEANU, et E. S ANLAVILLE. Computing a lower approximation of the compulsory part of a task with varying duration and varying resource consumption. European Journal of Operational Research, 153 :239–254, 2004. ISSN 0377-2217. [14] J.-X. R AMPON. What is reconstruction for ordered sets ? Discrete Mathematics, 291(1-3) :191– 233, 2005. ISSN 0012-365X. [15] G. V ERFAILLIE et N. J USSIEN. Constraint solving in uncertain and dynamic environments – a survey. Constraints, 10(3). Springer Verlag, 2005. ISSN 1383-7133. 6.11 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [16] N. B ELDICEANU, M. C ARLSSON, et S. T HIEL. Sweep synchronisation as a global propagation mechanism. Special Issue following CP-AI-OR’03, 2005. to appear. [17] N. B ELDICEANU, I. K ATRIEL, et S. T HIEL. Filtering algorithms for the same and usedby constraints. Special issue of Archives of Control Sciences on Constraint Programming for Decision and Control, 2005. To appear. 210 Rapport d’activité LINA 2003–2006 [18] N. B ELDICEANU, T. P ETIT, et G. ROCHART. Bounds of graph properties. RAIRO Operations Research, pages 742–746. EDP Science, 2006. ISSN 0399 0559. [19] H. C AMBAZARD et N. J USSIEN. Des explications pour reconnaı̂tre et exploiter les structures cachées d’un problème combinatoire. RAIRO Operations Research. EDP Science, 2006. ISSN 0399 0559. [20] P. I LLE et J.-X. R AMPON. A counting of the minimal realizations of the posets of dimension two. Ars Combinatoria, 78 :157–165, 2006. ISSN 0381-7032. A2. Revues d’audience nationale avec comité de lecture [21] L. B RETON et N. J USSIEN. Un CSP comme comportement d’agent. Application à la résolution d’équations en physique des milieux granulaires. JEDAI : Journal Électronique d’Intelligence Artificielle, 3(26), 2004. [22] G. ROCHART et N. J USSIEN. Une contrainte stretch expliquée. JEDAI : Journal Électronique d’Intelligence Artificielle, 3(31), 2004. D1. Colloques de diffusion internationale avec comité de lecture et actes [23] N. B ELDICEANU, M. C ARLSSON, et T. P ETIT. Deriving filtering algorithms from constraint checkers. In M. WALLACE, réd., Principles and Practice of Constraint Programming (CP’2004), volume 3258 of LNCS, pages 107–122. Springer-Verlag, 2004. ISBN 3-540-23241-9. [24] N. B ELDICEANU, M. C ARLSSON, J.-X. R AMPON, et C. T RUCHET. Graph invariants as necessary conditions for global constraints. In P. van B EEK, réd., Principles and Practice of Constraint Programming (CP’2005), volume 3709 of LNCS, pages 92–106. Springer-Verlag, 2005. ISBN 3-540-29238-1. [25] N. B ELDICEANU, P. F LENER, et X. L ORCA. The tree constraint. In R. BART ÁK et M. M I LANO , réds., International Conference on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems (CP-AI-OR’05), Lecture Notes in Computer Science, pages 64–78, Prague, Czech Republic, may 2005. Springer Verlag. ISBN 3-540-26152-4, ISSN 0302-9743. [26] N. B ELDICEANU, I. K ATRIEL, et X. L ORCA. Undirected forest constraints. In B. S MITH et C. B ECK, réds., International Conference on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems (CP-AI-OR’06), Lecture Notes in Computer Science, Cork, Ireland, June 2006. Springer Verlag. [27] N. B ELDICEANU, I. K ATRIEL, et S. T HIEL. Filtering algorithms for the same constraint. In J.-C. R ÉGIN et M. RUEHER, réds., Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimisation Problems (CP-AI-OR 2004), volume 3011 of LNCS, pages 65–79. Springer-Verlag, 2004. ISBN 3-540-21836-X. [28] N. B ELDICEANU, I. K ATRIEL, et S. T HIEL. gcc-like restrictions on the same constraint. In B. FALTINGS, A. P ETCU, F. ROSSI, et F. FAGES, réds., Springer LNAI volume based on the 2004 edition of the ERCIM/Colognet workshop on Constraint Solving and Constraint Logic Programming (CSCLP04), volume 3419 of LNAI, pages 1–11. Springer-Verlag, 2005. ISBN 3-540-251766. CD : Contraintes Discrètes 211 [29] N. B ELDICEANU et T. P ETIT. Cost evaluation of soft global constraints. In J.-C. R ÉGIN et M. RUEHER, réds., Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems, volume 3011 of LNCS, pages 80–95. Springer-Verlag, 2004. ISBN 3-540-21836-X. [30] N. B ELDICEANU, T. P ETIT, et G. ROCHART. Bounds of graph properties. In P. van B EEK, réd., Principles and Practice of Constraint Programming (CP’2005), volume 3709 of LNCS, pages 742–746. Springer-Verlag, 2005. ISBN 3-540-29238-1. [31] N. B ELDICEANU et E. P ODER. Cumulated profiles of minimum and maximum resource utilisation. In Ninth Int. Conf. on Project Management and Scheduling, 2004. [32] N. B ELDICEANU et E. P ODER. The period constraint. In B. D EMOEN, réd., Int. Conf. on Logic Programming (ICLP’2004), LNCS. Springer-Verlag, 2004. ISBN 3-540-22671-0. [33] T. B ENOIST, A. J EANJEAN, G. ROCHART, H. C AMBAZARD, E. G RELLIER, et N. J USSIEN. Subcontractors scheduling on residential buildings construction sites. In ISS’06 International Scheduling Symposium, Arcadia Ichigaya, Tokyo, Japan, Juillet 2006. Japan Society of Mechanical Engineers. [34] C. B ESSI ÈRE, R. C OLETTA, et T. P ETIT. Acquiring parameters of implied global constraints. In P. van B EEK, réd., Principles and Practice of Constraint Programming (CP’2005), volume 3709 of LNCS, pages 747–751. Springer-Verlag, 2005. ISBN 3-540-29238-1. [35] C. B ESSIERE et R. D EBRUYNE. Optimal and suboptimal singleton arc consistency algorithms. In Proceedings of the International Joint Conference on Artificial Intelligence, pages 54–59, Edinburgh, Scotland, 2005. ISBN 0938075934. [36] H. C AMBAZARD, F. D EMAZEAU, N. J USSIEN, et P. DAVID. Interactively solving school timetabling problems using extensions of constraint programming. In M. T RICK et E. K. B URKE, réds., Practice and Theory of Automated Timetabling (PATAT 2004), pages 107–124, Pittsburgh, PA USA, Août 2004. ISBN 0-88748-413-1. [37] H. C AMBAZARD, P.-E. H LADIK, A.-M. D ÉPLANCHE, N. J USSIEN, et Y. T RINQUET. Decomposition and learning for a hard real-time task allocating problem. In CORS/INFORMS Joint International Meeting, volume 3258/2004, Banff, Alberta, Canada, may 2004. ISBN 3-540-23241-9, ISSN 0302-9743. [38] H. C AMBAZARD, P.-E. H LADIK, A.-M. D ÉPLANCHE, N. J USSIEN, et Y. T RINQUET. Decomposition and learning for a real time task allocation problem. In Principles and Practice of Constraint Programming (CP 2004), volume 3258 of Lecture Notes in Computer Science, pages 153–167, Toronto, Canada, Septembre 2004. Springer-Verlag. ISBN 3-540-23241-9, ISSN 0302-9743. [39] H. C AMBAZARD et N. J USSIEN. Identifying and exploiting problem structures using explanationbased constraint programming. In R. BART ÁK et M. M ILANO, réds., International Conference on Integration of AI and OR Techniques in Constraint Programming for Combinatorial Optimization Problems (CP-AI-OR’05), volume 3524 of Lecture Notes in Computer Science, pages 94–109, Prague, Czech Republic, may 2005. Springer Verlag. ISBN 3-540-26152-4, ISSN 0302-9743. [40] H. C AMBAZARD et N. J USSIEN. Integrating benders decomposition within constraint programming. In Principles and Practice of Constraint Programming (CP 2005), number 3709 in Lecture Notes in Computer Science, pages 752–756, Sitges, Spain, Septembre 2005. Springer-Verlag. ISBN 3-540-29238-1, short paper. 212 Rapport d’activité LINA 2003–2006 [41] M. C ARLSSON et N. B ELDICEANU. Dispensation order generation for pyrosequencing. In Y.-P. P. C HEN, réd., The Second Asia Pacific Bioinformatics Conference, volume 29. Australian Computer Society, 2004. ISBN 1-920682-00-7, ISSN 1445-1336. [42] M. C ARLSSON et N. B ELDICEANU. From constraints to finite automata to filtering algorithms. In D. S CHMIDT, réd., Proc. ESOP2004, volume 2986 of LNCS, pages 94–108. Springer-Verlag, 2004. ISBN 3-540-21313-9. [43] R. D EBRUYNE, G. F ERRAND, N. J USSIEN, W. L ESAINT, S. O UIS, et A. T ESSIER. Correctness of constraint retraction algorithms. In FLAIRS’03 : Sixteenth international Florida Artificial Intelligence Research Society conference, pages 172–176, St. Augustine, Florida, USA, Mai 2003. AAAI press. ISBN 978-1-57735-177-1. [44] A. E LKHYARI, C. G U ÉRET, et N. J USSIEN. Solving dynamic RCPSP using explanations-based constraint programming. In MAPSP’03 : Sixth workshop on Models and Algorithms for Planning and Scheduling Problems, pages 119–120, Aussois, France, Mars 2003. [45] A. E LKHYARI, C. G U ÉRET, et N. J USSIEN. Constraint programming for dynamic scheduling problems. In H. K ISE, réd., ISS’04 International Scheduling Symposium, pages 84–89, Awaji, Hyogo, Japan, Mai 2004. Japan Society of Mechanical Engineers. [46] A. E LKHYARI, C. G U ÉRET, et N. J USSIEN. Stable solutions for dynamic project scheduling problems. In PMS’04 International Workshop on Project Management and Scheduling, pages 380–384, Nancy, France, Avril 2004. [47] M. G HONIEM, H. C AMBAZARD, J.-D. F EKETE, et N. J USSIEN. Peeking in solver strategies using explanations – visualization of dynamic graphs for constraint programming. In ACM symposium on Software Visualization (SOFTVIS’05), pages 27–36, Saint-Louis, MO, USA, Mai 2005. ISBN 1-59593-073-6. [48] M. G HONIEM, N. J USSIEN, et J.-D. F EKETE. VISEXP : visualizing constraint solver dynamics using explanations. In FLAIRS’04 : Seventeenth international Florida Artificial Intelligence Research Society conference, Miami, Florida, USA, Mai 2004. AAAI press. ISBN 1-57735-201-7. [49] É. G RELLIER, P. D EJAX, N. J USSIEN, et Z. L U. Vehicle routing problem in mixed flows for reverse logistics : a modeling framework. In International Conference on Information Systems, Logistics, and Supply Chain (ILS 2006), Lyon, France, Mai 2006. [50] A. G UILLET, J. L EBLET, et J.-X. R AMPON. Faithful extensions on finite orders classes. Electronic Notes in Discrete Mathematics : special issue ICGT05, 22 :383–386, 2005. ISSN 1571-0653. [51] P.-E. H LADIK, H. C AMBAZARD, A.-M. D ÉPLANCHE, et N. J USSIEN. How to solve allocation problems with constraint programming. In I. P UAUT, réd., Work In Progress of the 17th Euromicro conference on real time systems (ECRTS’05), pages 25–28, Palma de Mallorca, Spain, Juillet 2005. IRISA, Rennes, France. [52] P.-E. H LADIK, H. C AMBAZARD, A.-M. D ÉPLANCHE, et N. J USSIEN. Solving allocation problems of hard real-time systems with dynamic constraint programming. In 14th International Conference on Real-Time and Network Systems (RTNS06), Poitiers, France, Mai 2006. [53] N. J USSIEN. Constraint programming for software engineering. In Fifth Congress of Logic applied to Technology (LAPTEC’05), Himeji, Japan, Avril 2005. [54] N. J USSIEN et V. BARICHARD. Multiobjective optimization and constraint programming. In Seventh international Conference devoted to Multi-Objective Programming and Goal Programming (MOPGP’06), Vallée de la Loire, France, Juin 2006. CD : Contraintes Discrètes 213 [55] N. J USSIEN et O. L HOMME. Combining constraint programming and local search to design new powerful heuristics. In 5th Metaheuristics International Conference (MIC’2003), Kyoto, Japan, Août 2003. [56] S. L OUDNI, P. B OIZUMAULT, et P. DAVID. On-line resources allocation for ATM networks with rerouting. In Fourth International Workshop on Integration of AI and OR techniques in Constraint Programming for Combinatorial Problems (CP-AI-OR 2003), pages 51 – 65, Montréal, Canada, Avril 2003. [57] S. O UIS, N. J USSIEN, et P. B OIZUMAULT. k-relevant explanations for constraint programming. In FLAIRS’03 : Sixteenth international Florida Artificial Intelligence Research Society conference, pages 192–196, St. Augustine, Florida, USA, Mai 2003. AAAI press. ISBN 978-1-57735-177-1. D2. Colloques de diffusion nationale avec comité de lecture et actes [58] N. B ELDICEANU, M. C ARLSSON, S. D EMASSEY, et T. P ETIT. Filtrage basé sur des propriétés de graphes. In 2èmes Journées Francophones de Programmation par Contraintes (JFPC’06), Nı̂mes, France, 2006. [59] N. B ELDICEANU, P. F LENER, et X. L ORCA. Partitionnement de graphes par des arbres sous contraintes de degré. In Deuxièmes Journées Francophones de Programmation par Contraintes (JFPC’06), Nı̂mes, France, Juin 2006. [60] N. B ELDICEANU, I. K ATRIEL, et X. L ORCA. Contraintes de partitionnement par des arbres. In Deuxièmes Journées Francophones de Programmation par Contraintes (JFPC’06), Nı̂mes, France, Juin 2006. [61] N. B ELDICEANU, T. P ETIT, et G. ROCHART. Deriving filtering algorihtms from graph properties. In JFPC’05, 2005. [62] N. B ELDICEANU et E. P ODER. La contrainte periode. In Treizièmes Journées Francophones de Programmation en Logique et de programmation par Contraintes, Angers, France, Juin 2004. ISBN 2-7462-0937-3. [63] C. B ESSIERE et R. D EBRUYNE. Algorithmes optimaux et sous-optimaux de singleton consistance d’arc. In Premières Journées Francophones de Programmation par Contraintes (JFPC’05), pages 277–286, Lens, France, Juin 2005. [64] L. B RETON et N. J USSIEN. Un CSP comme comportement d’agent. Application à la résolution d’équations en physique des milieux granulaires. In 9ièmes Journées nationales sur la résolution pratique de problèmes NP-complets (JNPC’03), pages 99–113, Amiens, France, Juin 2003. [65] H. C AMBAZARD et E. B OURREAU. Conception d’une contrainte globale de chemin. In 10e Journées nationales sur la résolution pratique de problèmes NP-complets (JNPC’04), pages 107– 121, Angers, France, Juin 2004. [66] H. C AMBAZARD, P.-E. H LADIK, A.-M. D ÉPLANCHE, N. J USSIEN, et Y. T RINQUET. Décomposition et apprentissage pour un problème d’allocation de tâches temps-réel. In 10e Journées nationales sur la résolution pratique de problèmes NP-complets (JNPC’04), pages 123– 138, Angers, France, Juin 2004. [67] H. C AMBAZARD et N. J USSIEN. Des explications pour reconnaı̂tre et exploiter les structures cachées. In Premières Journées Francophones de Programmation par Contraintes (JFPC’05), pages 403–412, Lens, France, Juin 2005. 214 Rapport d’activité LINA 2003–2006 [68] H. C AMBAZARD et N. J USSIEN. Techniques rétrospectives pour résoudre le minimum open stacks problem. In Deuxièmes Journées Francophones de Programmation par Contraintes (JFPC’06), Nı̂mes, France, Juin 2006. [69] A. E LKHYARI, C. G U ÉRET, et N. J USSIEN. Utilisation de la programmation par contraintes pour résoudre le RCPSP dynamique et quelques extensions. In 5ème congrès de la Société Française de Recherche Opérationnelle et d’Aide à la Décision (ROADEF 2003), pages 97–98, Avignon, France, Février 2003. [70] É. G RELLIER, P. D EJAX, N. J USSIEN, et Z. L U. Tournées de collectes et livraisons dans le cadre de la logistique inverse. In 7ème congrès de la Société Française de Recherche Opérationnelle et d’Aide à la Décision (ROADEF 2006), Lille, France, Février 2006. [71] N. J USSIEN. L’enseignement de la programmation logique à l’école des Mines de Nantes. In Journées Francophones de Progammation en Logique et avec Contraintes (JFPLC’03), pages 63–75, Amiens, France, Juin 2003. Hermès. ISBN 2-7462-0739-7. [72] F. L ABURTHE, G. ROCHART, et N. J USSIEN. Évaluer la difficulté d’une grille de sudoku à l’aide d’un modèle contraintes. In Deuxièmes Journées Francophones de Programmation par Contraintes (JFPC’06), Nı̂mes, France, Juin 2006. [73] S. L OUDNI, P. B OIZUMAULT, et P. DAVID. Réservation en ligne avec reroutage de demandes de connexions dans les réseaux ATM. In Douzièmes Journées Francophones de Programmation en Logique et de programmation par Contraintes, pages 169 – 182, Amiens, France, Avril 2003. ISBN 2-7462-0739-7. [74] S. O UIS, N. J USSIEN, et P. B OIZUMAULT. Explications k-relevantes pour la programmation par contraintes. In Journées Francophones de Progammation en Logique et avec Contraintes (JFPLC’03), pages 111–124, Amiens, France, Juin 2003. Hermès. ISBN 2-7462-0739-7. [75] T. P ETIT, C. B ESSI ÈRE, et J.-C. R ÉGIN. Détection de conflits pour la résolution de problèmes surcontraints. In 9ièmes Journées nationales sur la résolution pratique de problèmes NP-complets (JNPC’03), pages 293–307, Amiens, France, Juin 2003. [76] G. R ICHAUD, H. C AMBAZARD, et N. J USSIEN. Suppression de symétries pour les méthodes rétro-prospectives. In Deuxièmes Journées Francophones de Programmation par Contraintes (JFPC’06), Nı̂mes, France, Juin 2006. [77] G. ROCHART et N. J USSIEN. Une contrainte stretch expliquée. In 9ièmes Journées nationales sur la résolution pratique de problèmes NP-complets (JNPC’03), pages 309–323, Amiens, France, Juin 2003. [78] G. ROCHART et N. J USSIEN. Contraintes de flot et explications. In 10e Journées nationales sur la résolution pratique de problèmes NP-complets (JNPC’04), pages 369–372, Angers, France, Juin 2004. [79] G. ROCHART et N. J USSIEN. Implémenter des contraintes globales expliquées. In Premières Journées Francophones de Programmation par Contraintes (JFPC’05), pages 393–402, Lens, France, Juin 2005. [80] M. T OUNSI et P. DAVID. Coopération d’algorithmes de recherche locale : Application à la résolution du problème de construction d’emploi du temps. In Cinquième congrès de la société française de recherche opérationnelle et d’aide à la décision (ROADEF’03), Avignon, France, feb 2003. CD : Contraintes Discrètes 215 E. Colloques (avec ou sans actes) à diffusion restreinte [81] N. B ELDICEANU. Generic filtering algorithms for generic global constraints. 2003. [82] N. B ELDICEANU, M. C ARLSSON, et S. T HIEL. Sweep synchronisation as a global propagation mechanism. In CP-AI-OR, 2003. [83] C. B ESSI ÈRE et R. D EBRUYNE. Optimal and suboptimal singleton arc consistency algorithms. In Proceedings of CP’04 workshop on Constraint Propagation and Implementation, Toronto, Canada, 2004. [84] C. B ESSI ÈRE et R. D EBRUYNE. Theoretical analysis of singleton arc consistency. In Proceedings of ECAI’04 workshop on Modelling and Solving Problems with Constraints, pages 20–29, Valencia, Spain, 2004. [85] H. C AMBAZARD et N. J USSIEN. Benders decomposition in constraint programming. In CSCLP’05 : Joint Annual Workshop of ERCIM/CoLogNet on Constraint Solving and Constraint Logic Programming, Uppsala, Sweden, Juin 2005. [86] M. C ARLSSON et N. B ELDICEANU. Multiplex dispensation order generation for pyrosequencing. In Proceedings of the CP workshop on CSP Techniques with Immediate Application, 2004. Preprint available at ftp ://ftp.sics.se/pub/isl/papers/cp04cspia.pdf. [87] É. G AUDIN, N. J USSIEN, et G. ROCHART. Implementing explained global constraints. In CP04 Workshop on Constraint Propagation and Implementation (CPAI’04), pages 61–76, Toronto, Canada, Septembre 2004. [88] M. G HONIEM, N. J USSIEN, et J.-D. F EKETE. Visualizing explanations to exhibit dynamic structure in constraint problems. In CP03 Workshop on User-Interaction in Constraint Satisfaction (UICS’03), pages 1–15, Kinsale, Ireland, Septembre 2003. [89] É. G RELLIER, P. D EJAX, N. J USSIEN, et Z. L U. A column generation model and constraint programming techniques for solving an inventory routing problem in mixed flows. In Third international workshop on freight transportation and logistics (Odysseus 2006), Altea, Spain, Mai 2006. [90] É. G RELLIER, P. D EJAX, et Y. M ATI. Le problème de construction de tournées avec gestion de stocks : résolution par la méthode grasp. In 6ième congrès de la société Français de Recherche Opérationnelle et d’Aide à la Décision (ROADEF’05), pages 193–194, Tours, France, Février 2005. [91] P.-E. H LADIK, H. C AMBAZARD, A.-M. D ÉPLANCHE, et N. J USSIEN. Guiding architectural design process of hard real-time systems with constraint programming. In Third Taiwanese-French Conference on Information Technology (TFIT 2006), pages 317–331, Nancy, France, Mars 2006. [92] N. J USSIEN. Programmation par contraintes pour les technologies logicielles. In Colloque GEMSTIC’03 : l’industrie du logiciel – outils et méthodologies, Paris, France, Avril 2003. Groupe des Écoles des Mines. [93] N. J USSIEN. Explanation-based constraint programming. In Second Franco-Japanese workshop on Constraint Programming (FJCP 2005), Le Croisic, France, Novembre 2005. [94] T. P ETIT, C. B ESSI ÈRE, et J.-C. R ÉGIN. A general conflict-set based framework for partial constraint satisfaction. In CP’03 Workshop on soft constraints, Kinsale, Ireland, Septembre 2003. [95] G. ROCHART, N. J USSIEN, et F. L ABURTHE. Challenging explanations for global constraints. In CP03 Workshop on User-Interaction in Constraint Satisfaction (UICS’03), pages 31–43, Kinsale, Ireland, Septembre 2003. 216 Rapport d’activité LINA 2003–2006 [96] G. ROCHART, É. M ONFROY, et N. J USSIEN. Minlp problems and explanation-based constraint programming. In CP04 Fourth Workshop on Cooperative Solvers in Constraint Programming (COSOLV’04), Toronto, Canada, Septembre 2004. [97] G. V ERFAILLIE et N. J USSIEN. Dynamic constraint solving. In Principles and Practice of Constraint Programming (CP 2003), Kinsale, County Cork, Ireland, Octobre 2003. ISBN 3540-20202-1, Tutorial - online notes available http ://www.emn.fr/jussien/CP03tutorial. F1. Ouvrages ou chapitres d’ouvrage scientifique [98] C. A RTIGUES, S. D EMASSEY, et E. N ÉRON. Resource-Constrained Project Scheduling : Models, Algorithms, Extensions and Applications. coll. Recherche Opérationnelle. Hermès Sciences, 2006. to appear. [99] P. BAPTISTE, N. J USSIEN, et P. L OPEZ, réds. Special Issue Constraint Programming. RAIRO Operations Research. EDP Science, 2005. ISSN 0399 0559, Special issue from a selection of papers presented in the OR/CP research group. [100] H. C AMBAZARD, F. D EMAZEAU, N. J USSIEN, et P. DAVID. Interactively solving school timetabling problems using extensions of constraint programming. In E. K. B URKE et M. T RICK, réds., Practice and Theory of Automated Timetabling V, number 3616 in Lecture Notes in Computer Science, pages 190–207. Springer-Verlag, 2005. ISBN 3-540-30705-2. [101] S. D EMASSEY, X. G ANDIBLEUX, N. J USSIEN, et K. S ORENSEN, réds. Special Issue on integration of metaheuristics and constraint programming techniques. Journal of Mathematical Modelling and Algorithms. Springer, 2006. ISSN : 1570 1166, Special issue following a EU/ME workshop held in 2005 – to appear. [102] A. E LKHYARI, C. G U ÉRET, et N. J USSIEN. Solving dynamic timetabling problems as dynamic resource constrained project scheduling problems using new constraint programming tools. In E. K. B URKE et P. D. C AUSMAECKER, réds., Practice and Theory of Automated Timetabling IV, number 2740 in Lecture Notes in Computer Science, pages 39–59. Springer-Verlag, 2003. ISBN 3540406999. [103] A. E LKHYARI, C. G U ÉRET, et N. J USSIEN. Ordonnancement dynamique de projet à contraintes de ressources. In J.-C. B ILLAUT, A. M OUKRIM, et E. S ANLAVILLE, réds., Flexibilité et Robustesse en Ordonnancement. Hermès, Mars 2005. ISBN 2746210282. [104] N. J USSIEN, réd. Dixièmes Journées nationales sur la résolution pratique de problèmes NPcomplets (JNPC’04), Angers, France, Juin 2004. Université d’Angers. [105] N. J USSIEN et F. L ABURTHE, réds. Hybrid Optimization Techniques, volume 130 of Annals of Operations Research. Kluwer, Août 2004. Special Issue following CP-AI-OR’02, ISSN 0254 5330. G. Autres manifestations sans actes [106] N. B ELDICEANU. Graph-based filtering. Applied Mathematics Seminar, Budapest University of Technology, dec 2005. [107] N. J USSIEN. Dynamic constraint solving. Séminaire du National Institute for Informatics (Tokyo, Japan), Mai 2004. CD : Contraintes Discrètes 217 [108] N. J USSIEN. Explanation-based constraint programming. Cork Constraint Computation Center seminar, Avril 2005. [109] N. J USSIEN. Programmation par contraintes avec explications : études et perspectives. Séminaire 68NQRT de l’IRISA, Mai 2005. [110] N. J USSIEN. Programmation par contraintes avec explications : études et perspectives. Séminaire du Laboratoire d’Informatique et de Micro-électronique de Montpellier, Février 2005. [111] N. J USSIEN. De l’information à la décision : approche prospective du décisionnel. Soirée Atlanticiels – le rendez-vous TIC de la métropole Nantes-Atlantique, Mars 2006. H. DEA, thèses et habilitations [112] N. B ELDICEANU. Contraintes globales : Aspects algorithmiques et déclaratifs. Habilitation thesis of Université de Paris VI, april 2003. [113] A. E LKHYARI. Outils d’aide à la décision pour des problèmes d’ordonnancement dynamiques. PhD thesis, Université de Nantes, Nantes, France, Novembre 2003. [114] N. J USSIEN. The versatility of using explanations within constraint programming. Habilitation thesis of Université de Nantes, 18 Septembre 2003. also available as RR-03-04 research report at École des Mines de Nantes. [115] J. L EBLET. Morphologie des ensembles ordonnés : Répercussions algorithmiques. PhD thesis, LINA-Université de Nantes, Décembre 2005. [116] S. O UIS. Outils de mise au point pour la programmation par contraintes. PhD thesis, Université de Nantes, Nantes, France, Décembre 2003. [117] G. ROCHART. Explications pratiques pour la programmation par contraintes. PhD thesis, Université de Nantes, Nantes, France, Décembre 2005. J. Rapports internes [118] N. B ELDICEANU, M. C ARLSSON, S. D EMASSEY, et T. P ETIT. Graph-properties based filtering. Rapport technique T2006-10, Swedish Institute of Computer Science, 2006. [119] N. B ELDICEANU, M. C ARLSSON, et T. P ETIT. Deriving filtering algorithms from constraint checkers. Research Report T2004-08, Swedish Institute of Computer Science, 2004. [120] N. B ELDICEANU, M. C ARLSSON, et J.-X. R AMPON. Global constraint catalog. Research Report T2005-08, Swedish Institute of Computer Science, 2005. [121] N. B ELDICEANU, M. C ARLSSON, J.-X. R AMPON, et C. T RUCHET. Graph invariants as necessary conditions for global constraints. Rapport technique T2005-07, Swedish Institute of Computer Science, 2005. [122] N. B ELDICEANU, P. F LENER, et X. L ORCA. Combining tree partitioning, precedence, incomparability, and degree constraints, with an application to phylogenetic and ordered-path problems. Rapport technique 2006-020, Department of Information Technology, Uppsala University, Sweden, April 2006. [123] N. B ELDICEANU, I. K ATRIEL, et S. T HIEL. Filtering algorithms for the same and usedby constraints. Research Report MPI-I-2004-001, MPI, 2004. 218 Rapport d’activité LINA 2003–2006 [124] N. B ELDICEANU, T. P ETIT, et G. ROCHART. Bounds of graph properties. In Technical Report 05/02/INFO. Ecole des Mines de Nantes, 2005. [125] H. C AMBAZARD, P.-E. H LADIK, A.-M. D ÉPLANCHE, N. J USSIEN, et Y. T RINQUET. Decomposition and learning for a hard real time task allocation problem. Research Report 04-04-INFO, École des Mines de Nantes, Nantes, France, 2004. [126] É. G AUDIN, N. J USSIEN, et G. ROCHART. Explained global constraints at work. Research Report 04-03-INFO, École des Mines de Nantes, Nantes, France, 2004. [127] É. G RELLIER, P. D EJAX, et Y. M ATI. Modélisation et optimisation d’un problème de tournées de véhicules avec gestion de stocks. Research Report 04-6-AUTO, École des Mines de Nantes, Nantes, France, 2004. [128] P.-E. H LADIK, H. C AMBAZARD, A.-M. D ÉPLANCHE, et N. J USSIEN. Dynamic constraint programming for solving hard real-time allocation problems. Research Report 2005-7, IRCCyN, 2005. [129] N. J USSIEN. The versatility of using explanations within constraint programming. Research Report 03-04-INFO, École des Mines de Nantes, Nantes, France, 2003. [130] N. J USSIEN et R. D EBRUYNE. Explanation-based repair techniques for constraint programming. Délivrable D3.2.3, Projet OADymPPaC, http ://contraintes.inria.fr/OADymPPaC, 2003. [131] G. ROCHART et N. J USSIEN. Explanations for global constraints : instrumenting the stretch constraint. Research Report 03-01-INFO, École des Mines de Nantes, Nantes, France, 2003. Équipe CoCoA : Contraintes Continues et Applications 7.1 Composition de l’équipe Responsable : Laurent Granvilliers Chercheurs-enseignants : – Frédéric Benhamou Professeur, Université de Nantes, — – Marc Christie Maı̂tre de Conférences, Université de Nantes, depuis le 01.09.2003 Post-doctorant, Université de Nantes, jusqu’au 31.08.2003 – Frédéric Goualard Maı̂tre de Conférences, Université de Nantes, — – Laurent Granvilliers Professeur, Université de Nantes, depuis le 01.09.2005 Maı̂tre de Conférences, Université de Nantes, jusqu’au 01.09.2005 – Christophe Jermann Maı̂tre de Conférences, Université de Nantes, depuis le 01.09.2003 – Christophe Mauras Maı̂tre de Conférences, Université de Nantes, depuis le 10.04.2003 – Éric Monfroy Professeur, Université de Nantes, depuis le 01.09.2003 (Détachement à l’UTFSM du Chili) Maı̂tre de Conférences, Université de Nantes, jusqu’au 31.08.2003 – Charlotte Truchet Maı̂tre de Conférences, Université de Nantes, depuis le 01.09.2005 demi-ATER, Université de Nantes, 01.09.2004–01.09.2005 Chercheurs post-doctorants : – Laurent Breton ATER, Université de Nantes, jusqu’au 31.08.2004 – Vincent Sorin Ingénieur, Université de Nantes, 01.10.2003–31.08.2004 219 220 Rapport d’activité LINA 2003–2006 Chercheurs doctorants : – Raphaël Chenouard Doctorant ENSAM, Université de Nantes/ENSAM Bordeaux, depuis le 01.09.2004 – Thomas Douillard Doctorant MENESR, Université de Nantes, depuis le 01.09.2005 – Tony Lambert Doctorant sur contrat régional, Universités de Nantes et Angers, depuis le 01.09.2003 – Jean-Marie Normand Doctorant MENESR, Université de Nantes, depuis le 01.09.2004 – Brice Pajot Doctorant MENESR, Université de Nantes, — – Ricardo Soto Doctorant boursier du gourvernement chilien, Université de Nantes, depuis le 01.01.2006 Anciens doctorants : – Lucas Bordeaux Doctorant MENESR, Université de Nantes, jusqu’au 31.08.2003 – Martine Ceberio Doctorant MENESR, Université de Nantes, jusqu’au 31.08.2003 – Michael Heusch Doctorant CIFRE, Université de Nantes/Thales Group, jusqu’au 30.01.2006 – Mina Ouabiba Doctorante boursière sur contrat européen IST, Université de Nantes, jusqu’au 31.08.2005 – Guillaume Rochart Doctorant MENESR, Université de Nantes - École des Mines de Nantes, jusqu’au 30.11.2005 7.2 Présentation et objectifs généraux Glossaire : – Contrainte continue : formule atomique de la logique du premier ordre interprétée sur la structure des nombres réels, par exemple une équation non-linéaire où les variables sont définies dans des intervalles de nombres réels – Programmation par contraintes (CP) : paradigme de programmation qui permet de séparer le quoi du comment en combinant un langage de description de problèmes (modélisation) à des technologies efficaces de résolution de problèmes d’optimisation (solveurs de contraintes) 7.2.1 Historique COCOA vient de l’équipe de CP créée par F. Benhamou en 1997. L’objectif initial était d’élaborer des langages, des systèmes et des algorithmes de CP pour traiter les problèmes modélisés en partie par des contraintes continues. Historiquement, les thèmes de prédilection de l’équipe sont la résolution de contraintes sur les intervalles [2, 6, 4] et les modèles de résolution hybrides symboliques/numériques développés dans le cadre de la thèse de L. Granvilliers [5]. Les méthodes symboliques simplifient les contraintes et les méthodes numériques calculent des approximations des solutions sans perte (couverture de l’ensemble des solutions). CoCoA : Contraintes Continues et Applications 221 En recrutant E. Monfroy en 2000, l’équipe s’est enrichie de compétences en coopération de solveurs [9, 1]. C’est une approche où les techniques de résolution sont décrites à un niveau plus abstrait et les solveurs sont réalisés comme des compositions de solveurs élémentaires. Ces axes de recherche (résolution et coopération) ont permis de poser les fondements des systèmes de CP développés dans l’équipe. Le premier logiciel distribué a été Declic [7], un langage de programmation logique avec contraintes sur les intervalles décrit dans la thèse de F. Goualard, construit sur clp(FD). Les orientations plus récentes concernent la résolution de contraintes quantifiées [3] et des applications en robotique (identification, estimation), en synthèse d’images (cinématographie, jeux vidéos, réalité virtuelle) et en conception de produits industriels. COCOA hérite d’une longue tradition de participation à des projets européens comme PRINCE, ACCLAIM, CHIC et plus récemment DISCIPL, COCONUT et le réseau d’excellence CologNet. Elle a ainsi tissé des liens avec de nombreux groupes de recherche en Europe et en Amérique comme à Brown (P. Van Hentenryck), au CWI (K.R. Apt), à Lisbonne (P. Barahona), à Vienne (A. Neumaier), à Ulm (T. Frühwirth), à Lausanne (B. Faltings), à Cork (B. O’Sullivan), etc., et avec des sociétés informatiques comme ILOG et PrologIA. Elle collabore aussi avec les groupes Dassault Aviation et Thalès. Un autre jalon important de l’histoire des contraintes à Nantes a été la création de l’équipe de CP à l’École des Mines par P. Boizumault en 1994, aujourd’hui l’équipe CD. Ensemble, CD et COCOA couvrent un ensemble important des techniques et des applications de la CP. 7.2.2 Les axes de recherche COCOA s’attaque au problème de la résolution des formules quelconques de la logique du premier ordre sur les nombres entiers et réels, avec des contraintes continues, de l’incertitude ou des préférences sur les données, et des critères de performance. Les outils de base mis en œuvre sont l’analyse par intervalles, la propagation de contraintes, le calcul symbolique et la recherche arborescente. L’objectif principal est de réaliser un système de CP capable de gérer des modèles de données hétérogènes, des modèles décisionnels hybrides et la transition entre ces modèles. COCOA est en concurrence avec de nombreuses équipes de mathématiques pour des fragments spécifiques de la théorie (linéaire, polynômes, optimisation). Cependant, elle adopte une stratégie originale basée sur l’hybridation de techniques de résolution [91]. Les problèmes soulevés impliquent l’étude des algorithmes (stratégies, validation du calcul), des langages de programmation pour l’hybridation et des systèmes (protocoles de communication, interopérabilité). De plus, elle s’attaque au problème plus général de la résolution des formules quelconques. Cet aspect enrichit les problématiques de l’équipe et demande de définir des cadres formels et des algorithmes de résolution. La recherche dans COCOA peut être déclinée en quatre axes. Récemment, les deux premiers axes (résolution et hybridation) ont fait l’objet du contrat de recherche européen IST COCONUT. Le dernier axe (applications) a été appuyé par deux contrats nationaux importants, à savoir un projet RNTL dans le domaine de la conception préliminaire en ingénierie, et un projet PRIAMM dans le domaine de la synthèse d’image. Résolution et optimisation globale pour les systèmes de contraintes – Objectif : réaliser un solveur sur les intervalles rapide et précis pour les problèmes de satisfaction de contraintes et d’optimisation sous contraintes – Thèmes de recherche : algorithmes de recherche arborescente, techniques de consistance, stratégies de propagation de contraintes, arithmétique des intervalles, analyse par intervalles, techniques de décomposition de systèmes et exploitation des propriétés (contraintes et solveurs) 222 Rapport d’activité LINA 2003–2006 Algorithmes hybrides pour les formules générales – Objectif : combiner des solveurs pour améliorer les performances globales et augmenter le pouvoir d’expression pour traiter des modèles plus complexes – Thèmes de recherche : modèles de coopération, méthodes symboliques/numériques, hybridation entre les méthodes locales/globales, langages de stratégies d’hybridation, contraintes quantifiées et contraintes flexibles Systèmes et environnements – Objectif : fournir les outils logiciels et les interfaces pour mettre en œuvre les solveurs – Thèmes de recherche : langages pour définir des solveurs hybrides ou visualiser les solutions, environnements de débogage, implantation parallèle de langages pour la CP, programmation générique et objet, et programmation par composants Applications – Objectif : faire entrer la technologie dans les processus industriels et des domaines peu visités comme la synthèse d’images 3D animées, la robotique et la conception – Thèmes de recherche : langages de modélisation, contraintes globales, techniques de traitement de l’incertitude, estimation de paramètres et exploitation de la sémantique des applications 7.2.3 Perspectives Modélisation – Langage générique prenant en compte la structure des problèmes, la diversité des domaines de contraintes, les différentes catégories d’utilisateurs – Préférences et hiérarchies de contraintes – Prise en compte de la sémantique des applications dans un cadre général Résolution – CP mixte : intégration des techniques de CP pour attaquer les problèmes mixtes discrets/continus, hybridation des outils de CP et de RO, applications aux problèmes d’optimisation et aux systèmes hybrides – Résolution des formules générales : hybridation CP et SAT pour les formules conjonctives/disjonctives, heuristiques de recherche – Contraintes globales : contraintes matricielles, contraintes spécifiques liées aux applications Applications – Résolution collaborative : CP et algorithmes symboliques en robotique (calcul d’espaces de travail de robots parallèles, analyse de singularités), CP et géométrie algorithmique en synthèse d’images – Besoins spécifiques de résolution pour gérer les problèmes sur-contraints, le maintien d’une bonne solution pendant la résolution, l’incertitude 7.3 Fondements scientifiques De nombreuses disciplines des mathématiques ont rapport avec les contraintes continues, comme l’analyse numérique, le calcul formel et la recherche opérationnelle. Cependant, ces disciplines sont CoCoA : Contraintes Continues et Applications 223 souvent spécifiques à un domaine de calcul ou une forme des contraintes comme les nombres flottants, les nombres algébriques ou les contraintes linéaires. Dans le contexte de la CP, une contrainte continue est définie comme une relation entre des inconnues. Cette définition simple permet l’utilisation de techniques génériques de satisfaction de contraintes issues de l’intelligence artificielle (voir 7.3.1). Une telle relation est définie sur les nombres réels. Cela implique le calcul en machine d’approximations des solutions (voir 7.3.2). Cette relation est définie comme l’interprétation d’une formule dans un langage donné, en général un sous-ensemble de la logique du premier ordre (voir 7.3.3). Enfin, dans les bons cas, il est possible d’appliquer aussi des techniques de résolution spécifiques et la résolution devient coopérative ou hybride (voir 7.3.4). La CP a été reconnue discipline stratégique par l’ACM en 1996. 7.3.1 Satisfaction de contraintes La résolution de problèmes sur les domaines finis est un domaine de recherche né de problématiques de placement et d’interprétation d’objets géométriques. Le raisonnement systématique à partir de contraintes vient des travaux de WALTZ [92] sur la reconnaissance d’objets en 3D basée sur l’interprétation de lignes dans des dessins en 2D. Dans ce contexte, une contrainte est comprise comme une restriction sur un espace de recherche. Le problème essentiel est de réduire un espace de recherche aux valeurs cohérentes pour un ensemble de contraintes : c’est le problème de satisfaction de contraintes (CSP). L’approche classique de résolution consiste à développer un arbre de recherche en instanciant les variables par des valeurs prises dans leurs domaines. Comme le problème CSP est NP-complet, une bonne complexité pratique nécessite des heuristiques de parcours d’arbre efficaces et des méthodes de coupe de l’espace de recherche comme les techniques de consistance locale [92, 82, 81]. Un CSP a une structure de graphe où les variables sont reliées par les contraintes. L’exploitation des propriétés de graphe (cycle, arbre, etc.) constitue une part importante des travaux sur les techniques de recherche et de consistance locale. Les algorithmes de graphe sont appliqués également aux contraintes globales. Une contrainte globale est une contrainte reliant un ensemble de variables pour laquelle il existe un algorithme efficace dédié, par exemple une contrainte de flot utilisée en ordonnancement. La recherche de nouvelles contraintes globales et des algorithmes associés est un sujet de recherche actuel. 7.3.2 Analyse par intervalles Le problème général de la satisfaction de contraintes continues est indécidable [88]. Il est attaqué soit par des méthodes symboliques ou exactes pour des fragments spécifiques de la théorie, soit par des méthodes numériques ou approchées. Le principe des méthodes numériques est de calculer une suite convergente par approximation successive du problème. Les problèmes majeurs sont de contrôler la convergence et le degré d’approximation des solutions (précision des calculs). L’analyse par intervalles de M OORE [83] offre une alternative pour traiter ces problèmes. L’idée fondamentale est de baser la résolution sur le domaine d’approximation des intervalles où chaque nombre réel est remplacé par un intervalle englobant. Ce domaine a la propriété de couvrir l’ensemble des réels par un ensemble fini de nombres — un intervalle a le statut de nombre. Dans ce contexte, les techniques sont globales, convergentes et complètes (couverture de l’ensemble des solutions). Une autre caractéristique remarquable est la possibilité d’implanter des procédures de test de conditions suffisantes pour l’existence des solutions, en profitant de résultats de l’analyse réelle comme le théorème du pointfixe de B ROUWER. 224 Rapport d’activité LINA 2003–2006 L’analyse par intervalles est une extension de l’analyse numérique aux intervalles. Par exemple, un théorème d’analyse qui comprend une condition d’existence d’un nombre dans un intervalle est en général étendu en remplaçant le réel par l’intervalle. Cependant, un tel raisonnement est en général pessimiste, et les calculs basés sur le théorème sont imprécis. Les autres problèmes récurrents sont le traitement de l’incertitude et le passage à l’échelle quand la taille de l’espace de recherche augmente (problème inhérent aux approches globales). Pour appréhender ces trois problèmes, les chercheurs explorent plusieurs voies : résolution hybride (voir 7.3.4), contrôle dynamique de la précision (modèles de Taylor), raisonnements flous, etc. 7.3.3 De la programmation logique aux contraintes La CP concrétise l’idée d’utiliser la logique comme paradigme de calcul. Dans cet esprit, des avancées importantes ont été réalisées dans les années 1960 pour automatiser les preuves de théorèmes. En particulier, ROBINSON [89] a proposé un système d’inférences en logique du premier ordre appelé principe de résolution. Ce principe est de réfuter un ensemble de clauses au moyen d’une procédure d’unification syntaxique. C OLMERAUER et son équipe ont exploité ces travaux pour implanter le langage P ROLOG en 1972. Dans ce contexte, les contraintes sont des équations sur les termes résolus par unification. Cette idée simple marque le développement de la programmation logique avec contraintes (CLP) dans les années 1980. Le modèle CLP(X ) de JAFFAR et L ASSEZ [79] est paramétré par le domaine de calcul X . Par la suite, ce domaine sera instancié par les contraintes sur les entiers dans le système CHIP [77], les contraintes symboliques sur les réels dans CLP(ℜ) [80], etc. En particulier, les techniques de satisfaction de contraintes (section 7.3.1) ont été mises en œuvre dans CHIP. L’abandon du paradigme logique unique a fait passer la CLP à la CP. Un système de CP comprend un langage de modélisation et un moteur de résolution, en général interne. L’apparition des intervalles dans le contexte de la résolution de contraintes est due à deux courants d’idées contemporains du milieu des années 1980. D’une part, le problème était adapter les techniques de consistance locale pour traiter les problèmes non-linéaires. La problématique de ces travaux était de conserver la convergence des algorithmes de propagation construits pour les domaines finis. D’autre part, le but était de donner une sémantique logique à l’arithmétique dans Prolog. Ces travaux ont conduit à une vision relationnelle des calculs. La convergence des idées a donné lieu à l’implantation des contraintes d’intervalles dans le langage CLP(BNR) [85]. Les techniques d’analyse par intervalles ont été par la suite mises en œuvre dans le langage Newton. 7.3.4 Coopération de solveurs La résolution coopérative de problèmes est un fer de lance de la CP. Le premier objectif est d’améliorer les performances d’un solveur. L’exemple classique consiste à appliquer conjointement les techniques de satisfaction de contraintes et l’analyse par intervalles, pour gagner en vitesse et précision des calculs. Une approche symbolique/numérique classique utilise un solveur symbolique pour transformer les contraintes et ainsi améliorer la résolution numérique. Une approche locale/globale répandue consiste à intégrer une méta-heuristique dans un solveur sur les intervalles pour accélérer la recherche d’une solution. Un autre objectif est d’étendre le pouvoir d’expression des langages associés pour traiter des contraintes plus complexes (par exemple les contraintes avec quantificateurs) ou des contraintes hétérogènes. Les problématiques de recherche concernent les modèles théoriques, les langages pour décrire les solveurs hybrides, les stratégies spécifiques et les aspects liés aux systèmes de CP. CoCoA : Contraintes Continues et Applications 225 Le modèle théorique qui est probablement le plus abouti concerne la propagation de contraintes [84, 2, 72]. Le calcul est défini comme une application d’opérateurs monotones sur un domaine de calcul ayant une structure de treillis [90, 75]. Cette théorie est suffisamment générale pour modéliser des contraintes hétérogènes et des algorithmes de coopération sur les nombres entiers et les intervalles. 7.4 Domaines d’applications Les contraintes continues apparaissent dans la modélisation de nombreux systèmes physiques, chimiques, robotiques, économiques, etc. Les applications impliquent d’adapter les outils classiques et traiter efficacement les problèmes sous-contraints (infinité de solutions) ou sur-contraints (aucune solution), analyser les solutions et plus généralement concevoir de nouveaux outils d’aide à la décision, modéliser la sémantique des applications et inscrire la technologie dans les processus industriels. Notre stratégie est d’investir des domaines peu visités comme la conception et la synthèse d’images dans le cadre de collaborations. La conception de produits industriels est souvent décrite comme un processus itératif avec des phases d’analyse de besoins, de génération de squelettes de produits (conceptual design), de calcul des dimensions et des grandeurs principales (embodiment design) et de simulation pour régler les détails (detailed design). Les modèles numériques sont définis en général comme des problèmes mixtes entiers/réels avec des contraintes continues. En plus des problèmes génériques cités ci-dessus, un problème important est de gérer les modèles de produits structurés qui incluent des compositions de composants et des choix de composants. Dans ce contexte, l’étude de techniques hybrides pour les problèmes mixtes est fondamentale. COCOA collabore avec l’ENSAM de Bordeaux et Dassault Aviation sur ce sujet. Le contrôle de caméras fait partie des problèmes abordés dans COCOA en collaboration avec la société MGDesign et l’équipe de robotique de l’IRCCYN. L’objectif est par exemple de générer une scène à partir de propriétés sur les objets dans la scène ou de contrôler un robot marcheur par rapport aux objets présents dans son environnement. Les problématiques abordées sont liées à la modélisation de la caméra et des objets, l’exploitation de la sémantique des contraintes géométriques, la résolution hybride, l’interaction avec les utilisateurs, etc. D’autres applications sont potentiellement intéressantes, comme la création de jeux vidéo et la création cinématographique. L’estimation de paramètres est attaquée sur des problèmes de robotique (avec l’IRCCYN) et de configuration de molécules en 3D (avec l’INRIA et le LAAS). Une molécule est vue comme un bras articulé de robot où les acides aminés sont des axes reliés par des tiges. Le problème principal est de calculer des solutions valides (par exemple pour identifier un modèle) en présence d’incertitude sur les données. Par exemple, les longueurs des tiges et les angles entre les tiges et les axes sont connus à une certaine précision. Les problèmes spécifiques importants concernent la modélisation et plus précisément la définition de contraintes globales (produit de matrices sur les intervalles, gestion des angles des tiges) et la mise en œuvre de modèles redondants comme celui de Cayley-Menger. Dans le cas des molécules avec des milliers d’atomes, le problème du passage à l’échelle est déterminant et les approches hybrides locales/globales représentent un thème d’étude incontournable. Nous étudions aussi la possibilité de vérifier symboliquement des propriétés numériques des systèmes embarqués en les exprimant sous forme de programmes CLP [59]. 226 Rapport d’activité LINA 2003–2006 7.5 Résultats nouveaux 7.5.1 CP et analyse par intervalles Formalisation d’un algorithme de propagation Participants : Frédéric Goualard, Laurent Granvilliers. Benhamou et al. [4] ont présenté en 1999 l’algorithme HC4 de résolution de contraintes réelles censé remplacer l’algorithme classique HC3 pour le calcul de la cohérence de bornes [73, 6] en évitant une décomposition coûteuse des contraintes complexes en contraintes primitives. La description de HC4 n’incluait pas son analyse théorique, mais les auteurs émettaient l’hypothèse que l’algorithme calculait la cohérence de bornes lorsque les contraintes traitées n’avaient que des occurrences simples de variables. En analysant théoriquement et expérimentalement HC4, nous avons, dans un premier temps, réfuté l’hypothèse ci-dessus, puis montré que l’algorithme calcule une nouvelle propriété de cohérence proche de la cohérence directionnelle de Dechter et Pearl [76]. Nous avons aussi mis en évidence le fait que l’accélération de la résolution de contraintes observée avec HC4 par rapport à HC3 n’est pas dûe à l’absence de décomposition des contraintes mais à la localisation de la propagation des variations de domaines qu’elle induit. Ces travaux ont été présentés à la communauté internationale [35]. Expression des algorithmes de résolution de contraintes d’intervalles en termes d’algorithmes numériques Participant : Frédéric Goualard. Le domaine de la programmation par contraintes d’intervalles est historiquement l’héritier des recherches effectuées en intelligence artificielle sur la résolution de contraintes discrètes et n’a jusqu’à présent que peu interagi avec le domaine de l’algorithmique numérique étendu aux intervalles. Nous avons montré que certains algorithmes largement utilisés en programmation par contraintes d’intervalles pour la résolution de contraintes réelles sont assimilables à des instances d’extensions aux intervalles de la méthode de Gauss-Seidel non-linéaire [86]. Nous avons décrit un patron général d’algorithme permettant la présentation de ces algorithmes dans un cadre unifié et nous avons montré qu’il est possible de tirer partie de cette observation pour accélérer la résolution de systèmes de contraintes réelles en ne sélectionnant qu’un sous-ensemble des opérateurs de contraction générés à partir de ces contraintes. Ces travaux ont été présentés à la communauté internationale [34]. 7.5.2 CP, recherche locale et optimisation Approximations intérieures pour la résolution de problèmes MaxCSP numériques Participants : Marc Christie, Jean-Marie Normand, Charlotte Truchet. L’objectif de ce travail a été de proposer une approche efficace pour déterminer une approximation intérieure d’un problème MaxCSP numérique. De nombreux problèmes industriels se modélisent par des systèmes d’inéquations non-linéraires sur le continu (conception préliminaire, robotique, ...). Or dans les phases de mise au point du modèle il est utile de déterminer la nature du problème (sur- ou souscontraint) et les éventuelles inconsistances entre sous-ensembles de contraintes et aucun outil ne propose une approche en ce sens. Les participants de cette action se basent sur une technique de type branch and bound afin de déterminer une approximation intérieure (avec garantie de correction) des domaines satisfaisant un maximum de contraintes du CSP. Dans ce cadre même, une extension des techniques de CoCoA : Contraintes Continues et Applications 227 recherche locale en continu basée sur l’arithmétique des intervalles est proposée et hybridée avec des techniques de propagation. Le but de ce travail, en cours, est aussi de formaliser l’adaptation de ces méthodes aux domaines continus, de manière générique. Ces travaux ont été présentés à la communauté française [50]. Hybridation propagation et méta-heuristiques Participants : Tony Lambert, Eric Monfroy, Frédéric Saubion [Professeur, LERIA, Angers]. L’hybridation des mécanismes de méta-heuristiques et des techniques de programmation par contraintes est souvent basée sur des combinaisons de type maı̂tre-esclave, dédiées à la résolution de classes de problèmes spécifiques. Nous nous intéressons à la définition d’un modèle théorique uniforme, basé sur les itérations chaotiques de K.R. Apt, permettant de prendre en compte une hybridation entre métaheuristiques et propagation de contraintes. Dans ce contexte, la résolution s’apparente à un calcul de point fixe d’un ensemble de fonctions de réductions spécifiques. Notre cadre générique permet alors d’envisager des stratégies de combinaison et d’hybridation de manière plus fine et d’étudier leurs propriétés. Des résultats expérimentaux mettent en avant les atouts de telles combinaisons en regard d’une utilisation indépendante des techniques de résolution complètes et incomplètes. Le modèle initial hybridant recherche locale et propagation a été publié dans [43]. Des résultats expérimentaux [40, 58, 48] ont été réalisés grace au système développé à partir du cadre. Ce modèle a ensuite été étendu afin de prendre en compte également les algorithmes génétiques [15, 38]. Des applications au Balanced Academic Curriculum Problem [39, 56, 57] ont été réalisée dans ce cadre. La recherche locale a également été spécifiée finement dans ce modèle [41]. Optimisation et algorithmes de graphes pour les hiérarchies de contraintes Participants : Frédéric Benhamou, Martine Ceberio, Christophe Jermann, Hiroshi Hosobe [Associate Professor, National Institute of Informatics, Tokyo]. Dans le cadre de la collaboration entre le NII (Tokyo, Japon) et le LINA, et plus précisément au cours du projet PAI Sakura, nous avons étudié la possibilité de résoudre les problèmes de hiérarchies de contraintes (problèmes sur-contraints ou les contraintes sont classées par priorité) par des méthodes d’optimisation globale. La correspondance entre la définition de solution réelle et solution intervalles d’une hiérarchie de contraintes a été étudiée sur le plan théorique et permet la définition d’algorithmes d’optimisation spécialisés. Selon certains critères, les solutions d’une hiérarchie de contraintes sont les solutions du sous-ensemble de poids maximum de contraintes consistantes entre elles, les poids provenant des priorités sur les contraintes. Le calcul d’un tel sous-ensemble peut être réalisé par des algorithmes de graphes si l’on ne considère que la consistance structurelle des contraintes. Nous avons proposé un algorithme de flot qui calcule un tel sous-ensemble pour la classe la plus générale des hiérarchies de contraintes ; cet algorithme subsume les algorithmes existants qui n’étaient adaptés qu’a certaines classes précises de problèmes. Les grandes lignes de ces travaux sont décrits dans une revue internationale [16]. Résolution hybride de contraintes disjonctives Participants : Frédéric Benhamou, Thomas Douillard, Christophe Jermann. Les problèmes de conception se définissent par la composition, la spécialisation et l’ajout optionnel de composants dont les caractéristiques et interactions sont décrites par des contraintes numériques. 228 Rapport d’activité LINA 2003–2006 Thomas Douillard a montré que le formalisme DCSP (dynamic CSP), aussi appelé CondCSP (Conditional CSP), qui est souvent utilisé pour ces problèmes de conception, peut être remplacé par une formule générale de la logique du premier ordre dont les atomes sont des contraintes numériques. Stefan Ratschan a proposé un cadre théorique général pour le traitement des formules du premier ordre sur contraintes numériques [87]. Ce cadre se concentre sur l’extension de la notion de consistance des CSP classiques à ces CSP du premier ordre, et sur l’impact des quantificateurs dans ces CSP du premier ordre. Nous avons proposé des heuristiques de recherche qui visent à exploiter efficacement les disjonctions durant la résolution de ces problèmes. Ces heuristiques sont en cours de validation. Nous nous intéressons également à la collaboration entre méthodes de résolution SAT et CSP, les premières (très efficaces) permettant de choisir les contraintes numériques à satisfaire. 7.5.3 CP et collaboration de solveurs Incorporation d’algorithmes d’apprentissages dans les algorithmes de propagation Participants : Frédéric Goualard, Christophe Jermann. À la suite des travaux présentés dans la section 7.5.1, nous avons étudié l’impact de la sélection d’un sous-ensemble des opérateurs de contraction correspondant à une transversale dans la matrice d’incidence d’un système de contraintes réelles non-linéaires (de façon analogue à la situation rencontrée dans le cas linéaire avec des méthodes du premier ordre). Dans un premier temps, nous avons montré que, dans le cas général et contrairement au cas linéaire, une telle sélection ne peut pas se faire efficacement de façon purement statique. Nous avons alors proposé l’introduction d’algorithmes d’apprentissages par renforcement pour isoler dynamiquement les meilleurs opérateurs de contraction au cours de la résolution, après avoir explicité le rapport entre cette sélection et le problème du bandit manchot. Sans augmenter notablement les performances, l’algorithme obtenu est beaucoup plus robuste que ceux utilisés auparavant et ne présente pas de dégradation importante des performances lors des tests effectués. Ces travaux ont donné lieu à publications nationale et internationale [36, 53]. Langages de coopération Participants : Laurent Granvilliers, Eric Monfroy, Brice Pajot. Les mécanismes utilisés pour développer un solveur ou faire coopérer des solveurs sont souvent proches. Une idée est donc de développer un cadre, un langage et un ensemble de primitives permettant à la fois de décrire des solveurs à partir de fonctions de bases, et des coopérations de solveurs à partir de solveurs existants (vus comme des boı̂tes noires), ou de solveurs préalablement réalisés avec ce langage. [29] décrit l’interaction entre composants (et plus spécialement solveurs) à l’aide de règles concurrentes s’appliquant sur des mémoires partagées abstraites. Dans [26, 42], la relation entre coordination et coopération de solveurs est clairement exprimée et des squelettes de solveurs/coopérations ont été spécifiés : le premier article traite de l’interaction de composant, le second se base sur l’interaction décrite en terme de règles concurrentes. Dans [27] des coopérations hybrides ont été réalisés et testés à l’aide de ces squelettes. Parallélement, il s’agit également d’être capable de gérer à la fois la recherche et les stratégies de coopération de manière isolée. Des premiers travaux à ce sujet ont été publiés dans [44]. Il est également important de pouvoir décrire les coopérations décrites à partir de fonctions de bases. Dans [37] nous proposons un cadre formel, basé sur les itérations chaotiques, permettant de décrire des compositions de fonctions de réductions. CoCoA : Contraintes Continues et Applications 229 Stratégies adaptatives Participants : Eric Monfroy, Carlos Castro [Professeur, UTFSM, Valparaiso, Chili]. En programmation par contraintes, les stratégies sont primordiales à l’efficacité, qu’ils s’agisse des stratégies de propagation (quels opérateurs utiliser, comment les séquencer, . . .), de split (comment couper l’espace de recherche quand la propagation n’agit plus), ou de coopération entre solveur (comment coordonner ces solveurs). Cependant, il est très difficile (voir impossible en général) de prédire précisemment l’effet des stratégies sur une résolution complète. Nous travaillons donc sur des stratégies adaptatives et dynamiques : le but est de modifier les stratégies au cours du processus de résolution afin que celles-ci s’adaptent aux modifications apportées par la résolution elle-même. L’idée est donc d’observer les états de résolution, d’en tirer des analyses, et de prendre des décisions pour les stratégies, pendant la résoltuion. Dans un premier temps, nous nous sommes concentrés sur les stratégies d’énumération : au lieu d’essayer de prédire qu’elle sera la bonne stratégie, nous essayons de corriger et d’adapter les stratégies jugées mauvaises de façon dynamique. Les premiers travaux et résultats ont été publiés dans [28, 49]. Nous espérons utiliser le même cadre à d’autres fins : le propagation, et la coopération hybride. Résolution collaborative de problèmes décomposés Participants : Christophe Jermann, Éric Monfroy, Peter Zoetweij [Doctorant, CWI, Pays-Bas]. Les techniques de décomposition de problèmes étudiées ici consistent à éclater un système de contraintes en plusieurs parties (avec éventuellement des parties sur- ou sous-contraintes), à appliquer un solveur sur chaque partie et à les faire coopérer pour résoudre le problème initial. C. Jermann a participé avant son arrivée au LINA à la définition et la mise en place d’un cadre général appelé retour-arrière inter-blocs [61]. Ce schéma permet d’utiliser et de comparer différentes méthodes de décomposition, d’appliquer des méthodes de résolution différentes aux parties du système et d’étudier les modèles de coopération. En particulier, un travail a été initié sur l’utilisation conjointe de méthodes de décomposition et de protocoles de coopération. En effet, une méthode de décomposition produit un ensemble de soussystèmes pouvant être résolus séparément, mais dans un certain ordre. Chaque sous-système peut donc être envoyé à un solveur différent, et un protocole de communication, basé sur l’échange de solutions, permet d’obtenir les solutions du système initial. Nous étudions actuellement les détails du protocole d’échange et les différentes possibilités offertes par ce schéma, comme la parallélisation de plusieurs solveurs. 7.5.4 Applications Application musicale Participant : Charlotte Truchet. La composition assistée par ordinateur (CAO) est un domaine de l’informatique musicale qui traite des données musicales symboliques, par exemple au niveau de la partition. C’est aussi un domaine riche en problèmes de contraintes ou d’optimisation combinatoires, sans doute pour des raisons structurelles profondes : les musiciens, en particulier les compositeurs contemporains, pensent naturellement par règles, soit déclarativement d’un point de vue informatique. Dans la suite de travaux antérieurs [10], Charlotte Truchet a poursuivi au LINA l’étude de problèmes de contraintes musicaux et leur résolution avec des techniques de recherche locale. La visée générique des outils développés pose un problème aux techniques de résolution par recherche locale, dans lesquelles les fonctions traduisant les contraintes 230 Rapport d’activité LINA 2003–2006 sont souvent définies de manière ad hoc en fonction du problème considéré. Charlotte Truchet a étudié ce problème sur un cas précis de CSP musical, où il faut construire une séquence mélodique dont les intervalles musicaux sont contraints. Ceci a été présenté à la conférence IFORS 2005 [66]. Un autre problème musical d’optimisation combinatoire, la quantification rythmique, dont le but est de traduire un rythme effectivement joué par un musicien en rythme symbolique, a donné lieu à un stage étudiant. Contrôle de caméra Participants : Marc Christie, Jean-Marie Normand. L’utilisation des techniques de CP dans différents domaines d’applications présente un défaut lié à la perte de la sémantique du problème. Les problèmes sont modélisés comme un ensemble de contraintes numériques dont nos outils de résolution fournissent une ou plusieurs solutions. La difficulté réside alors dans l’interprétation des résultats (qui peuvent être nombreux) par rapport au problème initial. Dans le cas d’une application à la composition virtuelle (action de définir un placement de caméra dans une scène 3D virtuelle en satisfaisant des règles de composition graphique), nous avons proposé une approche permettant de maintenir la sémantique du problème dans la modélisation, la résolution et l’interprétation des résultats. Le maintien de la sémantique est réalisé par un partitionnement de l’espace des configurations possibles dans lequel on cherche à regrouper toutes les régions fournissant une composition visuelle de qualité égale (c’est à dire sémantiquement identique en terme de composition graphique). L’utilisateur obtient une classification et une caractérisation des différentes solutions possibles. Ensuite, un processus de résolution numérique basé sur l’extension au continu du cadre de la recherche locale permet de déterminer un bon représentant pour chaque classe de solution. Cette contribution offre une approche de haut niveau qui permet d’explorer les possibilités cinématographiques d’une scène 3D donnée et pose les bases d’un processus interactif à un niveau sémantique. Les résultats ont été publiés et présentés à la conférence Eurographics 2005 [12] ainsi qu’aux journées de l’AFIG 2005 [64]. Cinématographie virtuelle Participants : Marc Christie, Hiroshi Hosobe [Associate Professor, National Institute of Informatics, Tokyo]. La cinématographie virtuelle consiste à positionner dans une scène les différents éléments constitutifs d’un film d’animation 3D que sont les objets à filmer, la caméra, et les lumières. Cette tâche se réalise généralement par une manipulation directe des paramètres de chaque entité. Notre recherche dans ce domaine consiste à adopter une manipulation indirecte des paramètres des éléments au travers de leurs résultats visibles à l’écran (approche dite Through-the-Lens [78]). Les variations des relations (fortement non-linéaires) établies entre les entités dans la scène et leur position à l’écran sont exprimées par les Jacobiennes image. Le système ainsi linéarisé est résolu par un optimiseur sous contraintes qui cherche à minimiser la variation des paramètres. Une attention particulière est portée aux systèmes sur-contraints en adoptant une approche de type masse-ressort pour assouplir l’interaction. Les résultats ont été présentés à la communauté internationale [30]. Conception de systèmes Participants : Raphaël Chenouard, Laurent Granvilliers. CoCoA : Contraintes Continues et Applications 231 Dans le cadre d’une collaboration avec Dassault Aviation et l’ENSAM de Bordeaux (thèse coencadrée de R. Chenouard), nous avons dégagé des problèmes liés à la conception de systèmes (mécaniques, énergétiques, aéronautiques) en phase préliminaire. Nous avons traité en premier lieu la modélisation de phénomènes physiques caractérisés par des changements de phase tels que l’apparition de phénomènes de cavitation dans l’écoulement d’un fluide. Un cadre basé sur les problèmes de satisfaction de contraintes conditionnels a été défini. Des nouvelles heuristiques de recherche ont été réalisées pour séparer les phases au plus tôt pendant la résolution. Nous avons également montré que les variables des problèmes de conception ont des sémantiques différentes : les variables de conception spécifiant le produit à réaliser, les variables auxiliaires introduites par la modélisation et les variables qui s’expriment comme des fonctions des autres variables. Des traitement différenciés au cours de la propagation et de la recherche permettent de gagner des ordres de grandeur sur le temps de calcul et le nombre de solutions retournées à l’utilisateur. Robots parallèles Participants : Frédéric Goualard, Laurent Granvilliers, Damien Chablat [CR, IRCCyN], Philippe Wenger [DR, IRCCyN]. Une collaboration a été initiée en 2005 avec l’équipe MCM de l’IRCCyN pour développer les techniques de résolution de contraintes dans le cadre de la conception de robots parallèles. Le premier problème traité a été le calcul de l’espace de travail d’une famille spécifique de robots. La difficulté principale réside dans la détermination des zones de l’espace contenant des singularités (zones où les performances se dégradent ou le contrôle n’est plus possible). Comme les singularités s’expriment par des équations syntaxiquement très complexes dans le cas général (annulation du déterminant d’une jacobienne) nous avons proposé de traiter des modèles redondants pendant la résolution. Ces modèles sont basés sur des propriétés particulière de la famille étudiée. Une implantation dans Realpaver a permis d’exhiber de bons résultats. 7.5.5 Autres résultats Comparaison des méthodes de décomposition géométriques Participant : Christophe Jermann, Pascal Mathis [Maı̂tre de Conférences, Université de Strasbourg], Dominique Michelucci [Professeur, Université de Bourgogne], Bertrand Neveu [Ingénieur Chef, Ecole Nationale des Ponts et Chaussées], Pascal Schreck [Professeur, Université de Strasbourg], Gilles Trombettoni [Maı̂tre de Conférences, Université de Nice-Sophia Antipolis]. A l’issue de l’Action Spécifique CNRS « Modélisation géométrique par contraintes », Christophe Jermann a proposé à quelques collègues de la communauté nationale de réaliser une étude comparative et unificatrice des méthodes de décomposition géométriques. Cette étude a permis de constater que ces méthodes se classent en quatre catégories selon leur mode opératoire, classification qui diffère de celle usuellement reconnue. Cette nouvelle classification a mis en évidence des proximités entre plusieurs méthodes, et la présence de quatre grands schémas algorithmiques qui confèrent aux méthodes correspondantes des propriétés bien spécifiques, et une adéquation précise à certaines classes de problèmes. Ces découvertes permettent d’envisager de nouvelles méthodes combinant les avantages de plusieurs méthodes existantes et permettant d’attaquer les applications les plus difficiles comme la Conception Assistée par Ordinateur (CAO). Ce travail a fait l’objet d’une publication dans la revue internanationale de géométrie algorithmique à l’occasion d’un numéro spécial sur les contraintes géométriques [18]. 232 Rapport d’activité LINA 2003–2006 Invariants de graphes pour les contraintes globales Participants : Charlotte Truchet, Nicolas Beldiceanu [CD, LINA]. Ce thème de recherche est porté par Nicolas Beldiceanu. Il s’agit de construire un catalogue à visée exhaustive de contraintes globales, et de traduire les possibles filtrages existants ou non sur ces contraintes en terme de propriétés sur des graphes ad hoc, de manière générique. Charlotte Truchet a contribué à la partie technique sur les graphes, en participant à certaines démonstrations des propriétés sur les invariants de graphes utilisées pour le filtrage des contraintes : relations entre nombre de composantes (fortement connexes), nombre de sommets, d’arêtes, etc. Ce sujet a donné lieu a une publication à la conférence CP05 [23]. First Constraint Modelling Challenge Participants : Charlotte Truchet. Jérémie Bourdon [Combi, LINA], Philippe Codognet [Ambassade de France, Tokyo]. Le First Constraint Modelling Challenge s’est tenu conjointement au Workshop « The Fifth Workshop on Modelling and Solving Problems with Constraints »de la conférence IJCAI 05 à Edinburgh. Le but du challenge était modéliser un problème d’optimisation appelé PSP-SOS : considérant un service de distribution de produits, qui doit satisfaire des commandes de ses clients, il s’agit de trouver un ordre de distribution qui minimise un certain critère (nombre maximum de paquets ouverts simultanément). Même si le temps et les techniques de résolution n’étaient pas le critère principal d’évaluation, il fallait aussi fournir une implémentation et évaluer ses performances. Charlotte Truchet a participé à ce challenge avec Jérémie Bourdon, en utilisant une méthode méta-heuristique appelée Adaptive Search proposée par Philippe Codognet. L’originalité du modèle était de modifier le critère d’optimisation, peu informatif (car donné comme un maximum de valeurs), avec une fonction de coûts différente mais plus informative, et d’éliminer de la recherche certains clients incompatibles par nature. L’article [67] a été retenu dans les proceedings du Challenge mais n’a pas gagné. Programmation synchrone par contraintes de systèmes embarqués et vérification de leurs propriétés numériques. Participant : Christophe Mauras. Ce thème est à la fois lié aux travaux sur la programmation synchrone et les systèmes embarqués complexes et contraints d’une part, et aux techniques de résolution en programmation par contraintes d’autre part. Nous avons proposé une adaptation de “Timed Default CC” pour la programmation synchrone par contraintes [59], et de l’utiliser pour la vérification des propriétés numériques des programmes. Deux interfaces ont été réalisées et mise à disposition pour comparer d’une part CLP(B) avec les diagrammes de décision binaire, d’autre part CLP(Q) avec un logiciel de calcul sur les polyèdres convexes. Les comparaisons ont été présentées dans [60]. L’objectif est d’intégrer ces travaux en proposant un interprète et un système de vérification pour la programmation synchrone par contraintes, utilisant et faisant coopérer les meilleurs solveurs obtenus. CoCoA : Contraintes Continues et Applications 233 7.6 Logiciels La stratégie de COCOA est de développer des logiciels sous forme de composants, de les intégrer et de les faire coopérer. Pour ce faire, l’équipe dispose d’une plateforme commune qui regroupe les travaux. COCOA a ainsi développé des logiciels génériques qui mettent en œuvre des algorithmes de satisfaction de contraintes et d’optimisation non-linéaire, des langages de modélisation de type CLP/objet/spécifique et des techniques de visualisation de solutions. Ces logiciels sont diffusés sous forme de logiciels libres. Dans le cadre de projets nationaux, elle a transféré un composant de propagation de contraintes chez Dassault Aviation (projet RNTL CO2) et un modeleur 3D chez Mediaforce (projet PRIAMM Distrans). Logiciels distribués 7.6.1 Gaol (NOT Just Another Interval Library) (Responsable: Frédéric Goualard) URL/DOI: http://sf.net/projects/gaol/ Mots-clés: Arithmétique d’intervalles Équipe de développement: Frédéric Goualard Gaol est une bibliothèque C++ pour l’arithmétique des intervalles. Elle se compare très favorablement avec les autres bibliothèques actuellement disponibles et intègre des algorithmes originaux pour la définition de versions relationnelles des opérateurs utilisables en programmation par contraintes. La bibliothèque est distribuée avec une licence LGPL. 7.6.2 Realpaver (Responsable: Laurent Granvilliers) URL/DOI: http://sf.net/projects/realpaver/ Mots-clés: Solveur Équipe de développement: Laurent Granvilliers Realpaver est un langage de modélisation pour la satisfaction de contraintes non-linéaires et mixtes, programmé en C. Il intègre un solveur hybride combinant plusieurs algorithmes de consistance locale et des méthodes d’analyse par intervalles. Il a été largement diffusé dans la communauté académique (en CP et en automatique). Le système est distribué avec une licence BSD. 7.6.3 ELISA : la plate-forme de COCOA (Responsable: Marc Christie) URL/DOI: http://sf.net/projects/elisa/ Mots-clés: Plateforme Équipe de développement: tous ELISA est un entrepôt pour les algorithmes de résolution développés en C++ dans l’équipe. En particulier, il intègre Gaol. Il est doté d’une architecture à base d’objets et de composants et spécifiée par un modèle UML. Il est distribué depuis juin 2004 avec une licence LGPL. Logiciels non distribués 7.6.4 DecLIC (Declarative Language with Interval Constraints) Goualard) URL/DOI: mailto:[email protected] (Responsable: Frédéric 234 Rapport d’activité LINA 2003–2006 Mots-clés: Solveur Équipe de développement: Frédéric Goualard DecLIC est une extension du système de CLP clp(fd) initialement conçu pour les problèmes discrets. Il permet la résolution de systèmes de contraintes continues par des techniques de consistance locale. 7.6.5 OpAC (Open Architecture for Constraints) (Responsable: Frédéric Goualard) URL/DOI: mailto:[email protected] Mots-clés: Solveur Équipe de développement: Frédéric Goualard OpAC a été historiquement la première bibliothèque C++ de résolution de contraintes de l’équipe. Elle est organisée en modules destinés à être composés. Elle a été étendue pour résoudre des systèmes de contraintes avec variables universellement quantifiées telles que ceux provenant de la modélisation de problèmes en robotique et en automatique. Une version de la bibliothèque est aussi utilisée au Centrum voor Wiskunde en Informatica, Pays-Bas, dans le cadre du projet FASE (Facial Analysis and Synthesis of Expressions) de modélisation d’expressions faciales. 7.6.6 TOM (The Open Modeller) (Responsable: Marc Christie) URL/DOI: mailto:[email protected] Mots-clés: Modeleur Équipe de développement: Marc Christie TOM est un modeleur 3D qui permet de créer des niveaux de jeu pour des plateformes massivement multijoueurs sur Internet. L’utilisation des contraintes facilite la création des zones de jeu et permet le contrôle de propriétés des scènes (nombre de facettes/textures à l’écran, disposition des ressources, etc.). Il a fait l’objet du transfert chez Mediaforce. 7.6.7 USV (Universal Solution Viewer) (Responsable: Marc Christie) URL/DOI: mailto:[email protected] Mots-clés: Visualisation Équipe de développement: Marc Christie USV est une application qui permet de visualiser des données multi-dimensionnelles définies sur les intervalles. Elle peut servir aussi bien à la prise de connaissance, à la visualisation scientifique et au débogage. Elle est appliquée pour visualiser des ensembles de solutions de systèmes de contraintes. Interfaces logicielles 7.6.8 Interface Buddy-Sicstus (Responsable: Christophe Mauras) URL/DOI: mailto:[email protected] Mots-clés: BDD, CLP(B) Équipe de développement: Christophe Mauras Cette interface permet d’utiliser dans un contexte de programmation par contraintes avec Sicstus Prolog, un paquetage de calculs sur les diagrammes de décision binaire (Buddy) développé pour la vérification formelle. Elle a permis de comparer l’efficacité du solveur interne de CLP(B) avec celle du paquetage Buddy. CoCoA : Contraintes Continues et Applications 7.6.9 Interface Polylib-Sicstus 235 (Responsable: Christophe Mauras) URL/DOI: mailto:[email protected] Mots-clés: Polyèdres, CLP(Q) Équipe de développement: Christophe Mauras Cette interface permet d’utiliser la bibiothèque PolyLib (http ://icps.u-strasbg.fr/PolyLib/) dans le système Sicstus Prolog. La bibliothèque PolyLib est la dernière version d’une bibliothèque développée initialement à l’IRISA par H. Leverge et D. Wilde pour effectuer des calculs sur des polyèdres convexes. Cette interface a permit de comparer les performances de PolyLib sur des calculs de fermeture convexe, avec celles obtenues avec CLP(Q). 7.7 Stratégie de valorisation et de coopération Nous avons participé à des projets d’envergure sur la scène internationale (STREP) et la scène nationale (RNTL). Nous privilégions également les interactions fines avec des chercheurs étrangers (PAI), et avons participé à plusieurs groupes de recherche nationaux (AS). Sur le plan régional, nous nous incrivons pleinement dans le développement de la fédération AtlanSTIC avec plusieurs projets de recherche communs avec des équipes de l’IRCCyN, dont deux nouveaux soumis pour 2006. 7.7.1 Actions internationales 5ième et 6ième PCRD Projet IST COCONUT (2000-2004) Responsable: Eric Monfroy Montant: 295 000 e Mots-clés: Optimisation globale, coopération de solveurs Participants: Frédéric Benhamou, Lucas Bordeaux, Martine Ceberio, Marc Christie, Frédéric Goualard, Laurent Granvilliers, Christophe Jermann, Eric Monfroy, Mina Ouabiba, Brice Pajot, Evgueni Petrov Partenaires: Université de Vienne, Université de Louvain-la-Neuve, Université de Darmstadt, Université de Coimbra, Ecole Polytechnique Fédérale de Lausanne, ILOG 236 Rapport d’activité LINA 2003–2006 Le projet COCONUT était un IST-Future and Emerging Technologies (numéro 2000-26063) sur le thème Continuous Constraints : Updating the Technology. Il a duré 39 mois entre décembre 2000 et mars 2004. Il a regroupé la société ILOG SA et 6 partenaires académiques (École Polytechnique Fédérale de Lausanne, Université de Coimbra, Université de Darmstadt, Université de Louvain, Université de Nantes et Université de Vienne). Le financement total du projet était de 1494 kEuros, dont 295 kEuros pour le LINA. Le but était de traiter des problèmes de résolution de contraintes continues de taille industrielle (soit au moins 100 variables) au moyen de techniques complètes, c’est-à-dire qui sont capables de calculer une couverture de l’espace de solutions. Cela représentait un ordre de grandeur par rapport aux capacités des résolveurs existants au début du projet. La stratégie était de faire coopérer des solveurs connus et de concevoir de nouveaux solveurs (satisfaction et optimisasation). Dans ce projet, le LINA a apporté une expertise au niveau de la coopération de solveurs. La mise en œuvre concrète s’est faite à travers le développement d’une architecture modulaire et extensible sous forme d’un cadre à base de composants prenant place autour d’un noyau de fonctionnalités pour l’optimisation globale (API). Un langage de coopération facilement utilisable (script) et extensible (Python) fournit des fonctionnalités qui facilitent l’élaboration des stratégies de coopération des différents solveurs. L’ensemble de la plateforme logicielle développée par le LINA au sein de ce projet est disponible sous licence GPL (les parties sous-jacentes sont aussi disponibles, les solveurs commerciaux comme ILOG CPLEX étant toutefois exclus). Programmes d’échanges Projet Franco-Bavarois (2001-2003) Responsable: Eric Monfroy Montant: 2 000 e Mots-clés: Raisonnement inductif, contraintes Participants: Éric Monfroy Partenaires: LISI-Lyon, Université de Munich Ce projet financé par le CCUFB-BFHZ portait sur le raisonnement inductif pour la résolution de problèmes sous contraintes. Les partenaires étaient le LISI de Lyon et l’Université de Munich. Le financement reçu était de 2 kEuros sur la période septembre 2001/avril 2003. Projet PAI-Procope (2003-2004) Responsable: Laurent Granvilliers Montant: 6 000 e Mots-clés: Optimisation globale, estimation de paramètres Participants: Laurent Granvilliers Partenaires: Université de Constance Ce projet était un projet bi-latéral PROCOPE sur les techniques d’optimisation globale pour l’estimation ensembliste de paramètres. L’équipe allemande (J. Garloff) est située à l’Université des Sciences Appliquées de Constance. Le financement reçu était de 6 kEuros sur la période janvier 2003/décembre 2004. Projet PAI-Alliance Responsable: Marc Christie (2005–2006) CoCoA : Contraintes Continues et Applications 237 Montant: 15 000 e Mots-clés: Contrôle de caméra, Cinématographie virtuelle Participants: Marc Christie ,Jean-Marie Normand Partenaires: Université de Newcastle Ce projet bilatéral Alliance porte sur l’étude des modèles, des techniques de résolution et d’interaction nécessaires au passage d’un storyboard virtuel à un film d’animation. La première étape de ce projet, la définition de l’état de l’art, a donné lieu à deux publications internationales [33, 32], dont une sera présentée dans le cadre des State of the Art Report à la conférence Eurographics 2006 en Septembre à Vienne. Projet Sakura (2004-2005) Responsable: Frédéric Benhamou Montant: 15 000 e Mots-clés: Contraintes flexibles, optimisation Participants: Frédéric Benhamou, Martine Ceberio, Christophe Jermann. Partenaires: National Institute of Informatics, Waseda University. Sakura était un projet bilatéral avec le NII de Tokyo sur la période janvier 2004/décembre 2005. Le thème principal du projet concernait l’étude des contraintes flexibles continues dans le cadre de la réalisation d’interfaces graphiques (GUI). Les enjeux étaient théoriques (modèle pour les contraintes flexibles continues) et pratiques (implantation à l’aide de techniques d’optimisation globale sous contraintes non-linéaires). Ce projet s’inscrivait dans un cadre plus général de collaboration entre le NII de Tokyo et des sites de recherche français comme l’INRIA, le LAAS, etc., dont le LINA fait partie. Ce projet à long terme a le nom de code Memorandum of Understanding. Projet COCARS (2002-2004) Responsable: Eric Mofroy Montant: 7 000 e Mots-clés: Réécriture, règles Participants: Eric Monfroy Partenaires: INRIA Lorraine, UTSFM Valaparaiso COCARS était un projet bilatéral INRIA-CONICYT sur la période janvier 2002/décembre 2004 ayant pour thème Réécritures et stratégies pour la résolution de contraintes. L’objectif du projet était d’appliquer des techniques de réécriture (et plus précisément de la gestion du controle par des règles) au problème de la description des stratégies de coopération de solveurs de contraintes. Projet de recherche conjoint NII Responsable: Kazunori Ueda Montant: 8 350 e Mots-clés: Programmation par contraintes, systèmes interactifs, langage de modélisation Participants: Frédéric Benhamou ,Christophe Jermann ,Marc Christie . Partenaires: National Institute for Informatics, Waseda University (2006) 238 Rapport d’activité LINA 2003–2006 Ce projet porte sur la programmation par contraintes pour la construction de systèmes interactifs. Il comporte l’étude d’un nouveau langage de modélisation et la mise en place d’algorithmes de résolution adéquats pour faciliter l’emploi des techniques de programmation par contraintes dans des applications interactives. Expertises internationales Eric Monfroy a été chargé de l’évaluation d’un livre pour publication à Cambridge University Press en mai 2005. 7.7.2 Actions nationales Action spécifique CNRS « Modélisation géométrique sous contraintes » (2003–2005) Responsable: Christophe Jermann Mots-clés: Participants: Marc Christie, Christophe Jermann. Partenaires: INRIA, LSIS, LSIIT, Le2I, IMAG, LAAS, . . . Cette action spécifique du CNRS, acceptée fin avril 2003 et portée par le Groupe de Travail en Modélisation Géométrique commun au GDR ALP et à l’AFIG, avait pour but de dresser un état des lieux et une liste des perspectives dans le domaine des contraintes appliquées à la modélisation géométrique dans un sens assez large. Les partenaires combinaient une expertise en méthodes de résolution de contraintes et en applications géométriques (CAO, robotique, mécanique, modélisation déclarative, . . .). Cette action s’est terminée en juillet 2005. Action CNRS-MathSTIC (2004–2005) Responsable: Christophe Jermann Mots-clés: Participants: Christophe Jermann. Partenaires: INRIA, LSIS, LSIIT, Le2I, IMAG Cette action faisait suite à l’AS décrite ci-dessus ; elle réunissait entre septembre 2004 et septembre 2005 les membres de l’AS les plus concernés par un travail sur la mise en place de formats d’échange entre les différents outils intervenant dans la chaı̂ne de résolution des problèmes géométriques : utilisateur → modeleur → analyseur → solveur → utilisateur. Projet RNTL CO2 (2001-2004) Responsable: Laurent Granvilliers Montant: 120 000 e Mots-clés: Conception par contraintes Participants: Frédéric Benhamou, Marc Christie, Frédéric Goualard, Laurent Granvilliers Partenaires: ENSAM-Bordeaux, ESTIA-Biarritz, Université de Paris 6, Dassault Aviation, CRIL Ingénierie CoCoA : Contraintes Continues et Applications 239 Ce projet portait sur la conception par contraintes. Il était labellisé et financé par le Réseau National des Technologies Logicielles (RNTL, convention 02.2.93.0301). Il s’est déroulé sur la période novembre 2001/juillet 2004. Il regroupait les sociétés Dassault Aviation et CRIL Ingéniérie et 4 partenaires académiques (École Nationale Supérieure des Arts et Métiers de Bordeaux, École Supérieure des Technologies Industrielles Avancées, Université de Nantes, Université de Paris 6). Le financement total du projet était de 1160 kEuros dont 120 kEuros pour le LINA. Le but du projet était de promouvoir de nouvelles applications de la technologie contraintes en conception assistée par ordinateur. L’enjeu était d’offrir dans un environnement logiciel la possibilité d’exprimer explicitement les besoins et les objectifs pour l’émergence de nouveaux concepts, et d’intégrer au plus tôt dans le processus de conception des contraintes physiques à partir de la définition du produit. Le LINA a essentiellement transféré un composant de propagation de contraintes chez Dassault Aviation. Ce composant s’appuie sur un modèle de propagation événementiel et il intègre des techniques avancées de consistance locale. Il est capable de traiter les problèmes mixtes et conditionnels. Contrat Alrena (2001-2004) Responsable: Eric Monfroy Montant: 12 000 e Mots-clés: Programmation par contraintes, modèles à base de composants Participants: Frédéric Benhamou, Eric Monfroy, Brice Pajot Partenaires: Société Alrena Ce contrat avec la société Alrena avait pour objectif de définir et valider une approche orientée composants de la programmation par contraintes. Le financement reçu était de 12 kEuros sur la période octobre 2001/décembre 2004. Bourses CIFRE Bourse de thèse de Michaël Heusch avec la société THALES TRT, 2003-2005 Expertises nationales Eric Monfroy a participé à l’évaluation du projet STUDIUM (Réseau National des Technologies Logicielles) en mai 2005. Marc Christie a participé à l’expertise de projets RIAM en 2003 et en 2005 (ANR). 7.7.3 Actions régionales Contrôle de caméra en robotique et en image : modèles et résolution Responsable: Marc Christie Mots-clés: Participants: Marc Christie, Jean-Marie Normand. Partenaires: IRCCyN (2005–2006) 240 Rapport d’activité LINA 2003–2006 L’objectif de ce projet (dans le cadre des projets Atlanstic) est d’établir les liens entre les modèles et les techniques liées à la problématique du contrôle de caméra en image de synthèse et en robotique et plus particulièrement en vision active. La vision active consiste à diriger une caméra réelle par la maximisation de l’information nécessaire à la reconstruction d’une scène 3D. Les participants ont donc étudié les modèles et techniques liés à la problématique de la vision active en robotique en vue 1) d’intégrer la PPC dans la résolution et 2) d’utiliser des informations sémantiques pour diriger la recherche. Résolution de contraintes et robots parallèles (2005–2006) Responsable: Laurent Granvilliers Mots-clés: Participants: Frédéric Goualard, Laurent Granvilliers. Partenaires: IRCCyN Ce projet a été déposé en 2005 pour amorcer une collaboration à long terme entre les équipes MCM de l’IRCCyN et COCOA du LINA. Le but à court terme est d’étudier le potentiel et les limites des outils numériques développés dans COCOA dans le cadre de problèmes de robotique étudiés dans MCM. L’objectif est de calculer l’espace de travail d’un robot parallèle. Les problèmes principaux sont la multiplicité des solutions du modèle géométrique direct, par exemple un triplet de longueurs de jambe donne jusqu’à six positions/orientations de la plateforme, et la présence de configurations singulières à l’intérieur de l’espace de travail. Ces configurations singulières sont caractérisées par une perte de rang du modèle des vitesses. En pratique, il n’est plus possible de contrôler les déplacements de la plateforme sur les configurations singulières. 7.8 Diffusion des résultats 7.8.1 Rayonnement Frédéric Benhamou est membre du jury d’experts de Science Foundation Ireland (équivalent de l’ANR en irlande). Il a participé à des expertises et des comités de sélection de projets en 2003, 2004, 2005 et 2006. Il a rapporté sur la thèse de Jorge Cruz (Université de Lisbonne, 2003) et Pau Herrero (Université de Barcelone, 2006). Il a expertisé un dossier de ”fellowship” pour jeunes chercheurs pour l’Académie des Sciences d’Autriche (2006). Il a été membre du jury des PEDR en 2004 et 2005. Il a été membre du jury régional du concours de création d’entreprises de technologies innovantes en 2003, 2004 et 2005. Il est expert pour l’étude de dossiers d’entreprises candidates pour les actions ”crédit impôt recherche” et ”Jeune Entreprise Innovante”. Il est Président de la commission ”sciences exactes” du CCRRDT des Pays de la Loire. Il a donné un exposé invité au workshop international IMCP’04 (Interval Mathematics and Constraint Propagation methods) à Novossibirsk (Russie). Il est co-organisateur d’un programme international recherche en mathématiques appliquées financé par l’ESI de Vienne (ErwinSchrödinger International Institute for Mathematical Physics, 2006). Il est membre du comité executif de l’association internationale de Programmation par Contraintes. Il a été également membre du jury d’attribution du ”Excellence in research award 2006” attribué par cette association. Il a été rapporteur d’une HDR en Autriche (Hermann Schichl, Département de mathématiques de l’Université de Vienne, 2004), et au plan national rapporteur de l’HdR de Frédéric Saubion (2003) et examinateur des HdR de Narendra Jussien (2003), Laurent Granvilliers (2004) et Guillaume Fertin (2005). Marc Christie présentera avec Patrick Olivier (Université de Newcastle) un état de l’art du contrôle de caméra à la conférence Eurographics 2006 (4 au 8 Septembre) dans le cadre des STAR (State of the Art Report). Il a également participé à l’expertise de projets RIAM en 2003 et en 2005 (ANR). CoCoA : Contraintes Continues et Applications 241 Eric Monfroy a été chargé de l’évaluation d’un livre pour publication à Cambridge University Press en mai 2005. Il a également participé à l’évaluation du projet STUDIUM (Réseau National des Technologies Logicielles) en mai 2005. Il est co-rédacteur de la section Constraints de la ALP NewsLetter depuis septembre 2000 et de la CP Newsletter (http ://slash.math.unipd.it/cp/) depuis sa création en avril 2004. Il a réalisé les tutoriels et exposés invités suivants : – Tutorial : Cooperative and Hybrid Constraint Solving, MICAI 2005, 2005, Monterey, Mexico. – Programación con Restricciones y su Aplicación a Problemas Combinatoriales, Coloquio del Instituto Chileno de Investigación Operativa, ICHIO, 2005, Facultad de Ingenierı́a, Universidad Diego Portales, Santiago. (avec la participation de Carlos Castro) – An Approach for Dynamic Split Strategies in Constraint Solving, Seminario de Investigación de Operaciones en la UTFSM, 2005, UTFSM, Valparaı́so. – Hybrid Constraint Solving, Conférence OPTIMA 2005, Valdivia, Chile. – Hybrid Constraint Solving, Conférence FROCOS 2005, Vienna, Austria. Il a été chercheur invité aux occasions suivantes : – Microsoft Research Cambridge, U.K. (26 juin–1er juil 2005). – séminaire d’une semaine (25h) sur la programmation par contrainte à l’université d’Izmir en Turquie (séminaire destiné à des professeurs et doctorants), septembre 2003. – Pontificia Universidad Javeriana, Cali, Colombie. Séjour invité de 6 semaines et séminaire de 28h sur la coopération et hybridation de solveur, janvier/février 2006. – NUS (National University of Singapore), 10 jours en Avril 2004 7.8.2 Comités de programmes et comités de lecture Frédéric Benhamou est président du comité de programme de CP 2006. Il est membre des comités de programme des conférences suivantes : – conférences internationales majeures : CP 2003, CP 2004, CP 2005, CP 2006 et CP-AI-OR 2007 – autres conférences internationales : FROCOS 2005, SETIT 2005, SETIT 2006, ADVIS 2004, ADVIS 2006, PSI 2003, PSI 2006 – ateliers internationaux : COCOS’03, WACP’03, WACP’04, WQCP’05, WCD’05, FJCP’04, FJCP’05 – conférences nationales : MajecSTIC 2003, JFPLC 2003 Marc Christie est membre du comité de programme de la conférence Smartgraphics en 2005 et 2006, et de celui du workshop international sur la programmation par contraintes pour les applications graphiques (2006). Frédéric Goualard a été membre du comité de programme des ateliers IntCP ’03 à Cork, Irlande et IntCP ’05 à Barcelone, Espagne. Eric Monfroy a été membre des comités de programmes suivants : – ICLP 2006 : Biennal International Conference on Advances in Information Systems, Seattle, USA, 2006. – ACM SAC 2005 et 2006 (Track on Constraint Solving and Programming) : ACM Symposium on Applied Computing. En 2005 à Santa Fe, New Mexico et en 2006 à Dijon, France. (Co-Chair and member of the Organising Committee of the track). – CP 2005 : International Conference on Principles and Practice of Constraint Programming, Sitges (Barcelona) Spain, 2005. – FLAIRS 2005 - Special Track on Constraint Solving and Programming, Clearwater Beach, Florida, Mai 2005. 242 Rapport d’activité LINA 2003–2006 – AISC 2004 et 2006 : International Conference on A.I. and Symbolic Computation. En 2004 à RISC, Linz Autriche, en 2006 à Beijing, Chine. – ADVIS 2004 et 2006 : International Conference on Advances of Information Systems, Izmir, Turkey, October 2004 et Octobre 2006. – JFPLC 2003, 2004 et 2006 : Journées Francophones de Programmation en Logique et de programmation par Contraintes. En 2003 à Amiens, 2004 à Angers, 2006 à Nı̂mes. – ACM SAC 2004 et 2003 (Track on A.I.) : ACM Symposium on Applied Computing. En 2004 à Nicosia, Chypre et en 2003 à Melbourne, Floride, USA. – PPAM 2003 : International Conference on PArallel Processing and Applied Mathematics, Pologne. – WAI 2005 : Workshop on Artificial Intelligence, part of the Chilean Computing Week. Valdivia, Chile, 2005. – QCP 2005 : Workshop on Quantification in Constraint Programming, Sitges (Barcelona) Spain, October 2005. – DALT 2005 : Declarative Agent Languages and Technologies, Utrecht, the Netherlands, July 2005. – RCoRP (International workshop on Rule-based Constraint Resonning and Programming), 2003. – PU 2003 et 2006 : Workshop on Program Understanding (Russie) – ATAI 2003 (Workshop on Artificial Intelligence) en 2003 (Chili) Christophe Jermann a été membre du comité de programme des ateliers internationaux IntCP’03, IntCP’05, IntCP’06, et des conférences nationales JNPC’03, JNPC’04, JFPC’05 et JFPC’06. Charlotte Truchet a été membre du comité de programmes des conférences nationales JFPC (Journées Francophones de Programmation par Contraintes) en 2005 et 2006, et de la conférence internationale ICMC (International Computer Music Conference) en 2005. L. Granvilliers a été membre du PC de CP TOOLS 2006, CP 2006, ACM SAC 2006 et 2005, PPAM 2003, et éditeur de Constraint Programming Letters. 7.8.3 Organisation de congrès L’équipe COCOA participe à l’organisation de la conférence annuelle internationale de programmation par contraintes CP 2006 qui aura lieu à Nantes en septembre 2006. Frédéric Benhamou est co-président (avec Narendra Jussien, équipe CD) du comité d’organisation de la conférence CP 2006. Il a également fait partie des comités d’organisation des ateliers internationaux COCOS’03, FJCP’04 et FJCP’05. Marc Christie est le co-organisateur, avec Hiroshi Hosobe (NII, Tokyo) et Kim Marriott (Monash University, Australie) d’un workshop international, satellite de la conférence CP 2006, sur le thème de la programmation par contraintes pour les applications graphiques (Sept. 2006 à Nantes) Eric Monfroy a participé à l’organisation des ateliers internationaux COSOLV en 2003, 2004, 2005. Christophe Jermann a participé à l’organisation des ateliers internationaux COCOS’03, IntCP’03, IntCP’05, IntCP’06, FJCP’04 et FJCP’05. Charlotte Truchet a organisé, en collaboration avec Philippe Codognet, une session ”Meta-heuristics” à la conférence IFORS’05 (International Federation of Operational Research Societies). L. Granvilliers a organisé les ateliers COSOLV en 2003, 2005, 2005, Constraints and Design en 2005. CoCoA : Contraintes Continues et Applications 243 7.8.4 Impact sur la formation universitaire Frédéric Benhamou a dirigé les thèses de Lucas Bordeaux (2003), Martine Ceberio (2003), Marc Christie (2003), Mina Ouabiba (2005), Michael Heusch (2005), Guillaume Rochart (2005), Brice Pajot (2006) et Thomas Douillard (en cours). Il a été rapporteur des thèses de Jorge Cruz (2003), Alexis Anglada (2005), Elise Vareille (2005), Heikel Batnini (2005), Pau Herrero (2006), Président des jurys de thèse de Abadallah Elkhyari (2003), Alexei Sosnov(2003), Marc Segura (2005), Mohammad Ghoniem (2005) et Thibault Garcia. Il a été examinateur pour la thèse de Charlotte Truchet (2004). Marc Christie co-encadre la thèse de Jean-Marie Normand (2004-2007). Il a encadré les stages de DEA/Master Recherche de Damien Lellouch (2003), Jean-Marie Normand (2004), Cyril Queffelec (2005) et Benoı̂t Guédas (2006). Frédéric Goualard a co-encadré la thèse de Michael Heusch (40 %). Il a été membre du jury de thèse de Michael Heusch. Christophe Jermann a co-encadré le stage de Master puis la thèse de Thomas Douillard (50%). Eric Monfroy a assuré l’encadrement d’étudiants en DEA (D. Hoareau et T. Lambert en 2003), Master (R. Meneses et C. Figueroa en 2005 et 2006), et thèse de doctorat (Lucas Bordeaux (40%), Guillaume Rochart (50%), Brice Pajot (80%), Tony Lambert (50%)). Il a participé au jury de thèse de : Julien Arsouze (rapporteur, Orléans en 2004), Guillaume Rochart (Nantes, 2005), Peter Zoeteweij (Rapporteur, University of Amsterdam, Pays-Bas, 2005), Andreı̈ Legtchenko (Rapporteur, Université d’Orléans, 2005), Ludovic Langevine (rapporteur, INSA de Rennes, 2004), Sebastian Brand (Rapporteur, University of Amsterdam, Pays-Bas, 2004), Eric Tanter (Univ. Nantes et Univ du Chili, 2004), Florian Letombe (Rapporteur, Univ d’Artois, 2005), Lucas Bordeaux (Univ. Nantes, 2004). Et au jury de Master de : Teddy Alfaro (UTFSM, Chili, 2005), Marcos Zèñiga(UTFSM, Chili, 2004), Carlos Grandon (UTFSM, CHili, 2003). Charlotte Truchet a encadré un stage d’étudiant volontaire, ex-étudiant de MR2, sur le sujet « Etude d’un algorithme de quantification rythmique ». L. Granvilliers a encadré les stages de DEA de Raphaël Chenouard en 2004, Thierry Fischer en 2005 et Nicolas Berger en 2006 et les thèse de Mina Ouabiba (fin en 2005), Raphaël Chenouard (50%, début en 2004), Ricardo Soto (début en 2006) et Nicolas Berger (début en 2006). 7.9 Publications de référence de l’équipe hors période [1] F. A RBAB et E. M ONFROY. Coordination of Heterogeneous Distributed Cooperative Constraint Solving. Applied Computing Review, 6 :4–17, 1998. [2] F. B ENHAMOU. Heterogeneous Constraint Solving. In M. H ANUS et M. RODRIGUEZ -A RTALEJO, réds., Proceedings of International Conference on Algebraic and Logic Programming, volume 1139 of Lecture Notes in Computer Science, pages 62–76, Aachen, Germany, 1996. Springer-Verlag. [3] F. B ENHAMOU et F. G OUALARD. Universally quantified interval constraints. In R. D ECHTER, réd., Proceedings of International Conference on Principles and Practice of Constraint Programming, volume 1894 of Lecture Notes in Computer Science, pages 67–82, Singapore, 2000. SpringerVerlag. [4] F. B ENHAMOU, F. G OUALARD, L. G RANVILLIERS, et J.-F. P UGET. Revising hull and box consistency. In Proceedings of the sixteenth International Conference on Logic Programming (ICLP’99), pages 230–244, Las Cruces, USA, 1999. The MIT Press. ISBN 0-262-54104-1. 244 Rapport d’activité LINA 2003–2006 [5] F. B ENHAMOU et L. G RANVILLIERS. Automatic generation of numerical redundancies for nonlinear constraint solving. Reliable Computing, 3(3) :335–344, 1997. [6] F. B ENHAMOU et W. J. O LDER. Applying interval arithmetic to real, integer and boolean constraints. Journal of Logic Programming, 32(1) :1–24, 1997. [7] F. G OUALARD, F. B ENHAMOU, et L. G RANVILLIERS. An extension of the WAM for hybrid interval solvers. Journal of Functional and Logic Programming, 5(4) :1–36, 1999. [8] C. J ERMANN, G. T ROMBETTONI, B. N EVEU, et M. RUEHER. A constraint programming approach for solving rigid geometric systems. In Principles and Practice of Constraint Programming (CP 2000), volume 1894 of LNCS, pages 233–248, 2000. ISBN : 3-540-41053-8. [9] E. M ONFROY, M. RUSINOWITCH, et R. S CHOTT. Implementing Non-Linear Constraints with Cooperative Solvers. In K. M. G EORGE, J. H. C ARROLL, D. O PPENHEIM, et J. H IGHTOWER, réds., Proceedings of ACM Symposium on Applied Computing, pages 63–72, Philadelphia, PA, USA, February 1996. ACM Press. [10] C. T RUCHET, G. A SSAYAG, et P. C ODOGNET. Visual and adaptive constraint programming in music. In Proceedings of ICMC’01, 2001. 7.10 Publications de référence de l’équipe dans la période [11] F. B ENHAMOU, F. G OUALARD, E. L ANGU ÉNOU, et M. C HRISTIE. Interval constraint solving for camera control and motion planning. ACM Transactions on Computational Logic, 5(4), Octobre 2004. [12] M. C HRISTIE et J.-M. N ORMAND. A semantic space partitioning approach to virtual camera control. Computer Graphics Forum, 24(3) :247–256, 2005. ISSN : 0167-7055, Special Issue : Proceedings of the Eurographics Annual Conference. [13] L. G RANVILLIERS et F. B ENHAMOU. Algorithm 852 : RealPaver : An interval solver using constraint satisfaction techniques. ACM Transactions on Mathematical Software, 32(1), Mars 2006. [14] C. J ERMANN, B. N EVEU, et G. T ROMBETTONI. Algorithms for identifying rigid subsystems in geometric constraint systems. In 18th International Joint Conference in Artificial Intelligence (IJCAI-03), pages 233–238, 2003. [15] E. M ONFROY, F. S AUBION, et T. L AMBERT. Hybrid csp solving. In Proceeding of 5th International Workshop Frontiers of Combining Systems (FroCoS)., volume 3717 of Lecture Notes in Computer Science, pages 138–167, Vienna, Austria, September 19-21 2005. Springer. ISBN : 3-540-29051-6, invited paper. 7.11 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [16] F. B ENHAMOU, M. C EBERIO, P. C ODOGNET, H. H OSOBE, C. J ERMANN, K. S ATOH, et K. .U EDA. Franco-japanese research collaboration on constraint programming. Progress in Informatics (PI), À paraı̂tre, 2006. CoCoA : Contraintes Continues et Applications 245 [17] S. B RAND et E. M ONFROY. Deductive generation of constraint propagation rules. Electronic Notes in Theoretical Computer Science, 86(2), 2003. [18] C. J ERMANN, G. T ROMBETTONI, B. N EVEU, et P. M ATHIS. Decomposition of geometric constraint systems : a survey. Internation Journal of Computational Geometry and Applications (IJCGA), À paraı̂tre, 2006. [19] E. M ONFROY. Book review : Essentials of Constraint Programming by Thom Frühwirth and Slim Abdennadher, Springer, 2003. Theory and Practice of Logic Programming (TPLP), 4(3) :381–382, May 2004. [20] C. T RUCHET et P. C ODOGNET. Solving musical constraints with adaptive search. Soft Computing, 8(9) :633–640. Springer-Verlag, 2004. A2. Revues d’audience nationale avec comité de lecture [21] L. B ORDEAUX et E. M ONFROY. Résolution de contraintes quantifiées sur les domaines finis par arc-consistance quantifiée. Journal électronique d’intelligence artificielle, 2(23), 2003. [22] C. J ERMANN, B. N EVEU, et G. T ROMBETTONI. Algorithmes pour la détection de rigidités dans les csp géométriques. Numéro spécial du Journal Électronique d’Intelligence Artificielle (JEDAIJNPC’03), 2004. D1. Colloques de diffusion internationale avec comité de lecture et actes [23] N. B ELDICEANU, M. C ARLSSON, J.-X. R AMPON, et C. T RUCHET. Graph invariants as necessary conditions for global constraints. In Proceedings of CP’05, Barcelona, Spain, 2005. [24] S. B ISTARELLI , E. M ONFROY, et B. O’S ULLIVAN. Editorial : special track on constraint solving and programming. In Proceedings of the 2005 ACM Symposium on Applied Computing (ACM SAC 2005), Santa Fe, New Mexico, USA., pages 364–365. ACM Press, 2005. ISBN : 1-58113-964-0. [25] L. B ORDEAUX et B. PAJOT. Computing equilibria using interval constraints. In Proceedings of Recent Advances in Constraints, Revised Selected and Invited Papers (CSCLP 2004), number 3419 in Lectures Notes in Artificial Intelligence, pages 157–171, Lauzanne, Switzerland, 2004. SpringerVerlag. [26] C. C ASTRO et E. M ONFROY. Basic Agents for Designing Constraint Solver Cooperation. In The Eighteenth Annual ACM Symposium on Applied Computing, ACM SAC 2003, pages 367–374, Melbourne, Florida, U.S.A., Mars 2003. ACM Press. [27] C. C ASTRO et E. M ONFROY. Designing hybrid cooperations with a component language for solving optimisation problems. In C. B USSLER et D. F ENSEL, réds., Proceedings of the 11th International Conference on Artificial Intelligence : Methodology, Systems, Applications (AIMSA’2004), volume 3192 of Lecture Notes in Computer Science, pages 447–458, Varna, Bulgaria, 2004. Springer. [28] C. C ASTRO, E. M ONFROY, C. F IGUEROA, et R. M ENESES. An approach for dynamic split strategies in constraint solving. In A. F. G ELBUKH, A. de A LBORNOZ, et H. T ERASHIMA -M AR ÍN, réds., Proceedings of The Fourth Mexican International Conference on Artificial Intelligence, MICAI 2005, volume 3789 of Lecture Notes in Artificial Intelligence, pages 162–174, Monterrey, Nuevo León, México, 2005. Springer. ISBN : 3-540-29896-7. 246 Rapport d’activité LINA 2003–2006 [29] C. C ASTRO, E. M ONFROY, et C. R INGEISSEN. A rule language for interaction. In K. A PT, F. FAGES, F. ROSSI, P. S ZEREDI, et J. V ÁNCZA, réds., Proceedings of Recent Advances in Constraints, Joint ERCIM/CoLogNET International Workshop on Constraint Solving and Constraint Logic Programming (CSCLP 2003), number 3010 in Lecture Notes in Computer Science, pages 154–170, Budapest, Hungary, 2004. Springer. ISBN : 3-540-21834-3. [30] M. C HRISTIE et H. H OSOBE. Through the lens cinematography. In Proceedings of the 6th International Symposium on Smart Graphics, 2006. À paraı̂tre. [31] M. C HRISTIE et E. L ANGUENOU. A constraint-based approach to camera path planning. In Proceedings of the 3rd International Symposium on Smart Graphics, pages 172–181, 2003. ISBN : 3-540-40557-7. [32] M. C HRISTIE, R. M ACHAP, J.-M. N ORMAND, P. O LIVIER, et J. P ICKERING. Virtual camera planning : A survey. In Proceedings of the 5th International Symposium on Smart Graphics, pages 40–52, 2005. ISBN : 3-540-28179-7. [33] M. C HRISTIE et P. O LIVIER. Camera control. In Eurographics 2006 State of the Art Report, 2006. À paraı̂tre. [34] F. G OUALARD. On considering an interval constraint solving algorithm as a free-steering nonlinear gauss-seidel procedure. In Procs. of the 20th Annual ACM Symposium on Applied Computing (Reliable Computation and Applications track), volume 2, pages 1434–1438. The Association for Computing Machinery, Inc., Mars 2005. [35] F. G OUALARD et L. G RANVILLIERS. Controlled propagation in continuous constraint networks. In Procs. of the 20th Annual ACM Symposium on Applied Computing (Constraint Solving and Programming track), volume 1, pages 377–382. The Association for Computing Machinery, Inc., Mars 2005. [36] F. G OUALARD et C. J ERMANN. On the selection of a transversal to solve nonlinear systems with interval arithmetic. In Procs. of the International Conference on Computational Science 2006, volume 3991 of Lecture Notes in Computer Science, pages 332–339. Springer-Verlag, 2006. ISBN : 3-540-34379-2. [37] L. G RANVILLIERS et E. M ONFROY. Implementing constraint propagation by composition of reductions. In C. PALAMIDESSI, réd., Proceedings of the 19th International Conference on Logic Programming (ICLP 2003), number 2916 in Lecture Notes in Computer Science, pages 300–314, Mumbai, India, 2003. Springer. ISBN : 3-540-20642-6. [38] T. L AMBERT, C. C ASTRO, E. M ONFROY, M. C. R IFF, et F. S AUBION. Hybridization of genetic algorithms and constraint propagation for the bacp. In Proceedings of The Logic Programming, 21st International Conference, ICLP 2005, volume 3668 of Lecture Notes in Computer Science, pages 421–423, Sitges, Spain, October 2 - 5 2005. Springer. ISBN : 3-540-29208-X. [39] T. L AMBERT, C. C ASTRO, E. M ONFROY, et F. S AUBION. Solving the balanced academic curriculum problem with an hybridization of genetic algorithm and constraint propagation. In Proceedings of The International Conference on Artificial Intelligence and Soft Computing (ICAISC’06), volume 4029 of Lecture Notes in Artificial Intelligence, Zakopane, Poland, 2006. Springer Verlag. À paraı̂tre. [40] T. L AMBERT, E. M ONFROY, et F. S AUBION .. Solving strategies using a hybridization model for local search and constraint propagation. In H. H ADDAD, L. M. L IEBROCK, A. O MICINI, et R. L. WAINWRIGHT, réds., Proceedings of the 2005 ACM Symposium on Applied Computing (SAC), CoCoA : Contraintes Continues et Applications 247 Santa Fe, New Mexico, USA., pages 398–403, Santa Fe, New Mexico, USA, March 13-17 2005. ACM. ISBN : 1-58113-964-0. [41] T. L AMBERT, E. M ONFROY, et F. S AUBION. Solving sudoku with local search : A generic framework. In Proceedings of The International Conference on Computational Science (ICCS 2006), volume 3991 of Lecture Notes in Computer Science, pages 641–648, Reading, UK, May 28-31 2006. Springer Verlag. ISBN : 3-540-34379-2, À paraı̂tre. [42] E. M ONFROY et C. C ASTRO. A component language for hybrid solver cooperation. In T. YAKHNO, réd., Proceedings of the Third Biennial International Conference on Advances in Information Systems (ADVIS’2004), volume 3261 of Lecture Notes in Computer Science, pages 192–202, Izmir, Turkey, 2004. Springer. [43] E. M ONFROY, F. S AUBION, et T. L AMBERT. On hybridization of local search and constraint propagation. In B. D EMOEN et V. L IFSCHITZ, réds., Proceedings of The Logic Programming, 20th International Conference, ICLP 2004, volume 3132 of Lecture Notes in Computer Science, pages 299–313, Saint-Malo, France, September 6-10 2004. Springer Verlag. ISBN : 3-540-226710, ISSN : 0302-9743. [44] B. PAJOT et E. M ONFROY. Separating search and strategy in solver cooperations. In M. B ROY et A. Z AMULIN, réds., Proceedings of Perspectives of Systems Informatics, 5th International Andrei Ershov Memorial Conference (PSI 2003), number 2890 in Lecture Notes in Computer Science, pages 401–414, Akademgorodok, Novosibirsk, Russia, 2004. Springer. ISBN : 3-540-20813-5. [45] M. W ILCZKOWIAK, G. T ROMBETTONI, C. J ERMANN, P. S TURM, et P. B OYER. Scene modeling based on constraint system decomposition techniques. In 9th IEEE International Conference on Computer Vision, (ICCV’03), 2003. [46] L. Z IMMER, A. A NGLADA, M. C HRISTIE, et L. G RANVILLIERS. Constraint explorer : a modelling and sizing tool for engineering design. In invited session on Metamodelling and Constraint Based Problem Solving for Embodiment Design Support Systems in SCI, 2004. D2. Colloques de diffusion nationale avec comité de lecture et actes [47] L. B ORDEAUX et E. M ONFROY. Extraction de programmes à partir de spécifications en logique existentielle du second ordre par compilation de connaissances. In Actes des 12èmes Journées Francophones de Programmation en Logique et par Contraintes (JFPLC 2003), pages 189–202, Amiens, France, 2003. Hermès. ISBN : 2-7462-0739-7. [48] H. D ELEAU, T. L AMBERT, E. M ONFROY, et F. S AUBION. Iterations chaotiques pour l’hybridation propagation de contraintes/recherche locale. In F. M ESNARD, réd., Actes de Programmation en logique avec contraintes, JFPLC 2004, pages 221–237, Angers, France, 21, 22 et 23 Juin 2004. Hermès. ISBN : 2-7462-0937-3. E. Colloques (avec ou sans actes) à diffusion restreinte [49] C. C ASTRO, E. M ONFROY, C. F IGUEROA, et R. M ENESES. Constraint solving using dynamic variable and value selection. In Proceedings of the XXXI Conferencia Latinoamericana de Informática, CLEI 2005, Cali, Colombia, 2005. [50] M. C HRISTIE, J.-M. N ORMAND, et C. T RUCHET. Calcul d’approximations intérieures pour la résolution de max-ncsp. In Journées Franophones de la Programmation par Contraintes, 2006. 248 Rapport d’activité LINA 2003–2006 [51] M. C HRISTIE, J.-M. N ORMAND, et C. T RUCHET. Computing inner approximations of numerical maxcsp. In IntCP2006, Interval analysis, constraint propagation, applications, Nantes, France, 2006. [52] X. G ANDIBLEUX, B. PAJOT, et D. P ONCELET. Modèle en variables 0-1 et système d’aide pour l’optimisation de l’organisation de bourses d’échanges de technologies. In 7ème congrès de la Société Française de Recherche Opérationnelle et d’Aide à la Décision (ROADEF 2006), Lille, Février 2006. [53] F. G OUALARD et C. J ERMANN. La propagation d’intervalles vue comme un problème de banditmanchot non stationnaire. In 12ièmes Journées Francophones de Programmation par Contraintes (JFPC’06), 2006. [54] A. L ALLOUET, A. L EGTCHENKO, E. M ONFROY, et A. E D -D BALI. Solver learning for predicting changes in dynamic constraint satisfaction problems. In Proceeding of the International Workshop on Constraint Solving under Change and Uncertainty, Changes 2004, Toronto, Canada, 2004. [55] A. L ALLOUET et E. M ONFROY. Towards fusion of rule-based solvers. In Proceeding of the 5th Workshop on Cooperative Solvers in Constraint Programming (COSOLV), Sitges, Spain, October 2005. [56] T. L AMBERT, C. C ASTRO, E. M ONFROY, M. C. R IFF, et F. S AUBION. Hybridization of genetic algorithms and constraint propagation : application to the balanced academic curriculum problem. In Proceeding of the 5th Workshop on Cooperative Solvers in Constraint Programming (COSOLV), Sitges, Spain, October 2005. [57] T. L AMBERT, C. C ASTRO, E. M ONFROY, M. C. R IFF, et F. S AUBION. Résolution du problème d’équilibrage des diplômes grâce à l’hybridation d’algorithmes génétiques et de la propagation de contraintes. In C. S OLNON, réd., Actes des 1ères Journées Francophones de Programmation par Contraintes (JFPC’2005), pages 423–426, June 2005. [58] T. L AMBERT, E. M ONFROY, et F. S AUBION. Hybridization strategies for local search and constraint propagation. In Proc. of the 4th Workshop on Cooperative Solvers in Constraint Programming (COSOLV), Toronto, Canada, September 2004. [59] C. M AURAS. Symbolic verification in synchronous constraint programming. 10th Workshop on Synchronous Languages, December 2003. [60] C. M AURAS. A comparison of boolean and rational solvers for interpreted automata verification. 12th Workshop on Synchronous Languages, December 2005. [61] B. N EVEU, C. J ERMANN, et G. T ROMBETTONI. Interblock backtracking : Exploiting the structure in continuous csps. In 2nd International Workshop on Global Constrained Optimization and Constraint Satisfaction (COCOS’03), volume 3478 of LNCS, pages 15–30. Springer-Verlag, 2003. ISBN : 3-540-26003-X. [62] B. N EVEU, G. T ROMBETTONI, et C. J ERMANN. Retour-arrière inter-blocs et résolution par intervalles. In 10ièmes Journées Nationales de la Résolution Pratique de Problèmes NP-Complets (JNPC’04), 2004. [63] J.-M. N ORMAND. Computer graphics and constraint solving ; an attempt to maintain semantics in an application to camera control. In CPGA2006, International Workshop on Constraint Programming for Graphical Applications, Nantes, France, 2006. [64] J.-M. N ORMAND et M. C HRISTIE. Le partitionnement sémantique appliqué au problème de la composition virtuelle. In Actes des 18èmes journées de l’informatique graphique, 2005. CoCoA : Contraintes Continues et Applications 249 [65] B. PAJOT. Constraint solver cooperation frameworks : The whys and wherefores. In 5th CP Workshop on Cooperative Solvers in Constraint Programming, Sitges (Barcelona), Spain, Octobre 2005. [66] C. T RUCHET. A musical overconstrained csp and its cost-functions issues. In Proceedings of IFORS’05, 2005. [67] C. T RUCHET, J. B OURDON, et P. C ODOGNET. Tearing customers apart for solving psp-sos. In IJCAI’05 Constraint Modelling Challenge entry, Edinburgh, Great Britain, 2005. F1. Ouvrages ou chapitres d’ouvrage scientifique [68] F. B ENHAMOU et L. G RANVILLIERS. Continuous and interval constraints. In F. ROSSI, P. VAN B EEK, et T. WALSH, réds., Handbook of Constraint Programming, Foundations of Artificial Intelligence, chap. 16. Elsevier Science Publishers, Amsterdam, The Netherlands, 2006. F3. Direction d’ouvrage [69] F. B ENHAMOU, réd. Proceedings of the 12th International Conference On the Principles and Practice of Constraint Programming. Lecture notes in Computer Science. Springer, 2006. [70] C. J ERMANN, A. N EUMAIER, et D. S AM -H AROUD, réds. Global Optimization and Constraint Satisfaction ; Revised selected papers from the second international workshop on global constraint optimization and constraint satisfaction (COCOS’03), volume 3478 of LNCS. Springer-Verlag, 2004. ISBN : 3-540-26003-X. 7.12 Bibliographie externe [71] G. A LEFELD et J. H ERZBERGER. Introduction to Interval Computations. Academic Press, 1983. [72] K. R. A PT. The Essence of Constraint Propagation. Theoretical Computer Science, 221(1-2) :179– 210, 1999. [73] J. G. C LEARY. Logical arithmetic. Future Generation Computing Systems, 2(2) :125–149, 1987. [74] A. C OLMERAUER. An Introduction to Prolog III. Communications of the ACM, 33(7) :69–90, 1990. [75] P. C OUSOT et R. C OUSOT. Abstract interpretation : a unified lattice model for staticanalysis of programs by construction or approximation offixpoints. In Conference Record of the Fourth Annual ACM SIGPLAN-SIGACTSymposium on Principles of Programming Languages, pages 238–252, Los Angeles, California, 1977. ACM Press, New York, NY. [76] R. D ECHTER et J. P EARL. Network-based heuristics for constraint satisfaction problems. Artificial Intelligence, 34 :1–38, 1987. [77] M. D INCBAS, P. V. H ENTENRYCK, H. S. A. AGGOUN, T. G RAF, et F. B ERTHIER. The Constraint Logic Programming Language CHIP. In Proceedings of International Conference on FifthGeneration Computer Systems, pages 693–702, Tokyo, Japan, 1988. Springer-Verlag. [78] M. G LEICHER et A. W ITKIN. Through-the-lens camera control. In SIGGRAPH ’92 : Proceedings of the 19th annual conference on Computer graphics and interactive techniques, pages 331–340, New York, NY, USA, 1992. ACM Press. ISBN : 0-89791-479-1. 250 Rapport d’activité LINA 2003–2006 [79] J. JAFFAR et J.-L. L ASSEZ. Constraint Logic Programming. In POPL’87 : Proceedings 14th ACM Symposium onPrinciples of Programming Languages, pages 111–119, Munich, 1987. ACM. [80] J. JAFFAR, S. M ICHAYLOV, et P. S. andR. YAP. The CLP(ℜ) language and system. ACM Transactions on Programming Languages andSystems, 14(3) :339–395, 1992. [81] A. M ACKWORTH. Consistency in Networks of Relations. Artificial Intelligence, 8(1) :99–118, 1977. [82] U. M ONTANARI. Networks of Constraints : Fundamental Properties andApplications to Picture Processing. Information Science, 7(2) :95–132, 1974. [83] R. E. M OORE. Interval Analysis. Prentice-Hall, Englewood Cliffs, NJ, 1966. [84] A. S. NARIN ’ YANI. Subdefinite models and operations with subdefinitevalues. Preprint, USSR academy of sciences, SiberianDivision, 400, 1982. [85] W. J. O LDER et A. V ELLINO. Extending Prolog with Constraint Arithmeticon Real Intervals. In Proceedings of IEEE Canadian Conference on Electricaland Computer Engineering, New York, 1990. IEEE Computer Society Press. [86] J. M. O RTEGA et W. C. R HEINBOLDT. Iterative solutions of nonlinear equations in several variables. Academic Press Inc., 1970. ISBN : 0-12-528550-7. [87] S. R ATSCHAN. Efficient solving of quantified inequality constraints over the real numbers. ACM Transactions on Computational Logic, 2006. [88] D. R ICHARDSON. Some Unsolvable Problems Involving Elementary Functionsof a Real Variable. Journal of Symbolic Logic, 33 :514–520, 1968. [89] J. A. ROBINSON. A Machine-Oriented Logic Based on the ResolutionPrinciple. Journal of the ACM, 12(1) :23–41, 1965. [90] A. TARSKI. A Lattice-Theoretical Fixpoint Theorem and its Applications. Pacific Journal of Mathematics, 5 :285–309, 1955. [91] P. VAN H ENTENRYCK, D. M C A LLESTER, et D. K APUR. Solving Polynomial Systems Using a Branchand Prune Approach. SIAM Journal of Numerical Analysis, 34(2) :797–827, 1997. [92] D. L. WALTZ. Generating Semantic Descriptions fromDrawings of Scenes with Shadows. In P. H. W INSTON, réd., The Psychology of Computer Vision. McGraw Hill, 1975. Rapport individuel Xavier G ANDIBLEUX 8.1 Composition de l’équipe Responsable : — Chercheurs-enseignants : – Xavier Gandibleux Professeur, Université de Nantes, 01/09/2004 Chercheurs invités : – Daniel Salazar Aponte Doctorant, University of Las Palmas de Gran Canaria (Spain), 09/2005 - 01/2006 Chercheurs doctorants : – Frédéric Beugnies Bourse ministère jusqu’à septembre 2006, ATER ensuite, Université de Valenciennes et du Hainaut-Cambrésis, de 01/09/2003 à 06/2007. – Fabien Degoutin Bourse région Nord Pas-de-Calais/INRETS jusqu’à septembre 2005, ATER ensuite, Université de Valenciennes et du Hainaut-Cambrésis, de 01/10/2002 à 02/2007. – Anthony Przybylski Ressources propres (CDD Valutec-Valenciennes) jusqu’à août 2005, ATER ensuite, Université de Nantes, de 01/09/2003 à 08/12/2006. Anciens doctorants : – Xavier Delorme Bourse ministère jusqu’à septembre 2003, ATER ensuite, Université de Valenciennes et du Hainaut-Cambrésis, de 01/10/2000 à 10/12/2003. 8.2 Présentation et objectifs généraux 8.2.1 Historique Jusqu’au milieu des années 90, les travaux en France en aide multicritère à la décision étaient essentiellement développés au LAMSADE (Université Paris IX-Dauphine). A cette époque, Xavier Gandibleux était doctorant à l’Université de Valenciennes et collaborait étroitement avec des membres du 251 252 Rapport d’activité LINA 2003–2006 LAMSADE. C’est en 1995 que ses travaux se sont cristallisés sur l’optimisation multi-objectif, thème de recherche qui in fine est apparu au sein de l’équipe “Recherche Opérationnelle et Informatique” du LAMIH (Laboratoire d’Automatique, de Mécanique et d’Informatique industrielles et Humaines, UMR CNRS 8530 de Valenciennes), lors de la création de l’équipe en 1999. Un groupe (composé de un permanent - Xavier Gandibleux - et 4 doctorants) s’est constitué autour de ce thème. Plusieurs personnalités du domaine, dont Ralph Steuer (University of Georgia-Athens - USA ; mars et mai 2003) qui est considéré par la communauté internationale comme l’initiateur des travaux actuels dans le domaine, sont venus travailler avec le groupe à Valenciennes, souvent pour des périodes de un mois. Les autres visiteurs furent Berthold Ulungu (Faculté Polytechnique de Mons - BE ; octobre/mi-novembre 1996), Andrzej Jaszkiewicz (Techn. Univ. Poznan - PL ; octobre 1997), Hiroyuki Morita (Osaka Prefecture University, JP ; juin/juillet 1998 et juillet 2002), Matthias Ehrgott (Univ. Auckland - NZ ; juillet 1999 et juillet 2004), Daniel Tuyttens (Faculté Polytechnique de Mons - BE, mai/juin 2000), José Figueira (Université de Coimbra - PT, janvier et juin 2001), Hirotaka Nakayama (Konan University, Kobe - JP ; aout 2002), Julian Molina (University of Málaga - ES ; du 20 avril au 1er juillet 2003), Celso Ribeiro (Pontifı́cia Universidade Católica do Rio de Janeiro - BR, décembre 2003). Sur le plan applicatif, nous entretenons depuis 1998 une collaboration avec Joaquin Rodriguez, directeur de recherches à l’unité ESTAS de l’INRETS (Institut National de Recherches En Transport et Sécurité) situé à Villeneuve d’Ascq, qui porte sur des travaux centrés sur le transport ferroviaire. Deux thèses s’inscrivent dans cette collaboration (Xavier Delorme et Fabien Degoutin). Les travaux du groupe se sont déplacés sur Nantes en 2004 avec la nomination de Xavier Gandibleux aux fonctions de professeur des universités, suivi par un doctorant, Anthony Przybylski. De septembre 2004 à septembre 2005, ils ont été accueillis dans l’équipe “Extraction et Gestion des Connaissances” du LINA, dont le projet scientifique à été revisité à cette occasion pour se positionner sur “ConnaissancesOptimisation-Décision”. En septembre 2005, l’équipe s’est recentrée sur le traitement des données ; Xavier Gandibleux et Anthony Przybylski en furent donc détachés. Un dossier d’équipe projet “Recherche Opérationnelle et Optimisation Multi-objectif” a été déposé en décembre 2005 et est à l’examen par le comité de direction du LINA. Depuis notre arrivée à Nantes, notre petit groupe thématique a eu l’occasion d’initier des travaux en collaboration avec des équipes de l’IRRCyN et du LINA. Aussi, nous avons accueilli pour une période de 1 mois en 2005 Kathrin Klamroth (University of Erlangen Nuremberg, Allemagne) et Eric Taillard en 2006 (University of Applied Sciences of Western Switzerland, Suisse), ainsi que Daniel Salazar Aponte (doctorant, University of Las Palmas de Gran Canaria, Espagne) pour 6 mois à dater de septembre 2005. Nos travaux relèvent de l’informatique et des mathématiques appliquées, spécialité “recherche opérationnelle”. Ils concernent l’optimisation, les métaheurstiques et la prise en compte des préférences pour le traitement de problèmes (discrets) multi-objectifs de grandes tailles. Il s’agit principalement de développer des techniques efficaces permettant de traiter cette classe de problèmes d’optimisation exprimés à l’aide du formalisme de la programmation mathématique, et comportant plusieurs fonctions économiques souvent antagonistes. 8.2.2 Les thèmes de recherche Positionnement des travaux dans le contexte national et international Les principaux centres français qui sont positionnés visiblement sur l’optimisation multi-objectif sont le LAMSADE (Paris IX-Dauphine), le LIP6 (Paris VI), le LIFL (Polytech’Lille) et le LI (Polytech’Tours). Il est encore possible de mentionner des personnes actives sur la thématique (comme par Xavier G ANDIBLEUX 253 exemple au LAMI à Evry ou le LIA à Avignon), mais qui sont isolées au sein de groupes positionnés sur des problématiques plus larges. Les points forts des travaux développés dans ces centres sont les suivants : – Enmené par les travaux de Bernard Roy qui a développé l’école européenne de l’aide multicritère à la décision, le LAMSADE (Paris IX-Dauphine) est le laboratoire historique de notoriété internationale autour de l’aide multicritère à la décision. Cependant, il ne dispose pas de groupe actif sur l’optimisation combinatoire multi-objectif, ni sur les métaheuristiques multi-objectif, ses activités dans le domaine étant davantage orientées sur la modélisation des préférences, les méthodes dites de surclassement, les méthodes interactives en aide à la décision. – Le groupe autour de P. Perny au LIP6 (Paris VI) s’intéresse à la théorie de la décision, plus précisément la modélisation des préférences, l’optimisation multicritère, ainsi que la décision dans l’incertain. Les travaux sont particulièrement axés sur les approches à base de préférences en optimisation multi-objectif. – Issue du LIFL, DOLPHIN est une nouvelle équipe INRIA-futurs de Lille basée à Polytech’Lille, qui s’intéresse à l’optimisation multi-critère parallèle coopérative. Historiquement active en calcul parallèle, son originalité dans notre domaine se situe au niveau de la résolution parallèle et distribuée de problèmes d’optimisation multi-objectif, notamment en faisant usage de méthodes fondées sur les algorithmes génétiques hybrides et les grilles de calculs. – Les travaux menés àu LI de Polytech’Tours sont très spécialisés dans la mesure où ils traitent quasi exclusivement de problèmes multi-objectif rencontrés en ordonancement et dans les systèmes de production. C’est avec V. T’kindt que X. Gandibleux a animé durant 4 ans le groupe de travail “programmation mathématique multi-objectif” fondé par ce dernier en 1999. C’est aujourd’hui un groupe de travail du GDR CNRS “Recherche opérationnelle”. En nous adressant à des problèmes possédant essentiellement une structure combinatoire, et à leur validation en situation réelle, nos travaux se démarquent des premières motivations des autres acteurs français. Nous nous attachons à l’élaboration de connaissances fondées sur la structure mathématique sous-jacente véhiculée par ces problèmes. Un effort conséquent est réalisé sur le plan méthodologique et algorithmique en vue de proposer des solutions opérationnelles capable de traiter efficacement ces problèmes. Nos travaux sont complémentaires à la dynamique nationale sur le thème. Sur le plan international, plusieurs acteurs se sont donnés des objectifs similaires aux nôtres, avec souvent une marque distinctive forte dans leurs travaux : – La Faculté Polytechnique de Mons (BE) a été pionnière sur notre problématique, tant du point de vue méthodologique que fondamental. Elle est à la base du recuit simulé multi-objectif et de la méthode en deux phases (B. Ulungu, J. Teghem, D. Tuyttens). Pour des raisons géographiques et académiques, nous avons eu très tôt des liens avec cette équipe belge. La plupart de nos travaux s’appuient sur les contributions apportées par cette dernière, laquelle a été énormément active sur le sujet jusqu’a la fin des années 90. – La Technical University Kaiserslautern (DE) possède une tradition de longue date en optimisation combinatoire, avec un intérêt marqué sur les problèmes multi-objectifs. Ce groupe de Kaiserslautern conduit par Horst Hamacher est incontestablement le plus proche de nous thématiquement en Europe. Plusieurs de nos travaux sont co-signés avec des membres issus de ce groupe, dont certains avec qui nous collaborons de façon soutenue, sont aujourd’hui dans d’autres institutions, comme Kathrin Klamroth (University of Erlangen Nuremberg, DE) et Matthias Ehrgott (University of Auckland, NZ). 254 Rapport d’activité LINA 2003–2006 – La Poznan University of Technology (PL) possède une forte tradition dans le domaine des métaheuristiques multi-objectifs. Elle est très active sur les méthodes basées sur les algorithmes évolutionnaires hybrides (A. Jaszkiewicz, R. Slowinski) ; – Clemson University (USA) s’intéresse aux caractéristiques mathématiques des problèmes d’optimisation multi-objectif, et applique leurs contributions sur des problèmes rencontrés en conception mécanique (M. Wiecek, G. Fadel) ; – La Technical University Lisboa (PT) possède une forte compétence dans le domaine des problèmes multi-objectifs issus de la théorie des graphes, comme les problèmes de chemins et de flots (J. Figueira). – Osaka University (JP) et Helsinki School of Economics (FI) s’attachent aux problèmes nonlinéaires en optimisation multi-objectif (respectivement T. Tanino et K. Miettinen) ; – ETH-Zurich (CH), Indian Institute of Technology Kanpur (IN) et CINVESTAV (MX) ne sont pas directement impliqués sur les problèmes combinatoires, mais ces centres développent des techniques de résolution approchée fondées sur les algorithmes génétiques qui figurent parmi les outils de résolutions les plus populaires sur les problèmes qui nous animent. Les équipes de Zurich et Kanpur sont à l’origine respectivement de SPEA et NSGA, méthodes internationalement reconnues et utilisées pour la résolution de problème d’optimisation multi-objectif. Nous avons des collaborations mesurables avec plusieurs de ces acteurs (séjours de recherche, articles co-signés, numéros spéciaux de journaux internationaux, organisation d’événements, etc.). D’un point de vue théorique, le point fort de nos travaux vient du fait qu’ils se confinent aux problèmes combinatoires, nous permettant d’apporter une certaine profondeur dans nos contributions (méthodes, coupes, etc.). D’un point de vue applicatif, les travaux s’appuyent sur notre collaboration avec l’INRETS (développement du projet RECIFE en partenariat avec la SNCF) ainsi que sur des contrats de recherche avec des opérateurs de télécommunication (Alcatel, France Telecom). Les compétences dans le domaine des mathématiques appliquées s’appuient sur la collaboration de longue date avec Matthias Ehrgott (Auckland). Démarche et verrous motivant nos travaux L’optimisation multi-objectif présente deux enjeux fondamentaux. Le premier est théorique et méthodologique. Les contributions au domaine sont jeunes à l’échelle de l’histoire de la recherche opérationnelle. Comparativement aux résultats élaborés dans d’autres secteurs de la discipline (programmation linéaire ou ordonnancement par exemple), trop de connaissances en sont encore à un stade préliminaire ou simplement inexistantes. Parmi les manquements cinglants, on relève la faible proportion de techniques destinées à la résolution exacte de problèmes (surtout quand il est de grande taille), traitant de la question de la qualité d’une approximation ou encore permettant l’intégration d’un système de préférences fourni par un décideur. En outre, de nombreux travaux ont considéré de façon maladroite, erronée ou incomplète les attentes d’une approche fondée sur l’optimisation multi-objectif. C’est ainsi que l’on souligne régulièrement des contributions qui présentent plusieurs faiblesses dans leurs fondements théoriques. Le second enjeu résulte d’un constat sur le terrain opérationnel. En effet, les problèmes d’optimisation rencontrés dans les systèmes socio-économiques comportent intrinsèquement plusieurs objectifs appelés à être optimisés simultanément. On assiste aujourd’hui à une véritable prise de conscience qui conduit par exemple à ne plus concevoir l’optimisation de coûts liés à la constitution d’équipages de vols affectés à des avions, sans simultanément se soucier de la robustesse des rotations des aéronefs sur les différents vols. Les opérationnels sont en attente de moyens (méthodes, outils et logiciels) d’optimisation dépassant le cadre de l’optimisation mono-objectif classique, or les moyens actuels ne permettent Xavier G ANDIBLEUX 255 généralement pas de traiter de réelles applications. Ces enjeux constituent plusieurs verrous parsemés de questions ouvertes sur lesquels nous concentrons nos travaux depuis plusieurs années, souvent dans le contexte de collaborations. En s’attachant prioritairement à l’ensemble des problèmes qui touchent aux aspects liés à la résolution (caractérisation des solutions, complexité des problèmes, méthodes de résolution, algorithmes dédiés) des problèmes à structure combinatoire, ainsi qu’à l’insertion et l’évaluation de ces connaissances in situ, nos travaux occupent une position originale dans la discipline. Vis-à-vis de nos concurrents internationaux, l’équipe détient plusieurs meilleurs résultats connus (cas du problème d’affectation linéaire). En résumé, le fil rouge nous conduit sur les principaux verrous actuels s’opposant à la résolution efficace de problèmes d’optimisation (discrets) multi-objectif de grande taille, et à la mise à disposition des résultats sous une forme logicielle opérationnelle. 8.2.3 Perspectives Une équipe projet “Recherche Opérationnelle et Optimisation multi-objectif” est en création. L’objectif principal sur les 4 prochaines années vise sa structuration et sa mise en place via différents recrutements, son organisation interne et son rayonnement scientifique, et s’attache aux objectifs qu’elle s’est donnée dans son projet scientifique. Sur ce dernier point, les verrous retenus comme cible pour nos travaux sur le court terme s’adressent aux problème réputés déterminants et bloquants par la communauté. En effet, nous nous attacherons prioritairement aux problèmes qui touchent à la résolution exacte des problèmes d’optimisation multi-objectif. Aujourd’hui, notre communauté connaı̂t des avancées significatives sur les méthodes d’approximation type meta-heuristiques multi-objectif. Mais la résolution exacte reste confrontée à de nombreuses difficultés et c’est précisement sur ces problèmes que nous plaçons nos efforts depuis plusieurs années. Cela ne signifie pas pour autant notre désangagement du terrain des méthodes approchées car ces dernières représentent encore dans de nombreuses situations réelles l’unique recours opérationnel. – Fondamental : étude, caractérisation et élaboration de connaissances sur les problèmes d’optimisation discrets et combinatoires multi-objectifs. En particulier, étude des structures mathématiques sous-jacentes comme les polytopes dépendant des paramètres, meilleure caractérisation de la difficulté des problèmes (sachant que virtuellement tous les problèmes d’optimisation combinatoire multi-objectif sont NP hard et peuvent comporter un nombre exponentiel de solutions). Depuis la thèse de B. Ulungu en 1993, laquelle visait des objectifs de caractérisation des solutions, très peu de travaux à l’extérieur des nôtres sont revenus sur ces questions. Effectivement, ce travail qui a marqué le domaine a souligné l’énorme difficulté posée par ces questions. Toutefois, nos récentes contributions, mesurables au travers des travaux d’Anthony Przybylski ont reculé pour la premiere fois significativement des limites posées en 1993, en ouvrant de nouvelles perspectives. – Méthodologique et algorithmique : nouvelles techniques et méthodes pour la résolution de problèmes d’optimisation discrets et combinatoires multi-objectifs de grande taille. Développement d’algorithmes performants pour faciliter le traitement de problèmes NP-difficiles mono et multi-objectif (coupes, réductions, etc.) en vue de les résoudre efficacement. En particulier, cela inclut le développement d’algorithmes reposant sur la méthode primale-duale, la généralisation de méthodes bi-objectifs à des situations multi-objectifs, la mise en place de méthodes de type branch-and-bound multiobjectif. Nous avons été précurseurs sur ce plan ces dernières années, en proposant des méthodes comme la recherche tabou multi-objectif (1996) ou le principe de la réduction de l’espace de recherche à 256 Rapport d’activité LINA 2003–2006 l’aide de coupes dans l’espace des objectifs (2000). Il reste à poursuivre ces propositions, notamment en visant efficacement la résolution des problèmes de grande taille. – Validation et vérification des résultats élaborés sur des problèmes d’optimisation multi-objectif tirés de situations réelles, avec comme objectif ultime d’être en mesure de résoudre des problèmes concrets issus de contextes réels dans des environnements complexes (systèmes de production, transport, communications). Les problèmes réels nous permettent d’évaluer in situ les contributions méthodologiques et algorithmiques génériques. Mais ces derniers véhiculent souvent des particularités qui engendrent des contributions originales. C’est précisément sur ce chapitre que l’on peut être amené à traiter des situations ne relevant pas nécessairement de l’optimisation multi-objectif. Le groupe s’est positionnée au cours de ces dernières années, en collaboration avec des opérationnels sur plusieurs terrains applicatifs en transport et télécommunication. Indépendament du caractère multi-objectif des problèmes abordées, le fait de travailler sur des problèmes d’optimisation discrets rencontrés en transport ferroviaire nous confère déjà une originalité nationale. 8.3 Fondements scientifiques Traditionnellement, une optimisation repose sur un critère unique de synthèse traduisant classiquement une notion de coût. Ce critère est censé représenter l’ensemble des valeurs sur lequel s’élabore la recherche d’une solution au problème d’optimisation donné. C’est sa capacité à outre passer la nécessité de réduire à l’unique critère la procédure d’évaluation des solutions qui a révélé l’intérêt de l’optimisation multi-objectif : des objectifs antagonistes et/ou non-commensurables n’ont plus besoin d’être agrégés en une fonction extérieure au problème posé. La procédure d’optimisation permet donc de mieux prendre en compte la complexité des objectifs inhérents aux situations traitées. Cependant, il faut adhérer à l’idée d’abandonner le concept de la solution optimale, laquelle est vidée de son sens. Effectivement, une telle solution idéale n’existe généralement pas dès l’instant ou les objectifs considérés sont quelque peu antagonistes. La notion classique fait place à la notion de solutions efficaces au regard des différents objectifs. Située à l’intersection de l’optimisation (discrète) et l’analyse multi-critère, l’optimisation (discrète) multi-objectif est le domaine de la recherche opérationnelle qui aborde l’étude de problèmes d’optimisation exprimés à l’aide du formalisme de la programmation mathématique, et comportant plusieurs fonctions économiques souvent antagonistes. Ce domaine a connu ses premières contributions à la fin des années 70, mais s’est définitivement imposé au cours des années 90, notamment avec le succès rencontré par les métaheuristiques. Effectivement, l’apport de ces méthodes qui sont capables de fournir rapidement des solutions de bonnes qualités a relancé l’intérêt de l’optimisation multi-objectif pour traiter des problèmes complexes qui, pour la plupart, ne connaissaient pas de méthode exacte efficace de résolution. On (re)trouve l’optimisation multi-objectif dans la plupart des problèmes d’optimisation difficiles : ordonnancement, transport, logistique, télécommunication, santé, biologie, finances ou encore conception de systèmes (mécaniques, électroniques, informatiques, etc.). De part sa situation au carrefour de plusieurs disciplines (informatique, mathématiques, économie pour ses fondements ; sciences de l’ingénieur et sciences humaines pour ses applications), l’optimisation multi-objectif est colorée d’idées et d’outils provenant de divers horizons (des notions d’économie comme l’optima de Pareto pour définir le concept de solutions efficaces ; des outils résultant d’un couplage entre recherche opérationnelle et programmation par contraintes). De nombreux travaux pionniers ont considéré de façon maladroite, erronée ou incomplète les attentes d’une approche fondée sur l’optimisation multi-objectif. C’est ainsi que l’on souligne régulièrement des Xavier G ANDIBLEUX 257 contributions qui présentent plusieurs faiblesses dans leurs fondements théoriques. Trop souvent encore aujourd’hui, le réflexe de certains hommes d’étude face à un problème multi-objectif est de considérer une notion de poids comme une notion d’importance entre objectifs, et d’avoir recours à une somme pondérée des objectifs qui se verra optimisée. Cette façon de procéder présente plusieurs écueils bien connus dans la discipline. L’accès aux métaheuristiques a permis la résolution approchée mais rapide de problèmes réputés difficiles comme le problème de couverture d’ensembles, mais surtout de poser un champs de questions dont les réponses permettent de revenir et corriger des erreurs introduites dans les premiers travaux (comme l’hypothèse de connexité des solutions efficaces ou l’omission d’un ensemble important de solutions, lesquel ne peut pas être trouvé avec une somme pondérée par exemple). Ce fut aussi l’occasion de remplacer d’idée de disposer de procédures de résolution générales par des algorithmes adaptés aux différentes structures de problèmes rencontrés, marquant le regain d’intérêt sur les méthodes de résolution exactes dédiées. Ce passage amorcé vers 1995 s’est accompagné par une hybridation de techniques de résolution (méthode générale associée à des composants spécifiques ; méthode exacte faisant usage de composants approchés et réciproquement) donnant par exemple naissance aux algorithmes mémétiques marriant algorithmes génétiques et recherche locale. Face à ce constat, l’objectif de l’optimisation multi-objectif est de capitaliser le volume considérable de connaissances élaborées en recherche opérationnelle, avec les réserves nécessaires du fait des particularités du domaine ; mais également de croiser les idées avec des développements issus d’autres disciplines. Nous nous sommes focalisés plus particulièrement sur les thèmes suivants : – Algorithmes exacts répondant à une structure combinatoire (sac-à-dos, affectation linéaire, set packing) – Métaheuristiques multi-objectif (fondées notamment sur l’hybridation de paradigmes) – Evaluation des méthodes in situ (transport ferroviaire, télécommunication, ordonnanacement) 8.4 Domaines d’applications Pratiquement aucune décision ne repose sur un objectif unique. Le spectre d’applications qui s’adressent à l’optimisation multi-objectif couvre quasiment l’ensemble des applications qui sont traitées en recherche opérationnelle. Avec le nombre croissant de nouveaux résultats et de méthodes de résolution, de plus en plus d’opérationnels se tournent vers l’optimisation multi-objectif. Pour exemple, le sujet proposé par Renault pour le challenge ROADEF 2005 était un problème de production comportant trois objectifs. Autre signe mesurable, lors de la dernière conférence internationale du domaine (MOPGP’06, laquelle a été co-organisée par l’équipe), on a noté pour la première fois la présence de représentants de groupes industriels comme Electricité de France, Ilog, Airbus, Renault. Quatre domaines sont abordés dans nos travaux. 8.4.1 Transport ferroviaire Dans le cadre du projet régional soutenu par la région Nord Pas-de-Calais, et impliquant deux partenaires, l’INRETS-ESTAS (Villeneuve d’Ascq) et la SNCF (direction des infrastructures de Lille et direction de la recherche de Paris), nous travaillons depuis 1999 sur la problématique de la capacité d’infrastructures ferroviaires. La question centrale est “combien de trains peuvent franchir un noeud ferroviaire complexe ou une gare principale ?”, une réponse pouvant se matérialiser par une grille horaire. La question qui vient ensuite est “quelle est la stabilité d’une telle grille horaire ?”. On s’attend effectivement à un ensemble de solutions de compromis entre ces deux mesures antagonistes si l’infrastructure 258 Rapport d’activité LINA 2003–2006 n’est pas surdimensionnée. Les deux situations que nous étudions sont le noeud de Pierrefitte-Gonesse et la gare de Lille-Flandre. 8.4.2 Télécommunications Durant quatre ans nous avons collaboré avec Alcatel R&I (centre de Marcoussis) sur le problème du routage dans les réseaux informatiques, au niveau de IP. Il faut savoir qu’actuellement l’algorithme qui est utilisé pour acheminer les informations (comme le courrier électronique) est rudimentaire et ne tient pas compte de l’utilisation de l’infrastructure. Les besoins ont beaucoup évolués sur internet, ansi que l’utilisation (comme la voiceIP ou la visio conference) qui en est fait. Les protocoles de routages doivent considérer simultanément des mesures comme la bande passante résiduelle, les délais de communications, en plus de la mesure classique (fondée sur le nombre de routeurs à franchir sur le chemin à parcourir). Nous avons également collaboré avec une autre unité d’Alcatel (centre de Anvers) et avec FranceTélécom R&D (Issy-les-Moulineaux) sur deux autres problèmes relevant de ce domaine. 8.4.3 Systèmes de production Ce domaine est riche en applications. L’exmple de Renault précédemment évoqué concerne l’organisation de la production automobile sur les ateliers de peinture et de montage pour une unité de production, sachant que l’ordre de passage des véhicules ne peut pas changer entre ces deux ateliers. Trois objectifs sont considérés dans ce problème, minimiser le nombre de purges de peinture (premier atelier) et minimiser le nombre de violations des contraintes de montages (second atelier). Récemment nous avons travaillé en collaboration avec l’équipe SLP de l’IRRCyN sur un problème de retraitement de déchets où il s’agit de minimiser des temps d’attente de véhicules se présentant au déchargement et minimiser l’utilisation du système de production. 8.4.4 Solveurs Ces dernières années ont vu fleurir des bibliothèques de méthodes reposant sur les métateuristiques multi-objectif (MOMHlib maintenue par A. Jaszkiewick en Pologne, PISA maintenue par E. Ziztler en Suisse, MOEO maintenue par Talbi à Lille). Par contre, il n’existe pas d’initiative similaire sur les algorithmes exacts pour des problèmes d’optimisation multi-objectif. Point déjà souligné lors de l’habilitation à diriger les recherches de X. Gandibleux en 2003, nos productions récentes nous permettent à présent de nous engager vers la réalisation d’un solveur multi-objectif intégrant les algorithmes que nous avons développés. Dans ce cadre le défi consiste à donner accès à un ensemble d’algorithmes hétérogènes d’une manière la moins contraingnate possible. 8.5 Logiciels 8.5.1 RECIFE et RECIFE PC (Responsable: Joaquı́n Rodriguez et Xavier Gandibleux) URL/DOI: Mots-clés: capacité d’infrastructures ferroviaires, set packing, algorithmes de fourmis, stabilité d’horaires. Équipe de développement: Roman Bartusiak, Fabien Degoutin, Xavier Delorme, Xavier Gandibleux, Julien Jorge, Grégory Marlière, Joaquı́n Rodriguez, Sonia Sobieraj Xavier G ANDIBLEUX 259 Plateformes d’étude de capacité d’infrastructures ferroviaires. RECIFE est la plateforme lourde (incluant simulteurs, bases de données, différentes interfaces utilisateurs, etc) et RECIFE PC est une version épurée qui permet de mener des études à partir de données embarquées. 8.5.2 RMC (Responsable: Xavier Gandibleux) URL/DOI: Mots-clés: routage multi-objectif, système temps réel Équipe de développement: Frédéric Beugnies, Xavier Gandibleux, Phillipe Thomin Algorithme multi-objectif de routage sur IP développé, dans le cadre d’études de problèmes d’optimisation rencontrés en gestion prévisionnelle ou temps-réel de réseaux informatiques. 8.5.3 MEETME (Responsable: Xavier Gandibleux) URL/DOI: Mots-clés: bourses de technologie, MO-IP Équipe de développement: Xavier Gandibleux, Brice Pajot MEETME est un prototype développé en 2005 pour Bioencapsulation Research Group (ENITIIA, Nantes) qui permet de construire un horaire tenant compte de plusieurs objectifs et contraintes pour l’organisation de bourses d’échange de technologies. Le système a été utilisé pour le IVth Industrial Technology Trade Fair in Microencapsulation - 20-21 April 2006 - Strasbourg, France. 8.6 Résultats nouveaux 8.6.1 Applications Participants : Frédéric Beugnies, Fabien Degoutin, Xavier Gandibleux, Julien Jorge. Capacité d’infrastructures ferroviaire Participants : externes Roman Bartusiak (SNCF), Xavier Delorme (Ecole des mines de SaintEtienne), Grégory Marlière (INRETS), Joaquı́n Rodriguez (INRETS), Sonia Sobieraj (INRETS), Vincent Tkindt (Polytech’Tours), Brice Pajot (LINA-CD). Un nouvel algorithme basé sur le paradigme des colonies de fourmis a été proposé et s’est montré beaucoup plus efficace que le précédent algorithme basé sur la méthode GRASP, en surclassant tous les précédents résultats du point de vue qualité. La méthodologie permettant l’analyse de stabilité d’une grille horaire a été validée. Une nouvelle plateforme d’étude (RECIFE PC) est disponible. Les données concernant la gare de Lille-Flandre ont été consolidées. Une modélisation fondée sur une hybridation RO-PPC a été proposée en alternative au modèle de set packing. La plateforme RECIFE permet de mener de premières études sur Lille (publications majeures : [23, 11, 14, 16, 19, 20, 32, 41]). Routage IP Participants : externes Sabine Randriamasy (Alcatel R&I - Marcoussis), Phillipe Thomin (LAMIHValenciennes). 260 Rapport d’activité LINA 2003–2006 Un algorithme de routage multi-objectif compatible avec les contraintes temps réel imposées par la couche IP a été validé en mode centralisé sur des configurations de réseaux représentatives (publications majeures : [8, 42, 43, 29]). Ordonnancement Participants : externes Daniel Salazar Aponte (IUSIANI-Las Palmas), Sergio Martinez (ITC-Guanajuato), Nathalie Sauer (INRIA Lorraine-Metz), Marc Sevaux (LESTER-Lorient). Une méthode approchée basée sur un recuit simulé multi-objectif a été proposé pour traiter les instances réelles de ce problème d’ordonnancement. Une méthodologie s’attachant à la notion de robustesse multi-objectif quand un problème présente peu de solutions efficaces différentes a été proposée et appliquée a ce problème particulier d’ordonnancement (publications majeures : [17, 31, 34]). 8.6.2 Optimisation combinatoire multi-objectif Participants : Xavier Gandibleux, Julien Jorge, Anthony Przybylski. Affectation linéaire bi- et multi- objectif Participants : externes Matthias Ehrgott (Auckland-NZ), Jérémie Bourdon (LINA-Combi). Un nouvel algorithme exact a été proposé pour la version bi-objectif de ce problème combinatoire. Vis-à-vis de la littérature, il s’est montré comme étant aujourd’hui l’algorithme le plus efficace pour traiter ce problème, cela pour différentes classes de fonctions objectif. Il est également capable de calculer différents ensembles de solutions. Une caractérisation de la distribution des solutions a été donnée pour la première fois, permettant de justifier l’efficacite du nouvel algorithme. La méthode en deux phase a été pour la première fois étendue afin de traiter des problèmes comportant plus de deux objectifs. Elle n’est pas spécifique au problème d’affectation linéaire, mais elle a été évaluée sur ce dernier. Comparativement à d’autres méthodes publiées, elle s’est révélée beaucoup plus efficace dans tous les cas. (publications majeures : [27, 37, 38, 39, 40]). Sac-à-dos bi-objectif unidimensionnel en variables binaires Participant : externe Kathrin Klamroth (Erlangen-Nurenberg-DE). Il s’agit d’un problème que nous étudions depuis plusieurs années, et pour lequel nous avons proposé des coupes afin de mieux explorer l’espace des solutions à l’aide d’une métaheuristique de type recherche tabou. Le travail autour des coupes a été repris et amélioré. Par ailleurs, c’est un problème qui connait plusieurs algorithmes de résolution efficaces. Fort de nos travaux sur le problème d’affection linéaire, nous avons développons un nouvel algorithme qui s’est déjà révélé très compétitif dans de nombreux cas de figure. Une tentative de caractérisation de la distribution des solutions est ici aussi en cours. (publications majeures : [3, 25, 35]). Synthèse de la littérature Participant : externe Matthias Ehrgott (Auckland-NZ). Xavier G ANDIBLEUX 261 Nous avons consacré une activité soutenue entre 1998 et 2004 au recensement, la classification et l’annotation des travaux présentés dans le domaine de l’optimisation combinatoire multi-objectif MOCO en anglais-, en s’intéressant aux modèles, méthodes de résolution exactes et approchées, applications. Plusieurs synthèses et tutoriaux ont été réalisé à cette occasion. (publications majeures : [1, 2, 6, 9, 21, 24]). Métaheuristiques multi-objectif : méthodes et composants Participants : externes Hiroyuki Morita (Osaka-JP), Naoki Katoh (Kyoto-JP), Joseph Pasia (ViennaAT), Eric Taillard (Yverdon-CH). Travaux par lesquels nous sommes venus sur cette problématique au milieu des années 1990, nous y poursuivons nos efforts en visant le mariage entre connaissances exactes (sous-ensemble de solutions ou problème relaché par exemple) et techniques métaheuristiques (méthodes à population d’individus ou opérateur spécifique). C’est ainsi que nous avons obtenu des résultats significatifs vis-à-vis des méthodes existantes à l’aide de l’opérateur de “chemins reliants” (path relinking en anglais). Nous avons vérifié l’intérêt de la proposition sur différents problèmes (affectation lineaire de très grande taille, ordonnancement de type flow-shop, localisation de facilités). Une approche mixte fondée sur la méthode tabou pour des instances difficiles du problème d’affectation quadratique a été entreprise. (publications majeures : [5, 10, 12, 22, 18, 26, 33, 36]). Techniques hybrides mariant RO et PPC Participants : externes Vincent Barichard (LERIA-Angers), Fabien Le Huédé (SLP-IRRCyN), Marc Sevaux (LESTER-Lorient). Un nouveau champs de questions animé par le projet IROCOI, soutenu par le GDR CNRS RO, s’est mis en place courant 2006. Il concerne les interactions entre outils de recherche opérationnelle et programmation par contraintes pour la résolution de problèmes combinatoires multi-objectifs. (publication majeure : aucune). 8.7 Activités contractuelles FranceTélécom (2006-2007) Responsable: Xavier Gandibleux Montant: 50 000 e Mots-clés: Optimisation multi-objectif, problème de localisation de facilités Participants: Xavier Gandibleux, Fouad Maach Partenaires: France Télécom Il s’agit d’un contrat de recherche. Le problème étudié concerne le déploiement de nouveaux services de communication sur un territoire. Compte-tenu d’une demande prévisionnelle, la question revient à determiner où implanter de nouveaux services (ressources) et quels clients y connecter compte-tenu de deux objectifs à optimiser simultanément (le coût et l’équilibre de charge). Alcatel-Marcoussis Responsable: Xavier Gandibleux (2003-2004) 262 Rapport d’activité LINA 2003–2006 Montant: 100 000 e Mots-clés: Problématique du routage multi-objectif au niveau IP (Reconduction) Participants: Xavier Gandibleux, Frédéric Beugnies Partenaires: Alcatel Il s’agit d’un contrat de recherche. Le problème étudié concerne l’élaboration d’un algorithme de routage multi-objectif compatible avec les exigeance de fonctionnement temps réel de la communication au niveau IP. Alcatel-Anvers (2003-2004) Responsable: Xavier Gandibleux et Marc Sevaux Montant: 70 000 e Mots-clés: Algorithmes d’optimisation du trafic. Participants: Xavier Gandibleux, Frédéric Beugnies, Marc Sevaux Partenaires: Alcatel Il s’agit d’un contrat de recherche. Au départ, il s’agit d’une expertise d’un système développé par Alcatel qui repose sur un modèle multi-objectif. Dans un second temps, il nous a été demandé de proposer une solution opérationnelle alternative efficace à une question relevant du dimensionnement de ressources. 8.8 Actions régionales, nationales et internationales 8.8.1 Actions régionales IROCOI Participants : Xavier Gandibleux, Anthony Przybylski, Frédéric Saubion, Vincent Barichard, Marc Sevaux, Fabien Le Huédé. Le projet IROCOI (Interactions entre outils de RO et PPC pour la résolution de problèmes d’Optimisation multiobjectIf) est exploratoire sur les outils de la RO. Il vise à (i) initier une activité de recherche originale en France sur une problématique de l’optimisation multiobjectif, (ii) favoriser les échanges entre deux communautés (RO et PPC) proches, relevant de l’aide à la décision, qui partagent un intérêt sur des problématiques de l’optimisation et (iii) dynamiser des thèmes relevant de la RO sur le plan régional en promotionnant de nouvelles problématiques. 8.8.2 Actions internationales Dans le cadre d’une année sabatique pour recherches, Xavier Gandibleux a été invité par le Professeur Naoki Katoh de l’Université de Kyoto (Japon) pour une durée de 1 mois avec le support financier du JSPS (Japan Society for the Promotion of Science). Xavier Gandibleux est impliquée dans un projet EPSRC (le “the research council” en GrandeBretagne) sur 3 ans, intitulé “Towards More Effective Multi-objective Meta-Heuristics to Solve Combinatorial Problems”. 8.8.3 Expertise de projets En 2006, Xavier Gandibleux a été expert-évaluateur pour le NWO (Netherlands Organisation for Scientific Research). Xavier G ANDIBLEUX 263 8.9 Diffusion des résultats 8.9.1 Rayonnement – 2005, avec Matthias Ehrgott, présentation de Xavier Gandibleux d’un tutorial ‘1984-2004 – 20 Years of Multiobjective Metaheuristics. But what about the Solution of Combinatorial Problems with Multiple Objectives ?’ en session plénière lors de la conférence EMO’05, March 9-11, 2005, Guanajuato, Mexico. – 2005, avec Matthias Ehrgott, présentation de Xavier Gandibleux d’un tutorial ‘Multiobjective Combinatorial Optimization Problems’ en session plénière lors de la conférence MIC’05, August 22-26, 2005, Vienna, Austria. – 2006, Xavier Gandibleux a été professeur invité à l’université de Vienne (Autriche) afin d’y donner un cycle de séminaires ‘Multiobjective Combinatorial Optimization’. – Xavier Gandibleux a été 3e vice-président de la société française de recherche opérationnelle et d’aide à la décision (ROADEF) avant d’être secrétaire de EURO, association européenne des sociétés de recherche opérationnelle. 8.9.2 Comités de programmes et comités de lecture • Comité de programmes – 2004 : CEC’2004 (Congress on Evolutionary Computation, USA). – 2005 : EMO’2005 (International Conference on Evolutionary Multi-Criterion Optimization, Mexico), MIC’2005 (International Conference on Metaheuristics’, Austria). – 2006 : MOSIM’06 (Conférence Francophone de Modélisation et Simulation, Maroc), CEC’2006 (Congress on Evolutionary Computation’, Canada). • Comité éditorial – Depuis 2002, éditeur associé du journal “4OR, A Quarterly Journal of Operations Research”. – 2005-2008, éditeur associé de la revue ‘INFOR’, (The Information Systems and Operational Research journal), un journal de recherche opérationnelle publié par la société canadienne de recherche opérationnelle. • Comité de direction – 2003-2004, membre du comité de direction du GDR CNRS I3 (Information - Interaction - Intelligence). 8.9.3 Organisation de congrès – 2006 : Xavier Gandibleux est co-organisateur et président de la 7e conférence internationale “MultiObjective Programming and Goal Programming (MOPGP’06), June 12-14, 2006, France (Loire Valley - city of Tours). – 2005 : Xavier Gandibleux est co-organisateur du workshop international “Combination of metaheuristic and local search with Constraint Programming techniques (MLS+CP)”. Univ. Nantes, November 28-29, 2005. Nantes, France. – 2003 : Xavier Gandibleux est organisateur d’une journée d’étude PM2O, groupe de travail “Programmation mathématique multi-objectif” du GDR CNRS I3 (rattaché au GDR RO ensuite), Univ. 264 Rapport d’activité LINA 2003–2006 Valenciennes, France. 8.9.4 Impact sur la formation universitaire Nous intervenons dans le Mastère Recherche “Systèmes d’Aide à la Décision” de l’Université de Nantes et nous sommes porteur du projet d’un mastère international “Optimisation et décision”. Nous intervenons sur des parties d’enseignements spécialisées au département Informatique de Polytech’ Nantes, ainsi qu’à l’Ecole des Mines de Nantes. Nous sommes également présent en enseignement sur le mastère professionnel MIAGE de la faculté des sciences, Université de Nantes. 8.9.5 Transfert de technologie • Brevets – Device and a method for determining routing paths in a communication network in the presence of selection attributes (Sabine Randriamasy and Xavier Gandibleux and José Figueira and Philippe Thomin). Patent 11/25/04. #20040233850. Washington, DC, USA, – Dispositif et procédé de détermination de chemins de routage dans un réseau de communications, en présence d’attributs de sélection’ (Sabine Randriamasy and Xavier Gandibleux and José Figueira and Philippe Thomin). Fiche brevet no 03291744.5-2416. Déposée le 15 juillet 2003. 8.10 Publications de référence de l’équipe hors période [1] M. E HRGOTT et X. G ANDIBLEUX. A survey and annotated bibliography of multiobjective combinatorial optimization. OR Spektrum, 22 :425–460, 2000. [2] M. E HRGOTT et X. G ANDIBLEUX, réds. Multiple Criteria Optimization : State of the Art Annotated Bibliographic Survey, volume 52 of International Series in Operations Research and Management Science. Kluwer Academic Publishers, Boston, 2002. 496 pages. ISBN 1-4020-7128-0. [3] X. G ANDIBLEUX et A. F R ÉVILLE. Tabu search based procedure for solving the 0/1 multiobjective knapsack problem : The two objective case. Journal of Heuristics, 6(3) :361–383, 2000. [4] X. G ANDIBLEUX, N. M EZDAOUI, et A. F R ÉVILLE. A tabu search procedure to solve multiobjective combinatorial optimization problems. In R. C ABALLERO, F. RUIZ, et R. S TEUER, réds., Advances in Multiple Objective and Goal Programming, volume 455 of Lecture Notes in Economics and Mathematical Systems, pages 291–300. Springer Verlag, Berlin, 1997. [5] H. M ORITA, X. G ANDIBLEUX, et N. K ATOH. Experimental feedback on biobjective permutation scheduling problems solved with a population heuristic. Foundations of Computing and Decision Sciences Journal, 26(1) :23–50, 2001. 8.11 Publications de référence de l’équipe dans la période [6] M. E HRGOTT et X. G ANDIBLEUX. Approximative Solution Methods for Multiobjective Combinatorial Optimization. TOP (Spanish journal of operations research), 12(1) :1–90, 2004. Xavier G ANDIBLEUX 265 [7] M. E HRGOTT et X. G ANDIBLEUX. Bound sets for biobjective combinatorial optimization problems. Computers and Operations Research, 2006. In press (available online). [8] X. G ANDIBLEUX, F. B EUGNIES, et S. R ANDRIAMASY. Martins’ algorithm revisited for multiobjective shortest path problems with a maxmin cost function. 4OR : Quarterly journal of Operations Research, 4(1) :47 – 59, March 2006. [9] X. G ANDIBLEUX et M. E HRGOTT. 1984-2004 – 20 Years of Multiobjective Metaheuristics. But What About the Solution of Combinatorial Problems with Multiple Objectives ? In C. A. C OELLO Y C OELLO , A. H. AGUIRRE, et E. Z ITZLER , réds., Evolutionary Multi-Criterion Optimization, volume 3410 of Lecture Notes in Computer Science, pages 33–46. Springer, 2005. [10] X. G ANDIBLEUX, H. M ORITA, et N. K ATOH. Evolutionary operators based on elite solutions for biobjective combinatorial optimization. In C. C. C OELLO et G. B. L AMONT, réds., Applications of Multi-Objective Evolutionary Algorithms, chap. 23, pages 555–579. World Scientific, 2004. ISBN 981-256-106-4. 8.12 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [11] X. D ELORME, X. G ANDIBLEUX, et J. RODRIGUEZ. GRASP for set packing problems. European Journal of Operational Research, 153(3) :564–580, 2004. [12] X. G ANDIBLEUX, H. M ORITA, et N. K ATOH. A population-based metaheuristic for solving assignment problems with two objectives. Journal of Mathematical Modelling and Algorithms, 2004. Accepted (March 2004) to be published. [13] A. P RZYBYLSKI, X. G ANDIBLEUX, et M. E HRGOTT. The biobjective integer minimum cost flow problem – incorrectness of Sedeno-Noda and Gonzalez-Martin’s algorithm. Computers and Operations Research, 33(5) :1459–1463, May 2006. D1. Colloques de diffusion internationale avec comité de lecture et actes [14] X. D ELORME, X. G ANDIBLEUX, et J. RODRIGUEZ. Stability evaluation of a railway timetable at the station level. In 12th IFAC Symposium on Information Control Problems in Manufacturing (INCOM’06) proceedings, May 2006. [15] M. E HRGOTT et X. G ANDIBLEUX. Multiple objective combinatorial optimization - a tutorial. In T. T. T ETSUZO TANINO et M. I NUIGUCHI, réds., Multi-Objective Programming and GoalProgramming ; theory and applications, Advances in Soft Computing, pages 3–18. Springer, 2003. [16] X. G ANDIBLEUX, X. D ELORME, et V. T’K INDT. An ant colony algorithm for the set packing problem. In M. D ORIGO, M. B IRATTARI, C. B LUM, L. G AMBARDELLA, F. M ONDADA, et T. S TUTZLE, réds., Ant Colony Optimization and Swarm Intelligence, volume 3172 of Lecture Notes in Computer Sciences, pages 49–60. Springer, 2004. [17] X. G ANDIBLEUX, J. J ORGE, S. M ARTINEZ, et N. S AUER. Premier retour d’expérience sur le flowshop biobjectif et hybride à deux étages avec une contrainte de blocage particulière. In M. G OUR GAND et F. R IANE, réds., Actes de MOSIM’06 : 6ème Conférence Francophone de Modélisation et 266 Rapport d’activité LINA 2003–2006 Simulation. 3-5 avril 2006. Rabat, Maroc, volume II, pages 1355–1362. Lavoisier, 2006. ISBN : 2-7430-0892-X. [18] X. G ANDIBLEUX, H. M ORITA, et N. K ATOH. Use of a genetic heritage for solving the assignment problem with two objectives. In C. F ONSECA, P. F LEMING, E. Z ITZLER, K. D EB, et L. T HIELE, réds., Evolutionary Multi-Criterion Optimization, volume 2632 of Lecture Notes in Computer Sciences, pages 43–57. Springer, 2003. D2. Colloques de diffusion nationale avec comité de lecture et actes [19] F. D EGOUTIN, J. RODRIGUEZ, et X. G ANDIBLEUX. Première évaluation des performances d’un modèle CSP pour le problème de saturation d’infrastructures ferroviaires. In J.-C. B ILLAUT et C. E SSWEIN, réds., Proceedings of the ROADEF 2005 - French National OR Conference, Collection Sciences, Technologie “Informatique”, pages 277–294. Presses Universitaires François Rabelais, 2005. ISBN :2-86906-196-X. [20] X. D ELORME, X. G ANDIBLEUX, et J. RODRIGUEZ. Résolution d’un problème d’évaluation de capacité d’infrastructure ferroviaire. In Actes du colloque sur l’innovation technologique pour les transports terrestres (TILT), volume 2, pages 647–654. édité par le GRRT, Lille, 2003. F1. Ouvrages ou chapitres d’ouvrage scientifique [21] M. E HRGOTT, J. F IGUEIRA, et X. G ANDIBLEUX. Special issue ‘Multiple Objective Discrete and Combinatorial Optimization’. Annals of Operations Research, 147. Springer, October 2006. (Guest Eds). [22] X. G ANDIBLEUX, M. S EVAUX, K. S ÖRENSEN, et V. T’ KINDT, réds. Metaheuristics for Multiobjective Optimisation, volume 535 of Lecture Notes in Economics and Mathematical Systems. Springer, Berlin, 2004. 249 pages. ISBN 3-540-20637-X. H. DEA, thèses et habilitations [23] X. D ELORME. Modélisation et résolution de problèmes liés à l’exploitation d’infrastructures ferroviaires. PhD thesis, Université de Valenciennes, France, 10 décembre 2003. Thèse de Doctorat. [24] X. G ANDIBLEUX. Optimisation multiobjectif : problèmes combinatoires, résolutions exactes et approchées, applications. PhD thesis, Université de Valenciennes, France, 12 décembre 2003. Habilitation à diriger des recherches. [25] J. J ORGE. Algorithme pour la résolution exacte d’un 01-IP bi-objectif - Cas du problème de sac à dos. Master’s thesis, Université de Nantes, France, septembre 2006. Mastère 2 Recherche “système d’aide à la décision”. [26] F. M AACH. Bi-objective multi-assignment capacitated location-allocation problem. Master’s thesis, Ecole des mines de Nantes - VirginiaTech, France, October, 10 2006. [27] A. P RZYBYLSKI. Méthode en deux phases pour la résolution exacte de problèmes d’optimisation combinatoire comportant plusieurs objectifs : nouveaux développements et application au probléme d’affectation linéaire. PhD thesis, Université de Nantes, France, 8 décembre 2006. Thèse de Doctorat. Xavier G ANDIBLEUX 267 I. Rapports de contrats [28] F. B EUGNIES et X. G ANDIBLEUX. Routage multicritère dans les réseaux IP- RMC1b. Rapport final décembre 2003. Rapport technique, Convention 2002C268 VALUTEC-UVHC/ALCATEL, 2003. [29] F. B EUGNIES et X. G ANDIBLEUX. Routage multicritère dans les réseaux IP- RMC2. Rapport final janvier 2005. Rapport technique, Convention 2003C287 VALUTEC-UVHC/ALCATEL, 2005. [30] F. B EUGNIES, X. G ANDIBLEUX, M. S EVAUX, et P. T HOMIN. Traffic optimization algorithms. Collaboration ALCATEL NGNSM - LAMIH. Rapport intermédiaire octobre 2003. Rapport final janvier 2005. Rapport technique, Convention 2003C249 VALUTEC-UVHC/ALCATEL, 2005. J. Rapports internes [31] D. S. A PONTE, X. G ANDIBLEUX, J. J ORGE, et M. S EVAUX. A robust-solution-based methodology to solve multiple-objective problems with uncertainty. Rapport technique, IUSIANI, University of Las Palmas de Gran Canaria, August 2006. Submitted (MOPGP’06 post-conference volume LNEMS, Springer). [32] F. D EGOUTIN, H. C AMBAZARD, J. RODRIGUEZ, et X. G ANDIBLEUX. A CSP model and VNSLNS approach for the railway saturation problem. Rapport technique, LAMIH, Université de Valenciennes, November 2005. Accepted ; in revision (Journal of Mathematical Analysis and Applications). [33] X. D ELORME, X. G ANDIBLEUX, et F. D EGOUTIN. Evolutionary, constructive and hybrid procedures for the biobjective set packing problem. Rapport technique 2005-500-011, Ecole des mines de Saint-Etienne, September 2005. In revision (European Journal of Operational Research). [34] X. G ANDIBLEUX, J. J ORGE, D. S. A PONTE, et S. M ARTINEZ. Solving methods and robustness methodology for a two stage bi-objective hybrid flowshop problem with a particular blocking constraint. Rapport technique, LINA, Université de Nantes, November 2006. [35] X. G ANDIBLEUX et K. K LAMROTH. Cardinality bounds for multiobjective knapsack problems. Rapport technique, LINA, Université de Nantes, August 2005. [36] J. M. PASIA, X. G ANDIBLEUX, K. F. D OERNER, et R. F. H ARTL. Initial population constructed, heuristic bound sets and path relinking operators for a bi-objective flowshop scheduling problem. Rapport technique, University of Vienna, September 2006. Submitted (EMO’07 conference volume - LNCS, Springer). [37] A. P RZYBYLSKI, X. G ANDIBLEUX, et M. E HRGOTT. The biobjective assignment problem. Rapport technique no 05.07, LINA, Université de Nantes, December 2005. In revision (European Journal of Operational Research). [38] A. P RZYBYLSKI, X. G ANDIBLEUX, et M. E HRGOTT. A recursive algorithm for finding all extremal supported nondominated points in the outcome set of a multi-objective integer linear problem. Rapport technique, LINA, Université de Nantes, May 2006. [39] A. P RZYBYLSKI, X. G ANDIBLEUX, et M. E HRGOTT. Two phase method with p objectives. application to the three-objective assignment problem. Rapport technique, LINA, Université de Nantes, June 2006. 268 Rapport d’activité LINA 2003–2006 [40] A. P RZYBYLSKI, X. G ANDIBLEUX, et M. E HRGOTT. Two phase method with three objectives applied to the assignment problem. Rapport technique, LINA, Université de Nantes, August 2006. Submitted (MOPGP’06 post-conference volume - LNEMS, Springer). [41] J. RODRIGUEZ, X. D ELORME, X. G ANDIBLEUX, G. M ARLI ÈRE, R. BARTUSIAK, F. D EGOU TIN , et S. S OBIERAJ. Modèles et outils pour l’analyse de la capacité ferroviaire. Rapport technique, INRETS-ESTAS, Villeneuve d’Ascq, Juillet 2006. Submitted (RTS - Recherche Transports Sécurité). K. Brevets [42] S. R ANDRIAMASY, X. G ANDIBLEUX, J. F IGUEIRA, et P. T HOMIN. Dispositif et procédé de détermination de chemins de routage dans un réseau de communications, en présence d’ attributs de sélection’, 2003. Fiche brevet no 03291744.5-2416. Déposée le 15 juillet 2003. [43] S. R ANDRIAMASY, X. G ANDIBLEUX, J. F IGUEIRA, et P. T HOMIN. Device and a method for determining routing paths in a communication network in the presence of selection attributes. Patent 11/25/04. #20040233850. Washington, DC, USA, 2004. Équipe COD : COnnaissances et Décision 9.1 Composition de l’équipe Responsable : Pascale Kuntz Chercheurs-enseignants : – Henri Briand Professeur, Ecole Polytechnique de l’Université de Nantes, – Maurice Bernadet Maı̂tre de conférences, Ecole Polytechnique de l’Université de Nantes, – Julien Blanchard Maı̂tre de conférences, Ecole Polytechnique de l’Université de Nantes, – Fabrice Guillet Habilité à diriger des recherches (12/06), Ecole Polytechnique de l’Université de Nantes, – Mounira Harzallah Maı̂tre de conférences, IUT OGP, Université de Nantes, – Ivan Kojadinovic Habilité à diriger des recherches (11/06), Ecole Polytechnique de l’Université de Nantes, – Pascale Kuntz Professeur, Ecole Polytechnique de l’Université de Nantes, – Rémi Lehn Maı̂tre de conférences, Formation continue de l’Université de Nantes, – Fabien Picarougne Maı̂tre de conférences, Ecole Polytechnique de l’Université de Nantes, – Gérard Ramstein Maı̂tre de conférences, Ecole Polytechnique de l’Université de Nantes, – Francky Trichet Maı̂tre de conférences, Facultés des lettres, Université de Nantes, Chercheurs associés : – Régis Gras Professeur émerite, Ecole Polytechnique de l’Université de Nantes, – Philippe Peter Maı̂tre de conférences, Ecole Polytechnique de l’Université de Nantes, 269 270 Rapport d’activité LINA 2003–2006 Chercheurs post-doctorants : – Bruno Pinaud Post-doctorant, Ecole Polytechnique de l’Université de Nantes, 2006 Chercheurs doctorants : – Nicolas Beaume co-encadrement INSERM - Université de Nantes, 2004, – Emmanuel Blanchard Université de Nantes, 2004, – Jérôme David Université de Nantes, 2003, – Stéphane Daviet Université de Nantes, 2004, – Hélène Desmier Université de Nantes, 2004, – Xuan Hiep-Huynh co-tutelle Université de CanTho, Vietnam - Université de Nantes, 2003, – Julien Lorech co-encadrement INSERM - Université de Nantes, 2003, – Claudia Marinica Université de Nantes, 2006, – Daniel Porumbel Université de Nantes, 2006, – Thomas Raimbault co-encadrement LERIA, 2004, 9.2 Présentation et objectifs généraux 9.2.1 Historique À l’origine, la thématique fondatrice de l’équipe, l’Extraction de Connaissances dans les Données (ECD), a émergé au début des années 90 à la suite d’une rencontre entre un enseignant-chercheur en base de données (H. Briand) et un statisticien (R. Gras) ; cela a donné lieu à l’une des premières thèses (L. Fleury, 95) en France explicitement ancrée dans le domaine. L’arrivée de P. Kuntz en 1998 -qui pris le relais de l’animation de l’équipe en 2003- a renforcé les compétences de l’équipe en classification et a contribué à approfondir les recherches, impulsées par F. Guillet, sur l’intégration dans les algorithmes de fouille des préférences des utilisateurs. Depuis 2001, de jeunes chercheurs ont rejoint l’équipe lui permettant d’une part, d’étendre ses compétences en ECD et en Aide multicritère à la décision (R. Lehn, I. Kojadinovic, F. Picarougne), et d’autre part de consolider le lien avec le champ connexe et fortement complémentaire, qu’est l’Ingénierie des connaissances (M. Harzallah, F. Trichet). Sur le plan interdisciplinaire, qui est dans notre domaine intimement lié aux travaux théoriques que nous menons, les compétences spécifiques de collègues qui ont rejoint l’équipe ont permis de renforcer significativement notre visibilité dans deux domaines : en Gestion des connaissances en entreprise (M. Harzallah, initialement section CNU 63) et en Sciences de la Vie (G. Ramstein qui a effectué en 2000 une reconversion thématique). COD : COnnaissances et Décision 271 9.2.2 Les thèmes de recherche Avec comme objectif opérationnel in fine la diffusion de connaissances utiles et intelligibles pour l’utilisateur -ou les classes d’utilisateurs-, les travaux de l’équipe s’inscrivent dans un continuum “modélisation-extraction” des connaissances. Ils se structurent autour de deux axes fortement corrélés l’Ingénierie des ontologies et la Fouille de données complexes, et un axe transversal portant sur l’Intégration des préférences des utilisateurs. Ingénierie des ontologies Nos travaux portent sur la représentation conceptuelle des connaissances par des ontologies, et sur leur opérationnalisation dans des Systèmes à Base de Connaissances. Trois problématiques principales sont ainsi abordées : – la construction au sens de leur représentation formelle : nous étudions en particulier l’apport des modèles de graphes conceptuels et l’expressivité des langages du Web sémantique (e.g. RDF/s, OWL) ; – l’alignement au sens de l’interopérabilité sémantique : nos travaux portent sur les ontologies lourdes qui intègrent la sémantique du domaine sous forme d’axiomes, et sur les taxonomies associées ou non à des corpus textuels ; – l’intégration des ontologies au sein de Systèmes à Base de Connaissances : nous nous intéressons en particulier à l’acquisition des connaissances et à leur modélisation via des modèles graphiques interactifs adaptés. Les ontologies considérées sont des ontologies de domaine, des ontologies de représentation et des ontologies de PSM (Problem-Solving Method). Fouille de données complexes Tout en incorporant l’intégration des connaissances externes et la dimensionnalité des données, la terminologie “données complexes” recouvre dans son usage le plus courant des données de nature différente (texte, image, vidéo, . . .). Nous l’utilisons dans une acceptation plus spécifique ; nous nous intéressons dans le cadre du “post-mining” aux données qui sont des résultats volumineux d’algorithmes automatiques, et aux données intégrant des structures relationnelles modélisables par des graphes. 1. le post-mining de règles d’association. Les règles d’association ont été un des concepts les plus utilisés de la dernière décennie pour exprimer simplement des tendances implicatives de type A → B entre des sous-ensembles d’attributs. Il est maintenant bien connu que les algorithmes d’extraction engendrent des ensembles de règles trop volumineux pour une analyse in extenso de l’utilisateur. Nous abordons ce problème par deux approches complémentaires : le filtrage des règles pour restreindre les résultats aux règles les plus pertinentes ; la structuration des ensembles de règles pour une représentation synthétique mettant en évidence les principales relations. 2. la classification de structures relationnelles. Trouvant principalement leur motivation applicative dans des travaux sur la Toile, la majorité des travaux actuels en “Link Analysis” considèrent comme données un très grand réseau de relations et cherchent à en extraire les caractéristiques. Nous nous intéressons à un problème connexe : l’analyse, non plus d’un grand graphe unique, mais d’un corpus de graphes. Il s’agit alors de construire, dans un cadre non supervisé, des classifications qui intègrent à la fois des propriétés combinatoires, des propriétés sémantiques -ou fonctionnelles- et parfois aussi des propriétés topologiques lorsque les graphes sont plongés dans des espaces géométriques. 272 Rapport d’activité LINA 2003–2006 L’intégration des préférences L’objectif général est d’intégrer l’utilisateur dans la “boucle de découverte” afin de combiner les potentialités humaines de jugement avec les capacités de calcul des machines. Nous abordons cette vaste problématique selon deux optiques : la mise au point de modèles développés dans le cadre de l’Aide Multicritère à la Décision qui représentent numériquement des préférences à un utilisateur ; le pilotage des algorithmes par l’utilisateur -qui joue alors le rôle d’une heuristique- via des interfaces visuelles interactives adaptées. 1. Aide Multicritère à la Décision. Cette approche vise à prendre en compte simultanément différents points de vue. Notre démarche se place dans le cadre des méthodes d’utilité multiattribut : chaque alternative est synthétisée en un score global par agrégation des différents points de vue, et le choix d’une alternative se déduit d’une comparaison des scores. Un des intérêts majeurs de cette approche est de pouvoir représenter une grande variété de stratégies grâce à l’étendue des fonctions d’aggrégation. Nos travaux portent en particulier sur l’analyse de ces fonctions. 2. Visualisation interactive. Cette approche vise à intégrer la part subjective de l’utilisateur difficile à verbaliser préalablement. Lorsqu’il dispose d’un système interactif, la démarche de l’utilisateur peut être associée à une stratégie de navigation dans un environnement complexe, qui se situe dans un continuum entre la requête (but précis et bien défini) et le butinage (besoin mal exprimé initialement qui le conduit à poursuivre sa recherche jusqu’à une certaine satisfaction). Dans le cadre de la fouille de règles d’association, nous nous intéressons aux représentations formelles permettant de définir l’espace de navigation ; aux représentations visuelles associées (graphes, métaphores graphiques) ; et à l’implémentation interactive d’un processus de fouille. 9.2.3 Perspectives Deux mots clés résument les enjeux actuels du traitement des données et des connaissances : le passage à l’échelle et la complexité des entités manipulées. Sans perdre de vue la volumétrie -comme contrainte pour les approches développées-, les verrous scientifiques sur lesquels nous nous concentrons concernent principalement la complexité : (i) la prise en compte de structures relationnelles dans les données et de leur évolution temporelle ; (ii) l’acquisition et l’intégration de connaissances du domaine ; (iii) l’intégration des préférences de l’utilisateur et la multiplication des points de vue. Si nos recherches se poursuivent sur chacun des points, notre challenge collectif majeur est la combinaison opérationnelle des aspects (ii) et (iii) dans un processus d’extraction de connaissances. Ce challenge est partagé par de nombreux projets pour des applications et des données fort différentes (voir par exemple le rapport prospectif récent pour la recherche en technologies logicielles). Pour démontrer la faisabilité opérationnelle de notre approche, nous nous plaçons dans le cadre expérimental de la Fouille de règles qui reste une des approches les plus utilisées en ECD (voir sondage KDD Nuggets 2006), et pour laquelle nous avons une expertise reconnue. Un premier pas a été franchi dans l’équipe par le développement de prototypes intégrant des interfaces visuelles interactives en Fouille de règles et en Ingénierie des Connaissances, ainsi qu’une boı̂te à outils logicielle en Aide Multicritère à la Décision. L’objectif visé est la réalisation et la mise en logiciel libre d’un Système Interactif de Fouille de Règles qui intègre véritablement les différents aspects. Si les recherches actuelles sont fortement stimulées par les nouveaux défis associés aux avancées technologiques, transformant souvent l’efficience en critère de validation, cette question de la validation reste fondamentale et très largement ouverte. Nous commençons à l’aborder selon deux angles : statistique pour la robustesse, et cognitif par l’analyse des traces. COD : COnnaissances et Décision 273 9.3 Fondements scientifiques 9.3.1 De l’Analyse de Données à la Fouille de Connaissances L’explosion des capacités de stockage de la dernière décennie associée à l’essor des nouvelles technologies du Web sémantique renouvelle le défi de l’analyse des données classique : il s’agit d’extraire de bases de données complexes et volumineuses des connaissances pertinentes pour la prise de décision en s’appuyant sur les préférences des utilisateurs et les connaissances préalables du domaine. Les nouveaux verrous à lever se déclinent selon quatre aspects : 1. la nature des données et des connaissances. Fortement hétérogènes, intégrant des structures relationnelles complexes, les données complexes ne se modélisent plus “simplement” sous la forme de tableaux Individus x Variables. L’intégration de dimensions multiples associées à des sémantiques différentes mais complémentaires nécessite pour leur traitement la construction de nouvelles métriques et de nouveaux espaces de représentation. 2. leur volumétrie. Si l’explosion des capacités de calcul des années 80-90 avait pu avoir pour conséquence de nous éloigner quelque peu des contraintes de calcul, l’explosion de la taille des données à traiter nous renvoie à la quête d’algorithmes performants et au recours à des méthodes d’échantillonnage qui ne masquent pas les fameuses “pépites” de connaissances du data mining. 3. leur représentation conceptuelle. La prise en compte de connaissances de sources multiples, décrites par des modèles et des langages associés différents, nécessite, au-delà de la méthodologie des outils adaptés à l’acquisition des connaissances, et rend la question de l’interopérabilité cruciale pour l’opérationnalisation. 4. leurs usages. La multiplicité des points de vue engendrée par la complexité des connaissances manipulées et la non-unicité des finalités en terme d’usage conduit à l’intégration des connaissances-métiers et des préférences des utilisateurs dans les processus de traitement. Cette intégration contribue à garantir leur intelligibilité et leur pertinence pour le domaine d’application ; et par voie de conséquence leur intégration dans le cycle décisionnel. Ainsi, si de par leurs fondements historiques l’Ingénierie des connaissances (IC) et la Fouille de données (FD) ont connu jusque là un développement indépendant, les nouveaux défis à relever par la mutation profonde concernant l’organisation et le traitement des connaissances justifient leur rapprochement. Les apports sont mutuels : (i) de la FD vers l’IC : les techniques de fouille peuvent contribuer à faciliter la structuration des connaissances en amont et à améliorer leur validation ; (ii) de l’IC vers la FD : les limites maintenant éprouvées des algorithmes automatiques de FD de première génération focalisés essentiellement sur la maı̂trise de la complexité algorithmique conduisent à la nécessaire intégration dans la recherche des structures des connaissances du domaine ; certains parlent de “fouille intelligente de données”. Et, au-delà de ces intérêts bilatéraux, stimulés par l’essor des nouveaux standards associés aux technologies du Web sémantique, les données complexes tendent à se banaliser : la Fouille de données initialement adaptée aux enregistrements de bases de données relationnelles migre vers la Fouille de connaissances (Knowledge Mining). 274 Rapport d’activité LINA 2003–2006 9.3.2 Vers la modélisation et l’extraction adaptatives des connaissances En tant qu’activité constructive visant à expliciter et à modéliser des connaissances à travers un couplage entre des utilisateurs et des artéfacts informatiques, l’IC intégre par essence dans sa démarche le contexte humain et organisationnel. Si l’importance de cet aspect en FD fut noté dès l’article fondateur de Frawley et al. 19921 , sa prise en compte effective est beaucoup plus récente. L’ambition actuelle de la FD est de dépasser l’assistance technologique à la manipulation et à l’interprétation des données en considérant explicitement l’utilisateur comme une composante à part entière du processus dynamique de découverte ; “The process of knowledge discovery in databases : a human-centered approach”, ainsi que l’énoncent R.J. Brachman et T. Anand dans un des recueils de référence du domaine2 . Bien que le rapprochement ne soit pas fréquent dans la littérature, il nous semble que d’un point de vue épistémologique, un parallèle fécond peut être établi avec l’Aide à la Décision dans son acception hexagonale. L’évolution de la recherche opérationnelle classique vers l’aide multicritère à la décision est caractérisée par un passage du problème mathématique d’optimisation vers un problème qualifié par certains de sémiotique où l’attention se décale vers les préférences pragmatiques du décideur. Associé au développement des Sciences Cognitives, le nouveau glissement plus récent vers les systèmes anthropocentrés d’aide à la décision3 vise à introduire dans la méthodologie les stratégies cognitives du décideur. C’est sous cette influence que se placent une partie de nos travaux. Reste à définir un cadre opérationnel. Si pour la modélisation des connaissances l’IC pourrait se baser sur de nombreuses recherches en psychologie cognitive dans la tradition de l’Intelligence Artificielle, peu de travaux ont, à notre connaissance, été consacrés à la caractérisation de la tâche de l’utilisateur, comme processus cognitif, dans la démarche menant à la découverte dans les données de “connaissances potentiellement utiles”. Lorsque les préférences de l’utilisateur peuvent être préalablement explicitées nous cherchons à les intégrer. Sinon, pour contourner le manque de modèles, ou la difficulté de leurs instanciations, nous avons recours à des outils de visualisation et d’interaction : il s’agit d’apporter à l’utilisateur un substrat artificiel qui transcrive un grand nombre d’informations et qui soit un support à ses connaissances et à son intuition pour lui permettre de découvrir de nouvelles relations et imaginer de nouvelles questions. L’apport de ces outils intervient tout au long du processus : pour l’acquisition de connaissances complexes, pour l’intégration dynamique des préférences des utilisateurs lors de la fouille, et pour la restitution de résultats intelligibles. La popularisation croissante des technologies graphiques, tant logicielles que matérielles4 , accompagne l’essor des travaux de la communauté InfoViz en Visualisation d’Information5 . Cependant, les nouveaux outils développés visent souvent la généricité et intègrent difficilement la sémantique des données et les spécificités du domaine d’utilisation6 . Comme successeur de l’analyse exploratoire des données (Exploratory Data Analysis), la récente Fouille Visuelle de Données7 s’est essentiellement concentrée sur le traitement des dimensions de description ; l’accent est mis sur la conception de représentations de données volumineuses adaptées aux capacités remarquables du système humain de 1 W.J. Frawley, G. Piatetsky-Shapiro, et C.J. Matheus. Knowledge Discovery in Databases : an overview, AI Magazine, Fall :57-70, 1992. 2 U.M. Fayyad, G. Piatetsky-Shapiro, et P. Smyth eds. Advances in Knowledge Discovery and Data Mining, pp. 37-58, 1996. 3 J.-P. Barthélemy, R. Bisdorf, et P. Lenca eds. Special issue on Human-Centered processes, Eur. J. of Operational Research, 136(2), 2002. 4 L’équipe COD a accès depuis début 2006 à Polytech’Nantes à un équipement stéréoscopique permettant d’explorer l’apport de la réalité virtuelle en Fouille de Données. 5 C. Ware. Information visualization : Perception for design, Interactive Technologies, Morgan Kaufmann, 2000. 6 R.A. Burkhard. Learning from architects : The difference between knowledge visualization and information visualization, Proc. of the 8th Int. Conf. on Information Visualization, pp. 519-524, 2004. 7 D.A. Keim, et H.-P. Kriegel. Visualization techniques for mining large databases : a comparison, IEEE Trans. on Knowledge and Data Engineering, 8(6), pp. 923-938, 1996. COD : COnnaissances et Décision 275 représentation visuelle. L’intégration dynamique des points de vue et des connaissances exogènes reste un champ à explorer. 9.4 Domaines d’applications Les ambitions affichées conjointement par l’Ingénierie des Connaissances et la Fouille de Données sont en partie empiriques8 : elles visent l’efficience dans un contexte d’usages et de pratiques. Par conséquent, une part des travaux est intimement liée aux applications. Nous développons depuis plusieurs années des relations interdisciplinaires étroites dans deux champs disciplinaires : en Management et en Sciences de la Vie. Ces relations qui se développent dans des projets communs (e.g. Réseau d’excellence européen INTEROP, Génopôle Ouest, ACI CNRS, CIFRE) ont acquis maintenant une maturité scientifique qui a conduit récemment à des co-publications dans des revues internationales (IEEE SMC, J. of Universal Knowledge Management, Eur. Physical J. B). De plus, notons que, de par l’historique de l’équipe, nous entretenons des liens privilégiés avec le champ de la didactique des mathématiques -qui fut à l’origine le domaine applicatif majeur de l’analyse statistique implicative- ; ces relations se concrétisent notamment à travers des participations conjointes à des colloques du domaine. 9.4.1 Management : Gestion des connaissances et des compétences en entreprise Les travaux concernent l’ingénierie et la gestion des compétences et des connaissances en entreprise. Il s’agit de développer des modèles permettant de représenter les compétences et connaissances souvent perçues comme le capital immatériel de l’entreprise ; puis d’étudier leur intégration opérationnelle dans des serveurs de connaissances couplés au Système d’Information. L’accent est mis sur le couplage entre les compétences et connaissances existantes et celles requises par les process de l’entreprise. Nos travaux s’orientent en particulier sur la construction d’ontologies de compétences, et la définition d’un langage unifié de modélisation d’entreprise (autour d’UEML : Unified Enterprise Modeling Langage). D’autre part, nous avons acquis une expérience de terrain dans différents projets en collaboration avec des industriels sur l’acquisition des connaissances et le développement de Systèmes à Base de Connaissances. 9.4.2 Sciences de la Vie : Biologie moléculaire et Cognition animale Biologie moléculaire Le développement récent des techniques biologiques aux niveaux moléculaire et cellulaire a suscité de nouveaux champs d’application en Extraction des Connaissances à partir des Données. Le volume et la complexité des informations issues du génome et du transcriptome constituent un défi pour cette discipline. Nous avons privilégié les deux axes suivants : la recherche de nouveaux membres de la superfamille des cytokines qui sont impliquées dans la réaction immunitaire, et l’analyse de données issues de puces à ADN. Les collaborations sont menées essentiellement avec deux équipes de l’INSERM : l’équipe U601 dans le cadre des activités de Ouest-Génopole et l’équipe U533. Une thèse co-encadrée a été soutenue en 2004 et deux thèses en co-encadrement sont en cours. Cognition animale 8 B. Bachimont. Pourquoi n’y a-t-il pas d’expérience en ingénierie des connaissances ?, IC’2004, pp.53-64, 2004. 276 Rapport d’activité LINA 2003–2006 Ces recherches sont menées en collaboration avec des spécialistes du comportement des insectes sociaux (Laboratoire de Cognition Animale, CNRS UMR 550). Les objectifs de la collaboration sont triples : (i) analyser les données complexes issues d’expérimentation in vivo de laboratoire pour mieux comprendre d’une part les propriétés structurelles et fonctionnelles des structures construites par les insectes sociaux (ex : réseaux) et d’autre part les déterminants de leurs comportements ; (ii) participer au développement de simulateurs contribuant à la validation des hypothèses émises par les biologistes sur les comportements individuels des agents ; (iii) in fine s’inspirer des modèles ainsi élaborés qui sont par essence décentralisés pour imaginer de nouvelles heuristiques en traitement de l’information. 9.5 Résultats nouveaux 9.5.1 Ingénierie des ontologies Alignement d’ontologies [1, 4, 6, 76] Participants : Emmanuel Blanchard, Henri Briand, Jérôme David, Régis Gras, Fabrice Guillet, Mounira Harzallah, Francky Trichet. Nous avons développé deux approches : l’une consacrée aux ontologies lourdes intégrant la sémantique du domaine sous forme d’axiomes, l’autre consacrée aux taxonomies instanciées sur un corpus textuel. La première approche consiste à identifier et pondérer des appariements de concepts et de relations en s’appuyant sur la comparaison du niveau axiomatique des ontologies dites lourdes ; elle repose sur une analyse structurelle du niveau intentionnel des ontologies. Le niveau axiomatique d’une ontologie lourde intègre à la fois des schémas d’axiomes tels que les propriétés algébriques des relations ou les abstractions de concepts (cf. l’expressivité du langage OWL), et des axiomes de domaine qui eux correspondent aux connaissances ne pouvant s’exprimer à l’aide des schémas d’axiomes. La représentation de ce niveau à l’aide d’un modèle de graphes doté de mécanismes de raisonnement basés sur l’homomorphisme facilite la comparaison topologique des axiomes. Cet aspect est au coeur de la méthode d’alignement que nous proposons : recherche d’identités de concepts et/ou de relations par rapprochement des schémas d’axiomes puis comparaison structurelle des Axiomes de Domaine (dans lesquels sont impliqués les concepts/relations) représentés sous forme de graphes conceptuels. La seconde approche prend sa source dans nos recherches en fouille de données sur les règles d’association. Il s’agit d’une approche extensionnelle et asymétrique ; son idée directrice est d’aider un utilisateur à aligner deux ontologies en lui proposant des règles d’association entre concepts. Nous considérons qu’une ontologie est un graphe orienté de concepts structurés par une relation de subsomption, où chaque concept est décrit dans des documents textuels contenant des termes caractéristiques. L’approche de décompose alors en deux étapes consécutives fondées sur la mesure d’intensité d’implication : l’extraction dans les documents des termes caractéristiques de chaque concept ; puis l’extraction d’un ensemble minimal, au sens d’un critère de réduction des redondances, de règles d’association entre concepts. En complément nous menons une analyse théorique axée sur les propriétés métriques et les distributions statistiques des mesures de similarité définies sur des couples de concepts dans des ontologies structurées par la relation de subsomption ; et nous cherchons à étendre ces mesures à d’autres types de relations. COD : COnnaissances et Décision 277 Raisonnement avec les graphes conceptuels [56, 74, 75] Participants : Henri Briand, Rémi Lehn, Thomas Raimbault, Francky Trichet. Nos travaux portent d’une part sur l’utilisation des graphes conceptuels pour l’ingénierie des ontologies lourdes, et d’autre part sur l’interrogation de documents OWL dans le modèle des graphes conceptuels. Nos travaux en ingénierie des ontologies lourdes s’appuient sur le langage de représentation OCGL (Ontology Conceptual Graph Language) qui est une extension des graphes conceptuels et son ontologie de représentation MetaOCGL qui définit les primitives du paradigme des graphes conceptuels et les règles de représentation sous-jacente. Nous avons développé l’atelier TooCom qui, outre la représentation formelle et l’opérationnalisation d’une ontologie lourde, offre différentes fonctionnalités liées aux activités d’évaluation et d’alignement d’ontologies lourdes. Ces fonctionnalités s’appuient sur des mécanismes de raisonnement propres au formalisme de graphes ; en particulier, nous utilisons la projection (homomorphisme de graphes) comme l’opérateur au cœur de tout processus de raisonnement et montrons que le modèle des graphes s’avère être une solution efficace pour l’ingénierie des ontologies lourdes puisque les axiomes sont naturellement représentables en termes de graphes et facilement exploitables à l’aide d’opérations de graphes tant en termes de comparaison que de visualisation. Nous nous intéressons d’autre part aux compléments d’expressivité entre les langages du Web sémantique et le modèle des graphes conceptuels. Nous cherchons à regrouper dans un unique environnementcelui des graphes conceptuels- à la fois la représentation de documents OWL ainsi que des outils de raisonnement sur ces documents. Nous avons proposé une traduction générique d’un document OWL en GC et développé des opérateurs permettant d’interroger un document OWL et d’en vérifier sa validité. 9.5.2 Fouille de données Classification et comparaison de mesures de qualité [66, 81, 82, 126] Participants : Julien Blanchard, Henri Briand, Régis Gras, Fabrice Guillet, Hiep-Xuan Huynh, Ivan Kojadinovich, Pascale Kuntz. Ces travaux s’insèrent dans le contexte du post-traitement en fouille de données et plus précisément de la validation de règles d’association. Pour filtrer les règles “pertinentes”, de nombreuses mesures de qualité, dites mesures d’intérêt, ont été proposées dans littérature ; on distingue les mesures subjectives qui intègrent les buts/connaissances du décideur, et les mesures objectives qui sont des indicateurs statistiques évaluant la contingence d’une règle. Mais peu de travaux traitent de la comparaison de ces mesures et de leur adéquation à la nature des données traitées et aux préférences du décideur. Nos comparaisons ont été menées à la fois sur le plan expérimental et théorique. D’une part, nous avons proposé une classification originale de 40 mesures d’intérêt sur des jeux de tests à grande échelle basée sur l’analyse de la corrélation des rangs, des méthodes de classification classiques (CAH et Kmeans), et des graphes “corrélatifs” et de “stabilité”. D’autre part, en adoptant une approche axiomatique des propriétés attendues des mesures d’intérêt, nous avons mené une étude comparative théorique des mesures les plus utilisées. Construction de nouvelles mesures de qualité [29, 33, 65] Participants : Henri Briand, Julien Blanchard, Jérôme David, Régis Gras, Fabrice Guillet, Pascale Kuntz. 278 Rapport d’activité LINA 2003–2006 Issus des travaux fondateurs d’Agrawal et al., les premiers travaux sur les règles d’association ont été restreints à l’utilisation de mesures d’intérêt aux vertus essentiellement algorithmiques : le support et la confiance. La sélection des règles requiert cependant l’utilisation de mesures complémentaires. Dans le cadre de l’analyse statistique implicative nous avons proposé différentes mesures originales et complémentaires. Nous avons proposé quatre extensions de la mesure statistique d’intensité d’implication afin de permettre le traitement des données volumineuses, la réduction de variables, l’étude de la cohésion de classes de règles, et l’élimination des règles redondantes. Pour satisfaire des propriétés satisfaites que partiellement avec l’intensité d’implication, nous avons défini trois nouvelles mesures de qualité originales : deux mesures entropiques TI et TIC, et une mesure statistique d’écart à l’équilibre IPEE. Classification hiérarchique de règles d’association [7, 46] Participants : Régis Gras, Pascale Kuntz. Pour structurer un ensemble de règles d’association, nous nous sommes inspirés du concept classique de hiérarchie indicée en classification (dont les éléments sont des parties d’un ensemble) pour définir une “hiérarchie orientée” dont les éléments sont des relations orientées entre les variables en jeu. Pour ce faire, nous avons étendu la notion de règle, en tant que quasi-implication- à celle de R-règle constituée d’une règle de règle. Pour analyser les hiérarchies orientées, nous avons défini d’une part un nouveau critère de significativité des niveaux, et d’autre part, des indices statistiques permettant de mesurer, à l’instar des méthodes factorielles, la responsabilité de variables supplémentaires afin d’expliquer les relations obtenues. Fouille de règles floue [25, 59, 60, 96] Participants : Maurice Bernadet, Régis Gras. Nous nous intéressons à l’extension d’approches classiques de la fouille de règles aux logiques floues. Nous avons défini des algorithmes de classification floue, un nouveau mode d’évaluation de la qualité de règles floues et un algorithme d’extraction des règles les plus pertinentes. Compte tenu de la grande variété d’opérateurs utilisables en logique floue, nous avons défini une méthode pour choisir les opérateurs les mieux adaptés à une base de données particulière ; ce qui nous a permis de montré que pour l’emploi ultérieur du Modus Ponens Généralisé, il valait mieux utiliser une t-norme avec la R-implication associée. Nous avons également étudié les modes de réduction d’ensembles de règles floues, et démontré que parmi les ensembles d’opérateurs flous considérés, un seul conservait les principaux mécanismes classiques d’agrégation de règles (le minimum comme t-norme, le maximum comme t-conorme avec l’implication de Kleene-Dienes). En complément, nous avons adapté des méthodes “classiques” de classification au partitionnement flou. De plus, dans le cadre de l’Analyse Statistique Implicative (A.S.I.), nous avons associé les ensembles flous et le traitement par l’A.S.I. des variables à valeurs intervalles. C’est ainsi qu’en ramenant les degrés d’appartenance à des fréquences les concepts sont comparables et permettent d’évaluer et représenter les relations implicatives d’un sous-ensemble flou sur un autre. Classification et sélection de variables [10, 17, 87, 111] Participants : Hélène Desmier, Ivan Kojadinovic, Pascale Kuntz. COD : COnnaissances et Décision 279 Nous nous intéressons à l’étude des interactions entre variables par le biais de méthodes de classification et de sélection de variables. L’objectif de la classification de variables consiste à essayer d’appréhender la structure de l’ensemble de variables étudié. Le problème de la sélection de variables peut être également vu comme un problème d’analyse structurelle. Dans le contexte de la modélisation statistique, il se rencontre généralement lorsque le nombre de variables pouvant être utilisées pour expliquer une variable d’intérêt est très élevé. Il consiste alors sélectionner un sous-ensemble de variables potentiellement explicatives permettant d’expliquer la variable d’intérêt de façon optimale. Dans ce cadre nos contributions sont les suivantes : (i) la proposition d’une méthode de classification de variables continues fondée sur l’information mutuelle dont l’estimation est basée sur l’estimation de densités de probabilités multidimensionnelles ; (ii) le développement d’une méthode de sélection de variables fondée sur l’information mutuelle k-additive, notion permettant de réduire le coût de la procédure de sélection en terme de temps de calcul ; (iii) une première proposition d’application à la discrimination de variables discrètes. 9.5.3 Intégration des préférences de l’utilisateur Visualisation interactive 3D des règles d’association [2, 64, 127] Participants : Henri Briand, Julien Blanchard, Régis Gras, Fabrice Guillet, Pascale Kuntz, Rémi Lehn. Pour intégrer le décideur dans le processus de fouille, nous avons développé une approche visuelle et interactive, où l’utilisateur joue un rôle “d’heuristique” dirigeant la fouille. Cette approche intègre trois composantes : une représentation graphique adaptée aux règles d’association, compatible avec les contraintes cognitives du décideur, des opérateurs d’interaction avec la représentation, et des algorithmes de fouille locale ad hoc pilotés par le décideur à travers les opérateurs d’interaction. Après un premier mode de représentation visuelle basé sur un modèle de graphes, nous avons proposé une nouvelle représentation tridimensionnelle permettant l’immersion de l’utilisateur dans l’espace de description. Chaque règle est associée à une métaphore graphique (une sphère posée sur un cylindre) dans une scène 3D, et le placement ainsi que les caractéristiques graphiques de la forme/règle (dimensions, couleur) dépendent d’un ensemble de mesures de qualité caractérisant de cette règle. L’usage de la 3D nous a permis d’augmenter la quantité d’information portée par la représentation tout en en conservant l’intelligibilité. Visualisation graphique des règles d’expertise en gestion des connaissances [22, 55, 91] Participants : Henri Briand, Fabrice Guillet, Pascale Kuntz, Rémi Lehn, Bruno Pinaud. Dans les systèmes de gestion de connaissances, l’interaction avec les experts est effectuée avec des outils adaptés dans lesquels une formalisation graphique des connaissances est utilisée. Cette formalisation est souvent basée au niveau théorique sur des modèles de graphes, mais dans l’implémentation opérationnelle les représentations visuelles associées sont souvent des arbres ; d’où des limitations dans l’interprétation et la manipulation. Nous avons proposé, pour un serveur de connaissances spécifique Atanor, une nouvelle approche basée sur un modèle de graphes en niveaux. Son implémentation, dans un cadre interactif, nous a conduit à développer un nouvel algorithme génétique hybridé pour l’optimisation du tracé. Nous avons tout d’abord abordé le problème statique pour le critère de minimisation des croisements (problème NP-difficile), et montré expérimentalement la pertinence de l’approche génétique pour des graphes traçables sur des supports de taille standard. Nous 280 Rapport d’activité LINA 2003–2006 avons ensuite étendu notre approche au cadre interactif où le problème de tracé peut se modéliser comme un problème bi-critère : minimiser les croisements pour garantir l’intelligibilité tout en maximisant une similarité entre deux tracés consécutifs pour limiter l’effort cognitif d’interprétation. Aide multicritère à la décision fondée sur l’intégrale de Choquet [16, 85, 19, 20, 21] Participants : Ivan Kojadinovic. L’objectif de l’aide multicritère à la décision est de synthétiser des informations relatives à différents points de vue ou aspects concernant un ensemble d’objets, et d’aider au choix de un ou plusieurs objets parmi cet ensemble. L’application des méthodes d’aide multicritère à la décision requiert toujours une étape d’agrégation. Dans le cadre de ces recherches, l’opérateur d’agrégation considéré est l’intégrale de Choquet car cette fonctionnelle permet de représenter un grand nombre de comportements décisionnels. Notre contribution théorique porte sur trois aspects : (i) des propositions de caractérisations axiomatiques de la notion d’interaction entre critères ; (ii) le développement de trois méthodes d’identification de modèles décisionnels fondés sur l’intégrale de Choquet ; (iii) la construction de plusieurs indices permettant d’interpréter le comportement des modèles décisionnels obtenus. 9.5.4 Applications Gestion des compétences en entreprise [11, 9, 93, 105] Participants : Emmanuel Blanchard, Mounira Harzallah. Les compétences représentent un type spécifique de connaissances en entreprise qui sont impliquées dans différents processus. Nous avons développé un modèle formel pour la gestion des compétences appelé CRAI (Competence Resource Aspect and Individual), il s’agit d’un schéma qui définit le concept de compétence défini en entité-relation étendu ; d’une liste d’axiomes qui complète la définition du schéma du concept de compétence, formalisée en théories des ensembles ; d’une liste de directives pour déployer le modèle CRAI à une organisation spécifique et d’une liste de requêtes pour étudier l’adéquation des compétences requises et acquises formalisé en théorie des ensembles. De plus, en complément des techniques issues des systèmes d’information, nous avons proposé une démarche de construction d’ontologies des compétences en entreprise. Modélisation de connaissances émotionnelles [39, 71] Participants : Henri Briand, Stéphane Daviet, Fabrice Guillet. Avec comme objectif applicatif le développement d’un système d’aide à la décision sur la dynamique de groupe, nous nous sommes intéressés, dans une optique Web sémantique, à la modélisation de connaissances pour des agents émotionnels supportés par une plateforme multi-agents. Nous avons proposé de coupler un modèle cognitif BDI (Belief, Desire Intension) à une modélisation agent UML. Cette formalisation permet de décrire les mécanismes d’évolution interne des agents, ainsi que leurs interactions, et débouche sur la production d’une base de connaissances en RDF/OWL. Ce travail a été impulsé par le projet ARTA sur l’étude du comportement en milieu professionnel des victimes d’un traumatisme crânien ; il s’est ensuite prolongé dans le cadre d’un projet RIAM sur les Groupe d’Agents Collaboratifs Emotionnels. COD : COnnaissances et Décision 281 Recherche d’homologues distants dans des familles de protéines [52, 53, 119, 90] Participants : Gérard Ramstein, Julien Lorech, Nicolas Beaume. L’identification des membres d’une famille de gènes est un enjeu capital de la génomique. Les membres d’une même famille sont homologues et partagent souvent des caractéristiques fonctionnelles, structurelles et/ou d’expression. Nous développons une plate-forme originale de détection d’homologues distants, PRHoD, pour l’extraction de protéines candidates à partir de ces caractéristiques. Ce travail s’inscrit dans un programme de recherche de nouveaux membres de la superfamille des cytokines, protéines impliquées dans la réaction immunitaire. Outre les modules d’intégration de données (plus de 5 millions de séquences nucléiques issues d’Unigene), nous avons développé des méthodes de classification et d’aide à l’expertise ; PRHoD utilise différentes techniques de SVM spécialement conçues pour classer des séquences biologiques, et basées sur des spectres de chaı̂ne avec ou sans caractères jokers, des alignements locaux et des motifs hiérarchiques. Nous avons également développé une méthodologie de fouille de données textuelles pour modéliser des réseaux d’interaction biologique à partir d’articles biomédicaux. Fouille de données pour les puces à ADN [57, 97] Participants : Gérard Ramstein. L’application Transcriptome concerne la fouille de données de puces à ADN. Nos travaux intègrent la recherche de patrons d’expression de gènes pour extraire des informations de régulations de gènes. L’interprétation des données de biopuces est un domaine particulièrement innovant et représente un domaine très prometteur en terme de retombées biotechnologiques. Nous avons appliqué l’analyse statistique implicative sur ces données. Cette approche s’avère particulièrement pertinente pour découvrir des relations entre gènes : elle permet d’isoler des gènes dont les niveaux d’expression impliquent des groupes d’individus quasi-identiques. La mesure d’implication met en valeur des similitudes partielles, étonnantes d’un point de vue statistique, ce que ne peuvent apporter des méthodes globales comme celles basées sur la corrélation. Classification de réseaux en cognition animale [12, 13, 3] Participants : Ivan Kojadinovic, Pascale Kuntz. Nos travaux s’inscrivent dans une recherche interdisciplinaire portant sur la morphogénèse des réseaux de galeries construits par des insectes sociaux, en particulier certaines colonies de fourmis. L’objectif est de caractériser les lois de croissance et d’organisation de ces réseaux de galeries et de mieux comprendre les mécanismes de production collective de ces structures. Dans ce cadre, nos travaux ont porté d’une part, sur l’analyse de corpus de réseaux bi-dimensionnels issus d’observations in vivo au laboratoire, et d’autre part sur la construction de structures similaires par un simulateur. Nous avons modélisé les réseaux obtenus pour l’analyse de leur topologie par des cartes planaires. Nous avons étudié sur ces corpus les distributions statistiques d’indicateurs récemment développés en physique statistique et proposé l’adaptation de certaines mesures au cas particulier des graphes planaires. Nous avons effectué différentes classifications et mené des comparaisons avec d’autres corpus (réseaux de communications dans les structures urbaines sans adressage préalable ; cartes aléatoires). 282 Rapport d’activité LINA 2003–2006 9.6 Logiciels 9.6.1 ARQUAT (Association Rule Quality Analysis Tool) (Responsable: Fabrice Guillet) URL/DOI: http ://www.polytech.univ-nantes.fr/arquat/ Mots-clés: fouille de données, règles d’association, mesures de qualité, classification Équipe de développement: F. Guillet, H.-X Huynh Outil logiciel permettant l’analyse exploratoire des mesures d’intérêt des règles d’association. Réalisé en Java avec une standardisation XML/PMML des données. Entièrement graphique, et fournit un rapport d’analyse dans un navigateur Web. Statut : distribué. 9.6.2 ARVAL (Association Rules VALidation) (Responsable: Fabrice Guillet) URL/DOI: http ://www.polytech.univ-nantes.fr/arval/ Mots-clés: fouille de données, règles d’association, mesures de qualité Équipe de développement: F. Guillet, H.-X Huynh Atelier de calcul d’une quarantaine d’indices de qualité pour les règles d’association basé sur le format normalisé XML/PMML compatible avec le logiciel de fouille de données WEKA. Statut : distribué. 9.6.3 ARVIS (Association Rules VISualization) (Responsable: Julien Blanchard) URL/DOI: Mots-clés: fouille visuelle, règles d’association, représentation 3D Équipe de développement: F. Guillet, J. Blanchard Outil de fouille interactive de règles d’association basé sur une représentation visuelle 3D (VRML). La restitution visuelle peut être rendue immersive via l’utilisation d’un matériel stéréoscopique adapté. Statut : Prototype en passe d’être distribué 9.6.4 CHIC (Classification Hiérarchique Implicative et Cohésitive) (Responsable: Régis Gras) URL/DOI: http ://www.apmep.asso.fr/CHIC.html Mots-clés: analyse statistique implicative, règles d’association Équipe de développement: R. Gras, P. Kuntz, Collaboration IUT Belfort Logiciel implémentant la méthodologie d’analyse de données développée dans le cadre de l’Analyse Statistique Implicative. Statut : Largement distribué 9.6.5 GVSR (Graph Visualization Software References) (Responsable: Bruno Pinaud) URL/DOI: http ://www.polytech.univ-nantes.fr/GVSR/ Mots-clés: tracé de graphes, logiciels, éditeurs Équipe de développement: P. Kuntz, F. Picarougne, B. Pinaud Site WWW annuaire des logiciels de tracé de graphes. Répertorie sous un format standardisé accompagné d’un exemple visuel une cinquantaine de logiciels de tracé. Statut : distribué. COD : COnnaissances et Décision 9.6.6 KAPPALAB 283 (Responsable: Ivan Kojadinovic) URL/DOI: http ://www.polytech.univ-nantes.fr/kappalab Mots-clés: mesures non additives, aide multicritère à la décision, théorie des jeux coopératifs Équipe de développement: I. Kojadinovic, Collaboration Université du Luxembourg Boı̂te à outils intégré comme paquettage dans le logiciel R permettant l’utilisation de mesures et d’intégrales non additives dans le cadre de problèmes d’aide multicritère à la décision et en théorie des jeux coopératifs. Statut : distribué. 9.6.7 MADTools (Responsable: Gérard Ramstein) URL/DOI: http ://cardioserve.nantes.inserm.fr/mad/ Mots-clés: biopuces, gestion des données, fouille de données Équipe de développement: G. Ramstein, Collaboration Equipe INSERM U533 Plate-forme de bio-informatique dédiée aux biopuces. Composée de plusieurs outils, de la gestion des données à l’extraction de connaissances, en passant par des techniques de filtrage et de traitement statistique. Utilisée en routine par les techniciens de la plate-forme ” Puces à ADN ” de l’IFR 26, devenue Plate-Forme ” Transcriptome ” de Ouest Génopole. Statut : distribué aux laboratoires de OuestGénopôle. 9.6.8 TooCom (Responsable: Francky Trichet) URL/DOI: http ://sourceforge.net/projects/toocom/ Mots-clés: graphes conceptuels, ingénierie des connaissances, visualisation Équipe de développement: F. Trichet, Collaborations : F. Fürst (Amiens), M. Leclerc (Montpellier) Permet l’édition graphique d’une ontologie dans le cadre du paradigme Entité-Relation et son opérationnalisation dans le modèle des Graphes Conceptuels. En tant qu’éditeur, TooCoM permet de représenter graphiquement les trois constituants essentiels d’une ontologie de domaine (hiérarchie de concepts, hiérarchie de relations et axiomes). En tant transcripteur dans le modèle des Graphes Conceptuels, TooCoM permet d’automatiser la représentation formelle et opérationnelle des axiomes du domaine, après spécification d’un scénario d’usage. Un moteur d’inférences basé sur la plateforme de manipulation de graphes conceptuels CoGITaNT permet de mettre en œuvre une activité d’évaluation reposant essentiellement sur la vérification et la validation d’ontologies et de base de connaissances. Statut : distribué sous licence GPL 9.7 Stratégie de valorisation et de coopération 9.7.1 Actions internationales 5ième et 6ième PCRD Réseau d’excellence INTEROP Responsable: Mounira Harzallah Montant: 53 000 e Mots-clés: Modélisation des compétences, ontologie d’entreprise. Participants: Fabrice Guillet, Mounira Harzallah. Partenaires: 10 équipes européennes (2003–2006) 284 Rapport d’activité LINA 2003–2006 La participation de l’équipe dans ce réseau d’excellence du 6ème Programme Cadre concerne trois workpackages : la définition des cartes de compétences et de connaissances des participants à INTEROP ; la définition d’un modèle unifié de représentation de l’entreprise et l’étude des langages et outils pour son implémentation ; l’étude des ontologies et la définition d’une ontologie générique pour l’entreprise. Programmes d’échanges Ministère des Affaires Etrangères - SEEU-BRIDGE (2005–2006) Responsable: Francky Trichet Montant: 8 000 e Mots-clés: Ontologie des compétences, web sémantique. Participants: Francky Trichet. Partenaires: South East European University République de Macédoine L’objectif du projet est double : (i) définir une ontologie des compétences du domaine ICT à partir des référentiels d’emplois/métiers existants tels que O’NET ou Career-Space , (ii) intégrer cette ontologie au sein d’une plateforme du marché de l’emploi et de la formation adaptée aux spécificités de l’économie macédonienne. Cette plateforme développée à l’aide des technologies du Web Sémantique vise à servir de base à une diffusion à l’échelle nationale. 9.7.2 Actions nationales ANR RIAM : GRACE (2003–2006) Responsable: Henri Briand Montant: 74 000 e Mots-clés: Agents collaboratifs, simulation. Participants: équipe LINA-COD. Partenaires: équipe ENIB Brest, Entreprise PerformanSe, Entreprise Virtualys Ce projet porte sur l’intégration dans des systèmes multi-agents de modèles comportementaux basés sur les états émotionnels et relationnels au niveau de groupes d’agents collaboratifs. Il vise à concevoir un modèle original destiné à une application ludique qui permet d’intégrer dans une simulation participative des interactions basées sur des échanges relationnels entre des agents avec des profils comportementaux différents et des utilisateurs d’un environnement virtuel. ANR : GRAPH-COMP (2005–2008) Responsable: Pascale Kuntz Montant: 18 000 e Mots-clés: Grands réseaux, analyse structurelle. Participants: Ivan Kojadinovic, Pascale Kuntz, Fabien Picarougne. Partenaires: Groupe de Recherche en Informatique et Mathématiques du Mirail Toulouse 2, Laboratoire FRAMESPA Toulouse COD : COnnaissances et Décision 285 Le projet porte sur la comparaison de grands graphes dans le cadre applicatif de la recherche de réseaux de sociabilités dans la société paysanne du Moyen-Age. Les données proviennent de plusieurs milliers de contrats agraires recueillis pour un espace géographique bien défini et pour une période s’étendant sur plus de deux siècles. Pour l’analyse mathématique de la structure des réseaux des approches différentes sont évaluées : une approche métrique basée sur la construction d’une similarité adaptée, des approches par plongement dans des espaces euclidiens de faible dimension ou hilbertiens de grande dimension. ANR Biologie Systémique : MESOMORPH (2006–2009) Responsable: Pascale Kuntz Montant: 126 000 e Mots-clés: Réseaux 3D, morphogénèse, insectes sociaux. Participants: équipe COD. Partenaires: Centre Cognition Animale Toulouse, Lab. Matière et Systèmes Complexes ENS Paris, Complex Systems Lab - Universitat Pompeu Fabra Barcelone Les nids construits par les insectes sociaux présentent souvent des structures très complexes qui sont guides par les besoins ingénieux développés par les agents pour s’adapter aux besoins de la colonie. Le projet porte sur l’analyse quantitative des structures de nids tri-dimensionnels et l’analyse fonctionnelle (e.g. optimisation du transport et des communications à l’intérieur du nid). L’équipe contribue en particulier à l’analyse des réseaux 3D modélisant les intersections entre galeries issues des tomographies de nids réels. Programme Cognitique : Contrôle distribué dans les sociétés animales et humaines (2001–2003) Responsable: Pascale Kuntz Montant: 8 000 e Mots-clés: Réseaux, analyse structurelle et fonctionnelle, intelligence collective. Participants: Pascale Kuntz. Partenaires: Laboratoire Cognition Animale UMR 550 (Toulouse), Center for Nonlinear Phenomena and Complex System ULB (Bruxelles), Laboratoire Systèmes Autonomes EPFL (Lausanne), Laboratoire NXI Gestatio UQAM (Montréal), Laboratoire Automatique Besançon Ce projet porte sur deux aspects importants du contrôle des actions collectives au sein des sociétés animales et humaines dans le contexte de l’ intelligence collective : (i) les modes de production et d’utilisation collective des réseaux dans ces systèmes sociaux, (ii) la caractérisation et la quantification des règles de décision au niveau individuel. La contribution de COD porte sur la classification des réseaux, qu’ils proviennent d’expérimentations in vivo ou de simulations, et la validation des règles de décision. Programme Bio-Informatique Inter EPST : Méthodes de partitionnement pour la classification des protéines selon des données structurales ou des données d’interactions fonctionnelles (2003–2004) Responsable: Pascale Kuntz Montant: 2 000 e Mots-clés: Graphes de relations entre protéines, partitionnement. Participants: Pascale Kuntz. Partenaires: Centre d’Analyse et de Mathématiques Sociales EHESS - Paris, Institut de Mathématiques de Luminy Marseille, Laboratoire Traitement et Communication de l’Information ENST - Paris, Laboratoire de Chimie Bactérienne Marseille, Laboratoire de Génétique et Physiologie du Développement Marseille 286 Rapport d’activité LINA 2003–2006 Les projets de séquençage de génomes produisent de grandes quantités de données sous la forme de séquences d’ADN qui, une fois annotées et traduites fournissent un corpus de protéines putatives. Le projet porte sur l’analyse des regroupements pertinents ; il vise à développer des nouvelles méthodes de partitionnement pour l’analyse de données d’interactions protéines/protéines. Autres GDR RO : KAPPALAB (2006–2007) Responsable: Ivan Kojadinovic Montant: 1 000 e Mots-clés: Aide multicritère à la décision, Intégrales non additives. Participants: Ivan Kojadinovic. Partenaires: Laboratoire d’Informatique Paris 6, Laboratoire CERSEM Paris 1, Thalès R&D Palaiseau, Service de Mathématiques Appliquées Université du Luxembourg L’objectif de ce projet est le développement d’une boı̂te à outils logicielle pour la manipulation de capacités et d’intégrales non additives qui sont une généralisation des mesures classiques permettant d’augmenter leur flexibilité. Les principaux contextes applicatifs sont l’aide multicritère à la décision, la décision dans le risque et l’incertain et la théorie des jeux coopératifs. Thèse CIFRE - Contribution à la visualisation de connaissances par des graphes dans une mémoire d’entreprise : application sur le serveur Atanor (2003-2006) Responsable: Henri Briand Montant: 20 000 e Mots-clés: Gestion des connaissances, Visualisation Participants: Henri Briand, Pascale Kuntz, Bruno Pinaud Partenaires: PerformanSe SA Le cadre applicatif de la thèse est le développement d’un modèle de visualisation de connaissances adapté au modèle d’expertise intégré dans le serveur de connaissances Atanor. Ce modèle doit être en phase avec la modélisation des règles de production intégrée dans le serveur et doit permettre une restitution visuelle intelligible supportant une évolution dynamique des données. D’un point de vue théorique, le modèle proposé est basé sur un modèle de graphes ; d’où la proposition d’un algorithme génétique hybridé pour la résolution d’un problème difficile de tracé de graphe interactif. Thèse CIFRE - Étude et développement d’un modèle d’extraction de connaissances basé sur une modélisation des données multi-dimensionnelles en ressources humaines (parcours professionnels) (2004-2007) Responsable: Pascale Kuntz Montant: 20 000 e Mots-clés: Classification, Aide multicritère à la décision, Visualisation Participants: Hélène Desmier, Ivan Kojadinovic, Pascale Kuntz Partenaires: PerformanSe SA COD : COnnaissances et Décision 287 Le cadre applicatif de la thèse est une contribution à l’analyse des parcours professionnels en entreprise. La modélisation des successions de postes par un graphe permet à la fois une étude structurelle (indices macroscopiques) et une étude stochastique (chaı̂nes de Markov, séries chronologiques). Les données sur les postes s’accompagnent d’autres informations exogènes sur le salarié. Une question en découle : quelles sont les variables les plus pertinentes pour expliquer le parcours d’un individu ? D’un point de vue théorieque, répondre à cette question revient à s’intéresser au problème de la sélection de variables pour la régression et/ou discrimination qui peut être vu de façon équivalente comme une étude des corrélations d’un ensemble de variables potentiellement explicatives relativement à une variable particulière à expliquer. Thèse CIFRE - Modélisation et étude des résultats d’une plateforme multi-agents de simulation du comportement collectifs d’individus cérébrolésés dans le milieu professionnel (2004-2007) Responsable: Henri Briand Montant: 20 000 e Mots-clés: modélisation des compétences, fouille de données, analyse de logs, simulation multi-agents Participants: Henri Briand, Stéphane Daviet, Fabrice Guillet Partenaires: PerformanSe SA Le cadre applicatif de la thèse porte sur l’analyse des comportements d’individus cérébrolésés en milieu professionnel. L’objectif est de fournir un outil d’aide à la décision capable de fournir aux encadrants des informations quant aux configurations d’équipes favorisant à la fois les progrès individuels et collectifs. Le but est de contribuer à mieux définir le potentiel en terme de compétences d’un individu et de fournir un accompagnement pour la réintégration des personnes cérébrolésées dans le milieu ordinaire du travail. VAL- Validation pyschométrique de questionnaires (2002-2003) Responsable: Jacques Philippé Montant: 40 000 e Mots-clés: Typologie, Régles d’association, Ressources humaines Participants: Régis Gras, Philippe Peter Partenaires: PerformanSe SA Le projet porte sur la validation d’un système de caractérisation psychologique d’individus basé sur une typologie de traits de caractères prédéfinie par des experts. La caractérisation est déterminée par un système de scoring à partir de réponses à un questionnaire. L’objectif est de vérifier si les profils connus sont retrouvés par des méthodes de classification adaptées, et de caractériser la nature des relations entre les variables en jeu. AVIf - Aide à la visualisation pour la fouille de règles (2004) Responsable: Pascale Kuntz Montant: 20 000 e Mots-clés: Fouille de données, Visualisation, Régles d’association, Ressources humaines Participants: Henri Briand, Fabrice Guillet, Pascale Kuntz Partenaires: Fondation Recherche & Emploi VediorBis Ce projet vise à développer des outils visuels adaptés à la fouille dynamique d’ensembles de règles d’association. Les contraintes de restitution portent en particulier sur la structuration de ces ensembles en entités entretenant entre elles des relations implicatives significatives selon des critères statistiques. 288 Rapport d’activité LINA 2003–2006 INF3C - Inférences sur un modèle de gestion couplée des compétences et des connaissances (2003) Responsable: Mounira Harzallah Montant: 20 000 e Mots-clés: Gestion des connaissances, Gestion des compétences Participants: Henri Briand, Fabrice Guillet, Mounira Harzallah Partenaires: Fondation Recherche & Emploi VediorBis, Institut Polytechnique de Bucarest - Roumanie, Université de Turin - Italie L’objectif du projet est de proposer un système intelligent de gestion intégrée des compétences et des connaissances qui doit permettre : (i) le raisonnement sur la représentation définie en vue d’un enrichissement dynamique, (ii) une réponse aisée à différentes requêtes, notamment la détermination de la liste des compétences par acteur associées à une typologie prédéfinie et de la liste des compétences associées à un curriculum vitae à partir de la liste des connaissances spécifiées pour un poste. 9.7.3 Actions régionales CPER CPER - Axe Modélisation-Extraction-Connaissances (2000–2006) Responsable: Henri Briand Montant: 69 000 e Mots-clés: Modélisation, extraction, visualisation. Participants: équipe LINA-COD, équipe LINA-TALN. Partenaires: équipe LERIA (Angers) L’axe MEC de ce projet vise à renforcer les synergies régionales en Modélisation, Extraction et Visualisation des Connaissances. On peut citer en particulier : une thèse en co-encadrement entre les équipes LINA-COD et le LERIA d’Angers ; un ouvrage sur la Visualisation des connaissances dirigé par deux partenaires du projet du LINA-COD et de l’ESIEA Recherche à Laval (qui faisait partie du projet mais qui a été dissoute). CPER - Projet MILES - Axe Aide à la Décision (2006-2009) Responsable: Pascale Kuntz Montant: 10 000 e(estimation) Mots-clés: Optimisation, Préférences, Visualisation. Participants: équipe LINA-COD. Partenaires: LERIA-ICLN, IRCCYN-IVGI , LISA-MSD, IRCCyN-MCM En Aide à la Décision, la complexité croissante des systèmes industriels nécessite simultanément (1) des algorithmes d’optimisation performants capables de traiter des dimensions de plus en plus élevées ; (2) une prise en compte de connaissances dans le processus de résolution ; (3) une intégration accrue des concepteurs et utilisateurs dans les systèmes. Une difficulté majeure des systèmes actuels est la faible coopération de ces trois niveaux qui sont souvent conçus indépendamment. Notre objectif principal est donc de faire coopérer des nouvelles techniques d’optimisation et de résolution à base de connaissances avec des outils de visualisation et des techniques de représentations basés sur des technologies innovantes (Web sémantique, 3D, réalité virtuelle, cartes cognitives, gestion de préférences) afin de proposer des solutions aux problèmes concrets. COD : COnnaissances et Décision CPER - Projet BIL - Bioiformatique Ligérienne 289 (2006-2009) Responsable: Gérard Ramstein Montant: 35 000 e(estimation) Mots-clés: génomique, puces à ADN. Participants: équipe LINA-COD. Partenaires: Institut du Thorax - INSERM U533, INRA-BIA, INSERM U694, LERIA, LINA-COMBI, IRCCyN-MOVES, IMAD-LEPA, INSERM U601 L’objectif de ce projet est de fédérer et de promouvoir la recherche et l’enseignement supérieur en Bioinformatique dans la région Pays de Loire. Pour cela, des équipes impliquées dans la production de données génomiques ou développant des approches fonctionnelles à l’échelle du génome et des équipes développant des méthodes innovantes d’analyse ont décidé de mettre en place un groupe de travail collaboratif. Plus précisément, les contributions de l’équipe portent sur la recherche d’homologies distantes dans les génomes et l’analyse des puces à ADN (annotations, représentation et fouille de données). Pôles de compétivité Projet SAFIMAGE (2006–2009) Responsable: Ivan Kojadinovic Montant: 190 000 e(demandé) Mots-clés: Analyse de flux IP, temps réel, discrimination statistique. Participants: Ivan Kojadinovic. Rémi Lehn. Partenaires: LINA Atlas-GRIM, IRCCyN IVC, Alcatel, QoSmetrics (PME), IST (PME). Développement d’une plateforme pour l’analyse de flux IP en temps réel intégrant, en autres, des outils mettant en oeuvre des méthodes de discrimination statistique. Autres OASIS-Mégalis (2004–2006) Responsable: Rémi Lehn Montant: 64 000 e Mots-clés: Serveur de connaissances, EIAO. Participants: Rémi Lehn. Partenaires: Formation Continue de l’Université de Nantes, ARCNAM Pays de Loire Les services de formation continue de l’Université de Nantes et de l’ARCNAM Pays de Loire disposent d’un important fond documentaire scientifique et d’équipes techniques mutualisées dédiées à la production de ressources éducatives sur des supports numériques. Le projet OASIS a pour objectif l’exploitation et la valorisation de ces ressources. La contribution de COD porte en particulier sur la problématique de gestion de connaissances au niveau des contenus et sur l’interfaçage entre un serveur de connaissances et les supports numériques utilisés. 290 Rapport d’activité LINA 2003–2006 9.8 Diffusion des résultats 9.8.1 Rayonnement Animation de la communauté scientifique – association Extraction et Gestion des Connaissances EGC : Président (H. Briand), Trésorier (R. Gras), Chargé de communication (F. Guillet). Cette association a été crée par H. Briand en 2002 ; elle fédère plus de 200 chercheurs. – Société Francophone de Classification, SFC : membre élu du bureau (P. Kuntz jusqu’en 2003), membre fondateur de la société sous ses nouveaux statuts en 2003 – Groupe National de Recherche en Acquisition des Connaissances GRACQ : membre du bureau (F. Trichet depuis 2004) – Fondation Recherche & Emploi VediorBis-Fondation de France : membres du conseil scientifique (H. Briand, R. Gras jusqu’en 2005) Conférences invitées et tutoriels – – – – Colloque “Argomentare, congetturare, dimostrare”, Palerme, Sicile, 2003 (R. Gras) Workshop “Implicative Statistical Analysis”, Palerme, Sicile, 2005 (P. Kuntz) Session invitée “Knowledge Quality”, ASMDA, Brest, 2005 (F. Guillet) Tutoriel invité “Qualité des Connaissances”, EGC Clermont-Ferrand, 2004 (F. Guillet) Séminaires invités – – – – – Séminaire EHESS-INED, 2005 (P. Kuntz) Séminaire de Recherche Interdisciplinaire, Telecom Paris, 2005 (P. Kuntz) Séminaire Mathématiques Discrètes et Sciences Sociales, EHESS, 2004 (R. Gras et P. Kuntz) Séminaire Université J. de Castellon, Espagne, 2003 (R. Gras) Journées ECLIPSE er Humanités, Lyon II, 2003 (R. Gras) Habilitation à diriger les recherches – P. Kuntz, HDR Université de Nantes, 2003 – I. Kojadinovic, HDR Université de Nantes, 2006 – F. Guillet, HDR Université de Nantes, 2006 Thèses – – – – – – – – F. Fürst, 2004 (H. Briand, F. Trichet, M. Leclère CIRM) D. Than, 2004 (H. Briand, F. Poulet ESIEA Recherche) C. Archaux, 2005 (H. Briand, A. Kenchaf ENSIETA) J. Mickolajczak, 2005 (G. Ramstein, Y. Jacques INSERM) J. Blanchard, 2005 (H. Briand, F. Guillet) L. Boudjeloub, 2005 (H. Briand, F. Poulet ESIEA Recherche) B. Pinaud, 2006 (H. Briand, P. Kuntz) H. Huynh, 2006 (H. Briand, F. Guillet) COD : COnnaissances et Décision 291 Jurys de thèse externes – – – – – – – – – – A. Alarabi, Université de Tours, 2006 (F. Picarougne) P. Manet, INSA, Université Lyon I, 2006 (P. Kuntz) L. Denoeud, ENST, 2006 (P. Kuntz) B. Vaillant, ENST de Bretagne, 2006 (P. Kuntz) W. Erray, Université Lyon II, 2006 (P. Kuntz) H. Azzag, Université Tours, 2005 (P. Kuntz) O. Couturier, Université d’Artois, 2005 (P. Kuntz) S. Karouach, Université Toulouse III, 2003 (H. Briand, P. Kuntz) H. Cherfi, Université Henri Poincaré - Nancy 1, 2004 (H. Briand, F. Guillet). D. Tanasa, Université de Nice Sophia Antipolis, 2005 (H. Briand, F. Guillet). 9.8.2 Comités de programmes et comités de lecture Comités de lecture – – – – – Revue de la Recherche en Didactique des Mathématiques (R. Gras jusqu’en 2004) Mathématiques et Sciences Humaines (P. Kuntz) Revue d’Intelligence Articielle (P. Kuntz) Bulletin bi-annuel de la Société Francophone de Classification 1994-2003 (P. Kuntz, éditrice) Relecteurs pour les revues internationales suivantes : Computational Statistics and Data Analysis (I. Kojadinovic), Discrete Applied Mathematics (I. Kojadinovic), European J. of Operational Research (F. Guillet, P. Kuntz), Fuzzy Sets and Systems (I. Kojadinovic), IEEE Trans. On System Man and Cybernetics (P. Kuntz), Information Sciences (I. Kojadionovic), RAIRO-Operations Research (P. Kuntz), Soft Computing (R. Gras), The Computer Journal (P. Kuntz), Mathématiques et Sciences Humaines (P. Kuntz), Revue d’Intelligence Artificielle (P. Kuntz) Comités de programme – – – – – – – – – – – – – Int. Conf. on Discovery Science, 2004-2006 (F. Guillet). Int. Conf. on Applied Stockastic Models for Data Analysis, ASMDA, 2005 et 2007 (F. Guillet). Int. Conf. on Human-centred Process, 2003 et 2007 (F. Guillet). Int. Workshop on Visual Data Mining, VDM/IEEE ICDM, 2003 et 2004 (H. Briand, F. Guillet). Int. Conf. on Data Mining 2006 (F. Guillet) Knowledge Acquisition Workshop, 9th Pacific Rim International Conference on Artificial Intelligence, 2006 (F. Guillet). Workshop Implicative Statistical Analysis ISA, 2003 et 2005 (H. Briand, F. Guillet, P. Kuntz). Workshop “Enterprise modelling and ontology”, Conference “Advanced Information Systems Engineering” CAISE, 2006 (M. Harzallah) International Workshop “Ontology content and evaluation in Enterprise” ODBASE, 2006 (F. Trichet) Journées Francophones Extraction et Gestion des Connaissances EGC, 2003-2006 (H. Briand, F. Guillet, R. Gras, P. Kuntz) Journées francophones de l’Ingénierie des Connaissances IC, 2003-2006 (F. Trichet) INFORSID 2004 (H. Briand), 2006 (P. Kuntz) Rencontres de la Société Francophone de Classification 2006 (P. Kuntz) 292 Rapport d’activité LINA 2003–2006 9.8.3 Organisation de congrès Conférences et workshop internationaux – Semaine de la Connaissance, Nantes, 2006 (M. Harzallah) – 3rd Workshop Implicative Statistical Analysis ISA, 2005 (R. Gras en collaboration avec l’Université de Palerme, Sicile) – Colloque “O metodo estatı́stico implicativo utilizado em estudos qualitativos de Régis Gras de associação. Contribuição à pesquisa em Educaçao”, 2003 (R. Gras en collaboration avec l’Université PUC de Sao Paulo) Ateliers – Atelier Visualisation en Extraction des Connaissances, in Conférences EGC’03, Lyon et EGC’04, Clermont-Ferrand (P. Kuntz, co-organisatrice) – Atelier “Qualité des Données et des Connaissances”, QDC/EGC, Paris 2005, Lille 2006 (F. Guillet, co-organisateur) – Journée thématique “Raisonner le Web Sémantique avec des graphes”, plateforme AFIA 2005 et Semaine de la Connaissance 2006 (F. Trichet) 9.8.4 Impact sur la formation universitaire – Master Extraction de Connaissances dans les Données, Lyon II - Nantes - Paris XI : H. Briand est un des membres fondateurs. Responsabilité de cours : Qualité des connaissances (F. Guillet) ; Visualisation en fouille de données (P. Kuntz) – Master Systèmes d’Aide à la Décision, Nantes. Responsabilité du cours : Fouille de données et Gestion de connaissances (P. Kuntz, F. Guillet) ; Intervention dans le cours Modèles pour l’aide à la décision (P. Kuntz) – Cursus Informatique Décisionnelle, École Polytechnique de l’Université de Nantes. Responsable et fondateur en 2004 du cursus sur 5 semestres (H. Briand) – Master 2 Professionnel spécialité Logistique Internationale, Université de Nantes . Responsable et fondateur (F. Trichet) – Master international à distance Htech. Responsable pédagogique (H. Briand) – Advanced Elective Course Bachelor of Sciences in Communication Technologies - Faculty of Communication Sciences and Technologies - South East European University - Republic of Macedonian. Responsabilité du cours “Knowledge Engineering, Ontological Engineering and Semantic Web” (F. Trichet) 9.8.5 Transfert de technologie – Implication de l’équipe dans la création de deux entreprises locales innovantes : (i) la société Knowesia créée en 2004 développe et valorise la solution Atanor (applications Web de guidage et d’aide à la décision) dont le concept a été élaboré en partenariat avec l’équipe, (ii) la société PurpleLine créée en 2006 est spécialisée en ingénierie de la cartographie Web et en ingénierie du Web sémantique au service de l’aide à la décision. – Participation dans le cadre d’Atlanpole au soutien de dossiers de jeunes entreprises innovantes COD : COnnaissances et Décision 293 9.9 Publications de référence de l’équipe dans la période [1] E. B LANCHARD, P. K UNTZ, M. H ARZALLAH, et H. B RIAND. A tree-based similarity for evaluating concept proximities in an ontology. In 10th conference of the International Federation of Classification Societies (IFCS’2006), pages 3–11. Springer Verlag, 2006. [2] J. B LANCHARD, F. G UILLET, et H. B RIAND. Interactive visual exploration of association rules with the rule focusing methodology. Knowledge and Information Systems. Springer, 2006. ISSN : 0219-1377, to appear. [3] J. B UHL, J. G AUTRAIS, R. S OL É, P. K UNTZ, S. VALVERDE, J. D ENEUBOURG, et G. T H ÉRAULAZ. Efficiency and robustness in ant networks of galleries. European Physical Journal B, 42 :123–129, 2004. [4] J. DAVID, F. G UILLET, R. G RAS, et H. B RIAND. Conceptual hierarchies matching : an approach based on discovery of implication rules between concepts. In 17th European Conference on Artificial Intelligence (ECAI), pages 357–358. IOS Press, 2006. [5] K. F UJIMOTO, I. KOJADINOVIC, et J.-L. M ARICHAL. Axiomatic characterizations of probabilistic and cardinal-probabilistic interaction indices. Games and Economic Behavior. Elsevier, 2005. ISSN : 0899-8256. [6] F. F URST et F. T RICHET. Axiom-based ontology matching. In 3rd international conference on Knowledge CAPture (K-CAP’2005), Banff (Canada), 2005. ACM Press. ISBN : 1-58113-380-4. [7] R. G RAS et P. K UNTZ. Discovering R-rules with a directed hierarchy. Soft Computing, A Fusion of Foundations, Methodologies and Applications, 10(5) :453–460. Springer, 2006. ISSN : 14327643. [8] F. G UILLET et H. H AMILTON. Quality measures in Data Mining. Studies in Computational Intelligence. Springer, 2006. A paraı̂tre. [9] M. H ARZALLAH, G. B ERIO, et F. V ERNADAT. Modeling and analysis of individual competencies to improve industrial performances. IEEE Transactions on Systems Man and Cybernetics Part A, 36, 2006. [10] I. KOJADINOVIC. Agglomerative hierarchical clustering of continuous variables based on mutual information. Computational Statistics and Data Analysis, 46 :269–294. Elsevier, 2004. ISSN : 0167-9473. 9.10 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [11] G. B ERIO et M. H ARZALLAH. Knowledge management for competence management. Electronic Journal of Universal Knowledge Management, 1 :21–29. IICM and Springer publisher, 2006. Accessible depuis www.jukm.org. [12] J. B UHL, J. G AUTRAIS, J. L. D ENEUBOURG, P. K UNTZ, et G. T HERAULAZ. The growth and form of tunnelling networks in ants. Journal of Theoretical Biology, 2006. to appear. 294 Rapport d’activité LINA 2003–2006 [13] J. B UHL, J. G AUTRAIS, N. R EEVES, R. S OL É, S. VALVERDE, P. K UNTZ, et G. T H ÉRAULAZ. Topological patterns in street networks of self-organized urban settlements. European Physical Journal B, 2006. ISSN : 1434-6036, to appear. [14] I. KOJADINOVIC. Modeling interaction phenomena using fuzzy measures : on the notions of interation and independence. Fuzzy Sets and Systems, 135(3) :317–340. Elsevier, 2003. ISSN : 0165-0114. [15] I. KOJADINOVIC. Estimation of the weights of interacting criteria from the set of profiles by means of information-theoretic functionals. European Journal of Operational Research, 155 :741–751. Elsevier, 2004. ISSN : 0377-2217. [16] I. KOJADINOVIC. An axiomatic approach to the measurment of the amount of interaction among criteria or players. Fuzzy Sets and Systems, 152 :417–435. Elsevier, 2005. ISSN : 0165-0114. [17] I. KOJADINOVIC. Relevance measures for subset variable selection in regression problems based on k-additive mutual information. Computational Statistics and Data Analysis, 49(4) :1205–1227. Elsevier, 2005. ISSN : 0167-9473. [18] I. KOJADINOVIC. Unsupervised aggregation of commensurate correlated attributes by means of the Choquet integral and entropy functionals. International Journal of Intelligent Systems. J. Wiley and sons, 2005. ISSN : 1098-111X, In Press. [19] I. KOJADINOVIC. Minimum variance capacity identification. European Journal of Operational Research. Elsevier, 2006. ISSN : 0377-2217, In press. [20] I. KOJADINOVIC et J.-L. M ARICHAL. Entropy of bi-capacities. European Journal of Operational Research. Elsevier, 2006. ISSN : 0377-2217, in press. [21] I. KOJADINOVIC, J.-L. M ARICHAL, et M. ROUBENS. An axiomatic approach to the definition of the entropy of a discrete Choquet capacity. Information Sciences, 172 :131–153. Elsevier, 2005. ISSN : 0020-0255. [22] P. K UNTZ, B. P INAUD, et R. L EHN. Minimizing crossings in hierarchical digraphs with a hybridised genetic algorithm. Journal of Heuristics, 12(1–2) :23–36. Kluwer, 2006. ISSN : 1381-1231. [23] F. P ICAROUGNE, H. A ZZAG, G. V ENTURINI, et C. G UINOT. A new approach of data clustering using a flock of agents. Evolutionary Computation Journal. MIT Press, 2006. to appear. A2. Revues d’audience nationale avec comité de lecture [24] S. BAQUEDANO, V. P HILIPP É, J. P HILIPP É, R. G RAS, et O. G UILHAUME. L’analyse implicative pour l’élaboration de référentiels comportementaux. Revue « Quaderni di Ricerca in Didattica », 15 :119–130, 2005. ISSN : 1592-5137. [25] M. B ERNADET. Qualité des règles et des opérateurs en découverte de connaissances floues. Revue Nationale des Technologies de l’Information, E(1) :169–192, 2004. ISBN : 2-85428-646-4. [26] E. B LANCHARD, M. H ARZALLAH, et H. B RIAND. Raisonnement en gestion des compétences. Revue Nationale des Nouvelles Technologies de l’Information, 2 :587–592. Cépaduès Editions, 2005. ISBN : 2-85428-683-9. [27] E. B LANCHARD, M. H ARZALLAH, P. K UNTZ, et H. B RIAND. Une nouvelle mesure sémantique pour le calcul de la similarité entre deux concepts d’une même ontologie. Revue Nationale des Nouvelles Technologies de l’Information, E-6 :193–198. Cépaduès Edition, 2006. ISSN : 17641667. COD : COnnaissances et Décision 295 [28] J. B LANCHARD, F. G UILLET, et H. B RIAND. Une visualisation orientée qualité pour la fouille anthropocentrée de règles d’association. In Cognito - Cahiers Romans de Sciences Cognitives, 1(3) :79–100, 2004. ISSN : 1267-8015. [29] J. B LANCHARD, F. G UILLET, H. B RIAND, et R. G RAS. Une version discriminante de l’indice probabiliste d’écart à l’équilibre pour mesure la qualité des règles. Revue Quaderni di Ricerca in Didattica, 15 :131–138, 2005. ISSN : 1592-5137. [30] J. B LANCHARD, F. G UILLET, H. B RIAND, et R. G RAS. IPEE : Indice Probabiliste d’Ecart à l’Equilibre pour l’évaluation de la qualité des règles. Revue Nationale des Nouvelles Technologies de l’Information, E-5 :391–395. Cepaduès Editions, 2006. ISBN : 2-854428-707-X. [31] J. B LANCHARD, F. G UILLET, R. G RAS, et H. B RIAND. Mesurer la qualité des règles et de leurs contraposées avec le taux informationnel TIC. Revue des Nouvelles Technologies de l’Information, E(2) :287–298. Cépaduès Edition, 2004. ISBN : 2-85428-633-2. [32] J. B LANCHARD, F. G UILLET, F. R ANTI ÈRE, et H. B RIAND. Vers une représentation graphique en réalité virtuelle pour la fouille interactive de règles d’association. Extraction des Connaissances et Apprentissage, 17(1-2-3) :105–118. Hermès Science Publication, 2003. ISBN : 2-7462-0631-5, ISSN : 0992-499X. [33] J. B LANCHARD, P. K UNTZ, F. G UILLET, et R. G RAS. Mesure de qualité des règles d’association par l’intensité d’implication entropique. Revue Nationale des Technologies de l’Information, E(1) :33–44. Cépaduès Edition, 2004. ISBN : 2-85428-646-4. [34] R. C OUTURIER et R. G RAS. CHIC : traitement de données avec l’analyse implicative. Revue des Nouvelles Technologies de l’Information, E(3) :679–684. Cépaduès Editions, 2005. ISBN : 2-85428-677-4. [35] R. DAILLY, C. C HERVET, R. L EHN, et H. B RIAND. Problématiques de gestion de connaissances dans le cadre de l’enseignement à distance sur l’internet. Revue des Nouvelles Technologies de l’Information, E(3) :593–598, 2005. ISBN : 2-85428-683-9. [36] J. DAVID, F. G UILLET, R. G RAS, et H. B RIAND. Alignement extensionnel et asymétrique de hiérarchies conceptuelles par découverte d’implications entre concepts. Revue des Nouvelles Technologies de l’Information, E(6) :151–162. Cépaduès Edition, 2006. ISBN : 2.85428.722.3, ISSN : 1764-1667. [37] J. DAVID, F. G UILLET, V. P HILIPP É, H. B RIAND, et R. G RAS. Validation d’une expertise textuelle par une méthode de classification basée sur l’intensité d’implication. Revue Quaderni di Ricerca in Didattica, 15 :157–162, 2005. ISSN : 1592-5137. [38] S. DAVIET, F. G UILLET, A. M. F LOREA, H. B RIAND, et V. P HILIPP É. Modélisation des interactions entre individus avec AgentUML. Revue des Nouvelles Technologies de l’Information, E(3) :613–624. Cépaduès Edition, 2005. ISBN : 2-85428-677-4. [39] H. D ESMIER, F. G UILLET, A. M. F LOREA, H. B RIAND, et V. P HILIPP É. Modélisation d’un agent émotionnel en UML et RDF. Revue des Nouvelles Technologies de l’Information, E(3) :637–642. Cépaduès Edition, 2005. ISBN : 2-85428-677-4. [40] I. E LIA, A. G AGATSIS, et R. G RAS. Can we ”trace” the phenomenon of compartmentalization by using the ISA ? An application for the concept of function. Revue « Quaderni di Ricerca in Didattica », pages 175–186, 2005. ISSN : 1592-5137. [41] R. G RAS. L’analyse implicative : ses bases, ses développements. Revue Educaçao Matematica Pesquisa, 4(2) :11–48. Université PUC, Sao Paulo, 2004. ISSN : 1516-5388. 296 Rapport d’activité LINA 2003–2006 [42] R. G RAS. Panorama du développement de l’A.S.I. à travers des situations fondatrices. Revue Quaderni di Ricerca in Didattica, pages 9–33, 2005. ISSN : 1592-5137. [43] R. G RAS et S. A. A LMOULOUD. A implicaço estatistica usada como ferramente em um exemplo de analise de dados multidimensionais. Educaçao Matematica Pesquisa, 4(2) :75–88. Université PUC, Sao Paulo, 2004. ISSN : 1516-5388. [44] R. G RAS, R. C OUTURIER, F. G UILLET, et F. S PAGNOLO. Extraction de règles en incertain par la méthode implicative. Revue des Nouvelles Technologies de l’Information, E-5 :385–389. Cepaduès Editions, 2006. ISBN : 2-854428-707-X. [45] R. G RAS, J. DAVID, J.-C. R ÉGNIER, et F. G UILLET. Typicalité et contribution des sujets et des variables supplémentaires en Analyse Statistique Implicative. In Revue des Nouvelles Technologies de l’Information, volume E-6, pages 151–162. Cépaduès Editions, 2006. ISSN : 1764-1667. [46] R. G RAS, P. K UNTZ, et J.-C. R ÉGNIER. Significativité des niveaux d’une hiérarchie orientée. Revue des Nouvelles Technologies de l’Information, C(1) :39–50. Cépaduès Editions, 2004. ISBN : 2-85428-667-7. [47] X.-H. H UYNH, F. G UILLET, et H. B RIAND. Une plateforme exploratoire pour la qualité des règles d’association : apports pour l’analyse implicative. Revue Quaderni di Ricerca in Didattica, 15 :339–349, 2005. ISSN : 1592-5137. [48] X.-H. H UYNH, F. G UILLET, et H. B RIAND. Comparaison des mesures d’intérêt de règles d’association : une approche basée sur des graphes de corrélation. Revue des Nouvelles Technologies de l’Information (RNTI-E-6), E : Extraction et Gestion des Connaissances(6) :549–560. Cépaduès Edition, 2006. ISSN : 1764-1667. [49] P. K UNTZ. Classification hiérarchique orientée en ASI. Revue Quaderni di Ricerca in Didattica, 15 :53–62, 2005. ISSN : 1592-5137. [50] R. L EHN, F. G UILLET, et H. B RIAND. Qualité d’un ensemble de règles : élimination des règles redondantes. Revue Nationale des Technologies de l’Information, E(1) :141–168, 2004. ISBN : 2-85428-646-4. [51] I.-C. L ERMAN et P. P ETER. Indice probabiliste de vraisemblance du lien entre objets quelconques ; analyse comparative entre deux approches. Revue de Statistique Appliquée, LI(1) :3–35, 2003. ISSN : 0035-175X. [52] J. L OREC, G. R AMSTEIN, et Y. JACQUES. Extraction et identification d’entités complexes à partir de textes biomédicaux. In Revue Nationale des Nouvelles Technologies de l’Information, pages 223–228. Cepadués Edition, 2006. ISSN : 1764-1667. [53] J. M IKOLAJCZAK, G. R AMSTEIN, et Y. JACQUES. Caractérisation de signatures complexes dans des familles de protéines distantes. Revue des Nouvelles Technologies de l’Information, E(2) :317– 328. Cépaduès Editions, 2004. ISBN : 2-85428-633-2. [54] J. M IKOLAJCZAK, G. R AMSTEIN, et Y. JACQUES. Détection de faibles homologies de proteines par machines à vecteurs de support. Revue des Nouvelles Technologies de l’Information, C(1) :89– 100. Cépaduès Editions, 2004. ISBN : 2-85428-667-7. [55] B. P INAUD, P. K UNTZ, F. G UILLET, et V. P HILIPP É. Visualisation en gestion des connaissances, développement d’un nouveau modèle graphique Graph’Atanor. Revue des Nouvelles Technologies de l’Information, E(6) :311–322. Cépaduès Edition, 2006. ISSN : 1764-1667. COD : COnnaissances et Décision 297 [56] T. R AIMBAULT, H. B RIAND, R. L EHN, et S. L OISEAU. Interrogation et vérification de documents owl dans le modèle des graphes conceptuels. Revue des Nouvelles Technologies de l’Information (RNTI-E-6), E : Extraction et Gestion des Connaissances(6) :187–192. Cépaduès Edition, 2006. ISSN : 1764-1667. [57] G. R AMSTEIN. Vers une analyse implicative des données issues de puces à adn. Revue « Quaderni di Ricerca in Didattica », 15 :85–94, 2006. ISSN : 1592-5137. [58] J.-C. R ÉGNIER et R. G RAS. Statistique de rangs et Analyse Statistique Implicative. Revue de Statistique Appliquée, LIII(1) :5–38, 2005. D1. Colloques de diffusion internationale avec comité de lecture et actes [59] M. B ERNADET. A comparison of operators in fuzzy knowledge discovery. In Information Processing and Management of Uncertainty in Knowledge-Based Systems, pages 731–738, Perugia, Italie, 2004. ISBN : 88-87242-54-2. [60] M. B ERNADET. A study of data partitioning methods for fuzzy knowledge discovery. In Information Processing and Management of Uncertainty in Knowledge-Based Systems, Paris, 2006. ISBN : 88-87242-54-2, to appear. [61] S. B ERTRAND, I. KOJADINOVIC, W. S KALLI, et D. M ITTON. Estimation of human internal and external geometry from selected body measurements. In 20th Congress of the International Society of Biomechanics, Cleveland, Ohio, USA, 2005. Proceedings on CDROM. [62] D. B IANCHINI, S. C ASTANO, F. D’A NTONIO, V. D. A NTONELLIS, M. H ARZALLAH, M. M IS SIKOF, et S. M ONTANELLI. Digital resource discovery : semantic annotation and matchmaking techniques. In Interoperability of Enterprise Software and Applications (I-ESA’05), Bordeaux, France, 2006. Springer. ISBN : 1-84628-151-2. [63] E. B LANCHARD, M. H ARZALLAH, H. B RIAND, et P. K UNTZ. A typology of ontology-based semantic measures. In 2nd INTEROP-EMOI Open Workshop on Enterprise Models and Ontologies for Interoperability at the 17th Conference on Advanced Information Systems Engineering (CAISE’05), volume 160, pages 407–412. CEUR-WS, 2005. ISSN : 1613-0073. [64] J. B LANCHARD, F. G UILLET, et H. B RIAND. A user-driven and quality oriented visualization for mining association rules. In 3rd IEEE International Conference on Data Mining, (ICDM’2003), pages 493–497, Melbourne, Florida, USA, November 19-22 2003. IEEE Computer Society Press. [65] J. B LANCHARD, F. G UILLET, H. B RIAND, et R. G RAS. Assessing the interestingness of rules with a probabilistic measure of deviation from equilibrium. In J.JANSSEN et P. ( EDS ), réds., 11th international symposium on Applied Stochastic Models and Data Analysis (ASMDA’2005), pages 191–199, Brest, France, May 17-20 2005. ISBN : 2-908849-15-1. [66] J. B LANCHARD, F. G UILLET, R. G RAS, et H. B RIAND. Using information-theoretic measures to assess association rule interestingness. In 5th IEEE International Conference on Data Mining (ICDM’05), pages 66–73. IEEE Computer Society Press, 2005. [67] J. B LANCHARD, F. P OULET, F. G UILLET, et P. K UNTZ. Highly interactive data mining with virtual reality. In 5th Virtual reality International Conference (VRIC’2003), pages 221–228, Laval, May 14-16 2003. ISBN : 2-9515730-2-2. [68] R. C OUTURIER, R. G RAS, et F. G UILLET. Reducing the number of variables using implicative analysis. In Conference of the International Federation of Classification Societies (IFCS’04), pages 277–285, Chicago, USA, July 15-18 2004. Springer Verlag. ISBN : 3-540-22014-3. 298 Rapport d’activité LINA 2003–2006 [69] J. DAVID, F. G UILLET, et H. B RIAND. Matching directories and owl ontologies with aroma. In ACM CIKM 2006, 2006. to appear. [70] J. DAVID, F. G UILLET, V. P HILIPP É, et R. G RAS. Implicative statistical analysis applied to clustering of terms taken from a psychological text corpus. In J. JANSSEN et P. L ENCA, réds., 11th international symposium on Applied Stochastic Models and Data Analysis (ASMDA’05), pages 201–208, Brest, France, May 17-20 2005. ISBN : 2-908849-15-1. [71] S. DAVIET, H. D ESMIER, H. B RIAND, F. G UILLET, et V. P HILIPP É. A system of emotional agents for decision support. In A. S KOWRON, J.-P. BARTHES, L. JAIN, R. S UN, P. M ORIZETM AHOUDEAUX, J. L IU, et N. Z HONG, réds., 2005 IEEE/WIC/ACM international conference on Intelligent Agent Technology (IAT’05), pages 711–717. IEEE Computer Society Press, 2005. ISBN : 0-7695-2416-8. [72] S. E L -A SSAD et R. L EHN. E-learning development and learning environment : the wblst platform. In 3rd International Conference on E-Society, pages 309–315, 2005. [73] K. F UJIMOTO, I. KOJADINOVIC, et J.-L. M ARICHAL. Characterizations of probabilistic and cardinal-probabilistic interaction indices. In 10th international conference on Information Processing and Management of Uncertainty in Knowledge-Based Systems (IPMU’04), pages 45–52, Perugia, Italy, July 2004. ISBN : 88-87242-54-2. [74] F. F URST et F. T RICHET. Integrating domain ontologies into knowledge-based systems. In 18th international Florida Artificial Intelligence Research Symposium conference (FLAIRS’2005), pages 826–827. AAAI Press, 2005. ISBN : 1-57735-234-3. [75] F. F URST et F. T RICHET. TooCoM : bridge the gap between ontologies and knowledge-based systems. In 17th international conference on Knowledge Engineering and Software Engineering (SEKE’2005), pages 826–827, Tapei (Taiwan), 2005. KSI editors. [76] F. F URST et F. T RICHET. Reasoning on heavyweight ontology with conceptual graphs. In Supplement Proceedings of the 14th International Conference on Conceptual Structures (ICCS’2006). Aalborg University Press, 2006. To appear. [77] F. F URST et F. T RICHET. Reasoning on the semantic web needs to reason both on ontologybased assertions and on ontologies themselves. In Proceedings of the International Workshop “Reasoning on the Web” (RoW’2006), Co-located with the 15th International World Wide Web Conference (WWW’2006), Edinburgh, 2006. Aalborg University Press. To appear. [78] M. G RABISCH, I. KOJADINOVIC, et P. M EYER. Using the Kappalab R package for Choquet integral based multi-attribute utility theory. In 11th international conference on Information Processing and Management of Uncertainty in knowledge-based systems (IPMU 2006), Paris, France, July 2006. In press. [79] X.-H. H UYNH, F. G UILLET, et H. B RIAND. ARQAT : an exploratory analysis tool for interestingness measures. In J.JANSSEN et P. ( EDS ), réds., 11th international symposium on Applied Stochastic Models and Data Analysis (ASMDA’05), pages 334–344, Brest, France, May 17-20 2005. ISBN : 2-908849-15-1. [80] X.-H. H UYNH, F. G UILLET, et H. B RIAND. Clustering interestingness measures with positive correlation. In 7th International Conference on Enterprise Information Systems (ICEIS’05), pages 248–253, Miami (USA), 2005. ISBN : 972-8865-19-8. [81] X.-H. H UYNH, F. G UILLET, et H. B RIAND. A data analysis approach for evaluating the behavior of interestingness measures. In 8th Int. Conf. on Discovery Science, (DS’05), volume 3735 XVI, pages 330–337. Springer, 2005. ISBN : 3-540-29230-6. COD : COnnaissances et Décision 299 [82] X.-H. H UYNH, F. G UILLET, et H. B RIAND. Discovering the stable clusters between interestingness measures. In 8th International Conference on Enterprise Information Systems (ICEIS’06), Cyprus, 2006. A paraı̂tre. [83] X.-H. H UYNH, F. G UILLET, et H. B RIAND. Evaluating interestingness measures with correlation graph. In S PRINGER, réd., 19th international conference on Industrial, Engineering & Other Applications of Applied Intelligent Systems (IEA-AIE’06), Annecy (France), 2006. A paraı̂tre. [84] X.-H. H UYNH, F. G UILLET, et H. B RIAND. Extracting representative measures for the postprocessing of association rules. In 4th international IEEE conference on Computer Sciences : Research & Innovation - Vision for the Future (RIVF’06), pages 99–106, Ho-chiminh Ville (Vietnam), 2006. IEEE Computer Society Press. A paraı̂tre. [85] I. KOJADINOVIC. Unsupervised aggregation by the discrete Choquet integral based on entropy functionals : application to the evaluation of students. In Conference on Modeling Decisions for Artificial Intelligence (MDAI’04), Lecture Notes in Artificial Intelligence (LNAI 3131), pages 163–174, Barcelona, Spain, 2004. Springer-Verlag. [86] I. KOJADINOVIC. A maximum quadratic entropy principle for capacity identification. In 4th conference of the EUropean Society for Fuzzy Logic And Technology (EUSFLAT’05), pages 216– 221, Barcelona, Spain, September 2005. [87] I. KOJADINOVIC. On the use of mutual information in data analysis : an overview. In 11th international symposium on Applied Stochastic Models and Data Analysis (ASMDA’05), pages 738–747, Brest, France, May 2005. ISBN : 2 - 908848-15-1. [88] I. KOJADINOVIC. An alternative definition of importance and interaction indices in the framework of aggregation by the bipolar Choquet integral. In 11th Int. Conf. on Information Processing and Management of Uncertainty in Knowledge-Based Systems (IPMU 2006), Paris, France, July 2006. In press. [89] I. KOJADINOVIC et J.-L. M ARICHAL. Entropy of bi-capacities. In 4th conference of the EUropean Society for Fuzzy Logic And Technology (EUSFLAT’05), Barcelona, Spain, September 2005. [90] J. M IKOLAJCZAK, G. R AMSTEIN, et Y. JACQUES. SVM-based classification of distant proteins using hierarchical motifs. In 5th international conference on Intelligent Data Engineering and Automated Learning (IDEAL’04), pages 25–30, Exeter, UK, Août 2004. Springer. [91] B. P INAUD, P. K UNTZ, F. G UILLET, et V. P HILIPP É. Graphical visualization in the knowledge management system atanor. In Proccedings of International Conference on Knowledge Management (I-Know’06), J. of Universal Computer Science (J.UCS), pages 481–488. Springer, 2006. [92] B. P INAUD, P. K UNTZ, et R. L EHN. Dynamic graph drawing with a hybridized genetic algorithm. In I. PARMEE, réd., Automatic Computing in Design and Manufacture VI, pages 365–375. Springer, 2004. [93] V. P OSEA et M. H ARZALLAH. Building a competence ontology. In Proc. of the workshop Enterprise modelling and Ontology of the International Conference on Practical Aspects of Knowledge Management (PAKM 2004). Springer, Wien, Austria, 2004. [94] V. R ADEVSKI et F. T RICHET. Common : a framework for developing knowledge-based systems dedicated to competency-based management. In Proceedings of the 28th International Conference on Information Technology Interface (ITI’2006), 2006. To appear. [95] V. R ADEVSKI et F. T RICHET. Competency-based systems dedicated to e-recruitment. In Proceedings of the 4th International Conference on Computer Science and Information Technology (CSIT’2006), 2006. ISBN : 9957-8592-0-X, To appear. 300 Rapport d’activité LINA 2003–2006 [96] F. S PAGNOLO et R. G RAS. A new approach in Zadeh’s classification : fuzzy implication through statistic implication. In 23nd conference of the North American Fuzzy Information Processing Society (NAFIPS-IEEE’04), Banff, AB Canada, June 27-30 2004. ISBN : 0-7803-8376-1. [97] R. T EUSAN, A. B IHOUEE, N. L E M EUR, G. R AMSTEIN, et J. L EGER. Madtools : management tool for the mining of microarray data. In European Conference on Computational Biology, pages 391–392, Paris, 2003. [98] F. T RICHET et F. F URST. Reasoning domain ontologies at the meta-level. In EMOI-INTEROP Workshop ”Enterprise Modelling and Ontologies for Interoperability”, volume 160, Porto (Portugal), 13-14 June 2005. CEUR-WS. ISSN : 1613-0073. D2. Colloques de diffusion nationale avec comité de lecture et actes [99] F. F URST et F. T RICHET. Aligner des ontologies lourdes : une méthode et un outil. In Actes des journées francophones Ingénierie des Connaissances (IC’2005), pages 121–132. Presse Universitaire de Grenoble (PUG), 2005. ISBN : 2-7061-1284-0. [100] F. F URST et F. T RICHET. Raisonner sur des ontologies lourdes à l’aide de graphes conceptuels. In Actes des journées francophones Inforsid’2006, 2006. E. Colloques (avec ou sans actes) à diffusion restreinte [101] M. A HLONSOU ’ H, E. B LANCHARD, H. B RIAND, et F. G UILLET. Transcription des concepts du diagramme de classes UML en OWL Full. In Atelier Modélisation des Connaissances de la conférence Extraction et Gestion des Connaissances (EGC’05), pages 63–76, Paris, 18 janvier 2005. [102] N. B EAUME, J. M IKOLAJZACK, G. R AMSTEIN, et Y. JACQUES. Recherche de nouveaux membres de la superfamille des cytokines par Séparateurs à Vastes Marges. In 6ème Journées Ouvertes de Biologie, Informatique et Mathématiques (JOBIM’05), 2005. [103] E. B LANCHARD. Projection d’une ontologie dans un espace muni d’une mesure sémantique. In 7èmes Rencontres nationales des Jeunes Chercheurs en Intelligence Artificielle (RJCIA’05). 323–326, 2005. Poster. [104] E. B LANCHARD et M. H ARZALLAH. Introduction de mécanismes d’inférence en gestion des compétences. In 15ème journées francophones d’Ingénierie des Connaissances (IC’04), pages 1–2. Presses Universitaires de Grenobles, 2004. Poster. [105] E. B LANCHARD et M. H ARZALLAH. Reasoning on competence management. In Knowledge Management and Organizational Memories Workshop at the 16th European Conference in Artificial Intelligence (ECAI’04), pages 12–17, 2004. [106] J. B LANCHARD, F. G UILLET, et H. B RIAND. Exploratory visualization for association rule rummaging. In 4th International Workshop on Multimedia Data Mining, MDM/KDD2003, in conjunction with KDD’2003, pages 107–114, Washington DC, USA, August 24-27 2003. [107] J. B LANCHARD, F. G UILLET, et H. B RIAND. A virtual reality environment for knowledge mining. In 11th Mini-Euro Conference, Human Centered Processes, HCP’2003 : Distributed Decision Making and Man-Machine Cooperation, pages 175–179, Luxembourg, May 5-7 2003. COD : COnnaissances et Décision 301 [108] J. B LANCHARD, F. G UILLET, H. B RIAND, et R. G RAS. IPEE : Indice Probabiliste d’Ecart à l’Equilibre pour l’évaluation de la qualité de règles. In Atelier Qualité des Données et des Connaissances de la conférence Extraction et Gestion des Connaissances (DKQ-EGC’05), pages 19–33, Paris, 2005. [109] S. DAVIET, H. D ESMIER, et G. ROZEC. Un système d’agents émotionnels pour l’aide à la décision. In U. de B ORDEAUX, réd., 6ème Colloque des Jeunes Chercheurs en Sciences Cognitives (CJCSC’05), pages 148–152, Bordeaux, France, 2-4 mai 2005. Creative Commons. [110] H. D ESMIER et I. KOJADINOVIC. Approximations k-additive de l’information mutuelle pour la sélection de variables dans les problèmes de discrimination. In Rencontres de la Société Française De Statistique, 2006. [111] H. D ESMIER, I. KOJADINOVIC, et P. K UNTZ. Classification hiérarchique de variables discrètes basée sur l’information mutuelle en pré-traitement d’un algorithme de sélection de variables pertinentes. In Rencontres de la Société Francophone de Classification, 2006. [112] H. D ESMIER, I. KOJADINOVIC, et P. K UNTZ. Une classification hiérarchique de variables discrètes basée sur l’information mutuelle en pré-traitement d’un algorithme de sélection de variables pertinentes. In RIAS, 2006. [113] X.-H. H UYNH, F. G UILLET, et H. B RIAND. Extraction de mesures d’intérêt représentatives pour le post-traitement des règles d’association. In Atelier Qualité des Données et des Connaissances de la conférence Extraction et Gestion des Connaissances (DKQ-EGC’05), pages 45–54, Lille (France), 2006. [114] I. KOJADINOVIC. Identification of Choquet integral models by means of a minimum variance principle. In 3rd international summer school on AGgregation OPerators (AGOP’05), Lugano, Switzerland, July 2005. In Press. [115] I. KOJADINOVIC. Approximation and identification of capacities and bi-capacities using a minimum distance principle. In 27th Linz Seminar on Fuzzy Set Theory ”Preferences, Games and Decisions”, pages 83–86, Linz, Austria, February 2006. [116] I. KOJADINOVIC et J.-L. M ARICHAL. An extension of the Shannon entropy to bi-capacities. In 3rd international summer school on AGgregation OPerators (AGOP’05), pages 67–72, Lugano, Switzerland, July 2005. [117] C. M ARINICA, Y. F OSS É, S. D. and Henri B RIAND, et F. G UILLET. Représentation d’expertise psychologique sous la forme de graphes orientés, codés en RDF. In Conférence Extraction et Gestion des Connaissances (EGC’06), pages 713–714, Lille, 17 janvier 2006. Poster. [118] J. M IKOLAJCZAK, G. R AMSTEIN, et Y. JACQUES. Classification de protéines distantes par motifs hiérarchiques. In 5èmes Journées Ouvertes Biologie Informatique Mathématiques (JOBIM’04), Montréal, 28-30 juin 2004. [119] J. M IKOLAJCZAK, G. R AMSTEIN, et Y. JACQUES. Détection de faibles homologies de proteines par machines à vecteurs de support. In 11èmes Rencontres de la Société Francophone de Classification (RSFC’04), Bordeaux, France, 8-10 septembre 2004. [120] B. P INAUD et P. K UNTZ. Un guide sur la toile pour sélectionner un logiciel de tracé de graphes. In Conférence sur la Veille Stratégique Scientifique et Technologique (VSST’04), volume 1, pages 339–347, Toulouse, 2004. [121] B. P INAUD, P. K UNTZ, M. D EL ÉPINE, et J. BARBERET. GVSR : un annuaire de logiciels de manipulation et d’édition de graphes. In Conférence Extraction et Gestion des Connaissances (EGC’04), volume 2, page 416, 2004. 302 Rapport d’activité LINA 2003–2006 [122] B. P INAUD, P. K UNTZ, et F. P ICAROUGNE. The website for graph visualization software references (gvsr). In Graph Drawing, 2006. to appear. [123] N. RONARC ’ H, G. ROZEC, F. G UILLET, A. N EDELEC, S. BAQUEDANO, et V. P HILIPP É. Modélisation des connaissances émotionnelles par les cartes cognitives floues. In Atelier Modélisation des Connaissances de la conférence Extraction et Gestion des Connaissances (EGC’05), pages 11–20, Paris, 18 janvier 2005. F1. Ouvrages ou chapitres d’ouvrage scientifique [124] H. A ZZAG, F. P ICAROUGNE, C. G UINOT, et G. V ENTURINI. Processing and Managing Complex Data for Decision Support, chap. VRMiner : a tool for multimedia databases mining with virtual reality, pages 318–339. Idea Group Inc., 2006. ISBN : 159140656-0. [125] G. B ERIO, M. H ARZALLAH, et G. S ACCO. Encyclopaedia of Portal Technology and Applications, chap. Portals for Integrated Competence Management 2006. Idea Group Inc., 2006. A paraı̂tre. [126] X.-H. H UYNH, F. G UILLET, J. B LANCHARD, P. K UNTZ, R. G RAS, et H. B RIAND. A graph-based clustering approach to evaluate interestingness measures : a tool and a comparative study, volume Quality measures in Data Mining of Studies in Computational Intelligence, chap. 2. SpringerVerlag, 2006. A paraı̂tre. [127] P. K UNTZ, R. L EHN, F. G UILLET, et B. P INAUD. Visualisation en Extraction de Connaissances, numéro spécial Revue Nationale des Technologies de l’Information (RNTI), volume E1, chap. Découverte interactive de règles d’association via une interface visuelle, pages 113–126. Cépaduès, 2006. [128] P. K UNTZ, B. P INAUD, et R. L EHN. Elements for the description of fitness landscapes associated with local operators for layered drawings of directed graphs. In M. R ESENDE et J. de S OUSA, réds., Metaheuristics : Computer Decision-Making, volume 86 of Applied optimization, pages 405–420. Kluwer Academic Publishers, 2004. F3. Direction d’ouvrage [129] H. B RIAND, M. S EBAG, R. G RAS, et F. G UILLET. Mesures de qualité pour la fouille de données, Revue des Nouvelles Technologies de l’Information (RNTI) Numéro spécial. Cépaduès Edition, 2004. ISBN : 2-85428-646-4. [130] F. P OULET et P. K UNTZ, réds. Visualisation en extraction de connaissances, numéro spécial Revue Nationale des Technologies de l’Information (RNTI), E1. Cépaduès-Editions, 2006. à paraı̂tre. G. Autres manifestations sans actes [131] N. B EAUME, J. M IKOLAJZACK, G. R AMSTEIN, et Y. JACQUES. PRHoD : un outil de classification de protéines pour la recherche d’homologues distants. In Atelier bio de la conférence Extraction et Gestion des Connaissances (EGC’06), 2006. porté de la conférence : nationale, type de publication : atelier. [132] F. F URST et F. T RICHET. Alignement d’ontologies de domaine basé sur les axiomes. Bulletin de l’AFIA (Association Française d’Intelligence Artificielle), 60, 2005. COD : COnnaissances et Décision 303 [133] X.-H. H UYNH. Une approche exploratoire pour la qualié des règles d’association. In 5èmes Journées des DOCtorants (JDOC’05), pages 89–92, Nantes (France), 2005. [134] F. T RICHET et F. F URST. Raisonner sur les ontologies au niveau méta. In Journée thématique ”Raisonner le web sémantique à l’aide de graphes” (RWSG’2005) organisée lors de la plateforme AFIA, Nice, 2005. H. DEA, thèses et habilitations [135] M. A LBERT. Modélisation d’un agent cognitif en rdf. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2005. Co-encadrement avec A. Magda Florea, Politehnica Bucarest, Roumanie. [136] C. A RCHAUX. Conception d’un système d’information dédié à l’estimation de la valeur des clients en téléphonie mobile prépayée. PhD thesis, Université de Nantes (collaboration ENSIETA), 2005. [137] H. E. ATTAR. Analyse d’un questionnaire par des techniques d’ecd. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2005. [138] E. BARBU. Etude de la robustesse de l’intensité d’implication par une méthode de boostrap. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2003. [139] A. B ERRIAU. Analyse des propriétés structurelles et fonctionnelles d’un corpus de réseaux de galeries chez une colonie de fourmis. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2003. Co-encadrement avec G. Théraulaz, CCA, Toulouse. [140] E. B LANCHARD. Développement d’un système d’inférence sur les compétences. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2004. [141] J. B LANCHARD. Un système de visualisation pour l’extraction, l’évaluation, et l’exploration interactives des règles d’association. PhD thesis, Université de Nantes, 2005. [142] L. B OUDJELOUD -A SSALA. Visualisation et algorithmes génétiques pour la fouille de grands ensembles de données. PhD thesis, Université de Nantes (collaboration ESIEA Recherche), 2005. [143] J. B RUNNER. Ontologies et recherche d’information. Master’s thesis, Université de Nantes, 2003. Co-Encadrement M. Leclere - F. Trichet, LINA/ E-Lab -Bouygues Télécom. [144] S. DAVIET. Modélisation et extraction de connaissances sur une plateforme multi-agents. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2004. Co-encadrement avec S. TraussanMatu, Politehnica Bucarest, Roumanie. [145] H. D ESMIER. Modélisation d’un agent émotionnel avec agent-uml. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2004. Co-encadrement avec A. Magda Florea, Politehnica Bucarest, Roumanie. [146] T.-N. D O. Visualisation et séparateurs à vaste marge en fouille de données. PhD thesis, Université de Nantes (collaboration ESIEA Recherche), 2005. [147] F. F ÜRST. Contribution à l’ingénierie des ontologies : une méthode et un outil d’opérationnalisation. PhD thesis, Université de Nantes, 2004. [148] L. G EORGESCU. Modélisation bdi des connaissances d’un agent émotionnel dans jadex. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2005. Co-encadrement avec A. Magda Florea, Politehnica Bucarest, Roumanie. 304 Rapport d’activité LINA 2003–2006 [149] L. G EORGET. Extraction de connaissances spatio-temporelles. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2005. [150] C. G ERZ É. Formalisation et intégration d’une expertise sig sur le cabotage dans un outil d’aide à la décision. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2003. [151] C. M ARINICA. Modélisation de règles d’interactions par approche web sémantique. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2006. [152] J. M ICKOLAJCZAK. Extraction de signatures complexes pour la découverte de nouveaux membres dans des familles de protéines connues. PhD thesis, Université de Nantes (collaboration INSERM), 2005. [153] C. N EDU. A local approach for extracting association rules. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2004. Co-encadrement avec B. Duval, LERIA, Angers. [154] M. T. N GUYEN. Analyse d’une base de graphes issus d’un simulateur en intelligence en essaim. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2006. [155] B. P INAUD. Contribution à la visualisation des connaissances dans une mémoire d’entreprise : application sur le serveur Atanor. PhD thesis, Université de Nantes, 2006. [156] E. P OPOVICI. Un atelier pour l’évaluation des indices de qualité. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2003. Co-encarement avec S. Traussan-Matu, Politehnica Bucarest, Roumanie. [157] D. P ORUMBEL. Comparaison de grands graphes - application à l’analyse de réseaux de sociabilité au moyen-age. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2006. [158] V. P OSEA. Développement d’une ontologie des compétences. Master’s thesis, Ecole Polytechnique de l’Université de Nantes, 2004. [159] A. R AHMANIA. Parallélisation d’un algorithme de kdd. Master’s thesis, Université de Nantes, 2004. [160] G. D. R ENTY. Visualisation de règles d’associations. Master’s thesis, Université de Nantes, 2003. Co-encadrement avec F. Poulet, ESIEA Recherche Laval. J. Rapports internes [161] F. F URST et F. T RICHET. Axiom-based ontology matching : a method and an experiment. Rapport technique, LINA (RR.05.02) Université de Nantes, 2005. Équipe ComBi : Combinatoire et Bio-Informatique 10.1 Composition de l’équipe Responsable : Irena Rusu Chercheurs-enseignants : – Jérémie Bourdon maı̂tre de conférences, Université de Nantes, 1.9.2003 ATER, Université de Caen, — – Damien Eveillard maı̂tre de conférences, Université de Nantes, 1.09.2006 – Guillaume Fertin professeur, Université de Nantes, 1.11.2005 maı̂tre de conférences, Université de Nantes, — – Irena Rusu professeur, Université de Nantes, — – Christine Sinoquet maı̂tre de conférences, Université de Nantes, — Ingénieurs de recherche : – Sylvain Demey Ingénieur de Recherche CDD, LINA, 1.4.2005 Chercheurs doctorants : – Guillaume Blin doctorant MENESR, Université de Nantes, — – Alban Mancheron doctorant Bourse région, Université de Nantes, — – Christiophe Moan doctorant Bourse MENESR, Université de Nantes, — 305 306 Rapport d’activité LINA 2003–2006 10.2 Présentation et objectifs généraux 10.2.1 Historique La mise sur pied des programmes de séquençage des génomes, puis des programmes de recherche systématique de la fonction des gènes et de leur expression, a conduit ces dernières années à une accumulation sans précédent de données biologiques. Il s’agit d’un mouvement qui tend à s’accélérer et à s’amplifier. Cependant, les données accumulées à l’issue de ces programmes ne suffisent pas à prétendre à la connaissance biologique. La bio-informatique, en structurant et en exploitant ces données, vise à jouer ce rôle indispensable qu’est la transformation de données en connaissances. Cette discipline est également marquée par une très grande variété des problématiques biologiques étudiées (génome, ADN, ARN, réseaux de régulation, réseaux d’interaction, etc.) ainsi que des techniques informatiques utilisées pour les résoudre (algorithmique, base de données, synthèse d’images, etc.). Le point commun à toutes ces variantes est que l’on cherche dans tous les cas à extraire des connaissances à partir de données obtenues en masse par les biologistes. L’équipe ComBi est née de la volonté du LINA/IRIN de participer activement à ce mouvement, et de s’inscrire dans le domaine de la recherche en informatique appliquée aux problèmes issus de la biologie. Ses bases ont été posées avec l’arrivée à Nantes en 2000 d’Irena Rusu et de Guillaume Fertin, tous deux provenant de domaines de recherche orientés autour de l’algorithmique, et notamment l’algorithmique de graphes ; mais ce n’est que fin 2001 que l’équipe ComBi a été créée, avec un premier thème de recherche sur la découverte de motifs ; dès septembre 2002, la thématique s’est diversifiée et les contacts avec des collègues biologistes se sont multipliés grâce au recrutement de Christine Sinoquet en tant que maı̂tre de conférences. Jérémie Bourdon, recruté en septembre 2003, apporte à l’équipe les compétences en statistiques indispensables à toute recherche en bio-informatique. 10.2.2 Les thèmes de recherche L’objectif principal de l’équipe ComBi est de travailler en étroite collaboration avec les biologistes pour pouvoir fournir des solutions algorithmiques rapides et pertinentes aux problèmes qu’ils se posent. En effet, s’il produit de par sa recherche des données en très grand nombre, le biologiste a besoin de l’informatique pour lui permettre d’analyser ces données de façon automatisée, afin de répondre au mieux aux questions qu’il se pose, et ainsi engendrer de la connaissance à partir des données brutes. Il est très fréquent que les questions posées par le biologiste soient de nature intrinsèquement complexes, et qu’ainsi les problèmes qu’il pose nécessitent une analyse fine d’un point de vue informatique, le but final étant de créer des outils logiciels rapides et efficaces (i.e., dont la réponse est pertinente). L’équipe ComBi aborde cet objectif de deux manières distinctes : 1. la première consiste à travailler « main dans la main » avec le biologiste, de façon à ce que le problème soit clairement formalisé, modélisé, et que le biologiste puisse, en tant qu’utilisateur, fournir un retour permanent sur les types de réponses que nous pourrions lui fournir, et valider en bout de chaı̂ne ces réponses. 2. la deuxième consiste, de manière plus générale, à s’intéresser et à tenter de résoudre des problèmes déjà modélisés, étudiés dans la littérature et qui sont au coeur des préoccupations de la communauté des biologistes. Dans ce cadre, deux principaux thèmes de recherche sont actuellement développés dans l’équipe. Chaque membre de l’équipe participe plus particulièrement à l’une de ces thématiques, mais intervient ComBi : Combinatoire et Bio-Informatique 307 également dans les autres thématiques dès que ses compétences sont nécessaires. Dans chacun de ces thèmes de recherche, nous nous attachons à résoudre des problèmes d’une nature appliquée, en appuyant les solutions sur des aspects théoriques rigoureux et sur des tests significatifs tant du point de vue du type de données en entrée, que du point de vue des éléments de l’analyse. Ce dernier point, les tests, est particulièrement important en bio-informatique puisque la modélisation des problèmes est d’une telle difficulté que seuls des tests bien choisis, prenant en compte à la fois la variété biologique et le contexte, peuvent valider ou invalider une solution. Thématique « Bio-informatique du génome » Les analyses de séquences d’ADN ou ARN reposent principalement sur la recherche, le plus souvent approchée, de motifs linéaires ou structurés sur une ou plusieurs séquences données. De nombreux, et très bons, programmes existent pour rechercher une séquence dans une banque (ex. BLAST, FASTA), pour identifier les similarités entre des séquences utilisant l’alignement multiple (ex. ClustalW), pour analyser le profil des séquences utilisant des modèles de Markov cachés (ex. HMMER). Les résultats, à la fois du séquençage et des analyses, se trouvent dans de nombreuses bases de données, soit privées soit publiques, dont les dimensions augmentent beaucoup plus rapidement que la puissance de calcul des ordinateurs (qui, elle-même, augmente à une vitesse à couper le souffle). De nouveaux, meilleurs algorithmes sont nécessaires. Pour ne rien arranger, certains problèmes, même souvent étudiés, ne sont pas encore convenablement résolus : la diversité des séquences biologiques est telle que la bio-informatique ne peut parfois pas réunir en un seul modèle, qui se doit toutefois d’être très expressif, toute la richesse de cette diversité. Notre travail a porté sur ce dernier type de problématiques, dont deux ont attiré notre attention. Découverte et analyse statistique de motifs La découverte (ou l’extraction) de motifs, consistant à exhiber un motif (inconnu au départ) se trouvant sur un nombre minimum (fourni) de séquences en entrée, est un problème assez souvent traité dans la littérature, mais dont la qualité de la résolution est encore insatisfaisante ; les raisons principales sont, d’une part, le manque de souplesse des programmes actuels (qui ont, d’habitude, une définition très restreinte du type de motif à découvrir) et, d’autre part, une évaluation insuffisante de la pertinence des solutions obtenues. Cela se traduit, pour un utilisateur biologiste, par une quasi-impossibilité de savoir, dès le départ, quel est le meilleur programme à utiliser pour résoudre son problème spécifique et, une fois le choix fait et l’exécution réalisée malgré tout, par la quasiimpossibilité de retrouver, parmi les résultats obtenus, ceux qui correspondent à sa recherche. S’ajoute à cela, pour le biologiste, la difficulté de fixer les nombreux paramètres demandés par ces programmes et, pour l’informaticien, la complexité impressionnante du problème nécessitant un compromis entre le temps d’exécution et la qualité des résultats. Ces difficultés mises ensemble fournissent un problème qui, même si beaucoup étudié et bénéficiant de nombreux logiciels pour sa résolution partielle, reste mal résolu pour un biologiste dans le besoin. Motivés initialement par les recherches sur la bactérie Thermotoga maritima de l’un de nos collègues biologistes, nous nous sommes penchés sur ce problème avec les approches suivantes : ∗ Recherche exacte/probabiliste de similarités fortement paramétrées. Dans cette approche, le but est de proposer une définition complexe de la notion de similarité entre deux séquences, qui permette à la fois un paramétrage fin du type de motif formel à chercher mais aussi la possibilité d’un paramétrage par défaut adapté à chaque type de motif biologique recherché. Le problème est ainsi résolu dans sa version la plus large du point de vue formel, mais le biologiste dispose d’un paramétrage rapide et aisé 308 Rapport d’activité LINA 2003–2006 en fonction de l’instance particulière qu’il doit analyser. Le compromis entre le temps d’exécution et la qualité des résultats est résolu grâce à des méthodes probabilistes dont les résultats sont analysés statistiquement. ∗ Distance de Hamming et indexation de textes. La distance de Hamming est l’une des plus utilisées pour calculer la distance entre deux séquences de la même longueur, simplement en comptant le nombre de différences constatées à chaque position i. A l’aide de cette distance, une notion de similarité entre n séquences de la même longueur peut être définie en demandant qu’un « modèle » existe, c’està-dire une (autre) séquence dont la distance de Hamming par rapport à chacune des séquences initiales soit bornée par une valeur donnée. Le meilleur algorithme connu (non-polynomial) pour la découverte de motifs basée sur cette notion de similarité est dû à Sagot et utilise une structure d’index, l’arbre des suffixes. L’utilisation de structures d’index (arbres des suffixes, automates des suffixes, etc.) pour stocker et analyser les séquences à traiter a beaucoup d’avantages pour la recherche exacte de motifs, mais les résultats sont encore très médiocres quand il s’agit de les utiliser pour la recherche approchée de motifs ou pour la découverte de motifs. Des études pour trouver d’autres structures d’index, à la fois compactes et flexibles sont en cours et s’orientent vers l’utilisation de structures qui permettraient des “erreurs” dans la représentation des séquences, mais seraient plus faciles à implémenter et à gérer. Comparaison de structures secondaires d’ARN En biologie moléculaire, la comparaison de structures d’ARN, ainsi que la recherche de motifs dans de telles structures, sont d’un très grand intérêt pour résoudre des problèmes majeurs aussi variés que la reconstruction phylogénétique (i.e., la reconstruction des arbres “généalogiques” des espèces), la prédiction du repliement en 3D de l’ARN, ou bien l’identification d’une fonction commune à un ensemble de molécules d’ARN. La comparaison de structures d’ARN, la classification ainsi que la recherche ou l’extraction de motifs dans les structures secondaires sont donc devenues des problèmes algorithmiques cruciaux (cf. par exemple [78]). Or, l’ARN possède une structure plus riche qu’un simple “mot” comme l’ADN, puisqu’il existe, entre paires de bases, des liaisons hydrogènes. Ainsi, comparer, rechercher ou extraire des motifs communs, ne serait-ce que dans deux structures d’ARN, devient algorithmiquement difficile. Il convient alors de développer des méthodes qui tiennent compte de ces difficultés et qui permettent de les contourner, pour produire de bons résultats. Thématique « Génomique Comparative » Les génomes d’un grand nombre d’espèces sont désormais entièrement séquencés, et, la technologie aidant, le phénomène s’accélère de façon soutenue. A partir de ces données, on cherche à établir des phylogénies (arbres d’évolution des espèces). Cela pose deux types de problèmes : le premier consiste à déterminer dans quelle mesure les espèces sont proches (et donc à définir des distances inter-espèces), et le deuxième consiste à construire la phylogénie à partir de ces distances. Mesures de (dis)similarité entre Génomes On cherche ici à comparer des génomes entre eux, et notamment à les comparer deux à deux. Dans ce cas, il faut déterminer une mesure (i.e., un nombre) qui permet d’évaluer, à travers leurs génomes, la proximité (ou non) des deux espèces étudiées. Ces mesures doivent pouvoir capturer le fait qu’au cours de l’évolution biologique, des échanges, des inversions, des apparitions ou des disparitions de fragments existent le long du génome ; autant de phénomènes qui entraı̂nent donc une modification du nombre et de l’ordre des gènes dans un génome. Deux grandes problématiques émergent à l’heure actuelle : ComBi : Combinatoire et Bio-Informatique 309 – Proposer des modèles de mesure, qui soient les plus pertinents et représentatifs possibles (notamment, des modèles autorisant insertions et suppressions, qui prennent en compte les duplications de gènes dans les génomes, ou encore qui permettent de comparer des génomes multichromosomiques) – Proposer des méthodes de calcul de ces mesures, puisque, pour toutes les mesures “classiques” existantes (breakpoints, inversions, etc.), le calcul de la mesure devient algorithmiquement difficile, en particulier dès que des duplications de gènes apparaissent. Arbres phylogénétiques Étant donné (1) un ensemble de taxons (espèces, ou populations etc.) et (2) soit un ensemble de caractères de ces taxons, soit une matrice de dissimilarités entre chaque paire de taxons, un arbre phylogénétique est un scénario possible de l’évolution de l’ensemble des taxons à partir d’un ancêtre unique. Alors que les taxons sont des éléments connus, les informations fournies avec les taxons (les caractères ou la matrice de dissimilarités) contiennent d’habitude des erreurs qui font que l’inférence du “vrai” scénario est extrêmement difficile. Nous nous sommes penchés sur l’effet de la sous-estimation des valeurs de dissimilarité et sur les moyens de la détecter. 10.2.3 Perspectives L’informatique est une science dont peu de domaines, scientifiques, industriels ou autres, peuvent actuellement faire abstraction. La biologie est bien évidemment un de ces domaines, du fait de la masse de données générée, et du besoin d’analyse et de compréhension de ces données. Les deux mots clés de notre projet sont ceux qui caractérisent l’équipe : combinatoire et bio-informatique. La combinatoire est le fondement de tout notre travail. La bio-informatique est notre domaine d’applications clé. Notre but est donc de développer des modèles et des méthodes (principalement) combinatoires adaptés aux traitement des objets et phénomènes biologiques, dans le cadre des deux grandes thématiques présentées ci-avant (à savoir, « Bio-informatique du génome » et « Génomique Comparative »). Les moyens que nous mettons en avant pour relever ces défis sont nos compétences en algorithmique discrète, algorithmique de graphes, complexité algorithmique, probabilités et statistique. Nous sommes attachés à l’idée que l’informatique ne peut être utile à la biologie comme à tout autre domaine, à long terme, qu’en développant des modèles et des méthodes rigoureuses, robustes, ayant une large applicabilité et une garantie des résultats obtenus. Pour cette raison, nous nous employons à étudier complètement d’un point de vue théorique les problèmes de biologie sur lesquels nous nous penchons, dans le but de comprendre à quel niveau les concepts informatiques existants sont insatisfaisants. Les solutions que nous proposons ensuite visent donc à combler les lacunes de l’informatique actuelle (et plus précisément de la combinatoire) face aux nouvelles applications. Les programmes que nous développons sont, par conséquent, autant des outils de résolution pour la biologie que des outils de test pour les concepts informatiques introduits. Précisons que, de par la nature même de nos travaux, il est indispensable que les deux règles suivantes soient respectées : – de travailler de façon étroite et régulière avec des biologistes, pour pouvoir formaliser et modéliser de façon pertinente les problèmes posés, ainsi que pour valider les solutions que nous apportons. – de tester nos réponses sur des jeux de données, qui peuvent être fournis par les biologistes, être des benchmarks classiques ou bien encore être issus de la littérature. Actuellement, les deux thématiques « Bio-informatique du génome » et « Génomique Comparative » sont en plein développement. Nous pensons pouvoir nous attaquer à moyen terme (c’est-à-dire, dans les 4 ans qui viennent) aux points suivants, qui sont autant de verrous à lever : 310 Rapport d’activité LINA 2003–2006 1. faire appel systématiquement (lorsque cela est possible) aux méthodes probabilistes pour améliorer le temps d’exécution de nos algorithmes (avec une perte minimum en qualité des résultats). 2. s’investir dans la prédiction des haplotypes à grande échelle. 3. faire évoluer les modèles actuels de calcul de mesures de (dis)similarité entre deux génomes, en proposant des modèles qui puissent à la fois prendre en compte : (i) la multiplicité d’un même gène dans un génome, (ii) les insertions et suppressions de gènes et (iii) les génomes multichromosomiques. Ces modèles demandent donc à être étudiés et validés. 4. reprendre les méthodes de reconstruction de phylogénies avec ces nouveaux modèles et en étudier les résultats. Ces problématiques, consistant à la fois en une continuation du travail commencé et en une élaboration de nouveaux modèles et méthodes adaptés aux problèmes traités, sont à la pointe des recherches effectuées actuellement dans ces domaines. Elles s’inscrivent dans le cadre de plusieurs collaborations très serrées, avec le laboratoire ABISS de Rouen, le LRI d’Orsay, le laboratoire LaCIM de l’Université du Québec à Montréal (Canada), l’Université d’Haifa (Israël) et l’Université d’Udine (Italie). 10.3 Fondements scientifiques Les fondements scientifiques à la base de notre travail de recherche sont triples : la biologie, l’algorithmique discrète, et les méthodes probabilistes. 10.3.1 Biologie Les problématiques sur lesquelles travaille l’équipe ComBi étant issues de la biologie, il est évident qu’un des fondements scientifiques de nos travaux est la biologie en elle-même. N’étant pas nous-mêmes des biologistes, nous nous appuyons sur les connaissances de nos collègues biologistes et les interactions directes que nous pouvons avoir avec eux pour formaliser de façon précise leurs besoins et les problématiques associées. Ces interactions peuvent aussi bien avoir lieu lors de réunions informelles de travail que lors de réunions formelles (par exemple, réunions d’ACI IMPBio). 10.3.2 Algorithmique discrète Nous entendons par algorithmique discrète tout ce qui concerne l’étude et la résolution d’un problème modélisé par des données discrètes : la complexité algorithmique, l’optimisation combinatoire, les algorithmes exacts ou approchés. Son but initial est de résoudre les problèmes, qui peuvent être à la base des questions issues de domaines très divers dont la biologie qui nous intéresse plus particulièrement ici, d’une manière efficace : une manière qui donne le (meilleur) résultat en un temps (très) raisonnable y compris sur des données de très grande taille. Le fait de ne pas avoir d’algorithmes en temps polynomial pour certains problèmes est une question cruciale surtout lorsque les données à traiter sont de grande taille. Il est donc indispensable d’avoir au moins intuitivement (mais rigoureusement) un point de vue sur ce que l’on peut raisonnablement attendre d’une solution (c.à.d. un algorithme fournissant une ou plusieurs réponses), en termes de rapidité et de qualité des résultats. Ce point de vue s’obtient en étudiant la complexité de l’algorithme, qui, en ce qui nous concerne, peut-être de la NP-complexité (selon Garey et Johnson [70]) ou de la complexité paramétrée (selon Downey et Fellows [68]). ComBi : Combinatoire et Bio-Informatique 311 Une fois que l’intuition sur la meilleure solution possible a été acquise, la solution est recherchée en fonction de cette intuition et de la qualité des résultats souhaitée : un algorithme exact ou une heuristique, plutôt rapide ou plutôt lent, ceci avec des méthodes d’optimisation combinatoire généralistes ou plus spécifiques à une certaine modélisation (algorithmique des graphes [62], programmation linéaire [66], programmation gloutonne et dynamique [82], algorithmes probabilistes [81], algorithmique des textes [67]). L’évaluation des algorithmes se fait ensuite soit théoriquement, en calculant la complexité au pire ou en moyenne de l’algorithme obtenu, soit pratiquement, en réalisant des statistiques sur la base de tests. L’algorithmique discrète est la base de nos recherches dans les deux thématiques « Bio-informatique du génome » et « Génomique Comparative », dans lesquelles les données sont toujours discrètes et les problèmes sont le plus souvent des problèmes d’optimisation NP-complets. Nous avons, pour ces problèmes, à la fois une approche par des algorithmes exacts (qui sont donc non-polynomiaux mais pour lesquels on cherche, lorsque ceci nous semble possible, des versions polynomiales du point de vue de la complexité parametrée) et par des algorithmes probabilistes. 10.3.3 Méthodes probabilistes Ce type de méthodes trouve ses racines dans le domaine général de l’analyse en moyenne des algorithmes. Ce domaine est né en grande partie des travaux de Knuth [76]. Depuis, il est devenu un domaine fondamental de l’informatique. On en retrouve les principes de base dans l’ouvrage de Sedgewick et Flajolet [87]. L’étude d’un algorithme (ou d’une structure de données) se décompose principalement en trois étapes : une modélisation « probabiliste » des données en entrée de l’algorithme (on parle de source probabiliste de données) ; une modélisation « algébrique » du problème lui-même (par le biais de séries génératrices (entières le plus souvent)) ; une étude « analytique complexe » des séries entières (en effet, les singularités de la série sont fortement liées aux paramètres attendus (moyenne, variance ou encore loi de distribution des sorties de l’algorithme)). Brigitte Vallée a décrit dans [90] une nouvelle manière de modéliser les données en entrée de l’algorithme. Cette modélisation des données est issue du domaine des systèmes dynamiques. Le grand intérêt de cette modélisation est qu’elle permet d’introduire un haut niveau de corrélation des données (ce que ne permettent pas les modèles couramment utilisés) sans toutefois complètement casser le schéma d’étude d’un algorithme (ceci n’est pas le cas pour les modèles probabilistes complexes comme les chaı̂nes de Markov cachées). Ainsi, des résultats quantitatifs très précis peuvent aussi être obtenus dans ce contexte. En bio-informatique le grand intérêt d’utiliser une telle modélisation est qu’elle se rapproche fortement des caractéristiques réelles des séquences. Les résultats qui sont obtenus permettent alors non seulement de calculer un coût moyen réaliste des algorithmes, mais aussi d’améliorer leur fonctionnement car ils fournissent des heuristiques fiables pour réduire l’espace de solutions (à condition que les résultats soient suffisamment précis). Ce type d’heuristique, basé sur une fonction de score, est utilisé dans de nombreux logiciels tels que BLAST ou FASTA. Pour définir ces heuristiques, il faut absolument connaı̂tre la moyenne, la variance et la loi de distribution de cette fonction de score pour un modèle « probabiliste » des séquences suffisamment conforme à la réalité. 10.4 Domaines d’applications Les domaines d’application sont ceux liés aux deux grandes thématiques présentées au paragraphe précédent, à savoir « Bio-informatique du génome » et « Génomique Comparative », et aux grands défis qui y sont associés, à savoir : 312 Rapport d’activité LINA 2003–2006 – Analyse de séquences, recherche et extraction de motifs : bien que largement étudié depuis plusieurs dizaines d’années, ce domaine reste d’actualité en biologie, par exemple pour déterminer les promoteurs forts d’un gène et donc prédire son expression. Un des angles d’attaque originaux de l’équipe est de regarder ces problématiques via l’analyse statistique de motifs. – Comparaison de structures d’ARN : la fonction d’un ARN étant déterminée par sa structure, il est crucial de pouvoir prédire la structure d’un ARN, ceci pouvant être réalisé ab initio ou via des comparaisons avec d’autres ARN connus. – Ordre des gènes et reconstruction phylogénétique : du fait du nombre croissant de génomes séquencés, comparer des espèces entre elles via leur génome est une problématique émergente. Tout au long de la chaı̂ne (détermination des gènes homologues, définition de mesures de similarité, reconstruction phylogénétique), de nouveaux problèmes de modélisation et de calcul apparaissent, qu’il est nécessaire d’étudier et de traiter. Ces applications se sont traduites, au sein de l’équipe ComBi, par la réalisation d’un certain nombre de produits logiciels, créés pour la plupart à la demande des biologistes. Ces collaborations, leurs buts et les réponses proposées sont présentés ci-après. Collaboration avec le Laboratoire de Recherche en Biotechnologies (CNRS 6204) de Nantes Initiée en janvier 2003, cette collaboration renforce les liens établis entre ComBi et l’Unité de Recherche en Biocatalyse dès 2000. Se situant à la pointe des avancées en biologie moléculaire, le Laboratoire de Biotechnologie accueille notamment la plate-forme puces à protéines du consortium Ouest-Génopôle, et développe actuellement une nouvelle technologie en matière de puces à ADN à sondes protéiques. A l’initiative de l’équipe ComBi, coordinatrice du projet, un statisticien a été associé récemment, qui appartient au Laboratoire de Mathématiques Jean Leray de Nantes (UMR 6629). La collaboration porte sur l’élaboration d’une plate-forme générique dédiée à l’extraction et à l’inférence de connaissances sur les promoteurs forts des génomes procaryotes. De nombreuses plate-formes intégrées, permettant l’analyse des génomes procaryotes, selon des optiques différentes, existent déjà (Genostar, HOBACGEN, GenoExpertBacteria, projet BlastSets, pour n’en citer qu’un nombre réduit). Cependant, il manquait un outil dédié à la prédiction automatisée et à l’analyse des promoteurs forts pour les génomes procaryotes (archeobactéries et bactéries). A notre connaissance, aucune entreprise de ce type, tant au niveau national qu’international, ne vise à explorer systématiquement un génome bactérien dans le dessein de déterminer si les promoteurs forts y sont la cible de régulations transcriptionnelles et s’il existe un éventuel déterminisme de la force de transcription sur l’efficacité de traduction. D’une part, diverses compilations autorisées présentent le dogme selon lequel la séquence consensus du promoteur de transcription d’Escherichia coli reste valide pour la très grande majorité des génomes bactériens. BAC T RANS2 s’appuie sur ce dogme pour permettre aux biologistes un accès aux promoteurs forts putatifs d’un génome donné, changeant ainsi radicalement d’échelle d’étude, par rapport aux manipulations à la paillasse, et orientant ces dernières vers les pistes plus susceptibles d’aboutir. L’objectif ne consiste pas seulement à connaı̂tre les potentialités d’un génome en matière d’expression de ses gènes, mais aussi à comparer des génomes de ce point de vue. Par ailleurs, l’analyse statistique menée sur un nombre significatif de génomes, sur le thème du déterminisme entre transcription et traduction, ne pouvait être conduite sans automatisation : l’extraction automatisée de diverses caractéristiques descriptives des promoteurs forts est un préalable à cette étude statistique systématique. Enfin, en recherche appliquée, la prédiction de promoteurs forts intéresse directement le domaine des biotechnologies, lorsqu’il s’agit d’accroı̂tre l’expression de gènes d’intérêt en les associant à des promoteurs forts. ComBi : Combinatoire et Bio-Informatique 313 Le projet concrétise une collaboration réelle entre biologistes, informaticiens et mathématiciens, avec apport de valeur ajoutée au projet commun, sur une thématique scientifique d’intérêt indéniable sur plusieurs plans : – l’apport de connaissances en génomique fonctionnelle, en analyse du transcriptome, en analyse comparative des génomes ; – la recherche de la réponse à la question : existe-t-il un déterminisme entre forte transcription potentielle et forte traduction potentielle ? – l’apport de connaissances exploitables par le génie génétique ; – la mise en place d’une stratégie de fouille/analyse des données, donnant lieu à réflexion sur le choix des méthodes d’analyse à utiliser, adapter et créer. Pour atteindre les objectifs fixés, ComBi met en oeuvre une méthodologie croisant approche bioinformatique et approche expérimentale au laboratoire. Les équipes interfèrent pour servir un projet commun, pour lequel la complémentarité des compétences (biologie moléculaire/informatique, mathématiques appliquées, statistiques) est nécessaire : sans automatisation de l’extraction des critères et sans analyse systématique et poussée de ces données, les biologistes ne pourraient entreprendre des travaux à l’échelle d’un génome entier ; l’adossement à une base expérimentale forte, mettant en oeuvre des concepts et des technologies novateurs en biologie moléculaire, permet la validation au laboratoire de la stratégie déployée en fouille de données pour vérifier ou infirmer les hypothèses posées sur les promoteurs forts. Cette validation constitue l’étape ultime de la chaı̂ne méthodologique déployée pour satisfaire les objectifs de recherche. Collaboration avec l’Unité d’Amélioration des Plantes et Biotechnologies Végétales, de l’INRA de Rennes A la demande des biologistes de l’unité indiquée, nous avons mis en place un outil d’aide à la décision pour effectuer des croisements entre des variétés d’une même plante selon un critère basé sur la maximisation d’une distance génomique. Ce programme a été déjà appliqué pour des croisements de variétés de colza, dans le but d’obtenir une population de colzas d’hiver ayant un taux faible d’acide alphalinolénique. Ordre des Gènes : Modélisation de plusieurs distances Travaux en collaboration avec Cedric Chauve (UQAM, Montréal). Comparer deux génomes requiert de déterminer une mesure qui indique à quel point ces génomes sont proches ou éloignés. Ainsi que nous l’avons déjà mentionné, il apparaı̂t nécessaire de proposer et valider des modèles concernant ces mesures, modèles qui puissent entre autres prendre en compte (i) le fait que les génomes contiennent des gènes dupliqués et (ii) les insertions/suppressions dans les génomes. En se basant sur trois mesures distinctes (nombre de breakpoints, nombre d’intervalles communs, nombre d’intervalles conservés - bien définies si l’on ne tient pas compte des points (i) et (ii)), nous avons proposé trois nouvelles distances qui englobent les points (i) et (ii). Dans ce cas, les calculs deviennent algorithmiquement difficiles, et des heuristiques ont donc été proposées. Les résultats obtenus ont été testés sur un jeu de données de 12 génomes de γ-protéobactéries (génomes monochromosomiques), dont la phylogénie est bien connue dans la littérature. Les phylogénies obtenues par nos 3 distances ont donc pu être comparées à la phylogénie de référence, et font état de fortes similarités. Plus généralement, le programme de calcul de ces trois distances, GenesOrder, disponible sur le Web, est capable de comparer toute paire de génomes et de renvoyer les distances associées. 314 Rapport d’activité LINA 2003–2006 10.5 Résultats nouveaux 10.5.1 Thématique « Découverte et analyse statistique de motifs » Participants : Guillaume Blin, Guillaume Fertin, Jérémie Bourdon, Alban Mancheron, Christophe Moan, Irena Rusu, Christine Sinoquet, Recherche exacte/probabiliste de similarités fortement paramétrées Dans sa forme la plus simple, le problème de la découverte de motifs s’exprime comme suit : étant données t séquences S1 , S2 , . . . , St sur un alphabet arbitraire, trouver les sous-séquences o1 , o2 , . . . , ot sur S1 , S2 , . . . , St respectivement, telles que o1 , o2 , . . . , ot soient similaires (par rapport à un certain critère). Des variantes s’obtiennent en rajoutant un quorum q et en demandant qu’au moins q des t séquences contiennent des sous-séquences similaires. La plupart des outils de découverte de motifs existants (Gibbs sampling, Consensus, Teiresias, Pratt, Meme, Motif, Smile, Winnower, Splash, Projection) définissent un modèle précis (type de motif recherché, notion de similarité, fonction de score uniques), avec une seule exception (Pratt qui permet plusieurs fonctions de score). Chacun de ces algorithmes résout donc un aspect de la découverte de motifs. Nous avons donc entamé une étude visant la définition d’une notion de similarité fortement paramétrée qui permette de traiter d’une même et unique manière les motifs de longueurs diverses, avec ou sans trous, avec ou sans conditions de conservation de chaque base, à l’aide de n’importe quelle fonction de score raisonnable (c’est-à-dire bonifiant les bases conservées et pénalisant les bases non-conservées). Nous avons abouti à un algorithme probabiliste, appelé Stars [12]. Les tests de Stars ont été effectués sur des données réelles et sur des données aléatoires, et se sont avérés comparables aux meilleurs algorithmes actuels lorsqu’il s’agit de la recherche de sites de fixation ADNprotéines, et meilleurs lorsqu’il s’agit de la recherche de promoteurs. Nous avons étudié du point de vue statistique le comportement de cet algorithme, afin d’améliorer son temps d’exécution et de permettre l’introduction d’un quorum. L’efficacité et la qualité du résultat de l’algorithme dépend énormément de la fonction de score choisie, et l’étude probabiliste, qui a pu être menée entièremen, montre que la moyenne et la variance du score dépendent linéairement de la taille des séquences ; de plus, ce score est distribué selon une loi normale. On peut également noter que ce résultat est relativement original dans l’étude des scores provenant d’algorithmes d’extraction de motifs en bio-informatique. Nous pensons en particulier que notre score, calculé en considérant toutes les suites de matches et toutes les suites de mismatches est plus à même de rendre compte de la complexité des séquences que nous considérons. Les résultats obtenus vont permettre d’étudier la complexité actuelle de l’algorithme utilisé. Ils ont permis d’améliorer sensiblement la qualité des résultats obtenus et les performances de l’algorithme en introduisant une fonction de Z-score qui va permettre de savoir combien de solutions donnent un score significatif (pour le moment, l’algorithme ne garde à chaque étape qu’un nombre de solutions fixé à l’avance). Distance de Hamming et indexation de motifs Nous avons constaté, en étudiant plusieurs ensembles de séquences biologiques contenant des motifs similaires, que la notion de similarité basée sur la distance de Hamming était trop faible, permettant l’obtention d’un nombre extrêmement important de « solutions » parmi lesquelles il était impossible d’identifier la vraie solution. Nous avons donc proposé une définition plus contrainte de cette notion de similarité, en introduisant une similarité directe entre les motifs en complément à la similarité indirecte avec le modèle. Nous avons étudié le problème ainsi obtenu, afin de décider s’il était plus facile ou plus difficile à résoudre en termes de complexité algorithmique que le problème initial. Nous avons démontré ComBi : Combinatoire et Bio-Informatique 315 dans [13] que le problème avait exactement les mêmes caractéristiques que le problème initial : il est NP-complet et W[1]-complet par rapport à un certain nombre de paramètres (parfois multiples) ; il est donc aussi difficile à résoudre que le problème initial, mais cible mieux les « vraies » solutions. D’autre part, nous avons étudié deux automates, appelés Oracle des Facteurs/Suffixes, proposés il y a quelques années par une équipe de l’IGM (Marne-la-Vallée) pour reconnaı̂tre tous les facteurs/suffixes d’un mot, mais acceptant également des « intrus ». Nous avons ainsi résolu le problème, auparavant ouvert, de caractérisation des langages reconnus par les deux oracles. Ce résultat a été publié dans une revue [24]. Enfin, nous nous sommes penchés sur le problème de la transformation d’un arbre des suffixes, une structure d’index bien connue, en un oracle des suffixes. Une transformation similaire, de l’arbre des suffixes vers l’automate des suffixes (une autre structure d’index bien connue), est possible en temps linéaire utilisant une opération de contraction de sommets. Nous avons proposé un algorithme linéaire pour l’obtention de l’oracle des suffixes à partir de l’arbre des suffixes, utilisant une opération beaucoup plus complexe de contraction et une étude très fine de complexité [60]. Notre résultat améliore la complexité précédemment connue pour cette tâche, qui était quadratique. Modélisations de séquences Ce travail sur la recherche d’expressions régulières a été effectué en collaboration avec Brigitte Vallée (GREYC et CNRS, Université de Caen). Les études statistiques du nombre de motifs dans un texte aléatoire présentent divers intérêts, ne serait-ce que pour répondre à la question « est-ce qu’un motif sur-représenté dans une séquence a réellement un sens biologique ou est-ce une bizarrerie statistique ? ». Dans ce travail, le motif cherché (un langage régulier) est très général puisqu’il permet de modéliser la plupart des problèmes de recherche de motifs standards, recherche de chaı̂nes de caractères, recherche approchée, recherche de mots cachés... Il est également étudié dans un contexte général, les sources dynamiques, où des corrélations non bornées entre les symboles peuvent être prises en compte. Le paramètre considéré est le nombre de positions où une occurrence de motif peut se terminer. Ce travail a fait l’objet d’un article paru dans les actes de la conférence internationale avec comité de lecture LATIN’06 [11]. Ce travail présente également un intérêt théorique supplémentaire puisqu’il met en place toute une technique d’étude de problèmes sur les séquences dans un contexte probabiliste très général. Il peut donc servir de base à bon nombre d’études similaires. Extraction de motifs par méthode d’optimisation combinatoire stochastique Kaos L’algorithme Kaos est une méthode approchée stochastique dédiée à la recherche de motifs dans les ADN. Pour résoudre le problème, Kaos instaure une coopération entre (i) une stratégie d’échantillonnage de l’espace de recherche reposant sur la génération au hasard d’échantillons de taille m de séquences, (ii) la détection rapide de similarités locales au moyen d’un logiciel pré-existant, dit « plug-in », en l’occurrence, MoDEL [72], exécuté sur ces échantillons et (iii) la mise en oeuvre de deux niveaux d’intensification des solutions. Puisqu’une PSSM (Position-specific scoring matrix) représente une similarité locale partagée par r (par exemple) séquences, plus r est élevé, plus il est probable que cette PSSM soit une solution optimale à notre problème. L’intensification consiste à augmenter le nombre r de séquences qui partagent une similarité. Deux opérateurs d’intensification sont mis en oeuvre, dont l’un consiste littéralement à fusionner deux PSSMs en une seule. Nous avons testé Kaos à l’aide de données simulées et de données réelles biologiques. Les points suivants ont été étudiés : robustesse par rapport aux paramètres d’entrée ; amélioration de la précision par rapport au « plug-in » ; comparaison avec les algorithmes MEME [61], STARS [12] ; progression possible 316 Rapport d’activité LINA 2003–2006 (scalability) en termes de taille de banc d’essai (nombre de séquences et longueur de ces dernières) et en termes de nombre maximal autorisé de mismatches par occurrence. Nous avons montré que Kaos est efficace sur des données simulées, des sites promoteurs de plantes dicotylédones ainsi que sur des sites de liaison de facteurs de transcription, pour le génome de la bactérie E.coli. Sur la totalité de nos essais, les efficacités de Kaos, MEME et STARS sont comparables. Ces travaux ont fait l’objet des publications [48, 42, 43, 14]. Comparaison de Structures Secondaires d’ARN La compréhension des mécanismes biologiques, au niveau moléculaire, est subordonnée à la découverte et à l’étude de diverses fonctions des ARN. Il est établi que la conformation d’une molécule d’ARN (i.e., un brin composé de ribonucléotides A, U , C et G, également appelé structure primaire) détermine de façon partielle la fonction de cette molécule. Cette conformation résulte d’un repliement de la molécule sur elle-même, en partie due à l’appariement des bases complémentaires qui la composent (A − U et C − G, connectés par une liaison hydrogène). Une telle molécule possède donc des parties appariées continûment (les stems), ainsi que divers types de boucles, ou bien des parties non appariées : on parle alors de structure secondaire. Nos travaux sur les structures secondaires d’ARN ont consisté à (i) déterminer la complexité algorithmique et (ii) à proposer diverses solutions tenant compte du point (i) pour les problèmes suivants : – Recherche de motifs dans les ARN : partant d’une structure secondaire d’ARN, décider si un motif structuré y est ou non présent [10, 31, 45]. – Extraction de motifs dans les ARN : partant d’une séquence d’ARN (i.e., uniquement les bases), et de tous ses appariements possibles, extraire la plus grande structure (en terme d’appariements) [51, 32]. – Distance d’édition entre deux ARN donnés : partant de deux structures secondaires d’ARN, et étant donné diverses opérations permises sur les bases et les liaisons hydrogènes, déterminer le nombre minimum d’opérations permettant de passer de l’un à l’autre [58]. – Design d’ARN : partant d’un ARN codant pour une protéine, garder sa structure (i.e., ses liaisons hydrogène) et modifier sa séquence de telle manière qu’une protéine donnée soit produite [30]. Ces travaux ont été réalisés en collaboration avec Cedric Chauve (LaCIM, UQAM, Montréal), Danny Hermelin (U. Haifa, Israël), Romeo Rizzi (U. Udine, Italie) et Stéphane Vialette (LRI, Orsay). 10.5.2 Thématique « Génomique Comparative » Participants : Guillaume Blin, Guillaume Fertin, Irena Rusu, Christine Sinoquet. Distance de Synténie La distance de synténie de deux génomes a été introduite par Ferretti, Nadeau et Sankoff en 1996 comme une façon d’évaluer la distance d’évolution entre génomes pour lequel l’ordre n’est pas déterminé. Contrairement aux autres modèles classiques, celui-ci s’intéresse aux génomes multichromosomiques. Dans ce modèle, les mutations autorisées sont de trois types : 1. fusion : deux chromosomes sont réunis en un seul 2. fission : un chromosome est séparé en deux chromosomes 3. translocation : deux chromosomes échangent un sous-ensemble de leurs gènes ComBi : Combinatoire et Bio-Informatique 317 Pisanti et Sagot ont démontré que la plus grande distance (dénommée le diamètre) pouvant exister entre un génome à n chromosomes et un génome à m chromosomes est égale à n + m − 4. A la suite de cette preuve, un des problèmes ouverts de Kleinberg et Liben-Nowell était de caractériser les instances maximales, c’est-à-dire les paires de génomes pour lesquelles la distance synténique est égale au diamètre. Dans [36, 17], nous avons répondu à cette question, et l’avons généralisée aux génomes possédant un nombre de chromosomes différents. Notre étude répond également à un deuxième problème ouvert de Kleinberg et Liben-Nowell, puisque cette caractérisation permet d’en déduire un algorithme polynomial qui reconnaı̂t de telles instances. L’étude de la distance synténique se poursuit en collaboration avec Cedric Chauve et de Romeo Rizzi : le problème consistant à déterminer la distance de synténie étant NP-complet, et le meilleur algorithme d’approximation connu étant de ratio 2, il apparaı̂t nécessaire de proposer des solutions alternatives pour le calcul de cette distance. C’est sur ce sujet que nous travaillons actuellement. Travaux en collaboration avec Cedric Chauve (LaCIM, UQAM, Montréal) et Romeo Rizzi (U. Udine, Italie). Mesures de (dis)similarité en cas de Gènes Dupliqués Il existe d’autres mesures permettant de comparer des espèces deux à deux via leurs génomes. Ces mesures (nombre de breakpoints, nombre d’intervalles communs, MAD, SAD, etc.) s’appliquent à des génomes monochromosomiques, et peuvent être calculées « facilement » (i.e., en temps polynomial) si l’on suppose que dans les génomes étudiés, un gène donné n’apparaı̂t qu’une seule fois. Or, avec les progrès du séquençage et de la détermination des homologies, on sait que cette hypothèse est fausse : on relève environ 15% de duplications de gènes chez l’homme, 16% chez la levure et 26% chez Arabidopsis. Il est donc nécessaire de revoir ces mesures à la lumière de cette nouvelle réalité. En effet, lorsque l’on est dans un modèle où, tout en ayant le même support (i.e., le même ensemble de gènes), un ou plusieurs gènes peu(ven)t être dupliqué(s) (et même s’il est dupliqué autant de fois dans un génome que dans l’autre), il existe des ambiguı̈tés. Si on considère un gène x apparaissant au moins 2 fois dans le génome 1 et dans le génome 2, on ne peut pas inférer quelle occurrence de x du génome 1 correspond à une occurrence donnée de x dans le génome 2. Et selon le choix, la mesure de (dis)similarité obtenue peut différer. Un premier modèle, introduit par Sankoff en 1999, consiste à « exemplariser » les génomes. En d’autres termes, pour chaque gène présent plusieurs fois, on ne conserve dans chacun des génomes qu’un seul représentant, et ce de manière à optimiser la mesure (i.e., maximiser ou minimiser, selon la mesure étudiée), suivant le principe de parcimonie. Nous avons introduit une autre variante, baptisée matching, et permettant de garder le plus grand nombre de gènes possibles dans les génomes. Cette méthode consiste à déterminer un couplage maximum pour chaque famille de gène, de telle manière que parmi tous les couplages existants pour toutes les familles, la mesure étudiée soit optimisée. Nous avons alors étudié cinq mesures de (dis)similarité (breakpoints, intervalles conservés, intervalles communs, MAD et SAD), en ce qui concerne les deux variantes « exemplarisation » et « matching ». Nous avons démontré que le problème du calcul de ces mesures, quelle que soit la variante, devenait NP-complet dès que des duplications apparaissent, et ce même dans des cas très restrictifs [28, 33, 37] ; pour certaines mesures, on peut même montrer qu’il est difficile de donner une réponse approchée [37]. Nous avons également fourni des solutions algorithmiques tenant compte de cette étude préliminaire, par exemple : – en donnant des algorithmes de FPT (Fixed-Parameter Tractability : algorithmes exacts, mais dont 318 Rapport d’activité LINA 2003–2006 l’exponentielle est contrôlée par un paramètre petit dans la pratique) [28, 33]. – en donnant des algorithmes d’approximation, de ratio déterminé [28]. – en donnant des heuristiques, que nous validons actuellement par des tests sur des données réelles, et en comparant leurs résultats aux résultats optimaux [29]. Ces heuristiques elles-mêmes demandent d’étudier en détail certains problèmes nouveaux, comme le problème « Exemplar Longest Common Subsequence » [34]. Enfin, nous avons introduit de nouvelles définitions de mesures, se basant sur des mesures existantes mais permettant de prendre en compte les insertions et les suppressions de gènes dans les génomes [29]. La pertinence de ces mesures est évaluée sur des données réelles (12 génomes de γ-protéobactéries) : à partir des matrices de distances obtenues, une phylogénie est construite et comparée à la phylogénie de référence. Travaux en collaboration avec Paola Bonizzoni (U. Milano-Bicocca, Italie), Cedric Chauve (LaCIM, UQAM, Montréal), Gianluca Della Vedova (U. Milano-Bicocca, Italie), Riccardo Dondi (U. MilanoBicocca, Italie) et Romeo Rizzi (U. Udine, Italie). Arbres phylogéniques Ces travaux de recherche concernent le prétraitement de données expérimentales (matrice de dissimilarités) destinées à construire une phylogénie. Ils ont été conduits en collaboration avec Anne Berry, du LIMOS (Laboratoire d’Informatique, de Modélisation et d’Optimisation des Systèmes, ClermontFerrand). Nous utilisons la propriété selon laquelle toute matrice de distance additive d’arbre (i.e., correspondant à un arbre phylogénétique) induit une famille de graphes sandwich, qui sont triangulés. Or, pour des données expérimentales, certaines valeurs de dissimilarités sont susceptibles d’être sousestimées. Nous proposons donc un algorithme basé sur la propriété énoncée ci-dessus. Cet algorithme calcule, pour chaque graphe de la famille de graphes sandwich, un sous-graphe maximal triangulé. Nous réussissons ainsi à détecter des anomalies dans la famille de graphes associée à la matrice de dissimilarités et à élever les valeurs qui étaient sous-estimées. Ces travaux ont fait l’objet d’une communication dans une conférence [27] et d’une publication dans une revue [16]. 10.6 Logiciels La plupart de nos travaux sont orientés vers la production de logiciels utilisables par des biologistes. Ces logiciels, fortement paramétrés afin de permettre une bonne représentation des objets biologiques manipulés, doivent non seulement présenter un temps d’exécution raisonnable et produire des résultats de bonne qualité, mais aussi être faciles d’utilisation : le paramètrage “externe”, défini par l’utilisateur, doit donc être extrêmement soigné, tout en gardant son efficacité. Ce qu’on appelle communément “interface” du logiciel devient, de cette manière, un problème d’optimisation en soi, avec son propre compromis à trouver (entre la facilité d’utilisation et le degré de finesse du paramétrage), avec ses propres difficultés à évaluer et à surmonter, avec ses propres solutions probablement approchées. 10.6.1 Stars : découverte de motifs basée sur des fonctions de score multiples(Responsable: Alban Mancheron) URL/DOI: http ://www.sciences.univ-nantes.fr/lina/bioserv/ Mots-clés: Découverte de motifs, Fonction de score, Comparaison de séquences Équipe de développement: Alban Mancheron (sous la direction de J. Bourdon et I. Rusu) ComBi : Combinatoire et Bio-Informatique 319 Stars est un programme de découverte de motifs : étant données plusieurs séquences biologiques, il extrait de ces séquences un ensemble de mots, un sur chaque séquence, qui sont similaires selon une définition de similarité donnée. Afin d’éviter les difficultés de la plupart des programmes existants, qui utilisent une notion trop restreinte de la notion de similarité, Stars est basé sur une nouvelle définition de cette notion, ce qui lui assure une large applicabilité (à la fois pour l’ADN, l’ARN et pour les protéines, à la fois pour des motifs contigus ou avec des trous, à la fois pour des caractères bien ou pas très bien conservés). Référence : A. Mancheron, I. Rusu - Pattern Discovery Allowing Wild-Cards, Substitution Matrices and Multiple Score Functions, Proceedings of WABI’2003, LNBI 2812 (Elsevier), 124-138 (2003). 10.6.2 BAC T RANS2 (Responsable: Christine Sinoquet) URL/DOI: http ://www.sciences.univ-nantes.fr/lina/bioserv/ Mots-clés: Génomes prokaryotes, Prédiction, Promoteurs, Expression de gène Équipe de développement: Christine Sinoquet, Sylvain Demey La collaboration initiée en janvier 2003 trouve une réalisation concrète dans la mise en place d’une plate-forme dédiée à l’extraction et à l’inférence de connaissances sur les promoteurs forts des génomes bactériens. L’objectif est la mise à disposition de la suite logicielle intégrée sur la machine quadriprocesseurs installée à ComBi, en site délocalisé de la plate-forme bio-informatique Ouest-Génopole. BAC T RANS2 est une plate-forme protégée qui sera mise à terme à disposition de la communauté des biologistes s’intéressant aux génomes procaryotes, tant au niveau national qu’au niveau européen, voire international. Cette plate-forme intègre de très nombreux modules : – l’extraction des promoteurs forts, paramétrée par un ensemble de conditions (motifs consensus pour les boı̂tes -10, -35, l’élément UP..., contraintes de distances entre divers sites du promoteur...), – le repliement systématique de la structure secondaire de l’ARN messager associé à une région centrée sur la région 5’UTR, – la comparaison et classification des structures secondaires correspondant à divers repliements sousoptimaux, – la corrélation entre critères caractérisant la force de transcription, la force de traduction et la stabilité de l’ARN messager, – des statistiques sur les caractéristiques associées gènes à promoteur fort, pour chaque génome, – de la génomique comparative : – variations entre génomes des caractéristiques précédentes, – obtention des Position-Specific Scoring Matrices pour les boı̂tes -10, -35, l’élément UP, et comparaison entre génomes, entre phyla, statistiques sur l’ensemble des génomes disponibles sur la plate-forme. 10.6.3 DistGen : croisement contraint à base de distances génétiques (Responsable: Irena Rusu) URL/DOI: http ://www.sciences.univ-nantes.fr/lina/bioserv/ Mots-clés: Hybridation, Colza, Optimisation, Marqueurs génétiques Équipe de développement: Irena Rusu (encadrant des étudiants de maı̂trise) 320 Rapport d’activité LINA 2003–2006 DistGen est un programme qui propose un croisement entre des variétés d’une même plante, en tenant compte de contraintes d’un type assez ciblé et en maximisant un critère à base de distances génétiques. 10.6.4 GenesOrder : Similarités entre Génomes et Reconstruction Phylogénétique (Responsable: Guillaume Fertin) URL/DOI: http ://adn.bioinfo.uqam.ca/∼genoc/CG05/ Mots-clés: Génomique comparative, mesures de similarité, Gènes dupliqués, Phylogénie Équipe de développement: Guillaume Blin, Cedric Chauve (UQAM, Montréal) GenesOrder est un programme permettant de calculer trois mesures de (dis)similarité différentes pour comparer un ensemble de génomes deux à deux, et ainsi obtenir tris matrices de distance différentes. Le logiciel est capable de prendre en entrée des génomes comportant des duplications de gènes. Les trois mesures de similarité calculées sont calculées à partir, respectivement, du nombre de breakpoints, du nombre d’intervalles conservés et du nombre d’intervalles communs. Partant de ces matrices, il est alors possible de construire des phylogénies, en utilisant des outils classiques comme le logiciel PHYLIP. Référence : G. Blin, C. Chauve, G. Fertin - Genes Order and Phylogenetic Reconstruction : Application to γ-Proteobacteria, Proceedings of RCG’2005 (3rd RECOMB Comparative Genomics Satellite Workshop), LNBI 3678 (Elsevier), 11-20 (2005). 10.7 Stratégie de valorisation et de coopération 10.7.1 Actions internationales Programmes d’échanges PAI Franco-espagnol PICASSO « Colorations sous contraintes et applications » (2003) Responsable: Guillaume Fertin Mots-clés: Colorations, réseaux, graphes Participants: Guillaume Fertin Partenaires: Université Polytechnique de Catalogne (UPC), Barcelone PAI Franco-italien GALILEE « Comparaison de structures d’ARN : modèles, complexité, algorithmes » (2005) Responsable: Guillaume Fertin Mots-clés: Bio-informatique, ARN, algorithmes Participants: Guillaume Fertin, Irena Rusu, Guillaume Blin Partenaires: Université de Trento, l’Université d’Udine et l’Université de Milan-Bicocca ComBi : Combinatoire et Bio-Informatique CAPES/COFECUB « Algorithmics and Combinatorics for Molecular Biology » 321 (2004–2005) Responsable: Guillaume Fertin Mots-clés: Bio-informatique, algorithmes, biologie moléculaire Participants: Guillaume Blin, Guillaume Fertin, Christine Sinoquet Partenaires: Université de Sao Paulo et l’Université de Recife Projet de la 60e commission permanente de coopération franco-québécoise « Structures Conservées et Répétitions pour les Réarrangements Génomiques » (2005–2006) Responsable: Guillaume Fertin Mots-clés: Réarrangements génomiques, duplications, algorithmes Participants: Guillaume Blin, Guillaume Fertin, Irena Rusu Partenaires: Université du Québec à Montréal, Canada Groupe de travail AofA (Analysis of Algorithms) (2003–2006) Responsable: Jérémie Bourdon Mots-clés: Analyse en moyenne, algorithmes, structures de données Participants: Jérémie Bourdon Partenaires: Plus de vingt centres dans le monde Autres Research Training Network COMBSTRU « Combinatorial Structure of Intractable Problems » (2002-2006) URL/DOI: http ://dimatia.mff.cuni.cz/combstru/ Responsable: Guillaume Fertin Mots-clés: Intractabilité, algorithmes Participants: Guillaume Fertin Partenaires: 9 centres européens participant, dans 8 pays Projet Alcom IV Responsable: Jérémie Bourdon Mots-clés: Analyse en moyenne, algorithmes, structures de données Participants: Jérémie Bourdon Partenaires: 10 centres européens participant () 322 Rapport d’activité LINA 2003–2006 Expertise de projet pour le NWO (2004) Responsable: Jérémie Bourdon Mots-clés: Expertise Participants: Jérémie Bourdon Partenaires: NWO (Nederlandse Organisatie voor Wetenschappelijk) En mars 2004, Jérémie Bourdon a expertisé pour l’organisme de recherche Néerlandais NWO (Nederlandse Organisatie voor Wetenschappelijk) soumis par K. Dajani et intitulé « Towards a Classification of Semi-Regular Continued Fractions Algorithms » 10.7.2 Actions nationales ANR ACI Animation IMPBio « AReNa » : Groupe de travail pluridisciplinaire sur la structure et la fonction des ARN (2004–2007) URL/DOI: http ://www.lri.fr/ denise/AReNa/ Responsable: Guillaume Fertin Mots-clés: Bio-informatique, ARN Participants: Guillaume Blin, Jérémie Bourdon, Guillaume Fertin, Irena Rusu Partenaires: 19 centres français (biologie et informatique) L’étude des molécules d’ARN, dans leurs aspects structurels, fonctionnels et dynamiques fait maintenant partie des problèmes phares dans le domaine de la bioinformatique. L’objectif principal du projet est de constituer en France une réelle communauté pluridisciplinaire autour des problématiques liées à l’étude de l’ARN. Plus précisément, les retombées attendues sont : – A court terme : une action d’information et de formation réciproque des tenants des différentes disciplines sur leurs problématiques et leurs méthodes ; une activité d’expertise et de conseil sur ce qui touche au domaine de chacun dans les recherches des autres équipes. – Dans un second temps : des collaborations pluridisciplinaires synergiques dans les domaines abordés au sein du groupe ; l’émergence de nouvelles problématiques de recherche au sein de chaque discipline, liées à ces collaborations. Nous sommes en particulier très attachés à développer des approches alliant modélisation formelle et validation expérimentale. Plusieurs rencontres de type « atelier » ont été et seront organisées, avec des exposés didactiques de haut niveau (effectués par des membres du groupe ou des chercheurs invités), des présentations des travaux des équipes, et des larges plages de discussion. ACI Nouvelles Interfaces des Mathématiques « π-vert » : Aspects mathématiques et algorithmiques des réseaux biochimiques et d’évolution (2004–2007) URL/DOI: http ://biomserv.univ-lyon1.fr/baobab/rubrique.php3?id rubrique=62 Responsable: Guillaume Fertin Montant: 6 000 e Mots-clés: réseaux biochimiques, réseaux d’évolution Participants: Guillaume Blin, Guillaume Fertin, Irena Rusu Partenaires: 27 centres (dont 9 en France) ComBi : Combinatoire et Bio-Informatique 323 Le projet a un double objectif. D’une part, son but est de se focaliser sur quelques-unes des problématiques les plus importantes de la bioinformatique ; celles-ci concernent principalement la recherche, l’analyse et/ou l’inférence de relations entre des processus ou des éléments biologiques. A la complexité inhérente du problème s’ajoute la difficulté supplémentaire que l’information disponible est souvent ambiguë, incomplète ou qu’elle contient des erreurs. Nous serons intéressés par deux types de réseaux : d’évolution et biochimiques. Le premier concerne l’ensemble de toutes les relations d’évolution entre génômes, gènes et même processus biologiques. Les réseaux biochimiques peuvent représenter des intéractions protéines-protéines, le métabolisme d’un organisme, son système de régulation de l’expression des gènes etc. La recherche, l’analyse et l’inférence de ces réseaux, d’évolution ou biochimiques, soulèvent des problèmes importants de mathématiques discrètes ou continues, aussi bien que d’algorithmique, allant de la modélisation adéquate en termes mathématiques des phénomènes biologiques jusqu’à la résolution de problèmes d’optimisation très durs, qui souvent débouchent sur des questions ouvertes de complexité algorithmique. Ces problèmes constituent le deuxième objectif majeur du projet. Les deux objectifs ne sont pas séparés, mais l’objectif mathématique et algorithmique a une existence indépendante et un caractère universel. Les problèmes variés qui vont être traités présentent donc un intérêt aussi bien pour la recherche fondamentale que pour des applications à d’autres domaines que la biologie. Il est cependant certain que la seule application de ce projet sera la biologie. ACI Masse de Données « NavGraphe » : Navigation dans les grands graphes, application aux bases de données vidéos, à la génomique et aux cartes sémantiques (2003–2006) URL/DOI: http ://www.labri.fr/perso/don/NavGraphe/ Responsable: Guillaume Fertin Montant: 8 100 e Mots-clés: Grands graphes, visualisation, génomes, données vidéo, cartes sémantiques Participants: Guillaume Fertin, Irena Rusu Partenaires: 9 centres en France 324 Rapport d’activité LINA 2003–2006 L’idée fondamentale de ce projet est de combiner les méthodes automatiques de l’algorithmique de graphes, les requêtes de bases de données et l’oeil de l’expert pour construire une navigation performante. Nous désirons ainsi sonder de nouvelles applications pour des modèles réalistes de graphes traitant : – de bases de données vidéos : l’indexation vidéo nécessite une indexation performante afin de produire une structure en réseaux (graphes de descripteurs MPEG7) pertinente. L’enjeu de cette thématique navigation est qu’elle peut s’effectuer en temps réel. La masse de données n’autorise pas une navigation ou recherche textuelle (les données étant des séquences d’images) et doit donc faire appel aux capacités du cortex humain à repérer les motifs dans des images même très denses. La manipulation de ces images, et donc des réseaux sous-jacents ne peut se faire dans un environnement interactif que si l’on dispose d’un codage des données des plus efficaces, tant du point de vue de l’espace disponible que de la possibilité de questionner et de transformer les données ; – de la visualisation de structures biologiques : les techniques les plus avancées pour la conception de nouvelles protéines, pour l’étude de structures telles que l’ADN, l’ARNm ou les réseaux cellulaires, passent par une étape de visualisation sous forme de graphes. Les bio-chimistes ou généticiens sont demandeurs d’outils de visualisation pour manipuler et naviguer dans ces très grosses structures. – de l’exploration de cartes sémantiques : les cartes sémantiques (Topics Maps) sont un moyen d’établir une indexation sur un système d’information. Les techniques algorithmiques pour manipuler, classer, regrouper, rechercher des informations dans les cartes sémantiques restent un challenge dont l’enjeu est énorme. Par exemple, les moteurs de recherche du Web sont devenus maintenant des outils indispensables mais de par le caractère non structuré des documents qu’ils référencent et les techniques d’indexation utilisées, les techniques de recherche d’informations restent textuelles et offrent une expressivité restreinte. ACI Nouvelles Interfaces des Mathématiques « Dynamical » : Interface Mathématiques et Informatique, Dynamique et Algorithmique (2004–2006) URL/DOI: http ://math.u-bourgogne.fr/IMB/maume/ACI/princ.html Responsable: Jérémie Bourdon Mots-clés: Analyse dynamique, compression, segmentation des données Participants: Jérémie Bourdon Partenaires: 3 centres en France Ce projet vise à élaborer des concepts, des méthodes et des techniques pour un ensemble de problématiques à l’interface des mathématiques et de l’informatique : analyse dynamique des algorithmes et des structures de données avec des applications particulières en compression, et en segmentation des données. ANR Blanc « SADA » : Structures Aléatoires Discrètes et Algorithmes URL/DOI: http ://www.labri.fr/perso/marckert/SADA/SADA.html Responsable: Jérémie Bourdon Mots-clés: Structures aléatoires, génération aléatoire Participants: Jérémie Bourdon Partenaires: 5 centres en France (2005–2007) ComBi : Combinatoire et Bio-Informatique 325 Ce projet fédérateur, Structures Discrètes Aléatoires et Algorithmes (SADA), propose des objectifs de recherche fondamentale ambitieux. Il s’agit de quantifier les principales propriétés de structures fondamentales qui apparaissent de manière récurrente aux travers d’applications informatiques extrêmement diverses. Les grands chapitres de notre programme de travail sont relatifs aux mots, aux structures arithmétiques, aux arbres, aux graphes, ainsi qu’à la génération aléatoire. Nous visons à développer un corpus cohérent de méthodes permettant de déterminer de manière très précise les “profils” des objets aléatoires : bien au delà des propriétés en moyenne, on s’attachera aux analyses en distribution, à la quantification des risques de grandes déviations, ainsi qu’à l’évolution dynamique des structures. Le projet est fondé sur la confrontation de points de vue complémentaires, incluant méthodes combinatoires, probabilistes, analytiques, et dynamiques. Plusieurs de nos approches sont assez fortement mathématisées, tandis que nos objectifs finals sont de nature algorithmique concrète. Autres AS CNRS STIC « Algorithmique des Grands Graphes » (2003) URL/DOI: http ://www.labri.fr/perso/hanusse/Grandsgraphes/ Responsable: Guillaume Fertin Mots-clés: Algorithmique, grands graphes Participants: Guillaume Fertin Partenaires: 7 centres en France AS CNRS STIC « Modélisation et Algorithmique des Structures d’ARN » (2003) URL/DOI: http ://www.lri.fr/ denise/ArnStic/ Responsable: Guillaume Fertin Mots-clés: ARN, algorithmes Participants: Guillaume Blin, Guillaume Fertin, Irena Rusu Partenaires: 9 centres en France AS CNRS STIC « Indexation de texte et découverte de motifs » (2004) URL/DOI: http ://degas.lirmm.fr/ASIM/ Responsable: Irena Rusu Mots-clés: Découverte de motifs, indexation Participants: Alban Mancheron, Christophe Moan, Irena Rusu Partenaires: 5 centres en France AS CNRS STIC « Nouveaux modèles et algorithmes de graphes pour la biologie » URL/DOI: http ://www.lirmm.fr/ paul/AS-Bio-Graphe/ Responsable: Guillaume Fertin (co-animateur) Mots-clés: Graphes, algorithmes, biologie Participants: Guillaume Blin, Guillaume Fertin, Irena Rusu, Christine Sinoquet (2003–2004) 326 Rapport d’activité LINA 2003–2006 Partenaires: 10 centres en France AS CNRS STIC « Systèmes dynamiques et modélisation en Algorithmique » (2003) URL/DOI: http ://users.info.unicaen.fr/ daireaux/AS/index.html Responsable: Jérémie Bourdon Mots-clés: Systèmes dynamiques, algorithmique Participants: Jérémie Bourdon Partenaires: 7 centres en France Programme Bio-informatique inter-EPST « Algorithms for Modelling, Search and Inference Problems in Molecular Biology » (2002–2004) Responsable: Guillaume Fertin Mots-clés: Modélisation, inférence, biologie moléculaire Participants: Guillaume Blin, Guillaume Fertin Partenaires: 10 centres en France, 7 centres à l’étranger Expertise de projet pour Atlanpole (2005) Responsable: Jérémie Bourdon Mots-clés: Expertise Participants: Jérémie Bourdon Partenaires: Atlanpole En mars 2005, Jérémie Bourdon a expertisé le projet d’installation de l’entreprise de Biotechnologies LifeLike Biomatics à la demande de Florence Hallouin pour l’incubateur d’entreprise Régional des Pays de la Loire « Atlanpole ». Expertise de projet pour le Conseil Régional d’Aquitaine (2005) Responsable: Guillaume Fertin Mots-clés: Expertise Participants: Guillaume Fertin Partenaires: Conseil Régional d’Aquitaine En février 2005, Guillaume Fertin a expertisé une demande de subvention Recherche-Développement et Transfert de Technologie auprès du Conseil Régional d’Aquitaine (demande de subvention de 18200 euros pour une collaboration entre le LaBRI et l’entreprise AOC-ZONING sur le thème « Optimisation multicritères de trajets de collecte ». ComBi : Combinatoire et Bio-Informatique 327 10.7.3 Actions régionales CPER CPER Post-Génome (2000–2006) Responsable: Irena Rusu Mots-clés: Bioinformatique, génomique, protéomique Participants: Guillaume Blin, Jérémie Bourdon, Guillaume Fertin, Alban Mancheron, Christophe Moan, Irena Rusu, Christine Sinoquet Partenaires: L’équipe ComBi est incluse dans le CPER Post-Génome depuis 2000. Le cadre offert par le CPER nous a permis une prise de contact assez rapide avec les biologistes nantais. En 2003, la collaboration avec l’unité de Biocatalyse s’est renforcée, donnant lieu au projet de plate-forme BacTrans2 . En cours de développement depuis janvier 2003, la plate-forme logicielle BAC T RANS2 a bénéficié d’une aide financière apportée pour la rémunération d’un bio-informaticien. Ce dernier a procédé à des développements informatiques, dans le cadre de deux contrats à durée déterminée de neuf mois chacun. La première source de financement provenait du Contrat Plan-Etat Région Pays de la Loire - PostGénome et Innovations technologiques (1er avril 2005 au 31 décembre 2005). Autres Ouest Génopole (2002–) URL/DOI: http ://genoweb.univ-rennes1.fr/OGP/francais/accueil.html Responsable: Irena Rusu Mots-clés: Bioinformatique, séquençage/génotypage,exploration fonctionnelle, protéomique, transcriptomique Participants: Guillaume Blin, Jérémie Bourdon, Guillaume Fertin, Alban Mancheron, Christophe Moan, Irena Rusu, Christine Sinoquet Partenaires: Le LINA est également acteur de Ouest-Génopole, qui comprend (entre autres) un projet de recherche Bio-informatique et une plate-forme technologique Bio-informatique. A ce titre, notamment, le LINA héberge et utilise une machine quadri-processeurs de la plate-forme bio-informatique de ce projet. Cet ordinateur est utilisé pour la mise à disposition auprès de la communauté scientifique des logiciels issus de la recherche menés à ComBi (par exemple, le logiciel de recherche de motifs communs à plusieurs séquences Stars, ou encore la plate-forme d’exploration des génomes bactériens BacTrans2 ). Le Consortium Ouest-Genopole (GIS) apporte le soutien financier relatif à la rémunération du bio-informaticien développant la plate-forme logicielle BacTrans2 pour la période Janvier 2006 à Septembre 2006. Jérémie Bourdon est membre du comité scientifique de Ouest Génopole, et Guillaume Fertin est membre de la commission d’animation de la plate-forme Bio-informatique de Ouest Génopole. 10.8 Diffusion des résultats 10.8.1 Rayonnement Jérémie Bourdon : – Séminaire « Information Theory », Orsay, février 2004. 328 Rapport d’activité LINA 2003–2006 – Conférence invitée à « Optimization algorithms and quantum disordered systems », juin 2004. – Journées Arena, Strasbourg, avril 2005 : « Présentation des activités Bio-informatique de l’équipe Combi ». – Journées de l’ACI DynamicAL, Dijon, septembre 2005 : « Statistique des expressions régulières ». – Journées MathSTIC « Algorithmique génomique », Orsay, novembre 2005 : « Recherche de motifs pour les sources corrélées ». – Journées ALEA, Luminy, mars 2006 : « Pattern Matching Statistics for Dynamical Sources ». Guillaume Fertin : – Séminaire Algorithmique et Biologie, Lyon, avril 2003. – Séminaire du Projet Symbiose, IRISA Rennes, avril 2003. – Séminaire Graphes, Réseaux et Modélisation, LIAFA, Paris, avril 2003. – Séminaire Department Computer Science Univ. Loughborough, Angleterre, juillet 2003. – Séminaire du LaCIM, UQAM, Montréal, novembre 2003. – Séminaire La Sapienza, Rome, juin 2004. – Séminaire LaBRI, Bordeaux, février 2005. – Séminaire Université de Trento, Dipartimento di Informatica e Telecomunicazioni, février 2005. – Séminaire Université de Milan-Bicocca, juin 2005. – Premières Journées Groupe de Travail sur la Génomique Comparative, Lyon, Janvier 2006. – Ecoles Jeunes Chercheurs en Algorithmique et Calcul Formel 2006 (Mai 2006) : – Organisation d’une session de 4h de cours sur le thème « Graphes et Bio-Informatique ». – Dispense d’un cours de 2h sur le thème « Mesures de similarité entre deux génomes en présence de gènes dupliqués ». Irena Rusu : – Séminaire « Algorithmique du texte et codage », Institut Gaspard Monge, Marne-la-Vallée, mars 2004. – Présentation « Journées de la plate-forme Bioinformatique de Génopole Ouest », Rennes, Septembre 2004. Christine Sinoquet : – Conférence invitée aux journées FRANCORO IV (Suisse, Août 2004). – Présentation à la réunion du Conseil Scientifique du CPER « Post-Génome » (Juin 2003). – Présentation aux Journées Génopole Ouest, Roscoff, Juin 2003. Toute l’équipe : – Organisation de la rencontre de l’Action Spécifique « Indexation de Texte et Découverte de Motifs », Nantes, 27-28 mai 2004. – Organisation des 2èmes Journées Groupe de Travail sur la Génomique Comparative, Automne 2006. 10.8.2 Comités de programmes et comités de lecture Guillaume Fertin : – Membre du comité de programme de CompBioNets’04 (Algorithms and Computational Methods for Biochemical and Evolutionary Networks), Décembre 2004. ComBi : Combinatoire et Bio-Informatique 329 – Membre du comité de programme de CompBioNets’05 (Algorithms and Computational Methods for Biochemical and Evolutionary Networks), Septembre 2005. – Membre du comité de programme de JOBIM’06 (Journées Ouvertes Biologie, Informatique, Mathématique), Juillet 2006. Irena Rusu : – Membre du comité de programme de GT 2004 (Graph Theory 2004), Juillet 2004. – Membre du comité de programme de ICGT 2005 (International Conference on Graph Theory), Septembre 2005. 10.8.3 Organisation de congrès Guillaume Fertin : – Membre du comité d’organisation de la conférence ICGT 2005 (International Conference on Graph Theory), France, Septembre 2005. 10.8.4 Impact sur la formation universitaire Jérémie Bourdon : – Co-encadrement d’un stagiaire de M2R Informatique en 2006 (Q. Thominet). Guillaume Fertin : – Encadrement d’un stagiaire de DEA Informatique en 2003 (F. Soutaih). – Encadrement d’un stagiaire de M2R Informatique en 2005 (G. Herry) et 2006 (S. Angibaud). – Encadrement d’un stagiaire de M2R Informatique et Génomique (IRISA, Rennes) en 2006 (D. Paulet). – Co-encadrement d’un doctorant de septembre 2002 à octobre 2005 (G. Blin). – Cours de Bioinformatique en DEA d’Informatique de Nantes (2003). – Cours de Bioinformatique en Master 2 Recherche d’Informatique de Nantes (2004 à 2006). Irena Rusu : – Encadrement d’un stagiaire de M2R Informatique en 2005 (F. Vaz e Silva) et 2006 (A. Leroy). – Co-encadrement d’un doctorant de septembre 2002 à octobre 2005 (G. Blin). – Cours de Bioinformatique en DEA d’Informatique de Nantes (2003). – Cours de Bioinformatique en Master 2 Recherche d’Informatique de Nantes (2004 à 2006). – Montage du Master Recherche « Systèmes d’aide à la décision » (2003-2004). – Administration du Master Recherche « Systèmes d’aide à la décision » depuis 2004. Christine Sinoquet : – Encadrement d’une stagiaire de DEA Génomique et Informatique de l’Université de Rennes (2004). – Montage du Master professionnel en Bioinformatique, Université de Nantes (2003-2004). – Administration du Master professionnel en Bioinformatique, Université de Nantes (2004 à 2006). – Co-encadrement d’un stagiaire de M2R Informatique en 2006 (Q. Thominet). 330 Rapport d’activité LINA 2003–2006 10.8.5 Transfert de technologie – Le logiciel S TARS, présent sur le site de la plate-forme Bioinformatique de Ouest Génopole. – La plate-forme d’exploration des génomes bacteriens BAC T RANS2 , présent sur le site de la plateforme Bioinformatique de Ouest Génopole. 10.9 Publications de référence de l’équipe hors période [1] O. BAUDON, G. F ERTIN, et I. H AVEL. Routing permutations and 2-1 routing requests in the hypercube. Discrete Applied Mathematics, 1(113) :43–58. Elsevier Science, 2001. [2] J. B OURDON. Size and path length in patricia tries : Dynamical sources context. Random Structures and Algorithms, 19(3-4) :289–315. John Wiley and Sons, 2001. ISSN : 1042-9832. [3] J. B OURDON, B. DAIREAUX, et B. VALL ÉE. Dynamical analysis of alpha-euclidean algorithms. Journal of Algorithms, 44 :246–285, 2002. ISSN : 0196-6774. [4] J. B OURDON, M. N EBEL, et B. VALL ÉE. On the stack-size of general tries. Theoretical Informatics and Applications, 35 :163–185. EDP Sciences, 2001. ISSN : 0988-3754. [5] V. C HV ÀTAL, I. RUSU, et R. S RITHARAN. Dirac-type characterizations of graphs without long chordless cycles. Discrete Mathematics, 256(1-2) :445–448. Elsevier, 2002. ISSN : 0012-365X. [6] G. F ERTIN, E. G ODARD, et A. R ASPAUD. Minimum feedback vertex set and acyclic coloring. Information Processing Letters, 3(84) :131–139. Elsevier Science, 2002. [7] G. F ERTIN et R. L ABAHN. Compounding of gossip graphs. Networks, 2(36) :126–137. Wiley, 2000. [8] I. PARFENOFF, F. ROUSSEL, et I. RUSU. Loose vertices in C4-free graphs. Discrete Mathematics, 258(1) :137–160. Elsevier, 2002. ISSN : 0012-365X. [9] I. RUSU et J. S PINRAD. Domination graphs : examples and counterexamples. Discrete Applied Mathematics, 110(2-3) :289–300. Elsevier, 2001. ISSN : 0166-218X. 10.10 Publications de référence de l’équipe dans la période [10] G. B LIN, G. F ERTIN, R. R IZZI, et S. V IALETTE. What makes the APS problem hard ? Transactions on Computational Systems Biology II, 3680 :1–36. LNCS, 2005. ISBN : 3-540-29401-5, ISSN : 0302-9743. [11] J. B OURDON et B. VALL ÉE. Pattern matching statistics on correlated sources. In Proc. of LATIN’06, volume 3887 of LNCS, pages 224–237, 2006. ISBN : 3-540-32755-X, ISSN : 0302-9743. [12] A. M ANCHERON et I. RUSU. Pattern discovery allowing gaps, substitution matrices and multiple score functions. In Proc. 3rd International Workshop on Algorithms in BioInformatics (WABI’03), volume 2812 of LNBI, pages 129–145, 2003. ISBN : 3-540-20076-2, ISSN : 0302-9743. [13] C. M OAN et I. RUSU. Hard problems in similarity searching. Discrete Applied Mathematics, 144(1-2) :213–227. Elsevier, 2004. ISSN : 0166-218X. [14] C. S INOQUET. A novel approach for structured consensus motif inference under specificity and quorum constraints. In Proc. Fourth Asia-Pacific Bioinformatics Conference, volume 3 of Series on Advances in Bioinformatics and Computational Biology, pages 207–216, 2006. ISBN : 1-86094623-2. ComBi : Combinatoire et Bio-Informatique 331 10.11 Publications de l’équipe A1. Revues d’audience internationale avec comité de lecture [15] N. A LON, G. F ERTIN, A. L IESTMAN, T. S HERMER, et L. S TACHO. Factor d-domatic colorings of graphs. Discrete Mathematics, 262(1-3) :17–25. Elsevier Science, 2003. ISSN : 0012-365X. [16] A. B ERRY, A. S IGAYRET, et C. S INOQUET. Maximal sub-triangulation in preprocessing phylogenetic data. Soft Computing, special issue on Recent Advances in Knowledge Discovery, 5(10) :461– 468. Springer Verlag, 2005. ISSN : 1432-7643. [17] C. C HAUVE et G. F ERTIN. On maximal instances for the original syntenic distance. Theoretical Computer Science, 326(1-3) :29–43, 2004. ISSN : 0304-3975. [18] F. C OMELLAS, G. F ERTIN, et A. R ASPAUD. Recursive graphs with small-world scale-free properties. Physical Review E, 69(037104) :1–4, 2004. ISSN : 1539-3755. [19] G. F ERTIN, E. G ODARD, et A. R ASPAUD. Acyclic and k-distance coloring of the grid. Information Processing Letters, 1(87) :51–58. Elsevier Science, 2003. ISSN : 0020-0190. [20] G. F ERTIN, A. L. L IESTMAN, T. C. S HERMER, et L. S TACHO. Edge-disjoint spanners in cartesian products of graphs. Discrete Mathematics, 167(2-3) :167–186, 2005. ISSN : 0012-365X. [21] G. F ERTIN et A. R ASPAUD. A survey on Knödel graphs. 137(2) :173–195, 2004. ISSN : 0166-218X. Discrete Applied Mathematics, [22] G. F ERTIN, A. R ASPAUD, et B. R EED. Star coloring of graphs. Journal of Graph Theory, 3(47) :163–182, 2004. ISBN : 0364-9024. [23] G. F ERTIN, A. R ASPAUD, et A. ROYCHOWDHURY. On the oriented chromatic number of grids. Information Processing Letters, 5(85) :261–266. Elsevier Science, 2003. ISSN : 0020-0190. [24] A. M ANCHERON et C. M OAN. Combinatorial caracterization of the language recognized by factor and suffix oracle. International Journal of Foundations of Computer Science, 16(6) :1179–1191. World Scientific, 2005. ISSN : 0129-0541. [25] Z. Z HANG, F. C OMELLAS, G. F ERTIN, et L. RONG. High-dimensional Apollonian networks. Journal of Physics A : Mathematical and General, 39 :1811–1818, 2006. ISSN : 0305-4470. C. Colloques de diffusion nationale ou internationale sur invitation [26] J. B OURDON. Dynamical systems and analysis of algorithms. Optimization algorithms and quantum disordered systems. L. Cugliandolo, R. Monasson, 2004. Conférence Invitée. D1. Colloques de diffusion internationale avec comité de lecture et actes [27] A. B ERRY, A. S IGAYRET, et C. S INOQUET. Maximal sub-triangulation as preprocessing phylogenetic data. In Proc. Fourth International Conference on Knowledge Discovery and Discrete Mathematics, M.Nadif, A. Napoli, E. SanJuan and A. Sigayret (eds.), pages 267–275, 2003. [28] G. B LIN, C. C HAUVE, et G. F ERTIN. The breakpoint distance for signed genomes. In 1st International Conference on Algorithms and Computational Methods for Biochemical and Evolutionary Networks (CompBioNets 2004), volume Vol.3 of Text in Algorithms of King’s College London Publications, pages 3–16, 2004. ISSN : 0-904987-05-2. 332 Rapport d’activité LINA 2003–2006 [29] G. B LIN, G. F ERTIN, et C. C HAUVE. Genes order and phylogenetic reconstruction : Application to γ-proteobacteria. In Proc. 3rd RECOMB Comparative Genomics Satellite Workshop (RCG’05), volume 3678 of LNBI, pages 11–20, 2005. ISBN : 3-540-28932-1. [30] G. B LIN, G. F ERTIN, D. H ERMELIN, et S. V IALETTE. Fixed-parameter algorithms for protein similarity search under mRNA structure constraints. In Proc. 31st International Workshop International Workshop on Graph-Theoretic Concepts in Computer Science (WG 2005), volume 3787 of LNCS, pages 272–282, 2005. ISBN : 3-540-31000-2, ISSN : 0302-9743. [31] G. B LIN, G. F ERTIN, R. R IZZI, et S. V IALETTE. What makes the arc-preserving subsequence problem hard ? In International Workshop on Bioinformatics Research and Applications (IWBRA 2005), Atlanta, May 2005, volume 3515 of LNCS, pages 860–868, 2005. ISBN : 3-540-26043-9. [32] G. B LIN, G. F ERTIN, et S. V IALETTE. New results for the 2-interval pattern problem. In In Proc. Fifteenth Annual Combinatorial Pattern Matching Symposium (CPM 2004), volume 3109 of LNCS, pages 311–322, 2004. ISBN : 3-540-22341-X. [33] G. B LIN et R. R IZZI. Conserved interval distance computation between non-trivial genomes. In Proc. 11th International Computing and Combinatorics Conference (COCOON’05), volume 3595 of LNCS, pages 22–31, 2005. ISBN : 3-540-28061-8. [34] P. B ONIZZONI, G. D ELLA V EDOVA, R. D ONDI, G. F ERTIN, et S. V IALETTE. Exemplar longest common subsequence. In Proc. of 2nd International Workshop on Bioinformatics Research and Applications (IWBRA 2006), volume 3992 of LNCS, pages 791–798, 2006. ISBN : 3-540-26043-9. [35] J. B OURDON et A. M ANCHERON. Statistical properties of similarity score functions. In Proc. of MathInfo’06, Discrete Mathematics and Theoretical Computer Science, DMTCS, 2006. To appear. [36] C. C HAUVE et G. F ERTIN. On maximal instances for the original syntenic distance. In 2nd European Conference on Computational Biology (ECCB 2003) - Short papers and Posters, INRIA, pages 285–286, 2003. ISBN : 2-7261-1257. [37] C. C HAUVE, G. F ERTIN, R. R IZZI, et S. V IALETTE. Genomes containing duplicates are hard to compare. In Proc. of 2nd International Workshop on Bioinformatics Research and Applications (IWBRA 2006), volume 3992 of LNCS, pages 783–790, 2006. ISBN : 3-540-26043-9. [38] F. C OMELLAS, G. F ERTIN, et A. R ASPAUD. Vertex labeling and routing in recursive clique-trees, a new family of small-world scale-free graphs. In 10th Int. Colloquium on Structural Information Complexity (SIROCCO 2003), volume 17 of Proceedings in Informatics - Carleton Scientific, pages 73–87, 2003. ISBN : 1-894145-16-X. [39] G. F ERTIN et A. R ASPAUD. Acyclic coloring of graphs with maximum degree ∆. In Proc. of 3rd Euroconference on Combinatorics, Graph Theory and Applications (EUROCOMB 2005), volume AE of Discrete Mathematics and Theoretical Computer Science, DMTCS Conference, pages 389–396, 2005. [40] G. F ERTIN, A. R ASPAUD, et O. S YKORA. No-hole L(p, 0) labelling of cycles, grids and hypercubes. In 11th Int. Colloquium on Structural Information and Communication Complexity (SIROCCO 2004), volume 3104 of LNCS, pages 138–148, 2004. ISBN : 3-540-22230-8. [41] G. F ERTIN, R. R IZZI, et S. V IALETTE. Finding exact and maximum occurrences of protein complexes in protein-protein interaction graphs. In Proc. 30th International Symposium on Mathematical Foundations of Computer Science (MFCS’05), volume 3618 of LNCS, pages 328–339, 2005. ISBN : 3-540-28702-7. ComBi : Combinatoire et Bio-Informatique 333 [42] C. S INOQUET. A metaheuristics approach dedicated to structured motif discovery in DNA sequences. In Proc. Fifth ALIO-EURO Conference on Combinatorial Optimization,, pages 106–107, 2005. [43] C. S INOQUET. When chance helps inferring a structured consensus motif from DNA sequences : study of the metaheuristics approach kaos. In Proc. Algorithms and Computational Methods for Biochemical and Evolutionary Networks (CompBioNets’05), Marie-France Sagot, Katia Guimaraes (eds.), KCL Publications, pages 107–132, 2005. ISBN : 1904987311. D2. Colloques de diffusion nationale avec comité de lecture et actes [44] G. B LIN, C. C HAUVE, et G. F ERTIN. Ordre des gènes et reconstruction phylogénétique : Application aux γ-protéobactéries, 2005. Poster Papers session of Journées Ouvertes Biologie Informatique Mathématiques (JOBIM 2005). [45] G. B LIN, G. F ERTIN, R. R IZZI, et S. V IALETTE. Pattern matching in arc-annotated sequences : New results for the APS problem, 2004. Short Papers session of Journées Ouvertes Biologie Informatique Mathématiques (JOBIM 2004). [46] S. D EMEY, C. S INOQUET, F. B RAUN, et V. S AKANYAN. BacTrans2 : a platform dedicated to largescale prediction and analysis of strong promoters in prokaryotic genomes, 2006. Poster session of Journées Ouvertes Biologie Informatique Mathématiques (JOBIM 2006). [47] G. F ERTIN, A. R ASPAUD, et O. S ÝKORA. No-hole L(p, 0) labelings, 2004. Proc. 6èmes Rencontres Francophones sur les Aspects Algorithmiques des Télécommunications (AlgoTel 04). E. Colloques (avec ou sans actes) à diffusion restreinte [48] G. B LIN et C. S INOQUET. Révélation de motif consensus fonctionnel dans un génome. In Proc. FRANCORO IV, International French-speaking Conference on Operational Research, pages 89–90, 2004. [49] G. F ERTIN et A. R ASPAUD. L(p, q) labeling of d-dimensional grids. In 2nd Euroconference on Combinatorics, Graph Theory and Applications (EUROCOMB’03), 2003. F1. Ouvrages ou chapitres d’ouvrage scientifique [50] J.-L. F OUQUET et I. RUSU, réds. Proceedings of the 6th International Conference on Graph Theory. Elsevier, 2004. ISSN 0012-365X. G. Autres manifestations sans actes [51] G. B LIN, G. F ERTIN, et S. V IALETTE. A polynomial algorithm for the 2-interval pattern problem, 2003. Poster session of the 3rd Workshop on Algorithms in Bioinformatics (WABI’03). [52] C. T RUCHET, J. B OURDON, et P. C ODOGNET. Tearing customers apart for solving PSP-SOS, 2005. IJCAI05, Constraints Modelling Challenge entry. 334 Rapport d’activité LINA 2003–2006 H. DEA, thèses et habilitations [53] G. B LIN. Comparaison de structures d’ARN et calcul de distances intergénomiques. Thèse de doctorat, LINA, Université de Nantes, 2005. Soutenue le 17 novembre 2005. [54] G. F ERTIN. Algorithmique et Optimisation Combinatoire : Applications aux Réseaux d’Interconnexion, à la Coloration de Graphes et à la Bio-Informatique. Habilitation à diriger des recherches, LINA, Université de Nantes, 2004. Soutenue en Novembre 2004. [55] G. H ERRY. Recherche et Extraction de Motifs dans les Séquences d’ARN. Mémoire de M2R informatique, LINA, Université de Nantes, 2005. Juin 2005. [56] F. S OUTAIH. Calcul de la Distance de Synténie entre Génomes. Mémoire de DEA informatique, LINA, Université de Nantes, 2003. Septembre 2003. [57] F. Vaz e S ILVA. Algorithmique des Structures d’Index : Arbres, Automates. Mémoire de M2R informatique, LINA, Université de Nantes, 2005. Juin 2005. J. Rapports internes [58] G. B LIN, G. F ERTIN, I. RUSU, et C. S INOQUET. RNA sequences and the EDIT(NESTED,NESTED) problem. Rapport technique 03.07, Research Report, 2003. Soumis à publication. [59] T. C ALAMONERI, S. C AMINITI, et G. F ERTIN. New bounds for the L(h, k) number of regular grids. Rapport technique 05.04, LINA Research Report, 2005. [60] I. RUSU. Converting suffix trees into factor/suffix oracles. Rapport technique 05.05, LINA Research Report, 2005. Soumis à publication dans Journal of Discrete Algorithms, Elsevier, ISSN 15708667. 10.12 Bibliographie externe [61] T. BAILEY et C. E LKAN. Unsupervised learning of multiple motifs in biopolymers using expectation maximization. Machine learning, 21 :51–80, 1995. [62] C. B ERGE. Graphes et Hypergraphes. Bordas, 1973. [63] B. B REJOV Á, C. D I M ARCO, T. V INAR, S. H IDALGO, G. H OGUIN, et C. PATTEN. Finding patterns in biological sequences. Rapport technique CS798g, University of Waterloo Research Report, 2000. [64] J. B UHLER et M. T OMPA. Finding motifs using random projections. In of the Fifth International Conference on Computational Molecular Biology (RECOMB 2001), ACM Press, pages 69–76, 2001. [65] A. C ALIFANO. SPLASH : Structural pattern localization analysis by sequential histograms. Bioinformatics, 16(4) :341–357, 2000. [66] V. C HV ÀTAL. Linear Programming. Mc-Graw Hill, 1983. [67] M. C ROCHEMORE et W. RYTTER. Text Algorithms. Oxford University Press, 1994. [68] R. D OWNEY et M. F ELLOWS. Parameterized Complexity. Springer-Verlag, 1999. [69] S. E STREM, T. G AAL, W. ROSS, et R. G OURSE. Identification of an up element consensus sequence for bacterial promoters. In Proc. Natl. Acad. Sci. USA, volume 95, pages 9761–9766, Août 1998. ComBi : Combinatoire et Bio-Informatique 335 [70] M. G AREY et D. J OHNSON. Computers and Intractability : a guide to the theory of NPcompleteness. W.H. Freeman, San Francisco, 1979. [71] C. H ARLEY et R. R EYNOLDS. Analysis of E. coli promoter sequences. Nucleic Acids Res., 15 :2343–2361, 1987. [72] D. H ERNANDEZ, R. G RAS, et R. A PPEL. MoDEL : an efficient strategy for ungapped local multiple alignment. Computational Biology and Chemistry, 28(2) :119–128, 2004. [73] G. H ERTZ et G. S TORMO. Identifying DNA and protein patterns with statistically significant alignments of multiple sequences. Bioinformatics, 15(563-577), 1999. [74] I. H OFACKER, W. F ONTANA, P. S TADLER, L. B ONHOEFFER, M. TACKER, et P. S CHUSTER. Fast folding and comparison of RNA secondary structures. Monatsh. Chem., 125 :167–188, 1994. http://www.tbi.univie.ac.at/˜ivo/RNA/. [75] I. J ONASSEN. Efficient discovery of conserved patterns using a pattern graph. Computer Applications in the Biosciences, 13 :509–522, 1997. [76] D. K NUTH. The Art of Computer Programming. Addison-Wesley, 1973. [77] C. L AWRENCE, S. A LTSCHUL, M. B OGUSKI, J. L IU, A. N EUWALD, et J. W OOTTON. Detecting subtle sequence signals : a Gibbs sampling strategy for multiple alignment. Science, 262 :208–214, 1993. [78] G.-H. L IN, B. M A, et K. Z HANG. Edit distance between two RNA structures. In RECOMB 2001, number 17 in All ACM Conferences, pages 211–220. ACM Press, 2001. [79] L. M ARSAN et M.-F. S AGOT. Algorithms for extracting structured motifs using a suffix tree with application to promoter and regulatory site consensus identification. Journal of Computational Biology, 7 :345–360, 2000. [80] A. M ORIN, N. H UYSVELD, F. B RAUN, D. D IMOVA, V. S AKANYAN, et D. C HARLIER. Hyperthermophilic Thermotoga arginine repressor binding to full-length cognate and heterologous arginine operators and to half-site targets. J. Molecular Biology, 3(332) :537–53, 2003. [81] R. M OTWANI et P. R AGHAVAN. Randomized Algorithms. Cambridge University Press, 1995. [82] C. PAPADIMITRIOU et K. S TEIGLITE. Combinatorial Optimization : Algorithms and Complexity. Prentice-Hall, 1980. [83] G. P ERRI ÈRE, L. D URET, et M. G OUY. Hobacgen : for comparative genomics in bacteria. Genome Res., 10 http://pbil.univ-lyon1.fr/databases/hobacgen.html. database system :379–385, 2000. [84] P. P EVZNER et S.-H. S ZE. Combinatorial algorithm for finding subtle signals in DNA sequences. In Proc. of the Eighth International Conference on Intelligent Systems for Molecular Biology (ISMB 2000), pages 269–278, 2000. [85] I. R IGOUTSOS et A. F LORATOS. Combinatorial pattern discovery in biological sequences : The TEIRESIAS algorithm. Bioinformatics, 14(1) :55–67, 1998. [86] V. S AKANYAN, M. D EKHTYAR, A. M ORIN, F. B RAUN, et L. M ODINA. Method for the identification and isolation of strong bacterial promoters, 2003. European patent application, 3290203.3, january 27th. [87] R. S EDGEWICK et P. F LAJOLET. An introduction to the analysis of algorithms. Addison-Wesley Longman Publishing Co., Inc., 1996. 336 Rapport d’activité LINA 2003–2006 [88] W. S ZPANKOWSKI. Average case analysis of algorithms on sequences. Wiley-Interscience Series in Discrete Mathematics and Optimization. Wiley-Interscience, New York, 2001. ISBN : 0-47124063-X. [89] W. T HOMPSON, E. ROUCHKA, et C. L AWRENCE. Gibbs recursive sampler : finding transcription factor binding sites. Nucleic Acids Research, 31(13) :3580–3585, 2003. [90] B. VALL ÉE. Dynamical sources in information theory : fundamental intervals and word prefixes. Algorithmica, 29(1-2) :262–306, 2001. Équipe TALN : Traitement Automatique du Langage Naturel 11.1 Composition de l’équipe Responsable : Béatrice Daille Chercheurs-enseignants : – Denis Bechet Maı̂tre de Conférences, Université de Nantes, 2004 – Béatrice Daille Professeur, Université de Nantes, — – Emmanuel Desmontils Maı̂tre de Conférences, dans le thème IC jusqu’en 2003, Université de Nantes, — – Alexandre Dikovsky Professeur, Université de Nantes, — – Chantal Enguehard Maı̂tre de Conférences, Université de Nantes, — – Christine Jacquin Maı̂tre de Conférences, dans le thème IC jusqu’en 2003, Université de Nantes, — – Nicolas Hernandez Maı̂tre de Conférences, Université de Nantes, 2006 – Laura Monceaux Maı̂tre de Conférences, Université de Nantes, 2003 – Emmanuel Morin Maı̂tre de Conférences, Université de Nantes, — Chercheurs associés : – Annie Tartier PRCE - Maı̂tre de Conférences 2006, Université de Nantes, 2005 Chercheurs doctorants : – Siham Boulaknadel Doctorante co-tutelle Universite V Agdal, Faculté des Sciences, Rabat, Maroc, LINA, 20/09/2004 337 338 Rapport d’activité LINA 2003–2006 – Estelle Dubreil Doctorante MENESR, LINA, 01/10/2002- Soutenance le 20/10/2006 – Fabrice Even Doctorant CIFRE Crédit Mutuel/co-encadrement ATLAS-GRIM, LINA, 01/04/2000 - Soutenance le 5/10/2005 – Nordine Fourour Doctorant MENESR, LINA, 01/10/2000 - Soutenance le 29/06/2004 – Lorraine Goeuriot Doctorante MENESR, LINA, 01/10/2005 – Erwan Moreau Doctorant MENESR, LINA, 01/10/2001 - Soutenance le 18/10/2006 – Yukie Nakao Doctorante ressources propres, LINA - Université de Tokyo, 01/11/2006 – Freddy Perraud Doctorant CIFRE Vision Objects, LINA, IRCCyN01/07/2002 - Soutenance le 19/12/2005 – Emmanuel Prochasson Doctorant Prix Atlanthèse, LINA, 01/10/2006 – Boris Smilga Doctorant ressources propres, LINA, 01/10/2004 – Annie Tartier Doctorante,PREC, LINA, 01/10/1998 - Soutenance le 04/10/2004 – Sarah Trichet-Allaire Doctorante Nantes Métropole, LINA, 01/10/2005 11.2 Présentation et objectifs généraux 11.2.1 Historique Anciennement le LIANA (équipe de recherche implantée à l’IUT de Nantes) sous la direction de Jacques-Henri Jayez, l’équipe LN (Langage Naturel) a été intégrée à l’IRIN lors de sa création en 1992. Cette équipe, sous l’animation de Christian Jacquemin et le recrutement de Chantal Enguehard en 1994 et de Béatrice Daille en 1996, a mené des recherches pionnières sur l’acquisition de termes à partir de corpus à l’aide de méthodes mixtes alliant analyse syntaxique partielle et statistiques. Après le départ de C. Jacquemin recruté comme professeur au LIMSI en 1997, l’IRIN recrute en 1998 Alexandre Dikovsky qui développe une nouveau thème portant sur les modèles formels de la syntaxe. En 2002, B. Daille soutient son HDR et prend la direction de l’équipe. 11.2.2 Les thèmes de recherche Avec la disponibilité toujours croissante de documents électroniques, l’analyse des données textuelles et des connaissances qu’elles véhiculent s’affirme comme un enjeu majeur de la société de l’information, comme l’attestent la présence du pilier technologique centré autour des “Connaissances” au sein de la thématique TIC dans les 5ème , 6ème et 7ème Programmes Cadres de l’Union Européenne, les programmes “Masses de données - Connaissances ambiantes” et “Technologies logicielles” de l’ANR, et le pôle mondial de compétitivité CAP DIGITAL dédié aux industries du contenu numérique. Il s’agit de permettre TALN : Traitement Automatique du Langage Naturel 339 un accès équitable et permanent à l’information malgré une complexité toujours croissante des données langagières écrites : apparition de nouveaux supports communicationnels comme les blogs ou de nouvelles formes de communications écrites comme les SMS, couplage à d’autres média, multilinguisme, etc.. Les travaux de l’équipe comportent donc des recherches à caractère fondamental et des recherches appliquées portant sur le lexique, la syntaxe et la sémantique des documents écrits. Dans le cadre de la Théorie des langages, nous nous intéressons à caractériser nos modèles linguistiques du point de vue de leur expressivité et des liens qu’ils entretiennent avec d’autres formalismes. L’Analyse et acquisition lexicale vise à combler le manque de ressources lexicales disponibles et peut être considérée comme la pierre angulaire de l’accès à l’information. Nous recensons le vocabulaire spécialisé, identifions et catégorisons les noms propres, mais nous générons aussi le vocabulaire des SMS à partir de corpus de textes. Ces travaux sur le repérage des unités lexicales en corpus sont directement intégrés dans deux applications principales : l’extraction et la recherche d’information. En particulier, nous avons construit un système de question-réponse qui permet d’expérimenter et de valoriser nos composants logiciels. L’Analyse et acquisition grammaticale s’intéresse aux méthodes d’inférences robustes de grammaires lexicalisées mais aussi à l’adaptation de modèles stochastiques à de nouvelles applications comme la reconnaissance de l’écriture manuscrite ou la correction orthographique. L’Analyse du discours et des documents s’effectue soit à l’aide de modèles prédicatifs, comme ceux dédiés à la génération de plans du discours, soit à l’aide d’analyses lexico-discursives pour l’interprétation des collocations ou la résolution des anaphores nominales, soit encore à l’aide d’une analyse sémantique différentielle permettant de caractériser un document par rapport à d’autres documents. 11.2.3 Perspectives Au sein des différentes thématiques de l’équipe, l’accent sera mis pour la période 2007-2010 sur les points suivants : interface texte-sémantique, multilinguisme et multimédia. Interface texte-sémantique Nos recherches portent sur la définition de nouveaux modèles formels et de nouvelles méthodes et outils pour l’analyse du discours. M OD ÈLES FORMELS POUR L’ INTERFACE TEXTE - S ÉMANTIQUE Les travaux sur les modèles formels s’orientent vers une prise en compte des liens entre les textes, leur syntaxe et la sémantique pour proposer des modèles linguistiques multi-aspects plus réalistes et plus homogènes. À travers ce fil conducteur, nous étudions : 1. la création de modèles de la syntaxe prenant en compte les dépendances distantes et discontinues qui soient suffisamment expressifs tout en restant d’une complexité raisonnable (en particulier en ce qui concerne l’analyse syntaxique) ; 2. la mise en œuvre dans des modèles riches sémantiquement d’algorithmes d’apprentissage qui couvrent une partie significative du lexique d’un langage naturel. en se concentrant sur trois aspects : la compositionalité des modèles, le passage à l’échelle et la couverture du lexique engendré. A NALYSE DU DISCOURS Améliorer l’accès au contenu d’un document nécessite d’aller plus loin que la simple analyse locale et d’exploiter la structuration discursive. Nous étudions l’analyse de la cohérence du discours en identifiant et en résolvant les anaphores nominales, très présentes dans les textes scientifiques. Nous travaillons 340 Rapport d’activité LINA 2003–2006 aussi sur la détection de la subjectivité, le calcul d’opinion de type axiologique ainsi que la détection de sentiment. Ces recherches s’effectuent en collaboration avec O. Galatanu de la Faculté des Lettres de Nantes. Cette collaboration a donné lieu au co-encadrement de thèse en linguistique d’E. Dubreuil soutenue en 2006 et au projet BLOGOSCOPIE. En parallèle, pour améliorer l’accès à l’information dans des masses de données textuelles, nous cherchons à caractériser et classer les documents à l’aide de traits génériques. Pour cette tâche, nous adoptons une analyse différentielle : nous n’analysons pas le texte seul pour en faire émerger des traits mais par rapport à d’autres textes au sein d’un corpus textuel. L’objectif du projet C-mantic, classé 1er sur la liste d’attente de l’appel ANR Masses de données et connaissances ambiantes en 2006, est d’instrumentaliser l’analyse différentielle de corpus en développant des méthodes et des outils. Nous prévoyons aussi de mettre en œuvre cette analyse différentielle pour la détection de plagiat et la surveillance d’impact au sein du projet PIITHIE. Multilinguisme Le multilinguisme est l’un des objectifs maintenus du précédent projet scientifique. Il concerne : 1. l’exploitation de textes multilingues comparables pour en extraire des ressources lexicales multilingues. Nous cherchons à définir de nouvelles méthodes d’alignements pour les corpus comparables. Ces travaux font suite au projet DECO en partenariat avec le NII, Japon et l’INALCO. Il intégre le chinois avec le projet ARCUS (Bretagne-Pays de Loire) et le projet C-mantic en collaboration avec l’université de Hong Kong ; 2. l’accès pour les langues “oubliées” aux diverses applications relevant des industries de la langues, et en particulier les outils pour les grandes langues africaines peu dotées. Ce projet s’effectue au sein du RIFAL (Réseau Intergouvernemental Francophone d’Aménagement Linguistique CNRS). Ces travaux concernent le recueil et la normalisation des textes, la création de dictionnaires électroniques, la mise au point de logiciels de dépouillement de textes et de correcteurs orthographiques. 3. la recherche d’information multilingue avec l’extension du système de question-réponse PRODICOS au traitement des questions en anglais - réponses en français et à son évaluation au sein de la campagne européenne CLEF. Multimédia Les données linguistiques sont présentes dans tous les média, que cela soit sous forme de textes écrits ou transcrits à partir de bande sonore, de sous-titrages, d’annotations, etc. Dans le cadre de l’axe MULTIMEDIA du projet MILES - CE 2007-2013, nous nous intéressons au traitement conjoint de différents média : analyse acoustique et langage naturel en collaboration avec le thème CHM du LIUM (U. Le Mans) et le LLING (U. Nantes), écriture manuscrite en ligne et langage naturel en collaboration avec l’IRCCyN et la société Vision Objects, image et langage naturel en collaboration avec l’équipe ATLASGRIM. Les applications sont l’interaction homme-machine sur dispositifs mobiles et les moteurs de recherche de données multimédia. TALN : Traitement Automatique du Langage Naturel 341 11.3 Fondements scientifiques 11.3.1 Modèles formels du langage naturel Les modèles formels pour les langues naturelles sont apparus à la suite des idées et des travaux des linguistes structuralistes des années 1930. Les premiers modèles formels, les grammaires génératives, représentaient principalement l’aspect syntaxique du langage. Cet aspect a débouché sur deux modèles formels de la syntaxe structurelle : les structures de dépendances et les structures syntagmatiques (ou les structures de constituants), d’autres structures, comme par exemple les structures de traits, combinant les deux. Depuis les années 1970 et surtout depuis les travaux de Montague [128, 130], les modèles formels s’intéressent aussi aux relations entre la structure syntaxique et la sémantique d’une manière compositionnelle. Cette approche place les mots, ou leurs propriétés caractéristiques comme les types sémantiques ou les catégories syntaxiques, au centre des modèles et privilégie les modèles lexicalisés aux autres modèles formels. L’approche lexicalisée favorise l’application d’un certain nombres de techniques mathématiques, pas seulement à la syntaxe et à la sémantique mais aussi à l’inférence automatique des grammaires à partir d’exemples [122, 126]. 11.3.2 Fouille textuelle La fouille linguistique textuelle prend racine au sein de la linguistique distributionnelle [125] et inclue les méthodes d’analyse linguistique partielle. Elle se caractérise par des techniques robustes stochastiques ou symboliques [127] et s’oppose aux méthodes d’analyse en profondeur qui sont le plus souvent limitées à cause de l’incomplétude des lexiques et des grammaires et de la longueur des phrases [119, 120]. Les concepts centraux sont les notions de contexte et de voisinage [124, 121], définis en termes de fenêtres ou de patrons, pondérés à l’aide de mesures de similarité, appris à l’aide de techniques d’apprentissage supervisé. La flexibilité et la robustesse de l’analyse partielle permet le traitement de masses de données textuelles pour l’accès à l’information. La difficulté porte sur le repérage des unités d’information homogènes et leur analyse, soit en fonction de classes sémantiques prédéfinies ou non, soit contrastivement. La “légèreté” de l’analyse syntaxique est compensée par l’introduction d’analyse linguistique fine fondée sur la micro-sémantique [129]. La fouille textuelle multilingue s’appuie sur des analyses monolingues effectuées dans chacune des langues qu’il s’agira d’aligner. Pour les textes parallèles, i.e. un texte et sa traduction, de nombreuses techniques d’alignement existent : symboliques, statistiques ou mixtes [131]. Pour les textes comparables, partageant un certain nombre de caractéristiques, les principales méthodes s’appuient sur une analyse contextuelle adoptant le modèle vectoriel. 11.4 Domaines d’applications 11.4.1 Recherche d’information La Recherche d’information consiste à partir d’une requête exprimée en langage naturel (ou non) de déterminer les documents les plus pertinents à partir d’une base documentaire. L’objectif, aujourd’hui, consiste à rendre cette recherche de plus en plus précise, c’est-à-dire retourner à la fois une réponse précise à la requête de l’utilisateur ainsi que les passages qui la valident. Ceci soulève de nombreux problèmes liés à l’ambiguı̈té inhérente au langage naturel. Plusieurs pistes pour résoudre ces problèmes sont envisageables. Nous en avons principalement étudié deux : l’une concerne l’utilisation de connaissances syntaxiques robustes et sémantiques pour affiner la requête afin d’orienter la recherche de la 342 Rapport d’activité LINA 2003–2006 réponse. L’autre concerne l’indexation des documents reposant sur une désambiguı̈sation sémantique effectuée à l’aide ressources lexicales. 11.4.2 Veille scientifique et technologique La veille technologique ou scientifique a pour mission d’observer et d’analyser l’activité des domaines scientifiques ou techniques. Ses résultats, intéressants en tant que tels pour une meilleure connaissance des domaines, sont aussi destinés à motiver des prises de décisions stratégiques et à mener des études prospectives. Les cellules de veille utilisent le plus souvent des méthodes bibliométriques fondées essentiellement sur la statistique lexicale. Des mesures sont définies à partir de comptages d’occurrences et de co-occurrences d’indices jugés représentatifs de l’activité et de l’évolution du domaine. Ces indices sont choisis parmi les informations repérables comme les revues, les publications, les auteurs, les citations, et enfin les mots, qui sont les meilleurs révélateurs des thèmes du domaine. La veille qui s’intéresse donc à des entités extra-linguistiques le fait, pour une bonne part, au travers du traitement de matériaux textuels, considérant que ceux-ci sont révélateurs de l’activité des domaines observés. C’est à ce niveau, et au double titre de l’acquisition et de l’exploitation de terminologies, que nos travaux contribuent à enrichir les outils de veille. En effet, un logiciel d’acquisition terminologique qui extrait des candidats termes complexes, munis d’informations linguistiques, apporte d’autres perspectives en proposant une image plus fine des concepts que ne peuvent le faire des occurrences de mots simples. La mise au point, en cours d’élaboration, d’un prototype pour l’étude diachronique de l’attestation terminologique coı̈ncide avec l’un des objectifs majeurs de la veille, celui de l’évolution des activités des domaines observés. 11.4.3 Reconnaissance de l’écriture manuscrite Les travaux que nous poursuivons en modélisation probabiliste du langage trouvent une application concrète dans les nouveaux systèmes mobiles communicants (assistant numérique, ardoise électronique, tablette PC, etc.). Dans ces engins nomades, la communication avec le système se fait au moyen d’un stylet qui apporte une plus grande solution de confort que le clavier. En l’absence de clavier, les informations saisies par l’utilisateur se présentent sous la forme d’un tracé manuscrit qui n’est ni figé ni statique. Il s’agit donc de proposer une séquence de mots correspondant à un signal observé pour lequel on ne connaı̂t pas la longueur de chaque forme élémentaire (chaque mot dans la phrase et chaque caractère dans un mot). Il est donc intéressant d’associer à l’algorithme de reconnaissance de formes un modèle du langage qui participe à l’identification de la phrase la plus probable. 11.4.4 Traduction automatique et automatisée Il existe de applications importantes, telles que les systèmes de traduction automatique et les systèmes d’aide à la traduction humaine qui visent l’interprétation complète et précise des textes, en combinant l’analyse fine des phrases avec l’interprétation exacte de leurs structures dans un but de génération, de périphrase, etc. Dans le cadre de ces systèmes sont utilisés des algorithmes complets d’analyse. Il existe plusieurs classes de grammaires formelles, dont les grammaires de dépendance, qui sont utilisables pour une analyse syntaxique complète et fine (ainsi non robuste) dont le coût est acceptable en pratique. Un de leurs avantages importants est qu’elles conduisent à des représentations sémantiques et peuvent être utiles pour la génération d’énoncés à partir de représentations sémantiques. Nos travaux sur la sémantique formelle des grammaires de dépendance sont susceptibles de combler le vide dans les systèmes de traduction automatique en proposant une sémantique formelle, compositionnelle dont la complexité est TALN : Traitement Automatique du Langage Naturel 343 raisonnable. Étant plus simple que les sémantiques logiques, cette sémantique est définie en termes proprement linguistiques : situations, types, rôles et diathèses sémantiques et est liée étroitement aux arbres de dépendances. 11.5 Résultats nouveaux 11.5.1 Théorie des langages Participants : Denis Béchet, Alexandre Dikovsky, Erwan Moreau. Les modèles formels du langage naturel développés dans l’équipe permettent de prendre en compte des phénomènes linguistiques souvent mal traités comme les dépendances distantes ou croisées. Nous nous intéressons ici à caractériser nos modèles linguistiques du point de vue de leur expressivité et des liens avec d’autres formalismes. Expressivité Nous avons introduit la classe des grammaires catégorielles de dépendance, beaucoup plus expressives que les grammaires de dépendance de Hays–Gaifman, les grammaires de liens, les grammaires projectives de Lombardo–Lesmo et plusieurs autres grammaires de dépendance. En particulier, ces grammaires expriment les dépendances non-projectives (discontinues) et génèrent des langages contextuels non algébriques. Nous avons démontré qu’avec des conditions réalistes (qui correspondent à l’hypothèse que la mémoire dynamique humaine, utilisée pour gérer les syntagmes discontinus, est bornée), ces grammaires de dépendance sont transformées en grammaires hors contexte équivalentes [39]. En collaboration avec M. Dekhtyar, nous avons formalisé ces grammaires catégorielles de dépendance par un calcul sous commutatif de types polarisés du premier ordre ce qui a permis d’élaborer un algorithme d’analyse des grammaires catégorielles de dépendance en temps polynomial très efficace comparé aux autres algorithmes d’analyse en dépendance [35]. Dans la même optique, nous avons introduit une nouvelle classe de grammaires de dépendance : les grammaires de structures de dépendance. Ces grammaires à règles de substitution sont utiles pour définir les grammaires de dépendance à grande échelle. Dans [27], ces grammaires sont définies et plusieurs conditions nécessaires et suffisantes d’équivalences fortes et faibles avec les grammaires catégorielles de dépendance sont proposées même si ces deux modèles sont complémentaires. Propriétés formelles Les études sur les propriétés des langages formels ont porté sur le calcul de la complexité d’algorithmes, sur la mise en évidence de relations entre formalismes et sur la démonstration de l’inclusion de classes de langages. Les quatre articles publiés durant la période 2003–2006 en collaboration avec Michael Dekhtyar et Mars Valiev abordent la complexité de la vérification de propriétés exprimées en logiques temporelles (P T L, CT L, CT L∗ , µ-calcul) du comportement coopératif d’agents intelligents [60, 84, 14, 10]. Les bornes exactes de la complexité de ces problèmes en fonction des contraintes structurelles et sémantiques ont été établies. Nous avons aussi démontré que sous certaines contraintes réaliste, on peut vérifier en temps polynomial les propriétés de comportement d’un système multi-agent exprimées en sous ensembles larges des logiques temporelles du premier ordre. 344 Rapport d’activité LINA 2003–2006 En ce qui concerne les grammaires catégorielles, nous avons étudié certains problèmes ouverts concernant l’inclusion de classes de grammaires ainsi que les liens de ces grammaires avec d’autres formalismes. Dans [30], nous avons montré que les grammaires de Lambek non-associatives k-valuées forment une hiérarchie stricte de classes de langages. Nous avons aussi proposé une transformation des grammaires de lien vers les grammaires catégorielles dans le but d’utiliser les grammaires disponibles dans le domaine des grammaires catégorielles [46]. Un autre modèle que nous étudions concerne les grammaires de prégroupe. En utilisant une notion de composition partielle, nous avons introduit un nouvel algorithme pour l’analyse syntaxique de ces grammaires [80]. Cette technique est aussi utilisable pour le calcul de Lambek dans une version plus complexe [79, 12]. 11.5.2 Analyse et acquisition lexicale Participants : Béatrice Daille, Emmanuel Desmontils, Chantal Enguehard, Fabrice Even, Nordine Fourour, Christine Jacquin, Laura Monceaux, Emmanuel Morin, Freddy Perraud, Annie Tartier. Dans les domaines techniques, le recensement du vocabulaire spécialisé reste un problème majeur, tout comme l’identification des relations qui peuvent le structurer. La reconnaissance et le typage des entités nommées qui réfèrent à des concepts uniques et partagés sont également essentiels. Les approches d’acquisition et de structuration de la terminologie sont souvent moins complémentaires qu’elles le paraissent et relèvent de finalités distinctes. L’acquisition vise à collecter des listes de termes pour recenser un lexique spécialisé alors que la structuration s’intéresse à l’organisation de ces données, à leurs relations hiérarchiques ou non, et aux types des liens. Afin d’offrir une meilleure complémentarité entre ces deux aspects, nous étudions des techniques d’acquisition de connaissances sémantiques à partir de textes s’appuyant conjointement sur la collecte de termes et de relations sémantiques élémentaires, et sur leur corrélation dans une recherche de variantes complexes. D’un point de vue multilingue, nous nous intéressons à la constitution de terminologies spécialisées à partir de corpus comparables. Les travaux en acquisition et analyse lexicale sont utilisés dans trois applications relevant du domaine de la recherche d’information : extraction d’information, système de question-réponse et recherche d’information en langue arabe. Termes Acquisition de terminologie Le logiciel ACABIT est un extracteur de termes qui a pour objectif de préparer la tâche du terminologue en lui proposant une liste ordonnée de candidats-termes pour un corpus préalablement étiqueté et lemmatisé [2]. Il peut traiter des données textuelles volumineuses (corpus de plus d’1 million de mots) et fonctionne sur le français, sur l’anglais et à récemment été adapté au Japonais [51]. L’une des spécificités d’ACABIT est la prise en compte des variations des termes complexes : flexionnelles, syntaxique et morphosyntaxiques. Une typologie exhaustive des variations utiles pour l’extraction terminologique et les méthodes informatiques nécessaires ont été présentées dans [4, 102, 82]. Ces variations ont été utilisées pour structurer la terminologie extraite à l’aide de liens sémantiques [33]. Le logiciel ANA est également un extracteur de termes [6]. Il n’est pas fondé sur une approche statistique mais utilise des heuristiques afin de s’adapter aux textes à explorer. Il est donc facilement adaptable pour différentes langues et est capable de traiter des textes de basse qualité. TALN : Traitement Automatique du Langage Naturel 345 Structuration de terminologie Afin d’offrir une meilleure complémentarité entre acquisition sémantique et acquisition terminologique, nous avons proposé une nouvelle méthode pour la structuration automatique de termes polylexicaux qui s’appuie, non sur des régularités syntaxiques, mais sur des liens entre mots simples extraits automatiquement à partir de corpus. Notre approche combine l’extraction de relations sémantiques entre termes simples à partir de corpus et la reconnaissance de variantes sémantiques de termes complexes afin d’étendre les relations entre mots simples à des relations plus spécialisées entre termes complexes. De cette manière, seule une partie des relations entre termes simples se retrouve sur les termes complexes. Par exemple, la relation entre les termes fruit et raisin peut être transférée vers un autre domaine conceptuel qui correspond à une partie différente de la taxinomie (comme pour la relation entre jus de fruit et jus de raisin du domaine des jus), ou spécialisée en une relation identique mais pour des concepts plus spécifiques (comme pour la relation entre fruit sec et raisin sec qui demeure dans le domaine des fruits). Les relations ainsi extraites ne permettent pas de construire directement un réseau syntagmatique ou paradigmatique dénotant de classes de concepts ou de relations du domaine d’étude. Néanmoins, ces relations entre termes complexes, de par leur spécificité, sont des données précieuses pour tout accès à l’information en domaine de spécialité [11, 105]. Extraction de terminologies bilingues Nous nous intéressons à l’extraction de termes complexes bilingues pour des domaines spécialisés dans des textes comparables. Ce travail, plus délicat que celui de l’extraction de termes simples bilingues, doit répondre à des caractéristiques précises. D’une part, les termes simples et complexes ne se traduisent pas systématiquement par un terme de même longueur suivant une hypothèse de traduction mot à mot (par exemple le terme essence d’ombre est traduit en anglais par shade tolerant species). D’autre part, la traduction d’un terme complexe n’est pas toujours obtenue par la traduction de ces composants (par exemple, le terme plantation énergétique est traduit en anglais par fuel plantation, où fuel n’est pas la traduction de énergétique). Enfin, les variations des termes doivent être prises en compte dans le processus de traduction (par exemple, les termes français aménagement de la forêt et aménagement forestier sont traduits par le même terme anglais forest management). Dans le cade de ce travail, nous avons ainsi proposé et évalué une m