L'architecture du discours, du caractère au type : Quatremère de Quincy et l'inversion des valeurs de l'architecte à la fin de l'âge classique - Thèse Informatique

L'architecture du discours, du caractère au type : Quatremère de Quincy et l'inversion des valeurs de l'architecte à la fin de l'âge classique - thèse Informatique - Revenir à l'accueil

 

Autres thèses en informatique :

[TXT]

 APISENSE-a-distribut..> 05-Jan-2015 08:09  5.7M  

[TXT]

 APISENSE-terminaux-i..> 04-Jan-2015 21:53  5.4M  

[TXT]

 Addition-formulae-on..> 04-Jan-2015 21:26  3.0M  

[TXT]

 Architecture-de-comm..> 05-Jan-2015 08:04  4.4M  

[TXT]

 Catalogage-de-petits..> 05-Jan-2015 08:06  3.8M  

[TXT]

 Classification-et-ca..> 04-Jan-2015 11:58  1.3M  

[TXT]

 Collaboration-de-tec..> 04-Jan-2015 21:27  2.4M  

[TXT]

 Completion-combinato..> 05-Jan-2015 08:11  2.6M  

[TXT]

 Contributions-a-la-v..> 04-Jan-2015 21:51  5.4M  

[TXT]

 Cryptographie-sur-le..> 05-Jan-2015 08:01  3.4M  

[TXT]

 Detection-de-rails-m..> 05-Jan-2015 08:04  5.1M  

[TXT]

 Environnements-urbai..> 05-Jan-2015 08:03  6.3M  

[TXT]

 Equilibrage-de-charg..> 04-Jan-2015 21:25  3.2M  

[TXT]

 Evaluation-analytiqu..> 05-Jan-2015 08:07  3.5M  

[TXT]

 Faciliter-le-develop..> 04-Jan-2015 21:56  4.4M  

[TXT]

 Factorisation-matric..> 04-Jan-2015 11:59  2.7M  

[TXT]

 Generation-automatiq..> 03-Jan-2015 22:04  2.6M  

[TXT]

 Gestion-de-la-variab..> 04-Jan-2015 21:55  4.8M  

[TXT]

 Idéalisation-d-asse..> 04-Jan-2015 11:57  2.1M  

[TXT]

 Inference-d-invarian..> 04-Jan-2015 11:58  1.5M  

[TXT]

 Integration-de l-inf..> 04-Jan-2015 21:25  3.4M  

[TXT]

 Intelligence-en-essa..> 05-Jan-2015 08:03  5.6M  

[TXT]

 Interrogation-de-gra..> 03-Jan-2015 22:04  2.9M  

[TXT]

 La-gestion-du-trafic..> 03-Jan-2015 22:01  4.1M  

[TXT]

 Langage-de-mashup-Th..> 04-Jan-2015 21:24  4.1M  

[TXT]

 Les-logiciels-de-ges..> 03-Jan-2015 22:03  3.1M  

[TXT]

 Lh-rs-p2p-une-nouvel..> 04-Jan-2015 11:59  2.7M  

[TXT]

 Mesure-de-la-fragili..> 04-Jan-2015 21:24  3.8M  

[TXT]

 Meta-modelisation-du..> 04-Jan-2015 21:56  4.1M  

[TXT]

 Methode-de-classific..> 04-Jan-2015 11:58  1.3M  

[TXT]

 Methode-de-game-desi..> 05-Jan-2015 08:10  4.2M  

[TXT]

 Methodes-sequentiell..> 04-Jan-2015 21:27  2.2M  

[TXT]

 Mise-en-oeuvre-appli..> 04-Jan-2015 21:54  4.4M  

[TXT]

 Modele-et-experience..> 05-Jan-2015 08:01  3.8M  

[TXT]

 Modelisation-d-une-a..> 04-Jan-2015 21:53  5.0M  

[TXT]

 Modelisation-et-dete..> 04-Jan-2015 11:57  1.6M  

[TXT]

 Normalisation-et-App..> 03-Jan-2015 22:01  4.1M  

[TXT]

 Nouvelles-approches-..> 05-Jan-2015 08:09  2.3M  

[TXT]

 Planification-d-une-..> 05-Jan-2015 08:06  4.1M  

[TXT]

 Prise-en-compte-de-l..> 03-Jan-2015 22:04  2.8M  

[TXT]

 Qualification-system..> 04-Jan-2015 21:26  2.8M  

[TXT]

 Reconnaissance-de-co..> 03-Jan-2015 22:03  3.6M  

[TXT]

 Segmentation-supervi..> 04-Jan-2015 11:58  1.3M  

[TXT]

 Services-de-repartit..> 03-Jan-2015 21:59  4.7M  

[TXT]

 Techniques-visuelles..> 04-Jan-2015 21:27  2.7M  

[TXT]

 The-Emergence-of-Mul..> 03-Jan-2015 22:05  2.5M  

[TXT]

 Trigraphes-de-Berge-..> 03-Jan-2015 22:02  3.9M  

[TXT]

 Un-ilot-formel-pour-..> 05-Jan-2015 08:07  3.1M  

[TXT]

 Vers-une-capitalisat..> 03-Jan-2015 22:00  4.6M
Congrès d'informatique :

[TXT]

 Application-Agnostic..> 03-Jan-2015 21:16  2.1M  

[TXT]

 Continuity-Editing-f..> 03-Jan-2015 17:35  4.0M  

[TXT]

 Double-WP-Vers-une-p..> 03-Jan-2015 17:36  4.0M  

[TXT]

 Effective-Reproducib..> 03-Jan-2015 21:18  2.0M  

[TXT]

 Enforcing-reuse-and-..> 03-Jan-2015 21:17  2.0M  

[TXT]

 Extracting-Bounded-s..> 03-Jan-2015 21:19  4.0M  

[TXT]

 Fingerprint-Quality-..> 03-Jan-2015 21:16  2.1M  

[TXT]

 GPU-Load-Balance-Gui..> 03-Jan-2015 21:18  4.0M  

[TXT]

 Minkowski-sum-of-pol..> 03-Jan-2015 21:17  2.0M  

[TXT]

 Quality-Assessment-o..> 03-Jan-2015 21:16  2.1M  

[TXT]

 Rester-statique-pour..> 03-Jan-2015 17:35  4.0M  

[TXT]

 The-Power-of-Polynom..> 03-Jan-2015 21:16  2.1M  
Cours d'informatique :

[TXT]

 Analyse-numerique-Co..> 03-Jan-2015 17:33  3.0M  

[TXT]

 Approches-m-k-firm-p..> 03-Jan-2015 17:27  3.7M  

[TXT]

 COURS-LA-CULTURE-INF..> 03-Jan-2015 17:25  3.8M  

[TXT]

 CRYPTANALYSE-DE-RSA-..> 03-Jan-2015 17:33  3.0M  

[TXT]

 Cours-Interconnexion..> 03-Jan-2015 17:34  3.0M  

[TXT]

 Cours-d-Analyse-et-C..> 03-Jan-2015 17:22  3.9M  

[TXT]

 Efficient-C++finite-..> 03-Jan-2015 17:30  3.5M  

[TXT]

 Efficient-C++finite-..> 03-Jan-2015 17:31  3.2M  

[TXT]

 Fondements-de-l-Info..> 03-Jan-2015 17:22  4.0M  

[TXT]

 INTRODUCTION-A-L-INF..> 03-Jan-2015 17:24  3.8M  

[TXT]

 Informatique-et-Ling..> 03-Jan-2015 17:24  3.8M  

[TXT]

 Initiation-a-l-infor..> 03-Jan-2015 17:26  3.8M  

[TXT]

 Intelligence-Artific..> 03-Jan-2015 15:16  2.5M  

[TXT]

 Introduction-a-l-ana..> 03-Jan-2015 17:27  3.7M  

[TXT]

 Introduction-a-la-ge..> 03-Jan-2015 17:26  3.8M  

[TXT]

 Le-routage-externe-B..> 03-Jan-2015 17:32  3.1M  

[TXT]

 Le-systeme-d-informa..> 03-Jan-2015 17:32  3.1M  

[TXT]

 Lecture1_Linear_SVM_..> 03-Jan-2015 14:57  2.4M  

[TXT]

 Lecture2_Linear_SVM_..> 03-Jan-2015 14:56  2.4M  

[TXT]

 Lecture3_Linear_SVM_..> 03-Jan-2015 14:56  2.4M  

[TXT]

 Lecture4_Kenrels_Fun..> 03-Jan-2015 14:55  2.4M  

[TXT]

 Lecture5_Kernel_SVM...> 03-Jan-2015 14:55  2.4M  

[TXT]

 Lecture6_SVDD.pdf.htm   03-Jan-2015 14:54  2.4M  

[TXT]

 Lecture7_Cross_Valid..> 03-Jan-2015 14:54  2.4M  

[TXT]

 Lecture8_Multi_Class..> 03-Jan-2015 14:57  2.4M  

[TXT]

 Lecture9_Multi_Kerne..> 03-Jan-2015 14:53  2.5M  

[TXT]

 Lecture10_Outilier_L..> 03-Jan-2015 14:53  2.5M  

[TXT]

 Les-reseaux-sans-fil..> 03-Jan-2015 15:17  2.5M  

[TXT]

 NooJ-pour-l-Intellig..> 03-Jan-2015 17:30  3.2M  

[TXT]

 Outils-Logiques-pour..> 03-Jan-2015 15:15  2.8M  

[TXT]

 Presentation-de-la-r..> 03-Jan-2015 17:33  3.0M  

[TXT]

 Projet-IP-SIG-Signal..> 03-Jan-2015 15:16  2.5M  

[TXT]

 Robotique-Mobile-PDF..> 03-Jan-2015 15:16  2.6M  

[TXT]

 Systeme-informatique..> 03-Jan-2015 15:17  2.5M  

[TXT]

 Systemes-Multi-Agent..> 03-Jan-2015 17:28  3.5M  

[TXT]

 Tutoriel-Android-TP-..> 03-Jan-2015 14:57  2.3M  

[TXT]

 Understanding-SVM-th..> 03-Jan-2015 14:57  2.4M  

[TXT]

 Une-histoire-de-la-m..> 03-Jan-2015 17:28  3.5M  

[TXT]

 Une-introduction-aux..> 03-Jan-2015 17:31  3.1M  

[TXT]

 Vers-une-signalisati..> 03-Jan-2015 17:25  3.8M 
https://hal.archives-ouvertes.fr/tel-01066805/document G´en´eration de mod`eles num´eriques de surface et d´etection de changements 3D `a partir d’imagerie satellite st´er´eoscopique tr`es haute r´esolution Cyrielle Gu´erin To cite this version: Cyrielle Gu´erin. G´en´eration de mod`eles num´eriques de surface et d´etection de changements 3D `a partir d’imagerie satellite st´er´eoscopique tr`es haute r´esolution. Other. Universit´e Ren´e Descartes - Paris V, 2014. French. . HAL Id: tel-00953485 https://tel.archives-ouvertes.fr/tel-00953485 Submitted on 28 Feb 2014 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destin´ee au d´epˆot et `a la diffusion de documents scientifiques de niveau recherche, publi´es ou non, ´emanant des ´etablissements d’enseignement et de recherche fran¸cais ou ´etrangers, des laboratoires publics ou priv´es.THESE DE DOCTORAT DE ` l’UNIVERSITE PARIS DESCARTES ´ Sp´ecialit´e : Informatique Ecole doctorale Informatique, T´el´ecommunications et ´ Electronique (Paris) ´ Pr´esent´ee par Cyrielle GUERIN Pour obtenir le grade de DOCTEUR de l’UNIVERSITE PARIS DESCARTES ´ G´en´eration de Mod`eles Num´eriques de Surface et D´etection de Changements 3D `a Partir d’Imagerie Satellite St´er´eoscopique Tr`es Haute R´esolution soutenue le 18 f´evrier 2014 devant le jury compos´e de : M. Pascal Monasse Rapporteur M. Laurent Polidori Rapporteur M. Andres Almansa Examinateur M. Bruno Vallet Examinateur Mme. Nicole Vincent Examinatrice M. Renaud Binet Encadrant M. Marc Pierrot-Deseilligny Directeur de th`ese2Remerciements Avant tout, mes remerciements vont `a Renaud Binet et Marc Pierrot-Deseilligny, initiateurs et encadrants de ce sujet de th`ese qui m’a captiv´e pendant ces trois ann´ees. Merci `a Marc de m’avoir fait d´ecouvrir MicMac et la programmation dynamique que j’utilise maintenant partout ! Merci Renaud pour ton enthousiasme, tes nombreuses id´ees au cours de la th`ese et surtout pour m’avoir beaucoup appris dans le domaine de l’imagerie optique. Je tiens aussi `a remercier la DGA d’avoir financ´e ces travaux. Participer `a ce programme a ´et´e tr`es motivant. Merci `a Philippe Blanc, toujours de tr`es bon conseil et `a Bruno Vallet pour le travail tr`es enrichissant que nous avons r´ealis´e ensemble. Merci `a toute l’´equipe du CALTECH pour m’avoir invit´ee dans vos murs et fait d´ecouvrir d’autres pistes de recherche ! Merci S´ebastien pour toute l’aide que tu m’as apport´ee durant ce stage mais aussi pour m’avoir fait visiter ce petit bout des Etats–Unis ! J’esp`ere que notre ´ collaboration ne s’arrˆetera pas l`a. Je tiens aussi `a remercier les enseignants du Master 2 de l’EGID et surtout Samia Boukir et Nesrine Chehata. Merci de m’avoir incit´ee `a continuer dans la recherche quand je n’´etais qu’´etudiante en master ! J’esp`ere Nesrine qu’on se retrouvera encore souvent pour des conf´erences, IGARSS a ´et´e un tr`es bon moment. Je n’oublie sˆurement pas tout le labo TSE avec lequel j’ai travaill´e pendant ces trois ann´ees. Merci bien sˆur `a Philippe pour m’avoir accueillie dans ce labo et m’avoir encourag´ee tout au long de la th`ese. Un grand bravo `a Adrien pour m’avoir cˆotoy´ee dans le mˆeme bureau pendant plus de 2 ans ! Tu resteras mon irrempla¸cable coll`egue de bureau et ami. Merci `a Thierry d’avoir toujours eu confiance en moi et de m’avoir soutenu tous les jours, bon 3ou moins bon...Merci `a B´eatrice pour nos collaborations sur divers projets. Merci `a Philippe, Rodolphe et Eric pour avoir accept´e de relire cette th`ese. Finalement merci `a vous tous, ¸ca a ´et´e un r´eel plaisir de travailler avec vous dans ce labo. Merci aussi `a tous ceux que j’ai rencontr´ee durant cette th`ese. Merci `a Franck pour d’inoubliables conversations et fous rires si d´ecompressants sur la ligne C3 ! Je te souhaite le meilleur pour ta nouvelle carri`ere et j’esp`ere qu’on ne se perdra pas de vue. Bien sˆur, je remercie Boris, rencontr´e de fa¸con si inopin´e et qui s’est r´ev´el´e ˆetre un ami tr`es pr´ecieux, merci d’avoir pass´e ces heures `a m’´epauler pour mon article, tu m’as beaucoup apport´e. You rock ! Merci enfin `a mes parents et `a mes soeurs, vous m’avez soutenue durant toutes ces ann´ees d’´etudes. J’ai pu compter sur votre soutien inflexible lors de mes plus grandes p´eriodes de stress. Du fond du coeur, merci. C’est `a vous que je d´edie cette th`ese. 4R´esum´e L’imagerie satellite permet aujourd’hui l’acquisition d’un nombre croissant de donn´ees dont l’augmentation des r´esolutions spatiale et temporelle permet de caract´eriser de plus en plus finement une sc`ene et son ´evolution. Dans ce contexte, les m´ethodes de d´etection des changements apparus entre deux sc`enes sont particuli`erement ´etudi´ees. Elles sont g´en´eralement bas´ees sur les diff´erences radiom´etriques entre les images. Cependant, ces m´ethodes s’av`erent souvent peu robustes `a des changements radiom´etriques non pertinents tels que ceux induits par la variation des conditions d’acquisition des images. L’objectif de cette th`ese est ainsi de d´evelopper une m´ethode alternative, bas´ee sur la recherche des changements d’´el´evation de la sc`ene. L’´el´evation repr´esente en effet une information pertinente et adapt´ee, notamment dans un contexte de d´etection des changements de type urbain (construction, destruction ou modification d’infrastructures). Pour r´epondre `a des besoins en analyse d’image qui n´ecessitent des r´esultats rapides et fiables, la m´ethode que nous proposons est une chaˆıne de traitements compl`ete et automatique bas´ee sur l’exploitation de couples d’image satellites st´er´eoscopiques tr`es haute r´esolution permettant la g´en´eration et la comparaison de Mod`eles Num´eriques de Surface (MNS). Afin de limiter les fausses alarmes de changements dues aux erreurs li´ees `a la g´en´eration des MNS, une ´etape cl´e de cette th`ese a consist´e `a augmenter la pr´ecision des MNS, notamment `a travers la prise en compte des zones d’occlusions et de mauvaise corr´elation. La m´ethode de g´en´eration des MNS `a ainsi ´et´e am´elior´ee et une technique innovante de fusion des deux MNS provenant du mˆeme couple d’images a ´et´e d´evelopp´ee. La comparaison des MNS g´en´er´es avec un MNS LiDAR montre que notre approche permet une nette augmentation de la qualit´e des MNS, les erreurs de corr´elation sont r´eduites tandis que les zones d’occlusion sont 5pr´ecis´ement localis´ees. La m´ethode de d´etection des changements d’´el´evation est, quant `a elle, bas´ee sur une labellisation par optimisation des pixels du MNS diff´erentiel calcul´e `a partir des MNS produits `a chaque date. Cette ´etape permet de mettre en ´evidence les vrais changements de la sc`ene parmi le bruit r´esiduel des MNS. Les r´esultats obtenus sur diff´erents sites test´es montrent que plus de 80% des changements de taille sup´erieure `a 15 pixels x 15 pixels (ou 100 m2 avec des images tr`es haute r´esolution) sont d´etect´es par notre m´ethode, avec moins de 20% d’erreurs. Nous montrons cependant que ces r´esultats d´ependent principalement du param`etre de r´egularisation de la d´etection des changements, qui contrˆole le taux de fausses alarmes par rapport au taux de bonnes d´etections du r´esultat. 6Abstract The growing amount of satellite data, increasingly resolved spatially and temporally, represents a high potential of information allowing the accurate characterization of the evolution of an area of interest. For this reason, automatic analysis techniques such as change detection methods are widely investigated. Most of them are based on radiometric changes between remote sensed optical images. These methods are however very sensitive to a significant number of irrelevant changes such as those due to the variation of the geometrical conditions between two different acquisitions. The objective of this work is then to develop an alternative method based on the elevation change detection. The advantage of using the elevation is that this information is particularly relevant and well adapted in a context of urban monitoring where the elements of interest correspond to buildings that can be constructed, modified or destroyed between two dates. In order to satisfy new needs in image analysis which require quick and reliable results, our method is a complete and automatic processing flow based on the analysis of high resolution satellite stereoscopic couples and the generation of Digital Surface Models (DSM). Stereoscopic DSMs, however, generally suffer from a high number of correlation errors leading to false alarms in the final change detection map. One of the main contribution of this work consisted in increasing the DSM accuracy, especially through a better handling of the occlusion and miss-correlation areas. For this purpose, the image matching technique has been improved and all DSMs computed from the same stereoscopic couple are then fusioned through a new approach, based on an optimization method. The comparison between our DSM with a LiDAR-based DSM indicates that our method largely improves the DSM quality, the amount of correlation errors is decreased while the occlusion areas are accurately localized. The change detection method itself is based on the labelization of the pixels of the differential 7DSM computed from the DSMs generated at each date of interest. This step, performed through another optimization process, enables to bring forward the relevant changes among the residual noise of the DSMs. The results, obtained for several experimental areas, show that more than 80% of the changes larger than 15 pixels x 15 pixels (100 m m2 with high resolution images) are detected with our method, with less than 20% of false alarms. We also show that these results mainly depend on the regularization parameter which controls the balance between the amount of false alarms towards the amount of true detections in the final results. 8Table des mati`eres Introduction G´en´erale 13 1 Etudes bibliographiques et strat´egie adopt´ee ´ 17 1.1 La d´etection de changements : ´etat de l’art . . . . . . . . . . . . . . . . . . . . . 18 1.1.1 M´ethodes de d´etection des changements radiom´etriques . . . . . . . . . . 18 1.1.2 M´ethodes alternatives : d´etection des changements d’´el´evation . . . . . . 19 1.2 M´ethodes de restitution 3D : ´etat de l’art . . . . . . . . . . . . . . . . . . . . . . 23 1.2.1 Mise en correspondance d’images par m´ethode d’optimisation . . . . . . . 25 1.2.2 Caract´eristiques des corr´elateurs . . . . . . . . . . . . . . . . . . . . . . . 27 1.2.3 Les strat´egies de mise en correspondance . . . . . . . . . . . . . . . . . . 29 1.2.4 Les outils de restitution 3D existants . . . . . . . . . . . . . . . . . . . . . 33 1.3 Description g´en´erale de la chaˆıne de traitements d´evelopp´ee . . . . . . . . . . . . 35 1.4 Capteurs utilis´es et donn´ees d’entr´ee . . . . . . . . . . . . . . . . . . . . . . . . . 37 1.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 39 2 Outils et m´ethodes n´ecessaires `a la chaˆıne de traitements 41 2.1 Co–localisation des images : utilisation d’un outil de spatio–triangulation . . . . 42 2.1.1 Contexte et objectif . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 2.1.2 Principe de la spatio–triangulation . . . . . . . . . . . . . . . . . . . . . . 43 2.2 Outil pour la r´esolution de probl`emes de labellisation . . . . . . . . . . . . . . . . 47 2.2.1 Trois probl`emes de labellisation . . . . . . . . . . . . . . . . . . . . . . . . 47 2.2.2 Les m´ethodes d’optimisation existantes . . . . . . . . . . . . . . . . . . . 49 2.2.3 Description de l’algorithme s´electionn´e . . . . . . . . . . . . . . . . . . . . 55 2.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 9TABLE DES MATIERES ` 3 G´en´eration de Mod`eles Num´eriques de Surface sur une grille r´eguli`ere `a partir de couples st´er´eoscopiques 61 3.1 Description de la strat´egie de mise en correspondance adopt´ee . . . . . . . . . . . 62 3.1.1 Technique de mise en correspondance . . . . . . . . . . . . . . . . . . . . 62 3.1.2 Fonction d’optimisation et r´egularisation . . . . . . . . . . . . . . . . . . . 63 3.1.3 Prise en compte des zones d’occlusion . . . . . . . . . . . . . . . . . . . . 65 3.2 D´eveloppement d’une m´ethode de basculement des MNS sur une grille g´eographique r´eguli`ere . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 3.2.1 Interpolation des points de la grille r´eguli`ere . . . . . . . . . . . . . . . . . 66 3.2.2 Conditions au calcul de l’´el´evation d’un point . . . . . . . . . . . . . . . . 67 3.3 Am´elioration des MNS : d´eveloppement d’une m´ethode de fusion des MNS . . . 72 3.3.1 Erreurs des MNS asym´etriques . . . . . . . . . . . . . . . . . . . . . . . . 72 3.3.2 M´ethode de fusion des MNS asym´etriques . . . . . . . . . . . . . . . . . . 74 3.4 Qualit´e et pr´ecision des MNS obtenus . . . . . . . . . . . . . . . . . . . . . . . . 82 3.4.1 Co–localisation LiDAR et MNS . . . . . . . . . . . . . . . . . . . . . . . . 82 3.4.2 Crit`eres de qualit´e . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 83 3.5 Application au cas de la multi–st´er´eoscopie . . . . . . . . . . . . . . . . . . . . . 87 3.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 4 D´eveloppement d’une m´ethode de d´etection des changements d’´el´evation 93 4.1 Calcul et analyse du MNS diff´erentiel . . . . . . . . . . . . . . . . . . . . . . . . 94 4.2 M´ethode de d´etection des changements . . . . . . . . . . . . . . . . . . . . . . . . 97 4.3 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 5 Exp´erimentation et discussion des r´esultats de la m´ethode de d´etection des changements d’´el´evation 101 5.1 Pr´esentation des zones de test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 5.1.1 Phoenix . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 102 5.1.2 Christchurch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 5.1.3 R´egion de Tohoku : analyse d’une zone catastroph´ee . . . . . . . . . . . . 105 5.2 M´etriques d’analyse des r´esultats de la d´etection de changements . . . . . . . . . 109 5.2.1 Variables calcul´ees . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109 10TABLE DES MATIERES ` 5.2.2 M´etriques d’analyse . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 111 5.3 Analyse de sensibilit´e des r´esultats obtenus . . . . . . . . . . . . . . . . . . . . . 112 5.3.1 Influence des param`etres de la m´ethode sur les r´esultats . . . . . . . . . . 113 5.3.2 Impact de la qualit´e des donn´ees d’entr´ee . . . . . . . . . . . . . . . . . . 118 5.3.3 Int´erˆet d’une m´ethode globale : comparaison avec un filtrage local . . . . 121 5.3.4 Influence du paysage de la zone d’´etude . . . . . . . . . . . . . . . . . . . 124 5.4 Analyse des r´esultats sur la zone de Sendai . . . . . . . . . . . . . . . . . . . . . 127 5.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 131 6 Conclusion g´en´erale 133 6.1 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 133 6.2 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 Table des figures 139 Liste des tableaux 143 Bibliographie 145 11TABLE DES MATIERES ` 12Introduction G´en´erale Depuis le lancement des premiers satellites d´edi´es `a la t´el´ed´etection spatiale, leur nombre, leur r´esolution et leur capacit´e d’acquisition n’ont de cesse d’augmenter. Aujourd’hui, Pl´eiades 1A et 1B fournissent des images `a 70 cm de r´esolution tandis que WorldView-3 est attendu avec une r´esolution inf´erieure `a 50 cm. Ce nombre de donn´ees, d’une qualit´e toujours meilleure, permet d’acc´eder `a une grande quantit´e d’informations pour caract´eriser et analyser une sc`ene et son ´evolution `a de tr`es fines ´echelles spatiales et temporelles. Pour traiter ces nouveaux flux de donn´ees, les m´ethodes permettant l’analyse de s´eries multi– temporelles d’images sont alors particuli`erement int´eressantes et en fort d´eveloppement. Les applications `a ces ´etudes sont tr`es nombreuses, `a commencer par l’agriculture, pour caract´eriser l’´evolution des sols, jusqu’aux g´eosciences, pour l’observation des glaciers en termes de volume, d’´etendue ou de vitesse [1], pour la surveillance des volcans [2] ou encore pour les mesures des d´eformations tectoniques [3, 4]. L’augmentation drastique de la r´esolution des images permet aussi aujourd’hui une observation beaucoup plus fine des milieux urbains pour une meilleure analyse g´eographique et d´emographique des villes `a travers la mise `a jour des plans cadastraux ou autres bases de donn´ees [5] mais aussi pour la cartographie de d´egˆats mat´eriels (en terme de bˆatiments ou d’infrastructures d´etruits) apr`es une catastrophe majeure telle qu’un s´eisme, un tsunami, un glissement de terrain, un ´ev´enement m´et´eorologique ou encore une guerre [6]. Dans ce contexte, les m´ethodes de d´etection des changements, automatiques ou semi–automatiques, sont particuli`erement avantageuses. Les algorithmes de d´etection de changements sont traditionnellement bas´es sur l’´etude 13INTRODUCTION GEN´ ERALE ´ d’images radars ou optiques. En imagerie optique, la plupart des m´ethodes s’int´eressent aux diff´erences de r´eflectances entre les donn´ees acquises `a des dates t1 et t2 [7]. Cependant, les r´esultats montrent que, dans un contexte de suivi des infrastructures urbaines, de nombreuses fausses alarmes ou changements non pertinents sont g´en´er´es par ces m´ethodes de d´etection 2D. Ces alarmes sont g´en´eralement dues aux diff´erentes conditions d’acquisition des images (conditions d’´eclairement ou d’atmosph`ere, azimut solaire, saison ou encore angles d’acquisition des images) lors des prises de vue ainsi qu’`a de nombreux changements radiom´etriques tels que l’´evolution des sols, les r´enovations de toitures ou de revˆetement de sol. Le travail de th`ese pr´esent´e ici s’inscrit dans cette probl´ematique de d´etection de changements. Dans le but de s’affranchir des changements radiom´etriques, nous nous int´eressons aux changements d’´el´evation de type urbain (directement reli´es au bˆati) et dans un contexte de suivi temporel ou de crise majeure n´ecessitant des r´esultats fiables et rapides. Afin de r´epondre au mieux `a cette probl´ematique, la technique propos´ee est bas´ee enti`erement sur les diff´erences d’´el´evation de la sc`ene entre les deux dates d’int´erˆet. En effet, cette information, dont la variation en milieu urbain est g´en´eralement li´ee `a des changements du bˆati, est robuste `a la plupart des changements 2D et est donc particuli`erement adapt´ee `a cet objectif [8]. Aujourd’hui, diff´erents syst`emes d’acquisition permettent d’acc´eder `a l’information d’´el´evation d’une sc`ene : les lasers a´eroport´es (Airborne Laser Scaning ou ALS), le LiDAR (Light Detection And Ranging), les satellites radar ou encore l’imagerie st´er´eoscopique, a´erienne ou spatiale, `a travers la g´en´eration de Mod`eles Num´eriques de Surface (MNS). Du fait de leur tr`es haute r´esolution, leur large capacit´e d’acquisition et la rapidit´e de livraison et de traitement de ces donn´ees, les satellites optiques produisant des images st´er´eoscopiques apparaissent comme la meilleure r´eponse pour la d´etection des changements d’´el´evation. De plus, le coˆut de ces images est relativement faible compar´e aux autres syst`emes d’acquisition, voire nulle lors d’une crise majeure car ces images sont alors gratuitement mises `a disposition des agences cartographiques `a travers la Charte Internationale Espace et Catastrophes Majeures, sign´ee par de nombreux pays. L’objectif de ce travail est ainsi de d´evelopper et de tester, dans un contexte urbain, une m´ethode de d´etection de changements innovante et bas´ee sur les changements d’´el´evation d’une sc`ene entre deux dates. Afin de r´epondre de fa¸con adapt´ee `a la probl´ematique de quantification 14INTRODUCTION GEN´ ERALE ´ de d´egˆats apr`es une catastrophe, la technique de d´etection de changements d´evelopp´ee est une chaˆıne de traitements compl`ete et automatique, d´ebutant par le recalage des donn´ees brutes et fournissant, en sortie, une carte g´eor´ef´erenc´ee des changements d´etect´es. Au cours de cette th`ese, nous d´etaillerons toutes les ´etapes de cette chaˆıne de traitements, leurs objectifs et leurs r´esultats. Dans une premi`ere partie, nous montrerons l’int´erˆet de la recherche des changements d’´el´evation (ou 3D) par rapport aux changements radiom´etriques `a travers un ´etat de l’art de ces m´ethodes. Nous ´etudierons aussi les m´ethodes de g´en´eration de MNS `a partir d’images st´er´eoscopiques (chapitre 1), ´etape primordiale de la chaˆıne de traitements. Dans une seconde partie, nous d´ecrirons les outils existants n´ecessaires `a notre chaˆıne de traitements, qui consistent en un outil de recalage des images, ´etape indispensable `a tout traitement g´eom´etrique des images et un outil de r´esolution de probl`emes de labellisation par programmation dynamique (chapitre 2). Cet algorithme est en effet central pour trois ´etapes de calcul de notre chaˆıne de traitements. Puis, dans le chapitre 3, nous d´etaillerons la m´ethode compl`ete de g´en´eration des MNS. Cette m´ethode, qui d´ebute par la mise en correspondance des images st´er´eoscopiques pr´esente ensuite deux innovations majeures permettant d’am´eliorer la pr´ecision des MNS en vue de la d´etection des changements. La technique de d´etection de changements 3D, bas´ee sur une classification de la carte des diff´erences d’´el´evation par une m´ethode de labellisation, sera finalement expos´ee dans le chapitre 4. Enfin, la derni`ere partie aura pour objectif d’illustrer l’int´erˆet de la chaˆıne de traitements d´evelopp´ee et d’analyser les r´esultats obtenus dans diff´erentes sc`enes urbaines, que ce soit dans un contexte de mise `a jour des bases de donn´ees ou pour la caract´erisation et la quantification rapide des d´egˆats apr`es une catastrophe majeure (chapitre 5). 15INTRODUCTION GEN´ ERALE ´ 16Chapitre 1 Etudes bibliographiques et strat´egie ´ adopt´ee Dans le domaine de la d´etection de changements par imagerie satellite, de nombreuses m´ethodes existent mais elles sont principalement bas´ees sur l’exploitation de la radiom´etrie des images tandis que tr`es peu de m´ethodes utilisent l’information 3D de la sc`ene. C’est cette approche que nous avons choisi de d´evelopper dans notre chaˆıne de traitements car elle se r´ev`ele particuli`erement pertinente pour la d´etection des changements de type bˆati, dans un contexte urbain. La chaˆıne de traitements propos´ee n´ecessite ainsi une ´etape de reconstruction 3D de la sc`ene. Cependant, les contraintes li´ees aux acquisitions satellites rendent le calcul de la mise en correspondance des images particuli`erement complexe et de multiples techniques ont ´et´e d´evelopp´ees afin d’am´eliorer leur robustesse. Dans une premi`ere partie de ce chapitre, nous pr´esenterons quelques unes des m´ethodes classiques de d´etection de changements radiom´etriques. Nous d´etaillerons ensuite plus particuli`erement les m´ethodes d´evelopp´ees pour la d´etection des changements d’´el´evation et nous montrerons leur int´erˆet, notamment en milieu urbain. Puis, dans une seconde partie, nous analyserons les m´ethodes de restitution 3D existantes et l’int´erˆet de certaines techniques pour notre chaˆıne de traitements. Enfin, dans une derni`ere partie, nous d´etaillerons toutes les ´etapes de notre chaˆıne de traitements et les donn´ees utilis´ees lors des phases exp´erimentales. 171.1. LA DETECTION DE CHANGEMENTS : ´ ETAT DE L’ART ´ 1.1 La d´etection de changements : ´etat de l’art 1.1.1 M´ethodes de d´etection des changements radiom´etriques Les m´ethodes traditionnelles en d´etection de changements sont bas´ees sur la comparaison temporelle des radiom´etries qui peut ˆetre effectu´ee directement `a l’´echelle du pixel. Un large inventaire des m´ethodes les plus connues est fourni par Radke [7]. Les m´ethodes les plus simples et rapides `a impl´ementer sont celles utilisant les diff´erences radiom´etriques ou les rapports (ratios) entre les pixels correspondant en t1 et t2 [7, 9, 10]. Cependant, ces m´ethodes n´ecessitent souvent des seuillages ou des r`egles de d´ecisions et restent tr`es sensibles au bruit des images, aux erreurs de recalage et surtout aux conditions d’acquisition des images, diff´erentes entre t1 et t2, qui g´en`erent de nombreuses alarmes de changements, g´en´eralement non pertinentes. D’autres m´ethodes, de type statistique, sont aussi employ´ees `a l’´echelle du pixel [7, 9]. Le but est de d´ecider, pour chaque pixel, s’il correspond `a un changement ou non en fonction de l’hypoth`ese changement ou non changement qui d´ecrit le mieux son intensit´e. Ces hypoth`eses sont pos´ees `a partir des variations d’intensit´e des pixels dans la s´erie temporelle [7]. L’analyse par composantes principales (PCA) est aussi largement utilis´ee [10–12]. Elle permet de r´eduire la dimension spectrale des images aux composantes les plus riches en information et donc o`u les changements les plus importants ont la plus grande probabilit´e d’apparaˆıtre. Cependant, les hypoth`eses, n´ecessaires pour la mise en oeuvre de ces m´ethodes, proviennent souvent d’une premi`ere analyse des changements recherch´es et limitent ainsi l’automatisation de ces m´ethodes. Les m´ethodes de classification des pixels sont aussi tr`es d´evelopp´ees. Deux m´ethodes sont principalement utilis´ees : la post classification et la classification directe multi–date [13]. La premi`ere consiste `a classer les pixels, de fa¸con supervis´ee ou non, sur chaque image ind´ependamment puis `a comparer les classes. Le probl`eme de cette approche est l’impact important d’une erreur de classe dans l’une des images sur le r´esultat final. Cette m´ethode est ainsi plutˆot utilis´ee pour la d´etection de changements `a grande ´echelle comme pour l’occupation des sols par exemple [7, 9, 10, 12]. 18CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ La classification directe multi–dates n´ecessite la concat´enation des images, puis la classification, souvent supervis´ee, des pixels selon leur valeur dans toutes les bandes afin de faire apparaˆıtre les changements [11]. Enfin, les images multi–spectrales permettent aussi l’utilisation d’outils tels que les Support Vector Machine (SVM) [14]. Les valeurs spectrales de chaque pixel sont alors repr´esent´ees par un vecteur dans l’espace temporel, la magnitude et la direction de ces vecteurs permettent le classement des pixels en changement ou non changement dans l’image. Ces m´ethodes de classification s’av`erent souvent plus robustes aux erreurs de recalage ou au bruit des images mais elle n´ecessitent souvent des processus supervis´es. Aujourd’hui, avec l’augmentation de la r´esolution spatiale des images, l’int´egration d’informations sur le voisinage des pixels devient indispensable car un objet est maintenant repr´esent´e par plusieurs pixels dans l’espace image. L’image peut alors ˆetre analys´ee de fa¸con plus efficace en consid´erant cette information spatiale [11, 12, 15]. Ainsi, Bruzzone [16] utilise une approche bas´ee sur les Champs de Markov Al´eatoires (Markov Random Fields, MRF) afin de mod´eliser les probabilit´es d’appartenance d’un pixel `a une classe en fonction de son voisinage. Al–Khudhairy [15] se base sur la forme et l’homog´en´eit´e des objets afin de les classer. Ces approches, de plus en plus r´epandues, am´eliorent la robustesse des algorithmes au bruit et aux distorsions g´eom´etriques des images mais sans pour autant supprimer la sensibilit´e `a tous les changements radiom´etriques non pertinents tels que les variations de r´eflectance des surfaces, l’´evolution des sols ou des revˆetements d’infrastructures. 1.1.2 M´ethodes alternatives : d´etection des changements d’´el´evation Derni`erement, de nouvelles approches, alternatives `a la d´etection de changements 2D, ont ´emerg´e. Leur but est de concentrer la d´etection sur les changements d’´el´evation de la sc`ene tout en ´etant plus robuste aux conditions d’acquisition des images ou aux changements non pertinents qui correspondent souvent `a des changements 2D. Dans le cadre d’une d´etection des changements urbains de type bˆati, ces m´ethodes apparaissent donc particuli`erement appropri´ees. Les donn´ees d’entr´ee utilis´ees pour obtenir cette information d’´el´evation proviennent alors de campagnes LiDAR, de lasers a´eroport´es ou plus fr´equemment d’imagerie st´er´eoscopique, spatiale ou a´erienne [17, 18]. Ces techniques de d´etection des changements 3D peuvent ˆetre divis´ees en deux cat´egories 191.1. LA DETECTION DE CHANGEMENTS : ´ ETAT DE L’ART ´ principales : les techniques image `a base de donn´ees et les techniques image `a image. Les techniques dites image–base de donn´ees consistent g´en´eralement `a comparer une base de donn´ees vecteur, contenant les empreintes de bˆatiments (telles que des donn´ees cadastrales) et une image de l’´el´evation de tous les points de la sc`ene. Ces techniques sont les plus utilis´ees en d´etection de changements car elles sont n´ecessaires pour la mise `a jour automatique ou semi–automatique de bases de donn´ees d´ej`a existantes. La strat´egie g´en´eralement adopt´ee dans ce cas est l’extraction des bˆatiments sur la carte d’´el´evation et la comparaison des empreintes obtenues avec la base de donn´ees initiale afin de constater la pr´esence ou non du bˆatiment `a la date de la base de donn´ees [5, 19, 20]. L’extraction des bˆatiments est alors le point sensible de la m´ethode et peut ˆetre effectu´ee, selon le type de donn´ees d’entr´ee, par un algorithme d’extraction de structures dans un nuage de points g´en´er´e par des donn´ees laser [18], par des m´ethodes de classification `a partir de MNS et de donn´ees multispectrales [19, 21] ou bien par l’extraction des contours 2D des bˆatiments sur un MNS afin de comparer les segments obtenus avec la base de donn´ees vecteur [5]. Cette ´etape d’extraction est particuli`erement sensible car une erreur peut g´en´erer une fausse diff´erence entre la base de donn´ees et les empreintes calcul´ees, notamment lorsque la carte des ´el´evations de la sc`ene est g´en´er´ee `a partir d’images, plus bruit´ees que les donn´ees laser. De mˆeme, l’´etape de comparaison n´ecessite g´en´eralement que les donn´ees vecteur et image soient tr`es pr´ecis´ement recal´ees. Des post–filtrages sont souvent appliqu´es sur les extractions de bˆatiment afin de compenser ce type d’erreur, mais ces filtrages peuvent alt´erer la d´etection des changements les plus petits, tels que les modifications apport´ees `a un bˆatiment. Enfin, l’inconv´enient majeur de ces techniques r´eside dans le fait que les bases de donn´ees cadastrales sont tr`es rarement disponibles et mises `a jour, rendant ce type de m´ethode totalement inadapt´e pour la quantification des d´egˆats apr`es une catastrophe majeure par exemple [19]. Les techniques image `a image repr´esentent alors la seule alternative lorsqu’aucune donn´ee externe n’est disponible ou valide. Elles consistent `a calculer la diff´erence entre deux images d’´el´evation acquises aux dates t1 et t2 afin de mettre en ´evidence les changements d’´el´evation apparus. Cette m´ethode est largement utilis´ee pour des probl´ematiques de g´eoscience telles que l’´etude 20CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ d’objets g´eologiques comme les volcans [2] ou les glaciers [1], la mesure des mouvements topographiques ou des glissements de terrain [3, 4]. Dans ce contexte de surveillance des milieux, il est souvent n´ecessaire d’acqu´erir des s´eries temporelles compos´ees de nombreuses images afin de suivre les variations sur une grande p´eriode de temps. Les donn´ees employ´ees sont alors tr`es souvent des donn´ees satellitaires ou a´eriennes qui permettent d’acqu´erir des sc`enes sur de vastes emprises terrain. Pour des applications en g´eoscience, les variations recherch´ees sont typiquement de tr`es basse fr´equence spatiale et de faible amplitude altim´etrique, visibles `a grande ´echelle et donc facilement d´etectables par une simple diff´erence entre les cartes d’´el´evation, g´en´er´ees `a basse ou moyenne r´esolution [3, 4]. Au contraire, dans le contexte urbain dans lequel se place ce travail, les changements recherch´es sont g´en´eralement de tr`es haute fr´equence spatiale et de forte amplitude, n´ecessitant une pr´ecision de d´etection qui ne peut ˆetre obtenue qu’avec des images tr`es haute r´esolution. Les m´ethodes d´evelopp´ees pour la basse ou moyenne r´esolution ne sont pas adapt´ees `a cette probl´ematique car il est alors n´ecessaire de mettre en ´evidence les changements recherch´es parmi les nombreuses fausses alarmes g´en´er´ees `a haute ou tr`es haute r´esolution spatiale [8, 22]. Parmi les m´ethodes de d´etection image–image `a tr`es haute r´esolution, deux types de techniques sont appliqu´es : les techniques semi–automatiques, bas´ees sur l’utilisation d’informations multi–spectrales ou contextuelles telles que la taille ou la forme des objets ou encore sur l’utilisation de zones d’apprentissage et les techniques enti`erement automatiques. Jung [23] propose une m´ethode semi–automatique qui utilise des MNS g´en´er´es par imagerie st´er´eoscopique a´erienne. Dans une premi`ere ´etape, un algorithme de focusing permet de rechercher les zones ayant probablement chang´e grˆace `a la comparaison des MNS de chaque date. Puis une seconde ´etape permet, pour chaque date, de classer ces zones d’int´erˆet selon les labels ”bˆatiment” ou ”non–bˆatiment” `a l’aide d’arbres de d´ecision g´en´er´es `a partir de zones d’apprentissage. Les deux segmentations ainsi obtenues sont alors compar´ees pour retrouver les changements du bˆati. Avec ce type de m´ethode, la qualit´e de la d´etection d´epend alors de chacune des segmentations et ne permet pas de retrouver les modifications apport´ees `a un bˆatiment. Aujourd’hui, peu d’´etudes portent sur la d´etection des changements d’´el´evation entre deux 211.1. LA DETECTION DE CHANGEMENTS : ´ ETAT DE L’ART ´ MNS g´en´er´es `a partir d’images satellites st´er´eoscopiques tr`es haute r´esolution. En effet, malgr´e les avantages qu’apporte la haute r´esolution temporelle de ces images qui sont aussi moins on´ereuses qu’une campagne d’acquisition a´erienne, leur r´esolution reste beaucoup plus basse que celle des images a´eriennes (aujourd’hui WorldView–1 atteins 50 cm de r´esolution nadir lorsque les images a´eriennes ont une r´esolution de l’ordre du d´ecim`etre). De plus, les images a´eriennes sont plus contrast´ees que les images satellites permettant une mise en correspondance plus efficace pour la g´en´eration de MNS pr´ecis. Enfin, leur acquisition quasi nadir permet de limiter les zones d’occlusion dans les images. Ainsi, les MNS produits `a partir de couples d’images satellites souffrent de plus nombreuses erreurs de corr´elation et de zones d’occlusion par rapport `a ceux produits par l’a´erien, erreurs se propageant souvent sous forme de fausses alarmes sur les cartes finales de d´etection de changements. Afin de r´eduire l’impact des erreurs de MNS dans le MNS diff´erentiel, Tian [8] propose le calcul d’une diff´erence robuste entre les MNS des deux dates d’acquisition qui se traduit par l’affectation, pour chaque pixel (i, j) de l’image des diff´erences, de la diff´erence minimale obtenue entre le pixel du MNS `a t1 en (i, j) et un pixel du MNS t2 appartenant `a une fenˆetre de taille d´efinie et centr´ee sur le pixel (i, j). Puis, dans une seconde ´etape, la carte des diff´erences obtenue est analys´ee par une extraction de contours suivie par un affinage de formes par un algorithme de box-fitting. Dans une autre approche, Tian [24] propose, apr`es le calcul de la diff´erence robuste, l’application d’un masque des zones d’ombre, bas´e sur l’exploitation des bandes multispectrales tel que l’a impl´ement´ee Marchant [25]. Ce masque est alors combin´e `a un masque regroupant les corr´elations de faible coefficient obtenues lors de la g´en´eration des MNS. La diff´erence masqu´ee ainsi obtenue est alors segment´ee puis les ´el´ements mis en ´evidence sont filtr´es `a partir de crit`eres de tailles et de formes d´ecrits par Chaabouni–Chouayakh [22], afin de mieux s´eparer les changements appartenant au bˆati des fausses erreurs. Cette approche permet la d´etection de 60% `a 80% des objets de plus de 100 m2 et de 2 m `a 3 m d’´el´evation diff´erentielle, respectivement et avec 50% `a 15% de fausses alarmes. Plus r´ecemment, Tian [26] a am´elior´e cette approche grˆace `a l’ajout d’un indicateur de changements calcul´e directement entre les images panchromatiques ayant permis la g´en´eration 22CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ des MNS. Cet indicateur de changements est bas´e sur l’analyse de l’´evolution des statistiques locales d’une image entre deux dates. Le r´esultat de la fusion des informations obtenues par la diff´erence robuste segment´ee et par les indicateurs de changements radiom´etriques est ensuite filtr´e `a partir des mˆemes crit`eres de formes et de tailles. Les r´esultats montrent alors de 55% `a 93% des changements d´etect´es avec 45% `a 16% de fausses alarmes. Cependant, si les r´esultats de ces m´ethodes apparaissent prometteurs, les nombreux seuils et crit`eres n´ecessaires peuvent limiter les changements d´etectables `a certaines formes et tailles. Enfin, Reinartz [6] effectue une segmentation des images aux dates t1 et t2 en utilisant une m´ethode de classification bas´ee sur le IR–MAD (Iteratively Reweighted Multivariate Alteration) d´evelopp´ee par Nielsen [27]. Les r´esultats de segmentation aux deux dates sont alors associ´es avec le MNS diff´erentiel afin de d´ecider, pour chaque r´egion segment´ee, si elle correspond `a des bˆatiments d´etruits ou nouveaux. En conclusion de cette ´etude, nous noterons que, `a notre connaissance, aucune m´ethode totalement automatique n’existe pour la d´etection des changements d’´el´evation `a partir d’imagerie satellite seule, sans ajout d’informations externes ou contextuelles. Pourtant, la capacit´e de r´eactivit´e des satellites face `a une crise, leur agilit´e pour la st´er´eoscopie ainsi que leur r´esolution inf´erieure au m`etre sont des atouts majeurs pour des probl´ematiques de d´etection de changements d’´el´evation, mˆeme si la g´en´eration de MNS pr´ecis `a partir de ces donn´ees demeure difficile. 1.2 M´ethodes de restitution 3D : ´etat de l’art Classiquement, la reconstruction 3D d’une sc`ene n´ecessite le calcul de la disparit´e entre tous les pixels homologues des deux images d’un couple st´er´eoscopique. Les pixels homologues correspondent `a des pixels repr´esentant un mˆeme point terrain, rep´er´es sur chaque image du couple st´er´eoscopique. La disparit´e correspond au d´ecalage g´eom´etrique (en pixels) mesur´e entre deux pixels homologues lorsque les angles de prise de vue des images diff`erent. Cette valeur de disparit´e est reli´ee `a l’´el´evation de la sc`ene au pixel consid´er´e, elle est donc calcul´ee pour tous les pixels d’une image par la mise en correspondance dense des images 231.2. METHODES DE RESTITUTION 3D : ´ ETAT DE L’ART ´ afin d’obtenir l’´el´evation de tous les points de la sc`ene. Cependant, les contraintes li´ees aux acquisitions satellite rendent le calcul de la disparit´e particuli`erement complexe car de nombreuses difficult´es se pr´esentent : – les angles d’acquisition des images sont souvent importants (jusqu’`a 30◦ d’incidence) g´en´erant des diff´erences radiom´etriques importantes, – ces angles d’incidence g´en`erent d’importantes zones d’occlusion : c’est–`a–dire des zones cach´ees dans l’image, typiquement les zones aux abords des bˆatiments. Dans ce cas il n’est pas possible de trouver des pixels homologues dans ces zones, – des d’objets peuvent ˆetre en mouvement : la mise en correspondance des images d’un couple implique comme hypoth`ese que la sc`ene soit parfaitement immobile entre les deux acquisitions, or, dans la r´ealit´e, cette hypoth`ese n’est pas r´ealisable, – certaines zones sont trop homog`enes ou poss`edent une texture r´ep´etitive ou bien une structure 3D tr`es complexe (c’est le cas pour la structure de la v´eg´etation), dans tous ces cas il est tr`es difficile de d´eterminer pr´ecis´ement les pixels homologues, – il existe des changements radiom´etriques entre les acquisitions : toutes les surfaces n’´etant pas lambertiennes, c’est–`a–dire que la lumi`ere n’est pas forc´ement r´efl´echie de la mˆeme fa¸con dans toutes les directions, une mˆeme surface peut pr´esenter diff´erentes radiom´etries selon l’angle de l’acquisition et ainsi compliquer la mise en correspondance, – certains d´efauts g´eom´etriques r´esiduels subsistent, mˆeme apr`es l’affinage, comme nous le montrerons dans la section 2.1. Depuis les 30 derni`eres ann´ees, de nombreux algorithmes ont ´et´e d´evelopp´es pour la reconstruction 3D de sc`enes `a partir d’imagerie terrestre, a´erienne ou spatiale. Des inventaires de ces techniques ont ´et´e r´ealis´es par Scharstein [28], Brown [29] puis plus r´ecemment par Lazaros [30]. La base de donn´ees de Middlebury 1 a notamment ´et´e tr`es utilis´ee pour r´ealiser ces inventaires. Ils permettent de comparer un grand nombre de ces techniques en termes de performance et de m´ethodologie. Les techniques pr´esent´ees ne sont cependant pas toutes transposables aux images satellites. 1. Ensemble de jeux de donn´ees correspondant `a des images st´er´eoscopiques accompagn´ees de v´erit´es terrain mis `a disposition des utilisateurs pour tester des algorithmes de mise en correspondance. Le contexte et les images sont cependant ´eloign´es de notre probl´ematique de reconstruction 3D par imagerie satellite en milieu urbain. 24CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ 1.2.1 Mise en correspondance d’images par m´ethode d’optimisation Pour de nombreux auteurs, la mise en correspondance d’images peut ˆetre vue comme un probl`eme de labellisation [31],[32],[33],[34] : chaque valeur de disparit´e ou d’´el´evation (alors consid´er´ee comme un label) affect´ee `a un pixel d’une image maˆıtre est d´eduite de la s´election du pixel homologue parmi plusieurs candidats dans l’image esclave. La mise en correspondance peut ainsi ˆetre r´esolue `a partir d’une m´ethode d’optimisation : l’objectif est alors de retrouver, pour chacun des pixels d’une image maˆıtre, les pixels homologues dans l’image esclave (ou dans toutes les autres images dans le cas de la multi–st´er´eoscopie). La mise en correspondance peut alors ˆetre r´ealis´ee par des m´ethodes locales d’optimisation : la recherche de primitives homologues (pixels, segments ou r´egions) est alors effectu´ee de fa¸con locale uniquement, ou bien `a travers des m´ethodes globales (ou semi–globales) selon lesquelles la mise en correspondance est r´esolue en recherchant la solution de disparit´e sur l’image enti`ere (ou des subdivisions de l’image). Ainsi, les m´ethodes de mise en correspondance peuvent ˆetre bas´ees sur les algorithmes d’optimisation que nous verrons plus en d´etails dans le chapitre 2, section 2.2.2. M´ethodes locales de mise en correspondance Les m´ethodes locales peuvent ˆetre bas´ees sur la mise en correspondance des segments ou des contours de l’image, tels que les contours de bˆatiments. Plusieurs auteurs utilisent ces contours pour aider `a la mise en correspondance radiom´etrique des images. La m´ethode propos´ee par Baillard [35] recherche les points de contours des bˆatiments sur des images a´eriennes afin d’apporter une contrainte g´eom´etrique `a la corr´elation radiom´etrique des pixels, effectu´ee dans une seconde ´etape. Zhang [36] propose, sur des images satellites, une m´ethode hybride bas´ee sur la combinaison de la mise en correspondance dense des pixels et celle des contours de l’image. Cette technique permet d’imposer une forte contrainte de r´egularisation entre les contours d´etect´es afin de garantir une surface r´eguli`ere tout en pr´eservant les discontinuit´es au niveau des contours. Ces techniques montrent des r´esultats particuli`erement int´eressants, notamment pour les zones homog`enes mais elles peuvent ˆetre sensibles `a la d´etection de contours. Les m´ethodes bas´ees 251.2. METHODES DE RESTITUTION 3D : ´ ETAT DE L’ART ´ sur les contours restent cependant peu utilis´ees `a cause des erreurs produites par la d´etection de contours et la difficult´e de retrouver les plus petites structures. Les m´ethodes les plus populaires de mise en correspondance sont g´en´eralement bas´ees sur l’intensit´e des pixels des images et la mise en correspondance dense de tous les pixels de l’image, souvent `a travers la m´ethode dite de block matching. Cette m´ethode est bas´ee sur la corr´elation d’une fenˆetre de pixels d´efinie sur l’image maˆıtre avec une fenˆetre glissante sur l’image esclave et le calcul d’un score de corr´elation. La disparit´e est ensuite ´evalu´ee `a partir du pixel ayant engendr´e le meilleur score de corr´elation (technique du winner take all) [37]. La zone de recherche est alors souvent contrainte par la ligne ´epipolaire (ou pseudo–´epipolaire dans le cas des images satellites). Ce type de m´ethode, tr`es rapide, est cependant particuli`erement sensible au bruit des images, aux diff´erences radiom´etriques ou encore aux d´efauts d’orientation r´esiduels des images lorsque la mise en correspondance est r´ealis´ee le long de l’´epipolaire seulement. R´ecemment, d’autres techniques ont ´emerg´e, bas´ees sur la mise en correspondance de zones segment´ees d’une image [38] et l’assignement d’une valeur de disparit´e `a ces zones par m´ethode d’optimisation. Ces techniques sont cependant sensibles `a toutes les erreurs de segmentation qui sont alors susceptibles de provoquer des erreurs de reconstruction 3D. M´ethodes globales ou semi–globales Les m´ethodes de reconstruction 3D les plus populaires et les plus efficaces sont aujourd’hui les m´ethodes bas´ees sur la mise en correspondance `a travers une optimisation sur l’image. Ces m´ethodes fonctionnent par le calcul d’un coˆut de mise en correspondance li´e au score de corr´elation obtenu entre les fenˆetres de pixels candidates sur chaque image (block matching), auquel s’ajoute un terme de r´egularisation. Nous d´ecrirons en d´etail cette optimisation dans le chapitre 3, section 3.1. Les diff´erences entre les nombreuses m´ethodes bas´ees sur une optimisation sont li´ees `a la mesure de similarit´e, `a la contrainte de r´egularisation et `a la m´ethode d’optimisation employ´ee. Comme nous le verrons dans le chapitre 2, section 2.2.2, de nombreuses m´ethodes d’optimisation ont ´et´e d´evelopp´ees et appliqu´ees au traitement d’images et plus particuli`erement `a la mise en 26CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ correspondance d’images. On trouve notamment les m´ethodes globales telles que le belief propagation [39], [33], ou les graph-cuts [40], [41], l’objectif est alors de retrouver, pour tous les pixels de l’image simultan´ement, une solution qui minimise une fonctionnelle d’´energie globale sur l’image. Les m´ethodes dites semi–globales [42] permettent de calculer une solution non plus sur toute l’image simultan´ement mais sur des s´equences de pixels de l’image trait´ees ind´ependamment [43]. Ces s´equences peuvent ˆetre form´ees par les lignes [34] de l’image ou bien par les lignes, colonnes et toutes les directions interm´ediaires de l’image, selon la m´ethode de Hirschmuller [ ¨ 31] ou Pierrot-Deseilligny [32] ou encore par un graphe s´electionn´e dans l’image comme le propose Veksler [44]. Les r´esultats obtenus sur chaque s´equence de l’image sont ensuite fusionn´es afin d’obtenir la solution semi–globale. Nous verrons dans la section 2.2.3 que la m´ethode de reconstruction que nous avons s´electionn´ee est bas´ee sur ce type d’optimisation semi–globale et r´esolue par programmation dynamique `a l’image des m´ethodes propos´ees par Hirschmuller et Pierrot-Deseilligny [ ¨ 31], [32]. 1.2.2 Caract´eristiques des corr´elateurs Quelle que soit la m´ethode d’optimisation choisie, la mesure de similarit´e employ´ee pour calculer la correspondance entre les pixels ou entre les fenˆetres de pixels de chaque image (matching cost), est un point important pour s´electionner les pixels homologues. Une ´etude des diff´erentes mesures de la litt´erature a ´et´e r´ealis´ee par Scharstein et Szeliski [28], puis Hirschmuller [ ¨ 45]. Les mesures les plus utilis´ees sont : – la somme des diff´erences radiom´etriques au carr´e (Sum of Absolute Differences ou SAD), – la somme des diff´erences radiom´etriques absolues (Sum of Squared Differences ou SSD), – le normalized cross correlation coefficient (ou NCC). De nombreuses autres mesures de similarit´e sont propos´ees dans la litt´erature. Birchfield [46] propose une mesure de ressemblance robuste `a l’´echantillonnage pixellique des images : au lieu de comparer deux fenˆetres de pixels d´ecal´ees par un nombre entier de pixels, il compare chaque pixel de l’image maˆıtre avec une interpolation lin´eaire d’une fenˆetre de pixels sur l’autre 271.2. METHODES DE RESTITUTION 3D : ´ ETAT DE L’ART ´ image. Afin d’ˆetre le plus robuste possible aux diff´erences radiom´etriques provoqu´ees par la variation d’angle de prise de vue, des m´ethodes dites ”non-param´etriques” sont aussi tr`es utilis´ees. Elles consistent `a filtrer les donn´ees avant la corr´elation afin de r´eduire l’impact de ces diff´erences [37]. Le filtrage de rank, par exemple, recherche dans une fenˆetre centr´ee sur un pixel, le nombre de pixels dont la valeur est en dessous de celle du pixel consid´er´e puis remplace la valeur du pixel central par cette valeur. La correlation (r´ealis´ee avec la mesure SAD) va alors d´ependre de l’agencement des valeurs et non plus de l’intensit´e. Cependant, ce filtrage engendre une perte d’information spatiale qui r´eduit le pouvoir discriminant de la m´ethode [29]. Une variation `a ce filtrage, nomm´e le filtre census, pr´eserve la distribution spatiale de la fenˆetre en encodant le r´esultat du filtre de rank pour chaque pixel dans une chaˆıne de bytes [29]. D’autres filtrages de la fenˆetre de mise en correspondance sont utilis´es tels que le Laplacian of Gaussian ou le filtrage moyen [45]. Tous ces filtres tentent d’am´eliorer la robustesse aux conditions d’acquisition et aux erreurs de corr´elation des images car ils diminuent la sensibilit´e aux outliers des images. Ils sont majoritairement suivis d’une corr´elation par SAD. Hirschmuller [ ¨ 31] propose une mesure de similarit´e bas´ee sur la notion d’information mutuelle, r´eput´ee moins sensible au recalage et aux conditions d’illumination des images. L’information mutuelle entre deux fenˆetres de pixels est calcul´ee en additionnant l’entropie des histogrammes de chaque image puis en soustrayant l’entropie de l’histogramme joint. Hirschmuller et Szeliski [ ¨ 45] ont compar´e diff´erents coˆuts de corr´elation et leur efficacit´e pour la mise en correspondance dense des images. Ils montrent d’abord que la performance d’une fonction de coˆut d´epend avant tout de la m´ethode d’optimisation employ´ee indiquant que la fonction de coˆut a finalement un impact mod´er´e sur le r´esultat final. Cependant, ils observent que le filtrage de rank et l’information mutuelle semblent plus efficaces au niveau des discontinuit´es car ils permettent notamment une meilleure robustesse `a l’effet d’adh´erence qui conduit g´en´eralement `a la dilatation des objets de la sc`ene. Ce probl`eme, inh´erent aux m´ethodes de block matching, apparaˆıt lorsqu’il y a un saut brutal de disparit´e dans l’une des images qui ne peut ˆetre parfaitement localis´e `a l’int´erieur de la fenˆetre de corr´elation. Finalement, bien que plus performants, le filtre de rank ou l’information mutuelle n´ecessitent un temps de calcul 1,5 `a 5 fois plus important que le temps requis pour une mesure de type SAD. Cette derni`ere est la mesure impl´ement´ee dans l’outil de mise en correspondance que 28CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ nous utilisons. 1.2.3 Les strat´egies de mise en correspondance L’approche multi–r´esolution Aujourd’hui, la plupart des auteurs utilisent une approche coarse to fine ou multi–´echelle pour la g´en´eration des MNS. Cette m´ethode est bas´ee sur la corr´elation r´ealis´ee sur les images r´e–´echantillonn´ees de l’´echelle la plus grande `a la plus petite. Le r´esultat obtenu pour une certaine ´echelle sert alors d’initialisation pour la corr´elation `a ´echelle suivante. Le grand avantage de cette technique est un important gain de temps [31], [32]. Cependant, Szintsev [40] montre que de tels algorithmes ont tendance `a flouter les bords de bˆatiments car lors de l’agr´egation des pixels d’une fenˆetre de corr´elation, des pixels appartenant `a deux surfaces diff´erentes sont m´elang´es aux ´echelles les plus grandes et les discontinuit´es sont plus difficilement retrouv´ees. Des erreurs peuvent alors se propager `a toute la pyramide d’images. Certains auteurs proposent des fenˆetres de corr´elation adaptatives au niveau des zones de fortes discontinuit´es [47]. Sizintsev [40] et Pierrot-Deseilligny [32] proposent l’´equivalent d’un filtrage morphologique `a chaque niveau de la pyramide d’images en utilisant la fenˆetre de corr´elation comme ´el´ement structurant afin de simuler une fenˆetre adaptative pouvant se d´eplacer autour de la discontinuit´e qui a ´et´e calcul´ee au niveau sup´erieur de la pyramide, augmentant la pr´ecision au niveau de ces zones de discontinuit´es. Cet algorithme est d´ecrit par P´enard et al.[48] et est impl´ement´e dans l’outil de mise en correspondance que nous avons s´electionn´e. La prise en compte des occlusions L’un des points les plus sensibles de la mise en correspondance r´eside dans la pr´esence des zones d’occlusion sur les images st´er´eoscopiques. Elles correspondent `a des zones observ´ees sur une des deux images seulement et pour lesquelles il est impossible de retrouver les pixels homologues (ces zones sont souvent appel´ees demi–occlusion ou half–occlusion dans la litt´erature car l’occlusion n’est pr´esente que sur une des deux images). Ces zones se situent aux abords 291.2. METHODES DE RESTITUTION 3D : ´ ETAT DE L’ART ´ des bˆatiments et ont une taille variable en fonction de l’angle d’incidence de l’acquisition de l’image. Or, pour la st´er´eoscopie, les angles d’incidence peuvent ˆetre tr`es importants (jusqu’`a 30˚pour les images WorldView) cr´eant des zones d’occlusion de taille importante dans l’image. Ces derni`eres ann´ees, de nombreux auteurs se sont int´eress´es `a ce sujet. Brown [29] d´efinit trois classes d’algorithmes prenant en compte les occlusions : ceux qui d´etectent les occlusions (g´en´eralement apr`es le calcul de la disparit´e), ceux qui sont plus robustes aux zones d’occlusion grˆace aux fonctions de coˆut impl´ement´ees et enfin ceux qui mod´elisent les zones d’occlusion lors de la mise en correspondance. Les m´ethodes les plus simples pour la d´etection des zones d’occlusion sont bas´ees sur la d´etection des discontinuit´es dans l’image. Fua [49] et Qingxiong [33] calculent deux cartes de disparit´e en inversant les rˆoles maˆıtre et esclave des images `a chaque fois. Les disparit´es dont les valeurs sont trop ´eloign´ees entre elles pour le mˆeme point sont alors consid´er´ees comme des occlusions. Cette m´ethode dite de back matching est aujourd’hui impl´ement´ee dans de nombreux algorithmes [29]. Elle est cependant longue en temps de calcul et peut g´en´erer de tr`es nombreuses zones dites d’occlusion qui sont en r´ealit´e dues `a des diff´erences d’illumination, des zones homog`enes ou plus g´en´eralement des zones de mauvaise corr´elation sur l’une des deux cartes de disparit´e. Egnal [50] compare cinq approches de d´etection des zones d’occlusion bas´ees sur : – l’analyse de l’histogramme des disparit´es dans une fenˆetre de disparit´e, – les variations du coefficient de corr´elation, – le double calcul de la disparit´e `a partir de chacune des images, – l’analyse de la contrainte d’ordre des disparit´es (pas forc´ement respect´ee lors d’une occlusion), – les discontinuit´es de la disparit´e. Ce dernier algorithme, ainsi que l’algorithme de double calcul de disparit´e apparaissent comme les plus prometteurs. Cependant, leur efficacit´e semble d´ependre du paysage en pr´esence (la position de l’occlusion, la pr´esence d’objets fins, etc...). De plus, il n’y a pas eu d’´etude concernant la performance de ces algorithmes en fonction de la m´ethode d’optimisation appliqu´ee. Les m´ethodes r´eduisant la sensibilit´e aux zones d’occlusion correspondent souvent `a 30CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ l’adaptation de la mesure de similarit´e en fonction de ce probl`eme. Chambon [51] utilise deux mesures combin´ees : le zero mean normalized cross correlation coefficient et le smooth median absolute deviation, afin d’am´eliorer la robustesse envers ces zones. Les filtrages de rank et census propos´es par Zabih [37] permettent aussi une certaine robustesse aux outliers et donc souvent aux erreurs parfois ponctuelles g´en´er´ees par les zones d’occlusion (lorsque l’angle d’incidence reste faible). Enfin, d’autres m´ethodes passent par l’utilisation de fenˆetres adaptatives en fonction du degr´e de confiance de la corr´elation, le but est d’optimiser les r´esultats de la corr´elation pr`es des zones d’occlusion [29]. Les m´ethodes mod´elisant les zones d’occlusion, c’est–`a–dire permettant leur localisation en fonction du voisinage, int`egrent les zones d’occlusion directement dans la recherche de la disparit´e en cr´eant des fonctions de coˆut sp´ecifiques `a ces zones. Belhumeur [52] a impl´ement´e un mod`ele complexe de fonction de coˆut incluant des termes pour les surfaces lisses, les limites d’objets et les pentes. Bobick et Intille [34] associent un coˆut avec les zones d’occlusion qu’ils r´eduisent ou augmentent en fonction de l’orientation des contours de bˆatiments et donc de celle de la zone d’occlusion. L’´etude comparative de Egnal [50] ne consid`ere que des m´ethodes de d´etection des zones d’occlusion. A notre connaissance, aucune ´etude ne permet de comparer les diff´er ` entes techniques cit´ees pour la prise en compte de ces zones (d´etection - sensibilit´e - mod´elisation). Cependant, les m´ethodes les plus efficaces, rapides et faciles `a impl´ementer sont vraisemblablement les m´ethodes de d´etection des occlusions, mˆeme si elles n´ecessitent g´en´eralement un double calcul de la disparit´e ou un post–traitement des cartes de disparit´e g´en´er´ees. Les m´ethodes r´eduisant la sensibilit´e aux occlusions montrent certaines performances mais ne permettent pas la localisation des occlusions et peuvent donc engendrer des erreurs dans le MNS, erreurs qui se propagent g´en´eralement ensuite dans la d´etection des changements de la sc`ene. Au contraire, les m´ethodes de mod´elisation s’av`erent tr`es performantes pour la localisation mais elles sont particuli`erement difficiles `a impl´ementer. Dans la chaˆıne de traitements d´evelopp´ee, nous avons choisi une m´ethode de d´etection des zones d’occlusion appliqu´ee apr`es le calcul des cartes d’´el´evation par mise en correspondance. Cet 311.2. METHODES DE RESTITUTION 3D : ´ ETAT DE L’ART ´ algorithme, bas´e sur des contraintes g´eom´etriques au niveau des discontinuit´es de l’image sera d´ecrit dans le chapitre 3, section 3.2. Les g´eom´etries de mise en correspondance La g´eom´etrie de mise en correspondance correspond `a la technique choisie pour la recherche des pixels homologues entre les images st´er´eoscopiques. Selon le nombre d’images disponibles et leur pr´ecision d’orientation, plusieurs g´eom´etries sont possibles. Classiquement, cette recherche est bas´ee sur la g´eom´etrie ´epipolaire (ou pseudo–´epipolaire dans le cas des images satellites) comme repr´esent´e sur la figure 1.1(a). La recherche d’un pixel de l’image maˆıtre est effectu´ee le long de la ligne ´epipolaire correspondante sur l’image esclave. Une recherche bi–dimensionnelle (transversale `a l’´epipolaire) permet d’ˆetre plus robuste aux erreurs r´esiduelles dans les mod`eles g´eom´etriques des images. Cette technique, encore tr`es r´epandue, n´ecessite cependant un r´e–´echantillonnage ´epipolaire des images. La seconde g´eom´etrie, tr`es classique aujourd’hui, est la g´eom´etrie image (ou faisceaux), illustr´ee en figure 1.1(b). Le principe est la recherche du pixel homologue d’une image maˆıtre sur l’image esclave en localisant celui–ci grˆace aux mod`eles g´eom´etriques des images (affin´es pr´ealablement) et pour chaque altitude d´efinie dans un rep`ere terrain [36], [32]. Une fois le pixel localis´e sur l’image esclave, il est aussi possible d’effectuer la recherche selon une seconde dimension, dans l’espace image afin d’ˆetre, l`a encore, plus robuste aux erreurs g´eom´etriques des images. Enfin, la g´eom´etrie dite terrain, repr´esent´ee en figure 1.1(c), permet de retrouver, pour chaque altitude z d’un point d´efini dans un rep`ere terrain, les pixels de chaque image qui correspondent `a ce point terrain grˆace aux mod`eles g´eom´etriques des images. Un score de corr´elation est alors calcul´e entre les fenˆetres de pixels d´efinies autour des pixels s´electionn´es. L’altitude finale choisie est alors celle qui maximise le score de corr´elation entre les fenˆetres de pixels s´electionn´ees. Cette technique permet le calcul direct de la carte de profondeur sur une grille terrain r´eguli`ere, quel que soit le nombre d’images utilis´e. De plus, toutes les images sont consid´er´ees ensemble, sans notion de maˆıtre et esclave, permettant un processus sym´etrique. Si cette technique se 32CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ montre peu robuste aux erreurs g´eom´etriques des images ou aux occlusions lorsque seulement deux images sont utilis´ees, elle s’av`ere tr`es avantageuse lorsque le nombre d’images augmente car elle est alors plus pr´ecise (notamment pour la prise en compte des zones d’occlusion) et plus rapide qu’une mise en correspondance d’images deux `a deux. Ces diff´erentes g´eom´etries de mise en correspondance sont d´ecrites en d´etail, avec leurs avantages et inconv´enients, dans l’article de P´enard et al [48]. Les auteurs montrent notamment que la g´eom´etrie image pr´esente g´en´eralement de meilleurs r´esultats que la g´eom´etrie terrain, c’est pourquoi cette derni`ere a ´et´e s´electionn´ee pour la mise en correspondance dans notre chaˆıne de traitements. 1.2.4 Les outils de restitution 3D existants Aujourd’hui, de nombreux outils de reconstruction 3D existent sous forme de packages commerciaux ou open–source. On notera, parmi les packages commerciaux les plus populaires, Socet–set de BAE Systems, Erdas Imagine de Intergraph, Sat–PP de 4D Ixplorer, OrthoEngine de PCI Geomatics, Smart3DCapture de Acute3D ou encore Photo Modeler. Les performances de ces outils sont g´en´eralement bonnes mais le param´etrage peut ˆetre difficile surtout lorsque les codes sources ne sont pas accessibles, ce qui les rend peu exploitables dans un cadre de recherche. D’autre outils existent tels que PMVS, de Furukawa et Ponce [53], OpenCV library (contenant les librairies pour la mise en correspondance selon l’algorithme de Hirschmuller ¨ [31]) ou encore MicMac d´evelopp´e par l’IGN [32]. Ces outils sont libres de t´el´echargement mais parmi eux, seul MicMac est un outil totalement open–source. Le t´el´echargement des codes sources de MicMac permet en effet le contrˆole de tous les param`etres et la maˆıtrise interne compl`ete du code. Ses diff´erentes options, qui autorisent la mise en correspondance selon toutes les g´eom´etries cit´ees pr´ec´edemment, l’utilisation de plusieurs m´ethodes d’optimisation et d’interpolation et l’option multi–´echelle en font un outil particuli`erement adaptable `a tous les contextes (g´eologique ou urbain, en imagerie spatiale ou terrestre). C’est pourquoi l’outil MicMac est donc celui que nous avons s´electionn´e pour la mise en correspondance des images st´er´eoscopiques. 331.2. METHODES DE RESTITUTION 3D : ´ ETAT DE L’ART ´ (a) Sch´ema de principe de la g´eom´etrie ´epipolaire (b) Sch´ema de principe de la g´eom´etrie image (c) Sch´ema de principe de la g´eom´etrie terrain Figure 1.1 – Sch´ema de principe des diff´erentes g´eom´etries de mise en correspondance. 34CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ 1.3 Description g´en´erale de la chaˆıne de traitements d´evelopp´ee L’objectif fix´e lors du travail de th`ese est de d´evelopper une m´ethode totalement automatique pour la d´etection des changements d’´el´evation `a partir d’images satellites st´er´eoscopiques. Nous nous pla¸cons dans un contexte urbain, le but ´etant de retrouver tous les changements du bˆati (construction, destruction ou modifications d’infrastructure). Les contraintes du syst`eme sont alors les suivantes : – le syst`eme doit ˆetre enti`erement automatique de l’acquisition des images `a la g´en´eration des cartes de changements, – la m´ethode doit ˆetre applicable quels que soient le ou les capteurs tr`es haute r´esolution utilis´es, qu’ils soient satellites ou a´eriens, – les param`etres doivent ˆetre suffisamment g´en´eriques afin que la m´ethode soit applicable dans des contextes vari´es (milieu urbain, montagneux, d´esertique). Afin de r´epondre au mieux `a ces contraintes, une chaˆıne compl`ete et innovante de traitements `a ´et´e d´evelopp´ee. Cette chaˆıne, illustr´ee en figure 1.2 comprend trois ´etapes majeures : la premi`ere ´etape (entour´ee en trait plein sur la figure) correspond `a la spatio–triangulation ou recalage simultan´e de toutes les images disponibles, sans consid´eration de leur date d’acquisition. Cette ´etape, d´ecrite dans le chapitre 2, section 2.1, sera r´ealis´ee `a l’aide d’outils existants permettant la recherche de points de liaison entre les images et l’affinage des mod`eles g´eom´etriques des images. La seconde ´etape (entour´ee en pointill´es fins) permet la g´en´eration de MNS pr´ecis pour chaque date. Cette ´etape, d´ecrite dans le chapitre 3 consiste d’abord en une mise en correspondance des images `a l’int´erieur de chaque couple, chaque image ´etant successivement maˆıtre et esclave. Cette mise en correspondance, r´ealis´ee `a l’aide de l’outil MicMac et par une m´ethode d’optimisation (voir section 3.1), est suivie par le basculement des MNS g´en´er´es sur une grille r´eguli`ere commune (voir section 3.2) puis par la fusion de tous les MNS obtenus avec un algorithme de labellisation par optimisation (voir section 3.3). Ces deux derni`eres ´etapes sont issues de d´eveloppements r´ealis´es au cours de la th`ese et 351.3. DESCRIPTION GEN´ ERALE DE LA CHA ´ ˆINE DE TRAITEMENTS DEVELOPP ´ EE´ Figure 1.2 – Illustration des diff´erentes ´etapes de la chaˆıne globale de traitements. permettent de prendre en compte toutes les contraintes et sources d’erreurs inh´erentes aux images satellites afin de g´en´erer des MNS pr´ecis en vue de la d´etection des changements d’´el´evation. 36CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ Ainsi, la derni`ere ´etape (entour´ee en pointill´es larges) a pour objectif l’analyse de la diff´erence des MNS afin de mettre en ´evidence les changements d’´el´evation les plus pertinents de la sc`ene selon une m´ethode que nous avons d´evelopp´ee. Cette m´ethode, d´ecrite dans le chapitre 4, est bas´ee sur la classification des pixels du MNS diff´erentiel `a travers un algorithme de labellisation par optimisation. Nous noterons finalement que trois ´etapes de calcul r´ealis´ees dans cette chaˆıne de traitements sont bas´ees sur une labellisation des pixels de l’image r´esolue par une m´ethode d’optimisation. Un algorithme ”noyau” a ainsi ´et´e d´evelopp´e au cours de th`ese et a ´et´e adapt´e pour la r´esolution de chacun de ces probl`emes. Cet algorithme est d´ecrit dans le chapitre 2, section 2.2.3. 1.4 Capteurs utilis´es et donn´ees d’entr´ee Au cours de ce travail, de nombreux jeux de donn´ees ont ´et´e utilis´es afin d’exp´erimenter les m´ethodes sur diff´erentes sc`enes et d’en analyser les r´esultats. Seules des images panchromatiques provenant de capteurs tr`es haute r´esolution spatiale ont ´et´e employ´es : Ikonos, dont les images obtenues ´etaient r´e–´echantillonn´ees `a 1 m de r´esolution spatiale, WorldView-1 et 2, produisant des images `a environ 60 cm de r´esolution spatiale et Pl´eiades, produisant des images `a environ 70 cm de r´esolution spatiale. Le tableau 1.1 r´esume toutes les donn´ees utilis´ees. Bien que les images multispectrales puissent apporter des informations permettant de filtrer les cartes de d´etection de changements obtenues `a la mani`ere de Tian [8], nous avons choisi de d´evelopper notre chaˆıne de traitements `a partir des images panchromatiques uniquement. Tous ces capteurs sont de type push–broom : barrettes lin´eaires de d´etecteurs permettant l’acquisition de chaque ligne de l’image successivement grˆace au d´efilement du paysage dans le plan focal. Quatre zones g´eographiques ont ´et´e ´etudi´ees pour les diff´erentes ´etapes de calcul de la m´ethode, en fonction des donn´ees disponibles. Pour l’illustration de la chaˆıne compl`ete, i.e. de la g´en´eration des MNS `a la d´etection de changements, la ville de Phoenix, en Arizona (Etats-Unis) a ´et´e analys´ee entre les dates de 2008 et 2011. ´ Cette zone permet d’´evaluer les performances de la m´ethode lors de l’analyse de l’´evolution ty- 371.4. CAPTEURS UTILISES ET DONN ´ EES D’ENTR ´ EE´ Capteur Date R´esolution Angle Angle b/h d’acquisition spatiale (m) d’azimut (◦ ) d’´el´evation (◦ ) Donn´ees acquise sur la ville de Phoenix (Etats-Unis) WorldView-1 2008-10-06 0,59 51,5 64,1 0,67 WorldView-1 2008-10-06 0,56 141,6 67,6 WorldView-1 2011-04-28 0,62 156,2 59,6 0,70 WorldView-1 2011-04-28 0,56 65,0 67,6 Donn´ees acquise sur la ville de Toulouse (France) Pl´eiades 2012-05-07 0,70 115,5 64,7 0,54 Pl´eiades 2012-05-07 0,70 88,9 64,6 0,55 Pl´eiades 2012-05-07 0,70 102,2 65,2 0,54 Donn´ees acquise sur la ville de Chistchurch (Nouvelle Z´elande) WorldView-1 2009-09-16 0,66 85,7 57,2 0,66 WorldView-1 2009-09-16 0,58 66,3 23,7 WorldView-2 2011-08-30 0,60 199,5 57,3 0,66 WorldView-2 2011-08-30 0,47 289,0 87,2 Donn´ees acquise sur la ville de Sendai (Japon) Ikonos 2010-12-11 1 (reech.) 64,9 64,65 0,79 Ikonos 2010-12-11 1 (reech.) 149,15 60,66 Ikonos 2011-08-13 1 (reech.) 314,4 61,14 0,72 Ikonos 2011-08-13 1 (reech.) 250,96 56,66 Table 1.1 – M´etadonn´ees des images utilis´ees lors des diff´erentes ´etudes. pique d’un milieu urbain. Dans ce mˆeme contexte, la ville de Christchurch, en Nouvelle Z´elande a aussi ´et´e ´etudi´ee. L’int´erˆet de cette zone est la pr´esence de deux acquisitions LiDAR effectu´ees au mˆeme endroit et `a des dates proches des acquisitions satellitaires. Cette zone permet ainsi une quantification pr´ecise des performances des algorithmes mis en place. Les donn´ees Pl´eiades, acquises sur la ville de Toulouse selon le mode tri–st´er´eoscopique, permettent d’illustrer l’int´erˆet de l’algorithme de g´en´eration des MNS pour le traitement d’acquisitions multi–st´er´eoscopiques. 38CHAPITRE 1. ETUDES BIBLIOGRAPHIQUES ET STRAT ´ EGIE ADOPT ´ EE´ La zone de Sendai (Japon), permet enfin de tester de la chaˆıne de traitements sur un cas concret de catastrophe majeure. En effet, les donn´ees disponibles ont ´et´e acquises avant et apr`es le s´eisme suivi par le tsunami qui a ravag´e la cˆote de Sendai le 11 mars 2011. 1.5 Conclusion Ce chapitre pr´esente tout d’abord de nombreuses m´ethodes de d´etection de changements `a partir d’images satellites ou a´eriennes. Cependant, si les m´ethodes classiques bas´ees sur la comparaison radiom´etrique des images montrent de bonnes performances, elles ne s’av`erent pas toujours efficaces du fait des nombreuses fausses alarmes qu’elles g´en`erent et sont souvent difficilement automatisables car trop d’a priori sur les changements sont n´ecessaires. Les m´ethodes bas´ees sur l’exploitation de l’information d’´el´evation de la sc`ene paraissent alors mieux adapt´ees, notamment au contexte urbain. Bien que ces m´ethodes n´ecessitent aussi des informations a priori ou contextuelles, l’analyse de la diff´erence entre deux cartes d’´el´evation montre de tr`es bon r´esultats. Dans cet objectif, de nombreuses m´ethodes de restitution 3D ont ´et´e ´etudi´ees afin de s´electionner une strat´egie suffisamment robuste pour la mise en correspondance d’images satellites et la g´en´eration de cartes d’´el´evation. Nous avons vu que de nombreuses techniques permettent de prendre en compte les erreurs de recalage des images ou bien les zones d’occlusion, ces deux points ´etant particuli`erement importants dans le cas des images satellites. La chaˆıne de traitements r´ealis´ee lors de cette th`ese est ainsi bas´ee sur la g´en´eration de MNS `a travers plusieurs ´etapes de calcul permettant d’am´eliorer leur pr´ecision grˆace `a une technique de mise en correspondance s´electionn´ee pour ses performances et son adaptabilit´e, suivi par des post–traitements permettant une meilleur prise en compte des erreurs d’occlusion. La m´ethode de d´etection des changements d´evelopp´ee est, quant `a elle, une m´ethode innovante car totalement automatique permettant la d´etection des changements pertinents du bˆati grˆace `a la seule utilisation de l’information d’´el´evation produite aux dates d’int´erˆet. 391.5. CONCLUSION 40Chapitre 2 Outils et m´ethodes n´ecessaires `a la chaˆıne de traitements Ce chapitre pr´esente les outils de calcul, utilis´es en l’´etat ou bien impl´ement´es, n´ecessaires `a la chaˆıne de traitements d´evelopp´ee. La premi`ere ´etape de la chaˆıne de traitements consiste en un recalage simultan´e de toutes les donn´ees disponibles aux dates t1 et t2. Cette ´etape est bas´ee sur des outils existants pour la recherche de points de liaison entre les images et l’affinage des mod`eles g´eom´etriques des images par ajustement de faisceaux. Cette ´etape est essentielle pour la g´en´eration des MNS et le calcul des MNS diff´erentiels, calculs qui n´ecessitent une grande pr´ecision de recalage entre les images. Apr`es un bref rappel de l’objectif et du principe de la spatio–triangulation des images, nous verrons quelques r´esultats obtenus apr`es ce calcul et nous discuterons des erreurs r´esiduelles g´en´er´ees. Nous verrons ensuite dans ce chapitre l’outil central n´ecessaire aux ´etapes de calcul r´ealis´ees dans notre chaˆıne de traitements. Cet outil est un algorithme d’optimisation semi-globale et permettant la r´esolution de probl`emes de labellisation. Nous montrerons tout d’abord comment cet algorithme a ´et´e s´electionn´e parmi les nombreux algorithmes d’optimisation existants puis nous d´etaillerons son impl´ementation telle que nous l’avons r´ealis´ee. 412.1. CO–LOCALISATION DES IMAGES : UTILISATION D’UN OUTIL DE SPATIO–TRIANGULATION 2.1 Co–localisation des images : utilisation d’un outil de spatio– triangulation 2.1.1 Contexte et objectif Les capteurs tr`es haute r´esolution tels que les capteurs Pl´eiades, WorldView, Ikonos, GeoEye ou OrbView sont particuli`erement agiles, facilitant les acquisitions st´er´eoscopiques. Les images peuvent alors ˆetre prises par vue lat´erale (across track) ou plus commun´ement en mode avant–arri`ere le long de la trace du satellite (along track), permettant des acquisitions quasi–simultan´ees. Ces diff´erentes conditions d’acquisition sont le point cl´e de la st´er´eoscopie. Cependant, les mod`eles g´eom´etriques fournis avec les images et contenant les informations sur la position du satellite, son orientation et sa direction de vis´ee lors de l’acquisition, ne sont pas suffisamment pr´ecis. En effet, pour des satellites tr`es haute r´esolution tels que Pl´eiades, il faudrait atteindre une pr´ecision de restitution des angles de vis´ee au microm`etre pour que l’orientation du satellite soit connue `a l’´echelle du pixel. Ceci n’est aujourd’hui pas r´ealisable par les syst`emes de contrˆole [54]. La figure 2.1 pr´esente les angles correspondant aux variations d’attitudes du satellite appel´es roulis αR, tangage αT et lacet αL. Ainsi, lorsque les mod`eles g´eom´etriques natifs associ´es aux images sont exploit´es, on observe que les pixels homologues (ou points de liaison) appartenant `a diff´erentes images (du mˆeme couple st´er´eoscopique ou non) et repr´esentant un mˆeme point physique ne correspondent pas aux mˆemes coordonn´ees terrain. On observe des biais variables selon les satellites et la pr´ecision de leurs mod`eles g´eom´etriques : DigitalGlobe annonce une pr´ecision de localisation absolue au sol de 15 m pour QuickBird, 9 m pour Ikonos et 5 m pour WorldView tandis que Pl´eiades est annonc´e `a 12 m de pr´ecision [54]. Or, la mise en correspondance des images n´ecessite une pr´ecision subpixellique (typiquement inf´erieure `a 0,5 m) de localisation relative des images. En effet, la technique employ´ee, d´etaill´ee au chapitre 3, est bas´ee sur le parcours des lignes de vis´ee de chacun des pixels. De mˆeme, lors de l’´etape de d´etection de changements, d´ecrite dans le chapitre 4, le calcul de la diff´erence des 42CHAPITRE 2. OUTILS ET METHODES N ´ ECESSAIRES ´ A LA CHA ` ˆINE DE TRAITEMENTS MNS pixel `a pixel est particuli`erement sensible au recalage des MNS, lui–mˆeme directement li´e au recalage des images d’origine. Afin de s’assurer de la pr´ecision de co–localisation des images puis des MNS, nous avons choisi de proc´eder, avant tout autre traitement, `a une spatio–triangulation [55] (plus connue sous le nom d’a´ero–triangulation pour les images a´eriennes). 2.1.2 Principe de la spatio–triangulation Le principe de la spatio–triangulation est de corriger les erreurs des mod`eles g´eom´etriques des images afin que les lignes de vis´ee provenant des pixels homologues de chacune des images se croisent au mieux sur les mˆemes coordonn´ees au sol [56]. Cet affinage des mod`eles peut ˆetre r´ealis´e de fa¸con absolue au sol si des points d’appuis sont disponibles (points rep´er´es dans l’image et de coordonn´ees terrain connues) ou relative, c’est–`a–dire que les images sont alors seulement co–localis´ees entre elles. Le principe de la spatio–triangulation est illustr´e dans les figures 2.2(a) et 2.2(b) qui pr´esentent l’orientation des images avant et apr`es cette ´etape. Figure 2.1 – Illustration du syst`eme d’acquisition en barrette push–broom et des angles d’attitude du satellite. 432.1. CO–LOCALISATION DES IMAGES : UTILISATION D’UN OUTIL DE SPATIO–TRIANGULATION (a) Orientation et localisation des images avant spatio– triangulation. (b) Orientation et localisation des images apr`es spatio– triangulation. Figure 2.2 – Illustration du r´esultat de la spatio–triangulation pour le recalage des images. Selon les donn´ees fournies avec les images satellites, les mod`eles g´eom´etriques peuvent correspondre au mod`ele physique des images ou aux fractions rationnelles (RPC). Le mod`ele physique est un mod`ele explicite, calcul´e en prenant en compte les param`etres de prise de vue du syst`eme `a chaque instant et d´efini par les ´eph´em´erides du satellite (orbitographie, attitude et orientation du satellite `a chaque instant). Les fractions rationnelles permettent de mod´eliser la ligne de vis´ee de chacun des pixels afin de retrouver les matrices de passage des coordonn´ees images aux coordonn´ees terrain pour n’importe quelle altitude [56]. En g´eom´etrie image, on d´efinit par mod`ele direct, le mod`ele physique ou analytique, permettant le calcul des coordonn´ees terrain d’un point `a partir de ses coordonn´ees image (et d’une altitude). Le mod`ele inverse permet de calculer les coordonn´ees image d’un point `a partir de ses coordonn´ees terrain. Ainsi, la spatio–triangulation consiste `a affiner les mod`eles g´eom´etriques des images, et plus particuli`erement les angles d’attitude : roulis, tangage et lacet, en leur introduisant un mod`ele 44CHAPITRE 2. OUTILS ET METHODES N ´ ECESSAIRES ´ A LA CHA ` ˆINE DE TRAITEMENTS d’erreur. L’objectif est de corriger ces mod`eles afin de garantir la crois´ee des faisceaux provenant d’un jeu de points de liaison ou d’appuis. Cet objectif peut ˆetre atteint si les mod`eles d’erreurs introduits, sur l’instrument, l’orientation ou l’attitude du satellite, sont en ad´equation avec la r´ealit´e [55]. Lorsque seuls des points de liaison sont disponibles, des contraintes de localisation absolue sont pos´ees grˆace `a des a priori afin d’´eviter que le mod`ele ne diverge. Les points d’appuis ´etant des donn´ees rares voire inexistantes, toutes les images de la chaˆıne de traitements propos´ee sont recal´ees entre elles de fa¸con relative. Une premi`ere ´etape, avant l’affinage des mod`eles, consiste `a rechercher des points de liaison entre les images. Cette ´etape est r´ealis´ee grˆace `a un outil de corr´elation d’images d´evelopp´e au CEA 1 . Cet outil permet la corr´elation non dense des images deux `a deux afin de d´eterminer les points homologues les plus fiables (c’est–`a–dire ceux montrant le meilleur score de corr´elation). Seuls quelques centaines de points, bien r´epartis sur chaque image, sont n´ecessaires pour affiner les mod`eles. L’´etape d’ajustement de faisceaux est ensuite effectu´ee `a l’aide du logiciel Euclidium, d´evelopp´e par le CNES et l’IGN. Ces outils de corr´elation et d’ajustement de faisceaux, d´ej`a existants et valid´es, fonctionnent de fa¸con totalement automatique pour tous type de capteurs. Cependant, il apparaˆıt que mˆeme apr`es l’affinage des mod`eles g´eom´etriques des images, des erreurs r´esiduelles persistent. Ces erreurs sont g´en´eralement dues `a des variations temporelles d’orientation du capteur lors de la prise de vue, impossibles `a mod´eliser et `a corriger par la spatio–triangulation du fait du faible nombre de degr´es de libert´e du mod`ele d’erreur (biais et d´erive temporelle d’attitude). Un autre d´efaut, inh´erent aux traitements sol, peut aussi repr´esenter une source d’erreur non corrigeable par la spatio–triangulation : c’est le d´efaut provenant de la simulation en “capteur parfait” des images. En effet, l’acquisition des images satellites est r´ealis´ee par segments, illustr´es en figure 2.1. Lorsque l’image est produite, les segments de chaque ligne sont fusionn´es afin de simuler un capteur lin´eaire monolitique. Or, des d´efauts de calibration sur les distances inter–barrettes peuvent subsister et engendrer des erreurs dans les mod`eles g´eom´etriques des images (RPC ou mod`eles physiques), erreurs qui ne peuvent ˆetre mod´elis´ees et corrig´ees par la 1. Cet outil a ´et´e d´evelopp´e en interne et aucune publication n’y fait r´ef´erence. 452.1. CO–LOCALISATION DES IMAGES : UTILISATION D’UN OUTIL DE SPATIO–TRIANGULATION (a) D´efauts r´esiduels d’une image OrbView-3 apr`es spatio–triangulation. (b) D´efauts r´esiduels d’une image WorldView-1 apr`es spatio–triangulation. Figure 2.3 – Illustration du r´esultat de la spatio–triangulation pour le recalage des images (´echelle en pixels). spatio–triangulation car elle n’autorise pas de degr´es de libert´e sur le plan focal. Figure 2.4 – Illustration du calcul des r´esidus de la spatio–triangulation. Dans le but de quantifier ces erreurs, les distances r´esiduelles entre les faisceaux provenant de points homologues trouv´es entre les deux images d’un couple OrbView-3 et d’un couple WorldView-1 ont ´et´e calcul´ees (figures 2.3(a) et 2.3(b)). 46CHAPITRE 2. OUTILS ET METHODES N ´ ECESSAIRES ´ A LA CHA ` ˆINE DE TRAITEMENTS La figure 2.4 permet d’illustrer le calcul de cette distance pour deux points homologues M i1 et M i2, appartenant `a deux images diff´erentes I1 et I2. Le recalage des images n’´etant pas parfait, les faisceaux provenant de ces points ne se croisent pas. La plus petite distance entre ces faisceaux est repr´esent´ee par la distance entre les points M et M′ dans l’espace terrain. Projet´ee en g´eom´etrie image, cette distance correspond `a la distance d entre les points M i2 (point homologue `a M i1) et M i′ 2 (point retrouv´e par corr´elation ´epipolaire entre les deux images). Cette distance, calcul´ee apr`es le recalage des images, repr´esente l’erreur r´esiduelle de la spatio–triangulation. Cette distance a ´et´e calcul´ee apr`es l’affinage des mod`eles g´eom´etriques d’un couple d’images OrbView–3 et d’un couple d’images WorldView–1. Les figures 2.3(a) et 2.3(b) illustrent les r´esultats obtenus pour ces deux capteurs. On observe sur la figure 2.3(b) des artefacts lin´eaires tr`es marqu´es formant des discontinuit´es dans l’image (rep´er´es par les fl`eches rouges en haut de la figure 2.3(b)), d’amplitude d’environ 0,7 pixel pour les images WorldView-1. Ces d´efauts correspondent aux d´efauts capteurs non corrig´es des images (ils ne sont pas visibles sur la figure 2.3(a)). Les d´efauts d’attitude sont, quant `a eux, visibles sous formes d’ondulations quasi horizontales et tr`es marqu´ees sur la figure 2.3(a) et horizontales sur la figure 2.3(b). Ces d´efauts sont rep´er´es par les fl`eches noires `a gauche de chacune des figures. Ces r´esidus, d’ordre pixellique pour les images OrbView-3 mettent en ´evidence des erreurs d’orientation trop importantes sur ce capteur pour notre ´etude, tandis que les erreurs d’ordre subpixelliques du capteur WorldView-1 sont acceptables et autorisent la mise en correspondance des images pour la g´en´eration fiable de MNS. 2.2 Outil pour la r´esolution de probl`emes de labellisation 2.2.1 Trois probl`emes de labellisation A l’int´erieur de cette chaˆıne de traitements, trois ´etapes d ` e calcul sont bas´ees sur la r´esolution d’un probl`eme de labellisation (voir section 1.3). C’est–`a–dire qu’`a chacune de ces 472.2. OUTIL POUR LA RESOLUTION DE PROBL ´ EMES DE LABELLISATION ` ´etapes de calcul, la valeur de chaque pixel de l’image de sortie r´esulte d’un choix r´ealis´e entre plusieurs valeurs ou attributs possibles selon des crit`eres calcul´es appel´es attaches aux donn´ees. Dans une premi`ere ´etape de calcul, lors de la mise en correspondance des images, le pixel homologue `a un pixel de l’image maˆıtre est choisi parmi plusieurs candidats en fonction d’un crit`ere de similarit´e. La s´election du pixel homologue permet alors de d´eduire l’´el´evation du point terrain repr´esent´e par ces pixels homologues (voir chapitre 3, section 3.1). Dans un second calcul, qui correspond `a la fusion des MNS, les pixels du MNS final r´esultent du choix entre les diff´erentes valeurs d’´el´evation propos´ees par chacun des pixels des MNS `a fusionner. Ce choix est r´ealis´e en fonction d’un crit`ere de confiance calcul´e pour chacun des pixels des diff´erents MNS (voir chapitre 3, section 3.3). Enfin, lors de la d´etection des changements, c’est en fonction de la valeur du pixel dans la diff´erence de MNS qu’un label de changement (positif, n´egatif ou non changement) est attribu´e au pixel de la carte finale des changements (voir chapitre 4). Ces probl´ematiques, bien que tr`es diff´erentes en termes de labels et d’objectifs, ont pour caract´eristique commune que toutes les solutions ne sont pas ´equiprobables. En effet, `a crit`eres d’attache aux donn´ees identiques, on privil´egie les solutions r´eguli`eres. Cette r´egularit´e se traduit par le fait que, dans une image, la valeur d’un pixel n’est pas ind´ependante des valeurs des pixels qui l’entourent, de mˆeme, le label affect´e `a un pixel d´epend des labels affect´es aux pixels voisins. L’ensemble des labels peut ainsi ˆetre consid´er´e comme un champ de Markov al´eatoire [28, 42, 57, 58] et la probabilit´e d’affectation d’un label `a un pixel d´epend alors de la probabilit´e conjointe de l’appartenance du label `a ce pixel et aux pixels de son voisinage. Le probl`eme de labellisation n’est alors plus consid´er´e comme un probl`eme local mais peut ˆetre r´esolu de fa¸con globale sur l’image. Toutes les solutions de labellisation possibles sur l’image ne sont pas ´equiprobables. Cependant, il existe une solution optimale qui correspond a priori `a une solution r´eguli`ere sur l’image qui limite les variations de hautes fr´equences, correspondant g´en´eralement `a du bruit. Cette formulation se traduit alors par l’introduction d’une contrainte de r´egularisation spatiale dans le calcul de labellisation des pixels. Chacune des labellisations rencontr´ees dans la chaˆıne de traitements est alors r´esolue `a 48CHAPITRE 2. OUTILS ET METHODES N ´ ECESSAIRES ´ A LA CHA ` ˆINE DE TRAITEMENTS partir d’une mˆeme m´ethode bas´ee sur la minimisation d’une fonctionnelle d’´energie globale E sur l’ensemble des pixels x d’une image X et permettant d’assigner un label n j appartenant au jeu de labels N = {n 1 , n2 , ..., nz}, (z ´etant le nombre total de labels) `a chacun des pixels x ∈ X selon la fonction suivante : E(n) = X x∈X Cdata(n(x)) + X (x′)∈V (x) Creg(n(x), n(x ′ )). (2.1) Cdata(n(x)) repr´esente le coˆut pour l’affectation du label n au pixel x en fonction d’un crit`ere de probabilit´e d’appartenance `a ce label. Creg(n(x), n(x ′ )) correspond au coˆut pour l’affectation d’un des labels n `a deux pixels voisins x et x ′ . Ce terme traduit la contrainte de r´egularisation. 2.2.2 Les m´ethodes d’optimisation existantes De nombreuses approches existent pour r´esoudre la minimisation d’une fonctionnelle d’´energie sur une image. Ce sujet a notamment ´et´e largement ´etudi´e pour r´esoudre le probl`eme de la mise en correspondance d’images [28], comme nous l’avons vu dans le chapitre 1, section 1.2, mais cette approche est aussi tr`es utilis´ee en restauration d’image ou en segmentation [12, 58]. Nous rappelons que les algorithmes de minimisation d’´energie peuvent ˆetre divis´es en deux cat´egories : les algorithmes permettant de retrouver une solution exacte ou approch´ee en consid´erant toute l’image en une seule fois, et les algorithmes qui partitionnent l’image en une s´erie de probl`emes plus simples `a r´esoudre (g´en´eralement en consid´erant l’image par s´equences de pixels en une dimension) et qui permettent de retrouver des solutions minimales localement qui sont ensuite fusionn´ees afin d’obtenir le r´esultat global [43]. Ce sont les m´ethodes semi–globales [42]. Les m´ethodes globales Les m´ethodes les plus populaires d’optimisation globale sont celles bas´ees sur les graph-cuts [59], [58] et [41], ou encore le belief propagation [43, 60]. Ces m´ethodes sont parmi les plus efficaces comme l’a d´emontr´e Scharstein [28], `a partir du benchmark Middelbury [61], puis 492.2. OUTIL POUR LA RESOLUTION DE PROBL ´ EMES DE LABELLISATION ` (a) Illustration de la construction des graph–cuts. Figure provenant de l’article de Roy et Cox [59] (b) Illustration du graphe 3D et de la surface de disparit´e. Figure 2.5 – Illustration de la m´ethode des graph–cuts appliqu´ee au calcul de la disparit´e. Schindler [42] sur des probl`emes de classification d’images. D’autres m´ethodes, comme les recuits–simul´es (simulated annealing), d´evelopp´es par Geman [57], sont souvent jug´ees moins efficaces et trop lourdes en temps de calcul, notamment parce que les labels de chacun des pixels sont recalcul´es `a chaque it´eration afin de retrouver un minimum global [58]. Formulation du probl`eme de mise en correspondance `a travers la th´eorie du Maximum-flow. L’id´ee des graph–cuts est de ramener le probl`eme de minimisation d’´energie `a un probl`eme de coupe minimale dans un graphe, ce qui, d’apr`es le th´eor`eme de Ford-Fulkerson [62], revient `a trouver le flot maximal (ou MaxFlow) `a travers un graphe, probl`eme pour lequel il existe des algorithmes de calcul exacts et efficaces. Dans le cas d’un probl`eme de mise en correspondance, Roy et Cox [59] ont d´evelopp´e un algorithme permettant de retrouver globalement et en une seule fois la surface de disparit´e (repr´esent´ee en rouge sur la figure 2.5) pour un couple d’images st´er´eoscopiques. Avec cet algorithme d’optimisation, et afin de satisfaire une contrainte de r´egularisation spatiale dans toutes les directions, la mise en correspondance ne peut pas se faire selon une seule dimension `a travers la mise en correspondance classique des lignes ´epipolaires. 50CHAPITRE 2. OUTILS ET METHODES N ´ ECESSAIRES ´ A LA CHA ` ˆINE DE TRAITEMENTS L’id´ee est alors de construire un graphe 3D (x, y, z), x et y repr´esentent la dimension image (ligne,colonne) et z repr´esente les hypoth`eses d’´el´evation donn´ees par la recherche sur les parallaxes. A ce graphe sont ajout´es une source ` S et un puits T permettant de former le graphe G = (V, E) avec V l’ensemble des sommets du graphe, c’est `a dire la grille 3D form´ee entre S et T, et E l’ensemble des arˆetes qui connectent tous les sommets de la grille (repr´esent´ee sur la figure 2.5(b)). A chaque arˆete est affect´e un coˆut (ou une capacit´e de flot) : – les arrˆetes verticales (nomm´ees D sur la figure 2.5(b)) sont les arˆetes dites de disparit´e et correspondent directement au coˆut de mise en correspondance : un coefficient de corr´elation ´elev´e entre deux pixels va permettre la saturation de l’arˆete correspondante par le flot maximal et inversement, – les arˆetes horizontales (nomm´ees O sur la figure 2.5(b)) sont les arˆetes d’occlusion (O) qui contrˆolent la r´egularisation et permettent de limiter les variations de la surface de disparit´e selon le poids de la r´egularisation, – les arˆetes connect´ees `a la source ou au puits sont, quant `a elles, de capacit´e infinie. Toute solution Z = f(x) repr´esente une coupe minimale qui divise le graphe selon deux ensembles : – Z > f(x), c’est l’ensemble appel´e background dans la figure 2.5(a), – Z < f(x), c’est l’ensemble appel´e foreground dans la figure 2.5(a). On montre que le coˆut de la coupe minimale d´efinie pr´ec´edemment est calcul´e exactement par la formule pr´ec´edente (´equation 2.1). Ce probl`eme peut donc ˆetre formul´e comme un probl`eme de flot maximum pour lequel Cox et Roy proposent une solution optimis´ee [59]. Kolmogorov [63] a cependant montr´e que l’application des graph–cuts est soumise `a une condition dite de “sous–modularit´e” de la fonction d’´energie de r´egularisation. En effet, les poids des arˆetes du graphe doivent ˆetre forc´ement positifs de la source vers le puits afin que l’algorithme converge, cette condition se traduit par l’´equation suivante : Creg(0, 0) + Creg(1, 1) ≤ Creg(0, 1) + Creg(1, 0). (2.2) Avec Creg le coˆut d’affectation de deux labels binaires (0 ou 1) `a deux pixels voisins. Si l’´energie 512.2. OUTIL POUR LA RESOLUTION DE PROBL ´ EMES DE LABELLISATION ` de r´egularisation ne satisfait pas ces contraintes, la solution optimale ne peut ˆetre garantie. Cette contrainte peut limiter la gamme de fonctions de coˆut possible pour la r´esolution d’un probl`eme d’optimisation par graph–cuts. Autres approches d’optimisation globale Un autre algorithme, largement utilis´e pour l’optimisation globale est le belief propagation [39], [33] ou la version loopy belief propagation propos´ee par Felzenszwalb [43]. Cette m´ethode fonctionne par passage de “messages” entre le graphe d´efini par les quatre connexes d’un pixel. Chaque message est un vecteur de dimension ´egale au nombre de labels en jeu et fonction du coˆut minimum obtenu pour chaque label, consid´erant leurs probabilit´es sur les quatre connexes du pixel. Cependant, Kolmogorov montre que la convergence de cet algorithme n’est pas toujours assur´ee [64, 65] et la solution trouv´ee apparaˆıt souvent de plus haute ´energie que les graph–cuts et donc non optimale. De plus, le temps de calcul n´ecessaire reste particuli`erement long [64], bien que la variante de Felzenszwalb permette de r´eduire ce temps [43]. Une m´ethode proche du belief propagation a ´et´e r´ecemment introduite, le tree-reweighted message passing [65]. Cette m´ethode apparaˆıt moins gourmande en ´energie puisque les ”messages” ne sont plus pass´es entre un graphe form´e des quatre connexes mais `a travers un graphe form´e par un arbre. Kolmogorov [65] et Szeliski [64] ont montr´e que cette m´ethode ´etait plus efficace que les graph–cuts sur les jeux de test de Middelbury mais reste n´eanmoins plus lente que les graph–cuts. De mani`ere g´en´erale, les graph–cuts et autres m´ethodes d’optimisation globales n´ecessitent de tr`es grandes capacit´es m´emoire (notamment lorsque plusieurs labels sont en jeu) et sont alors difficilement applicables sur des images compl`etes de grande emprise telles que les images satellites tr`es haute r´esolution [42]. Les m´ethodes semi–globales D’autres proc´ed´es permettent la r´esolution de probl`emes d’optimisation, non pas en recherchant une solution exacte ou approch´ee au minimum global sur toute l’image simultan´ement mais en fonctionnant it´erativement sur la recherche de minimas locaux sur l’image `a partir de 52CHAPITRE 2. OUTILS ET METHODES N ´ ECESSAIRES ´ A LA CHA ` ˆINE DE TRAITEMENTS Figure 2.6 – Illustration d’un effet de streaking le long des lignes d’une image trait´ee par programmation dynamique. fonctions qui permettent une approximation de la fonction globale. L’avantage de ces m´ethodes est de r´eduire largement la complexit´e des probl`emes en les divisant en sous–probl`emes plus faciles et rapides `a r´esoudre [43]. La m´ethode la plus populaire est la programmation dynamique. Cette m´ethode est aujourd’hui appliqu´ee dans de nombreux domaines de traitement d’image [31, 34, 44, 66]. Appliqu´ee `a une image, l’id´ee de base de la programmation dynamique consiste `a optimiser une fonction d’´energie sur chacune des lignes ind´ependamment [34]. L’inconv´enient majeur de cette m´ethode est le manque de coh´erence entre chacune des lignes, cr´eant des effets de streaking ou artefacts lin´eaires, le long des lignes dans le r´esultat lorsqu’un label a tendance `a se propager le long de la ligne du fait de la r´egularisation spatiale. Ce ph´enom`ene est illustr´e sur le MNS pr´esent´e en figure 2.6 o`u la propagation de valeurs d’´el´evation le long des lignes, sans coh´erence avec les colonnes, est fortement marqu´ee. Afin de limiter ce probl`eme, plusieurs approches ont ´et´e d´evelopp´ees : Bobick et Intille [34], dans un contexte de mise en correspondance d’images, d´etectent pr´ealablement les contours de l’image et adaptent les coˆuts le long de ces contours afin d’aligner les disparit´es dans l’image finale. La difficult´e r´eside alors dans la d´etection pr´ecise des contours de l’image `a prendre en 532.2. OUTIL POUR LA RESOLUTION DE PROBL ´ EMES DE LABELLISATION ` compte. Ohta [67] proc`ede d’abord `a une recherche des disparit´es selon les lignes puis utilise les r´esultats obtenus afin de contraindre une recherche selon les colonnes de l’image. Les r´esultats obtenus sont alors additionn´es pour s´electionner la disparit´e finale de chaque pixel. Veksler [44] applique la programmation dynamique sur des structures en arbre, choisies en fonction des contours les plus importants de l’image. Cet algorithme permet alors de minimiser l’´energie selon deux dimensions afin de se rapprocher au mieux d’une optimisation globale. L’inconv´enient de cette m´ethode r´eside ici dans le choix des structures d’arbre utilis´ees et de leur initialisation. Hirschmuller [ ¨ 31] applique la programmation dynamique selon plusieurs directions sur l’image, ind´ependamment les unes des autres, puis additionne les coˆuts obtenus pour chaque label afin de calculer le coˆut final de chaque disparit´e pour chacun des pixels de l’image. Cet algorithme permet le calcul rapide de l’optimisation et prend en compte tout le voisinage des pixels puisque toutes les directions de l’image sont calcul´ees. Cette optimisation quasi globale est appel´ee le semi–global labelling [31, 42]. Schindler, [42] compare plusieurs m´ethodes de classification d’images bas´ees sur (i) un algorithme de graph–cuts tel que celui propos´e par Boykov [58], (ii) un algorithme de semi–global labelling bas´e sur la m´ethode de Hirschmuller [ ¨ 31] et (iii) des m´ethodes de classification locale, sans contrainte spatiale. Il apparaˆıt d’abord que les m´ethodes d’optimisation globales sont plus efficaces que les m´ethodes de classification locales : les r´esultats obtenus montrent une pr´ecision g´en´erale de classification de 70,5% `a 80% pour une m´ethode locale, 72% `a 80% pour une m´ethode semi-globale et de 72,5% `a 85% pour une m´ethode de graph–cuts. Cependant, si les m´ethodes graph–cuts pr´esentent la meilleure efficacit´e, Schindler observe que les m´ethodes de semi–global labelling montrent des performances tr`es proches tout en maintenant un temps de calcul inf´erieur, ce qui en fait une bonne alternative aux graph–cuts pour des labellisations sur de nombreuses ´etiquettes et une large emprise. Le semi–global labelling apparaˆıt donc comme une m´ethode d’optimisation suffisamment performante pour des questions de labellisation et tr`es adapt´ee dans un contexte de traitement 54CHAPITRE 2. OUTILS ET METHODES N ´ ECESSAIRES ´ A LA CHA ` ˆINE DE TRAITEMENTS rapide et automatique puisque ses performances en termes de temps de calcul et d’allocation m´emoire sont sup´erieures `a celles des m´ethodes globales. Ce type de m´ethode a donc ´et´e s´electionn´e pour la r´esolution des probl`emes de labellisation rencontr´es dans notre chaˆıne de traitements. 2.2.3 Description de l’algorithme s´electionn´e L’algorithme de programmation dynamique utilis´e dans ce travail est bas´e sur la programmation dynamique sur une s´equence, algorithme d´ecrit par Felzenszwalb [66]. Une s´equence correspond alors `a un sous–ensemble de pixels de l’image. Afin de r´eduire les effets de streaking de la programmation dynamique, les minimisations sont effectu´ees ind´ependamment sur plusieurs directions de l’image : lignes, colonnes, diagonales et directions interm´ediaires, telles que repr´esent´ees sur la figure 2.7 et selon la technique propos´ee par Hirschmuller et Pierrot-Deseilligny [ ¨ 31, 32]. Tous les coˆuts, obtenus par label pour chaque pixel et selon chaque direction sont ensuite fusionn´es afin d’obtenir la solution semi–globale sur toute l’image. De cette fa¸con, et en parall´elisant les calculs dans chaque direction, l’optimisation est effectu´ee efficacement selon un temps polynomial. Figure 2.7 – Illustration du parcours des diff´erentes directions pour la programmation dynamique afin de calculer le coˆut ”semi–global”. 552.2. OUTIL POUR LA RESOLUTION DE PROBL ´ EMES DE LABELLISATION ` Algorithme de minimisation selon une direction Soit une s´equence lin´eaire de pixels X = {x0, x1, ..., xi , ..., xf } le long d’une direction de l’image. Le but est d’assigner `a chacun des pixels xi un label n(xi) appartenant au jeu de labels N = {n 1 , n2 , ..., nz}, z ´etant le nombre total de labels. La solution S de labellisation sur la s´equence de x0 `a xf correspond alors `a la solution qui minimise les coˆuts de labellisation en chaque pixel de la s´equence, selon l’´equation : S(n(x0), ..., n(xf )) = Xxf x0 Cdata(x, n(xi)) + λ xX f−1 x0 Creg((xi , n(xi)),(xi+1, n(xi+1)). (2.3) Cdata(x, n(xi)) repr´esente la fonction d’attache au donn´ees, c’est la probabilit´e que le label n corresponde au pixel xi de la s´equence. Creg((xi , n(xi)),(xi+1, n(xi+1)) repr´esente le coˆut de r´egularisation entre deux pixels cons´ecutifs xi et xi+1 sur la s´equence et portant un label n. Cette fonction de r´egularisation est souvent calcul´ee selon le mod`ele de Potts [68] dans lequel le coˆut affect´e au label n est ´egal `a 0 si les deux labels cons´ecutifs sont identiques et 1 sinon (´equation 2.4). Creg((xi , n(xi)),(xi+1, n(xi+1))) =    0 if n(xi) = n(xi+1), 1 if n(xi) 6= n(xi+1). (2.4) Ce mod`ele est utilis´e lors de l’´etape de d´etection des changements (chapitre 4) mais nous verrons que les ´etapes de mise en correspondance (chapitre 3 section 3.1) et de fusion des MNS (section 3.3) n´ecessitent des fonctions de r´egularisation plus complexes. La variable scalaire λ repr´esente, quant `a elle, le poids accord´e `a la contrainte de r´egularisation : plus cette valeur est importante, plus la contrainte spatiale sera renforc´ee, c’est–`a–dire que le coˆut d’affectation d’un label, diff´erent du label pr´ec´edent, sera augment´e. En pratique, nous verrons que cette variable est d´efinie en fonction du r´esultat recherch´e qui doit ˆetre plus ou moins r´egulier selon le contexte. Le principe de l’algorithme est de calculer le meilleur chemin passant par chaque couple pixel–label (xi , nj ), selon un parcours de la s´equence de pixels de x0 `a xf . L’objectif est de 56CHAPITRE 2. OUTILS ET METHODES N ´ ECESSAIRES ´ A LA CHA ` ˆINE DE TRAITEMENTS Figure 2.8 – Illustration du calcul des coˆuts obtenus pour chaque label et chaque pixel de la s´equence selon l’´equation 2.5. Les fl`eches vertes repr´esentent chacun des coˆuts calcul´es, les fl`eches rouges repr´esentent le coˆut le plus faible obtenu entre un label d’un pixel et tous les labels du pixel pr´ec´edent. calculer, pour un couple pixel–label (xi , nj ), le coˆut pour le couple suivant (xi+1, nj ) (figure 2.8). Soit A(x0, nj ) le coˆut initial du label n j au pixel x0 de la position 0 est d´efini par : A(x0, nj ) = Cdata(x0, n). (2.5) A la position ` xi de la s´equence, le coˆut A(xi , nj ) pour lui assigner un label n j se calcule selon l’´equation suivante : A(xi , nj ) = Cdata(xi , nj ) + min nk  A(xi−1, nk ) + λCreg(n j , nk )  , (2.6) n j et n k deux labels appartenant au jeu de labels N. Ainsi, pour chacun des labels n j (j ∈ [1 : z]) propos´es `a chacun des pixels xi , le coˆut obtenu correspond `a tous les coˆuts cumul´es du chemin de x0 `a xi qui minimisent le coˆut en n j . Dans la figure 2.8, les fl`eches vertes repr´esentent tous les chemins possibles pour parvenir `a chacun des labels. Le chemin amenant le coˆut minimal en chaque label de chaque pixel est repr´esent´e par les fl`eches rouges. Une fois tous ces coˆuts calcul´es, le meilleur chemin de x0 `a xf correspond au chemin ayant 572.2. OUTIL POUR LA RESOLUTION DE PROBL ´ EMES DE LABELLISATION ` amen´e le label de coˆut minimal n j∗ xf au dernier pixel xf , tel que : n ∗ (xf ) = argmin n A(xf , n(xf ))). (2.7) La matrice finale contenant la somme des coˆuts de chacun des labels et pour chaque pixel est alors parcourue afin de retrouver le label amenant le coˆut minimal sur chaque pixel. G´en´eralisation de l’algorithme `a plusieurs directions Le coˆut semi–global est d´efini comme le coˆut de chaque label obtenu `a travers le sous–graphe d´etermin´e par toutes les directions calcul´ees dans l’image. Selon cette d´efinition, la minimisation est appliqu´ee sur des s´equences lin´eaires de pixels dans toutes les directions impos´ees et de fa¸con ind´ependante entre les s´equences comme illustr´e sur la figure 2.7. Les matrices de coˆuts, obtenues pour chaque pixel et selon chaque direction sont ensuite fusionn´ees afin d’obtenir un coˆut final pour chaque label et pour chaque pixel, tel que le d´ecrivent Hirschmuller et Pierrot-Deseilligny [ ¨ 31, 32]. Or, les coˆuts obtenus dans les matrices ne peuvent ˆetre directement comparables entre eux puisque les coˆuts sont cumul´es lors des parcours de chaque s´equence de pixels qui ne poss`edent pas forc´ement le mˆeme nombre de pixels. Afin de rendre possible cette comparaison de coˆut entre les labels d’un mˆeme pixel sur les diff´erentes directions, il est n´ecessaire de les recalculer selon une mˆeme ´echelle. Cette op´eration se traduit par le calcul de la distance `a la solution optimale de labellisation, C(nx) d sur toutes les s´equences obtenues, selon la formule : C(xi , n(xi))d = C(xi , n(xi)) − C(xi , n∗ (xi)). (2.8) Ces distances `a la solution optimale par label peuvent alors ˆetre additionn´ees pour chaque label et selon chacune des directions. Le label final n d∗ choisi pour chaque pixel xi et dans toutes les directions est finalement celui ayant le coˆut minimal, tel que : n d∗ (xi) = argmin n X dirs C(xi , n(xi))d . (2.9) Le nombre de directions peut avoir un impact important sur le r´esultat final. Cependant, `a partir d’un certain nombre de directions trait´ees, les diff´erences entre les r´esultats diminuent fortement, elles sont presque nulles au del`a de 12 directions. Or, le nombre de directions trait´ees 58CHAPITRE 2. OUTILS ET METHODES N ´ ECESSAIRES ´ A LA CHA ` ˆINE DE TRAITEMENTS augmente sensiblement le temps de calcul de la m´ethode, il est donc n´ecessaire de trouver le nombre de directions ad´equat afin d’obtenir le meilleur ´equilibre entre temps de calcul et pr´ecision du r´esultat. Dans la plupart des probl`emes trait´es dans ces travaux, un nombre de 8 ou 12 directions sera utilis´e. Une comparaison des r´esultats obtenus avec 1, 4, 8, 12 et 16 directions est pr´esent´ee dans le chapitre 5. 2.3 Conclusion La spatio–triangulation permet l’affinage des mod`eles g´eom´etriques des images afin de corriger les erreurs d’orientation et d’attitude dues `a une restitution imparfaite des informations sur la position du satellite, son orientation et sa direction de vis´ee lors de l’acquisition. L’objectif de cette op´eration, r´ealis´ee simultan´ement sur toutes les images disponibles, est de permettre un recalage relatif pr´ecis entre toutes ces donn´ees. Cette ´etape est r´ealis´ee `a l’aide d’outils existants permettant la recherche fiable de points homologues puis l’ajustement des faisceaux. Cependant, nous avons montr´e que des d´efauts, de capteur ou d’attitude, persistent dans les mod`eles affin´es. Ces erreurs peuvent n´eanmoins ˆetre acceptables lorsqu’elles restent sub– pixelliques comme c’est le cas pour les images WorldView-1 que nous utilisons. Le second outil que nous avons d´etaill´e, au cours de ce chapitre, est un algorithme de programmation dynamique que nous avons impl´ement´e et adapt´e pour le calcul de trois des traitements de la chaˆıne d´evelopp´ee au cours de cette th`ese : la mise en correspondance, la fusion des MNS et la d´etection des changements d’´el´evation. Cet algorithme de programmation dynamique a ´et´e s´electionn´e pour sa facilit´e d’impl´ementation par rapport `a d’autres m´ethodes d’optimisation globales classiques telles que les graph–cuts mais aussi et surtout pour la rapidit´e d’ex´ecution des calculs et son efficacit´e reconnue. 592.3. CONCLUSION 60Chapitre 3 G´en´eration de Mod`eles Num´eriques de Surface sur une grille r´eguli`ere `a partir de couples st´er´eoscopiques Comme nous l’avons vu dans le chapitre 1, de nombreuses techniques existent pour la g´en´eration de MNS en fonction des contraintes associ´ees aux donn´ees d’entr´ee et des sources d’erreurs `a prendre en compte. La strat´egie que nous avons choisie est bas´ee sur trois ´etapes de calcul. La premi`ere ´etape consiste en une mise en correspondance des images `a l’aide d’un outil existant, MicMac, et dont les options que nous utilisons seront d´ecrites dans une premi`ere partie de ce chapitre. Puis nous d´etaillerons la m´ethode que nous avons d´evelopp´ee afin de basculer les MNS sur une grille r´eguli`ere terrain tout en localisant et filtrant certaines erreurs de mise en correspondance. Dans une troisi`eme partie, nous pr´esenterons certaines erreurs de mise en correspondance non corrig´ees, notamment dues aux zones d’occlusion de l’image esclave et nous d´ecrirons la m´ethode que nous avons d´evelopp´ee pour r´esoudre ce probl`eme et am´eliorer la pr´ecision des MNS obtenus. Cette m´ethode est bas´ee sur la fusion des deux MNS g´en´er´es `a partir du mˆeme couple d’images st´er´eoscopiques par inversion des rˆoles maˆıtre et esclave des images. Nous d´etaillerons notamment l’algorithme permettant cette fusion `a travers la labellisation des pixels du MNS final, contrˆol´ee par une contrainte de r´egularisation spatiale. 613.1. DESCRIPTION DE LA STRATEGIE DE MISE EN CORRESPONDANCE ADOPT ´ EE´ Puis, dans une derni`ere partie, nous analyserons les r´esultats obtenus `a travers la comparaison des MNS g´en´er´es avec une v´erit´e LiDAR, acquise `a une date proche de nos donn´ees satellites, sur la ville de Christchurch en Nouvelle-Z´elande. 3.1 Description de la strat´egie de mise en correspondance adopt´ee 3.1.1 Technique de mise en correspondance La m´ethode de mise en correspondance d’images que nous avons s´electionn´ee est bas´ee sur la g´eom´etrie image (repr´esent´ee figure 1.1(b), p34). Comme cit´e dans le chapitre 1, section 1.2.3, cette g´eom´etrie ne n´ecessite pas le r´e–´echantillonnage complet de l’image en g´eom´etrie ´epipolaire et se montre plus robuste que la g´eom´etrie terrain aux erreurs g´eom´etriques des images ainsi qu’aux zones d’occlusion lorsque seulement deux images sont en jeu [48]. Cette robustesse est un avantage certain pour notre chaˆıne de traitements dans laquelle toute erreur de MNS (planim´etrique ou altim´etrique) peut avoir des cons´equences sur la carte finale des changements de la sc`ene. Le principe de la g´eom´etrie image r´eside dans le parcours des lignes de vis´ee des pixels dont la mod´elisation a ´et´e affin´ee lors de l’´etape de spatio-triangulation (chapitre 2,section 2.1). Pour chacun des pixels de l’image maˆıtre (g´en´eralement l’image la plus au nadir) et de coordonn´ees xM(lM, cM), la ligne de vis´ee est parcourue de fa¸con discr`ete avec un pas altim´etrique d´etermin´e par l’utilisateur. Chaque pas d´efinit un point P dans l’espace, de coordonn´ees (Px, Py, Pz). La ligne de vis´ee de l’image esclave passant par ce point de l’espace est alors d´etermin´ee `a partir du mod`ele g´eom´etrique inverse de l’image esclave et le pixel correspondant dans cette image, de coordonn´ee (lE, cE) est localis´e. La corr´elation entre les pixels est alors effectu´ee `a travers des fenˆetres de corr´elation centr´ees sur chacun des pixels de l’image maˆıtre et de l’image esclave et de taille sp´ecifi´ee par l’utilisateur (ici une fenˆetre de rayon R = 2 pixels est utilis´ee). L’imagette de l’image esclave est alors r´e–´echantillonn´ee dans la g´eom´etrie de l’imagette maˆıtre. Lorsque le pixel homologue est s´electionn´e, on obtient alors, pour le pixel consid´er´e dans l’image maˆıtre, une valeur directe de 62CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ l’altitude du point. Toutefois, la g´en´eration de MNS dans la g´eom´etrie de l’image maˆıtre pr´esente un inconv´enient. En effet, puisque la recherche de l’´el´evation est r´ealis´ee `a partir de l’image maˆıtre, la carte des ´el´evations est g´en´er´ee dans la g´eom´etrie de l’image maˆıtre et il est alors n´ecessaire de les r´e–´echantillonner dans une nouvelle grille g´eographique r´eguli`ere afin que les MNS produits `a partir de diff´erentes images maˆıtre soient comparables entre eux pixel `a pixel. 3.1.2 Fonction d’optimisation et r´egularisation Parmi les m´ethodes d’optimisation impl´ement´ees dans l’outil MicMac, nous avons choisi une m´ethode bas´ee sur la programmation dynamique, notamment pour des raisons de temps de calcul (cf. chapitre 2 section 2.2.2). L’´equation g´en´erale de cette optimisation est pr´esent´ee en section 2.2.3 Lors de la mise en correspondance, les labels correspondent `a toutes les ´el´evations z test´ees et le coˆut d’attache aux donn´ees Cdata(xMi , z(xMi )), c’est–`a–dire le coˆut pour assigner une ´el´evation z `a un pixel xMi de l’image maˆıtre, est une fonction du score de corr´elation obtenu entre le pixel de l’image maˆıtre xMi et le pixel homologue trouv´e dans l’image esclave xE. Il est ici calcul´e avec le NCC (´equation 3.1) : Cdata(xMi , z(xMi )) = NCC(xMi , xE). (3.1) Soit deux vecteurs uM et uE constitu´es de l’ensemble des q valeurs des vignettes de corr´elation centr´ees en xMi et en xE, respectivement. p ds w est une fonction de pond´eration, w ∈ [1 : q]. Pour chaque vecteur uM de valeurs Uw, on pose : R(uM) = Pq w=1 p ds P w Uw n w=1 p ds w (3.2) La d´efinition est identique pour chaque vecteur VE de valeurs Vw. Le coefficient de corr´elation s’´ecrit : NCC(uM, vE) = R(uMvM) − R(uM)R(vE) q (R(u 2 M) − R(uM) 2) ∗ (R(v 2 E ) − R(vE) 2) (3.3) Lors de la g´en´eration de MNS, la r´egularisation a pour but de limiter les variations d’altitude. Ainsi, cette fonction est calcul´ee `a partir de la diff´erence d’altitude obtenue entre deux pixels 633.1. DESCRIPTION DE LA STRATEGIE DE MISE EN CORRESPONDANCE ADOPT ´ EE´ cons´ecutifs de l’image maˆıtre xMi et xMi−1 selon l’´equation suivante : Creg((xMi , z(xMi )),(xMi−1 , z(xMi−1 ))) = f(| z(xMi) − z(xMi−1) |). (3.4) (a) Carte des ´el´evations d’un couple WorldView-1, r´egularisation λ = 0.02. (b) Carte des ´el´evations d’un couple WorldView-1, r´egularisation λ = 1.0. Figure 3.1 – Illustration de l’impact de la r´egularisation pour la g´en´eration de MNS. Le param`etre de r´egularisation est un param`etre particuli`erement important dans la g´en´e- 64CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ ration des MNS puisqu’il contrˆole les variations d’altitudes des MNS g´en´er´es. En effet, plus sa valeur est importante, plus le poids de la r´egularisation spatiale sera important, faisant disparaˆıtre les structures les plus fines (et le bruit) du MNS et flouter les bords de bˆatiments. Ce ph´enom`ene est bien repr´esent´e en figure 3.1(b). Inversement, une faible r´egularisation va permettre d’observer les variations plus fines d’altitude (et ainsi de s´eparer les bˆatiments tr`es proches les uns des autres), mais en augmentant la pr´esence de bruit (figure 3.1(a)). Ainsi, en milieu urbain, milieu dans lequel les discontinuit´es et les variations fines d’´el´evation doivent ˆetre respect´ees afin d’obtenir un MNS pr´ecis au niveau des bˆatiments, la r´egularisation est d´efinie `a une valeur faible, de mˆeme pour un milieu fortement escarp´e. Inversement, en milieu rural, d´esertique ou vallonn´e, la r´egularisation peut ˆetre largement augment´ee. L’outil MicMac permet d’adapter ais´ement ce param`etre qui fait ainsi partie des param`etres de notre chaˆıne de traitements. 3.1.3 Prise en compte des zones d’occlusion La m´ethode choisie pour la prise en compte des zones d’occlusion est bas´ee sur une localisation post–traitement, apr`es la g´en´eration de la carte d’´el´evation de la sc`ene en g´eom´etrie image. En effet, lors du r´e–´echantillonnage de la carte des ´el´evations sur une grille r´eguli`ere, ´etape dite de “basculement”, nous avons d´evelopp´e une m´ethode permettant de localiser ces zones en fonction des angles d’acquisition de l’image maˆıtre et de la pr´esence de discontinuit´es. Le basculement a ainsi un rˆole majeur dans la g´en´eration du MNS final. 3.2 D´eveloppement d’une m´ethode de basculement des MNS sur une grille g´eographique r´eguli`ere Comme pr´ecis´e pr´ec´edemment, selon cette technique de mise en correspondance, la carte des ´el´evations est calcul´ee dans la g´eom´etrie de l’image maˆıtre. Afin de comparer des cartes d’´el´evations obtenues sur une mˆeme zone selon diff´erentes dates, diff´erents capteurs ou mˆeme selon diff´erentes techniques de g´en´eration de MNS, il est n´ecessaire de r´e–´echantillonner ces cartes d’´el´evations selon une grille terrain r´eguli`ere et commune `a toutes les cartes produites. C’est l’´etape de basculement. G´en´eralement, ce r´e–´echantillonnage est effectu´e par interpolation des points de la grille 653.2. DEVELOPPEMENT D’UNE M ´ ETHODE DE BASCULEMENT DES MNS SUR UNE ´ GRILLE GEOGRAPHIQUE R ´ EGULI ´ ERE ` r´eguli`ere. Ainsi, l’´el´evation de chacun des points de cette grille r´eguli`ere est interpol´ee `a partir des coordonn´ees terrain des trois points les plus proches de lui provenant de la carte des ´el´evations calcul´ee. Pour ce faire, les pixels de la grille image sont parcourus par triplets. Cette technique d’interpolation est la plus commune, notamment parce que la maille d’origine est une maille carr´ee. Le basculement que nous proposons est aussi bas´e sur une interpolation des points de la grille r´eguli`ere `a partir du nuage de points form´e par la carte des ´el´evations en g´eom´etrie image. Mais, avant chaque interpolation d’un point de la grille `a partir des points les plus proches, certaines conditions sont v´erifi´ees afin de d´eterminer si le point est valide et peut ˆetre calcul´e ou non. Ces conditions reposent sur des contraintes g´eom´etriques permettant la d´etection des fa¸cades et des zones d’occlusion et une contrainte qualitative sur le score de corr´elation obtenu lors de la mise en correspondance. Elles ont pour but de limiter les erreurs sur le MNS final produit. 3.2.1 Interpolation des points de la grille r´eguli`ere L’´etape de basculement repose sur une interpolation de l’´el´evation de chacun des points de la grille r´eguli`ere `a partir des trois points les plus proches formant un triangle autour du pixel consid´er´e, le syst`eme est illustr´e en figure 3.2. Ce triplet de point provient du nuage de points obtenu lors de la mise en correspondance et dont les coordonn´ees planim´etriques ont ´et´e calcul´ees grˆace aux mod`eles g´eom´etriques des images. Les pixels de l’espace image, consid´er´es par triplets, de coordonn´ees ligne l et colonne c tel que P I 1 = (l, c), P I 2 = (l, c+ 1) et P I 3 = (l + 1, c) correspondent alors `a des coordonn´ees x y et z dans l’espace terrain T tel que P E 1 = (x1, y1, z1), P E 2 = (x2, y2, z2) et P E 3 = (x3, y3, z3) (sommets des triangles noirs sur la figure 3.2). Si un point de la grille terrain r´eguli`ere (en rouge sur la figure 3.2) se situe `a l’int´erieur du triangle, les points de coordonn´ees P = (xP , yP , zP ) sont alors interpol´es par une interpolation lin´eaire `a partir des coordonn´ees des trois sommets du triangle P E 1 , P E 2 et P E 3 . 66CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ Figure 3.2 – Principe de parcours de la grille image maˆıtre pour l’interpolation des points de la grille r´eguli`ere. 3.2.2 Conditions au calcul de l’´el´evation d’un point Les images ayant ´et´e acquises avec un angle d’incidence pouvant ˆetre fort, deux difficult´es doivent ˆetre consid´er´ees : – les fa¸cades de bˆatiments, visibles sur l’image maˆıtre, g´en`erent plusieurs points d’´el´evations diff´erentes mais avec les mˆemes coordonn´ees planim´etriques, – les zones d’occlusion des images doivent ˆetre localis´ees afin de ne pas interpoler les points correspondants. Pour le premier cas, lors du calcul de l’´el´evation d’un point situ´e `a l’int´erieur d’un triangle d’interpolation tel que le point P de la figure 3.2, si il apparaˆıt qu’une ´el´evation a d´ej`a ´et´e d´etermin´ee `a ces mˆemes coordonn´ees planim´etriques, cela peut signifier que ce point appartient `a une fa¸cade de bˆatiment. En effet, le long d’une fa¸cade, les points poss`edent les mˆemes coordonn´ees planim´etriques mais des coordonn´ees altim´etriques diff´erentes. Dans ce cas, seul le point correspondant `a l’´el´evation maximum trouv´e doit ˆetre pris en compte, ceci afin de retrouver l’´el´evation la plus haute du bˆatiment (son toit). Cette technique de recherche de la plus haute ´el´evation d’un objet est connue sous le nom de Z-Buffer dans la litt´erature [69]. 673.2. DEVELOPPEMENT D’UNE M ´ ETHODE DE BASCULEMENT DES MNS SUR UNE ´ GRILLE GEOGRAPHIQUE R ´ EGULI ´ ERE ` Pour le second cas, les zones d’occlusion doivent ˆetre localis´ees afin de ne pas interpoler les points de ces zones ce qui entraˆınerait des erreurs. Dans ce but, nous avons mis en place une technique de d´etection des zones d’occlusion bas´ee sur leur localisation `a partir de l’analyse des angles d’acquisition (´el´evation et azimut) de l’image maˆıtre. La figure 3.3 illustre le principe de localisation utilis´e. Sur la figure 3.3, les points P E 1 , P E 2 et P E 3 repr´esentent les points dans l’espace terrain correspondant `a un triplet de pixels de l’image maˆıtre. Le point P correspond au point de la grille r´eguli`ere `a interpoler. Dans une premi`ere ´etape, les deux points du triplet de points correspondant `a l’´el´evation maximum et minimum dans le triangle sont d´etermin´es, si la diff´erence d’´el´evation Dh obtenue sur le triangle est inf´erieure `a 1 m (r´esolution altim´etrique des MNS), le point P de la grille terrain situ´e dans le triangle peut ˆetre calcul´e directement car le terrain est consid´er´e comme quasiment plat `a cet endroit. Si une diff´erence d’´el´evation plus importante est relev´ee, il est alors n´ecessaire de d´efinir si une zone d’occlusion est pr´esente `a cet endroit et quelle est son emprise afin de d´ecider si le triangle est viable pour le calcul d’un point. En premier lieu, on d´efinit le point le plus ´elev´e (P E 1 dans la figure 3.3) et le plus bas (point P E 3 ) du triplet de points. La droite DM reliant la projection de P E 1 , P E′ 1 sur le plan horizontal et le point P E 3 est calcul´ee. Cette droite repr´esente la distance au sol entre le point le plus haut et le point le plus bas. Puis, les angles d’azimut a et d’incidence i sont d´efinis pour le point P E 1 . On d´etermine alors la droite Di , projection sur le plan horizontal du vecteur d´efini dans l’espace par les angles d’azimut et d’incidence au point P E 1 . La droite Di repr´esente alors l’orientation et la longueur au sol de la zone d’occlusion. Le vecteur DM pr´ec´edemment obtenu est alors projet´e sur le vecteur Di en un vecteur Dx. Cette projection permet de situer le triplet de points consid´er´es en fonction de la zone d’occlusion, i.e si les vecteurs sont oppos´es le point peut ˆetre calcul´e car il n’y a pas de zone d’occlusion (sur l’image maˆıtre). Si les vecteurs sont dans le mˆeme sens et que Dx est plus grand que Resplani 2 , Resplani ´etant la r´esolution planim´etrique du MNS, alors le point ne peut pas ˆetre calcul´e car il 68CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ Figure 3.3 – Illustration du principe de l’interpolation d’une grille r´eguli`ere terrain `a partir des points obtenus dans la g´eom´etrie de l’image maˆıtre. se situe dans la zone d’occlusion de l’image maˆıtre. Ce principe permet la localisation rapide des zones d’occlusion qui pourront alors ˆetre prises en compte dans la suite des calculs. Enfin, une derni`ere contrainte sur le basculement consiste `a ne pas prendre en compte, dans le calcul, les pixels de la carte des ´el´evations dont le score de corr´elation final, obtenu lors de la mise en correspondance, est inf´erieur `a un certain seuil. L’objectif est ici de filtrer les points pour lesquels la corr´elation a ´echou´e, toujours afin de limiter les erreurs sur le MNS final. Ce seuil sur le score de corr´elation est d´efini ici `a 2σ, σ ´etant l’´ecart–type obtenu `a l’histogramme des scores de corr´elation. Cette valeur est g´en´eralement proche de 0, 45. La figure 3.4(b) illustre le r´esultat d’un basculement d’une carte des ´el´evations pr´esent´ee en figure 3.4(a) obtenue `a partir d’un couple d’images WorldView-1 `a 60 cm de r´esolution spatiale. Sur la carte bascul´ee, les pixels noirs repr´esentent les zones masqu´ees lors du basculement, que 693.2. DEVELOPPEMENT D’UNE M ´ ETHODE DE BASCULEMENT DES MNS SUR UNE ´ GRILLE GEOGRAPHIQUE R ´ EGULI ´ ERE ` (a) Carte des ´el´evations en g´eom´etrie image (b) Carte des ´el´evations en g´eom´etrie terrain Figure 3.4 – Illustration du r´esultat du basculement d’un MNS WorldView-1 `a partir de la carte des ´el´evations en g´eom´etrie image. 70CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ ce soit `a cause des zones d’occlusion de l’image maˆıtre ou d’un score de corr´elation trop faible. Il faut noter que lors de toutes les ´etapes suivantes de notre chaˆıne de traitements, ces points ne sont jamais interpol´es `a partir de leurs voisins. En effet, leur interpolation serait susceptible de produire des erreurs dans le MNS, erreurs pouvant se r´epercuter dans la carte finale de d´etection de changements. Cette technique de localisation des zones d’occlusion est bas´ee uniquement sur une analyse g´eom´etrique, post´erieure au calcul des ´el´evations par mise en correspondance. Son principal inconv´enient est de produire de nombreuses fausses zones d’occlusion. Ces erreurs proviennent le plus souvent d’erreurs de corr´elation dans la carte des ´el´evations originale. En effet, une erreur de corr´elation g´en`ere, par d´efinition, une ´el´evation erron´ee et donc souvent une variation d’´el´evation entre deux pixels voisins, qui ne repr´esente pas la r´ealit´e. Dans la m´ethode de d´etection des zones d’occlusion, cette variation est assimil´ee `a la pr´esence d’un bˆatiment et la zone `a proximit´e de la variation d’´el´evation est alors consid´er´ee comme une zone d’occlusion. Ainsi, de nombreux pixels du MNS bascul´es peuvent ˆetre masqu´es sans pour autant faire partie d’une zone d’occlusion. Sur des zones homog`enes de l’image, toit de bˆatiment large et lisse par exemple tel que celui du bˆatiment carr´e encercl´e dans la figure 3.4(a), on observe de nombreuses petites zones noires masqu´ees. Ces zones masqu´ees proviennent tr`es probablement de pixels dont le score de corr´elation se situait en dessous du seuil fix´e. Dans les sections et chapitres suivants, ces zones d’occlusion et de mauvaise corr´elation d´etect´ees et masqu´ees lors du basculement seront regroup´ees et cit´ees sous le terme de “masque du MNS“. Ce masque de MNS sera pris en compte lors de toutes les ´etapes suivantes de la chaˆıne de traitements. 713.3. AMELIORATION DES MNS : D ´ EVELOPPEMENT D’UNE M ´ ETHODE DE FUSION ´ DES MNS 3.3 Am´elioration des MNS : d´eveloppement d’une m´ethode de fusion des MNS 3.3.1 Erreurs des MNS asym´etriques Les figures 3.5(a) et 3.5(c) pr´esentent les r´esultats de deux MNS calcul´es `a partir du mˆeme couple st´er´eoscopique mais avec inversion des rˆoles maˆıtre et esclave de chaque image. Sur ces images, les pixels noirs repr´esentent les zones masqu´ees car appartenant `a des zones d’occlusion ou des zones de faible score de corr´elation, calcul´ees lors du basculement (section 3.2). De fa¸con g´en´erale, les deux MNS produits `a partir du mˆeme couple st´er´eoscopique sont tr`es similaires. On note, pour une zone de 2000 × 2000 pixels sur un couple d’image WorldView-1 acquis en 2008 sur la ville de Phoenix, une diff´erence moyenne de 0,004 m avec un ´ecart–type de 1,76 m. Cet ´ecart-type r´esulte typiquement du bruit provenant de mauvaises corr´elations ou de zones d’occlusion ayant g´en´er´e des erreurs lors de la mise en correspondance des images, erreurs ensuite r´epercut´ees sur les MNS bascul´es. On observe que, selon le MNS (et donc selon l’angle d’acquisition de l’image maˆıtre), les zones d’occlusion sont g´er´ees et masqu´ees plutˆot au sud (figure 3.5(a)) ou au nord (figure 3.5(c)) des bˆatiments. De plus, comme d´etaill´e pr´ec´edemment, certaines erreurs de corr´elation ont g´en´er´e des variations d’´el´evation dans la carte des ´el´evations qui ont elles–mˆemes g´en´er´e des occlusions virtuelles lors du basculement. Ces erreurs ´etant variables d’un MNS `a l’autre, les zones d’occlusion g´en´er´ees sont aussi variables entre les MNS. Enfin, des erreurs importantes de corr´elation sont visibles dans les MNS. Ces erreurs sont variables en amplitude et en localisation selon le MNS, elles sont notamment visibles `a proximit´e des bˆatiments et encercl´ees en rouge sur la figure 3.5(a). Afin d’obtenir un MNS coh´erent et le plus pr´ecis possible, la solution propos´ee est de calculer les deux cartes d’´el´evation provenant du mˆeme couple avec inversion des rˆoles maˆıtre et esclave des images puis de fusionner ces MNS, pr´ealablement bascul´es dans la mˆeme g´eom´etrie. L’objectif de cette fusion est de garder le maximum d’informations correctes provenant de l’un ou l’autre des MNS. 72CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ (a) MNS1, couple st´er´eoscopique WorldView-1 du 24/06/2008. (c) MNS2, couple st´er´eoscopique WorldView-1 du 24/06/2008. Figure 3.5 – MNS asym´etriques provenant du mˆeme couple d’images st´er´eoscopiques. 733.3. AMELIORATION DES MNS : D ´ EVELOPPEMENT D’UNE M ´ ETHODE DE FUSION ´ DES MNS 3.3.2 M´ethode de fusion des MNS asym´etriques Plusieurs techniques peuvent ˆetre employ´ees pour la fusion des deux MNS. Une technique consiste `a calculer, pour chaque pixel, la moyenne entre les deux valeurs obtenues. Si l’une des deux valeurs appartient `a un des masques de MNS calcul´es lors du basculement, alors le pixel du MNS final est lui–mˆeme enregistr´e dans le masque final du MNS. Ce masque final repr´esente alors l’union des deux masques g´en´er´es pour chaque MNS. Un r´esultat de cette fusion est pr´esent´e figure 3.6(c). Sur cette figure, les erreurs de corr´elation encercl´ees pr´ec´edemment n’ont pas ´et´es corrig´ees, on observe mˆeme que le MNS fusionn´e poss`ede toutes les erreurs provenant de chacun des MNS. De mˆeme, le masque final, union des deux masques des MNS est plus cons´equent que les masques de chacun des MNS. Cette fusion par la moyenne entraˆıne donc la perte qualitative et quantitative d’information par rapport `a chacun des MNS source. Afin de mieux prendre en compte les erreurs d’´el´evation de l’un ou l’autre des MNS tout en utilisant toute l’information spatiale correcte de chacun des MNS (c’est–`a–dire en limitant les erreurs et les zones masqu´ees), nous proposons de r´esoudre la fusion `a l’aide d’une contrainte de r´egularisation spatiale. La m´ethode propos´ee est bas´ee sur un probl`eme de labellisation permettant d’obtenir le MNS final : `a chaque pixel xi du MNS final est attribu´e un label m provenant du jeu de label M ∈ {MNS1, MNS2, Occlusion}. La valeur du pixel attribu´ee au MNS final est alors celle qui correspond au label s´electionn´e. Les labels MNS1 et MNS2 correspondent, pour chaque pixel, aux valeurs d’´el´evation calcul´ees lors de la g´en´eration de l’un ou l’autre MNS, tandis que le label Occlusion correspond `a un label occlusion, attribu´e au pixel lorsque aucune valeur de MNS ne paraˆıt coh´erente. Le choix d’un label, pour chacun des pixels du MNS final est effectu´e `a partir des diff´erentes donn´ees obtenues `a la g´en´eration des MNS. Ces donn´ees sont : – le Normalized Cross Correlation Coefficient, NCC(pr´esent´e en section 3.1.2 et d’´equation 3.3) obtenu lors de la mise en correspondance des images pour chacun des pixels (et r´e– ´echantillonn´e dans la mˆeme g´eom´etrie que le MNS lors de l’´etape de basculement, section 74CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ (a) MNS1. (b) MNS2. (c) R´esultat de la fusion des MNS par une moyenne et l’intersection des zones d’occlusion. Figure 3.6 – MNS provenant du mˆeme couple st´er´eoscopique et r´esultat de leur fusion par la moyenne. 753.3. AMELIORATION DES MNS : D ´ EVELOPPEMENT D’UNE M ´ ETHODE DE FUSION ´ DES MNS 3.2), – la diff´erence d’´el´evation obtenue entre les deux MNS pour le mˆeme pixel, – la r´egularisation spatiale qui d´epend de la variation d’altitude entre deux pixels cons´ecutifs dans le MNS final. Le NCC est une donn´ee importante qui permet ici de donner un indice de confiance `a l’altitude d´elivr´ee par chaque pixel de chacun des MNS : plus le NCC est important, plus la probabilit´e que la corr´elation soit correcte en ce pixel est ´elev´ee. La comparaison des NCC provenant de chaque MNS permet alors d’indiquer quelle valeur de MNS paraˆıt la plus pertinente. De mˆeme, la diff´erence obtenue entre les valeurs de MNS sur un mˆeme pixel permet de localiser des zones de mauvaise corr´elation ou d’occlusion. En effet, l’´el´evation obtenue en un pixel doit ˆetre sensiblement la mˆeme pour les deux MNS, une diff´erence d’´el´evation correspond alors g´en´eralement `a une erreur sur l’un ou les deux MNS. C’est le principe utilis´e par les techniques de back matching pour la d´etection des zones d’occlusion [49], [33]. Enfin, la pr´esence d’une contrainte de r´egularisation spatiale permet de lisser le MNS final. Comme d´etaill´e au chapitre 2, section 2.2.1, ce probl`eme de labellisation peut ˆetre r´esolu par une minimisation d’´energie dont l’algorithme est d´ecrit en section 2.2.3 et l’´equation g´en´erale est de type : E(n) = X x∈X Cdata(n(x)) + X (x′)∈V (x) Creg(n(x), n(x ′ )). (3.5) Nous rappelons que chaque MNS poss`ede d´ej`a son propre masque, calcul´e lors de l’´etape de basculement d´ecrit en section 3.2. Les pixels appartenant `a ce masque doivent alors ˆetre pris en compte lors du calcul du MNS final par fusion. Ainsi, la valeur de tous les pixels de chaque MNS et correspondant `a un masque est d´efinie `a −9999 lors de cette ´etape de fusion. Les valeurs correspondantes dans la carte des NCC sont, elles, d´efinies `a 0. Nous d´etaillerons tout au long de cette section, comment ces pixels sont pris en compte dans la fusion. Dans cette ´etape de fusion, la fonction d’attache aux donn´ees, CData(xi , m(xi)), pour les labels MNS1 et MNS2 d´epend du coefficient de corr´elation (NCC) obtenu `a la g´en´eration des 76CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ MNS : plus ce coefficient est important pour le label consid´er´e m au pixel xi , plus la probabilit´e du label est ´elev´ee en ce pixel. Concernant le label Occlusion, la fonction d’attache aux donn´ees d´epend du NCC maximum obtenu entre les deux NCC correspondant `a chacune des valeurs de MNS en pr´esence et de la diff´erence calcul´ee entre les deux valeurs de MNS au pixel xi . Ainsi, lorsque l’un ou les deux MNS obtiennent un score de corr´elation important, leur coˆut d’attache aux donn´ees est faible tandis que celui du label Occlusion est fort car il est calcul´e comme ´etant l’inverse du maximum de corr´elation obtenu. La probabilit´e du label Occlusion est donc faible au pixel xi . Le choix entre les labels MNS1 et MNS2 d´epend alors de chacun de leur coefficient de corr´elation et de la r´egularisation. Ce cas est repr´esent´e par un chemin de fl`eches vertes en larges pointill´es sur la figure 3.7. L’´equation 3.6 r´esume le calcul des attaches aux donn´ees pour chacun des labels : CData(xi , m(xi)) =    1 − NCC(xi , m(xi)) si m ∈ {MNS1, MNS2}, max[NCC(xi , MNS1), NCC(xi , MNS2)] + F1(xi) si m ∈ {Occlusion}. (3.6) Dans la fonction d’attache aux donn´ees du label Occlusion, la fonction F1(xi) correspond `a la valeur absolue de la diff´erence d’´el´evation relev´ee au pixel xi et normalis´ee entre 0 et 1 tel que : F1(xi) = 1 1 + e−L(|Z(xi,MNS1)−Z(xi,MNS2)|−t1) . (3.7) Le param`etre L est d´efini `a 1. Cette fonction, non lin´eaire, permet d’affecter un coˆut suffisamment faible pour les diff´erences sup´erieures `a un seuil t1 d´efini `a 5 m, diff´erences consid´er´ees ici comme importantes et donc pouvant provenir d’une occlusion. Des diff´erences plus faibles peuvent en revanche provenir d’une faible erreur sur l’un des MNS qui ne doit pas pour autant privil´egier le label Occlusion mais plutˆot le label MNS le plus pertinent, en particulier si le NCC correspondant est fort. C’est pourquoi le NCC maximum est int´egr´e dans la fonction d’attache aux donn´ees du label Occlusion : plus le maximum NCC est fort, plus la probabilit´e d’une occlusion est faible. Dans le cas o`u l’une des valeurs de MNS au pixel xi correspond au masque natif du MNS, 773.3. AMELIORATION DES MNS : D ´ EVELOPPEMENT D’UNE M ´ ETHODE DE FUSION ´ DES MNS par exemple pour le MNS2, on obtient : NCC(xi , MNS2) = 0 et MNS2(xi) = −9999, donc : CData(xi , MNS1) = 1 − NCC(x, MNS1), CData(xi , MNS2) = 1, CData(xi , Occlusion) = NCC(x, MNS1) + 0. (3.8) Le pixel xi peut alors ˆetre labellis´e MNS1 ou bien Occlusion selon la valeur de NCC obtenue en xi pour le MNS1. C’est le chemin repr´esent´e en fl`eches violettes et en petits pointill´es dans la figure 3.7. Dans le cas o`u les valeurs des deux MNS en xi appartiennent aux masques d’occlusion on obtient : CData(xi , MNS1) = 1, CData(xi , MNS2) = 1, CData(xi , Occlusion) = 1. (3.9) Dans ce cas particulier, la valeur du MNS final en xi est forc´ement ´egale `a 0 (puisque tous les labels en pr´esence correspondent `a une valeur `a 0) et le label s´electionn´e d´epend alors seulement du terme de r´egularisation. C’est le chemin repr´esent´e en fl`eches oranges et lignes pleines dans la figure 3.7. La fonction de r´egularisation est d´efinie telle que : CReg((xi , m(xi)),(xi+1, m(xi+1))) = C R, (3.10) avec C R le terme de r´egularisation qui d´epend de la diff´erence absolue entre les valeurs d’´el´evations Z(xi , m(xi)) et Z(xi+1, m(xi+1)) obtenues par les labels m pour deux pixels cons´ecutifs xi et xi+1. Ce terme est calcul´e ainsi : C R =    F2(| Z(xi , m(xi)) − Z(xi+1, m(xi+1)) |) si m(xi) et m(xi+1) ∈ {MNS1, MNS2}, β si m(xi) ∈ {MNS1, MNS2} et m(xi+1) ∈ {Occlusion}, γ si m(xi) ∈ {Occlusion}. (3.11) avec F2 d´efinie par : F2(| Z(xi , m(xi)) − Z(xi+1, m(xi+1)) |) = 1 1 + e−L(|Z(xi,m(xi))−Z(xi+1,m(xi+1))|−t2) . (3.12) 78CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ Le param`etre L est d´efini `a 1. La valeur t2 de la fonction F2 est ici pos´ee `a 2.5 m (valeur seuil utilis´ee dans la m´ethode de d´etection de changements). L’objectif de cette fonction est de normaliser les diff´erences d’´el´evations entre 0 et 1 afin que les valeurs de coˆut obtenues pour chaque label soient comparables entre elles. F2 est une fonction de r´egularisation entre deux labels de pixels cons´ecutifs et permet ainsi de lisser le MNS final car la valeur du label choisi est alors celle qui se rapproche le plus de la valeur voisine. L’utilisation d’une fonction sigmo¨ıde permet de donner des coˆuts similaires aux labels amenant des variations d’´el´evation proches et ainsi ´eviter une fonction seuil qui attribuerait des coˆuts ´egaux `a 0 ou 1 et orienterait alors trop fortement le choix final du label. Lors du calcul de la fonction de r´egularisation : – lorsque l’une des deux valeurs cons´ecutives appartient `a l’un des masques natifs des MNS, le coˆut calcul´e par la fonction F2 est alors proche de 1, coˆut ´elev´e permettant de limiter la probabilit´e de ce label, – lorsque les deux valeurs de pixels correspondent aux masques natifs des MNS, F2 est alors ´egal `a 0. Les coˆuts de labellisation sont alors similaires en ce pixel pour les deux MNS. Les variables β et γ correspondent `a des valeurs fix´ees `a une valeur moyenne de coˆut (β = 0.5 et γ = 0.5). Ces valeurs, tr`es lˆaches, permettent d’attribuer des coˆuts neutres aux labels consid´er´es, le coˆut final du label d´epend alors principalement de l’attache aux donn´ees. La figure 3.7 pr´esente un sch´ema r´ecapitulatif qui illustre l’orientation du choix de chacun des labels en fonction des donn´ees d’entr´ee (NCC et valeur de MNS) et des fonctions d’attache aux donn´ees utilis´ees. Sur la figure 3.7, les carr´es bleus clair indiquent les labels gagnants pour lesquels le coˆut attribu´e est le plus faible en fonction du calcul de l’attache aux donn´ees mais aussi en fonction de la r´egularisation. Les labels entour´es en rouge repr´esentent les labels impossibles pour chacun des cas d´ecrits. En pratique, il est `a noter que les fonctions d’attache aux donn´ees, de mˆeme que la r´egularisation, ne privil´egient que rarement le label Occlusion. Cette caract´eristique n’est cependant pas un inconv´enient puisque l’objectif est de diminuer les occlusions, et notamment 793.3. AMELIORATION DES MNS : D ´ EVELOPPEMENT D’UNE M ´ ETHODE DE FUSION ´ DES MNS les fausses occlusions provenant d’erreurs de corr´elation, et les pixels de faible NCC afin de privil´egier les valeurs correctes de chacun des MNS. De mˆeme, on note que des coˆuts tr`es similaires peuvent ˆetre affect´es aux deux labels MNS. Or, comme pr´ecis´e pr´ec´edemment, en de nombreux pixels des MNS, les ´el´evations calcul´ees sont tr`es proches car il n’y avait pas d’ambigu¨ıt´es dans la mise en correspondance. Dans ce cas, l’affectation de l’une ou l’autre valeur des MNS n’a pas d’impact r´eel sur le MNS final. La figure 3.8(c) pr´esente le r´esultat obtenu par la fusion par labellisation des deux MNS produits `a partir du mˆeme couple st´er´eoscopique. Bien que toujours globalement similaire aux MNS, ce r´esultat ne pr´esente plus les erreurs importantes de corr´elation encercl´ees pr´ec´edemment. Figure 3.7 – Sch´ema r´ecapitulatif de la proc´edure de fusion des MNS en fonction des valeurs initiales et de l’attache aux donn´ees. 80CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ (a) MNS1 (b) MNS2 (c) R´esultat de la fusion par optimisation avec r´egularisation spatiale. Figure 3.8 – 3.8(a) et 3.8(b) : MNS calcul´es `a partir du mˆeme couple st´er´eoscopique et r´esultats de leur fusion par optimisation globale 3.8(c). 813.4. QUALITE ET PR ´ ECISION DES MNS OBTENUS ´ Elles ont pu ˆetre supprim´ees grˆace `a cette m´ethode de fusion. De plus, les zones masqu´ees sont r´eduites par rapport `a la fusion par la moyenne pr´esent´ee en figure 3.6(c), permettant d’obtenir un r´esultat contenant une plus grande quantit´e d’informations car c’est la somme des informations pertinentes des MNS1 et MNS2. Enfin, il est `a noter que, bien que ces zones masqu´ees puissent ˆetre interpol´ees `a partir des valeurs qui les entourent, nous avons choisi de ne pas le faire afin de ne pas g´en´erer d’erreurs d’interpolation qui pourraient engendrer des erreurs dans la carte finale des changements d’´el´evation. Ces zones sont alors consid´er´ees comme des zones de “non–information” et prises en compte lors de la d´etection des changements d’´el´evation. 3.4 Qualit´e et pr´ecision des MNS obtenus Afin d’observer l’apport de la m´ethode de g´en´eration des MNS par fusion par rapport `a la g´en´eration de MNS asym´etriques par mise en correspondance simple, le MNS g´en´er´e sur la ville de Christchurch (Nouvelle-Z´elande) est compar´e avec une v´erit´e terrain obtenue avec un LiDAR. Ce LiDAR 1 a ´et´e acquis en 2011, ann´ee d’acquisition des images WorldView-2 sur la mˆeme zone (voir tableau 1.1, chapitre 1, section 1.4). La comparaison a ´et´e effectu´ee sur une zone commune entre le LiDAR et les MNS d’environ 2300 × 2600 pixels. 3.4.1 Co–localisation LiDAR et MNS Le LiDAR dont nous disposons a ´et´e r´e–´echantillonn´e `a 1 m de r´esolution spatiale. Comme discut´e dans le chapitre 2, section 2.1, les images ayant permis la g´en´eration des MNS ont ´et´e affin´ees simultan´ement permettant leur co–localisation pr´ecise entre elles et ainsi, la co–localisation pr´ecise entre les MNS. Cependant, cette co–localisation est effectu´ee en relatif et la localisation absolue des mod`eles n’est pas garantie. Ainsi, les MNS et le LiDAR ne peuvent ˆetre nativement co–localis´es (on observe des biais 1. Pour des raisons de confidentialit´e, le LiDAR et les informations associ´ees ne peuvent ˆetre pr´esent´es dans ce manuscrit. Nous nous excusons pour cette restriction aupr`es des lecteurs. 82CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ jusqu’`a 12 m en longitude et 25 m en latitude entre le MNS et le LiDAR). Afin de permettre la comparaison pr´ecise entre le LiDAR et les MNS, il est alors n´ecessaire de recaler ces donn´ees entre elles. Cette op´eration est effectu´ee de fa¸con classique, en prenant des points de liaison entre les donn´ees (ces points sont s´electionn´es au milieu des toits afin d’obtenir une meilleure pr´ecision). L’erreur r´esiduelle sur ces points est d’environ 0,7 pixels RMS (erreur moyenne quadratique). Puis, un mod`ele de d´eformation affine du MNS est calcul´e en fonction de ces points de liaison afin d’obtenir un MNS recal´e (au pixel pr`es) sur le LiDAR. 3.4.2 Crit`eres de qualit´e La comparaison entre le LiDAR et les MNS a ´et´e effectu´ee `a plusieurs niveaux : une diff´erence globale a ´et´e r´ealis´ee entre les donn´ees afin d’observer le bruit de ces derni`eres. Puis, une comparaison a ´et´e effectu´ee entre les zones masqu´ees des MNS afin d’observer les erreurs r´esiduelles sur ces zones et leurs diff´erences entre le MNS asym´etrique et le MNS fusionn´e. Enfin, la comparaison de profils s´electionn´es sur les diff´erentes donn´ees va permettre d’observer comment les structures telles que les bords de bˆatiments, les toits mais aussi les zones homog`enes sont g´er´ees dans les MNS. Diff´erence globale Dans un premier temps, l’image des diff´erences entre le LiDAR et le MNS asym´etrique (MNS obtenu `a partir de la g´eom´etrie image puis bascul´e dans un espace terrain)a ´et´e calcul´ee. La moyenne des diff´erences obtenue est d’environ −0, 4 m avec un ´ecart–type d’environ 3, 1 m. Cet ´ecart–type est particuli`erement important et illustre le bruit pr´esent dans le MNS. La diff´erence calcul´ee entre le MNS fusionn´e (par la technique d´ecrite en section 3.3) montre, elle, une moyenne d’environ −0, 25 m avec un ´ecart–type d’environ 2, 4 m. Ces valeurs, largement plus faibles que les r´esultats obtenus avec le MNS asym´etrique attestent que la proportion d’erreur a diminu´e sur le MNS fusionn´e. 833.4. QUALITE ET PR ´ ECISION DES MNS OBTENUS ´ Diff´erences entre les masques des MNS asym´etrique et fusionn´e Les zones masqu´ees sur le MNS asym´etrique et pas sur le MNS fusionn´e, ou inversement, repr´esentent les zones o`u la probabilit´e d’erreur est la plus forte. Dans la section 3.3, nous expliquons que la fusion de deux MNS g´en´er´es `a partir du mˆeme couple st´er´eoscopique, mais avec inversion des rˆoles maˆıtre et esclave, permet de prendre en compte les zones d’occlusion situ´ees sur les deux images du couple st´er´eoscopique. Cependant, nous avons pu noter, dans la section 3.2, que les erreurs de corr´elation g´en´er´ees lors de la mise en correspondance peuvent engendrer des fausses zones d’occlusion. Ainsi, le masque du MNS fusionn´e peut contenir des pixels faussement enregistr´es comme occlusion. La comparaison de la taille de ces masques donne une premi`ere id´ee sur la qualit´e des MNS et la pr´ecision des masques : en effet, on observe que 19,3% des pixels appartenant au MNS asym´etrique sont enregistr´es dans le masque, tandis que cette quantit´e baisse `a 15,5% pour le MNS fusionn´e. Cette diff´erence indique qu’une plus petite quantit´e de pixels a ´et´e enregistr´ee dans le masque du MNS fusionn´e. Ce ph´enom`ene est paradoxal puisque le MNS fusionn´e permet d’enregistrer les occlusions appartenant aux deux images du couple st´er´eoscopique au contraire du MNS asym´etrique. On peut donc en d´eduire que le masque du MNS fusionn´e est plus pr´ecis sur les zones d’occlusion et limite le nombre de pixels masqu´es. De plus, les masques des MNS prennent aussi en compte les scores de corr´elation les plus faibles obtenus lors de la mise en correspondance. Or, nous avons vu que la fusion des MNS permet de r´eduire le nombre de pixels masqu´es `a cause de ce seuil. En effet, lorsqu’un pixel est masqu´e dans l’un des MNS mais poss`ede un score de corr´elation suffisamment ´elev´e dans l’autre MNS tout en r´epondant `a la contrainte de r´egularisation, cette valeur de pixel est alors privil´egi´ee dans le MNS final plutˆot que la valeur masqu´ee. Ces contraintes de calcul sur le MNS final permettent ainsi de r´eduire les zones masqu´ees. Afin de comparer la qualit´e des masques des MNS asym´etrique et fusionn´e, tous les pixels enregistr´es dans un masque pour l’un des MNS et ayant une valeur d´efinie dans l’autre MNS, sont compar´es avec la v´erit´e LiDAR. 84CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ (a) Histogramme des diff´erences entre le LiDAR et les pixels masqu´es dans le MNS fusionn´e mais d´efinis dans le MNS asym´etrique (b) Histogramme des diff´erences entre le LiDAR et les pixels masqu´es dans le MNS asym´etrique mais d´efinis dans le MNS fusionn´e Figure 3.9 – 3.9(a) et 3.9(b) : Histogrammes des cartes de diff´erences calcul´ees entre le liDAR et le MNS asym´etrique et MNS fusionn´e, respectivement. L’histogramme pr´esent´e en figure 3.9(a) int`egre les pixels masqu´es dans le MNS fusionn´e et ayant une valeur d’´el´evation d´efinie dans le MNS asym´etrique. Ces pixels repr´esentent 11,9% de l’image. On observe une moyenne des diff´erences entre ces valeurs dans le MNS asym´etrique et le LiDAR de −2, 32 m avec un ´ecart–type de 6, 14 m. L’histogramme confirme cette tendance de fortes diff´erences entre ces valeurs et le LiDAR. Nous pouvons ainsi en d´eduire que ces valeurs d´efinies dans le MNS asym´etrique mais pas dans le MNS fusionn´e repr´esentent principalement des erreurs d’´el´evation du MNS asym´etrique. L’histogramme pr´esent´e en figure 3.9(b) correspond aux pixels masqu´es dans le MNS asym´etrique mais ayant une valeur d´efinie dans le MNS fusionn´e. On recense 8% des pixels de l’image appartenant `a cette cat´egorie. La diff´erence calcul´ee entre ces pixels appartenant au MNS fusionn´e et la v´erit´e LiDAR est en moyenne de −1, 1 m avec un ´ecart–type de 3, 9 m. Ces chiffres montrent un r´esultat bien meilleur sur ces pixels bien que des erreurs subsistent. Ce r´esultat indique qu’un grand nombre de ces pixels, recens´es dans le masque du MNS asym´etrique, poss´edaient en r´ealit´e une altitude d´efinie et correcte, car proche du LiDAR, dans l’autre MNS asym´etrique. Ces valeurs sont donc maintenant des valeurs correctes dans le MNS 853.4. QUALITE ET PR ´ ECISION DES MNS OBTENUS ´ fusionn´e. Cependant, certaines erreurs r´esiduelles pourraient ˆetre corrig´ees, par exemple, grˆace `a l’utilisation de plus de deux images st´er´eoscopiques afin d’am´eliorer la pr´ecision de ce masque. Comparaison de profils d’´el´evation Les figures 3.10(a) et 3.10(b) permettent de comparer des profils d’´el´evation obtenus entre le LiDAR, le MNS asym´etrique et le MNS fusionn´e. Ce profil, qui s’´etend sur une distance de 1000 m (la r´esolution spatiale des pixels ´etant de 1 m), montre de nombreux bˆatiments, de hauteurs variables entre 4 et 9 m environ. Globalement, les profils des MNS asym´etrique et fusionn´e suivent la tendance du profil LiDAR, on observe cependant un biais entre le LiDAR et les MNS, ces derniers pr´esentent en effet une altitude plus faible de plusieurs dizaine de centim`etres d’apr`es la zone basse entre 1900 m et 2100 m. Ce biais est aussi visible sur les bˆatiments situ´es entre 1800 m et 1900 m. Ce biais reste n´eanmoins dans la r´esolution altim´etrique donn´ee pour les MNS qui est de 1 m. On observe, malgr´e le bruit pr´esent sur les MNS, que le toit gondol´e du bˆatiment situ´e entre 2100 m et 2200 m est particuli`erement bien rendu dans les deux MNS. De mˆeme, les bˆatiments, pourtant proches les uns des autres entre 1700 m et 1800 m apparaissent tr`es bien d´emarqu´es. On note que le MNS asym´etrique semble g´en´erer un bruit plus important, avec de plus fortes variations d’´el´evations, que celui g´en´er´e par le MNS fusionn´e. Les bords de bˆatiment (correspondant `a des zones d’occlusion) sont aussi mieux g´er´es par le MNS fusionn´e. En effet, on observe, notamment pour les bˆatiments entre 2100 m et 2300 m, que le MNS asym´etrique a tendance `a ´elargir les bˆatiments et `a g´en´erer des ´el´evations tr`es fortes aux abords des bˆatiments. Ce ph´enom`ene est corrig´e dans le MNS fusionn´e dans lequel tous les bords de bˆatiments sont supprim´es car consid´er´es comme des zones d’occlusion. Ce comportement montre l’int´erˆet de g´erer les zones d’occlusion dans les MNS puisque des bords de bˆatiments ´elargis sont de fortes sources de fausses alarmes dans la carte finale des changements. 86CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ (a) Comparaison des profils LiDAR et MNS asym´etrique. (b) Comparaison des profils LiDAR et MNS fusionn´e. Figure 3.10 – Profils d’´el´evation compar´es entre le MNS asym´etrique (en vert), le MNS fusionn´e (en bleu) et le Lidar (en rouge). 3.5 Application au cas de la multi–st´er´eoscopie L’algorithme que nous avons d´evelopp´e pr´ec´edemment permet le calcul d’un MNS pr´ecis `a partir d’un couple st´er´eoscopique. Or, les nouveaux satellites tels que Pl´eiades permettent aujourd’hui l’acquisition d’images en n–uplet st´er´eoscopiques, avec n ∈ [2 : 25] pour Pl´eiades. Chaque image est alors acquise avec un angle d’incidence et d’azimut diff´erent. Dans ce cas, il est n´ecessaire de prendre en compte tout ou partie des images produites pour le calcul d’un MNS. L’algorithme de fusion des MNS est alors une solution int´eressante pour g´erer les n-uplets st´er´eoscopiques. 873.5. APPLICATION AU CAS DE LA MULTI–STER´ EOSCOPIE ´ Dans ce contexte, la solution propos´ee est la cr´eation de tous les MNS possibles provenant de la mise en correspondance de toutes les images 2 `a 2 avec inversion des rˆoles maˆıtre et esclave et la fusion de tous les MNS obtenus afin de calculer un MNS final. Pour un n–uplet st´er´eoscopique, le nombre de MNS `a g´en´erer est alors de NMNS = n ∗ (n − 1). Le nombre de labels pr´esents dans la fusion est ensuite ´egal au nombre total des MNS g´en´er´es, additionn´e du label Occlusion. Dans le calcul de la fusion, effectu´e selon l’algorithme d´ecrit pr´ec´edemment, la seule diff´erence notable est le calcul de l’attache aux donn´ees pour le label Occlusion (´equation 3.6). Dans le cas de la st´er´eoscopie simple, il est n´ecessaire de calculer la diff´erence entre les deux valeurs de MNS obtenues au mˆeme pixel xi . Dans le cas de la multi–st´er´eoscopie, le nombre de MNS en jeu ´etant sup´erieur `a 2, toutes les diff´erences entre les MNS g´en´er´es sont calcul´ees et l’attache aux donn´ees est alors fonction de la diff´erence minimale obtenue (en dehors des diff´erences ´egales `a 0 qui proviennent de la diff´erence entre deux masques de MNS). Ce choix d’utiliser la diff´erence minimum est orient´e par le fait qu’en un pixel, les valeurs de MNS doivent ˆetre similaires. Ainsi, plus des valeurs seront proches, plus la probabilit´e que les valeurs de MNS soient pertinentes est ´elev´ee. La figure 3.12 pr´esente le r´esultat du calcul d’un MNS `a partir de deux images d’un triplet st´er´eoscopique 3.12(a) et des trois images du triplet 3.12(b). Ce triplet d’images Pl´eiades a ´et´e acquis sur la ville de Toulouse en mai 2012 (figure 3.11(a)). La figure 3.11(b) permet de montrer les conditions d’acquisition de ce triplet. Dans cette figure, la position d’un point sur le p´erim`etre du cercle repr´esente l’angle d’azimut de l’acquisition de l’image consid´er´ee tandis que la position sur le rayon du cercle repr´esente l’angle d’incidence de l’acquisition. Selon cette figure, on observe que le triplet st´er´eoscopique a ´et´e acquis avec un angle d’incidence assez ´elev´e (environ 25˚) et selon un seul passage du satellite. Ce syst`eme d’acquisition n’apparaˆıt pas id´eal pour limiter les zones d’occlusion puisque les angles azimutaux des trois images sont particuli`erement proches entre eux. En effet, le MNS calcul´e `a partir de deux images contient de nombreuses zones masqu´ees `a cause des nombreuses zones d’occlusion, particuli`erement importantes du fait des angles d’acquisition des images, mais aussi des erreurs de corr´elation (sur les toits de bˆatiments, par exemple). Tandis 88CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ (a) Partie d’une image panchromatique du triplet st´er´eoscopique Pl´eiades acquis sur la ville de Toulouse le 07/05/2012. (b) Illustration de la g´eom´etrie d’acquisition du triplet st´er´eoscopique. Figure 3.11 – Illustration du triplet st´er´eoscopique Pl´eiades acquis sur la ville de Toulouse. 893.5. APPLICATION AU CAS DE LA MULTI–STER´ EOSCOPIE ´ (a) Toulouse, MNS fusionn´e `a partir d’un couple st´er´eoscopique. (b) Toulouse, MNS fusionn´e `a partir d’un triplet st´er´eoscopique. Figure 3.12 – MNS calcul´es `a partir de 2 images puis 3 images du mˆeme uplet st´er´eoscopique. 90CHAPITRE 3. GEN´ ERATION DE MOD ´ ELES NUM ` ERIQUES DE SURFACE SUR UNE ´ GRILLE REGULI ´ ERE ` A PARTIR DE COUPLES ST ` ER´ EOSCOPIQUES ´ que le MNS tri-st´er´eoscopiques apparaˆıt beaucoup plus lisse et seules les vraies zones d’occlusion (zones vues par aucune des images), situ´ees, comme attendues, au nord–ouest des bˆatiments, sont masqu´ees. De fa¸con quantitative, on observe que sur le MNS form´e `a partir de deux images st´er´eoscopiques, 19,2% des valeurs du MNS appartiennent au masque tandis que sur le MNS obtenu avec le triplet st´er´eoscopique complet, seule 8,3% des valeurs appartiennent au masque. Ce r´esultat montre l’apport de la multi–st´er´eoscopie pour la g´en´eration des MNS, mˆeme lorsque les conditions d’acquisition st´er´eoscopiques ne sont pas id´eales, c’est–`a–dire que les images ne sont pas acquises selon des angles d’azimut tr`es diff´erents. Cette comparaison permet de d´emontrer non seulement la capacit´e de la m´ethode pour la multi–st´er´eoscopie mais aussi le fort int´erˆet de la multi-st´er´eoscopie pour la pr´ecision des MNS. 3.6 Conclusion La m´ethode de g´en´eration d´evelopp´ee dans notre chaˆıne de traitements est bas´ee sur trois ´etapes de calcul. La premi`ere est la mise en correspondance des images, selon une g´eom´etrie image et donc bas´ee sur le calcul de l’´el´evation de tous les points d’une image maˆıtre, calcul effectu´e par l’outil MicMac. La seconde ´etape est le basculement des ´el´evations, de la g´eom´etrie image `a une g´eom´etrie terrain d´efinie. Cette op´eration, d´evelopp´ee au cours de cette th`ese, a permis de mettre en place une meilleure gestion des points terrain situ´es dans des zones d’occlusion de l’image maˆıtre, et de filtrer les points dont le score de corr´elation est particuli`erement bas. Cette technique de mise en correspondance ´etant asym´etrique, les erreurs dues notamment aux zones d’occlusion de l’image esclave ne sont pas prises en compte. La troisi`eme ´etape de calcul a donc pour objectif de g´en´erer un MNS final dans lequel les zones d’occlusion appartenant `a l’une ou l’autre des images du couple sont prises en compte tout en limitant les erreurs ponctuelles de corr´elation pr´esentes sur l’un des MNS seulement. Pour cela, la mise en correspondance est r´ealis´ee deux fois, avec inversion des images maˆıtre et esclave et les MNS obtenus sont fusionn´es selon une technique formul´ee comme un probl`eme de labellisation dans lequel les labels de chaque pixel correspondent aux valeurs de chacun des MNS en pr´esence ou `a un label occlusion. Ce probl`eme est alors r´esolu `a partir de l’algorithme de programmation dynamique impl´ement´e, dont les fonctions de coˆuts ont ´et´e adapt´ees afin de privil´egier les meilleurs coefficients de corr´elation 913.6. CONCLUSION obtenus et les valeurs permettant de lisser les variations du MNS final. Tous les param`etres et seuils de la m´ethode compl`ete de g´en´eration des MNS sont r´esum´es dans le tableau 3.1. La comparaison des MNS r´esultats avec un LiDAR acquis sur la mˆeme zone a permis de pr´esenter l’apport de cette fusion de MNS par rapport `a un MNS asym´etrique, notamment envers les zones d’occlusion ou les zones de mauvaise corr´elation. Enfin, nous avons montr´e que cette m´ethode et l’algorithme d´evelopp´e ´etaient parfaitement adaptables au cas de la multi–st´er´eoscopie quels que soient les angles d’acquisition des images. Etape Param`etre impact sur le r´esultat Valeur recommand´ee MicMac R´egularisation Impact important D´epend de la zone trait´ee : des MNS sur les variations du MNS en milieu urbain λ = 0.02 Nombre de direction Impact mod´er´e d`es 12 directions de calcul 12 directions Basculement R´esolution de la grille Impact sur la r´esolution 2 fois la r´esolution terrain du MNS du r´esultat native des images Seuil sur le score de Impact sur la qualit´e du 2σ corr´elation MNS r´esultat Fusion Seuil t1 Impact sur la quantit´e D´epend des scores de corr´elation de pixels d´efinis en label occlusion obtenus t1 5 m Seuil t2 Impact faible D´efini `a 2,5 m sur la r´egularisation du MNS β et γ Impact faible D´efinies arbitrairement `a 0,5 Nombre de directions Impact tr`es mod´er´e G´en´eralement pos´e `a 12 de calcul sur le r´esultat R´egularisation Impact mod´er´e D´efini exp´erimentalement `a 5,0 sur la r´egularisation du MNS Table 3.1 – Tableau de synth`ese des param`etres de la m´ethode compl`ete de g´en´eration des MNS. 92Chapitre 4 D´eveloppement d’une m´ethode de d´etection des changements d’´el´evation La derni`ere ´etape de la chaˆıne de traitements, d´evelopp´ee au cours de cette th`ese, consiste `a d´etecter les changements d’´el´evation r´eels et pertinents de la sc`ene. Dans un contexte urbain, ces changements correspondent `a toutes les constructions, destructions ou modifications de bˆatiments ou d’infrastructures apparues entre les deux dates d’int´erˆet. La m´ethode employ´ee pour la d´etection de changement est bas´ee sur l’analyse de la diff´erence des MNS obtenus pour les dates t1 et t2. Cependant, `a la diff´erence de Tian [26] qui filtre le MNS diff´erentiel `a partir d’op´erations morphologiques et de connaissances a priori sur les tailles et formes des objets recherch´es, notre analyse est bas´ee sur une classification par une m´ethode d’optimisation semi–globale des pixels de l’image. Dans cette section, nous pr´esenterons tout d’abord l’int´erˆet du filtrage du MNS diff´erentiel pour la mise en ´evidence des changements d’´el´evation puis nous d´etaillerons la m´ethode que nous avons d´evelopp´ee afin de mettre en ´evidence les changements les plus pertinents. 934.1. CALCUL ET ANALYSE DU MNS DIFFERENTIEL ´ 4.1 Calcul et analyse du MNS diff´erentiel Comme d´ecrit dans le sch´ema global de la chaˆıne de traitements (chapitre 1, section 1.3, figure 1.2), une fois les MNS g´en´er´es pour les dates t1 et t2, leur diff´erence dMNS est calcul´ee telle que : dMNS = MNSt2 − MNSt1 . (4.1) Ainsi, les constructions apparues entre t1 et t2 apparaissent avec des pixels de valeurs positives sur le MNS diff´erentiel tandis que les destructions correspondent `a des valeurs n´egatives. L’union des zones masqu´ees de chacun des MNS, sont, quant `a elles d´efinies `a z´ero dans le MNS diff´erentiel. Cependant, certaines erreurs r´esiduelles de corr´elation restent attach´ees `a chacun des MNS, comme nous l’avons illustr´e dans le chapitre 3, section 3.4 lors de la comparaison avec la v´erit´e LiDAR et ce, malgr´e l’am´elioration de la pr´ecision des MNS. Ces erreurs de corr´elation proviennent le plus souvent de la mise en correspondance sur des zones difficiles telles que : – les structures 3D complexes comme celles de la v´eg´etation, – les zones homog`enes ou tr`es p´eriodiques, – les bords de bˆatiments, – les cibles mobiles, – les zones d’occlusion. Or, toute erreur dans un des MNS peut g´en´erer une diff´erence d’´el´evation potentiellement importante dans le MNS diff´erentiel et ainsi provoquer une fausse d´etection dans la carte finale des changements. La seule segmentation du MNS diff´erentiel ne permet donc pas de mettre en ´evidence les changements pertinents d’´el´evation dans le bˆati car le nombre d’alarmes de d´etection provenant des erreurs du MNS est alors trop grand. Les figures 4.1(a) et 4.1(b) repr´esentent les MNS obtenus sur la ville de Phoenix aux dates t1 = 2008 et t2 = 2011. La figure 4.2(a) montre le MNS diff´erentiel calcul´e `a partir de ces deux MNS. Enfin, la figure 4.2(b) pr´esente un exemple de seuillage du MNS diff´erentiel. Sur cet exemple toutes les diff´erences d’´el´evation inf´erieures `a -2,5 m sont repr´esent´ees en rouge et celle sup´erieures `a 2,5 m, en bleu. 94CHAPITRE 4. DEVELOPPEMENT D’UNE M ´ ETHODE DE D ´ ETECTION DES ´ CHANGEMENTS D’EL´ EVATION ´ (a) MNS ombr´e calcul´e `a partir des images WorldView-1 de 2008. (b) MNS ombr´e calcul´e `a partir des images WorldView-1 de 2011. Figure 4.1 – 4.1(a) et 4.1(b) MNS de 2008 et 2011 calcul´es sur la zone 1 d´efinie sur la ville de Phoenix. 954.1. CALCUL ET ANALYSE DU MNS DIFFERENTIEL ´ (a) MNS diff´erentiel calcul´e `a partir des MNS 2008 et 2011. (b) MNS diff´erentiel segment´e `a 2,5 m (changements positifs en bleus) et `a -2,5 m (changements n´egatifs en rouge). Figure 4.2 – 4.2(a) MNS diff´erentiel. 4.2(b) MNS diff´erentiel seuill´e. 96CHAPITRE 4. DEVELOPPEMENT D’UNE M ´ ETHODE DE D ´ ETECTION DES ´ CHANGEMENTS D’EL´ EVATION ´ Notons que ce seuil `a 2,5 m repr´esente le seuil que nous utiliserons pour toutes les d´etections de changements effectu´ees `a partir des MNS calcul´es `a 1 m de r´esolution altim´etrique et planim´etrique. Ce seuil correspond `a la hauteur standard d’un ´etage de bˆatiment et paraˆıt tout `a fait adapt´e pour la r´esolution des MNS (1 m de r´esolution altim´etrique et planim´etrique). Sur cette figure, de tr`es nombreuses alarmes de changements sont visibles. Ces alarmes de changements, souvent repr´esent´ees par quelques pixels, sont r´eparties sur toute l’image. Les changements r´eels et pertinents du bˆati sont pourtant ais´ement rep´erables (pour les plus importants) sur la carte seuill´ee. En effet, ces changements sont g´en´eralement repr´esent´es par des amas de pixels, homog`enes spatialement et bien d´elimit´es contrairement au bruit. C’est pourquoi, nous avons choisi de mettre en ´evidence ces changements pertinents `a partir d’une technique de classification r´esolue `a travers une optimisation globale du MNS diff´erentiel, associ´ee `a une contrainte de r´egularisation spatiale. Cette technique permet en effet de prendre en compte la coh´erence locale du MNS diff´erentiel afin d’´eliminer le bruit tout en conservant les changements coh´erents du bˆati. 4.2 M´ethode de d´etection des changements La m´ethode choisie pour la d´etection des changements d’´el´evation consiste en une classification des pixels du MNS diff´erentiel. A chaque pixel est attribu´e un label ` r provenant du jeu de labels R et qui correspond `a un changement positif (construction), `a un changement n´egatif (destruction) ou `a un non–changement, en fonction de sa valeur mais aussi de celle des ses voisins afin de satisfaire la contrainte de r´egularisation spatiale (R ∈ {Changementpositif, Changementngatif, Nonchangement}). Ce probl`eme s’apparente alors aux probl`emes d’optimisations globales, introduits dans le chapitre 2.2, et r´esolus `a partir de l’´equation g´en´erale 2.2.3. La fonction d’attache aux donn´ees utilis´ee dans cette optimisation, CData(xi , r(xi)), correspond au coˆut pour attribuer un label r au pixel xi du MNS diff´erentiel, i ´etant la valeur de 974.2. METHODE DE D ´ ETECTION DES CHANGEMENTS ´ diff´erence d’´el´evation au pixel xi . Ce coˆut, pour chaque label, d´epend de la valeur de diff´erence d’´el´evation obtenue dans le MNS diff´erentiel et normalis´ee par une fonction sigmo¨ıde (repr´esent´ee en figure 4.3). Il est d´efini par : CData(xi , r(xi)) =    1 1+exp−L(|i|−T ) si r(xi) = {non changement}, 1 − 1 1+exp−L(i−T ) si r(xi) = {changement positif}, 1 − 1 1+exp−L(−i−T ) si r(xi) = {changement n´egatif}. (4.2) Dans l’´equation 4.2, le param`etre T est fix´e `a 2,5 m, seuil de la d´etection de changements d´efini pr´ec´edemment. La normalisation des valeurs du MNS diff´erentiel dans la fonction d’attache aux donn´ees permet de rendre comparable entre eux les coˆuts obtenus par un pixel et pour chaque label. Si de nombreuses techniques permettent la normalisation des valeurs, nous avons choisi une fonction sigmo¨ıde qui permet un seuillage ”flexible” des coˆuts de chacun des labels selon la valeur du pixel. En effet, une fonction concave (ou “marche”) calculerait un coˆut `a 0 ou `a 1 sans aucun interm´ediaire pour chaque label, une fonction lin´eaire, au contraire, ne serait pas suffisamment d´eterminante pour des valeurs de pixels trop diff´erentes du seuil fix´e. Tandis que la fonction sigmo¨ıde permet un seuillage plus doux. Le param`etre L est li´e `a la courbure de la fonction sigmo¨ıde. La figure 4.3 pr´esente diff´erentes sigmo¨ıdes calcul´ees avec des valeurs de L allant de L = 1, 0 `a L = 4, 0. D’apr`es cette figure, on observe que la valeur de L s´electionn´ee permet d’obtenir des coˆuts diff´erents de 0 et 1 pour des valeurs de diff´erence d’´el´evation situ´ees entre 0,5 m et 4,5 m tandis qu’une valeur de L plus forte telle que L = 4, 0 restreint ce seuillage `a des valeurs de diff´erences entre 1,0 m et 4,0 m. Au contraire, une valeur de L plus faible n’est pas suffisamment restrictive car on observe alors des valeurs de coˆut encore importantes (et donc une probabilit´e plus faible de changements positifs) pour une diff´erence d’´el´evation de 4,0 m qui est pourtant une diff´erence d’´el´evation non n´egligeable. Le param`etre L a ainsi ´et´e choisi `a L = 3, 0, cette valeur paraˆıt plus adapt´ee aux diff´erences d’´el´evation recherch´ees. 98CHAPITRE 4. DEVELOPPEMENT D’UNE M ´ ETHODE DE D ´ ETECTION DES ´ CHANGEMENTS D’EL´ EVATION ´ Figure 4.3 – Fonction sigmo¨ıde permettant le calcul des coˆuts d’attache aux donn´ees pour le label changement positif. Les quatre courbes illustrent les r´esultats pour diff´erentes valeurs de L utilis´ees. Il faut noter cependant que l’impact de L sur le r´esultat final est plutˆot faible. Nous rappelons que tous les pixels appartenant `a l’un ou l’autre des masques des MNS g´en´er´es `a t1 et t2 sont d´efinis `a z´ero dans le MNS diff´erentiel. Leur probabilit´e de changement est donc fix´ee `a z´ero tandis que leur probabilit´e de non–changement est tr`es ´elev´ee. Le label de ces pixels n’est cependant pas fix´e de fa¸con d´efinitive, ainsi, selon la r´egularisation employ´ee et le voisinage de ces pixels, leur labellisation en changement est autoris´ee si les conditions sont favorables. Le terme de r´egularisation, CReg((xi , r(xi)),(xi+1, r(xi+1))) correspond `a un coˆut de transition seulement et calcul´e selon le mod`ele de Potts [68]. Ce terme d´epend ainsi de la variation de labels entre deux pixels cons´ecutifs xi et xi+1 de la s´equence. Il est d´efini par : C T ((xi , r(xi)),(xi+1, r(xi+1))) =    0 si r(xi) = r(xi+1) 1 si r(xi) 6= r(xi+1) (4.3) Enfin, le param`etre λ repr´esente, dans ce contexte, une variable particuli`erement importante puisqu’elle d´efinit le poids accord´e `a la fonction de r´egularisation par rapport `a celui de la 994.3. CONCLUSION fonction d’attache aux donn´ees. Plus cette valeur est ´elev´ee, plus la contrainte de r´egularisation sera importante et aura tendance `a supprimer les variations fines de labels et donc les alarmes de changements les plus petites spatialement et inversement. Le param`etre λ permet alors le contrˆole de l’´equilibre entre la pr´ecision de la d´etection et la sensibilit´e aux changements r´eels de la sc`ene. 4.3 Conclusion La m´ethode d’analyse du MNS diff´erentiel que nous avons d´evelopp´ee est bas´ee sur la classification des pixels selon des labels changements positifs, changements n´egatifs ou non–changement en fonction de la valeur du pixel et de son voisinage, pris en compte `a travers une contrainte de r´egularisation spatiale. Les param`etres de la m´ethode sont d´ecrits dans le tableau 4.1. Cette m´ethode de filtrage global permet ainsi le contrˆole de la pr´ecision et de la sensibilit´e du r´esultat grˆace au param`etre de r´egularisation λ, contrˆole d’autant plus important qu’il va permettre `a l’utilisateur de moduler le r´esultat en fonction des changements recherch´es. Les r´esultats obtenus par cette m´ethode de d´etection des changements d’´el´evation et selon diff´erents param`etres seront analys´es dans la section 5 Param`etre impact Valeur Seuil T Impact important D´epend de la r´esolution alti. du MNS sur la hauteur des changements d´etect´es pour 1 m : seuil = 2,5 m R´egularisation Impact important sur la pr´ecision D´epend des r´esultats recherch´es et sensibilit´e du r´esultat g´en´eralement entre 2 et 7 Directions Impact mod´er´e sur le r´esultat G´en´eralement pos´ee `a 12 Courbure L Impact n´egligeable D´epend du seuil en ´el´evation des changements recherch´es Table 4.1 – Tableau de synth`ese des param`etres n´ecessaires `a la m´ethode de d´etection des changements d’´el´evation. 100Chapitre 5 Exp´erimentation et discussion des r´esultats de la m´ethode de d´etection des changements d’´el´evation Afin d’analyser les performances de la m´ethode de d´etection des changements, trois sites sont analys´es `a travers la pr´ecision de la m´ethode (quantit´e de fausses alarmes d´etect´ees par rapport au nombre total de d´etections) et sa sensibilit´e, aussi appel´ee rappel, (quantit´e de bonnes d´etections retrouv´ees par rapport au nombre total de changements de la sc`ene). Les deux premiers sites sont repr´esent´es par plusieurs zones choisies sur les villes de Phoenix (Arizona, USA) et de Christchurch (Nouvelle–Z´elande), villes dynamiques `a d´eveloppement continu. Le troisi`eme site se trouve dans la r´egion de Tohoku (Japon), et plus particuli`erement sur la ville de Sendai. Cette zone, qui a ´et´e d´evast´ee par une catastrophe majeure, permet en effet d’analyser les r´esultats de la m´ethode dans un contexte de crise. 1015.1. PRESENTATION DES ZONES DE TEST ´ 5.1 Pr´esentation des zones de test 5.1.1 Phoenix Sur la ville de Phoenix, deux couples st´er´eoscopiques ont ´et´e acquis en 2008 et 2011 par le capteur WorldView-1 (cf. tableau 1.1, chapitre 1, section 1.4). Trois zones d’´etudes ont ´et´e d´efinies `a partir de ces images. Ces zones, d’une taille de 2000 × 2000 pixels ont ´et´e s´electionn´ees sur l’image en fonction du nombre de changements qui ont ´et´e retrouv´es mais aussi en fonction de la vari´et´e de bˆatiments et infrastructures qu’elles contiennent. Les figures 5.1(a), 5.1(b) et 5.1(c) repr´esentent ces diff´erentes zones. La zone 1 (figure 5.1(a)) comprend de petits pavillons r´esidentiels, de nombreux parcs ainsi que des quartiers d’affaires. La zone 2 (figure 5.1(b)) contient plutˆot des quartiers d’affaires avec quelques tr`es hauts bˆatiments. Enfin, la zone 3 (figure 5.1(c)) pr´esente plutˆot des zones industrielles. Sur ces zones, on note aussi la pr´esence d’autoroutes avec de nombreux v´ehicules mobiles, de la v´eg´etation, ou encore des pavillons tr`es proches les uns des autres. Tous ces ´el´ements repr´esentent des sources d’erreurs potentiellement importantes pour les MNS, qui se r´epercutent dans la d´etection de changements. Ces diff´erentes difficult´es permettent ainsi de tester au mieux les performances de notre chaˆıne de traitements. Aucune v´erit´e terrain de type cadastrale n’´etant disponible sur la ville de Phoenix, une carte de r´ef´erence a ´et´e g´en´er´ee manuellement pour chacune des trois zones d’´etude. Plus pr´ecis´ement, cette carte a ´et´e cr´e´ee par comparaison visuelle entre les images acquises aux dates t1 et t2. Tous les changements du bˆati visibles ont ´et´e rep´er´es et localis´es dans cette carte de r´ef´erence, qu’ils soient de quelques m`etres carr´es (taille d’un conteneur) ou de plusieurs centaines de m`etres carr´es (bˆatiment industriel). Cependant, afin de mieux analyser les r´esultats, les changements ont ´et´e divis´es en deux cat´egories : les changements sup´erieurs ou ´egaux `a 15×15 pixels, soit 100 m2 pour des images `a 60 cm de r´esolution, et tous les changements de l’image. Ce seuil repr´esente la taille g´en´eralement d´etectable par les m´ethodes de d´etection de changements sur des images tr`es haute r´esolution d´ecrites par ailleurs [26]. Or, l’analyse des performances de la m´ethode lorsque toutes les tailles 102CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ (a) Illustration de la zone #1 de Phoenix. (b) Illustration de la zone #2 de Phoenix. (c) Illustration de la zone #3 de Phoenix. (d) Illustration de la zone de Christchurch. Figure 5.1 – Orthoimages provenant des images panchromatiques WorldView–1 repr´esentant les trois zones test´ees sur la ville de Phoenix et la zone de Christchurch. 1035.1. PRESENTATION DES ZONES DE TEST ´ (a) Orthoimage WorldView-1, 2008, Phoenix zone 1. (b) Donn´ee de r´ef´erence. En vert les changements de taille > 100 m2 , en noir les changements inf´erieurs `a 100 m2 Figure 5.2 – 5.2(a)Orthoimage calcul´ee et 5.2(b) donn´ee de r´ef´erence des changements de la zone 1 de Phoenix. de changements sont recherch´ees permet de mieux appr´ehender les limites de la m´ethode. Au cours de ces analyses de sensibilit´e, nous parlerons plutˆot de ce seuil `a 100 m2 mais nous pr´ecisons que ce seuil d´epend avant tout de la r´esolution des images native. Pour des images haute r´esolution `a 2 m, ce seuil serait calcul´e `a 15×15 pixels soit 300m2 . Finalement, sur la zone 1 de Phoenix, 126 changements de toutes tailles ont ´et´e recens´es dont 55 changements sup´erieurs `a 100 m2 (figure 5.2(b)). Sur la zone 2 de Phoenix, 71 changements ont ´et´e recens´es dont 22 larges changements. Enfin, sur la zone 3, 138 changements ont ´et´e retrouv´es dont 34 sup´erieurs `a 100 m2 . 5.1.2 Christchurch Sur la ville de Christchurch, en Nouvelle-Z´elande, nous disposons de deux acquisitions st´er´eoscopiques de 2009 et 2011 (cf. tableau 1.1, chapitre 1, section 1.4). A ces donn´ees s’ajoutent deux acquisitions LiDAR de 2010 et 2011. La zone commune aux donn´ees optiques et LiDAR a ´et´e s´electionn´ee pour tester la m´ethode de d´etection de changement. Cette zone, d’une superficie de 1200 km2 environ, est repr´esent´ee en figure 5.1(d). 104CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ Le LiDAR a ´et´e pr´ealablement r´e–´echantillonn´e `a une r´esolution planim´etrique identique `a celle des MNS (1 m). Cependant, la pr´ecision d’acquisition du LiDAR est largement meilleure que celle des MNS g´en´er´es. Les petites structures, les bˆatiments et tous les objets de la sc`ene sont donc plus nets 1 . Une d´etection des changements d’´el´evation entre les deux acquisitions LiDAR a donc ´et´e r´ealis´ee avec une r´egularisation faible (λ = 2, 0) et un seuil classique `a 2,5 m. L’objectif est de faire ressortir tous les changements de la sc`ene. Ainsi, les changements d´etect´es entre les deux acquisitions LiDAR sont consid´er´es comme suffisamment pr´ecis et exhaustifs pour repr´esenter une v´erit´e terrain qui permettra l’analyse des r´esultats obtenus sur cette zone par la d´etection de changements appliqu´ee entre les MNS g´en´er´es. Cependant, les LiDAR ayant ´et´e acquis `a des saisons diff´erentes, une faible r´egularisation a aussi fait ressortir tous les changements li´es `a la v´eg´etation. Ces changements ont dˆu ˆetre manuellement supprim´es de la v´erit´e terrain g´en´er´ee. De plus, une ann´ee s´epare la premi`ere acquisition satellite st´er´eoscopique de la premi`ere acquisition LiDAR (cf tableau 1.1, section 1.4). Afin de prendre en compte cet ´ecart et les changements ayant eu lieu entre ces acquisitions, ces derniers ont ´et´e d´etect´es en appliquant la m´ethode de d´etection entre l’acquisition satellite de 2009 et LiDAR de 2010, `a faible r´egularisation spatiale. Puis, ces changements ont ´et´e manuellement filtr´es des fausses alarmes telles que celles provenant de la v´eg´etation. La carte des changements ainsi obtenue a ensuite ´et´e additionn´ee `a la v´erit´e terrain. Tout comme pour les trois zones de Phoenix, les changements rep´er´es ont ´et´e divis´es selon les deux cat´egories : ceux de taille sup´erieure `a 100 m2 et tous les changements. Finalement, 43 changements de toutes tailles ont ´et´es rep´er´es sur la zone, dont 35 de taille sup´erieure `a 100 m2 . 5.1.3 R´egion de Tohoku : analyse d’une zone catastroph´ee La r´egion de Tohoku est situ´ee au Nord Est du Japon, sur la pr´efecture de Miyagi. 1. Nous rappelons que pour des raisons de confidentialit´e des donnn´ees, les donn´ees LiDAR ne peuvent ˆetre pr´esent´ees ici. 1055.1. PRESENTATION DES ZONES DE TEST ´ (a) Orthoimage Ikonos de 2010, Sendai. (b) Orthoimage Ikonos de 2011, Sendai. (c) MNS obtenu `a partir du couple Ikonos 2010. (d) MNS obtenu `a partir du couple Ikonos 2011. Figure 5.3 – Ortho images et MNS calcul´es avant et apr`es la catastrophe de Sendai du 11/03/2011. 106CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ Cette r´egion a ´et´e frapp´ee le 11 mars 2011 par un s´eisme de magnitude 9 qui a ´et´e suivi par l’un des plus puissants tsunamis jamais connus au Japon puisque la vague a atteint 7,6 m de haut pr`es de la pr´efecture de Miyagi et plus de 40 m plus au Nord [70]. Un rapport de police fait ´etat de plus de 15 000 personnes d´ec´ed´ees et 2800 disparus. Le tsunami a aussi g´en´er´e de tr`es importants d´egˆats avec pr`es de 240 000 bˆatiments d´etruits et 224 000 partiellement endommag´es. Les images pr´esent´ees en figures 5.3(a) et 5.3(b) montrent une partie de la r´egion touch´ee par cette catastrophe, avant et apr`es le 11 mars 2011. Ces images proviennent de couples st´er´eoscopiques acquis par le capteur Ikonos le 11 d´ecembre 2010 et le 13 aoˆut 2011 (cf. tableau 1.1, chapitre 1, section 1.4). Contrairement aux zones de Phoenix et Christchurch pr´ec´edemment pr´esent´ees, la zone de Sendai montre un paysage totalement diff´erent entre les acquisitions avant et apr`es le passage du tsunami. La zone habitable a ´et´e presque totalement d´etruite de mˆeme que tous les terrains agricoles aux alentours. Ce type de paysage rendrait totalement impossible une d´etection de changements radiom´etriques qui g´en`ererait alors un tr`es grand nombre de fausses alarmes. Les MNS pr´esent´es en figures 5.3(c) et 5.3(d) font ´etat de l’ampleur de la catastrophe et des destructions g´en´er´ees. Afin de tester les performances du syst`eme pour la d´etection des d´egˆats, une large zone, d’environ 360 km2 a ´et´e s´electionn´ee parmi les zones les plus touch´ees (repr´esent´ee par le rectangle rouge dans les figures 5.3(a) et 5.3(b). Cette zone ainsi que la carte de r´ef´erence des changements sont illustr´ees en figure 5.4. On peut observer sur cette zone la destruction totale de la partie la plus proche de la cˆote, puis, plus au nord–ouest, des bˆatiments qui semblent avoir r´esist´e. Le nombre de bˆatiments chang´es est alors largement sup´erieur `a celui des bˆatiments inchang´es. L’objectif est donc de tester notre chaˆıne de traitements sur une zone sinistr´ee afin d’observer les r´esultats obtenus en d´etection de changements du bˆati. Comme pour les zones urbaines pr´ec´edentes, une carte de r´ef´erence des changements a ´et´e r´ealis´ee sur la zone. Cependant, les d´egˆats importants et donc les changements massifs rendent difficile la quantification des r´esultats, notamment par le coefficient Kappa (que nous 1075.1. PRESENTATION DES ZONES DE TEST ´ expliquerons section 5.2.2). Pour r´esoudre ce probl`eme et quantifier pr´ecis´ement les performances de la m´ethode, la carte de r´ef´erence contient tous les changements (bˆatiments d´etruits) mais aussi les non–changements (bˆatiments intacts) de la sc`ene. Au total, 220 bˆatiments d´etruits ont ´et´e r´epertori´es et 76 bˆatiments intacts. Nous pr´ecisons cependant que cette carte de r´ef´erence, r´ealis´ee manuellement `a partir des images panchromatiques avant et apr`es la catastrophe, regroupe parfois plusieurs bˆatiments adoss´es les uns aux autres en un seul ´el´ement (d´etruit ou non), ce qui entraˆıne une diminution de sa pr´ecision. (a) Orthoimage Ikonos de 2010, Sendai. (b) Orthoimage Ikonos de 2011, Sendai. (c) Carte de r´ef´erence des bˆatiments d´etruits (en rouge) et intacts(en vert). Figure 5.4 – Zone partiellement d´etruite par le Tsunami et quantifi´ee `a travers la carte de r´ef´erence des bˆatiments d´etruits et intacts. 108CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ 5.2 M´etriques d’analyse des r´esultats de la d´etection de changements 5.2.1 Variables calcul´ees Afin d’analyser les performances de la m´ethode, les alarmes, vraies ou fausses, d´etect´ees par la m´ethode sont compt´ees `a l’´echelle de l’objet et non du pixel. En effet, la qualit´e de nos donn´ees de r´ef´erence, et notamment le d´etourage des changements dans les cartes de r´ef´erence g´en´er´ees manuellement, ne permet pas une correspondance au pixel pr`es entre les d´etections sur la carte des changements d´etect´es et les changements d´etour´es sur la carte de r´ef´erence. De plus, la m´ethode de d´etection des changements mise en place est bas´ee sur une r´egularisation spatiale ce qui tend `a ´eroder les bords des alarmes de changements dans la carte r´esultat. Le d´ecompte des pixels bien ou mal class´es ne repr´esenterait alors pas la r´ealit´e de la d´etection. Le d´ecompte des vraies et fausses d´etections est donc effectu´e au niveau objet, c’est–`a–dire que tout pixel isol´e ou amas de pixels connexes (avec 8 connexes consid´er´es autour de chaque pixel) rencontr´e dans la carte des changements r´esultante est compt´e comme une alarme de changement. Ainsi, une vraie d´etection est confirm´ee d´es lors qu’un, ou plusieurs pixels, labellis´es en changement dans la carte des changements, correspondent `a un changement r´eel dans la carte de r´ef´erence. Inversement, si un pixel isol´e, ou un amas de pixels, labellis´e changement dans la carte des changements, ne correspond `a aucun changement de la carte de r´ef´erence, cette d´etection est consid´er´ee comme une fausse alarme. Nous noterons enfin que dans la carte de r´ef´erence des changements, les changements r´eels sont marqu´es sans consid´eration de leur sens (changement positif ou n´egatif). Le d´ecompte des changements r´eels bien d´etect´es par la m´ethode se fait donc sans cette consid´eration (on parlera des classes changement et non–changement). En effet, le d´ecompte s´epar´e des changements positifs et n´egatifs n’apporte pas d’indice sur les performances de la m´ethode. La d´etection distincte de ces changements lors du calcul de la carte des changements est n´ecessaire au fonctionnement de la m´ethode de d´etection mais pas `a l’analyse des r´esultats. La quantification des r´esultats est effectu´ee `a travers le calcul de plusieurs variables : 1095.2. METRIQUES D’ANALYSE DES R ´ ESULTATS DE LA D ´ ETECTION DE ´ CHANGEMENTS – TP (True Positives ou vrai positifs) : nombre de changements r´eels bien d´etect´es, – TN (True Negatives ou vrai n´egatifs) : nombre de non–changements bien d´etect´es, – FP (False Positives ou faux positifs) : nombre de non–changements d´etect´es comme changement (aussi appel´e fausse alarme), – FN (False Negatives ou faux n´egatifs) : nombre de changements r´eels omis (ou omissions). Le calcul de la quantit´e TN est difficile et n’a jamais ´et´e r´ealis´e, `a notre connaissance, `a l’´echelle objet dans la litt´erature. Pourtant cette variable est essentielle pour le calcul d’une de nos m´etriques d’analyse, le coefficient Kappa. Lors de ce travail, nous avons choisi de calculer cette valeur selon une d´efinition empirique, bas´ee sur le nombre de pixels total de l’image divis´e par la taille moyenne d’un objet (´equation 5.1). De cette fa¸con, l’image est consid´er´ee comme si elle ´etait totalement constitu´ee d’objets `a d´etecter. T N = (l × c) moyenneobjet − T P − F N − F P. (5.1) Dans l’´equation 5.1, l et c repr´esentent le nombre de lignes et de colonnes de l’image respectivement, moyenneobjet repr´esente la taille moyenne d’un objet d’une sc`ene urbaine. Il est d´etermin´e ici `a environ 15 × 15 pixels, valeur consid´er´ee comme une taille moyenne de d´etections si toutes les d´etections (vraies et fausses) sont compt´ees `a faible r´egularisation. Avec cette d´efinition particuli`ere de TN, toute l’emprise de l’image est alors prise en compte, quelle que soit la densit´e des habitations. En effet, si le TN devait ˆetre repr´esent´e par le nombre de bˆatiment uniquement, alors, dans une sc`ene contenant moins de 10 bˆatiments mais de nombreuses sources de fausses alarmes, le nombre de fausses alarmes serait particuli`erement ´elev´e et le TN tr`es faible, diminuant la pr´ecision de la m´ethode sans pour autant repr´esenter la r´ealit´e de la d´etection. La consid´eration de la sc`ene comme recouverte d’objets permet ainsi d’am´eliorer la pr´ecision du calcul des performances de la m´ethode. Il est cependant `a noter que cette variable TN sera utilis´ee dans une m´etrique particuli`ere permettant la comparaison, entre elles, des classifications r´ealis´ees dans ce travail et la recherche des param`etres de la m´ethode les plus adapt´es. La d´efinition de TN est alors la mˆeme pour tous les r´esultats de classification qui seront compar´es lors de ce travail. 110CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ 5.2.2 M´etriques d’analyse Les m´etriques d’analyse des r´esultats utilis´ees sont des m´etriques standards qui permettent l’´evaluation des performances de la d´etection de changements par rapport aux donn´ees de r´ef´erence. Les m´etriques les plus classiques correspondent aux taux de bonnes d´etections (ou True Positive Rate, TPR) et de fausses d´etections (ou False Positive Rate, FPR), calcul´ees selon les ´equations 5.2. T P R = T P T P + F N × 100, F P R = F P F P + T P × 100. (5.2) Une autre m´etrique importante est repr´esent´ee par le coefficient Kappa (´equation 5.3) qui correspond au calcul de l’accord entre la v´erit´e terrain et le r´esultat de classification obtenu. La premi`ere description et utilisation de ce coefficient provient de Cohen [71] et a permis de calculer le degr´e de coh´erence entre deux jugements psychiatriques ind´ependants. Plus r´ecemment et dans notre domaine d’´etude, ce coefficient a ´et´e employ´e notamment par Wilkinson [72] pour l’analyse et l’inter–comparaison des r´esultats de diff´erentes m´ethodes de classification d’images recens´es sur 15 ans. L’objectif de cette analyse ´etait l’´evaluation des performances de nombreuses m´ethodes de classification supervis´ees ou non, utilisant des donn´ees externes ou non et quel que soit le nombre de classes ou la r´esolution initiale de l’image. Dans ce contexte, l’utilisation du coefficient Kappa, dont les donn´ees d’entr´ees correspondent au nombre de classes et aux variables TP, TN, FP et FN d´ecrites pr´ec´edemment, apparaˆıt alors particuli`erement adapt´ee. Ce coefficient est calcul´e selon l’´equation suivante : K = OA − Pe 1 − Pe , (5.3) OA = T P T P + F P + F N , (5.4) Pe = M (T P + F P + T N + F N) 2 , (5.5) M = (T P + F P) × (T P + F N) + (F N + T N) × (F P + T N). (5.6) 1115.3. ANALYSE DE SENSIBILITE DES R ´ ESULTATS OBTENUS ´ OA correspond `a la pr´ecision g´en´erale de la classification (Overall Accuracy). Pe est d´ecrit comme le taux de concordance al´eatoire. Cette valeur est ´egale `a 1 si la correspondance entre la v´erit´e terrain et le r´esultat de classification obtenu est uniquement le fait du hasard et `a 0 sinon. L’avantage de cette m´etrique est d’ˆetre particuli`erement adapt´ee lorsque les classes en pr´esence sont d´es´equilibr´ees, c’est–`a–dire, dans notre contexte, lorsque la classe des non– changements est tr`es grande par rapport `a la classe changement. De plus, les taux de vraies et de fausses d´etections ne permettent pas de d´efinir la r´egularisation qui entraˆınera le meilleur ´equilibre entre fausses alarmes et bonnes d´etections. En effet, ces m´etriques, ind´ependantes l’une de l’autre, indiquent le meilleur param´etrage de l’algorithme en fonction du taux de bonnes d´etections recherch´ees ou bien du taux de fausses alarmes maximum accept´e. Le coefficient Kappa prend en compte tous les termes de la matrice de confusion de la d´etection de changement (TP, TN, FP, FN). Cette m´etrique permet ainsi la comparaison pr´ecise de plusieurs classifications tout en mettant en ´evidence le param´etrage de l’algorithme le plus adapt´e, qui correspond alors `a la meilleure correspondance entre la carte de r´ef´erence des changements et la carte calcul´ee et donc au meilleur ´equilibre entre bonnes d´etections et fausses alarmes. Le calcul du coefficient Kappa est donc particuli`erement important pour l’analyse compl`ete des r´esultats obtenus par la m´ethode de d´etection tandis que l’analyse des diff´erents taux de bonne ou fausse d´etection est importante pour expliquer le comportement du Kappa. Ces deux m´etriques sont tr`es compl´ementaires entre elles. 5.3 Analyse de sensibilit´e des r´esultats obtenus Dans cette section, plusieurs analyses de sensibilit´e sont effectu´ees. Elles concernent les diff´erents param`etres de la m´ethode et leur impact sur les r´esultats mais aussi l’analyse de l’impact de la qualit´e des donn´ees d’entr´ee (MNS) ou des changements recherch´es ou encore l’analyse des performances en fonction des caract´eristiques de la zone ´etudi´ee. Les cartes de d´etections de changements calcul´ees en vue de ces analyses de sensibilit´e ont, 112CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ pour la plupart, ´et´e g´en´er´ees `a partir de la zone 1 de Phoenix. Cette zone pr´esente en effet de tr`es nombreux changements et des sources r´eduites de fausses alarmes ce qui en fait une zone test int´eressante pour la mesure de l’influence des param`etres ou des donn´ees d’entr´ee. 5.3.1 Influence des param`etres de la m´ethode sur les r´esultats Nombre de directions de la programmation dynamique Le premier param`etre de la d´etection de changements que nous ´etudions est le nombre de directions utilis´ees dans le calcul. En effet, comme d´ecrit dans le chapitre 2, section 2.2.3, l’algorithme de programmation dynamique, con¸cu au cours de cette th`ese, n´ecessite le calcul des coˆuts de labellisation selon plusieurs directions dans l’image, coˆuts calcul´es ind´ependamment pour chaque direction puis fusionn´es afin de retrouver la solution finale de labellisation. Nous avons montr´e en effet que l’utilisation de nombreuses directions permet de limiter les effets de streaking sur le r´esultat final. Les figures 5.5(c), 5.5(d), 5.5(e) et 5.5(f) illustrent les r´esultats obtenus avec 1, 8, 12 et 16 directions respectivement et une r´egularisation moyenne λ = 3, 0. On observe que lorsqu’une seule direction est calcul´ee, les effets de streaking sont particuli`erement importants (visible le long des lignes de l’image 5.5(c)). D’apr`es la figure 5.5(d), le calcul de 8 directions r´eduit l’effet de streaking. Puis, de 12 `a 16 directions, le r´esultat est globalement identique et l’effet de streaking est quasi nul. La figure 5.6 pr´esente les taux de bonnes et fausses d´etections obtenues avec une r´egularisation fix´ee `a λ = 3, 0 et un nombre variable de directions de calcul, de 1 `a 16 directions. La r´egularisation a ´et´e fix´ee `a une valeur relativement faible afin de bien observer l’impact de ce nombre de directions sur un grand nombre de d´etections. Comme attendu d’apr`es les figures pr´ec´edentes, on observe une tr`es forte diminution des fausses alarmes (mais aussi des bonnes d´etections) entre 1 et 4 directions de calcul. A partir de 4 ` directions, les taux diminuent de fa¸con moins flagrante puis ils semblent se stabiliser entre 12 et 16 directions. 1135.3. ANALYSE DE SENSIBILITE DES R ´ ESULTATS OBTENUS ´ (a) Orthoimage WorldView-1, 2008. (b) Orthoimage WorldView-1, 2011. (c) Carte des changements calcul´ee avec 1 direction de calcul. (d) Carte des changements calcul´ee avec 8 directions de calcul. (e) Carte des changements calcul´ee avec 12 directions de calcul. (f) Carte des changements calcul´ee avec 16 directions de calcul. Figure 5.5 – Cartes de d´etection de changements obtenues `a partir d’un nombre variable de directions de calcul et une r´egularisation λ = 3, 0. R´esultats calcul´es sur la zone 1 de Phoenix. 114CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ Figure 5.6 – Illustration de l’impact du nombre de directions de calcul sur les taux de bonnes et fausses d´etections. R´esultats calcul´es sur la zone 1 de Phoenix avec une r´egularisation λ = 3, 0. La d´etection de changements est donc g´en´eralement calcul´ee avec 12 directions. Le calcul `a 16 directions n’apportant pas de diff´erences significative au r´esultat mais augmente le temps de traitement. Param`etre de r´egularisation Le param`etre λ est le param`etre ayant le plus d’influence sur le r´esultat de d´etection de changements. Les figures 5.7(c), 5.7(d), 5.7(e) et 5.7(f) illustrent qualitativement l’effet de ce param`etre. Chacune de ces figures repr´esente une carte de d´etection de changements obtenue `a partir d’un λ ´egal `a 2,0, 3,0, 4,5 et 6,0, respectivement. D’apr`es ces figures, les alarmes de changements disparaissent en fonction de leur taille, que ce soit les fausses alarmes (situ´ees principalement dans la carte obtenue avec une tr`es faible r´egularisation) ou les vrais changements, et ce, de la plus faible `a la plus forte r´egularisation. On note, par exemple, que de nombreux changements r´eels marqu´es dans la carte de r´ef´erence ne sont pas d´etect´es `a λ = 6, 0. Afin d’observer les effets de la r´egularisation sur les r´esultats de d´etection de changement, les taux de bonnes d´etections (TPR) et de fausses alarmes (FPR) ont ´et´e trac´es en fonction du 1155.3. ANALYSE DE SENSIBILITE DES R ´ ESULTATS OBTENUS ´ param`etre de r´egularisation sur les figures 5.8(a) `a 5.8(d). (a) Orthoimage WorldView-1 de 2008, Phoenix zone #1. (b) Orthoimage WorldView-1 de 2011, Phoenix zone #1. (c) Carte des d´etections obtenue avec λ = 2. (d) Carte des d´etections obtenue avec λ = 3. (e) Carte des d´etections obtenue avec λ = 5. (f) Carte des d´etections obtenue avec λ = 6. Figure 5.7 – Cartes des d´etections calcul´ee avec diff´erentes valeurs de λ et 12 directions. R´esultats calcul´es sur la zone 1 de Phoenix avec une r´egularisation λ = 3, 0 116CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ Ces figures pr´esentent le comportement des m´etriques avec l’augmentation de la r´egularisation. Dans un premier temps, les TPR (figures 5.8(a) et 5.8(c)) marquent un palier proche de 100% de bonnes d´etections tandis que les taux de FPR, d’abord tout aussi haut, diminuent de fa¸con presque lin´eaire. Puis, pour des λ entre 2,5 et 3,5, le taux de bonnes d´etections commence `a d´ecroˆıtre mais plus faiblement que le taux de fausses alarmes qui baisse drastiquement. Puis la courbe des fausses alarmes atteint un pallier vers λ = 4, 0 de mˆeme que celle des TPR qui ne d´ecroit que faiblement. Ce comportement r´esulte en fait de la suppression des petites fausses alarmes, souvent tr`es nombreuses `a faible r´egularisation, ce qui entraˆıne une tr`es forte baisse des taux FPR. Les petits changements pertinents, eux aussi supprim´es, sont cependant moins nombreux, expliquant la d´ecroissance moins rapide de la courbe des TPR. Lorsque toutes ces petites d´etections sont supprim´ees, les d´etections restantes sont alors des fausses alarmes ou des vraies d´etections de taille importante et donc tr`es difficiles `a supprimer `a moins d’augmenter tr`es fortement la r´egularisation, ceci explique le palier `a la fin des courbes. Autres param`etres de la m´ethode Nous avons vu, dans la section 4, que d’autres param`etres interviennent dans la m´ethode de d´etection de changements d´evelopp´ee. Ces param`etres sont notamment le seuil T, fix´e `a 2,5 m et la courbure L, fix´ee `a 3,0. Des analyses de sensibilit´e pourraient ˆetre r´ealis´ees pour observer les performances de la m´ethode en fonction de ces deux param`etres. Cependant, le seuil a ´et´e fix´e ici d’apr`es une valeur standard et en consid´erant la r´esolution altim´etrique obtenue pour les MNS. C’est pourquoi aucune ´etude n’a ´et´e men´ee quant `a la sensibilit´e de ce param`etre. La courbure L permet, comme nous l’avons montr´e, de contrˆoler les coˆuts pour chaque label en fonction de la proximit´e entre la valeur du pixel et le seuil. Ce param`etre n’a cependant que peu d’impact d’apr`es les quelques tests que nous avons r´ealis´es cependant aucune analyse compl`ete n’a encore ´et´e effectu´ee. 1175.3. ANALYSE DE SENSIBILITE DES R ´ ESULTATS OBTENUS ´ 5.3.2 Impact de la qualit´e des donn´ees d’entr´ee Influence de la qualit´e des MNS Afin d’observer la sensibilit´e de la m´ethode de d´etection des changements envers les donn´ees d’entr´ee qui lui sont inject´ees, c’est–`a–dire les MNS utilis´es, l’algorithme a ´et´e test´e sur des MNS de qualit´e diff´erente : les MNS obtenus apr`es une mise en correspondance asym´etrique simple et les MNS obtenus apr`es fusion de MNS asym´etriques (technique d´ecrite dans le chapitre 3, section 3.3). La qualit´e de ces MNS a ´et´e discut´ee dans section 3.4. Les figures 5.8 pr´esentent les r´esultats obtenus pour la zone 1 de Phoenix, dont les changements ont ´et´e d´etect´es `a partir des MNS asym´etriques (courbes vertes et turquoises pointill´ees) et des MNS fusionn´es (courbes bleues et rouges pleines). Les r´esultats ont ´et´e calcul´es sur la zone 1 de Phoenix puis trac´es en fonction du param`etre λ utilis´e. Les figures 5.8(a) et 5.8(c) pr´esentent les taux de bonnes et de fausses d´etections lorsque seuls les changements sup´erieurs `a 100 m2 sont consid´er´es et lorsque tous les changements sont consid´er´es. D’apr`es ces figures, les taux de bonnes d´etections obtenues avec les MNS fusionn´es apparaissent sensiblement plus ´elev´es que ceux obtenus avec les MNS asym´etriques : une diff´erence de 5% `a 20% est not´ee. De mˆeme, les taux de fausses alarmes d´etect´ees `a partir des MNS fusionn´es sont plus faibles que ceux obtenus avec les MNS asym´etriques. L’´ecart constat´e est de 0 `a plus de 10%. Les figures 5.8(b) et 5.8(d) pr´esentent les coefficients Kappa obtenus pour tous les changements ou les changements sup´erieurs `a 100 m2 uniquement, pour le MNS fusionn´e et pour le MNS asym´etrique pr´esent´es. D’apr`es ces figures, le Kappa apparaˆıt fortement corr´el´e aux taux de fausses et bonnes d´etections : plus les taux de vraies d´etections et de fausses d´etections sont proches l’un de l’autre (c’est–`a–dire autant de bonnes d´etections que de fausses alarmes) plus le Kappa est faible, indiquant une mauvaise classification et inversement un taux de bonnes d´etections tr`es sup´erieur `a un taux de fausses alarmes entraine un fort coefficient Kappa et donc une bonne classification. 118CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ (a) Taux de vrais et faux positifs calcul´es pour les changements sup´erieurs `a 100 m2 . (b) Coefficient Kappa calcul´e pour les changements sup´erieurs `a 100 m2 . (c) Taux de vrais et faux positifs calcul´es pour tous les changements de la sc`ene. (d) Coefficient Kappa calcul´e pour tous les changements de la sc`ene. Figure 5.8 – 5.8(a) et 5.8(c) variation des taux de fausses et vraies d´etection en fonction de la r´egularisation λ. 5.8(b) et 5.8(d) : Variations du coefficient Kappa en fonction de la r´egularisation λ. R´esultats calcul´es pour la zone 1 de Phoenix. Comme attendu ici, les valeurs de Kappa obtenues `a partir des MNS fusionn´es sont largement plus hautes que celles provenant des r´esultats de MNS asym´etriques, quelle que soit la taille des changements recherch´es. D’apr`es les diff´erents taux TPR et FPR calcul´es, cela s’explique par le nombre important 1195.3. ANALYSE DE SENSIBILITE DES R ´ ESULTATS OBTENUS ´ des fausses alarmes par rapport au nombre total de d´etections lorsque les MNS utilis´es sont asym´etriques. En effet, les MNS fusionn´es pr´esentent une meilleure pr´ecision sur les fines structures de la sc`ene et moins d’erreurs de corr´elation, entraˆınant un taux de fausses alarmes plus faible. Cette diff´erence a n´eanmoins tendance `a disparaˆıtre avec des r´egularisations plus importantes puisque ce param`etre agit comme un filtre qui supprime les plus fines erreurs des MNS. Le r´esultat final `a haute r´egularisation est alors tr`es similaire que ce soit pour les MNS fusionn´es ou pour les MNS asym´etriques. Influence de la taille de changements recherch´ee Les figures 5.8 pr´esentent les r´esultats obtenus pour la zone 1 de Phoenix lorsque l’on consid`ere les changements sup´erieurs `a 100 m2 (figures 5.8(a) et 5.8(b)). Dans ce cas, le taux de bonnes d´etections observ´e est de 100% `a plus de 75% pour des r´egularisations de 1 `a 6,5. A la valeur de Kappa maximum (soit `a une r´egularisation `a ` λ = 5, 0 d’apr`es la figure 5.8(b)), le taux de bonnes d´etections est de 90%, avec moins de 10% de fausses alarmes. Lorsque les changements de toutes tailles sont consid´er´es, la valeur maximale du kappa atteint seulement 0,76 pour une r´egularisation `a λ = 3, 0. D’apr`es la figure 5.8(c), cela correspond `a environ 80% des changements bien d´etect´es et 35% de fausses alarmes. En effet, les changements inf´erieurs `a 100 m2 repr´esentent les deux tiers de tous les changements mais sont tr`es difficiles `a d´etecter et ont tendance `a ˆetre supprim´es rapidement lorsque la r´egularisation augmente. Une plus faible r´egularisation est donc n´ecessaire pour les rep´erer ce qui implique alors un taux de fausses alarmes r´esiduelles plus important et donc un coefficient Kappa plus faible. Nous rappelons que la taille des changements recherch´es d´epend en premier lieu de la r´esolution des images (puis des MNS) en entr´ee de la chaˆıne de traitements. En effet, la taille de 100 m2 (soit 15 × 15 pixels) est adapt´ee pour des images acquises `a 60 cm de r´esolution permettant la g´en´eration de MNS `a 1 m de r´esolution spatiale. Cette taille doit ˆetre red´efinie en fonction de la r´esolution des images d’entr´ee du syst`eme. 120CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ 5.3.3 Int´erˆet d’une m´ethode globale : comparaison avec un filtrage local Cette section pr´esente la comparaison de la m´ethode de classification des changements employ´ee avec une m´ethode plus classique, repr´esent´ee par un filtrage morphologique. Ce type de filtrage local est en effet souvent utilis´e dans la litt´erature et plus particuli`erement par Tian [26] et Chaabouni [22] pour l’analyse de MNS diff´erentiels en vue de la d´etection des changements d’´el´evation. Le filtrage local test´e est appliqu´e sur le r´esultat d’une segmentation (`a +2,5 m et -2,5 m, valeur de seuil identique `a celle utilis´ee dans le filtrage global) du MNS diff´erentiel. Ce filtrage est bas´e sur l’application d’une op´eration morphologique sur l’image segment´ee, sous forme d’une ouverture. Pour rappel, une ouverture (binaire), en morphologie math´ematique, correspond `a l’´erosion des amas de pixels connexes portant une valeur ´egale `a 1 (donc un label changement dans notre cas) `a l’aide d’un ´el´ement structurant, suivi par la dilatation de ces mˆemes amas avec le mˆeme ´el´ement [73]. Cette op´eration permet de supprimer les d´etections (vraies ou fausses) de taille inf´erieure `a l’objet structurant. Ainsi, la variation de la taille de l’objet structurant permet de contrˆoler le nombre de fausses d´etections mais aussi celui des vraies d´etections en fonction de leur taille. Cette technique se rapproche ainsi du filtrage global dont le param`etre de r´egularisation permet aussi le contrˆole des taux de fausses alarmes et de vrais positifs. Les r´esultats de ce filtrage morphologique sont pr´esent´es dans les figures 5.9 et compar´es aux r´esultats obtenus avec le filtrage global. Sur les figures, les courbes noires repr´esentent les r´esultats obtenus avec le filtrage morphologique. Les courbes bleues et rouges pr´esentent les r´esultats obtenus avec le filtrage global pour les changements sup´erieurs `a 100 m2 et tous les changements, respectivement. Lorsque seuls les changements importants (sup´erieurs `a 100 m2 ) sont consid´er´es, les taux de bonnes d´etections des deux types de filtrage atteignent tous les deux les 100% (`a faible r´egularisation) mais avec des taux de fausses alarmes de 78% environ pour le filtrage morphologique et de 50% pour le filtrage optimis´e (figure 5.9(a)). 1215.3. ANALYSE DE SENSIBILITE DES R ´ ESULTATS OBTENUS ´ (a) Taux de vrais et faux positifs calcul´es pour les changements sup´erieurs `a 100 m2 . (b) Coefficient Kappa calcul´e pour les changements sup´erieurs 100 m2 . (c) Taux de vrais et faux positifs calcul´es pour tous les changements de la sc`ene. (d) Coefficient Kappa calcul´e pour tous les changements de la sc`ene. Figure 5.9 – 5.9(a) et 5.9(c) : Variations des taux de fausses et vraies d´etections en fonction de la r´egularisation λ ou de la taille de l’´el´ement structurant. 5.9(b) et 5.9(d) : Variations du coefficient Kappa en fonction de la r´egularisation λ ou de la taille de l’´el´ement structurant. R´esultats calcul´es sur la zone 1 de Phoenix Si un faible taux de fausses alarmes est recherch´e (moins de 10%), le taux de bonnes d´etections descend alors `a 58% pour le filtrage morphologique tandis qu’il se maintient au–dessus des 90% pour le filtrage optimis´e. Les courbes Kappa (figure 5.9(b)) confirment une diff´erence importante entre les r´esultats des 122CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ filtrages puisque la valeur maximale du Kappa atteint par le filtrage optimis´e est de 0,92 tandis qu’elle atteint seulement 0,72 pour le filtrage morphologique. Lorsque tous les changements sont consid´er´es, le taux de bonnes d´etections du filtrage morphologique apparaˆıt globalement plus ´elev´e que celui du filtrage optimis´e mais le taux de fausses alarmes est plutˆot ´elev´e par rapport `a celui du filtrage optimis´e (figure 5.9(c)). Les courbes Kappa montrent en effet que certains r´esultats des filtrages optimal et morphologique sont comparables lorsqu’une r´egularisation de λ = 4, 0 est utilis´ee pour le filtrage optimis´e et un ´el´ement structurant de taille 5 × 5 est utilis´e pour le filtrage morphologique. Avec ces param`etres, le filtrage optimis´e pr´esente un TPR d’environ 58% et un FPR d’environ 10% tandis que le filtrage morphologique pr´esente un TPR d’environ 61% pour un taux FPR d’environ 20%, entraˆınant une valeur de Kappa de 0,68. Cependant, pour une r´egularisation `a λ = 3, 5, r´egularisation donnant les meilleurs r´esultats pour le filtrage optimis´e d’apr`es les courbes Kappa en figure 5.9(d), le TPR obtenu est d’environ 72% pour un FPR de moins de 30% et une valeur de kappa `a 0,71, l´eg`erement meilleure que celle obtenu par filtrage morphologique. Les r´esultats obtenus pour le filtrage morphologique apparaissent ainsi d’une qualit´e presque semblable `a celle du filtrage optimis´e lorsque tous les changements sont recherch´es mais tr`es en dessous des r´esultats du filtrage optimis´e lorsque la d´etection se concentre sur les changements les plus larges uniquement. Les taux de bonnes d´etections et de fausses alarmes ´etant `a chaque fois inf´erieurs en qualit´e `a ceux du filtrage optimis´e. Si nous ne r´efutons pas que les r´esultats obtenus, particuli`erement pour les changements larges, peuvent ˆetre dus `a l’utilisation non optimale des op´erations morphologiques, nous montrons cependant ici que le filtrage optimis´e et son param´etrage peuvent ˆetre utilis´es de fa¸con tr`es simple et efficacement pour la recherche des changements quelle que soit leur taille. Tandis que les op´erations morphologiques peuvent ˆetre complexes `a param´etrer afin d’ˆetre adapt´ees aux changements recherch´es et montrer des performances ´equivalentes. 1235.3. ANALYSE DE SENSIBILITE DES R ´ ESULTATS OBTENUS ´ 5.3.4 Influence du paysage de la zone d’´etude Dans cette section, les performances obtenues sur les diff´erentes zones tests pr´esent´ees au d´ebut de ce chapitre seront compar´ees entre elles afin d’analyser les r´esultats en fonction des zones, des difficult´es qu’elles pr´esentent et du nombre de fausses alarmes qu’elles g´en`erent. Phoenix Les r´esultats obtenus sur les trois zones de Phoenix sont pr´esent´es en figure 5.10 avec, comme pr´ec´edemment le calcul des taux de bonnes (TPR) et fausses (FPR) d´etections et le calcul du coefficient Kappa pour tous les changements et pour les changements sup´erieurs `a 100 m2 . Lorsque seuls les grands changements sont pris en compte, globalement et selon les zones, les taux de bonnes d´etections se situent entre 100% et 75%, avec un taux de fausses alarmes variant alors de 100% `a moins de 5%. Malgr´e les variations de paysage de ces zones, la r´egularisation optimale pour ces changements se situe toujours approximativement `a λ = 5, 0, d’apr`es les courbes Kappa pr´esent´ees dans les figures 5.10(b), 5.10(d) et 5.10(f). Ainsi, `a cette r´egularisation, la valeur du Kappa est alors ´egale `a 0,93 pour la zone 1, avec 90% de bonnes d´etections et 5,6% de fausses alarmes. Pour la zone 2, on obtient une valeur de Kappa ´egale `a 0,82 pour λ = 5, 0 pour des taux de 81% de bonnes d´etections et de 18% de fausses alarmes. Enfin, concernant la zone 3, la valeur du Kappa est `a 0,87 pour λ = 5, 0 et les taux de bonnes et fausses d´etections atteignent 79,5% et 3,57%, respectivement. Lorsque tous les changements sont consid´er´es, en revanche, la r´egularisation optimale est d’environ λ = 3, 5. Les coefficients Kappa, calcul´es pour chacune des zones sont alors de 0,72, 0,50 et 0,59, respectivement pour les zones 1, 2 et 3. Les taux de bonnes d´etections atteignent alors 72% pour les zones 1 et 2 et 53% pour la zone 3 tandis que les taux de fausses alarmes sont de 28,3% pour la zone 1, 62% pour la zone 2 et 34% pour la zone 3. D’apr`es tous ces r´esultats, la zone 1 semble pr´esenter les meilleurs taux de bonnes et fausses d´etections. Cette zone contient en fait de tr`es nombreux changements (126) dont pr`es de la moiti´e sont des changements de grande taille. 124CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ (a) Taux de vrais et faux positifs pour la zone #1. (b) Coefficient Kappa calcul´e pour la zone #1. (c) Taux de vrais et faux positifs pour la zone #2. (d) Coefficient Kappa calcul´e pour la zone #2. (e) Taux de vrais et faux positifs pour la zone #3. (f) Coefficient Kappa calcul´e pour la zone #3. Figure 5.10 – 5.10(a), 5.10(c) et 5.10(e) Variations des taux de bonnes et fausses d´etections en fonction du λ. 5.10(b), 5.10(d) et 5.10(f ) Variations du coefficient Kappa. R´esultats calcul´es pour chacune des zones de Phoenix 1255.3. ANALYSE DE SENSIBILITE DES R ´ ESULTATS OBTENUS ´ De plus, les sources de fausses alarmes sont assez r´eduites par rapport aux autres zones. La zone 2 de Phoenix pr´esente des r´esultats de moins bonne qualit´e. Ceci s’explique par le fait que cette zone contient de nombreux bˆatiments particuli`erement hauts. Ces bˆatiments g´en`erent de grandes zones d’occlusion et donc de nombreuses erreurs qui ne sont pas totalement filtr´ees lors de la g´en´eration des MNS. De plus, cette zone contient plusieurs zones de v´eg´etation qui entraˆınent de nombreuses fausses alarmes. Enfin, seulement 71 changements sont recens´es dans cette zone dont moins d’un tiers sont de grands changements bien d´etectables. Finalement, la zone 3 pr´esente des r´esultats situ´es qualitativement entre la zone 1 et la zone 2. Cette zone contient de nombreux changements (138) mais seul un quart correspond `a des changements larges, ce qui explique les taux plus faibles de bonnes d´etections. Cette zone contient aussi une voie express avec de nombreux v´ehicules g´en´erant un certain nombre de fausses alarmes. Cependant, `a forte r´egularisation, les nombreuses fausses alarmes g´en´er´ees, (qui sont de petite taille) sont supprim´ees permettant d’atteindre un tr`es faible taux de fausses alarmes `a λ = 5. Christchurch Les r´esultats obtenus pour la zone de Christchurch sont pr´esent´es en figure 5.11. Comme pr´ec´edemment, les changements de taille sup´erieure `a 100 m2 sont repr´esent´es par la courbe bleue et les changements toutes tailles confondues par la courbe rouge. Au vu du tr`es faible nombre de changements inf´erieurs `a 100 m2 (8 seulement), les courbes sont tr`es proches, que ce soit les courbes de bonnes d´etections ou de fausses alarmes. Dans les deux cas, le coefficient Kappa atteint plus de 0,8 (0,8 pour tous les changements et 0,85 pour les changements sup´erieurs `a 100 m2 ). Lorsque tous les changements sont consid´er´es, ce coefficient apparaˆıt tr`es haut par rapport `a celui obtenu sur les zones de Phoenix (il est de 0,72 dans le meilleur r´esultat de Phoenix). Ceci s’explique par le faible nombre de changements de petite taille. Lorsque seuls les grands changements sont consid´er´es, le coefficient Kappa est de 0,85, coefficient proche des meilleurs r´esultats de Phoenix. Cependant, d’apr`es la figure 5.11(a), si le taux de bonne d´etection est haut (il va de 100% `a 80% pour les changements larges), on observe un taux de fausses alarmes assez haut. 126CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ (a) Taux de vrais et faux positifs calcul´es pour la zone de Christchurch. (b) Coefficient Kappa calcul´es pour la zone de Christchurch. Figure 5.11 – 5.11(a) : Variations des taux de bonnes et fausses d´etections en fonction du λ. 5.11(b) : Variation du coefficient Kappa. R´esultats calcul´es pour la zone de Christchurch. En effet, la zone s´electionn´ee dans Christchurch contient beaucoup de v´eg´etation sous la forme d’arbres imposants et tr`es proches des habitations. Cet ´el´ement est souvent source de fausses alarmes, notamment lorsque des arbres sont coup´es ou des haies sont plant´ees entre deux acquisitions. Cette zone, assez diff´erente en terme de paysage et contenant des d´efauts plus prononc´es que les zones de Phoenix, montre tout de mˆeme une r´egularisation optimale aux environs d’un λ = 5, 0 pour des changements sup´erieurs `a 100 m2 . Cette valeur de r´egularisation, identique `a celle trouv´ee pour les 3 zones de Phoenix apparaˆıt ainsi bien adapt´ee au contexte urbain. 5.4 Analyse des r´esultats sur la zone de Sendai Les r´esultats obtenus sur la zone de Sendai sont pr´esent´es en figure 5.12. Sur cette figure, la courbe des bonnes d´etections est trac´ee en bleue, la courbe des fausses alarmes en rouge et la courbe du coefficient Kappa en vert. Contrairement aux zones pr´esent´ees pr´ec´edemment, la courbe des bonnes d´etections d´ecroˆıt doucement, de fa¸con presque lin´eaire, tandis que la courbe des fausses alarmes, tr`es basse mˆeme `a faible r´egularisation, ne d´ecroˆıt que tr`es peu puis semble se stabiliser `a moins de 10% de fausses alarmes. 1275.4. ANALYSE DES RESULTATS SUR LA ZONE DE SENDAI ´ La courbe Kappa, quant `a elle, pr´esente un maximum `a environ 6,5 pour une r´egularisation `a λ = 3, 0. Le fort taux de bonnes d´etections, mˆeme `a haute r´egularisation, s’explique par le nombre tr`es important de changements contigus de la sc`ene. En effet, pr`es de 300 bˆatiments ont ´et´e recens´es sur une zone de 270 km2 soit une densit´e d’habitation de plus d’un bˆatiment pour 1 000 m2 . Densit´e indiquant des bˆatiments tr`es proches entre eux. De plus, ces bˆatiments sont tr`es peu ´elev´es par rapport `a ceux des villes pr´ec´edemment ´etudi´ees puisque leur hauteur n’exc`ede pas 5 m. Or, la m´ethode d´evelopp´ee, bas´ee sur la notion de coh´erence locale traduite par l’utilisation d’une r´egularisation spatiale, a tendance `a lisser les variations de labels hautes fr´equences. Dans le cas du suivi urbain, cette caract´eristique permet de supprimer les fines variations de labels qui repr´esentent alors g´en´eralement des fausses alarmes puisque la grande majorit´e de l’image est labellis´ee non–changement. Dans le cas de Sendai, au contraire, la majorit´e de l’image est labellis´ee en changement. Ainsi, `a l’int´erieur de la zone d´etruite, ce sont les pixels labellis´es non–changements qui apparaissent comme des variations fines de labels et qui auront donc tendance `a ˆetre supprim´es. Ce ph´enom`ene tend `a limiter la pr´esence de fausses alarmes de changements sous forme d’amas de pixels isol´es et `a maintenir un taux de bonnes d´etections tr`es haut. Ainsi, la m´ethode d´evelopp´ee ne permet pas de discriminer chacun des bˆatiments d´etruits dans la zone totalement sinistr´ee mais elle va plutˆot d´elimiter cette zone sinistr´ee. Toutefois, la m´ethode peut s’av´erer tr`es int´eressante pour localiser les bˆatiments d´etruits isol´es et plus difficiles `a retrouver visuellement car noy´es au milieu des tr`es nombreux changements radiom´etriques. La courbe Kappa pr´esente une forte augmentation partant d’une r´egularisation λ = 1, 0 `a λ = 3, 5, augmentation due `a la baisse du nombre de fausses alarmes et au maintien des bonnes d´etections `a un taux ´elev´e. Puis, entre λ = 3, 5 et λ = 5, 0, le kappa montre une diminution qui s’explique par un palier et mˆeme une l´eg`ere augmentation du nombre de fausses alarmes (ph´enom`ene qui apparait lorsque la r´egularisation va diviser une alarme importante de changement en deux alarmes distinctes) et la baisse du taux de bonnes d´etections. 128CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ Figure 5.12 – Courbes des taux de bonnes d´etections, fausses alarmes et coefficient Kappa. Enfin, lorsque la r´egularisation atteint λ = 5, 0, le Kappa baisse de fa¸con quasi lin´eaire en suivant la tendance du taux de bonnes d´etections. Finalement, les courbes pr´esent´ees montrent de nouveau une r´egularisation optimale proche de λ = 3, 0 lorsque des changements de toutes les tailles (mais majoritairement inf´erieurs `a 100 m2 ) sont recherch´es, mˆeme dans un contexte aussi particulier que celui d’une destruction massive du bˆati et surtout avec des images provenant d’un capteur tr`es haute r´esolution diff´erent de celui utilis´e pour les zones exp´erimentales pr´ec´edentes. La figure 5.13 pr´esente la carte des changements obtenue sur une emprise importante de la r´egion de Sendai. Cette carte a ´et´e obtenue avec une r´egularisation λ = 3, 0, r´egularisation optimale d´efinie pr´ec´edemment. L’ampleur de la destruction est particuli`erement visible sur cette carte qui laisse pourtant apparaˆıtre des zones en changements positifs. Ces zones ne sont pas des erreurs mais correspondent en fait `a des amas, tr`es probablement de d´ebris, apparus entre les acquisitions avant et apr`es la catastrophe. Nous rappelons que l’image post–´ev`enement a ´et´e acquise 5 mois apr`es la catastrophe. La zone d´etruite a donc ´et´e en grande partie d´eblay´ee durant ces 5 mois. Cet intervalle d’acquisition peut alors repr´esenter un inconv´enient pour la mesure de la performance de notre m´ethode, le r´esultat de la carte de changement serait peut ˆetre diff´erent si la zone n’avait pas ´et´e d´eblay´ee. 1295.4. ANALYSE DES RESULTATS SUR LA ZONE DE SENDAI ´ (a) Ortho image Ikonos de 2010. (b) Ortho image Ikonos de 2011. (c) Carte des changements d’´el´evation obtenue avec λ = 3. Figure 5.13 – Images ortho rectifi´ees de la r´egion de Tohoku et carte des changements r´esultante. 130CHAPITRE 5. EXPERIMENTATION ET DISCUSSION DES R ´ ESULTATS DE LA ´ METHODE DE D ´ ETECTION DES CHANGEMENTS D’ ´ EL´ EVATION ´ Cette carte de changements met aussi clairement en ´evidence les destructions apparues dans la v´eg´etation, notamment sur la partie sud de l’image o`u une forˆet enti`ere a ´et´e d´evast´ee par le tsunami. Bien que les changements sur la v´eg´etation soient g´en´eralement compt´es en fausses alarmes, ceux–ci apparaissent pertinents puisque les d´egˆats environnementaux peuvent aussi avoir un fort impact ´economique pour une r´egion et n´ecessiter une ´evaluation. 5.5 Conclusion Ce chapitre a permis de tester les performances de la m´ethode d´evelopp´ee pour la d´etection des changements d’´el´evation ainsi que sa sensibilit´e envers les param`etres utilis´es ou les donn´ees d’entr´ee. Ces ´evaluations ont ´et´e r´ealis´ees grˆace `a la comparaison des cartes de changements obtenues avec des cartes de r´ef´erences g´en´er´ees manuellement (ou `a l’aide d’un LiDAR) et `a travers l’utilisation de plusieurs m´etriques classiques de la litt´erature : les taux de bonnes d´etections et de fausses alarmes ainsi que le coefficient Kappa. Comme attendu, la r´egularisation est le param`etre ayant la plus forte influence sur le r´esultat. Les diff´erents cas test pr´esent´es (Phoenix, Christchurch et Sendai) ont permis de montrer que lorsque des changements de toutes tailles sont recherch´es, la r´egularisation optimale se situe `a environ λ = 3, 0 et permet d’obtenir 100% des changements d´etect´es pour 70% `a 80% de fausses alarmes. Lorsque seuls les changements sup´erieurs `a 100 m2 sont cibl´es, une r´egularisation λ = 5, 0 est recommand´e et permet d’obtenir plus de 80% de bonnes d´etections et moins de 20% de fausses alarmes. Nous avons aussi pu observer que la qualit´e du MNS avait un impact important sur la qualit´e du r´esultat, notamment `a faible r´egularisation lorsque les changements de petite taille sont consid´er´es et que le taux de fausses alarmes g´en´er´ees par les erreurs des MNS est ´elev´e. Enfin, dans le cas d’une sc`ene pr´esentant des changements tr`es important dus `a une catastrophe majeure, nous avons pu montrer les performances de la m´ethode en termes de bonnes d´etections et de fausses alarmes tout en confirmant une r´egularisation optimale `a λ = 3, 0 lorsque les changements de toutes les tailles sont recherch´es. Si ces analyses permettent d´ej`a une bonne ´evaluation des performances de la m´ethode envers diff´erents param`etres, elles pourraient 1315.5. CONCLUSION cependant ˆetre compl´et´ees par des analyses portant sur l’impact de la r´esolution native et la qualit´e (contraste et piqu´e) des images d’entr´ee sur la taille des changements d´etectables et leur taux de d´etection. 132Chapitre 6 Conclusion g´en´erale 6.1 Conclusion Nous pr´esentons, dans ce travail de th`ese, une chaˆıne de traitements automatique, non supervis´ee et efficace pour la recherche des changements d’´el´evation apparus entre deux dates d’int´erˆet. Cette chaˆıne est bas´ee sur la g´en´eration de MNS `a chaque date `a partir de couples d’images satellites st´er´eoscopiques tr`es haute r´esolution puis sur l’analyse de leur diff´erences. L’un des avantages de cette chaˆıne est d’ˆetre totalement automatique, c’est–`a–dire qu’aucune information externe n’est n´ecessaire. Cet avantage permet de garantir l’efficacit´e de la m´ethode sur n’importe quelle zone du globe, pourvu que des couples st´er´eoscopiques soient pr´esents aux dates d’int´erˆet. Nous avons montr´e au cours de cette th`ese que l’un des ´el´ements les plus sensibles de la m´ethode est la qualit´e du MNS, c’est pourquoi une grande partie de ce travail est d´edi´ee `a l’am´elioration de la pr´ecision des MNS produits par imagerie spatiale. Une technique innovante, bas´ee sur la fusion de tous les MNS asym´etriques r´ealisables `a partir d’un mˆeme couple st´er´eoscopique a ´et´e d´evelopp´ee dans cet objectif. Cette m´ethode s’est av´er´ee particuli`erement efficace pour diminuer les erreurs de corr´elations dans le MNS final, qu’elles proviennent de la mise en correspondance sur des objets difficiles de la sc`ene ou des zones d’occlusion de l’une ou l’autre image du couple. Enfin, nous avons montr´e que cette m´ethode ´etait aussi avantageuse pour traiter la multi–st´er´eoscopie. 1336.1. CONCLUSION La m´ethode de d´etection des changements d’´el´evation d´evelopp´ee dans la chaˆıne de traitements est bas´ee sur une classification optimis´ee de tous les pixels du MNS diff´erentiel, classification qui d´epend de la valeur de diff´erence d’´el´evation des pixels mais aussi d’une contrainte spatiale permettant de limiter les variations de labels affect´es `a des pixels connexes. Cette m´ethode de classification permet ainsi de mettre en avant les changements coh´erents de la sc`ene tout en supprimant le bruit de corr´elation tandis que l’´equilibre fausses alarmes et bonnes d´etections est alors contrˆol´e par le param`etre de r´egularisation λ. Cette m´ethode a ´et´e test´ee sur plusieurs zones diff´erentes et dans un contexte de recherche des changements urbains typiques d’une ville. Ces zones ont ´et´e s´electionn´ees dans les villes de Phoenix (Arizona, Etats-Unis) et de Christchurch (Nouvelle-Z´elande). ´ Les r´esultats montrent que, lorsque un taux de d´etection de plus de 80% est attendu et pour des changements de taille sup´erieure `a 15×15 pixels, les taux de fausses alarmes varient alors de 20% `a 35% seulement et avec une r´egularisation optimale d´efinie `a λ = 5, 0. Lorsque des changements de toutes tailles sont recherch´es, la r´egularisation optimale est alors abaiss´ee `a environ λ = 3, 0 et permet la d´etection de 60% `a 80% des changements avec de 40% `a 60% de fausses alarmes. Ces r´esultats sont cependant particuli`erement sensibles aux sources d’erreurs de corr´elation pr´esentes dans la sc`ene. Dans un contexte plus particulier de destruction urbaine importante, apr`es une catastrophe majeure, nous montrons que les mˆemes r´egularisations peuvent s’appliquer et entraˆınent un taux de plus de 95% de bonnes d´etections et moins de 10% de fausses alarmes, valeurs obtenues pour la r´egion de Tohoku, touch´ee par un tsunami le 11 mars 2011. La chaˆıne de traitement d´evelopp´ee n´ecessite cependant l’utilisation de nombreux param`etres, que ce soit pour la g´en´eration des MNS ou la d´etection des changements. On montre pourtant que, quel que soit le contexte ou le capteur tr`es haute r´esolution (ville de Phoenix en image WorldView-1 ou r´egion d´etruite de Sendai en images Ikonos) les mˆeme param`etres peuvent ˆetre utilis´es. Nous montrons ainsi que seule la r´esolution du capteur ou le contexte de la zone d’´etude (urbaine ou rurale vallonn´ee) doivent ˆetre pris en compte pour la g´en´eration des MNS tandis que la r´esolution des images, la taille des changements ou la pr´ecision recherch´ee 134CHAPITRE 6. CONCLUSION GEN´ ERALE ´ sont les seules v´eritables contraintes du syst`eme de d´etection de changements. Enfin, le syst`eme fonctionne sur un seul et mˆeme “noyau” algorithmique, noyau que nous avons r´ealis´e de fa¸con `a le rendre adaptable `a de nombreux probl`emes de labellisation tandis que les probl`emes rencontr´es dans la chaˆıne de traitements sont eux–mˆemes tous formul´es en termes de labellisation des pixels d’une image selon des contraintes de probabilit´e et une contrainte de r´egularisation spatiale. 6.2 Perspectives Nous pouvons mettre en ´evidence trois perspectives d’´evolution `a fort int´erˆet pour la chaˆıne de traitements d´evelopp´ee. La premi`ere consiste en la cr´eation d’un masque de v´eg´etation. En effet, nous avons montr´e, lors des ´etapes de g´en´eration de MNS, que la mise en correspondance avait une forte tendance `a produire des erreurs sur des textures 3D aussi complexes que la v´eg´etation. Dans l’´etape de basculement des MNS, la v´eg´etation est partiellement supprim´ee grˆace aux contraintes sur le score de corr´elation et dans l’´etape suivante de fusion des MNS, d’autres erreurs dues `a la v´eg´etation peuvent ˆetre ´elimin´ees grˆace `a la r´egularisation sur le MNS. Mais ces erreurs restent n´eanmoins une des sources principales de fausses alarmes dans la d´etection des changements, notamment lorsque les couples ou n-uplets st´er´eoscopiques n’ont pas ´et´e acquis `a la mˆeme saison et que la v´eg´etation est alors plus ou moins d´evelopp´ee entre les images. Ce ph´enom`ene a notamment ´et´e illustr´e sur les cartes de changements obtenues sur la zone de Christchurch. Cependant, nous avons aussi pu montrer les d´egˆats importants sur la v´eg´etation apr`es la catastrophe de Sendai grˆace aux changements d´etect´es sur la v´eg´etation. Les changements apparus sur la v´eg´etation peuvent ainsi, selon le contexte ou l’application demand´ee, ˆetre recherch´es ou ˆetre consid´er´es en fausses alarmes. C’est pourquoi une perspective int´eressante `a ce travail est la cr´eation de masques de v´eg´etation afin de diminuer les fausses alarmes g´en´er´ees ou bien afin de mettre en ´evidence les alarmes de changements que la v´eg´etation produit. 1356.2. PERSPECTIVES Afin d’´eviter les cas o`u une zone de v´eg´etation serait transform´ee en zone bˆatie ou inversement, il serait alors n´ecessaire de g´en´erer des masques de v´eg´etation correspondant `a chacune des dates d’´etude. Deux solutions pourraient ensuite ˆetre envisag´ees pour la prise en compte de ces masques dans la d´etection des changements. Une premi`ere approche serait le filtrage post–traitement des alarmes de changements lorsque qu’une alarme correspond, `a chacune des dates, `a une zone de v´eg´etation. Une seconde approche, certainement plus pr´ecise, consisterait `a consid´erer la v´eg´etation comme un label `a part enti`ere lors de la classification des pixels. Une autre perspective d’am´elioration de la pr´ecision des r´esultats peut ˆetre repr´esent´ee par le couplage de la m´ethode de d´etection des changements d’´el´evation, telle que nous l’avons con¸cue, avec une m´ethode de d´etection des changements radiom´etriques. Nous avons pr´ecis´e, au d´ebut de ce travail, que les m´ethodes de d´etection des changements radiom´etriques ´etaient tr`es sensibles aux conditions d’acquisitions des images et d´etectaient ainsi des changements d’illumination non pertinents pour notre contexte. Cependant, nous avons aussi montr´e que notre m´ethode peut aussi g´en´erer des fausses alarmes mais sur des zones trop homog`enes ou trop p´eriodiques qui sont une gˆene pour la mise en correspondance. Ainsi, le filtrage, par exemple, des alarmes de changements 3D par une m´ethode de d´etection des changements radiom´etriques pourrait s’av´erer tr`es avantageux pour la pr´ecision des r´esultats finaux. Enfin, une derni`ere perspective `a ce travail est la g´en´eration de MNS `a partir d’images satellites monososcopiques, n’ayant pas ´et´e acquises simultan´ement. En effet, la chaˆıne de traitements d´evelopp´ee est bas´ee sur l’utilisation de couple ou uplets st´er´eoscopiques n´ecessaires pour les deux dates t1 et t2. Cette condition, requise pour tout traitement, n’est pourtant pas toujours satisfaite sur toutes les r´egions du globe car si les satellites aujourd’hui font preuve d’une grande r´eactivit´e et peuvent acqu´erir des images st´er´eoscopiques dans un court d´elai et n’importe o`u, les archives st´er´eoscopiques ne sont, elles, pas toujours disponibles. Une piste importante consisterait donc `a d´evelopper une m´ethode capable de g´en´erer des MNS `a partir de nombreuses images monoscopiques acquises dans les mois qui entourent la date d’int´erˆet t1 et avec n’importe quel capteur tr`es haute r´esolution. La mise en correspondance de 136CHAPITRE 6. CONCLUSION GEN´ ERALE ´ toutes les images n´ecessiterait alors la prise en compte de leurs diff´erences qu’elles soient dues `a l’acquisition des images comme les diff´erences d’illumination ou aux changements survenus entre les acquisitions. Cette piste pr´esente ainsi un fort int´erˆet dans de nombreux domaines n´ecessitant la cr´eation de MNS. 1376.2. PERSPECTIVES 138Table des figures 1.1 Sch´ema de principe des diff´erentes g´eom´etries de mise en correspondance. . . . . 34 1.2 Illustration des diff´erentes ´etapes de la chaˆıne globale de traitements. . . . . . . . 36 2.1 Illustration du syst`eme d’acquisition en barrette push–broom et des angles d’attitude du satellite. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2.2 Illustration du r´esultat de la spatio–triangulation pour le recalage des images. . . 44 2.3 Illustration du r´esultat de la spatio–triangulation pour le recalage des images (´echelle en pixels). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.4 Illustration du calcul des r´esidus de la spatio–triangulation. . . . . . . . . . . . . 46 2.5 Illustration de la m´ethode des graph–cuts appliqu´ee `a une image. . . . . . . . . . 50 2.6 Illustration d’un effet de streaking le long des lignes d’une image trait´ee par programmation dynamique. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 2.7 Illustration du parcours des diff´erentes directions pour la programmation dynamique afin de calculer le coˆut ”semi–global”. . . . . . . . . . . . . . . . . . . . . . 55 2.8 Illustration du calcul des coˆuts obtenus pour chaque label et chaque pixel de la s´equence selon l’´equation 2.5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 3.1 Illustration de l’impact de la r´egularisation pour la g´en´eration de MNS. . . . . . 64 3.2 Principe de parcours de la grille image maˆıtre pour l’interpolation des points de la grille r´eguli`ere. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 3.3 Illustration du principe de l’interpolation d’une grille r´eguli`ere terrain `a partir des points obtenus dans la g´eom´etrie de l’image maˆıtre. . . . . . . . . . . . . . . . . . 69 3.4 Illustration du r´esultat du basculement d’un MNS WorldView-1 `a partir de la carte des ´el´evations en g´eom´etrie image. . . . . . . . . . . . . . . . . . . . . . . . 70 139TABLE DES FIGURES 3.5 MNS asym´etriques provenant du mˆeme couple d’images st´er´eoscopiques. . . . . . 73 3.6 MNS provenant du mˆeme couple st´er´eoscopique et r´esultat de leur fusion par la moyenne. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.7 Sch´ema r´ecapitulatif de la proc´edure de fusion des MNS en fonction des valeurs initiales et de l’attache aux donn´ees. . . . . . . . . . . . . . . . . . . . . . . . . . 80 3.8 3.8(a) et 3.8(b) : MNS calcul´es `a partir du mˆeme couple st´er´eoscopique et r´esultats de leur fusion par optimisation globale 3.8(c). . . . . . . . . . . . . . . . . . . . . 81 3.9 3.9(a) et 3.9(b) : Histogrammes des cartes de diff´erences calcul´ees entre le liDAR et le MNS asym´etrique et MNS fusionn´e, respectivement. . . . . . . . . . . . . . . 85 3.10 Profils d’´el´evation compar´es entre le MNS asym´etrique (en vert), le MNS fusionn´e (en bleu) et le Lidar (en rouge). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 3.11 Illustration du triplet st´er´eoscopique Pl´eiades acquis sur la ville de Toulouse. . . 89 3.12 MNS calcul´es `a partir de 2 images puis 3 images du mˆeme uplet st´er´eoscopique. . 90 4.1 4.1(a) et 4.1(b) MNS de 2008 et 2011 calcul´es sur la zone 1 d´efinie sur la ville de Phoenix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 4.2 4.2(a) MNS diff´erentiel. 4.2(b) MNS diff´erentiel seuill´e. . . . . . . . . . . . . . . 96 4.3 Fonction sigmo¨ıdale permettant le calcul des coˆuts d’attache aux donn´ees pour le label changement positif. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 5.1 Orthoimages provenant des images panchromatiques WorldView–1 repr´esentant les trois zones test´ees sur la ville de Phoenix et la zone de Christchurch. . . . . . 103 5.2 5.2(a)Orthoimage calcul´ee et 5.2(b) donn´ee de r´ef´erence des changements de la zone 1 de Phoenix. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 104 5.3 Ortho images et MNS calcul´es avant et apr`es la catastrophe de Sendai du 11/03/2011. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 5.4 Zone partiellement d´etruite par le Tsunami et quantifi´ee `a travers la carte de r´ef´erence des bˆatiments d´etruits et intacts. . . . . . . . . . . . . . . . . . . . . . 108 5.5 Cartes de d´etection de changement obtenues `a partir d’un nombre variable de directions de calcul et une r´egularisation λ = 3, 0. . . . . . . . . . . . . . . . . . . 114 5.6 Illustration de l’impact du nombre de directions de calcul sur les taux de bonnes et fausses d´etections. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 115 140TABLE DES FIGURES 5.7 Cartes des d´etections calcul´ee avec diff´erentes valeurs de λ et 12 directions. . . . 116 5.8 5.8(a) et 5.8(c) : Variations des taux de fausses et vraies d´etections en fonction de la r´egularisation λ. 5.8(b) et 5.8(d) : Variation du coefficient Kappa en fonction de la r´egularisation λ. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 119 5.9 5.9(a) et 5.9(c) : Variations des taux de fausses et vraies d´etections en fonction de la r´egularisation λ ou de la taille de l’´el´ement structurant. 5.9(b) et 5.9(d) : Variations du coefficient Kappa en fonction de la r´egularisation λ ou de la taille de l’´el´ement structurant. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 122 5.10 5.10(a), 5.10(c) et 5.10(e) Variations des taux de bonnes et fausses d´etections en fonction du λ ; 5.10(b), 5.10(d) et 5.10(f ) Variations du coefficient Kappa pour chacune des zones test de Phoenix. . . . . . . . . . . . . . . . . . . . . . . . . . . 125 5.11 5.11(a) : Variations des taux de bonnes et fausses d´etections en fonction du λ. 5.11(b) : Variation du coefficient Kappa. R´esultats calcul´es pour la zone de Christchurch. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 5.12 Courbes des taux de bonnes d´etections, fausses alarmes et coefficient Kappa. . . . 129 5.13 Images ortho rectifi´ees de la r´egion de Tohoku et carte des changements r´esultante. 130 141TABLE DES FIGURES 142Liste des tableaux 1.1 M´etadonn´ees des images utilis´ees lors des diff´erentes ´etudes. . . . . . . . . . . . . 38 3.1 Tableau de synth`ese des param`etres de la m´ethode compl`ete de g´en´eration des MNS. 92 4.1 Tableau de synth`ese des param`etres n´ecessaires `a la m´ethode de d´etection des changements d’´el´evation. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 100 143LISTE DES TABLEAUX 144Bibliographie [1] E. Berthier, Y. Arnaud, R. Kumar, S. Ahmad, P. Wagnon, and P. Chevallier. Remote sensing estimates of glacier mass balances in the Himachal Pradesh (Western Himalaya, India). In Remote Sensing of Environment, vol. 108 no. 3 pp. 327–338, 2007. [2] P. Baldi, M. Fabris, M. Marsella, and R. Monticelli. Monitoring the morphological evolution of the sciara del fuoco during the 2002 – 2003 Stromboli eruption using multi–temporal photogrammetry. In ISPRS Journal of Photogrammetry and Remote Sensing, vol. 59 no. 4 pp. 199–211, 2005. [3] M. Koga and A. Iwasaki. Improving the measurement accuracy of three-dimensional topography changes using optical satellite stereo image data. In IEEE Transactions on Geoscience and Remote Sensing, vol. 49 no. 8 pp. 2918–2923, Aug. 2011. [4] K. Tsutsui, S. Rokugawa, H. Nakagawa, S. Miyazaki, C. Cheng, T. Shiraishi, and Shiun-Der Yang. Detection and volume estimation of large-scale landslides based on elevation–change analysis using DEMs extracted from high–resolution satellite stereo imagery. In IEEE Transactions on Geoscience and Remote Sensing , vol. 45 no. 6 pp. 1681–1696, Jun. 2007. [5] N. Champion, D. Boldo, M. Pierrot-Deseilligny, and G. Stamon. 2D Change detection from satellite imagery : performance analysis and impact of the spatial resolution of input images. In IEEE International Geoscience and Remote Sensing Symposium (IGARSS), pp. 1421–1424, Jul. 2011. [6] P. Reinartz, J. Tian, and A.A. Nielsen. Building damage assessment after the earthquake in Haiti using two post–event satellite stereo imagery and dsms. In Joint Urban Remote Sensing Event (JURSE), pp. 057–060, 2013. 145BIBLIOGRAPHIE [7] R.J. Radke, S. Andra, O. Al-Kofahi, and B. Roysam. Image change detection algorithms : a systematic survey. In IEEE Transactions on Image Processing, vol. 14, no. 3, pp. 294–307, Mar. 2005. [8] J. Tian, H. Chaabouni-Chouayakh, P. Reinartz, T. Krauss, and P. d Angelo. Automatic 3D change detection based on optical satellite stereo imagery. In ISPRS TC VII Symposium, Vienna, 2010. [9] P. J. Deer. Digital change detection techniques : Civilian and military applications. In International Symposium on Spectral Sensing Research, 1995. [10] A. Singh. Review article digital change detection techniques using remotely–sensed data. In International Journal of Remote Sensing, vol. 10, no. 6, pp. 989–1003, 1989. [11] M. Volpi, D. Tuia, M. Kanevski, F. Bovolo, and L. Bruzzone. Supervised change detection in VHR images : a comparative analysis. In IEEE International Workshop on Machine Learning for Signal Processing, pp. 1–6, Sept. 2009. [12] L. Bruzzone and F. Bovolo. A conceptual framework for change detection in very high resolution remote sensing images. In IEEE International Geoscience and Remote Sensing Symposium (IGARSS), pp. 2555–2558, Jul. 2010. [13] P.L. Rosin and E. Ioannidis. Evaluation of global image thresholding for change detection. In Pattern Recognition Letters, vol. 24, no. 14, pp. 2345–2356, 2003. [14] F. Bovolo, L. Bruzzone, and M. Marconcini. A novel approach to unsupervised change detection based on a semi–supervised SVM and similarity measure. In IEEE Transaction on Geoscience and Remote Sensing Letters, vol. 46, no. 7, pp. 2070–2082, 2008. [15] D.H.A. Al-Khudhairy, I. Caravaggi, and S. Clada. Structural damage assessments from Ikonos data using change detection, object–oriented segmentation and classification techniques. In Photogrammetric Engineering and Remote Sensing, vol. 71, pp. 825–837, 2005. [16] L. Bruzzone and D.F. Prieto. Automatic analysis of the difference image for unsupervised change detection. In IEEE Transactions on Geoscience and Remote Sensing, vol. 38, no. 3, pp. 1171–1182, May 2000. 146BIBLIOGRAPHIE [17] T.T. Vu, M. Matsuoka, and F. Yamazaki. Lidar–based change detection of buildings in dense urban areas. In IEEE International Geoscience and Remote Sensing Symposium (IGARSS), vol. 5, pp. 3413–3416, Sep. 2004. [18] G. Sithole and G. Vosselman. Automatic structure detection in a point–cloud of an urban landscape. In 2nd GRSS/ISPRS Joint Workshop on Remote Sensing and Data Fusion over Urban Areas, pp 67–71, May 2003. [19] F. Rottensteiner. Automated updating of building data bases from digital surface models and multi–spectral images : Potential and limitations. In ISPRS Congress, Beijing, China, vol. 37, pp. 265–270, Dec. 2008. [20] G. Vosselman, B. G. H. Gorte, and G. Sithole. Change detection for updating medium scale maps using laser altimetry. In Proceedings of the 20th ISPRS Congress, pp. 12–23, 2004. [21] L. Matikainen, J. Hyyppa, E. Ahokas, L. Markelin, and H. Kaartinen. Automatic detection of buildings and changes in buildings for updating of maps. In Remote Sensing, vol. 2, no. 5, pp. 1217–1248, 2010. [22] H. Chaabouni-Chouayakh, P. d’Angelo, T. Krauss, and P. Reinartz. Automatic urban area monitoring using digital surface models and shape features. In Joint Urban Remote Sensing Event (JURSE), pp. 85–88, Apr. 2011. [23] F. Jung. Detecting building changes from multitemporal aerial stereopairs. In ISPRS Journal of Photogrammetry and Remote Sensing, vol. 58, no. 4, pp. 187–201, 2004. [24] J. Tian, H. Chaabouni-Chouayakh, and P. Reinartz. 3D Building change detection from high resolution spaceborne stereo imagery. In International Workshop on Multi-Platform/MultiSensor Remote Sensing and Mapping (M2RSM), pp. 1–7, 2011. [25] J. A. Marchant and C. M. Onyango. Shadow-invariant classification for scenes illuminated by daylight. In Journal of the Optical Society of America A, vol. 17, no. 11, pp. 1952–1961, Nov. 2000. [26] J. Tian, S. Cui, and P. Reinartz. Building change detection based on satellite stereo imagery and digital surface models. In IEEE Transactions on Geoscience and Remote Sensing, pp. 1–12, 2013. 147BIBLIOGRAPHIE [27] A.A. Nielsen. The regularized iteratively reweighted mad method for change detection in multi- and hyperspectral data. In IEEE Transactions on Image Processing, vol. 16, no. 2, pp. 463–478, 2007. [28] D. Scharstein and R. Szeliski. A taxonomy and evaluation of dense two–frame stereo correspondence algorithms. In International Journal of Computer Vision, vol. 47, pp. 7–42, 2002. [29] M.Z. Brown, D. Burschka, and G.D. Hager. Advances in computational stereo. In IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 25, no. 8, pp. 993–1008, 2003. [30] N. Lazaros, G.C. Sirakoulis, and A. Gasteratos. Review of stereo vision algorithms : from software to hardware. In International Journal of Optomechatronics, vol. 2, no. 4, pp. 435–462, 2008. [31] H. Hirschmuller. Accurate and efficient stereo processing by semi–global matching and mutual information. In IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR), vol. 2, pp. 807–814, Jun. 2005. [32] M. Pierrot-Deseilligny and N. Paparoditis. A multiresolution and optimization–based image matching approach : an application to surface reconstruction from SPOT5-HRS stereo imagery. In Internationales Archives of Photogrammetry and Remote Sensing, 2006. [33] Q. Yang, L. Wang, R. Yang, H. Stewenius, and D. Nister. Stereo matching with colorweighted correlation, hierarchical belief propagation, and occlusion handling. In IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 31, no. 3, pp. 492–504, 2009. [34] A.F. Bobick and S.S. Intille. Large occlusion stereo. In International Journal of Computer Vision, pp. 181–200, 1999. [35] C. Baillard and A. Zisserman. Automatic reconstruction of piecewise planar models from multiple views. In IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR), vol. 2, pp. 559–65, Jun. 1999. 148BIBLIOGRAPHIE [36] L. Zhang and A. Gruen. Multi–image matching for dsm generation from ikonos imagery. In ISPRS Journal of Photogrammetry and Remote Sensing, vol. 60, no. 3, pp. 195–211, 2006. [37] R. Zabih and J. Woodfill. Non–parametric local transforms for computing visual correspondence. In Computer Vision ECCV’94, pp. 151–158, 1994. [38] A. Klaus, M. Sormann, and K. Karner. Segment-based stereo matching using belief propagation and a self–adapting dissimilarity measure. In IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CPVR), vol. 2, Jun. 2006. [39] J. Sun, Y. Li, S.B. Kang, and H.Y. Shum. Symmetric stereo matching for occlusion handling. In IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR), vol. 2, pp. 399–406, 2005. [40] M. Sizintsev and R.P. Wildes. Coarse-to-fine stereo vision with accurate 3d boundaries. In Image and Vision Computing, vol. 28, no. 3, pp. 352–366, 2010. [41] Y. Boykov and V. Kolmogorov. An experimental comparison of min-cut/max- flow algorithms for energy minimization in vision. In IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 26, no. 9, pp. 1124–1137, Sep. 2004. [42] K Schindler. An overview and comparison of smooth labeling methods for land–cover classification. In IEEE Transactions on Geoscience and Remote Sensing, vol. 50, no. 11, pp. 4534–4545, Nov. 2012. [43] P.F. Felzenszwalb and D.R. Huttenlocher. Efficient belief propagation for early vision. In IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CVPR), vol. 1, pp. 261–268, Jul. 2004. [44] O. Veksler. Stereo correspondence by dynamic programming on a tree. In IEEE Computer Society Conference on Computer Vision and Pattern Recognition (CPVR), vol. 2, pp. 384– 390, Jun. 2005. [45] H. Hirschmuller and D. Scharstein. Evaluation of cost functions for stereo matching. In IEEE Conference on Computer Vision and Pattern Recognition (CVPR), pp. 1–8, Jun. 2007. 149BIBLIOGRAPHIE [46] S. Birchfield and C. Tomasi. Depth discontinuities by pixel–to–pixel stereo. In International Journal of Computer Vision, vol. 35, pp. 269–293, 1999. [47] H. Hirschmuller, P. R Innocent, and J. Garibaldi. Real–time correlation based stereo vision with reduced border errors. In International Journal of Computer Vision, vol. 47, no. 3, pp. 229–246, 2002. [48] M. Pierrot-Deseilligny L. Penard, N. Paparoditis. 3d building facade reconstruction under mesh form from multiple wide angle views. In Proceedings of the 20th ISPRS Congress, 2005. [49] P. Fua. A parallel stereo algorithm that produces dense depth maps and preserves image features. In Machine Vision and Applications, vol. 6, pp. 35–49, 1993. [50] G. Egnal and R.P. Wildes. Detecting binocular half-occlusions : empirical comparisons of five approaches. In IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 24, no. 8, pp. 1127–1133, 2002. [51] S. Chambon and A. Crouzil. Towards correlation-based matching algorithms that are robust near occlusions. In Proceedings of the 17th International Conference on Pattern Recognition (ICPR), vol. 3, pp. 20–23, 2004. [52] P. N. Belhumeur. A bayesian approach to binocular steropsis. In International Journal of Computer Vision, vol. 19, no. 3, pp. 237–260, 1996. [53] Y. Furukawa and J. Ponce. Accurate dense and robust multi–view stereopsis. In IEEE Transactions Pattern Analysis and Machine Intelligence, vol. 32, pp. 1362–1376, 2010. [54] F De Lussy, D. Greslou, C Dechoz, V. Amberg, J. M. Delvit, L. Lebegue, G. Blanchet, and S. Fourest. Pleiades HR in flight geometrical calibration : location and mapping of the focal plane. In ISPRS International Archives of the Photogrammetry, Remote Sensing and Spatial Information Sciences, vol. 39, pp. 519–523, 2012. [55] J. Grodecki and G. Dial. Block adjustment of high-resolution satellite images by rational polynomials. In Photogrammetric Engineering and Remote Sensing, vol. 69, pp. 59–68, 2003. 150BIBLIOGRAPHIE [56] C.S. Fraser, G. Dial, and J. Grodecki. Sensor orientation via RPCs. In ISPRS Journal of Photogrammetry and Remote Sensing, vol. 60, pp. 182–194, 2006. [57] S. Geman and D. Geman. Stochastic relaxation, gibbs distributions, and the bayesian restoration of images. In IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 6, no. 6, pp. 721–741, Nov. 1984. [58] Y. Boykov, O. Veksler, and R. Zabih. Fast approximate energy minimization via graph– cuts. In IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 23, no. 11, pp. 1222–1239, Nov. 2001. [59] S. Roy and I.J. Cox. A maximum–flow formulation of the n-camera stereo correspondence problem. In Sixth International Conference on Computer Vision, pp. 492–499, Jan. 1998. [60] Y. Weiss and W.T. Freeman. On the optimaly of solutions of the max-product belief propagation algorithm in arbitrary graphs. In IEEE Transactions Information Theory, vol. 47, pp. 723–735, 2001. [61] Daniel Scharstein and Richard Szeliski. vision.middlebury, 2012. [62] L. Randolph Ford and D.R. Fulkerson. A simple algorithm for finding maximal network flows and an application to the Hitchcock problem. Rand Corporation, 1955. [63] V. Kolmogorov and R. Zabih. What energy functions can be minimized via graph–cuts. In IEEE Transactions Pattern Analysis and Machine Intelligence, vol. 26, pp. 147–159, 2004. [64] R. Szeliski, R. Zabih, D. Scharstein, O Veksler, V Kolmogorov, A. Agarwala, and C. Rother. A comparative study of energy minimization methods for markov random fields. In Computer Vision-ECCV, pp. 16–29, 2006. [65] V. Kolmogorov. Convergent tree–reweighted message passing for energy minimization. In IEEE Transactions Pattern Analysis and Machine Intelligence, vol. 28, pp. 1568–1583, 2006. [66] P.F. Felzenszwalb and R. Zabih. Dynamic programming and graph algorithms in computer vision. In IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 33, no. 4, pp. 721–740, Apr. 2011. 151BIBLIOGRAPHIE [67] Y. Otha and T. Kanade. Stereo by intra- and inter–scanline search using dynamic programming. In IEEE Transactions Pattern Analysis and Machine Intelligence, vol. 2, pp. 139–154, 1985. [68] R. B. Potts. Some generalized order–disorder transformations. Cambridge Philos. Soc. Math. Proc., vol. 48, pp. 106–109, 1952. [69] A. Fahmi, J. Jansa, C. Ries, et al. The generation of true orthophotos using a 3D building model in conjunction with conventional DTM. In International Archives of Photogrammetry and Remote Sensing, vol. 32, 1998. [70] G. Singh, Y. Yamaguchi, W.-M. Boerner, and Sang-Eun Park. Monitoring of the March 11, 2011, off-tohoku 9.0 earthquake with super–tsunami disaster by implementing fully polarimetric high–resolution polsar techniques. In Proceedings of the IEEE, vol. 101, no. 3, pp. 831–846, 2013. [71] J. Cohen. A coefficient of agreement for nominal scales. In Educational and psychological measurement, vol. 20, no. 1, pp. 37–46, 1960. [72] G.G. Wilkinson. Results and implications of a study of fifteen years of satellite image classification experiments. In IEEE Transactions on Geoscience and Remote Sensing, vol. 43, no. 3, pp. 433–440, Mar. 2005. [73] R.M. Haralick, S.R. Sternberg, and X. Zhuang. Image analysis using mathematical morphology. In IEEE Transactions on Pattern Analysis and Machine Intelligence, vol. 9, no. 4, pp. 532–550, 1987. 152 Une approche d’alignement `a la probl´ematique de la d´etection des activit´es habituelles Rick Moritz To cite this version: Rick Moritz. Une approche d’alignement `a la probl´ematique de la d´etection des activit´es habituelles. Computers and Society. INSA de Rouen, 2014. French. . HAL Id: tel-00944105 https://tel.archives-ouvertes.fr/tel-00944105 Submitted on 10 Feb 2014 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destin´ee au d´epˆot et `a la diffusion de documents scientifiques de niveau recherche, publi´es ou non, ´emanant des ´etablissements d’enseignement et de recherche fran¸cais ou ´etrangers, des laboratoires publics ou priv´es.THESE Pr´esent´ee `a : L’Institut National des Sciences Appliqu´ees de Rouen En vue de l’obtention du grade de : Docteur en Informatique Par Rick P. C. MORITZ Routine Activity Extraction from Local Alignments in Mobile Phone Context Data Soutenance le 05/02/2014 Devant le jury compos´e de : Pr´esident Christophe Garcia Professeur des Universit´es LIRIS, INSA Lyon Rapporteurs Bruno Cr´emilleux Professeur des Universit´es GREYC, Universit´e de Caen Philippe Leray Professeur des Universit´es LINA, Universit´e de Nantes Directeur de Th`ese Michel Mainguenaud Professeur des Universit´es LITIS, INSA de Rouen Co-Encadrants Alexandre Pauchet Maˆıtre de Conf´erences LITIS, INSA de Rouen Gr´egoire Lefebvre Ing´enieur R&D, Docteur Orange Labs MeylanAbstract Humans are creatures of habit, often developing a routine for their day-to-day life. We propose a way to identify routine as regularities extracted from the context data of mobile phones. Mobile phones have become the de facto wearable sensor device, used and carried on person over most of the day. We study existing approaches to this problem, and deem past results not satisfactory, with regard to the ever richer context data available, that is not being exploited. Subsequently, we choose Lecroq et al.’s existing state of the art algorithm as basis for a set of modifications that render it suitable for the task, foremostly addressing performance issues. This algorithm is itself an evolution of a dynamic programming based local alignment algorithm, which is frequently used in biological sequence analysis. Our approach searches alignments in sequences of n-tuples of context data, which correspond to the user traces of routine activity. Our key enhancements to this algorithm are exploiting the sequential nature of the data to reduce algorithmic complexity by a factor equal to the number of data sources available, and using an early maximisation approach to reject non-optimal alignments in favour of optimal alignments. We develop a generator of context-like data to allow us to evaluate our approach automatically, without relying on manual annotation of ground truth. Additionally, we collect and manually annotate a mobile phone context dataset to facilitate the evaluation of our algorithm. The results are promising, allowing us to prove the concept of our approach, while also outlining the limitations. Our contribution can be used as a filter for a domain expert (e.g. the user of the mobile phone himself) to determine whether a certain interval of data corresponds to an actual activity based habit, reducing the workload compared to a pure manual approach. The configurability of the algorithm allows the expert to have control over which patterns are filtered or retained.Contents Nomenclature . . . . . . . . . . . . . . . . . . . . . . . . . . . . xii 1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1 2 State of the Art . . . . . . . . . . . . . . . . . . . . . . . . . . . 5 2.1 Context Datasets . . . . . . . . . . . . . . . . . . . . . . . . 6 2.1.1 Reality Mining Dataset . . . . . . . . . . . . . . . . . . . . . . . . 6 2.1.2 Lausanne Data Collection Campaign . . . . . . . . . . . . . . . . . 7 2.1.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 8 2.2 Machine Learning and Statistical Analysis . . . . . . . . . . . . . . 9 2.2.1 Classification . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 2.2.2 Clustering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 2.2.3 Probabilistic State Machines . . . . . . . . . . . . . . . . . . . . . 12 2.2.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 12 2.3 Sequence Mining . . . . . . . . . . . . . . . . . . . . . . . . 13 2.3.1 Itemset Mining and Sequential Pattern Mining . . . . . . . . . . . 14 2.3.2 String Mining . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 2.3.3 Comparison . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2.4 Conclusion and Direction . . . . . . . . . . . . . . . . . . . . . 46 3 Alignment of Sequences of n-Tuples . . . . . . . . . . . . . . . . . . . 47 3.1 Context Model . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.1.1 Sequence of n-tuples . . . . . . . . . . . . . . . . . . . . . . . . . . 47 3.1.2 Blocking and Sampling . . . . . . . . . . . . . . . . . . . . . . . . 49 3.1.3 Meta-data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 51 3.1.4 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 54 3.2 Alignment Algorithm. . . . . . . . . . . . . . . . . . . . . . . 55 iv3.2.1 Contribution I: Reduction to n-tuple Problem . . . . . . . . . . . . 57 3.2.2 Contribution II: Locally Optimal Alignments . . . . . . . . . . . . 63 3.3 Discussion . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 4 Experimental Validation and Results . . . . . . . . . . . . . . . . . . 69 4.1 Synthetic Data Evaluation. . . . . . . . . . . . . . . . . . . . . 69 4.1.1 Synthetic Data Generator and Dataset . . . . . . . . . . . . . . . . 69 4.1.2 Synthetic Data Pattern Extraction Evaluation . . . . . . . . . . . 89 4.1.3 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95 4.2 Real World Data Evaluation . . . . . . . . . . . . . . . . . . . . 96 4.2.1 Data Collection Campaign . . . . . . . . . . . . . . . . . . . . . . . 96 4.2.2 Evaluation of Alignment Approach on Real Data . . . . . . . . . . 102 4.2.3 Analysis . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106 5 Conclusions and Future Work . . . . . . . . . . . . . . . . . . . . . 109 Bibliography . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 113 A Benchmarks of Supervised Classification Algorithms for Next Place Prediction . . 130 A.1 The Next Place Prediction Problem . . . . . . . . . . . . . . . . . 130 A.2 Dataset Analysis . . . . . . . . . . . . . . . . . . . . . . . . 130 A.3 Next Visit Prediction. . . . . . . . . . . . . . . . . . . . . . . 132 A.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . 136 B Details on the evaluation processes . . . . . . . . . . . . . . . . . . . 138 B.1 Real world data . . . . . . . . . . . . . . . . . . . . . . . . . 138 B.1.1 Similarity score tables . . . . . . . . . . . . . . . . . . . . . . . . . 138 B.1.2 Detailed results of the alignment algorithm evaluation on synthetic data . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 141 B.1.3 Expert annotated patterns . . . . . . . . . . . . . . . . . . . . . . 145 vList of Figures 2.3.1 A WAP-tree and conditional WAP-trees for two subsequences c and ac (Source: Pei et al. [2000]) . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 2.3.2 Examples of different types of repeat-related features in a string. . . . . . 26 2.3.3 Construction of a suffix tree from abcbcabc%. The numbers indicate both the order and the index of the current suffix being added. New leaves and nodes at each step are shaded. . . . . . . . . . . . . . . . . . . . . . . . . 28 2.3.4 Identification of longest repeats using Baker’s algorithm in the complete suffix tree from Fig. 2.3.3. Steps 7, 8 and 9 of the tree construction are performed, adding the three shaded leaves. The order in which the leaves are added is given by the nodes and indicated by the superscripts of the vertex labels. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.3.5 Original Needleman-Wunsch algorithm, as introduced by Needleman and Wunsch [1970]. The left table is filled with incrementation markers (“1”) at each location where a pair of values match. In the right table, the values for all the cells have been determined, and the alignment highlighted by arrows and bold values. The alignment (arrows) starts at the maximum value and then follows the maximum values, upwards and to the left in the table. The “skips” between values 5 and 4, and 3 and 2 are indicative of deletions in the row-string. . . . . . . . . . . . . . . . . . . . . . . . . . 33 2.3.6 Calculation of the local similarity using the dynamic programming approach. The preceding values in the table are either incremented by the substitution score, in the case of the diagonal predecessor, or decremented by the indel penalty. The maximum value is carried over for all successive operations. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34 vi2.3.7 Dynamic programming version of the Needleman-Wunsch algorithm. Nonmatching substitutions have no penalty, matching substitutions score a value of 1 and insertions and deletions are penalised with a value of - 1. The left table shows how a particular cell value is calculated from three predecessor values, the right table shows the complete table and highlights the series of maximal values which indicate the alignment operations. Note that the traceback follows substitutions over indels in cases of ambiguity (e.g. the 4→3 transition marked in the right table), as the value that was used to calculate the current value defines the path for the traceback, and not necessarily the maximum value. . . . . . . . . . . . . . 36 2.3.8 Two accumulated similarity tables obtained using the Smith-Waterman algorithm. The left has been calculated using a similarity score of 1 for matches, and dissimilarity penalties of -2 for non-matching substitutions and indels. The right table has this penalty reduced to -1. In each case, the alignments with a similarity score of at least 3 have been highlighted. Note how the higher penalty leads to smaller, more local alignments. . . . 38 2.3.9 Row and column prefixes, and accompanying notation. . . . . . . . . . . 40 2.3.10Three different ways of modelling context for different sequence mining approaches. “Data synchronisation” refers to the need to have a full set of sensor readings available at every time step, irrespective of different sampling frequencies of the actual sensors. . . . . . . . . . . . . . . . . . . 42 3.1.1 The transformation of continuous context C(t) into context data in a sequential model. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 3.1.2 Linking w- and z-axes into a single dimension, due to translational symmetry (i.e.: every set of discrete steps taken along the z-axis is replicated identically in the w-axis). . . . . . . . . . . . . . . . . . . . . . . . . . . . 49 3.1.3 Splitting a long sequence of context data into blocks of roughly equal (but not necessarily equal) lengths. . . . . . . . . . . . . . . . . . . . . . . . . . 50 3.1.4 The reduction of the size of individual accumulated similarity score tables which can be obtained by blocking. a and b are two sequences, with the local similarity scores contained in the volume spanned between them. . . 51 3.1.5 A sample substitution similarity score table from the set of n tables. . . . 52 3.1.6 Two intervals of identical values but different lengths can be aligned by assigning positive similarity score to insertions and deletions of identical values. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 vii3.2.1 Two example context sequences, the resulting context data sequences and an alignment (cells underlaid in grey) that corresponds to two similar subsequences. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 55 3.2.2 Alignment of two context sequences a and b from a corpus. . . . . . . . . 56 3.2.3 Selection of tuple elements in a sequence using reverse addressing. The origin of the coordinate system used here is in the lower right end of the sequence. From there the first coordinate is incremented when moving one element to left, and the second when moving one element upwards. . 58 3.2.4 Example of the •i,,j operator. If the operator is used on the same sequence of n-tuples, with one pair of indices being higher than the other, the smaller result is a subset of the larger one. In this case the result underlaid in black is a subset of the result underlaid in grey. . . . . . . . . . . . . . 59 3.2.5 Selection of a column and row using the ↑ and ← operators. . . . . . . . . 60 3.2.6 Calculation of a column similarity score. Two columns are extracted from two sequences, then aligned in inverse order, up to the point where the similarity score reaches zero. The maximum similarity from this interval is the similarity value we assign these two columns. . . . . . . . . . . . . . 61 3.2.7 The local dependencies of the calculation of a local similarity value. To the left in the three-dimensional table of accumulated similarity scores T and to the right the equivalent representation in the domain of the two sequences a and b. Operations V and VI – insertion and deletion – are one-dimensional operations and therefore appear only either in a or on b. 63 3.2.8 The rightmost (n-th) z-slice of a table T. The axes of the plane correspond to the temporal axes of the sequences. The height and colour are representations of the accumulated similarity value in the cell in T. The white profile line denotes the plane of an arbitrarily chosen MASS. The highest value is denoted by an X. . . . . . . . . . . . . . . . . . . . . . . . 64 3.2.9 The local neighbourhood of a node (in the centre of the shown cube) in the accumulated score table T. The shown cube consists of 27 sub cubes, the one at the centre being the “home node”. The other 26 surrounding it, are the direct neighbours. A partial spatial subdivision is shown in the lower left corner to illustrate the notion of “radius”. . . . . . . . . . . . . 66 viii3.2.10Accumulated similarity score table for the alignment operations of the context data corresponding to two consecutive days. Each graph represents one of the five slices (n = 5) of the z-axis, starting at one at the top, incrementing to five at the bottom right. Height and colour correspond to local similarity values. The x - y plane is spanned by the temporal axes of the sequences. Note multiple peaks at different heights. . . . . . . . . . 67 4.1.1 Stream, pattern and cell for a simulated 4-tuple dataset. The stream consists of patterns (coloured) and random data (light grey). Each pattern consists of defined values (blue) and undefined values (white). . . . . . . . 71 4.1.2 Four alphabets A1, A2, A3, A4 with respective spectra 5, 6, 4 and 2. N.B.: Different symbols across different sensors (e.g. “A”, “1”, “a”, “0”) are used here for illustration purposes only, symbols are actually represented by their indices (i.e. as in A2). . . . . . . . . . . . . . . . . . . . . . . . . 72 4.1.3 A set of patterns, P = {X1, . . . , Xm}, with n data sources and lengths l1, . . . , lm, and a pattern element x = Xm,n,1 ∈ An. . . . . . . . . . . . . . 74 4.1.4 Illustration of dependence coefficient determination during creation of similar patterns. The right vectors are created from the values of the left vectors, through linear interpolation and scaling. . . . . . . . . . . . . 79 4.1.5 Noise is applied to symbol x from alphabet A1 using transition cost matrix T1 and transition cost vectors ~b1, ~d1, ~e1. The resulting value is y = 4. This example uses integer values for easier reading and comprehension, in general the random values are real values. The process starts with value x2,1,1 = 2 from pattern X2, extracts the corresponding row from T1 and selects the smallest absolute value in the sum of the extracted row and a random vector, to determine the index of the element to replace x. . . . . 84 4.1.6 Extract of a possible resulting stream with n = 4 and m = 3 different patterns (blue, yellow and green) and noise (red). I and D indicate cells in which insertions or deletions have happened. y is the symbol that has been generated in Fig. 4.1.5. . . . . . . . . . . . . . . . . . . . . . . . . . . 85 4.1.7 Evaluation scoring example. . . . . . . . . . . . . . . . . . . . . . . . . . . 90 ix4.1.8 The ratios of the number of alignments to the combinatorially expected number of identical pairs of patterns in two different files, for all five datasets and all 27 experiments. As the number of patterns rises, the expected number of pairs gets lower, and the rate of alignments gets closer to the number of pairs. *Note: The values for dataset 3 are on another scale than the others. . . . 93 4.2.1 Clustering of locations into places of the data gathered by one subject over a one week timespan. Artificial jitter has been introduced to the data, to better visualise data density. Note how nine incidences in the top left are clustered together with the other points towards the top left. The low number of incidences renders this error negligible. . . . . . . . . . 100 4.2.2 Visualisation of an extract of the captured data, with similar intervals marked. This extract covers the morning period of two consecutive days. The y-axis represents the different discretised context values. The values shown in this extract are light intensity on a logarithmic scale (loglux), the state of the proximity sensor (prox), the location cluster id (place), the battery level (batt) and the orientation of the phone (ori). . . . . . . . 101 4.2.3 Alignment of three pre-selected patterns with campaign data in 58 slices corresponding to 24-hour periods of 5-tuples. . . . . . . . . . . . . . . . . 103 4.2.4 Mean precision and recall for the instances in the corpus (“B” - part of the alignment) for the 24 test configurations. From left to right are the different values of MASS used. With rising MASS, both precision and recall increase. The rightmost bars are fewer, as no alignments were made with MASS values 1,700 and above for pattern 3, and no alignments were made with MASS values 3,000 for pattern 1. Due to the smaller number of elements contained in pattern 3, it has higher values than patterns 1 and 2 for the same MASS. . . . . . . . . . . . . . . . . . . . . . . . . . . 107 A.3.1Results for the Naive Bayes Classification Algorithm . . . . . . . . . . . . 134 A.3.2Results for the LogitBoost Adaptive Decision Tree Classification Algorithm135 A.3.3Results for the SMO Classification Algorithm without Feature Selection Filters . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 135 A.3.4Results for the SMO Classification Algorithm with Feature Selection Filters136 B.1.1Reference pattern 1 - evening and night at the week-end home. . . . . . . 146 B.1.2Reference pattern 2 - morning and transit to work on a week-day. . . . . . 147 B.1.3Reference pattern 3 - at work, telephone stored or turned over. . . . . . . 148 xList of Tables 2.1 Comparison of SPM and string mining . . . . . . . . . . . . . . . . . . . . 45 4.1 Configuration of the five datasets. . . . . . . . . . . . . . . . . . . . . . . 87 4.2 Configuration values for the 27 experiments making up a dataset. . . . . . 88 4.3 Transition matrix T used for the generation of the test datasets. . . . . . 88 4.4 Key results: averages and standard deviations across all configurations. . 91 4.5 Average Pattern Size for Dataset One . . . . . . . . . . . . . . . . . . . . 92 4.6 Key results: averages and standard deviations across all configurations for the state of the art algorithm . . . . . . . . . . . . . . . . . . . . . . . 95 4.7 Evaluation results. A is the search pattern, B is the instance in the corpus.105 A.1 Classifier and Filter Configurations Tested . . . . . . . . . . . . . . . . . . . . 133 B.1 Similarity score table for luminance . . . . . . . . . . . . . . . . . . . . . . 139 B.2 Similarity score table for proximity . . . . . . . . . . . . . . . . . . . . . . 139 B.3 Similarity score table for places . . . . . . . . . . . . . . . . . . . . . . . . 139 B.4 Similarity score table for battery levels . . . . . . . . . . . . . . . . . . . . 140 B.5 Similarity score table for orientation values . . . . . . . . . . . . . . . . . 140 xiNomenclature API Application Programming Interface. A set of exposed functions available to programmers to make use of an established software platform. BIDE BI-Directional Extension based frequent closed sequence mining. A closed sequential pattern mining algorithm by Wang and Han (2004) BLAST Basic Local Alignment Search Tool. An approximative but fast local alignment algorithm by Altschul et al. (1990). BLOSUM BLOcks SUbstitution Matrix - A substitution scoring matrix for the alignment of proteins. The matrix entries are determined by statistical analysis of a database of evolutionary observations. BT Backtrack - Second step of a dynamic programming algorithm; in our case a trace along elements in a score table, marking the operations required to convert one sequence into another. DNA Desoxyribonucleic acid. A molecule that encodes genetic information in a sequence. FASTA fast - All. A sequence mining software suite developed by Lipman and Pearson (1985). FP-growth Frequent Pattern; Introduced with the FP-growth algorithm by Han et al. (2000). GPS Global Positioning System – Satellite based time-of-flight positioning system xiiGSM Global System for Mobile communication – European standard for second generation digital cellular networks for mobile phones. GSP Generalized Sequential Patterns. An Apriori-type sequential pattern mining algorithm developed by Agrawal and Srikant (1996) indel Insertions and deletions in sequences. A single term is sufficient to describe both these inverse operations, due to the symmetry of the alignment operation with respect to the order of the input sequences. LAN Local Area Network - a computer network with scope limited to a small geographic entity and using local addressing. LZ A set of compression algorithms proposed by Ziv and Lempel in 1977 and 1978. MASS Minimum Accumulated Similarity Score. This value is the criterium whether two sequences are to be considered similar or not. MDC Nokia Mobile Data Challenge. A data mining and visualisation competition held over the first half of 2012, on a mobile phone dataset gathered by Nokia. The dataset is explained in Subsection 2.1.2, and one of the competition tasks is presented in Annex A. RMD Reality Mining Dataset. See subsection 2.1.1. RNA Ribonucleic acid. A functional molecule that encodes genetic information in a sequence. sensor In this work: a source of discrete context data. This can be anything from a Boolean indicator to a fusion of multiple semantically linked context data readings, such as orientation, linking the data of an accelerometer and magnetometer. SPADE Sequential PAttern Discovery using Equivalence classes. A sequential pattern mining algorithm proposed by Zaki (1998) SPAM Sequential PAttern Mining. An algorithm proposed by Ayres et al. (2002) for finding all frequent sequences within a transactional database. SPM Sequential Pattern Mining xiiiWAP Web Access Pattern. A user’s trace when navigating across websites. WLAN Wireless Local Area Network. A term encompassing networking as defined in IEEE standards group 802.11. xivIntroduction Multiple studies have shown that humans are creatures of habit – from Heidegger’s musings in “Sein und Zeit” to the more concrete works of Gonzalez et al. [2008] and Eagle and Pentland [2009]. Although routine is not universal, for those that adhere to it, it provides a stable framework of activities. If a computer system can be made to be aware of this routine, then it can be proactive and anticipatory in nature, preparing for commonly encountered situations, or even alerting the user when routine is unexpectedly broken at some point. Routine can also be used to enhance a computing system which adapts itself to current events. When historical data can be linked to the present state, activities and contexts can be recognised with increased certainty. All this is beneficial, when developing ubiquitous computing systems – specifically with regard to ambient, passive interfaces. We assume that habits (i.e. activity patterns indicating routine) can be derived from user context data. “Context” classically refers to the entirety of the environment of a human-computer interaction – slightly varying definitions have been proposed by Schmidt et al. [1999], Chalmers [2004] and Dourish [2004]. Examples of context data are factors such as physical environment (e.g. place, light, noise), social environment, system status and simultaneous tasks. For the purpose of determining routine, we are primarily interested in specific aspects of context, that are characteristic to an activity. This does not necessarily imply that the context data allows one to infer the actual activity, but it is sufficient to identify recurrences. One theme of this thesis is in fact that of the title of Schmidt et al. [1999] “There is more to context than location”: there exists a large body of work on spatio-temporal routine detection, but our aim is to go further, and include other context data to obtain a model of routine that is richer in information and higher in resolution. 1Currently, the most widespread device in use with the capability to observe a reasonable amount of context, is the mobile phone. These phones are equipped with a number of sensors and an almost constant network connectivity which allows queries to nearby fixed sensors. For many people, their mobile phone is a constant companion allowing the capture of context data for a large number of activities. Furthermore, as multi-purpose mobile computing terminals, these same phones also form the interface to the computing system that benefits the most from having access to routine information. With regard to the definitions of context previously given, there is one further remark to make: context is defined as being linked to an interaction. At first glance, capturing data over the course of a day, to observe routine, is a passive process and does not fall under the traditional view of an interaction. But – within the concept of ambient interfaces – even just carrying a mobile phone (or in fact, even not carrying it) becomes an interaction, because we instrument the phone. Therefore, this implicit interaction happens within a context, which is duly recorded. Routine conveys important information all by itself, but can also be used to enhance current context information. A key use of context data is directly on mobile devices, which are situated within a certain context, used within a certain context and thus ideally exploit this data to better fulfil their purpose, as well as adapt and respond to changes in context. One pertinent example for such a mobile application that uses routine and current context data, is the Magitti leisure guide [Bellotti et al., 2008]. Similar applications in the domain of prediction and recommendation are presented by Anand and Mobasher [2007]. Wesson et al. [2010] discuss the benefits of adapting the mobile user interface of a computing system to the current context. Baldauf et al. [2007]’s survey of context aware systems essentially covers many more examples, where having additional context information based on a routine model can improve the user experience. The spectrum of approaches covers safety, security, entertainment and education. Mobile guidance and navigation systems can also be made to be context sensitive and routine dependent [Brush et al., 2010, Li and Willis, 2006]. Our technical goal is to detect patterns in the context data of a mobile phone user, with the expectation that patterns in the data correspond to routine activities. Raw context data can be understood to be a number of time series of physical values. Based on this representation, there exist multiple ways to analyse the data: Statistical approaches based on state transition probabilities (e.g. Ashbrook and Starner [2002]), database oriented approaches based on sequential apparition frequency (e.g. Giannotti et al. [2007]) and sequence based approaches based on edit distances and similarity measures (e.g. Sigg et al. [2010]). As the title of the work suggests, we ultimately pursue an 2approach that performs approximate string matching by aligning pairs of sequences. This algorithm determines local similarity scores for sequences of context data – we suppose that highly similar sequences of context data correspond to similar contexts and thus to actions of the same type. But we must also consider potential shortcomings of the data on which we base our study: sensor noise may render an activity difficult to recognise, and an activity is not repeated identically every time, leading to potential variations in duration and values in the corresponding context data, which must also be accounted for. Our alignment algorithm – an adapted version of the algorithm introduced by Lecroq et al. [2012] – is based on a representation of context data as a sequence of n-tuples. In this structure we calculate local alignments. To determine if these alignments correspond to context patterns, we devise an evaluation procedure. This procedure is in one case applied to synthetic data, generated according to predefined parameters, and in another to real world data which we gathered during a data collection campaign. The results from a large spectrum of test conditions allows us to characterise the suitability of our algorithm for the routine activity detection problem. The final results indicate that the algorithm reliably performs as a filter for context data, to limit the function of a domain expert to approving or rejecting the extracted data as being correspondent to a routine activity. Conversely, there are limitations to using it as a general, fully automated routine extraction approach. This work is structured as follows: ❼ In the second chapter, we examine the state of the art for both available context datasets and pattern detection approaches. We study the datasets for their suitability for routine context extraction and their data collection methods. The pattern detection approaches are divided into statistical and sequence mining approaches. We briefly discuss statistical approaches, and explore the various sequence mining approaches in more detail. We split the latter field into sequential pattern mining approaches, which take a database oriented view on sequences, and on string mining, which is focused on comparing long, individual sequences. We conclude this chapter with a direct comparison of the most promising approaches and an argumentation for our choice of approach, as well as identifying the limitations upon which our solution has to improve. ❼ The third chapter introduces our context model and algorithmic contributions. The context model defines a similarity measure for a pair of context sequences, which the alignment algorithm then uses to find maximally similar subsequences 3from a pair of sequences. Our algorithmic contribution is divided into two parts. The first part reduces algorithmic complexity by simplifying the state of the art approach, the second part details our local maximisation approach to further increase performance. ❼ The fourth chapter is dedicated to the experimental evaluation of our approach, on synthetic and real world data. It describes a data generator we developed with the goal of creating well-understood data with context-data-like characteristics and a high degree of configurability to allow the reproduction of a variety of scenarios. We also document our results obtained on five different such scenarios. A set of variable parameters for each scenario allows us to gain a further insight on the theoretical performance of our algorithm and its behaviour under varied conditions. We also present our data collection campaign in some detail. We used part of that data for a second evaluation, which is also described in this chapter. ❼ The final section gives a summary of our contributions and results, presents our conclusions and discusses limitations to our approach as well as potential future work to address these limitations and propose extensions. 4State of the Art As we laid out in the introduction, our approach to identifying routine activities is to find patterns in time series of context data. In this section we present and discuss different possible approaches, which should theoretically reveal such temporal patterns. We briefly revisit the notion of “context” and examine how context data is represented in actual context datasets. By class of approach, we present existing routine activity detection solutions. We examine the varying approaches for a number of criteria, relevant to our task. These criteria are: 1. The ability to process data that has the volumetric characteristics of context data, regarding both algorithmic complexity and real world constraints; 2. The degree of pre-treatment of context data required; 3. The flexibility of the underlying model, to accept situation-specific tuning; 4. The resilience of the approach against the inherent noise and unreliability in sensors and slight variations in how activities are repeated; 5. The impact of temporal effects, such as desynchronisation of data and dilation or contraction of the time-scale of an activity; 6. The effort required to parametrize the underlying model and 7. The suitability to a (partial) deployment on mobile platforms. We will refer to these criteria by their number in the following sections, whenever a relevant bit of information is touched upon. 5Our examination of the state of the art is split into three sections. First, we take a look at existing context datasets, to situate our goal with regard to available data. Then, we survey the state of the art for relevant methods that allow us to match, compare or extract patterns in time series data, by studying two fields of specific interest: Statistical approaches to pattern mining and sequence mining based approaches. Finally, we crosscompare the most suitable approaches and datasets, to determine the course for this work. 2.1 Context Datasets When examining user behaviour over the long term, a large dataset of context data is crucial to verify our hypothesis. In this section, we look at a number of different context datasets to learn more about available context data, and the utility of this data for our task. A small dataset, that can be understood to be a pioneering precursor, is that of Raento [2004]. Another early dataset by M¨antyj¨arvi et al. [2004] was limited to a strict set of scenarios, and did not actually consist of a recording of real world data. Kotz and Essien [2005] present a simple location-focused dataset, obtained by studying the movement of wireless network users of Dartmouth college. Two specific context data sets have caught our attention, the reality mining dataset (RMD [Eagle and Pentland, 2005]), and the Nokia mobile data challenge (MDC [Kiukkonen et al., 2010]) dataset. They represent, respectively, the first large scale mobile phone dataset ever published as well as the largest and most complete dataset currently available. 2.1.1 Reality Mining Dataset The RMD is the first large scale mobile phone context data set that has been collected. Due to its public availability, it stands as a reference dataset when it comes to the detection of routine user behaviour. It was designed with this goal in mind and used in the work of Eagle and Pentland [2009] to determine behavioural routines. The dataset is the result of a broad (100 participants) mobile phone data acquisition campaign the data from which was made available to the scientific community. The RMD was established using the Context Phone application developed by Raento et al. [2005]. It contains primarily finely grained location information, but also application and communication use logs and relative proximity indicators among study subjects. 6The specific protocol was established as follows: One hundred MIT students and members of faculty staff were given Nokia smart phones, pre-installed with several applications that track context. This context data comprises call meta data, the set of Bluetooth devices in range, the ID of the connected cellular radio tower, application usage and some phone status variables, such as whether the phone is idling or charging. This data was collected over an academic year, aggregating 450,000 hours of data, with Bluetooth data being logged in five minute intervals. The researchers report some data loss (around 15%) due to some subjects deactivating their phones during the night, and also due to some data corruption events. Finally, there are incidents of forgotten phones, where the phone records data, which has no association with the actual activities of the test subject. In addition to the context data, there is data from surveys of subsets of the test group to establish some meta-data (relationships between study participants and social activities) to the main data gathered by the phones. Some subjects also kept more detailed activity diaries over part of the data gathering period. 2.1.2 Lausanne Data Collection Campaign This dataset [Kiukkonen et al., 2010] includes data from 200 users from the Lake Geneva region in Switzerland and consists of the data from around 80 different smart phone context data sources, recorded over a period of over one year. This data was made available to researchers within the framework of the Mobile Data Challenge [Laurila et al., 2012], but is not readily available to the public. The gathered data can be divided into four groups: Location data, media-related data, social interaction data and behavioural data. The central physical data present in the set are 3D accelerometer readings, location and sound measurements. Additionally logs of applications, communications and the operating system are kept, alongside the agenda and contact list. A key distinction of this dataset is the heterogeneous study group. Where the RMD only studied students and faculty staff members from the Media Lab, as well as students of one other lab, this campaign stretches much wider. By consequence, the social graph among the participants is much less dense. Another difference lies in the precision of the location data. Cell tower data is notoriously imprecise, discriminating at around the city block level, whereas more powerful modern phones are equipped with GPS which can reduce this to roughly the street address level, even without further augmentation with wireless networks. Using WLAN access points – as done for this study – increases this precision further, especially in 7urban zones. In comparison, the Bluetooth augmentation chosen for the RMD only works in select installations outfitted with a beacon. This much higher fidelity of the data leads to a much larger challenge, when distributing this data, as pure anonymisation no longer suffices to protect the identity of the subjects. Furthermore, the higher potential fidelity also implies a potential higher use of the battery. Non-intrusiveness in the routine usage of the phone is a key requirement, as otherwise the impact of adapting to the measuring device would create behaviours and data not corresponding to the reality of the test subject’s day to day life. In an attempt to mitigate these effects, each data source has its own update frequency, in an adaptive event-based system. This allows the sampling to run throughout the day. To minimise data losses, collected data is transmitted to a database server via wireless networks twice a day. With regard to ground truth, an initial questionnaire establishes some demographic and social information, but no further information is acquired. 2.1.3 Discussion A key limitation to the present datasets, is that none of the bases contains any ground truth regarding context routine. Most do not include any manual annotation with semantic data at all. In fact, the large scale nature is somewhat at odds with such demands, as the effort to manually annotate a large dataset by someone other than the subject is immense. Conversely, asking a subject to annotate his or her own data introduces a higher level of effort required to take part in such a campaign and decreases the number of participants. Another problem is that most datasets are limited to location data, and lack many of the physical sensors present in more modern phones, that we presume to capture physical context more accurately. Although the Nokia MDC-dataset does provide accelerometric data and some sound samples, modern smart phones are also equipped with gyroscopes, compasses, light meters and proximity sensors. Conversely, the approach taken by Nokia for the Lausanne data collection campaign includes a vast number of sensors, some of which are not necessarily of interest for the routine activity detection task, increasing the complexity of the required pre-treatment (2). The asynchronous nature of data collection preserves relative temporal structures in high detail (5). Finally, the acquisition platforms used for these two previous datasets have been obsoleted by the development of the mobile phone market. Therefore, if a new dataset would be a requirement, this would entail a new development of the data collection software 8suite. The creation of a new mobile context dataset that contains at least sufficient physical sensor values therefore appears possible and necessary. Many of the paradigms put forward for the different collection campaigns remain valid, such as the principle of nonintrusiveness and the need to assure data integrity. Alternatively, it is common to use synthetic data to verify the behaviour of an algorithm. For this type of data, ground truth of the generation step can be used to address the lack of ground truth in real context datasets. Once a solution to gather the required physical context data is achieved, the next challenge is to find routine data within it. 2.2 Machine Learning and Statistical Analysis Classic statistical machine learning approaches are a mainstay of much of the work of context data analysis. We focus on three key categories: classification as a means of context and activity recognition and prediction, clustering to determine similarities in data and probabilistic state machines – specifically (hidden) Markov models – as a means of modelling routine. 2.2.1 Classification Classification algorithms are a class of algorithms that use a set of examples to learn rules that are then applied to determine which label is to be associated to a measurement. Typically, this is represented by the determination of a characteristic vector over the feature space of the observed events. We discuss two different usages of these types of algorithm, within the scope of the routine activity detection problem: in activity recognition, a current set of measurements of context data are used to determine the current activity; in activity or place prediction, the current state of system is used as a characteristic vector for predicting a future state. 2.2.1.1 Activity Recognition Supervised classification is the principal component in most activity recognition systems. They function by assigning a characteristic vector to each element of a set of activities, and then estimating from actual measurements the current activity. In the field of mobile device based activity recognition, supervised classification has been used (for example) in the works of Choudhury et al. [2008], Lester et al. [2006], 9Berchtold et al. [2010] and Sigg et al. [2010]. Activity recognition by itself does not solve the routine activity detection problem, but a well functioning activity detector can reduce the complexity of the problem by orders of magnitude by transforming it from a multi-dimensional problem into a uni-dimensional one (1,2). We can nonetheless state a limitation to this approach, in that a supervised activity detection requires knowledge of each of the activities that are to be discerned (6). This renders this approach of limited use, when trying to solve a general version of the routine activity detection problem. Furthermore, feature vectors are understood as a unit, therefore algorithms based on them cannot work around desynchronized data (4,5). 2.2.1.2 Activity and Place Prediction Another potential application of supervised classification is in the field of predicting future activities. The approach is similar to activity detection, with the difference that characteristic vectors are assigned to subsequent activities or places. This type of approach was frequently chosen by entries for the MDC “next location prediction” task [Etter et al., 2012, Wang and Prabhala, 2012, Gao et al., 2012], as for that task the known data was restricted to the context data obtained during the “visit” to the directly preceding place. The most successful approaches relies on heuristics which reject certain subsets of the data by declaring it out-of-date information with regard to the prediction task. The benchmarks of three state of the art algorithms – naive Bayes [John and Langley, 1995], alternating decision trees [Holmes et al., 2002] and a sequential minimal optimization based approach [Platt, 1999] – on the MDC prediction task are available in Annex A. The Magitti [Bellotti et al., 2008] recommendation system predicts next activities using a supervised classification approach [Partridge and Price, 2009]. The system is based on the assignment of a leisure activity (e.g. “eat” or “watch”) to corresponding locations in town instead of having a location specific activity model. This meta-activity approach avoids the problem of being limited to recognising specific activities, but consequently the result is too general for many applications outside the activity adviser use case they target (3). 2.2.2 Clustering Where classification assigns one of a pre-defined set of labels to a sample of data, clustering attempts to group a set of data points via a pre-defined distance metric. There are three aspects to clustering that are of relevance to the routine activity detection prob- 10lem: Using clustering to segment sensor data, using clustering to segment sequences and clustering entire sequences. The first is an important step towards obtaining a discrete context model, the second helps identifying atomic activities, and the third is a routine activity extraction approach. 2.2.2.1 Context Data Clustering Context data clustering is a useful first pre-treatment step to reduce the complexity of the routine activity detection problem (1), by transforming the problem from one on continuous data (and essentially a signal processing problem) into a problem over discrete data (2,4). This has been used by Ashbrook and Starner [2002] to derive semantically relevant places from a user’s spatio-temporal positioning data, which then allows the construction of a state-based predictor on the transformed data. Their choice of clustering algorithm was the k-means clustering algorithm. In their article they also meet one of the limitations inherent to clustering algorithms: the results often have to be manually verified, or selected from a number of different configurations (3,6). 2.2.2.2 Sequence Segmentation Sequence clustering can be performed to segment long sequences of context data into locally self-similar subsequences [Clarkson and Pentland, 1999, Himberg et al., 2001]. This can be used as a semi-automatic pre-treatment step to address (1,2,6,7) in routine activity detection approaches, at some potential disadvantage to (4,5). In general, sequence clustering with a simple Euclidean distance does not produce meaningful results [Keogh et al., 2003], requiring the choice of a meaningful metric, before implementation. 2.2.2.3 Sequence Clustering Clustering can also be used to group subsequences by inter-similarity and thus identify patterns. This has been shown by Laasonen [2005] to be a potential avenue of establishing a routine based user model and subsequently recognising and predicting a mobile user’s routes. This works by classifying some of the locations visited by a user as bases, which are locations where a user rests, and others as transient points. In this case, a place corresponds to the currently connected network cell. An edit distance and item similarity measure serves as basis for the clustering model. Katsaros et al. [2003] have shown a similar sequence clustering solution to predict locations, but without the distinction of location classes. The distance measure for the hierarchical clustering which they employ, is a weighted edit distance. This can have good performance with regard to (4,5) at some 11cost to (6). As a statistical approach, there is also a limitation with regard to (1), in that a certain minimal amount of data is required to obtain clusters with acceptable confidence values. 2.2.3 Probabilistic State Machines In the third type of approach, we look at different kinds of probabilistic state machines, which are relevant for user activity recognition and prediction. A relevant example of using hidden Markov models [Baum et al., 1970] to find routine in context is the work of Clarkson [2003], who studied video streams taken from two worn cameras, with the goal of identifying context recurrences. They use an alignment based approach, similar to dynamic time warping [Myers and Rabiner, 1981]. Ashbrook and Starner [2002] use second order Markov models to predict next locations. This required clustering of geolocation data into discrete locations, which where then studied for transition probabilities. In the work of Song et al. [2004], multiple predictors based on probabilistic state machines (Markov models and LZ compression [Ziv and Lempel, 1978]) are evaluated on a common dataset from the Dartmouth campus wireless network [Kotz and Essien, 2005]. A state machine approach requires a sequence segmentation to be viable (6). This means that activities are identified either based on supervised activity recognition or based on sequence segmentation. A common drawback to all approaches outlined in this subsection, is that they are not truly suited to treating multiple data sources in parallel (1,5). 2.2.4 Discussion Within the frame of the routine activity detection problem, statistical approaches can be divided into two categories of application: on the one hand there are data pre-treatment approaches, that reduce the complexity of the actual routine extraction process, and on the other hand there are statistical models that encode routine activity. The former can be used at different levels of granularity, and comprise classification, clustering and segmentation. A high abstraction approach – as often chosen in the literature we presented – can simplify the routine activity detection problem to the point where it is merely the extraction of frequent state transitions. While in theory this is advantageous with regard to (1), (6) and (7), it invariably has drawbacks, when applying criteria (2), (3) and (5). A low abstraction level has the inverse consequences. Therefore, the choice of abstraction level has to be carefully weighed, when developing 12a discrete model. The routine activity detection approaches – using sequence clustering or probabilistic state machines – are relatively simple propositions (1) which depend heavily on accurate preprocessing (2). The central weakness of these approaches – when used on rich context data – is that they use a simple model derived from data that has been heavily preprocessed and abstracted, which results in abstract routine models. These are easy to interpret but hard to validate against the actual data. Furthermore, there is a whole host of limitations to automatic context data abstraction that essentially make this class of approaches not suitable for context data that has multiple independent data sources. When working at a finely grained level, with less abstraction, the models become harder to interpret, and lose their appealing simplicity. This downside leads us to examine approaches that are more suited to this kind of data representation: sequence mining algorithms. 2.3 Sequence Mining Context data is inherently of sequential nature: for each aspect of context, one state follows another and each activity is followed by another. Sequence mining is a subset of data mining, which consists of approaches specifically targeted at sequential data. The field of sequence mining offers a variety of algorithms designed to discover all kinds of features in sequences of discrete elements. As laid out in the introduction, our primary interest is pattern detection. There are two schools of thought, with regard to this problem: 1. Sequential pattern mining (SPM) takes an itemset mining and association rule learning approach to finding such patterns, by looking at the frequency of occurrence of subsequences in a corpus. 2. String mining is an approach that has its roots in bioinformatics, and can be seen as a generalisation of Hamming and Levenshtein distances. We are particularly interested in alignment problems, where the goal is the identification of similar sequences. In the following two sections, we will present different approaches and applications of sequential pattern mining and string mining. In the third subsection we will compare the particular advantages and challenges of each class of approach, and evaluate them against our set of criteria. 132.3.1 Itemset Mining and Sequential Pattern Mining The aim of sequential pattern mining (SPM) is to find within a database of sequences of itemsets (i.e. sets of discrete elements) a subset of interesting sequences. Within the context of the routine activity detection problem, this criterion of interest is that the sequences appear frequently. Sequences in this case are not limited to consecutive elements, but are based on the notion “event Y occurs after event X, within an interval window δ”. There are several ways to formulate the routine activity detection problem in terms of an SPM problem, each suited to a specific group of algorithms from the field. First, context could be abstracted to fit the “sequence of itemsets” paradigm. There is a wealth of classic approaches that find potentially non-consecutive exact sequential patterns. A first challenge in adapting the problem to this formulation lies in finding a useful time-discretisation and temporal splitting interval. The former is achieved by having each sensor value discretised into an item, and by grouping measurements during a predefined time interval into itemsets. The latter requires study of how gravely nonconsecutive patterns impact the results. By shortening the sequences, such patterns become less of an issue, but other, larger patterns may disappear. Additionally, there is the question of which level of support is desired as basis for the result. An early review of examination of patterns in sequential data was performed by Laird [1993]. At this stage, the focus of research was mainly on prediction, extrapolation and modelling of time series. In the same year, itemset mining was introduced by Agrawal et al. [1993]. This forms the basis for all of the following SPM approaches, which is why we take a closer look at the key approaches of the field. The following classification of the approaches is based on the taxonomies proposed by Mabroukeh and Ezeife [2010] and Mooney and Roddick [2013]. We assign the following classes to differentiate between approaches: ❼ Apriori-based (including variants for closed patterns or hierarchical data), ❼ Pattern-growth (including variants for closed patterns), ❼ Vertical data structures, ❼ Early-Pruning and ❼ Hybrid; and then we also discuss variations of these which take into account hierarchical metadata, specifically and exclusively mine closed or maximal frequent patterns, or mine multidi- 14mensional or approximate patterns. All algorithms and challenges identified in the field of itemset mining can be transferred almost exactly to sequential pattern mining. 2.3.1.1 Itemset Mining Itemset mining has as prerequisite the presence of a database which is partitioned according to a primary criterion (e.g. a user ID or a calendar day). The goal is to find subsets of data that occur multiple times among the sets of data points connected to each instance of the criterion. An example relevant to the field of mobile and context sensitive computing is a database consisting of entries that have been generated by logging discretised context data of a user over time. Splitting the database to obtain individual data per hour, and then searching for co-occurrences of certain context values in these sets across different hours, shall determine which context states are frequently encountered together in temporal proximity. Once the frequency of appearance of such an item combination is above a certain threshold, the set is considered to be significant. Furthermore, there is an interest in maximising these sets: a single element that appears across multiple sets is of little interest, whereas large sets carry more information. Once these sets are identified, association rules can be created among them. Association rules can be understood as a way to encode the conditional probability of the presence of an element in an itemset, given a set of elements already present in that set. For example, let there be three context states a, b and c(e.g. loud noise, bright light and medium movement speed) that were recorded during one hour. Furthermore, let the set (a, b, c) appear frequently (and maximally) in a database. Then, it is possible to predict that if a and c are present in one set, that b might also be present in this set (e.g. because all three are present when the user rides his motorcycle on a sunny day) based on the support of the set (a, b, c) (i.e. how often the elements appear together, relative to the overall number of sets created by splitting the database along the key criterion). In terms of context prediction, this means that it is possible to predict context event b as a function of the presence of context events a and c. Clearly, this is limited in scope with regard to the routine activity detection problem, but the close link to sequential pattern mining makes it deserving of a study, to introduce the concepts used further on. Apriori-Based Algorithms The itemset mining problem has first been approached by means of the Apriori-class of algorithms [Agrawal and Srikant, 1994, Mannila et al., 1994]. The key property on which the Apriori-class algorithms are built is the downward closure: the fact that each frequent itemset consists of sub-itemsets that are all frequent, 15and inversely, extending a non-frequent itemset by any item results in another infrequent itemset. This can be exploited to first find frequent elements, and then iteratively extend these candidates to sets, element by element, until the support frequency-threshold is no longer attained. Han et al. [2007] offer an extensive list of further improvements to this approach, with regard to distributed and parallel approaches, as well as general efficiency improvements. The key limitation to this approach lies in the high number of database scans – one for each growth operation – that are necessary to determine the support value for each of the valid candidates that have been generated. Compared to the naive approach, the Apriori property enables the rejection of all subsets which are an extension of subsets that by themselves do not have sufficient support in the database. Pattern-Growth Algorithms Another class of approaches avoids the expensive candidate generation aspect of the Aprior-type algorithms. FP-growth is one such algorithm, introduced by Han et al. [2000b]. This approach uses a divide-and-conquer technique. First, the database is transformed into a list of frequent ordered according to of descending support, and by key-criterion. From this list, a tree is constructed: a node is created for each frequent element, and they are arranged in the tree by their direct prefix item. If an element with an existing identical prefix is found, it is merged into the existing node and the frequency counter of that node is incremented. From every node in this tree, it is then possible to identify frequent itemsets, by following a path of nodes toward the root, from each leaf corresponding to an item. Each such leaf defines a specific sub-itemset. The support of the itemsets are represented by the support of each leaf. A similar tree-based algorithm has been presented by Agarwal et al. [2001]. Vertical Data Structure Algorithms A third way to approach the problem of frequent itemset mining, is to take an orthogonal view at the database [Zaki, 2000]: Instead of assigning to each key criterion a set of items, assign to each item a set of elements from the key criterion. In an example, this would mean that instead of having a set of activities (items) assigned to each day (criterion), to instead assign to each activity the list of days where they occurred. Using this representation, the Apriori property can still be used to generate set extension candidates. Support for a candidate is determined by intersecting the sets that are created by the inversion of the database table. A key advantage is that determining support is as easy as counting the number of elements that are assigned to an item. What is notable about this approach, is that the corresponding sequential pattern 16mining algorithm SPADE [Zaki, 1998] was developed before this idea was ported to itemset mining. Concept Hierarchy-Aware Algorithms An important extension to itemset mining is the acknowledgement that items may be related, and that at times it is useful to mine sets not only of items, but of classes of items. By using concept hierarchies, these classes can be established and (hierarchically) interrelated. One approach to mining such itemsets is a top-down specialisation approach, where first top-level general sets are mined, and then their specialisations are examined for sufficient frequency/support. This is possible if the minimal support threshold is constant across all abstraction levels of the concept hierarchy [Han and Fu, 1995, Srikant and Agrawal, 1995]. Han et al. [2006] present a variation of this approach to problems where minimal support varies by level. Closed and Maximal Frequent Patterns Two further important concepts that restrict the scope of the problem to obtain more expressive results are the concepts of closed frequent patterns and maximal frequent patterns. The former are patterns for which no pattern exists that encompasses it, where both have the same support. This eliminates from the results the most trivial subsets of frequent patterns, without reducing the overall information contained in the results compared to mining all frequent patterns. Any two patterns with different support remain separate. Maximal frequent patterns on the other hand restrict this even further: all frequent itemsets that are subsets of another pattern that is frequent, are discarded. This means that the frequency information for these sub-patterns is lost. There exist Apriori-type algorithms optimised for closed itemsets (e.g. A-Close by Pasquier et al. [1999]) as well as FP-based algorithms (e.g. FPClose by Grahne and Zhu [2003]). Yang [2004] showed that enumerating maximal patterns is an NP-hard problem. 2.3.1.2 Sequential Pattern Mining Sequential pattern mining, when compared to itemset mining, adds the additional dimension of (temporal) order to the problem. Itemset mining examines merely the co-presence of items with respect to the key criterion, whereas sequential pattern mining respects the order of appearance of the itemsets in the data. A naive approach to pattern mining is to count the number of instances of every imaginable subsequence of a database (database being used synonymous with databank, 17i.e. restricted to the physical storage of data). A subsequence in the context of sequence mining consists of itemsets, therefore the presence of multiple items in such an itemset produces ever more possible subsequences to test against the database. Therefore, much as for itemset mining, the goal remains to reduce the number of subsequences to test and the complexity of counting support. Sequential pattern mining has relatively frequently been the subject of extensive surveys. Zhao and Bhowmick [2003] present some of the earlier developments in the field, Mabroukeh and Ezeife [2010] have established a taxonomy and cross-comparison of the key approaches to sequential pattern mining and more recently Mooney and Roddick [2013] have proposed a slightly differing classification and comparison on the same subject. Han et al. [2007] present a survey of approaches to the more general frequent pattern mining problem. All four surveys discuss in more detail what has been introduced here. The following are the main approaches to sequential pattern mining, for the most part mirroring the concepts used in itemset mining: Apriori-Based Algorithms On the base of the Apriori property, Agrawal and Srikant [1995] developed an Apriori-type SPM-algorithm, which has then been extended into the “Generalized Sequential Patterns” (GSP) algorithm in Srikant and Agrawal [1996]. This approach uses a similar minimal starting point, and then iterative growth of candidates, but with a fixed and predefined order for the sequential aspect. An approach that integrates ideas from other algorithms is SPAM by Ayres et al. [2002]. SPAM generates a lexicographic tree and descends along the nodes in depth-first order. The Apriori property determines that any children of a node that does not have minimum support can be discarded from the search. Support is determined by counting incidences in a vertical data structure, which consists of a binary bit map of the sequence, upon which a binary and operation is executed. Pattern-Growth Algorithms The divide and conquer approach has also been applied to sequence mining in the PrefixSpan algorithm [Pei et al., 2001, 2004]. PrefixSpan first determines the set of frequent patterns of length one, and then extends the patterns by determining possible prefixes from within this set, in a similar approach to FP-growth. To do this efficiently, the database is transformed into a more suitable representation. In the case of PrefixSpan, this is a projected database, as introduced in FreeSpan [Han et al., 2000a]. The projection mechanism for sequences and subsequences functions as follows: A sequence S 0 is a projection of its supersequence S with respect to a prefix P if there exists no other supersequence of S 0 that is also a subsequence of S which shares 18the prefix P. This means that the extension of S 0 to S is done purely by extending the prefix P. The database is rearranged according to the prefixes (which are the frequent items in the first step), where each prefix is assigned all occurrences of its postfixes by projection. By matching all postfixes with possible extensions of the prefix – to find frequent patterns – it is possible to determine a new set of prefixes upon which to project the database. A new scan if the database is not necessary, as the relevant sequences to project are already assigned to the prefix used in the previous step. This makes PrefixSpan fast, but the construction of the projected database becomes a major influence on the overall complexity of the algorithm. Another Pattern-Growth approach uses tree projection instead of database projection. One representative from this group is WAP-mine Pei et al. [2000]. Similarly to the database projection approach, there are very few scans of the database - in this case two. The first determines the frequent items, the second builds the tree of frequent subsequences related to these items. The initial tree consists of an empty root, to which the frequent elements are added as nodes. The first element to be added is the first frequent item of the first sequence in the database. The second frequent item is added as a child. This is followed through for all frequent elements in their order of appearance in the first sequence. The same is done for the other sequences, but whenever an element is already present in the correct order in the tree, the existing element is used instead. In parallel, a header link table is established. It links each occurrence of an itemset to the next occurrences of the same itemset within the tree, beginning with the first. To mine this tree, the least frequent item in the tree is chosen, and set as a conditional suffix. Based on this suffix, an intermediate tree is constructed, which consists of those branches that end (whether on a leaf or a node) on this suffix. These are identified by following the header links previously established. The new conditional tree therefore consists of the old tree, minus all the nodes header-linked to the corresponding suffix, and minus the branches that do not contain the suffix at all. For the next step, the suffix is grown by the least frequent item of the new tree, and the process repeated, until only a suffix and the root node are left. Each suffix generated this way is a frequent sequential pattern. This process is demonstrated in Fig. 2.3.1, with the sequences abdac, eaebcac, babf aec and af bacfc, using the example from Pei et al. [2000]. Hybrid Algorithms SPADE [Zaki, 2001] can be considered as a hybrid approach, combining Apriori-based and Pattern-Growth characteristics. It uses an orthogonal view approach to itemset mining for sequential pattern mining. Similarly to Apriori-based 19Figure 2.3.1.: A WAP-tree and conditional WAP-trees for two subsequences c and ac (Source: Pei et al. [2000]) approaches, this approach generates a large amount of candidate sequences that are then reduced by growing the length of the sequences progressively. SPADE transforms a database into a set of key-value pairs, where a list of pairs of sequences (in which it appears) and partition IDs of the key distinction criterion (e.g. a day) is assigned to each itemset (element of a sequence). The algorithm consists of three steps: first, the frequent sequences of length one are identified, then these sequences are extended to frequent sequences of length two. These are arranged in a lattice1 structure, which is traversed in the third step, to count support and enumerate frequent sequences. This lattice structure can grow very large, as it defines an order across all frequent patterns. The authors propose to partition the lattice into smaller subsets, that are sufficiently self contained to be given the term equivalence classes. The strength of SPADE is mining maximal sequences, as when mining all frequent sequential patterns the performance is no better than GSP [Mabroukeh and Ezeife, 2010]. Early-Pruning Techniques This class of approaches exploits the sequential nature of the data, by tracking the positions of items that appear in the sequence. Specifically, if the (absolute) last position of an item is smaller than the position of the current sequence under consideration, then that item cannot occur behind this current sequence [Yang and Kitsuregawa, 2005]. LAPIN [Yang et al., 2007] maintains both a list of the last positions of frequent items, as well as a set of prefix border positions for each frequent item to achieve this. The former is a straight forward table, assigning each sequence a 1A lattice is a specific way to represent a (partially) ordered set, with operations defined to determine infima and suprema for pairs of set elements. See Davey and Priestley [2002] for a complete introduction. 20list of indices corresponding to items that are frequent over all the database; the latter is generated from this list, and consists of all occurrences that have last appearances after the first instance of the item they are related to. By counting the elements in the second set – and determining whether they have sufficient support – it is possible to find the frequent patterns without searching the database. Notable about this approach is that the data structure used is relatively static and has to be regenerated whenever new entries are added to the database. This makes determining the update frequency an engineering challenge when used in conjunction with high frequency data sources. Closed Sequential Pattern Mining These basic approaches return all frequent patterns, particularly including all single elements that are frequent. In most applications this is undesirable, hence closed sequential pattern mining algorithms such as CloSpan [Yan et al., 2003] and BIDE [Wang and Han, 2004] have been developed. CloSpan exploits the property that when projecting a database of sequences with respect to two sequence prefixes, where one prefix is a subsequence of the other, the resulting two projected databases are equivalent if and only if the number of items of each of the projected databases is equal. This allows CloSpan to determine whether extending a sequence by an additional item creates an equivalent sequence or a sequence with different support. This permits the algorithm to distinguish between redundant candidate sequences and those that form a separate result. BIDE is an extension to this approach, that uses projections in two directions to remove non-closed frequent patterns. This covers the most basic approaches to sequential pattern mining. With regard to the routine activity mining problem, there are two further characteristics of interest: multi-dimensional approaches and approximate approaches. Multi-dimensional Sequential Pattern Mining The previously presented notion of “sequence” covers sequences of itemsets, which could comprise the information from multiple context data streams in parallel. Adding a clear notion of orthogonality between the different types of data allows for a more discerning treatment. By assigning each context data source its own dimension, there is no interaction between different states of different sensors. The first “multi-dimensional” sequential pattern mining approach by Pinto et al. [2001] was so only with regard to allowing multiple key criteria according to which support is calculated. This allowed a multi-dimensional notion of support, but the actual itemsets where still restrained to consist of elements of a single dimension. This work has 21been extended with an optimisation for closed multidimensional patterns in the work of Songram et al. [2006] and Boonjing and Songram [2007]. Plantevit et al. [2010] undertook the next logical effort, to treat sequences of multidimensional, multi-level data. They develop the bottom-up approach described by Beyer and Ramakrishnan [1999] to mine maximally atomic frequent sequences, which are sequences consisting of a single (hence atomic) multi-dimensional item. This item must be the most specific – with regard to the concept hierarchy model – item that is still frequent in the database. From this point, the sequences of length one are built up to longer sequences using the SPADE algorithm [Zaki, 2001]. Approximate Sequential Pattern Mining The realisation that exact pattern mining is too restrictive for real world problems has been reached by Wang et al. [2000]. The first approach to mining long sequential patterns from noisy data by Yang et al. [2002] uses a probabilistic model to account for the noise: a compatibility matrix consisting of the conditional probabilities, that x is the real value, given that y has been observed, gives a notion of relative proximity of values, with regard to the measurement (or data generation) process. The notion of support is adapted to become noise-tolerant. The actual significance criterion under noisy influences on the data is termed match, and is defined as the maximum conditional probability of an occurrence of a pattern, given any one subsequence of a sequence, averaged across the database. A slightly modified Apriori-property holds for the match measure as it does for support, if subpatterns are defined as a pattern that lacks some symbols present in the respective superpattern. Although theoretically it is possible to use classical algorithm with this model, the large number of candidates and database scans generated using Apriori-/support-based approaches makes them impractical. Instead, the authors propose a statistical filtering approach to reduce the number of passes, which is based on two criteria: First the additive Chernoff bound [Hoeffding, 1963, Domingos and Hulten, 2000] is used to estimate the size of a pattern (i.e. the points beyond which extending a subsequence reduces its match below the relevance threshold) based on the results of random sampling. This divides the set of candidates into three (probable) classes: frequent, infrequent and ambiguous patterns. The second optimisation deals with the ambiguous patterns – which require further attention – to determine the frequent and infrequent patterns contained within. The specific approach refines the borders (left and right limits of the end of the ambiguously frequent subsequence) obtained during the random sampling approach by collapsing them down to the actual borders. This is done using a hierarchical division of the two estimated borders, which takes at worst O(log(n)) steps to find the correct 22border, where a classic linear algorithm would take n steps. Overall performance of the approach depends very much on the data and the number of ambiguous patterns that cannot be identified during the first probabilistic step. ApproxMAP [Kum et al., 2003] – another approximate method – borrows some notions from string mining. This algorithm mines consensus patterns (i.e. short patterns that appear in similar fashion across many of the examined sequences) through multiple pattern alignment. It uses a hierarchical edit distance as a similarity measure for pairs of sequences, and thus determines clusters of similar sequences. In a second step, a representative for each cluster is selected. A consensus pattern is determined to be present whenever a sufficient number of sequences in the cluster share this representative to achieve a strength threshold – a notion similar to “minimum support”. Applications in Context Pattern Mining The main application to context data mining is the field of trajectory mining and more generally spatio-temporal data mining. Due to the limited scope of this problem, compared to the routine activity detection problem, we only briefly introduce a few key approaches. Rashad et al. [2007b] developed a multi-dimensional PrefixSpan [Pei et al., 2001] specialisation called MobilePrefixSpan (based on the work of Pinto et al. [2001]), to mine movement patterns of mobile users. Their database consists of entries, describing which user was present in which mobile phone network cell, at which time. Using the generated movement profiles, they try to predict future positions of users, with the goal of providing better resource management in the wireless network itself. Compared to the original PrefixSpan, they restrict sequences to consecutive sequences, as they argue that the exact order in which cells are visited is more important than the more global trends that traditional sequence mining detects. Giannotti et al. [2007] also perform pattern mining on GSM or GPS location data. They extend the basic SPM model with annotations indicating the typical transition times between elements (see also the previous work of Yoshida et al. [2000]) and replace itemsets by spatial points. The calculation of support is not done by exact matching, but instead by an error tolerant neighbourhood function. One of the key problems of this approach, is that of determining Regions-of-Interest – i.e. semantically similar regions, to determine the neighbourhood function – for which they provide a seed-and-growth approach, using popular spatial points as starting points. The actual mining algorithm is introduced in Giannotti et al. [2006] and uses prefix projection (like PrefixSpan [Pei et al., 2001]), but modified to accept time-stamped sequences. Further work in this field can be found in the works of Kang and Yong [2010], Lei and 23Wong [2009], Nanni et al. [2010], Zhao et al. [2013], Zheng et al. [2011]. 2.3.1.3 Discussion SPM, at first glance, presents a suitable approach to the routine activity detection problem. The blocking metaphor (selecting sequences from a database by a key criterion) works well with the notion of days and weeks structuring human activity. The performance is compatible with the volumetry of context data (1). Although actual algorithmic complexity largely depends on the data, the sample data presented usually scales up to hundreds of thousands of itemsets in the sequences. The notion of closed patterns and maximal patterns allow refining the result to those patterns that should be the most interesting. The traditional SPM is limited, in that it can only identify exact patterns. Semantic hierarchical models can help with this (3,6). In this case, similar sensor values are grouped under a more general label, to allow for more general patterns to be mined. Additionally, approximative approaches exist, that are able to find patters in noisy data, or use string mining approaches to identify similar sequences, thus addressing criterion (4). Although these hierarchical approaches are more realistically employed to solve the routine activity detection problem, there still persists one problem. Treating each sensor merely as one source of items that are all fundamentally equivalent, in that in theory each item can be replaced by any other, leads to a large number of comparisons that can be prevented, if from the start the data is considered multidimensional. Plantevit et al. [2010]’s multilevel and multi-dimensional approach is capable of eliminating these ambiguities, which should in theory allow an optimized treatment of such truly parallel data. On the other hand, this approach is limited to exact matches, which puts higher demands on the preprocessing of the context data. As with the other approaches, the non-consecutive sequences that do not make sense need to be removed from the results. Lastly, tuples (i.e. multi-dimensional datasets) are treated as a unit, so desynchronised context data would prove problematic (5). A notable drawback then, across almost all SPM algorithms – when dealing with context data – is that in the classical retail shopping scenario, items are numerous and sequences are short, but for the context scenario, sequences are long, and “items” are relatively few. This is the foremost limitation, as non-consecutive patterns can appear by coincidence much more easily in these conditions, without actually indicating a recurring activity. The consecutive approach by Rashad et al. [2007b] provides a solution to this, but inversely the increased requirement for exactness (as now erroneous values are not 24skipped) requires more intense preprocessing, which renders an adoption problematic. The time-interval supporting approaches by Yoshida et al. [2000] and Giannotti et al. [2006] allow to quantify these intervals between items and use them to determine patterns that take these intervals into account. Compared to SPM, string mining addresses approximate approaches much more comprehensively, and with less inherent complexity. 2.3.2 String Mining Strings are finite length character sequences. By assigning to each state of a context or sensor a specific character, it is possible to represent context data sequences with strings. String mining, as a discipline, is closely linked to bioinformatics and computational biology. With the discovery of the structure of DNA, RNA and protein structure, and the ability to obtain base pair sequences and amino acid sequences from cells, the search for meaning in these sequences became a major research topic. This so-called “biological revolution” has motivated a large parallel effort in the development of effective and efficient sequence analysis (i.e. string mining) algorithms. In their survey of string mining in bioinformatics, Abouelhoda and Ghanem [2010] provide a taxonomy of the field, discerning principally between repeat-related problems and string comparison problems. Repeat-related problems try to find repeated or otherwise interesting subsequences within larger sequences, whereas string comparison problems are based on comparisons between two separate strings, and often inspired by a need to determine a similarity metric. Each of these two categories is explored in the following, with a closer look at approaches that are of relevance to our routine activity detection problem. 2.3.2.1 Repeat-Related Problem Repeat-related problems can be divided into the following subclasses (c.f. Fig. 2.3.2): Dispersed Repeats i.e. finding repeats through a sequence. These repeats can be either approximate or exact, with fixed or variable length. Tandem Repeats i.e. repeats that occur in an adjacent manner. These repeats can also be either exact or approximate in nature. Unique Subsequences i.e subsequences that do not have repeats and appear only once in a sequence. 25Absent Words i.e. subsequences that do not exist at all in the original sequence. Only the shortest absent words are of interest, as generally there is an infinite number of subsequences not contained within a sequence. With regard to the class of repeat-related problems, our task falls within the scope of a dispersed longest repeat problem: Find a pair of sub-strings that match, where neither the pairs of preceding elements nor the pairs of succeeding elements match. Alternatively, if a sufficiently powerful classifier were to exist, which could consistently assign a correct activity label to a set of sensor readings, the routine activity detection task could be expressed as an exact repeat problem; otherwise it would be a more general approximate repeat problem. The approximate repeat problem is solved by a local alignment algorithm in O(n 2 ) [Smith and Waterman, 1981], which technically belongs to the class of comparison problems, and is described in the corresponding – next – subsection. A naive, brute-force approach to finding (longest) pairs of exact repeats would be to create a scatter plot, and scan along its diagonals for series of matches. Given n lines of input, this type of approach would use O(n 2 ) time and O(n) space. a b c c a d c d a c a b d b c c c b a d a a c a c d d c b b b b c c d b b a c a b c c a d c d a c a b d b c c c b a d a a c a c d d c b b b b c c d b b a c a b c c a d c d a c a b d b c c c b a d a a c a c d d c b b b b c c d b b a c a b c c a d c d a c a b d b c c c b a d a a c a c d d c b b b b c c d b b a c {aaa,aab,aad,aba,abb,acb,acc,adb,add,baa,bab,bba,bbd,bca,bcb,bcd, bda,bdc,bdd,caa,cbc,cbd,cdc,dab,dad,dba, dbd,dca,dcc} dispersed exact repeats of size 3 tandem exact repeats of size 2 unique subsequences of size 2 absent words of size 3: a b c c a d c d a c a b d b c c c b a d a a c a c d d c b b b b c c d b b a c dispersed approximate repeats of size ~5 a b c c a d c d a c a b d b c c c b a d a a c a c d d c b b b b c c d b b a c tandem approximate repeats of size ~3 Figure 2.3.2.: Examples of different types of repeat-related features in a string. 26Suffix Tree Approach A suffix tree [McCreight, 1976] based approach appears more suited for large volumes of data. Baker [1992] proposes an exact matching algorithm using the suffix tree structure, that finds pairs of maximal repeats in a sequence of length n and m repeats in O(n + m) time. It follows a description of this approach and an illustration on the example input string abcbcabc% (% is the string termination symbol). The algorithm consists of four steps: 1. A suffix tree is generated, as follows: a) An empty tree is generated (as in Fig. 2.3.3-0); b) A leaf containing the entire string (appended with a termination symbol “%”) is created (as in Fig. 2.3.3-1); c) A new leaf containing the first suffix (comprising all but the first element) is created (as in Fig. 2.3.3-2 to -6, and Fig. 2.3.4 for the final three leaves); d) If the head (i.e. the first elements of this suffix) is present in an existing leaf, a new node representing this head is created, and two leaves representing each of the possible suffixes to this head are added to it (e.g. in Fig. 2.3.3-4 for bc, when the suffix bcabc% is added to the tree which already contains a leaf bcbcabc%); e) Repeat (c) and (d) with the first suffix of the remaining string (as in Fig. 2.3.3- 3 to -6 and Fig. 2.3.4 for the final three leaves, 7, 8 and 9). Each newly added leaf representing a new suffix is assigned the index of its first element in the original string. 2. In the suffix tree, identify head nodes (circular nodes in Fig. 2.3.4) which satisfy a minimum length condition (≥ 2 for this example). They correspond to repeating sub-strings, with differing right elements (as otherwise the head node would already comprise this right element). The left element may still be identical. In the example these are the nodes bc and abc. 3. Build a list of suffixes, grouped by left elements: For each possible element to the left of the node “head” element, a list is created. Each leaf is added to the corresponding list. In the example, this is shown for node bc in Fig. 2.3.4, with the left elements a (in the case ∗abc∗, leaves 2 and 7) and c (in the case ∗cbc∗, leaf 4). The leaves are emphasised by being enclosed within the dashed ellipses, and labelled with the prefixes. 27root 0 root abcbcabc% 1 root abcbcabc% 2 bcbcabc% root abcbcabc% bcbcabc% cbcabc% 3 root cbcabc% 4 root 5 abcbcabc% c bc bc root 6 c bc % abc Figure 2.3.3.: Construction of a suffix tree from abcbcabc%. The numbers indicate both the order and the index of the current suffix being added. New leaves and nodes at each step are shaded. 4. Form the cross-product of each distinct pair of lists for all nodes. In the example this is the cross-product of the lists (2, 7) × (4) = (2, 4),(7, 4) for the node bc, meaning that bc is the longest repeat for the instances of bc in the fourth position in the string, with the instances in the second and seventh position. The pair of leaves 2 and 7 of the node bc in the example are not longest matches, as the preceding character is an a each time. Therefore the actual longest match is to be found elsewhere: in the node abc and the pair of leaves 1 and 6. Applications to User Modelling Within the context of routine activity detection, this approach has been used by Pitkow and Pirolli [1999] to mine users’ web access logs, with the goal of predicting websites that a user will visit in the near future. After extraction of the longest matching subsequences, these subsequences are split, and Markov models (of different orders) are used to obtain transition probabilities. The key use of the longest repeat problem in this case was to optimize performance over a previous approach, by limiting the generation of Markov models to the data contained within longest matching subsequences, while maintaining similar prediction performance. Similarly, Pauchet et al. [2009] use suffix-tree based repeat-mining to identify recurring 28root 7 + 8 + 9 % c bc %(7) %(8) abc %(9) 1 6 2 4 7 8 5 9 3 example for node bc: 2 7 x 4 bc in position 4 has longest match with bc in positions 2 and 7 left prefix leaves a 2,7 c 4 prefix a prefix c Figure 2.3.4.: Identification of longest repeats using Baker’s algorithm in the complete suffix tree from Fig. 2.3.3. Steps 7, 8 and 9 of the tree construction are performed, adding the three shaded leaves. The order in which the leaves are added is given by the nodes and indicated by the superscripts of the vertex labels. behaviour of users of medical catalogues. This information is then used to present a subset of works from the catalogue to the user, which contains elements which are expected to be part of the desired search result. In the field of pervasive and mobile computing, Katsaros and Manolopoulos [2005] propose an approach to – for example – track the location of a client in a wireless cellular network. They describe a prediction task, and also use a suffix tree to find longest exact matches, from which they construct a probabilistic model of transitions. Sigg et al. [2010] use exact (or approximate) repeat search as the first stage of their context prediction algorithm. This stage is used to determine “typical” contexts. Suffixes of the observed context are then aligned with these typical contexts, to find the best match. They then predict the next context to be the continuation of the identified typical context. 2.3.2.2 String Comparison Problem String comparison problems can be categorized as follows: global i.e. compare entire strings; 29semi-global i.e. search problems – finding short strings within a larger one; local i.e. problems on sets of sub-strings. Local problems can further be subdivided into problems with variable length and fixed length of these sub-strings. Furthermore, each of these problems has exact and approximate variations. When approaching the task of identifying routine activities from context data as a comparison problem, then this problem should be interpreted as local comparison problem, either of exact or approximate nature, and of variable length. Additionally, a dispersed approximate repeat problem can be reformulated in terms of an equivalent comparison problem: comparing pairs of subsequences of the sequence in which approximate repeats are sought. Exact Matching Local exact matches (i.e. identical sub-strings within two larger strings) can be found in a brute force way: Pair all sub-strings of one string of length n and the other, and check for identity. Due to the identical length requirement, this implies O(n 3 ) string comparisons. Search space reduction to strings of length l further reduces this to O(n 2 l). To render the problem more tractable, it is possible to limit the search to maximal exact matches. In this case, Baker’s suffix tree algorithm for finding maximal repeats (see subsubsection 2.3.2.1) can be modified to find maximal exact matches instead. The modifications are the following: The lists of positions (shown in the right part of Fig. 2.3.4) are split into two subsets, one containing those suffixes belonging to the first of the input strings, the other containing those that belong to the second input string. The result is then obtained by forming the Cartesian product of each pair of lists, where both the input string and the left element are distinct. This minimal modification has no effect on algorithmic time and space complexity. A complete survey of a large number of both recent and early approaches to exact on-line string matching (i.e. finding a known pattern in a string) can be found in a review of the field by Faro and Lecroq [2013]. Each of the algorithms in the survey has been tested against a battery of synthetic and real world data, and characterised in how well it suits two problem characteristics, pattern size and alphabet size. We voluntarily omit detailed study of these approaches, as expressing the routine activity detection problem as a search problem is highly inefficient, due to the combinatorial scale of the possible, unknown, patterns. The identification problem (“Is the current context a known context?”), which these algorithms address, is much less complex than the routine mining problem, and even a worst case O(n) algorithm [Knuth et al., 1977] 30has little impact on the overall performance. Applications to User Modelling One application of this algorithm in the field of context data, is the SHIP algorithm by Cook et al. [2003], which uses exact matching to determine frequencies of following activities, with the goal of predicting future context from recognising frequent sequences. This approach can also be classified as a sequential pattern mining approach, given the fact that the exact matching is used to extract a frequency measure for a part of a sequence. The approach requires permanent access to a history of past activities, in order to perform a matching of the current subsequence with historic data. SHIP is one of multiple algorithms of the MavHome smart home architecture. This is an agent-based multilayer architecture, which uses a predefined set of concepts to transform physical sensor data (“lowest” layer) into abstract, discrete context data, before it is treated by the learning and decision-making modules (“highest” layer). String matching algorithms have also been adapted to two- or multidimensional data. This is possible through an extension of the string-matching paradigm to “wider” data structures (i.e. where each string element itself is a string of length greater than one) which has been proposed by Baker [1978]. The problem is reduced back to a string matching problem, which allows the use of efficient, well known algorithms. First rows from the search pattern are matched with rows from the subject array, then a table of matches annotated with a row ID is created. In this table, the row IDs are matched with the order of row IDs in the pattern array, column-wise. Therefore, the algorithm effectively represents the problem as the concatenation of two string matching problems. A similar approach is taken by Zhu and Takaoka [1989]. They use the hashing pattern matching approach of Karp and Rabin [1987] on the columns of the input data to first reduce the array problem to a string problem, and then use the algorithm of Knuth et al. [1977] row by row to find the array patterns. To the best of our knowledge, these approaches have not been used within the field of context data mining or applied to related fields, but could be considered as candidates, given a suitable framework. The k-Error Problem The k-error problem (explored in depth in the work of Navarro [2001]) is a quite specific approximate string comparison problem, where the goal is to match a pattern to a string, without incurring more than a fixed number of modifications, and the more general alignment problem, in either global or local flavour. A global alignment of two strings is the ideal ordered set of operations to transform one string to 31another, whereas local alignments are based on the same principle, but look instead to find maximally similar sub-strings within the pair of input strings. The k-error problem is too limited in scope, to be of use in the simple string case, as it is restricted to a search functionality, and the constraints of the fixed number of changes make no sense when dealing with context data. Nonetheless, further on we cover some variants of this approach, that generalize it to two dimensions, where the reasonable complexity of the solutions has some more interest. The class of alignment problems on the other hand is more flexible, and thus more interesting of analysis, and can also be used to solve the k-error problem. Global Alignment The first foray into the field was led by two biologists, Needleman and Wunsch [1970]. They propose a method to find the largest similar subsequence of a pair of amino acid sequences. More specifically, their algorithm finds similar subsequences of maximum length. Their original algorithm – which has largely been surpassed by a dynamic programming version – is illustrated for an example in Fig. 2.3.5. Two input strings are orthogonally arranged, so that a table can be spanned between them. In this version, every match of two symbols is given a score (1) in a table – as shown in the left table in Fig. 2.3.5. This value is added to the largest value in the top left sub-table – the empty table is assumed to contain the score 0 – this process is detailed in the right table of Fig. 2.3.5 . Following the increases in score across the table, gives the operations required to perform an alignment (denoted by arrows in the example). Non-deterministic configurations can be encountered, for example when one string contains a sub-string in inverse order as the other string (e.g. abcd and acbd). In that case, the following value can be based on either of the two previous rows of the table. This is because the incremented value for the b-b-match is not in the sub-table from which the maximum is chosen when examining the c-c-match. This leads to two equal values, one in each row of the table, and a common value in the following table. Because the top-most of the equal values is to the right of the lower-most, it is not possible to traverse both values, leading to the non-deterministic situation, where one of the two equally valid paths (deletion of b or deletion of c) has to be chosen. Dynamic Programming Algorithm The formalisation of the dynamic programming algorithm for global sequence alignment [Sankoff, 1972], requires the definition of a few terms. Let Σ be an alphabet of characters and let Σ∗ be the set of all possible combinations of characters into sequences. Let ε be the empty word. Let a ∈ Σ 32A C G T C G A C G A 1 0 0 0 0 0 1 0 0 C 0 2 1 1 2 1 1 2 1 T 0 1 2 3 2 2 2 2 2 C 0 2 2 2 4 3 3 4 3 A 1 1 2 2 3 4 5 4 4 C 0 2 2 2 4 4 4 6 5 G 0 1 3 2 3 5 4 5 7 A C G T C G A C G A 1 1 C 1 1 1 T 1 C 1 1 1 A 1 1 C 1 1 1 G 1 1 1 Figure 2.3.5.: Original Needleman-Wunsch algorithm, as introduced by Needleman and Wunsch [1970]. The left table is filled with incrementation markers (“1”) at each location where a pair of values match. In the right table, the values for all the cells have been determined, and the alignment highlighted by arrows and bold values. The alignment (arrows) starts at the maximum value and then follows the maximum values, upwards and to the left in the table. The “skips” between values 5 and 4, and 3 and 2 are indicative of deletions in the row-string. 333 3 2 3 2 1 insertion -1 -1 ±0 deletion Figure 2.3.6.: Calculation of the local similarity using the dynamic programming approach. The preceding values in the table are either incremented by the substitution score, in the case of the diagonal predecessor, or decremented by the indel penalty. The maximum value is carried over for all successive operations. and b ∈ Σ (a 6= b) be two such characters. For each pair of (a, b), define an elementwise replacement edit distance or substitution distance sub(a, b) ∈ R where it holds sub(a, a) 6= sub(a, b). In the original paper, the proposed values were 1 for a match and 0 for a mismatch. An alignment can comprise insertions and deletions (indels). These operations are assigned a penalty value indel ∈ R (= −1 in the original paper). The next step is the accumulation of these values in an array (“accumulated similarity score table”) spanned by the two input sequences. Row by row, the array is filled. Each cell in the array is calculated as the maximum of the sum of values in the directly adjacent cells with already determined values and the indel penalty, and the sum of the value in the diagonally adjacent cell with already determined value and the appropriate substitution score for the position of the cell (cf. Fig. 2.3.6 ). Formally: For two sequences S1 and S2 with last elements a and b respectively, the similarity score sim(S1, S2) is recursively defined as: sim(S1, S2) := max   sim(S −1 1 , S−1 2 ) + sub(a, b) sim(S −1 1 , S2) + indel sim(S1, S−1 2 ) + indel   (2.3.1) 34where S −1 is the prefix of length |S| − 1 of a sequence S. The initial condition is sim(S, ε) = sim(ε, S) = 0. Once the array has been completely populated, the maximum value in the last row or column is selected as origin. From this point, a trace of maximum values in the array is followed in the opposite direction of its generation. The direction taken at each step corresponds to an alignment operation. A diagonal movement corresponds to a substitution, whereas a movement into a directly adjacent cell corresponds to an indel. The sequence of operations that is returned this way is the sequence of operations required to align one of the input strings with the other. Using a dynamic programming approach, the algorithm can be implemented within the constraints of O(n 2 ) time and space. When comparing k sequences (of average length n), the complexity is of the order of O(n k ). Optimal Global Alignment Hirschberg [1975] proposes a linear space algorithm, which computes only the optimal score, and returns only the optimal sequence of alignment operations. This is achieved through a divide and conquer approach. Let S i be the suffix consisting of the last i elements of a sequence S and S −i be the corresponding prefix. Given sequences S1, S2 ∈ Σ ∗ , with |S1| = n and |S2| = m, it holds: ∀0≤i≤n : M(i) := max 0≤j≤m {sim(S −i 1 , S−j) 2 ) + sim(S i 1 , Sj 2 )} → M(i) = sim(S1, S2) This means that, for each position i in S1, there exists a position j in S2 such that the sum of similarity values of the pair of prefixes and the pair for suffixes from these positions is equal to the similarity value of the pair of sequences. Splitting S1 approximately in half (at index i) therefore implies an optimal split of S2 at the j where the minimum M(i) is calculated. Repeat this process on the pairs of first and second subsequences generated by the split until only a trivial problem (such as S2 being empty, or S1 containing only a single symbol and S2 being not empty) remains. The dynamic programming approach is illustrated – for the same pair of strings as in the previous example – in Fig. 2.3.7. Note how the value in each cell depends only on the three neighbouring values (as indicated in equation 2.3.1), which is crucial to Hirschberg’s approach. Local Alignment Global alignments are of interest, when a corpus of known interesting subsequences exists. As referenced above, Sigg et al. [2010] use global alignment 35A C G T C G A C G A 1 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 C 0 2 1 0 - 1 - 2 - 3 - 4 - 5 T - 1 1 2 2 1 0 - 1 - 2 - 3 C - 2 0 1 2 3 2 1 0 - 1 A - 3 - 1 0 1 2 3 3 2 1 C - 4 - 2 - 1 0 2 2 3 4 3 G - 5 - 3 - 1 - 1 1 3 2 3 5 A C G T C G A C G A 1 0 - 1 - 2 - 3 - 4 - 5 - 6 - 7 C 0 2 1 0 - 1 - 2 - 3 - 4 - 5 T - 1 1 2 2 1 0 - 1 - 2 - 3 C - 2 0 1 2 3 2 1 0 - 1 A - 3 - 1 0 1 2 GC - 1 - 1 ± 0 Figure 2.3.7.: Note that the traceback follows substitutions over indels in cases of ambiguity (e.g. the 4 shows the complete table and highlights the series of maximal values which indicate the alignment operations. -1. The left table shows how a particular cell value is calculated from three predecessor values, the right table penalty, matching substitutions score a value of 1 and insertions and deletions are penalised with a value of Dynamic programming version of the Needleman-Wunsch algorithm. Non-matching substitutions have no →3 transition marked and not necessarily the maximum value. in the right table), as the value that was used to calculate the current value defines the path for the traceback, 36to identify known context sequences in a stream of real-time context data. In order to actually identify such repeating patterns in sequences, local alignments need to be found. The reference local alignment algorithm is Smith and Waterman’s algorithm [Smith and Waterman, 1981], a variation on the dynamic programming Needleman-Wunsch optimal matching algorithm described earlier. The key differences are that negative values are used to represent the similarity of different values, and that in the accumulated similarity score table all negative values are truncated to zero. The similarity function above is modified to: sim(S1, S2) := max   0 sim(S −1 1 , S−1 2 ) + sub(a, b) sim(S −1 1 , S2) + indel sim(S1, S−1 2 ) + indel   (2.3.2) and furthermore, a backtrack halts when a zero value is encountered. The result is that – in the accumulated similarity score table – the score rises along pairs of local subsequences that are similar, then drops as they become dissimilar further on, and finally reaches zero. This zero value then serves as a delimiter: any similarity elsewhere is not impacted by the previous values, and thus locality is introduced. The degree of locality is directly dependent on how quickly similarity scores are accumulated to reach zero, from the point that the two subsequences diverge. This means: the dissimilarity of a pair of intervals between two pairs of similar intervals determines whether the two intervals are treated as a single pair of similar sub-strings containing the dissimilar substrings, or as two separate pairs. An example of this is given in Fig. 2.3.8, with two different penalties (-2 and -1 for left and right tables respectively) used to calculate the two tables. The result is that the smaller alignments are each time reset (to a zero score) in the left table, before they can form a larger alignment. Although Myers and Miller [1988] showed that it is possible to apply Hirschberg’s approach to local alignments, this is not always desirable, as reducing the result to the optimal alignment, discards all other local alignments present in the data. Fast Search Algorithms In bioinformatics, one of the key challenges is to check for the presence of medium length sequences within a genome. This is best achieved by algorithms that are optimized for search, such as FASTA by Lipman and Pearson [1985] and BLAST by Altschul et al. [1990]. These algorithms use heuristics to achieve 37A C G T C G A C G A 1 0 0 0 0 0 1 0 0 C 0 2 1 0 1 0 0 2 1 T 0 1 2 2 1 1 0 1 2 C 0 1 1 2 3 2 1 1 1 A 1 0 1 1 2 3 3 2 1 C 0 2 1 1 2 2 3 4 3 G 0 1 3 2 1 3 2 3 5 A C G T C G A C G A 1 0 0 0 0 0 1 0 0 C 0 2 0 0 1 0 0 2 0 T 0 0 0 1 0 0 0 0 0 C 0 1 0 0 2 0 0 1 0 A 1 0 0 0 0 0 1 0 0 C 0 2 0 0 1 0 0 2 0 G 0 0 3 1 0 2 0 0 3 Figure 2.3.8.: Two accumulated similarity tables obtained using the Smith-Waterman algorithm. The left has been calculated using a similarity score of 1 for matches, and dissimilarity penalties of -2 for non-matching substitutions and indels. The right table has this penalty reduced to -1. In each case, the alignments with a similarity score of at least 3 have been highlighted. Note how the higher penalty leads to smaller, more local alignments. much better search performance than exact methods, at the cost of a guarantee that the obtained results are correct. By being limited to search, these approaches do not offer themselves to the more exploratory nature of the routine activity detection problem pursued in this work. A further number of approximate on-line string matching algorithms is exposed in a survey by Navarro [2001], which introduces algorithms that are also based on statistical approaches, automata based approaches, filtering approaches and bit-parallelism based approaches. Two-Dimensional Pattern Matching Approximate pattern matching approaches for multiple dimensions can be divided into two classes: error-tolerance-based approaches and alignment-based approaches. The former use a simple model, that merely counts the number of modifications required to transform one structure into the pattern that is being sought. If the number of operations required exceeds a limit, a mismatch between data and pattern is assumed, similar to the k-mismatch approach for strings. Krithivasan and Sitalakshmi [1987] present a row-based approach to this problem, and a simple generalisation of the dynamic programming algorithm. Their model of a pattern is rectangular. The algorithm consists of two steps: first patterns are represented in an optimized fashion, by reducing rows that are identical or similar to a differential representation. Then, the data is searched for occurrences of the first row of the pattern, and for each occurrence it is 38verified whether the second row of the pattern follows. The number of required modi- fications is tracked for the set of occurrences, and whenever the error-limit is exceeded, the occurrence is discarded. Amir and Farach [1991] present an early algorithm that takes into account general structures, as opposed to merely rectangular ones. To achieve reasonable run time, they use numerical convolutions to perform the approximate matching. Baeza-Yates and Navarro [1998] present an approach of identical optimal complexity, that consists of a filtering step, discarding all rows in the text that cannot possibly contain a pattern, before using a standard dynamic programming algorithm for the final matching. Two-Dimensional Motif Extraction The previously introduced two-dimensional matching approaches do not allow the extraction of patterns from data, but instead solve the problem of finding a known pattern within data. As in the one-dimensional case, matching alone is not the key issue of the routine activity detection problem. Instead, the identification of common patterns in input data, is the key problem of the routine activity detection problem. Such extraction algorithms have first been proposed by Apostolico et al. [2008]. The notion of a pattern in their work is still essentially rectangular, but through the use of “don’t care”-symbols (symbols in patterns that match any symbol in the input data) the actual informational content of a pattern can take arbitrary shapes. Their approach primarily searches for autocorrelations of a single input array. An autocorrelation in their nomenclature is a similarity between the array and its transposed array. They propose an incremental combinatoric approach to detecting a base of patterns. A base is a set of maximally sized and maximally dense patterns, which comprises all patterns of an autocorrelation. Within the framework of the routine activity detection problem, such a base would correspond to a set of recurring contexts of maximal length and specificity, that describes all recurring contexts in a specified time frame. The incremental algorithm functions as follows: iterating over the cells of the array, in a row-major order, from the lower right corner to the upper right, a base is found for each sub-set of elements contained up to the current position. During the iteration step, new base element patterns are generated, through inclusion of the new symbol. Some of these patterns are novel – i.e. have not been generated previously – and render some old patterns obsolete, either by rendering them more specific, or by extending them in size. New patterns can be not novel, for example when a novel pattern removes an old pattern through extension from the base, but a previously removed pattern does then again become a valid base element, through this removal. Iterating this process across 39data of size N = m × n requires O(N3 ) time. By reducing the alphabet to a binary alphabet, complexity can be reduced to O(N2 ) [Rombo, 2009]. Two-Dimensional Local Alignment A generalizations of the local alignment by dynamic programming paradigm to two dimensions is presented in Lecroq et al. [2012]. This approach can be seen as an extension of the Smith-Waterman algorithm. It computes similarity scores for each pair of “prefixes” (in the two-dimensional case, this is the array to the top and left of the chosen position) in a table, that has now gained four dimensions. Two of these dimensions correspond to the widths and the other two dimensions correspond to the lengths of the two arrays being locally aligned. S 1 2 .. i .. n-1 n 1 C1 A2 Ai Bn-1 An 2 C1 A2 Bi Cn-1 An 3 A1 B2 Ci Bn-1 Cn 4 A1 A2 Ai Bn-1 Cn … … … … … … … j A1 A2 … Ci … Bn-1 Cn … … … … … … … l-4 C1 C2 Ai An-1 Bn l-3 B1 B2 Ci An-1 Cn l-2 C1 B2 Ai An-1 An l-1 C1 B2 Ci An-1 Bn l C1 A2 Ai An-1 Cn S S Figure 2.3.9.: Row and column prefixes, and accompanying notation. The similarity value in the table entry is computed as a function of the preceding values, much as in the Smith-Waterman dynamic programming algorithm. The difference in the two-dimensional case is that the preceding values now number eight instead of three. First of all, the number of possible deletion and insertion operations has doubled (lines V to VIII in equation 2.3.3), as they can be either in vertical (VII, VIII) or horizontal (V,VI) direction, and furthermore substitutions can be accompanied by different movements in the top-left direction. These directions are either top (IV), left (III) or top-left (in both arrays simultaneously - I and II). Finally, in the case of the top-left movement, the order of the submovements (top-left (II) or left-top (I)) influences the score. This is the case, because row prefix and column prefix similarities play a role in the calculation of the substitution scores, taking the place of the per-element substitution scores used in the one-dimensional case. In the following, let S ← and S ↑ denote the row prefix and column prefix of the bottom-right element of a sequence S (cf. Fig. 2.3.9) Column-prefix similarities are added to the similarity score, when doing an in-row substitution movement, and row prefix similarities are added, when doing an in-column 40substitution movement. In the case of the combined diagonal movement, the order then impacts which row prefix and which column prefix is considered. Let the upper index in S −i,−j denote which array prefix is used: S −1,0 is S without the last row, S 0,−1 is S without the last (rightmost) column, and S −1,−1 is S without both last row and column. indel(S) is the indel score of the bottom right element of S. To formalize (compare with equation 2.3.2), the similarity of two arrays S1 and S2 is defined as: sim(S1, S2) := max   0 sim(S −1,−1 1 , S−1,−1 2 ) + sim(S1 ↑, S2 ↑) + sim(S 0,−1 1 ←, S0,−1 2 ←) (I) sim(S −1,−1 1 , S−1,−1 2 ) + sim(S −1,0 1 ↑, S−1,0 2 ↑) + sim(S1 ←, S2 ←) (II) sim(S 0,−1 1 , S0,−1 2 ) + sim(S1 ↑, S2 ↑) (III) sim(S −1,0 1 , S−1,0 2 ) + sim(S1 ←, S2 ←) (IV) sim(S1, S−1,0 2 ) + indel(S2) (V) sim(S1, S0,−1 2 ) + indel(S2) (VI) sim(S −1,0 1 , S2) + indel(S1) (VII) sim(S 0,−1 1 , S2) + indel(S1) (VIII)   (2.3.3) This similarity is then implemented in the same way as the standard Smith-Waterman approach, with time complexity in O(N × M), where N is the number of elements in S1 and M is the number of elements in S2. Although this algorithm is generally designed to detect patterns in arrays, the actual use in Lecroq et al. [2012] is to identify similar passages of annotated conversations. This kind of data is notably sequential only in the time dimension, whereas the annotation dimension is fixed, and each column has its own alphabet. Therefore, the application is to a problem of finding similar subsequences in sequences of tuples. With these different approaches having been exposed, we can now compare their suitability for the routine activity detection problem. 2.3.2.3 Discussion Our look at string mining is focused on alignment techniques, as this class of approaches returns pairs of similar subsequences from two input sequences of symbols and thus allows us to extract information from the data. There are three identifiable ways how to apply this to our routine activity detection problem: 41❼ reduce the sensor data to discrete context states, and obtain a single sequence of such states – each similar pair of subsequences should correspond to a routine activity; ❼ formulate the task as a multi-sequence task (to remain coherent with multiple sources of context data) and seek alignments on each sequence – merged similar subsequences should correspond to routine activities; or ❼ consider context to be a sequence of n-tuples, with each tuple corresponding to a context state, consisting of multiple discrete context factors – pairwise locally similar subsets should correspond to routine activities. These three different conceptual approaches are illustrated in Fig. 2.3.10. In each case, it is required that the context is represented in a discrete format. The difference between the first and following two approaches lies in the alphabet size and tolerance to desynchronisation. A single value that encodes multiple values cannot encode certain intricacies in context data, such as one sensor reading leading or lagging the same sensor reading in another instance (5), with regard to the other sensor data. This restricts the appeal of the single string approach. t sensor data context state abstraction sensor state abstraction sensor state abstraction data synchronisation Pattern-mining a single sequence Pattern-mining multiple sequences and merging Pattern-mining an n-dimensional sequence Figure 2.3.10.: Three different ways of modelling context for different sequence mining approaches. “Data synchronisation” refers to the need to have a full set of sensor readings available at every time step, irrespective of different sampling frequencies of the actual sensors. 42The multi-sequence approach is excellent with regard to desynchronisations, as each sensor is studied at an independent temporal time scale from the others, to find patterns. On the other hand, this complete uncoupling means that coupling effects only get introduced after the first pattern mining pass, introducing additional model parameters (6) to characterise the merge operations. The multi-dimensional approach is limited, in that there are no efficient ways of mining such patterns. On the other hand – as the illustration makes readily apparent – it is possible to project the data into the plane, which induces “neighbourhood artefacts” where the link between neighbouring sensors is stronger than between those that are projected into areas that are further apart. The Smith-Waterman based two-dimensional local alignment algorithm can find patterns in this data, but at the cost of relatively high complexity (1). The exact motif-extraction approach of Apostolico et al. [2008] is also capable of extracting information from such projected context data, but the time complexity of its combinatorial approach is even higher (1). Additionally, it will only extract exact patterns, having only the freedom of the don’t care symbol, but not permitting structural variation between pattern instances (5). Although the exact approach means that initial parametrisation is not required, by consequence it is not possible to obtain an intrinsic distance between two patterns, or to allow for substituted elements outside of replacements with the don’t care symbol, which removes all information of the subset of symbols that can appear in those positions. With sufficient pre-treatment of the context data, in theory it could be possible to reliably extract patterns, of flexible shapes. In comparison to the alignment approach the complexity is too limiting, and the amount of pre-treatment too vast, for this approach to be considered suitable for the routine activity detection problem. Similarly, although the suffix-tree solution to the dispersed repeat problem has efficient solutions (1,7), the fact that it merely covers exact repeats, means that the pre-treatment has to deliver a sequence of activities as input (2,3). Otherwise the variations which one can expect in context data, render the approach unsuitable (4,5). Such a pre-treatment is difficult to obtain in a sufficiently general manner, which renders exact repeat solutions more difficult to apply to the routine activity detection problem than alignment solutions. 2.3.3 Comparison For each of the two approaches, we have presented similar classes of approaches. Looking back at the list of seven criteria we initially defined, we can rank features of classes of approaches for each one: 43Complexity (1) The first criterion favours approaches which have low algorithmic complexity and also an inherent capacity to deal with multidimensional data. Whereas the former is an obvious implication, the latter judgement is based on the fact that any other approach would either require a merging post-processing step or projecting pre-processing, both of which may have unexpected implications on complexity. Preprocessing (2) The second criterion similarly favours multi-dimensional approaches, as pre-treatment can be reduced to the per-element level and possibly a simple synchronisation. Adaptability (3) The third criterion is somewhat in opposition with criteria (2) and (6). Complex models are able to closer match the actual data, and give a richer representation. Approaches using multi-level hierarchical or substitution score based models have advantages under this criterion. Noise (4) Extraction from noisy data is best performed by approximate approaches. Exact approaches require additional pre-treatment to fulfil this criterion. Time Effects (5) This criterion also favours approximate approaches, specifically those that allow skipping or ignoring individual entries when mining for patterns, as well as treating each sensor with a certain amount of individuality. Parametrisation Effort (6) The parametrisation effort is lower for substitution based models compared to hierarchical models, as there is no need to define cross-sensor relations. Partial Mobile Deployment (7) This final criterion mostly an engineering challenge, as all sequence mining based approaches require a large off-line component, that does not need to be based on the mobile device. On the other hand, a recognition or prediction algorithm based on an established model can be deployed on a mobile device with little worry about platform constraints. For both string mining and SPM, we can at this stage discard the exact one-dimensional approaches – exact repeat mining and the standard sequential pattern mining algorithms – as the demands this would put on the pre-treatment of the data cannot reasonably expected to be met. 44Table 2.1.: Comparison of SPM and string mining sequential pattern mining string mining approximative Y N Y N multi-dimensional Y N Y N Y2 N Y N (1) complexity X high med. low high med. high low (2) preprocessing high med. high low high med. high (3) adaptability med. med. low high med. low low (4) noise tolerance high med. low high med. med. low (5) time effects tolerance low med. low high low low low (6) parametrisation effort med. high low high med. low low (7) mobile deployment no no yes no yes no yes The approximate methods of string mining have a larger maturity compared to the approximate approaches of sequential pattern mining, or in the case of the approach by Kum et al. [2003] is even based on a string mining paradigm. Additionally, there remains a drawback of sequential pattern mining, in that there is no consecutivity criterion present in most algorithms. Plantevit et al. [2010]’s multi-dimensional approach based on the M3SP algorithm is the only true multi-dimensional algorithm in both fields. To some degree, it shares the drawbacks of the exact sequential pattern mining approaches, but due to the multidimensionality, the pre-treatment of the data becomes much less of an issue, and the underlying hierarchical model can be used to give a semblance of an approximate approach. A way to render it more suitable to the routine activity detection, would be to add a consecutivity criterion, as has been done with the algorithm of Pinto et al. [2001] by Rashad et al. [2007a] or take into account temporal data [Giannotti et al., 2006, Yoshida et al., 2000]. The two-dimensional approach by Lecroq et al. [2012] appears to be similarly suitable. The key drawback lies in the required projection of the multi-dimensional context data into the plane in which the algorithm operates, but it takes into account desynchronisations across different sensors, and could be reduced to a lower complexity by taking into account the projection, and thus the incompatibility of data that is adjacent in the sensor-dimension. A side-by-side comparison of the general approaches with regard to the seven criteria is presented in Table 2.1. 2This is an estimate based on a naive extension of the approach of [Lecroq et al., 2012] to multiple dimensions. 452.4 Conclusion and Direction Our survey of available context datasets has shown that none of them is truly suitable to quantifiably verify that detected patterns correspond to routine activity. The lack of ground truth is the prime limitation, but there is also only a small subset of physical context data present in the existing datasets. This leads us to pursue two strategies to address – separately – each of the shortcomings: A generation algorithm can give us true ground truth knowledge, whereas our own data collection campaign would provide us with as much physical information as required. We also need to annotate some of the real world data with routine activities, to quantitatively verify our claims. With regard to the algorithms and approaches we studied, none matches our task directly. All require either modification or extensive adaptation to a specific dataset. A common drawback is the substantial effort required to prepare context data for the data model used in conjunction with the algorithms; alignment based approaches minimise this aspect, by only requiring tables of similarity scores, which can be determined using statistical analysis. Alignment approaches are also uniquely tolerant to desynchronisations between sensor streams. In the above comparison to SPM, the alignment approaches win out, barely. Compared to a clustering or a probabilistic state machine approach, the simpler pre-processing of the alignment approach is the deciding factor in its favour. This leads us to pursue an approach based on n-tuple sequence alignment. 46Alignment of Sequences of n-Tuples Overview This chapter presents our algorithmic contributions towards an answer to the routine activity detection problem. First we introduce a model that presents context in a way that an alignment algorithm can use. Next we cover our algorithmic contributions to the alignment algorithms of the state of the art, and finally we discuss the implications of our approach. 3.1 Context Model Fundamentally, context data is the set of values of a number of context factors, at a specific moment in time. Assuming there are n context factors, this is most accurately reflected as a vector-valued function over time, of the type C(t) = (c1(t), c2(t), . . . , cn(t)). Of course, a digital computer can impossibly treat continuous data of any kind, and a digital sensor can never capture data in a continuous manner. Any context data therefore is a discrete valued time series, unless different context factors are sampled at different rates, in which case the data is in the form of multiple time series. We adhere closely to this natural representation in the following. 3.1.1 Sequence of n-tuples We postulated in the introduction that routine activities correspond to recurrent motives in context data. The state of the art approaches to finding such motives favour the use of a sequence based approach. Consequently, we adopt a model that represents context as a sequence of context states. In specific, we structure context as a sequence of n-tuples. 471.1 0.3 0.2 0.8 0.7 0.2 0.4 0.5 0.3 0.4 0.6 0.4 0.6 0.5 0.5 0.8 0.3 0.2 0.5 0.6 0.2 C = C(t) ℝ  ℝn t discretisation t synchronisation and classification t A1 A2 A3 A4 B1 A2 A3 A4 C1 B2 A3 A4 C1 B2 B3 A4 B1 B2 B3 B4 B1 A2 A3 B4 C1 B2 A3 B4 C = (c1 (t1 ), c2 (t2 ),…, cn (tn )) ℕn  ℕ n C = (c1 , c2 ,…, cn)(t) ℕ  ℕ n Figure 3.1.1.: The transformation of continuous context C(t) into context data in a sequential model. With regard to the natural time series representation, this requires that our context data sources are synchronized and sampled at constant and equal intervals. Each position in a tuple contains a (coarsely – e.g. at a semantically relevant level) discretised or classified reading from one of n context data sources. These context data sources each measure one context factor and are referred to as sensors in the following. Each tuple represents context at a moment in time, which we assume to be valid over the constant interval of time, until the next set of values becomes available. In Fig. 3.1.1 the process of transformation from physical context into context data and finally into a synchronized and coarsely discretised n-tuple representation is illustrated. Discretisation (at the physical digital sensor level) transforms context from the continuous function over time into a number of time series. This is then synchronised into a single time series, and the values are replaced with abstract representative class IDs, column by column. In the example, we excluded possible expansions or contractions in the “width”, due to a single sensor measuring multiple physical properties, or data from multiple sensor being used to determine a class based on multidimensional data. This is merely to aid comprehension — in reality these characteristics may appear in the process chain. By choosing an n-tuple approach to alignment, over a 2D-approach, we can eliminate a degree of freedom from the latter. The fact that each sensor has its own, separate set of values, allows us to fuse the two in-tuple dimensions into a single one, by requiring that any operation performed along one axis has to be equally performed along the other. This enforced translational (across sequences) symmetry not only prevents us from having to define similarity values for nonsensical configurations (e.g.: How similar 48x y z w z C C determine local similarities fuse dimensions T∈ℕ4 3 Figure 3.1.2.: Linking w- and z-axes into a single dimension, due to translational symmetry (i.e.: every set of discrete steps taken along the z-axis is replicated identically in the w-axis). is a bright light to an upside down mobile device?) but also reduces complexity of the alignment algorithm. The specific consequences are discussed in subsection 3.2.1. Fig. 3.1.2 shows how the four-dimensional alignment problem has been reduced to a three-dimensional one, by linking the in-tuple dimensions. 3.1.2 Blocking and Sampling Although it is generally possible to find pairs of similar subsequences by searching for local alignments of a sequence with itself, the time and memory required to do so grow by the square of the length of the sequence (cf. paragraph Local Alignment on page 35). There exists a limit from which on it is no longer possible to calculate local alignments, because no computer system has sufficient memory available to perform the computation. We have identified two means of managing the issues that arise from an increased volume of data: ❼ A first variable that we can control a priori is the sampling frequency of context data. Depending on the granularity of context patterns we wish to identify, we can reduce or increase the sampling frequency. This also reduces or increases the sequence length, for a given time interval of context data. 49… … l i l i+1 ≠ corpus context C Figure 3.1.3.: Splitting a long sequence of context data into blocks of roughly equal (but not necessarily equal) lengths. ❼ Another way to address this problem is by splitting the sequence along regular (time-)intervals into subsequences of n-tuples. It is often sensible to do this along semantically relevant lines, for example by choosing 24 hour intervals or seven day intervals. This is illustrated in Fig. 3.1.3 where a long sequence of context data is divided into a set of subsequences with potentially different lengths. The different lengths are artefacts of the data collection, and do not affect the alignment calculation. Memory constrained situations are defused by using this approach, as the accumulated score tables for each pair of subsequences are much smaller. Fig. 3.1.4 shows how the large table spanned between two long sequences a and b is reduced to many smaller tables, when the long sequences are divided into blocks. The impact on total computation time is negligible, due to high number of alignment operations that result, which also scales to the square of the number of segments. On the other hand, it is trivial to parallelise across pairs of blocks, which reduces the real duration (i.e. wall time) of performing an alignment when more than one processor is available. 50Blocking into N Blocks Volume = N2 small volumes a b Figure 3.1.4.: The reduction of the size of individual accumulated similarity score tables which can be obtained by blocking. a and b are two sequences, with the local similarity scores contained in the volume spanned between them. Another advantage to blocking, lies in that fact that blocks are crucial for a sequence mining approach. Conversely, a downside is that there is an accuracy penalty, even when choosing “convenient” intervals (i.e. such that periods of interest are well away from the beginning or end of a block). Notably, patterns that fall across these boundaries could be represented as two separate alignments, or not at all, because each half might be too short to meet an imposed similarity criterion. One possible means of addressing this shortcoming, is to allow overlaps between adjacent blocks. This practice introduces some overhead, when alignments that can be found in the overlap are “stitched together”. 3.1.3 Meta-data As we pursue a local alignment-based approach, we need to be able to determine local similarities of subsequences. A key requirement is that we define the relation between each pair of discrete states of each sensor by means of a set of similarity scores. These similarity scores are by nature positive, when describing the similarity of identical values, and negative when describing the similarity of non-identical values. We chose to represent these values in the form of n (one for each element of an n-tuple) symmetrical tables, containing positive values in the main diagonal, and negative values elsewhere. A small example is given in Fig. 3.1.5. 513 -1 -1 -2 -2 -1 3 -1 -2 -2 -1 -1 3 -2 -2 -2 -2 -2 5 1 -2 -2 -2 1 5 n A B C D E A B C D E S Figure 3.1.5.: A sample substitution similarity score table from the set of n tables. We can imagine four ways, how such a set of meta-data can be obtained. The first two are based on statistical analysis of an existing dataset: transition frequencies between sensor states are a possible indicator to an underlying system, but the same can be claimed of substitution probabilities between sensor states for hand-selected patterns. A third approach is to base the values on the physical distances of the underlying classes. In the case of two places, the distance of the shortest route between the two, or the time required to cover that distance, could be such physical pointers. Finally, in absence of such data, a simple model that does not assign different scores at all, except one positive and one negative score to differentiate between same and different values can be used. Each approach requires expert supervision, and of course it is also possible for an expert to project his own view of the problem onto a manually crafted set of meta data that does not directly reference any of the above approaches, or mixes them. Besides these substitution scores, an alignment-oriented model also requires insertion and deletion scores. Contrary to the affine (for length) and constant (for deleted/inserted value) approach chosen in bioinformatics (cf. BLOSUM-type block transition score tables by Henikoff and Henikoff [1992] and the work of Altschul and Erickson [1986]), we decide to use scores which are a fixed offset of the substitution similarity score. Our reasoning behind this choice is as follows: in context data it is common for context sources to return a constant value, for a different length of time. Particularly, periods of inactivity (with regard to the mobile device) show this characteristic. An example: 52constant value constant value locally optimal alignment with negative deletion score desired locally optimal alignment aligns if insertion/deletion of constant values has positive similarity Figure 3.1.6.: Two intervals of identical values but different lengths can be aligned by assigning positive similarity score to insertions and deletions of identical values. a user sleeps for different lengths of time during two different nights in a week. Our goal in this case is to align the entirety of both instances of “user sleeps”, instead of just the closest matching sub-sequence of the longer interval. The score offset gives a high similarity score for alignments of a subsequence of constant values with another subsequence of identical values but different length, while also penalising non-identical deletions and insertions over substitutions. This concept is illustrated in Fig. 3.1.6, where two intervals of constant values but different lengths are shown side by side, with two possible ways of defining similarity being shown: To the right, the state-of-the-art approach of assigning negative scores to all deletions and insertions, and to the left an example where the sum of deletion score and substitution score of the two constant values is positive. This allows the inclusion of the entire interval. In practice, a positive score would usually be undesirable, as problems of scale might arise. Often it is sufficient to allow a similarity score to bridge across such intervals without penalizing the accumulated score too much, as activities following longer series of constant values are usually also similar, if the constant values are part of the trace of a significant routine activity. In this case a lightly negative score-sum is preferred. 533.1.4 Discussion This model – and particularly the definition of a similarity measure – is specific to alignment approaches. Data that is presented according to this model can be transformed to conform to another model, as long as the granularity of the discretisation is not too coarse, and the classification key which is used to map raw values to abstract context values is available. Of specific interest to us, is the transformation to a model that is compatible to a sequential pattern mining approach, because it would enable a direct comparison. Such a conversion would require that the similarity tables are transformed into a similarity hierarchy. We consider the absence of semantic and physical information in data that conforms to this model to be an advantage: it protects the privacy of the user whose data is being treated. Despite it being possible to infer some semantic information (e.g. which location IDs correspond to home and work) from a stream of data formatted according to this model, there is very little risk of physical information (i.e. where the previously mentioned places are located) to become compromised. This makes our model suitable for data storage and processing on distributed systems, that are not necessarily under direct control of the user, with little risk of a breach of privacy. This hypothesis is reinforced by the evaluation of Voigtmann et al. [2012] of different context analysis approaches and models. The adaptation of raw data to our model requires some amount of intervention by an expert, but automation is possible to a degree. The influence of this expert in the creation of the model is pivotal. Assuming that an expert has derived a perfect context model, we cannot guarantee that he can transform this model with perfect accuracy into a set of meta-data. This limitation is due to the fact that similarity values are limited in precision and difficult to scale across multiple sensors. Anecdotally, in the field of biological sequence alignment, research showed that incorrectly obtained substitution score tables (Styczynski et al. [2008]) can in fact increase the accuracy of the used alignment algorithm. In this case an error in the statistical determination of similarity values from a reference dataset was present. We therefore theorise that our similar model would display similar resilience to slight inaccuracies in the similarity value tables. We also have to emphasise that the parametrisation of a model that performs exactly as expected is far from a well understood or intuitive practice. With this model in place, we examine in more detail our approach to process this data for routine context. 541 2 .. n-1 n A1 B2 An-1 Bn B1 C2 An-1 Cn C1 C2 Cn-1 An A1 A2 Bn-1 An A1 A2 … Bn-1 Cn C1 C2 Bn-1 Bn C1 B2 Cn-1 Cn B1 B2 An-1 Cn B1 A2 Cn-1 Bn A1 C2 Bn-1 An 1 2 .. n-1 n C1 A2 Bn-1 An C1 A2 Cn-1 An A1 B2 Bn-1 Cn A1 A2 Bn-1 Cn A1 A2 … Bn-1 Cn C1 C2 An-1 Bn B1 B2 An-1 Cn C1 B2 An-1 An C1 B2 An-1 Bn C1 A2 An-1 Cn alignment Figure 3.2.1.: Two example context sequences, the resulting context data sequences and an alignment (cells underlaid in grey) that corresponds to two similar subsequences. 3.2 Alignment Algorithm It is our declared goal to find patterns in context data. As we have laid out in our survey of the state of the art (cf. section 2.4 on page 46), the search for local alignments appears to be the most suitable approach to this task. Any such alignment (i.e. a pair of similar subsequences of two sequences from a corpus of context data) corresponds to two instances of similar activities or contexts. Fig. 3.2.1 reprises how context sequences correspond to alignments. Two similar sequences of activities (being at home, working at the hospital in the morning and the laboratory in the afternoon, before playing hockey on one hand and the same activities in a different order on the other) result in two similar sets of context data. A subset of this data attains a locally optimal similarity score and is therefore considered to be in alignment. This alignment then serves as pointer for the original similarity in the activities. Fig. 3.2.2 illustrates how pairs of context sequences from a corpus (i.e. an established set of subsequences of context data - cf. subsection 3.1.2 on page 49) are generally aligned. This is the key operation to find frequently appearing similar subsequences in 55x y z w z a b determine local similarities Figure 3.2.2.: Alignment of two context sequences a and b from a corpus. this corpus, which we then understand to be representatives of routine activities. Before we continue, we briefly discuss the two key terms that we use so frequently in this work: alignment and similarity. An alignment is defined as a result of an alignment algorithm with a specific configuration. More generally, it is a subsequence and the associated operations to transform it into another similar subsequence (cf. subsection 2.3.2 on page 25). On the other hand, the – rather abstract – notion of similarity is less obvious. With regard to sequences, we can define four key criteria of similarity: Substitution similarity at the elemental level is the most atomic criterion. It stems from the pair-wise similarity values defined beforehand (cf. subsection 3.1.3 on page 51). Another similarity criterion is the density of positive substitution similarities. A high density means a high similarity of a set of values. A third similarity criterion is size: at the same density, a larger set of values can be considered to be more similar, than a smaller one. Finally, we impose a synchronicity criterion. The less gaps need to be opened or filled in a pair of subsequences, given the same size and density, the higher the similarity score for the overall sequence. In the following, we implement this notion of similarity with a recursively accumulated similarity measure. Basically, we call a sequence “similar” to another, if the last row and column of both sequences are similar, and the remaining sequence is also similar 56(cf. subsection 2.3.2 on page 25 and the next subsection for formal descriptions), while using a standard one-dimensional similarity measure for rows and columns. This measure allows us to describe a very precise notion of what similarity is. By parametrising the context model appropriately, we can craft a measure that corresponds to specific expectations. An expert – who defines a set of rules that effectively links certain kinds of patterns in the data to routine activities – can therefore tune the parameters on a case-by-case basis. A similarity measure based on this concept lies at the heart of the work of Lecroq et al. [2012] on aligning annotated dialogues to find similar structures. We extend and adapt this approach for use on context data and our context model. Our modifications to their algorithm, which primarily address significant performance issues that arise when attempting to use their approach on long sequences of context data, are detailed in the following. 3.2.1 Contribution I: Reduction to n-tuple Problem Our first angle of approach lies in the elimination of unnecessary size of the table of accumulated scores. In the original approach, this table spans four dimensions, to take into account insertions and deletions in horizontal and vertical directions in the plane. As our context model does not allow for any interaction between different elements of the same tuple, we restrict permitted operations from the 2D approach (cf. subsection 3.1.1 on page 47 and Fig. 3.2.2 on the preceding page). When determining the similarity of a pair of tuples we now only allow substitutions between elements with identical indices. This brings our approach closer to a true ntuple approach. As a consequence, insertion and deletion operations are restricted to the sequence dimension, but are not limited to entire n-tuples at a time. This optimisation reduces the local similarity score table T to three dimensions, and thereby each cell only depends upon five “predecessor cells”. Each of these cells corresponds to a vertex in the cube marked T in Fig. 3.2.7. This step also simplifies and thereby optimises some ancillary calculations. It is often required to calculate row and column similarity scores locally; for the row case, only substitutions are of interest. The local column alignments also mean that the algorithm retains full flexibility when working with data that has a tendency to de-synchronise, by being able to “break up” tuples to form alignments. As the calculation of the score table is naturally defined in a recursive manner, we will first define ways of selecting individual tuple elements in a sequence with a reference point in the bottom right. For the following, let s be a sequence of n-tuples of length l. 57Definition 1. s [i, j] , i < l ∈ N, j < n ∈ N is the element in the j-th position from the end of the n-tuple in the i-th position from the rear (l-th row) of the sequence s. In Fig. 3.2.3, we present three examples (one general, and two similar to the common usage in the following) of how this inverted addressing of elements of a sequence works. s 1 2 .. i .. n-1 n 1 C1 A2 Ai Bn-1 An 2 C1 A2 Bi Cn-1 An 3 A1 B2 Ci Bn-1 Cn 4 A1 A2 Ai Bn-1 Cn … … … … … … … j A1 A2 … Ci … Bn-1 Cn … … … … … … … l-4 C1 C2 Ai An-1 Bn l-3 B1 B2 Ci An-1 Cn l-2 C1 B2 Ai An-1 An l-1 C1 B2 Ci An-1 Bn l C1 A2 Ai An-1 Cn s[n-i,l-j] s[1,1] s[0,1] Figure 3.2.3.: Selection of tuple elements in a sequence using reverse addressing. The origin of the coordinate system used here is in the lower right end of the sequence. From there the first coordinate is incremented when moving one element to left, and the second when moving one element upwards. Next, we define a way to express the recursive reduction of the sequence: Definition 2. The •i,,j operator represents the sub-sequence consisting of the original sequence, minus the last i tuples and the last j tuple elements. If we understand s to be an ordered set of coordinate-value pairs, this can be expressed as si,,j := s \ s [x, y] ∀x < i ∨ y < j. This operator is illustrated in Fig. 3.2.4, where both a general case is shown, and the 58usage that is most common in the following, with indices in the [0,1] range. s 1 2 .. i .. n-1 n 1 C1 A2 Ai Bn-1 An 2 C1 A2 Bi Cn-1 An 3 A1 B2 Ci Bn-1 Cn 4 A1 A2 Ai Bn-1 Cn … … … … … … … j A1 A2 … Ci … Bn-1 Cn … … … … … … … l-4 C1 C2 Ai An-1 Bn l-3 B1 B2 Ci An-1 Cn l-2 C1 B2 Ai An-1 An l-1 C1 B2 Ci An-1 Bn l C1 A2 Ai An-1 Cn sn-i,l-j s1,1 Figure 3.2.4.: Example of the •i,,j operator. If the operator is used on the same sequence of n-tuples, with one pair of indices being higher than the other, the smaller result is a subset of the larger one. In this case the result underlaid in black is a subset of the result underlaid in grey. To calculate in-tuple and in-column similarity values, we define two operators: Definition 3. s [i, j]← := {s [i, j + 1] , s [i, j + 2] , . . . , s [i, n]} is the right-to-left sequence of elements to the left of a position in a tuple, and s [i, j]↑ := {s [i + 1, j] , s [i + 2, j] , . . . , s [l, j]} is the bottom-to-top sequence of all prior elements in a column (i.e. all elements with the same tuple index). One example of each of these operations is illustrated in Fig. 3.2.5. 59s 1 2 .. i .. n-1 n 1 C1 A2 Ai Bn-1 An 2 C1 A2 Bi Cn-1 An 3 A1 B2 Ci Bn-1 Cn 4 A1 A2 Ai Bn-1 Cn … … … … … … … j A1 A2 … Ci … Bn-1 Cn … … … … … … … l-4 C1 C2 Ai An-1 Bn l-3 B1 B2 Ci An-1 Cn l-2 C1 B2 Ai An-1 An l-1 C1 B2 Ci An-1 Bn l C1 A2 Ai An-1 Cn s[2,1] s[1,0] Figure 3.2.5.: Selection of a column and row using the ↑ and ← operators. Lastly, we require a uni-dimensional similarity measure, to determine what used to be row and column scores: Definition 4. For two sequences x, y of single elements, sim(x, y) is the ❼ locally (i.e. before the similarity reaches a zero value) maximum similarity score of the Smith-Waterman algorithm on the reversed column sequences, if x and y are both sequences generated with the ↑ operator. ❼ maximum accumulated value of substitution similarity scores, if x and y are sequences generated by the ← operator. Fig. 3.2.6 shows an example to illustrate this, based on 4 steps: First a pair of columns is extracted from a sequence of n-tuples, then reversely aligned, one with the other. Once the similarity score reaches zero, the alignment is aborted, and the local maximum in the aligned interval is the score returned by the sim operator. 60s 1 2 .. i .. n-1 n 1 C1 A2 Ai Bn-1 An 2 C1 A2 Bi Cn-1 An 3 A1 B2 Ci Bn-1 Cn 4 A1 A2 Ai Bn-1 Cn … … … … … … … j A1 A2 … Ci … Bn-1 Cn … … … … … … … l-4 C1 C2 Ai An-1 Bn l-3 B1 B2 Ci An-1 Cn l-2 C1 B2 Ai An-1 An l-1 C1 B2 Ci An-1 Bn l C1 A2 Ai An-1 Cn Bn-1 Cn-1 Bn-1 Bn-1 … Bn-1 … An-1 An-1 An-1 An-1 An-1 Cn-1 Bn-1 … Bn-1 … Bn-1 Cn-1 An-1 2 - align 3 - accumulated similarity reaches 0 1- extract 4 – sim is the maximum accumulated similarity score in this interval Figure 3.2.6.: Calculation of a column similarity score. Two columns are extracted from two sequences, then aligned in inverse order, up to the point where the similarity score reaches zero. The maximum similarity from this interval is the similarity value we assign these two columns. With these prerequisites in place, we can express the accumulated similarity score for two subsequences a and b recursively as follows: Definition 5. For two sequences of n-tuples a, b and the accumulated similarity score is: sim(a, b) = max   0 sim(a1,1, b1,1) + sim(a [0, 0] ↑, b [0, 0] ↑) + sim(a [0, 1] ←, b [0, 1] ←) (I) sim(a1,1, b1,1) + sim(a [1, 0] ↑, b [1, 0] ↑) + sim(a [0, 0] ←, b [0, 0] ←) (II) sim(a0,1, b0,1) + sim(a [0, 0] ↑, b [0, 0] ↑) (III) sim(a1,0, b1,0) + sim(a [0, 0] ←, b [0, 0] ←) (IV) sim(a0,0, b1,0) + indel(b[0, 0]) + sim(a[0, 0] ←, b[1, 0] ←) (V) sim(a1,0, b0,0) + indel(b[0, 0]) + sim(a[1, 0] ←, b[0, 0] ←) (VI)   (3.2.1) The similarity score sim(a, b) is 0, if a = ∅ ∨ b = ∅. 61In the domain of the accumulated local similarity score table T, each cell contains the similarity values of the subsequences (of sub-tuples) defined by the coordinates (cf. subsection 2.3.2). The iterative algorithm of determining each value in T is started by initialising the first plane in each dimension of the table with zeroes, to satisfy the end condition of the recursive definition of the similarity scoring function. The other cells are calculated as illustrated in Fig. 3.2.7: Each arrow (labelled I-VI) corresponds to an operation in equation 3.2.1, excluding the column and row similarities. These are the operations that are performed in each case, before choosing the maximum value amongst them: (I) Substitution and movement to the left (column-row-order): The space diagonal predecessor value is added to the column similarity of the predecessor and the row similarity of the current rows. (II) Substitution and movement to the left (row-column-order): The space diagonal predecessor value is added to the column similarity of the current columns and the row similarity of the predecessor. (III) Movement to the left: The z-axis predecessor value is added to the column similarity of the current columns. (IV) Substitution: The x-y-diagonal predecessor value is added to the row similarity of the current rows. (V) Insertion: The y-axis predecessor value is added to the row similarity of the current row and preceding row. (VI) Deletion: The x-axis predecessor value is added to the row similarity of the preceding row and current row. The dynamic programming paradigm of the approach is therefore maintained, despite our recursive definition of local similarity. 62a b z z z x y x y i-1 plane j-1 plane k-1 plane i,j,k i,k j,k I,II III IV V VI i lies on the x-axis j lies on the y-axis k lies on the z-axis T Figure 3.2.7.: The local dependencies of the calculation of a local similarity value. To the left in the three-dimensional table of accumulated similarity scores T and to the right the equivalent representation in the domain of the two sequences a and b. Operations V and VI – insertion and deletion – are one-dimensional operations and therefore appear only either in a or on b. 3.2.2 Contribution II: Locally Optimal Alignments The state-of-the-art approach selects every position in the accumulated score table where the score is above a minimum similarity threshold as a candidate for a backtrack (BT) – and by extension as an alignment. This leads to a large number of alignments being calculated, especially if high-scoring alignments (i.e. large alignments with a high similarity density) are present in the data. In such a high-scoring alignment, the minimal score is reached long before the end of the alignment. Each cell with a similarity score above this minimum generates a new BT and eventually the corresponding alignment, none of which are in any way meaningful. Alignments can branch in three (four, in the original algorithm) dimensions, which results in a very large number of BTs, as large volumes of cells containing high similarity values exist in the 3D scoring table. Whereas an individual BT operation is not extremely costly from a computational point of view, this high number of BTs effectively – and severely – limits either the usable problem size or the usable minimal accumulated similarity score (MASS). 63Figure 3.2.8.: The rightmost (n-th) z-slice of a table T. The axes of the plane correspond to the temporal axes of the sequences. line denotes the plane of an arbitrarily chosen MASS. The highest value is denoted by an X. The height and colour are representations of the accumulated similarity value in the cell in T. The white profile 64In Fig. 3.2.8, we look at an extract of the n-th slice of the table T, where typically accumulated scores are highest compared to other z-slices. Any point above the reference plane at MASS-level is a potential candidate for a BT. This volume is visibly of considerable size. To alleviate this problem, we retain only the most meaningful alignments. The inspiration for this choice can be found in bioinformatics, where the algorithm of Smith and Waterman [1981] is often used to identify only the optimum local alignment (Myers and Miller [1988]). This goes so far, that many evolutionary optimisations have focused exclusively on this problem. In fact, in Lecroq et al. [2012], reference is also made to a maximal element for the BT, but also in a global sense. Although this approach is too radical for our problem, we still perform a similar optimisation, but on a local scale. We calculate BTs exclusively from the locally highest accumulated scores– as opposed to from every score higher than the MASS. This corresponds to the peak in Fig. 3.2.8. A simple check whether any one of the 26 adjacent values is higher than the value in the current position determines if the current position in the accumulated score table is retained as a candidate for a BT. The number 26 stems from the fact that each cell has six directly neighbouring cells (one per surface of a cube), as well as three times four in-plane diagonal neighbours (one per vertex) and eight “node diagonal” neighbours (one per node), in the 3D table. Although this introduces a large number of branches into the execution, it reduces the number of candidates (and therefore of expensive BTs) drastically. All of the removed backtracks are in essence redundant: The higher scoring alignment includes all elements a smaller alignment would include, and a larger alignment with a lower score would have an overall lower similarity, and therefore the added elements are not similar. We restrict ourselves to a maximum search radius of 1 (√ 2 for in-plane diagonals and √ 3 for space diagonals). Fig. 3.2.9 visualises how we obtain the number of 26 neighbours, and what these distances mean in the 3D geometry of the accumulated score table. Though there is a benefit to extending the search radius, in that “double peaks” would no longer lead to twin alignments of largely similar nature, the added cost of extending the search radius would quadratically (surface of a sphere) increase the number of branches, and the additional reduction in candidates would be comparatively small. On the other hand, the number 26 is also the minimal number of checks required for this approach to be functional, as otherwise for large accumulated similarity values there would always be greater-than-MASS values in one of the adjacent positions. For an illustration of the scale of this issue, Fig. 3.2.10 shows an example similarity score table. It shows that selecting a small MASS is necessary to detect smaller similar 653 3=27 cubes 26 neighbours to central cube l = 1 l 2 = 2 l 2 = 3 Figure 3.2.9.: The local neighbourhood of a node (in the centre of the shown cube) in the accumulated score table T. The shown cube consists of 27 sub cubes, the one at the centre being the “home node”. The other 26 surrounding it, are the direct neighbours. A partial spatial subdivision is shown in the lower left corner to illustrate the notion of “radius”. structures (values above 1500 in this case are of significant interest), but large similar structures generate huge amounts of potential candidates at this smaller value. We reduce the volume of BTs from the volume around each of the peaks to just the number of peaks themselves. The side-by-side representation of the third dimension obscures somewhat that the 5 surfaces in the figure actually form a volume, but each point in a surface is neighbouring to the point in the same coordinates in a neighbouring surface, and they are all considered for the selection of final candidates for a BT. 3.3 Discussion Reducing the degrees of freedom from the two-dimensional approach leads to a lowered complexity. Where originally the accumulated score table required O(lmn2 ) (where l and m are the sequence lengths, n the number of elements in a tuple) space (and time to calculate), this has now been reduced to O(lmn), without any reduction in relevant capability. This means that we can now work with sequences that are n-times longer than previously, within the same system constraints. The two-dimensional basis for the algorithm means that the order of columns still has 66Figure 3.2.10.: Accumulated similarity score table for the alignment operations of the context data corresponding to two consecutive days. Each graph represents one of the five slices (n = 5) of the z-axis, starting at one at the top, incrementing to five at the bottom right. Height and colour correspond to local similarity values. The x - y plane is spanned by the temporal axes of the sequences. Note multiple peaks at different heights. 67an impact on the accumulated similarity scores. A notion of single-step cursor movement is still present in our approach (cf. equation 3.2.1), and thus accumulated scores depend only and directly on the scores of the left tuple neighbour and the accumulated similarity score of the sequences to the left of the elements under consideration. Reducing the number of BT candidates by local optimization can drastically increase performance, especially when the MASS is a small fraction of maximum accumulated similarity scores. If the neighbourhood of every peak consists of 5 cells in each direction of each of the three dimensions where the score is above MASS, this reduces the number of BTs by a factor of around 1000. The average worst case (i.e. in an infinitely large table where cells with values higher than MASS are surrounded by exactly one layer of cells with value 0) improvement is by a factor of 7. This optimisation does remove some granularity, as possibly semantically atomic routine elements can be included within larger scale alignments, and thus disappear from view. On the other hand, they would be lost in the noise of meaningless alignments, if the classic approach were to be retained. A way to recover such smaller scale patterns, could be by iteratively locally aligning intervals of interest, with ever decreasing MASS. Beyond this theoretical evaluation, we also performed an experimental validation. There we address whether the alignment approach is valid for context data, as opposed to just general sequential data. 68Experimental Validation and Results Overview This part is dedicated to the evaluation of the alignment-based approach on both automatically annotated synthetic data and manually annotated real-world data. Before getting to the actual evaluation, we first examine the provenance of our test data. Consequently, we detail the synthetic data generation procedure. Additionally, we present the real world data collection campaign and the pre-treatment process required by our context data model. The evaluation of the algorithm on synthetic data is detailed in the following section, and the evaluation on real world data in the subsequent one. 4.1 Synthetic Data Evaluation Testing on “real” data is crucial to being able to judge the “in the wild”-performance of an algorithm, but there are several limitations when solely relying on it. The manual annotation of ground truth is often labour intensive and error-prone. This limits the scope of possible evaluation. Conversely, an evaluation on synthetic data allows us to complement the results we can obtain from real world data, particularly by giving better control over the results and a wider variety of testing conditions. 4.1.1 Synthetic Data Generator and Dataset In the following, we introduce a model and an algorithm that simulates parallel data from multiple sources containing cross-source repetitive patterns. Due to the many parameters that can be set, and the multiple random influences, the overall model for the generator is complex. For this reason, the description is split in five sub-sections, 69of which the first lays out the requirements and design choices, the second some key definitions and terms used in the context of the description of the generation model and algorithm; the third and fourth sub-section detail each of the major sub-routines of generating data. An illustratory example is used throughout this subsection. 4.1.1.1 Data Generation Context Model It is our goal to give the experimenter the greatest possible freedom with regard to the characteristics of the generated data. Some general expectations of what makes up context data guide us in the design of our generator. The basic structure of context is a sequence of n-tuples, when n context data sources are present. Within this sequence, we encounter two different states of context. Either the current context is part of a set of routine contexts, or it is not. A routine context influences a specific subset of context measurements, reproducibly each time it is present in the data. Per sensor, different amounts of data may be relevant to a pattern. How much influence a routine context has on the context data is determined by how much variation there is between different instances of the context. This variation can be expressed as a random process. This random process modifies values between different instances of routine context, or leads to desynchronisation effects when elements are skipped or extended. It is inherent to each routine context. Furthermore, non-routine contexts may also lead to desynchronisation of following routine contexts, due to the global continuity of context. A separate random process determines these effects, and the amount of value modifications in the non-routine data, if a baseline has been defined. A model of probabilistic distances determines how likely it is for a certain value to be modified to another one, or to be extended or skipped. The order of appearance of the routine contexts is usually regular as well, but can also vary under random influences. A real world example could be a person oversleeping, and skipping an entire morning activity, on their way to work. These varying orders can also be modelled by a random process. Finally, different context sources may have interactions. As an example, location and radio signal strength are often correlated. Such correlations need to be taken into account when evaluating the random process which determines the ultimate values of a context. and may also be interesting when defining a set of routine contexts. 70data 1 pattern time pattern cell data 2 data 3 data 4 stream Figure 4.1.1.: Stream, pattern and cell for a simulated 4-tuple dataset. The stream consists of patterns (coloured) and random data (light grey). Each pattern consists of defined values (blue) and undefined values (white). 4.1.1.2 Definitions The model used during the generation process consists of two key structures: the stream is a concept which represents data from multiple independent sensors evolving over time. In terms of the context model, it represents the sequence of n-tuples of sensordata. Patterns are two-dimensional arrangements of data symbols in a rectangular grid (cf. the example in Fig. 4.1.1). The stream is created by alternating intervals of n-tuples of random data and randomly modified instances of these patterns. The output of the data is a direct representation of the stream. The atomic unit of data – the individual grid element – is called a cell. Each cell is specific to a moment in time (horizontal) and a data source (vertical). Data sources in this context are discrete random variables, with a limited set of states (“alphabet”), each element of which is a symbol. The number of different attainable symbols - the cardinality of the alphabet - is called the spectrum of a data source (cf. Fig. 4.1.2). The real-world counter part to these data sources are filtered sensors producing discrete measurement values. Each cell of a pattern contains either a symbol from the corresponding alphabet or is a place holder asterisk “*” value indicating an entry that is not defined by the pattern. 71Figure 4.1.2.: Four alphabets A1, A2, A3, A4 with respective spectra 5, 6, 4 and 2. N.B.: Different symbols across different sensors (e.g. “A”, “1”, “a”, “0”) are used here for illustration purposes only, symbols are actually represented by their indices (i.e. as in A2). Random effects – termed noise in the following – are a key factor in the generation of patterns and the stream. This noise is based on random variables, which are sampled, and the resulting values then transformed into length variations or symbol substitutions. All random variables that are used to generate noise are considered to be normally distributed (except in the limit-case of infinite variance, which is transformed into uniform distribution over an interval). The effect of noise is derived from user defined transition cost matrices (one for each alphabet) with the number of rows and columns equal to the size of the alphabet, and correlation matrices (one for each pattern, and one for non-pattern intervals). The transition cost matrices contain the cost of substitution between symbols. The costs of transitions for the following special symbols * place holder for empty cells in patterns; del delete a cell from the stream; ins add an additional value to the stream. make up a further four vectors: 1. A vector containing the cost of conversion of any symbol to the * value; 2. A vector containing the cost of conversion from * to an alphabet value; 723. A vector associated to ins, which contains the cost of converting any alphabet value or * to an insertion; 4. A vector associated to del, which contains the cost of converting any alphabet value or * to a deletion. These symbols form a global (i.e. across all data sources) alphabet of control-characters Ag = {*, del, ins}. Of these, * can appear in patterns (hence there being both a “to” and “from” vector of transition costs), but none of these symbols appears in the stream. The operations linked to these symbols represent two different kind of noise effects: Temporal noise (del and ins) causes relative shifts in the time domain of data sources by inserting or deleting values, as well as local extension or compression of periods of data. Data noise (values replacing *) introduces random values in predefined areas, which corresponds to variable parts of otherwise fixed patterns and permits us to use rectangular patterns with little loss of generality. The correlation matrices are lower triangular matrices with one line and column for each data source. Each line corresponds to the relative weights given to the calculation of a value by other values in the previous rows. A positive correlation value means that the influence of the random values used to determine the content of the respective cell have a quasi-linear effect on the determination of the current value. A negative correlation value conversely has an inverse quasi-linear effects. Zero values mark independent data sources. In this context “quasi-linearity” is an artificial effect to transform multi-dimensional random values from one space to another. This may not hold up to a comparison to real world data, but provides a reasonably simple model which avoids having to define correlations per pattern and per symbol individually. The following naming conventions are used henceforth: Z>0 = {1, 2, 3, . . .} the natural numbers excluding zero and R≥0 = S x∈R,x≥0 {x} all non-negative real values. The notation xi,h,k represents the element in the h-th line of the k-th column of a matrix (or table) Xi . Let n ∈ Z>0 be the number of data sources, m ∈ Z>0 be the number of patterns, Ai = {x ∈ Z>0|x ≤ si},(1 ≤ i ≤ n) be the (abstracted) alphabet of the i-th data source and lj ∈ Z>0 be the length of the j-th pattern Xj ∈ P ⊂ Sm j=1× n i=1(Ai ∪ {∗}) lj of the indexed set of patterns (cf. Fig 4.1.3 for a complete set of patterns, with empty cells, a sample elements and corresponding dimensions.). Let ~s ∈ N n >0 with components si be the spectra-vector where ∀1≤i≤n : si = |Ai |, with | · | being the cardinality and let lstream ∈ Z>0 be the number of total grid columns of the stream. In the following, x, y ∈ Ai ∪ Ag,(1 ≤ i ≤ n) stand for symbols. 73X1 X2 X3 Xm -1 Xm n lm l1 lm-1 empty cell cell element x Figure 4.1.3.: A set of patterns, P = {X1, . . . , Xm}, with n data sources and lengths l1, . . . , lm, and a pattern element x = Xm,n,1 ∈ An. N (ση), η ∈ {o, p, q, r, u} are Gaussian distributions with variance σ 2 η serving as sources of random values for o value variety of noise intervals between two instances of patterns in the stream, random variable o; p noise applied to pattern-defined values during the instantiation of patterns in the stream, random variable p; q variations in length – unless lengths are predefined for each pattern – and values between two different patterns, random variable q; r variations of the interval length between two instances of the same pattern in the stream, random variable r; u variations of the length of noise intervals in the stream, random variable u. The transition cost matrices are Ti = [ti,h,k],(1 ≤ i ≤ n) ∈ R si×si ≥0 and form the set T := Sn i=1, {Ti}. The entries ti,h,k are the positive real-valued costs of transforming the 74h-th symbol of Ai into the k-th symbol. The costs of transition relative to the elements of Ag are the pattern insertion and deletion cost vectors ~bi , ~ci ∈ R si for the transitions from and to *, and the stream insertion and deletion cost vectors ~di , ~ei ∈ R (si+1) for transitions to del and ins. Transition cost tables are related to the substitution score tables of the algorithms used to align pattern instances. In the alignment algorithm, they indicate similarity based on the way the model is configured. In this generator, they define the probability of random transformations of symbols. An important feature of transition cost tables is that they do not necessarily need to be symmetric, even though a naive approach considering the value spaces as Euclidean spaces with distances would indicate this. Yet, when using probabilities of transition in example data as basis for the cost of state-transitions, the assumption of symmetry is rendered invalid, as the resulting graph of transitions is not necessarily symmetric. For the values in the table to have the expected effect, they need to be scaled in consideration of the variances of p and q. A gappiness vector ~g ∈ R n ≥0 , with ∀ n i=1~gi ≤ 1 contains the ratio of pattern entries to empty cells for each data source, and simulates effects of limited data source availability and information significance and density. Let lower triangular matrices ξi ∈ R n×n , i = {1, .., m} be the correlation matrices for patterns Xi and let ξ0 be the correlation matrix for non-patterned values. These matrices are lower triangular, as each new value can only ever be correlated to values that have already been generated. The entries are normalized so that each row-sum is equal to one. Let ~w ∈ Z m >0 be a representation of the frequency of pattern apparition in the stream. Each value corresponds roughly to the relative period of apparition of a pattern in the stream. Finally, let lnoise ∈ R be the average length and let ¯lnoise ∈ Z>0 be the maximum length of a non-pattern-interval in the stream. For our running example, let n = 4, m = 3, ~s> = (5, 6, 4, 2) and ~l > = (10, 6, 7). Let the corresponding gappiness vector be ~g = (0.1, 0.1, 0.3, 0.3), and let the first of four transition tables be T1 =   0 7 5 4 8 7 0 2 5 3 5 2 0 1 2 4 5 1 0 3 8 3 2 3 0   ∈ T . 75Furthermore, let ~b1 =   3 9 5 9 2   , ~c1 =   4 8 3 4 9   , ~d1 =   5 2 3 9 7 4   , ~e1 =   5 2 4 7 6 6   and the correlation matrices ξ0 = ξ1 =   1 0 0 0 0 1 0 0 1 0 0 0 0.5 0 0 0.5   . Finally, let ~w > = (45,30, 50), lnoise = 4.8 and ¯lnoise = 15. We use these values to demonstrate how to generate pattern values and pattern instances in the stream. 4.1.1.3 Pattern Generation The first step R1 of the algorithm is to generate m different patterns according to the parameters given: X1 = R1(n, l1, ~s, T , ξ1, ~g) Xj = R1(n, lj , ~s, X1, σq, T , ξj ), j = 2, . . . , m A reference pattern X1 is generated first, consisting of randomly selected entries based on vectors ~γl ∈ ×i 1 are then modified to reflect the correlations dictated by ξ1: ψ 0 i,l := X i k=1 ξ1,i,k si + 1 sk + 1 d l(sk+1) si+1 X e j=b (l−1)(sk+1) si+1 c+1 ψ~ k,jωi,j,k (4.1.1) where ωi,j,k :=    j − (l−1)(sk+1) si+1 if j < (l−1)(sk+1) si+1 + 1 ∧ sk > si l(sk+1) si+1 − j + 1 if j > l(sk+1) si+1 ∧ sk > si 1 if (l−1)(sk+1) si+1 + 1 ≤ j ≤ l(sk+1) si+1 l(sk+1) si+1 − j + 1 if j > (l−1)(sk+1) si+1 + 1 ∧ sk < si j − (l−1)(sk+1) si+1 if j < l(sk+1) si+1 ∧ sk < si sk+1 si+1 if l(sk+1) si+1 ≤ j ≤ (l−1)(sk+1) si+1 + 1 which corresponds to a constant resampling, linearising across vector dimensions by treating them as intervals. An example is given in Fig. 4.1.4. The values on each arrow correspond to the scaled value that is used to determine the value at the end of the arrow. In the left case, the values in the left vector are scaled up (by 5/3) and in the right case, the values are scaled down (by 3/5). Then, these scaled values are spread according to the coverage they have on the corresponding parts of the vector. In the case of the middle value (2 - marked with red dashed line) in the left example, this is 1/5 for the second value of the right vector, 1 for the third value, and 1/5 for the fourth value. Scaling is applied accordingly, hence (2 · 5/3 · 1/5) = 2/3 is the influence on the top value of the three values that are marked in the right vector. Let x = x1,i,l be the value of the i-th row and l-th column of X1 and the k-th element of Ai . Let vx ∈ R si+1 be a vector whose components are the l-th of Ti and the l-th element of ~c: vx :=   ti,1,k ti,2,k . . . ti,si,k ci,k   78s+1=3 s+1=5 s+1=5 s+1=3 1 2 3 1 4/3 2 8/3 3 1 2 3 4 5 1.4 3 4.6 0.6 0.8 0.4 1.8 0.8 1.6 3.0 1 2/3 2/3 2 2/3 2 3 Figure 4.1.4.: Illustration of dependence coefficient determination during creation of similar patterns. The right vectors are created from the values of the left vectors, through linear interpolation and scaling. or, in the case of x = *: v* :=   b1 b2 . . . bk 0   The index y of the minimal component of |vx − ψ~0 i |, y = min ] |vx − ψ~0 i | (here | · | is the component-wise absolute value) is the value that takes the place of x in Xj , unless y = si+1 in which case * is inserted into the pattern at this position. This is repeated for all n × lj entries of the pattern. Furthermore, the length lj of the j-th pattern – if not specifically set to a certain value beforehand – is calculated by obtaining a random real value ∆lj from N (σq), adding it to l1 and rounding to the closest integer: 79lj :=    b∆lj + l1 + 0.5c ∆lj + l1 > 0 0 ∆lj + l1 = 0 d∆lj + l1 − 0.5e ∆lj + l1 < 0 Addition or removal of elements is done column-wise: for every column, a random check is performed against |∆lj | max(lj ,l1) (until the lj -th column is reached) to determine whether the current column of X1 is skipped or a column of equally distributed randomly selected symbols inserted. To compute x2,1,1 of the pattern X2 ∈ Z 4×6 >0 of our running example, given σ 2 q = 2 as the variance of the distribution of q, we first determine whether the first line is skipped to make up for the difference in length to X1. This is done by obtaining a random value from the interval [0, 1] and testing whether it is smaller than 10−7 max(10,7) = 0.3. We assume – for the sake of this example – that this is not the case, and instead x2,1,1 is derived from x1,1,1. We obtain a vector ψ~ 1 ∈ R 6 by repeatedly sampling q: ψ > 1 = (0.1, 0.5, −1.6, 1.1, −0.8, 0.3). Then x2,1,1 = min ] |vx1,1,1 − ψ~0 1 | = min ] |v2 − ψ~ 1| = min ]   t1,1,2 t1,2,2 t1,3,2 t1,4,2 t1,5,2 c1,2 − ψ~ 1   = min ]   7 − 0.1 0 − 0.5 2 + 1.6 5 − 1.6 3 + 0.8 8 − 0.3   = 2 The values x2,k,l,(k > 1), are calculated by taking into account the correlation matrix. Let ψ~> 4 = (−1.5, 0.8, −0.3). We determine ψ~0 4 using equation 4.1.1, and the resampling of ψ~ 1 shown in Figure 4.1.4: ψ~0 4 = 0.5   0.3 −0.25 −0.5   + . . . + 0.5   −1.5 0.8 −0.3   =   −0.6 0.275 −0.4   This allows us to calculate x2,4,1 = | min ] ψ~0 4 − vx1,4,1 | as above. 80These steps are repeated until m patterns have been created. These patterns are then integrated into the stream. 4.1.1.4 Stream Generation Streams are generated by interposing modified instances of patterns with blocks of random values. The generation of streams can be considered as a relation R2(n, T , P, σp, σo, σr, σu, ~w, lnoise, ¯lnoise, ξ0) : Z>0 × R n×si×si × [m j=1 n × i=1 (A lj i ∪ {∗}) × R n ≥0 × R n ≥0 × R≥0 × R≥0 × Z m >0 × R × Z>0 → n × i=1 (Zsi+1 \ {0}) lstream This is a projection of the configuration space (dimensions, transition model, patterns, randomness, correlations) into a stream. There are three main tasks to consider: Scheduling Each pattern has a predefined frequency of instantiation, which can be understood as an m-vector ~w ∈ R m. σp determines how much the appearance intervals vary. Noise Noise duration and variety are defined by lnoise, ¯lnoise, σu and σo. Modifications The variance between instances of the same pattern is defined by σr ∈ R n . Scheduling is managed in the following way: 1. During the first run, ~w 0 = ~w is created in order to track changes to ~w without losing the original information. 2. The pattern Xmin]( ~w0) is selected and inserted into the stream, where min]( ~w 0 ) is the index of the minimal component of ~w 0 : min ] ( ~w 0 ) = i|∀| ~w0 | j=1 : w 0 i ≤ w 0 j . If multiple components share the same smallest value, the value of min] is picked at random from the corresponding indices. 3. The vector ~w 0 is updated by adding ~wmin]( ~w0) + r to the component pertaining to Xmin]( ~w0) : w 0 min]( ~w0) = w 0 min]( ~w0) + wmin]( ~w0) + r 81Algorithm 4.1 Scheduling pattern instances input : The scheduling vector ~w ∈ R m output: A scheduled stream ~w 0 ← ~w; l ← 0; while l < lstream do jins ← min]( ~w 0 ) = i|∀| ~w0 | j=1 : w 0 i ≤ w 0 j ; append pattern Xjins to stream; increment l by the length of Xjins ; w 0 jins ← w 0 jins + wjins + r; // update minimal value in ~w 0 for j ← 1 to m do // update other values in ~w 0 if j 6= jins then w 0 j ← w 0 j − wjins m−1 end end append noise interval of length min((lnoise + u), ¯lnoise) to stream; l ← l + min((lnoise + u), ¯lnoise) end 4. ∀j=1,...,m,j6=min]( ~w0) : w 0 j = w 0 j − wmin] ( ~w0) m−1 , which avoids under- and overflows due to incrementation and decrementation, as the decrement of each step is equal to its increment, and E(r) = 0. 5. A noise interval of the length of min((lnoise + u), ¯lnoise) is injected into the stream, containing random values that adhere to the dependencies defined by ξ0. This is also formulated in pseudocode in algorithm 4.1. Within the frame of our example, this has the following effects: First, an interval of noise of length 5 is appended to the stream based on the assumption that the average value of 4.8 is not significantly impacted by the random effects of u. Then, pattern X2 is appended to the stream, as the smallest value in ~w > (30), is in the second position. ~w 0 is then updated as follows: ~w 0 =   w 0 1 − w2 2 w 0 2 + w2 + r w 0 3 − w2 3   =   45 − 15 30 + 30 + r 50 − 15   =   30 60 + r 35   The contents of a noise interval cell are generated by determining the index of the smallest component of the distance ∆o,i = |φi − vˆ0|, where φi ∈ R si+2 is a set of vectors of subsequent results of the event at the base of o, modified according to the method 82proposed in equation 4.1.1 (replacing ξ1 with ξ0 and adjusting sizes) and ˆv0 ∈ R si+2 is ~b appended by the last entries of ~d and ~e respectively: vˆ0 =   b1 b2 . . . bsi dsi+1 esi+1   Thus, the symbol added to the stream is: y = min] |φ − vˆ0| In the case of y = si + 2, the control value ins is generated: a new φ is randomly obtained, ∆o,i re-evaluated, and a new value is inserted after the current position using this very same algorithm. If the minimum index obtained is si + 1, a del control value is generated and no value is written into the i-th row of the stream during this iteration. For all other indices, the resulting index corresponds directly to the symbol of the corresponding alphabet to be written into the stream. Once this is done, the algorithm continues, by performing the same actions on the symbol in the cell to the right, for all columns that are to be generated. The modifications applied to instances of patterns in the stream are calculated in the same way for non-defined cells. For cells of patterns containing symbols, the above algorithm is adapted by calculating min] ∆p,i = min] |ρ − vˆx|, with ρ ∈ R si+2 a vector of random values obtained by sampling p (si + 2)-times, and x being the value in the pattern cell and hence ˆvx being the x-th column of Ti appended by the x-th elements of ~d and ~e: vˆx :=   ti,1,x ti,2,x . . . ti,si,x dx ex   In Figure 4.1.5, we show how the element x2,1,1 = 2 is instantiated into the stream, modified by noise to become the sensor value 4. 83pattern element x = 2 є A1 1 2 3 4 5 ins del * 3 9 5 9 2 5 5 1 0 7 5 4 8 2 2 2 7 0 2 5 3 3 4 3 5 2 0 1 2 9 7 4 4 5 1 0 3 7 6 5 8 3 2 3 0 4 6 4335207 1-204-423 35316-24 output symbol y = 4 T1 0 zero mean noise Gaussian d e b Figure 4.1.5.: Noise is applied to symbol x from alphabet A1 using transition cost matrix T1 and transition cost vectors b ~ 1, d ~ 1, ~e1. The resulting value is y = 4. This example uses integer values for easier reading and comprehension, in general the random values are real values. The process starts with value x2,1,1 = 2 from pattern X2, extracts the corresponding row from T1 and selects the smallest absolute value in the sum of the extracted row and a random vector, to determine the index of the element to replace x. 84I D D I I I I I D I time Figure 4.1.6.: Extract of a possible resulting stream with n = 4 and m = 3 different patterns (blue, yellow and green) and noise (red). I and D indicate cells in which insertions or deletions have happened. y is the symbol that has been generated in Fig. 4.1.5. This process (schedule - noise - pattern) is repeated until the sum over all noiseinterval-lengths and pattern-instance-lengths is equal or larger than lstream. A schematic example of a resulting stream is given in Fig. 4.1.6. With regard to our initially targeted model, this allows us to control most variables precisely. We can generate data that locally or progressively desynchronises, data that has controlled amounts of noisy variation and in any size or shape desirable. To help this latter fact, we also permit the handcrafting and loading of pre-defined patterns. We currently identify the following weaknesses to our approach: we limit ourselves to normally distributed noise for all random aspects of the generation process. We consider this as a safe default choice, especially to model sensor measurement noise, but it may not be an accurate model for variations caused by human actions. In the absence of a better model for this kind of variation, we restricted ourself to Gaussian distributions. Our correlation algorithm between two data sources with different numbers of symbols is not correct, in the sense that we linearise across dimensions which have no actual linear relationship. On the other hand, we see this as the only way to implement correlation. Due to the difficult nature of this feature, we do not use it for the generation of our data, based on the assumption that strongly correlated data is unified to a single sensor reading in real world context data. 85A final problematic issue is that of our multidimensional noise issue, which makes the link between a chosen variance value and the actual effect on value transitions rather unintuitive. Although a probability interval based approach may have had more predictable results, it would be more complex to integrate with the notion of data source correlation, and would require a rather complex calculation of interval limits for each of the possible transitions. Taking into account these limitations, we feel nonetheless confident that it allows us to generate a number of well understood datasets. The ability to retain the information of which pattern is instantiated in which cells of the output stream allows us to evaluate our alignment algorithm against this ground truth. 4.1.1.5 Dataset Generation For the evaluation procedure, we generate 135 datasets, which can be characterised by five different scenarios, each of which has 27 different variations by adjusting three variables. Each scenario serves to link a configuration of the data generator, to a specific type of behaviour of a simulated human exhibiting a certain way of life. These five scenarios are: 1. A scenario without random influences, outside the order of pattern instantiation. This corresponds to a human who reproduces the exact same set of context data every time a certain activity is performed, and always performs activities that are repeated eventually. 2. A scenario with an interval (of length 10) of random data between each two pattern instances. This could represent a person that performs some activities exactly the same way, between which there are intervals of irregular activity. 3. A scenario where each pattern instance is heavily treated with noise. This correspond to a person that acts with regularity, but is insufficiently instrumented to give trustworthy data, or does the same activity in a different way. 4. A scenario where each pattern is instantiated in varying intervals. A user profile exhibiting this behaviour would be a from a person performing activities identically each time, but not in the same order or at the same frequency. 5. A scenario where 75% of the cells of each pattern are undefined. These sparse patterns represent a faulty sensor suite or someone who only has a few key detectable regularities in their daily activities. 86These configurations are summarised in Table 4.1. A number of other configurations parameters are equal across all configurations and scenarios: ❼ All patterns have length 10; ❼ Each simulated sensor has an alphabet size of 10 – a realistic compromise between separation and resolution; ❼ Transition costs are equal for all configurations; ❼ The inter-pattern variance is infinite across all configurations – each pattern is generated independently from the others. Furthermore, we vary three properties in three ways each: ❼ Number of patterns: 2, 5 or 10; ❼ Number of rows: 2, 5 or 10; ❼ Number of columns: 100, 200 or 500 (cf. Table 4.2). In Table 4.2, advancing a column increments from the base index given in the first column. For example, the 15th configuration can be found in the column denoted +5 in the row denoted 10. These latter give us the 27 variations of each of the five principal scenarios and thus we obtain the number of 135 configurations. For each scenario, a set of ten patterns is defined, of which suitable subsets are used for each of the configurations. We define the transition costs for the generator such that the identity transition is assigned a zero cost, whereas a substitution with any other symbol is assigned a cost of one. Substituting a symbol with an insertion or a deletion is given a cost of two (using the classic model of fixed indel scores), and substituting a don’t care symbol with any alphabet symbol is given a cost of one as well. Table 4.3 contains the entire transition cost matrix. Table 4.1.: Configuration of the five datasets. Dataset 1 2 3 4 5 noise interval length (count) 0 10 0 0 0 pattern noise distribution (σ 2 ) 0 0 9 0 0 pattern repetition distribution (σ 2 ) 0 0 0 9 0 gappiness (ratio) 0 0 0 0 0.75 87Table 4.2.: Configuration values for the 27 experiments making up a dataset. index +0 +1 +2 +3 +4 +5 +6 +7 +8 2 5 10 2 5 10 2 5 10 num. of patterns (m) 1 2 2 2 5 5 5 10 10 10 num. of rows (n) 100 100 100 100 100 100 100 100 100 num. of columns (l) 2 5 10 2 5 10 2 5 10 num. of patterns (m) 10 2 2 2 5 5 5 10 10 10 num. of rows (n) 200 200 200 200 200 200 200 200 200 num. of columns (l) 2 5 10 2 5 10 2 5 10 num. of patterns (m) 19 2 2 2 5 5 5 10 10 10 num. of rows (n) 500 500 500 500 500 500 500 500 500 num. of columns (l) Table 4.3.: Transition matrix T used for the generation of the test datasets. ins del 0 1 2 3 4 5 6 7 8 9 * * 2 2 1 1 1 1 1 1 1 1 1 1 0 0 2 2 0 1 1 1 1 1 1 1 1 1 1 1 2 2 1 0 1 1 1 1 1 1 1 1 1 2 2 2 1 1 0 1 1 1 1 1 1 1 1 3 2 2 1 1 1 0 1 1 1 1 1 1 1 4 2 2 1 1 1 1 0 1 1 1 1 1 1 5 2 2 1 1 1 1 1 0 1 1 1 1 1 6 2 2 1 1 1 1 1 1 0 1 1 1 1 7 2 2 1 1 1 1 1 1 1 0 1 1 1 8 2 2 1 1 1 1 1 1 1 1 0 1 1 9 2 2 1 1 1 1 1 1 1 1 1 0 1 The similarity score table for the local alignment algorithm is derived from these values. The identity score is set to 10. The substitution of one symbol with a different one is assigned a penalty of -15. This value is chosen as an optimisation for scenario 2, based on the following consideration: The chance of a random match is 1/10 for each cell. In the two row case, completely bridging the noise interval between two patterns requires an alignment of the 20 cells between two patterns. The expected value of random matches in this interval is two. To improve pattern separation, the penalty value is chosen to prevent over-alignment even for four instances of matches in the interval of noise. This covers 95% of all cases in the two-row configuration. The insertion and deletion penalty are chosen twice as high (-30) as the substitution penalty, mirroring the generation configuration. 88For each one of the 135 configurations, a dataset consisting of ten sequences is generated. Next, we evaluate our alignment approach on this generated data. 4.1.2 Synthetic Data Pattern Extraction Evaluation This subsection presents the results obtained from using our local alignment algorithm (as introduced in Chapter 3) on synthetic data generated according to a number of different scenarios. We have generated a total of 135 different datasets, and use the alignment approach to extract patterns, which are then compared to the actual patterns – as generated – in the test data. We decided to limit ourselves to 135 datasets, as we assume this to be a good compromise between covering some of the breadth of possible configurations, and also allowing us to present all the results. 4.1.2.1 Evaluation Criteria We evaluate the alignments on four criteria. Number How many alignments are made, with regard to the expected number of possible pairings of patterns between the two sequences? Precision How much of an alignment actually covers a pattern? Recall What part of a pattern is covered by an alignment? Alignment size How big are the alignments that are found, compared to the size of the patterns present? We average precision and recall across all alignments for a configuration. If an alignment covers multiple patterns, we only consider the best-covered pattern. In Fig. 4.1.7, the precision and recall measures are presented on an example. 4.1.2.2 Hypotheses With regard to the five scenarios characterising each dataset laid out in the previous section, we can expect the following results: 1. The first dataset, especially in conjunction with low numbers of patterns, should develop “macro-pattern” artefacts (i.e. series of patterns with the same order of individual patterns) and few, but overly large alignments can be expected. 89Aligned cells outside pattern Unaligned pattern cells Total pattern cells: 24 Total aligned cells: 20 Aligned pattern cells = 16 Precision = 16/20 = 4/5 Recall = 16/24 = 2/3 Size ratio = 20/24 = 5/6 Unaligned non-pattern cells Aligned pattern cells Figure 4.1.7.: Evaluation scoring example. 2. The second dataset should have a low incidence rate for complete over-alignments. These occur when two patterns appear in the same order in two input matrices and the random values between patterns are sufficiently similar. Patterns should otherwise be well discerned. Single-row over-alignments can be expected to be more common (over one third for configurations with only two patterns), especially for larger row numbers. 3. Dataset three can be expected to be a case where the algorithm would not be able to identify most of the patterns. The selected configuration means that almost 80% of all values are changed during instantiation. This makes alignable patterns rare. Despite a minimal admissible score of only 60% compared to datasets one, three and four, complete and correct alignments of patterns are unlikely to be made. The contiguous characteristics of the alignments mean that some changed cells of patterns can be included in the alignments. 4. Results on dataset four should also be similar to those on dataset one, but with – on average – shorter alignments, as macro-patterns should be less likely to emerge, when the order of pattern instantiation is less regular. The impact of this is expected to be more noticeable with configurations with a higher number of patterns. Alignments are more likely to match well with patterns. 905. In the fifth dataset finally, the scoring system in place and the extreme gappiness should have a large percentage of false positives among very few, partial alignments of actual patterns. It can be seen to serve as a negative control experiment. In contrast to set three, the alignments should be more likely to span non-pattern cells. 4.1.2.3 Results The average evaluation results for each scenario are contained within Table 4.4. This table contains the ratio of detected alignments to expected number of pairs of patterns in the data, the average precision and recall values across all 27 configurations (which are themselves the averages across all alignments for each configuration) and the size ratio. The values for Dataset 3 and Dataset 5 are not directly comparable to the others, as we used a different MASS base score, to account for the noise in Dataset 3 and the missing data in the case of Dataset 5. MASS in these cases have been reduced to 0.6 (a value we consider to be similar to what may pass as a real world noise tolerance value) and 0.25 (three-quarters of the cells of a pattern are undefined) respectively of the corresponding MASS in the other configurations. For these, MASS is equal to the size of the pattern, as we assign a similarity score of one per identical cell. Table 4.4.: Key results: averages and standard deviations across all configurations. Measure Dataset 1 Dataset 2 Dataset 31 Dataset 4 Dataset 52 #alignments #pairs of pat. 0.31 ± 0.26 0.69 ± 0.29 0.041 ± 0.054 0.31 ± 0.26 0.22 ± 0.32 precision 0.54 ± 0.22 0.77 ± 0.20 0.13 ± 0.06 0.52 ± 0.24 0.54 ± 0.18 recall 1.00 ± 0.00 1.00 ± 0.00 0.56 ± 0.19 1.00 ± 0.01 0.20 ± 0.06 alignment size pattern size 5.66 ± 4.48 2.45 ± 2.51 6.72 ± 3.96 6.65 ± 6.08 1.60 ± 0.24 The runtime for the complete set of alignments is around 4 minutes of real time on a pair of Intel➤ Xeon➤ E5-2560. Across all 135 configurations, we obtained 214,963 alignments. In Fig. 4.1.8, we present the ratios of alignments to expected pairs of patterns per configuration. The most striking trend is that datasets 1 and 4, and to a lesser extent dataset 2, show a series of this measure rising in patterns of three. This can be directly attributed to the macro-patterns that are created, which are obviously more numerous when the number of patterns in the data is low, and simultaneously 1The results for Sets 3 have been obtained with a MASS of 60% of those of Sets 1,2 and 4. 2The results for Sets 5 have been obtained with a MASS of 25% of those of Sets 1,2 and 4. 91the lack of noise does not allow segmentation of the patterns into their components. Table 4.5.: Average Pattern Size for Dataset One config. mean error 0 4.13 ±2.73 1 1.32 ±0.93 2 1.82 ±1.99 3 1.29 ±0.81 4 5.86 ±5.50 5 5.25 ±5.31 6 2.81 ±3.25 7 8.92 ±5.61 8 8.99 ±5.64 9 4.69 ±5.07 10 1.53 ±1.27 11 1.23 ±0.73 12 3.70 ±2.86 13 3.09 ±2.53 14 1.89 ±1.60 15 4.35 ±2.68 16 3.72 ±2.75 17 2.98 ±2.22 18 8.68 ±10.54 19 2.22 ±3.11 20 11.26 ±12.35 21 8.45 ±11.74 22 4.50 ±8.19 23 17.55 ±14.69 24 17.89 ±14.89 25 8.88 ±12.30 26 5.83 ±4.86 A more subtle trend lies in the reduced number of alignments made, when there are more sensors in the data. This can possibly be ascribed to the higher MASS in use for those scenarios. For dataset one, almost all patterns are covered by alignments and average alignment size is 5.66 times the pattern size (validating our macropattern hypothesis), two outlier configurations (16 and 17) reach an average pattern size over 17 times larger than patterns, with very large deviations in the samples (cf. detailed results in Annex B.1.2 and an extract in Table 4.5). Mean precision across all configurations is 0.55 (standard deviation across means of each configuration: 0.22). Dataset two benefits from the fact that it is the reference for the score matrix. This means good separation of patterns due to the noise between them (alignment size on average 2.45 times the pattern size). The average number of alignments is 0.69 times the number of pairs of patterns. Precision is relatively high, and almost all patterns are completely covered by at least one alignment. Problems with over-alignment arise when a low number of patterns is combined with a high number of sensors. Here the score obtained by aligning a pattern with another is high, and the chance that the following patterns match is also high; this means that an alignment stretches over multiple patterns when the score penalty incurred by the noise interval is not sufficient to prevent overalignment. Dataset three highlights the detrimental effects of noise on alignment quality and quantity. Especially with the equidistant layout of the value space, there are very few alignments made with the provided score matrix. The preci- 920 0,2 0,4 0,6 0,8 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Dataset 1 0 0,2 0,4 0,6 0,8 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Dataset 2 0 0,05 0,1 0,15 0,2 0,25 0,3 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Dataset 3* 0 0,2 0,4 0,6 0,8 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Dataset4 0 0,2 0,4 0,6 0,8 1 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 Dataset 5 Figure 4.1.8.: The ratios of the number of alignments to the combinatorially expected number of identical pairs of patterns in two different files, for all five datasets and all 27 experiments. As the number of patterns rises, the expected number of pairs gets lower, and the rate of alignments gets closer to the number of pairs. *Note: The values for dataset 3 are on another scale than the others. 93sion score is very low, alignment size varies wildly, but is on average very large, despite a 40% reduction in minimal admissible scores, which should favour smaller alignments. The pattern coverage metric is no longer accurate for this case, as its implementation depends on the simultaneous start of a pattern which is no longer guaranteed once insertions and deletions appear. Notably, some patterns were found in all configurations. The results from dataset four are in most aspects very similar to those from dataset one. In comparison, the average size of patterns is higher; recall and precision are lower, and show a slight increase in variability. Dataset five – serving as negative control – has the minimal admissible score of the alignments reduced to one quarter of those of dataset one, to offset the three-quarter loss of information induced by the gappiness value. This visibly does not even out the loss of information due to gappy patterns. The score matrix punishes inequality too heavily for but a few chance alignments to arise, if any at all. Precision is no lower than for datasets one and four, as the low scores of the alignments do not allow the inclusion of a large number of non-matching values in alignments. The average recall for patterns covered by alignments is very low. Alignment sizes reflect the reduced scores and are similar across all configurations (0.05 standard deviation, excluding configurations without alignments). 4.1.2.4 Performance Comparison Our key contributions having as goal performance improvements of an existing algorithm, we compare these results with those obtained with the original algorithm. Where the previous results – with the new algorithm – were obtained in just over 4 minutes, the original algorithm (as described by Lecroq et al., 2012) gave most results after around 10 hours, but eight configurations with large alignments (particularly configurations of datasets 1 and 3 with long sequence lengths and few different patterns) took over a week to give results, under the same testing configuration. To verify that this drastic increase in performance did not negatively influence our performance metrics, they are presented in Table 4.6. Even if initially the values appear better (especially precision for datasets one and four) than what we obtained from the faster algorithm, we argue that this is possibly due to an undesired effect. The key difference in results, is that a total of 291,858 alignments are made using the slower approach. Since these alignments can be assumed to be smaller than the ones we obtain using the fast variant (due to the score maximisation effort), they reduce the impact of macro-patterns on the evaluation scores. On the other hand, they are also likely to be redundant, as they should be covered by or similar to another alignment of the same pair 94Table 4.6.: Key results: averages and standard deviations across all configurations for the state of the art algorithm Measure Dataset 1 Dataset 2 Dataset 33 Dataset 4 Dataset 54 #alignments #pairs of pat. 0.57 ± 0.27 0.867 ± 0.15 0.022 ± 0.024 0.55 ± 0.27 0.15 ± 0.23 precision 0.70 ± 0.24 0.93 ± 0.06 0.22 ± 0.10 0.69 ± 0.26 0.64 ± 0.21 recall 0.98 ± 0.03 1.00 ± 0.00 0.72 ± 0.32 0.95 ± 0.14 0.20 ± 0.05 alignment size pattern size 2.82 ± 2.20 1.12 ± 0.11 6.48 ± 4.21 3.19 ± 3.37 1.40 ± 0.16 of input sequences. The improved average recall values of our new algorithm compared to the older one also are indicative of this. Additionally, our results for the more difficult datasets (three and five) actually show an improvement with regard to the number of alignments found using our new approach over the state of the art algorithm. We therefore claim that the reduction in results and much decreased time required for the calculation make the resulting reduction in average precision an acceptable trade off, especially because there is evidence that the decrease is due to additional, non-maximal patterns in the data, which are of less interest. 4.1.3 Analysis Overall, this evaluation shows that the algorithm works largely as expected, and allows us to judge system constraints. Our optimisations on the state of the art algorithm have reduced run time massively. This renders it capable of realistically dealing with data that has a much larger scale than previously possible. On the dataset for which the algorithm was tuned, the results are acceptable, especially when the presence of many patterns inhibits the formation of macro patterns. Recall values in particular indicate that most of the time an alignment corresponds to a pattern. The results also show the limits of our approach. Although in the ideal case we observe many perfect fits of alignments to patterns, we also observe the tendency of the current configuration to extend alignments beyond pattern boundaries, if identical pattern sequences are present. In sparse data or in noisy data, the simple model we use here prevents reliable extraction of patterns, because all substitutions are equiprobable. This is especially characterised by the low recall values, indicating that most alignments are made from data that is randomly similar to other data. One of the key observations on these results is that the length of the sequence has a detrimental effect on almost all performance measures. This is due to combinatorial 3The results for Sets 3 have been obtained with a MASS of 60% of those of Sets 1,2 and 4. 4The results for Sets 5 have been obtained with a MASS of 25% of those of Sets 1,2 and 4. 95effects which create macro-patterns in a higher number in these long sequences. Minimising length – so that only a few patterns are included in a sequence – allows for better precision. Especially in real world data, when examining data from people with a routine-heavy lifestyle, one would expect to find larger patterns if the search window is sufficiently large. This is reinforced by the number of different patterns countering this combinatorial effect. Another observation is that the wider the dataset, the worse the impact of macropatterns. This is due to the higher accumulated similarity score after each block of identical data, and therefore increased tendency to bridge the gaps between identical blocks. Although this is a problem with ideally replicated pattern instances, in noisy data this increased resiliency might be beneficial. The effect can be controlled by adjusting the similarity scores for the various edit operations. On the other hand, the actual behaviour on context data can only be determined by testing the approach on real world data. This is explored in the next section. 4.2 Real World Data Evaluation The previous synthetic data based evaluation of our algorithm allowed us to determine the runtime of our algorithm under specific, controlled conditions, as well as gain some initial insights on how it performs with regard to our accuracy measures. To truly validate our approach, further evaluation on real data is required. In the following we describe how we obtained the real data we use, present our results and then analyse them for potential conclusions. 4.2.1 Data Collection Campaign The validation of our approach on real world data is a key part of this work. After an examination of available context datasets (cf. section 2.4 on page 46), we come to the conclusion that none of these is suitable for the specific aims of this work. Hence, we designed a specific data collection protocol and launched a data collection campaign in late 2011. This section documents the process of this campaign from conception to an annotated dataset that is in a suitable format for the alignment approach introduced in the previous chapters. 964.2.1.1 Motivation The key limitations we identified in existing datasets, were the absence of ground truth data and the limited scope of the available context data. Our key goal therefore was to address these shortcomings, by including more physical context data and simultaneously maintaining a reasonable volume of data – so that manual annotation with ground truth data would be possible. The key design imperative is a small footprint, in the sense of the context data capture mechanism not impeding the daily routine of the test subjects. Additionally, it is important for the data collection mechanism to maximize the amount of data available, both by implementing safeguards to prevent the loss of already recorded data, and by allowing the subjects to selectively disable individual sensors. The latter follows our reasoning that users would be more open to gathering data if they could selectively disable sensors. It is better to lose some data for an interval, than to lose all of it, in case a user wants to disable tracking. This approach – coupled with visible feedback of the current sensor values – aligns our data capture philosophy with the one proposed by K¨arkk¨ainen et al. [2010]. 4.2.1.2 Data Collection Campaign We decided to use an Android application as mobile segment of our data collection software. This application regularly records sensor data and transmits this data in aggregated batches to a storage database server. The following values are being recorded every ten seconds: ❼ Local time and date, ❼ Geolocation (via the Android Location API: Based on GPS and radio network fingerprints), ❼ Linear acceleration forces (3D Accelerometer), ❼ Angular velocity (3-axis gyroscope), ❼ Magnetic field (3-axis magnetometer), ❼ Luminance, ❼ State of the handset proximity sensor, ❼ Type of data network currently available, 97❼ Signal strength of cellular network and ❼ Remaining battery charge. These values are first written to a local database on each of the phones, and then automatically sent to a central database server every 24 hours, if a wireless LAN connection is available. Otherwise a retransmission is attempted every six hours. A participant in the data collection campaign can also manually trigger a transmission of the locally stored data. Our campaign was centred around Rouen (a major regional town in northern France) and Grenoble (a university town in south-eastern France). We recruited a total of 20 test subjects, from 5 of which we obtained useful amounts of data. The other test subjects did not participate over the entire term of the campaign, possibly due to lack of incentive or usability issues caused by the increased battery drain of their phones. The campaign ran for a duration of two months, from November 2011 until January 2012. The total amount of data we accumulated was around 430 MB, most of which was from 3 of these 5 users, with the remaining users contributing much less data. Most of this variation is either due to early termination of participation in our campaign, or because many sensors were either disabled by the participant or not available on the participant’s hardware. Besides the obvious privacy concerns of such a campaign, one other issue that presented itself to participants was the high battery usage, particularly of the GPS and microelectromechanical sensors (e.g. accelerometer, gyroscope, magnetometer). This reduced the battery run time of most of the handsets used in the campaign to significantly less than 24 hours, meaning that recharging the device every night was recommended and necessary. With regard to the design goals, this was the principal concession we had to make. Using the smart phone as capture platform for the context data, allowed for less disruption in the daily lives than a separate device would have generated. Our other criterion, of capturing a wide variety of physical context data, has been mostly met. Unfortunately many phones lacked gyroscopes and some device specific issues when using the microphone prevented us from reliably capturing environmental noise levels, which ultimately prevented us from including this in our data. Meteorological information also appeared as a promising aspect of context data to us, but at the time of development, thermometers, barometers and hygrometers were not available on phone platforms, and using real time data from a nearby weather station is both unreliable and difficult to implement. Getting this data after the end of the campaign was also an option, but historical data is 98only available at low temporal resolutions and from services implementing strict quotas on queries. 4.2.1.3 Data Preparation The data we collected requires some amount of pre-treatment to fit to the model we have laid out earlier. Although the ten-second acquisition interval gave us a regular time-discrete source of data, most values were still quasi-continuous. Due to the amount of manual intervention required at this stage, we reduce our test dataset to the data of the test subject which contributed the largest amount of data. Examination of this data reveals that this participant’s device lacked a gyroscope, so no angular velocity data is available. Other sensors contain obviously “troublesome” (false readings, singleton outliers) values, which we eliminate. We also discard network type and signal strength data, as they are highly correlated with geolocation. To further reduce the amount of data present – to facilitate manual annotation of patterns – we fuse magnetic and accelerometric orientation data into one single 6-axis sensor. This leaves us with five context data sources: 1. light intensity on a logarithmic scale 2. state of the proximity sensor 3. location 4. battery charge level 5. orientation with regard to the magnetic North Pole and the gravitational centre of the earth. The next step is the actual discretisation, which is performed manually. Clustering algorithms (such as k-means and X-means [Pelleg and Moore, 2000]) serve as an aid to assign 14 place-IDs to all pairs of longitude and latitude values (see Fig. 4.2.1 for an example), 8 orientation IDs to all 6-tuples of accelerometer and magnetometer readings and 8 discrete battery charge levels. The luxmeter only gives 10 different levels of luminance, which are used directly and the proximity sensor returns a binary reading. We then reduce the sampling frequency to one measurement every one hundred seconds, and cut the data into 24-hour segments, from 4 a.m. to 4 a.m. the following day. These segments are around 850 5-tuples long, which renders them tractable both for the alignment algorithm (cf. the runtime of our initial experiments in subsection 4.1.2.4) and – to a much larger degree – manual annotation. The latter is a necessary step to allow 99Figure 4.2.1.: Clustering of locations into places of the data gathered by one subject over a one week timespan. Artificial jitter has been introduced to the data, to better visualise data density. Note how nine incidences in the top left are clustered together with the other points towards the top left. The low number of incidences renders this error negligible. proper evaluation of discovered alignments: Three key patterns (cf. Annex B.1.3) have been selected by visual analysis of graphs of the sensor data (cf. Fig. 4.2.2), and then each occurrence has been labelled by hand, by annotating the raw data with a pattern ID for the sensors and intervals that visually resembled one another. Although this is an inaccurate practice, it does allow us to roughly label some of the features we expect the algorithm to correctly identify and inter-align. As the choice of “ground truth” is somewhat arbitrary, especially with regard to the vast amount of data present even after the sweeping reductions in data volume, it cannot be understood to be a truly ideal measure. Nonetheless, it is the best measure available under the circumstances, especially considering that the envisioned application is as a decision aid. Being able to detect these key features is a good benchmark of whether this capability of the algorithm also persists for similar data. 4.2.1.4 Post Processing Once the discretised data is available, the next step is to determine the additional information required to obtain the metadata information (substitution score tables and indel penalties). We assign each pair of states for each sensor a similarity value, using 10086420 12 10 5:38 5:47 5:57 6:06 6:17 6:28 6:37 6:48 7:01 7:10 7:20 7:31 7:42 9:42 9:53 10:04 10:13 86420 12 10 6:33 6:44 6:55 7:03 7:14 7:23 7:36 7:45 7:56 8:07 8:15 8:26 8:37 8:46 8:57 9:06 9:17 loglux prox place batt ori time Figure 4.2.2.: Visualisation of an extract of the captured data, with similar intervals marked. This extract covers the morning period of two consecutive days. The y-axis represents the different discretised context values. The values shown in this extract are light intensity on a logarithmic scale (loglux), the state of the proximity sensor (prox), the location cluster id (place), the battery level (batt) and the orientation of the phone (ori). 101the approach laid out in the following. For this evaluation, we create a set of similarity scores derived from both external knowledge of the data sources and transition probabilities between each of the different values. Specifically: In the case of the battery level, we used a linear distance function between the discrete levels, and for everything else we based the similarity measure on the transition probability, and then symmetrised these values. The negative values in the latter case correspond to a projection of the transition probabilities onto a quasi-logarithmic scale, with a score of -10 penalizing less than one transition in 10,000 observations, and a score of -4 corresponding to one transition in five observations. The positive values are around 5 times the transition probability. The special case of the missing reading is dealt with, by assigning a weak malus to any substitution of this value with another and a weak bonus when matched, as we do not consider sensor malfunction and deactivation to be a reliable context information, despite the potential significance. For this data, we expect many temporal extensions and compressions of patterns, and therefore wish to align constant similar sections of different length. Due to the combined insertion/deletion+substitution approach, we set a relatively low negative supplement score for insertion and deletion of -2, compared to the maximum negative score of -10 for transition probabilities smaller than 10−5 . The full substitution score tables can be found in Appendix B.1.1. One key relationship in these tables is that of positive scores to negative scores, as it defines the tolerance of alignments to differences in data. Due to the weakly positive to weakly negative effect of “constant” insertions and deletions, as well as the width of the data we are using and the long periods of constant values in the data, it is preferable to penalize non-identical substitutions heavily. This also shapes more compact alignments, preventing “over-alignment”. With the dataset now laid out, we can use it for the evaluation process. 4.2.2 Evaluation of Alignment Approach on Real Data This section quantifies how well the alignment approach works to match the manually selected patterns to the instances of these patterns in the dataset. The key parameters are the substitution score tables, as well as the insertion and deletion scores, and finally the minimal accumulated similarity score (MASS, cf. section 3.2). The generation of the tables is described in the previous section, and the choice of MASS is discussed in the following section. Thereupon follow the results we have obtained. 1021 2 3 campaign data patterns find local alignments for each pairing with different MASS #58 Figure 4.2.3.: Alignment of three pre-selected patterns with campaign data in 58 slices corresponding to 24-hour periods of 5-tuples. 4.2.2.1 Experimental Setup Besides the model parametrisation, the other parameter that we can control is the minimal accumulated similarity score. This has a key impact in this context, as it affects the minimum size of alignments and the tolerance to differences between two aligned pieces of data. To show the effect of different MASS values, in the following we perform an alignment of the three identified patterns (cf. Annex B.1.3) with all 58 days worth of data from the campaign participant we isolated in the previous subsection, with eight different values for MASS. This process is illustrated in Fig. 4.2.3. The number of manually annotated instances per pattern is as follows: ❼ Pattern 1: 13 instances, ❼ Pattern 2: 18 instances, ❼ Pattern 3: 27 instances. As a starting point, we examine the three patterns, and expected accumulated similarity scores. The first pattern is 190 5-tuples in size. By analysing the representing sample that is used for searching instances in the remaining data, we can obtain the 103score of a perfect match with itself, which gives an upper bound. This score is 2,962 for the first pattern, 3,271 for the second (199 5-tuples) and 1,441 for the third (197 2-tuples – this pattern only covers proximity and location data). Our choice of a useful lower bound is based on the assumption that an hour of similar values is the minimum scale of interest. As one hour corresponds to 36 5-tuples, and assuming that we require perfect matches during this hour to meet our minimal criterion of similarity, then the target value is around 500, which corresponds to an average similarity row score of ∼ 2.78; the average score per row – assuming uniform distribution of all symbols – is ∼ 2.65. Using these two extrema as starting points, we select the following values as our reference points: 500 as lower bound, 700, 850, 1000, as a range that should give expected results for the smaller pattern, and 1,300, 1,700 and 2,200 as a spread more useful for the larger patterns; finally, we choose 3,000 as the upper boundary, which can only be expected to give a single alignment – namely the alignment of the extracted pattern 2 with itself in the corpus. 4.2.2.2 Results We use precision and recall (i.e. the ratio of cells correctly aligned in an alignment and ratio of cells of an annotated pattern covered by an alignment) for each of the pair of 5-tuple sequences to be aligned, similarly to the evaluation of the synthetic data results. Additionally we determine the number of alignments made, and for each pattern the number of instances we have manually annotated. For the four values of precision and recall, we calculate mean and standard deviation across all alignments for each MASSconfiguration. These values can be found in table 4.7. An alignment consists of two elements: one in the predefined pattern, and one in one of the 58 day-slices of the campaign data. In this table, “A” identifies the part of the alignment in the search sequence, and “B” represents the corresponding aligned part in a sequence from the corpus. Fig. 4.2.4 visualises these results, by plotting recall and precision across each MASS-value and the B-parts of each pattern. When looking at “B” recall values, it is important to note, that alignments of non-annotated data result in a zero value, which then impacts the mean recall and precision for a result. This is reflected in the high standard error for these values. 104Table 4.7.: Evaluation results. A is the search pattern, B is the instance in the corpus. Dataset Pattern 1 Measure prec. A. rec. A. prec. B. rec. B num. MASS = 500 1 0.277±0.158 0.024±0.114 0.013±0.083 5011 MASS = 700 1 0.397±0.158 0.072±0.208 0.050±0.171 1049 MASS = 850 1 0.440±0.163 0.100±0.242 0.071±0.200 734 MASS = 1000 1 0.514±0.151 0.138±0.290 0.107±0.245 462 MASS = 1300 1 0.585±0.128 0.201±0.332 0.158±0.285 306 MASS = 1700 1 0.657±0.104 0.329±0.379 0.267±0.336 171 MASS = 2200 1 0.802±0.071 0.712±0.247 0.633±0.288 38 MASS = 3000 X X X X 0 5 Dataset Pattern 2 Measure prec. A. rec. A. prec. B. rec. B num. MASS = 500 1 0.358±0.157 0.045±0.184 0.031±0.129 5201 MASS = 700 1 0.432±0.149 0.070±0.227 0.048±0.160 3206 MASS = 850 1 0.486±0.131 0.078±0.245 0.057±0.176 2240 MASS = 1000 1 0.524±0.125 0.085±0.268 0.064±0.195 1516 MASS = 1300 1 0.566±0.138 0.190±0.385 0.137±0.281 563 MASS = 1700 1 0.605±0.138 0.277±0.442 0.193±0.321 286 MASS = 2200 1 1 1 1 1 MASS = 3000 1 1 1 1 1 Dataset Pattern 3 Measure prec. A. rec. A. prec. B. rec. B num. MASS = 500 0.965±0.059 0.574±0.189 0.596±0.387 0.380±0.324 387 MASS = 700 0.955±0.067 0.680±0.146 0.602±0.376 0.357±0.253 248 MASS = 850 0.966±0.054 0.750±0.060 0.744±0.283 0.433±0.209 185 MASS = 1000 0.992±0.014 0.774±0.046 0.820±0.239 0.505±0.216 46 MASS = 1300 1 1 1 1 1 MASS = 1700 X X X X 0 5 MASS = 2200 X X X X 0 5 MASS = 3000 X X X X 0 5 Across all 7,771 alignments made in search for pattern 1 in the corpus, 6,891 alignments are false positives (i.e. with not even partial coverage of the instances). For pattern 2 this is 11,504 out of 13,014 total, and for the third pattern 186 out of 867 alignments do not even partially cover an annotated instance. This allows us to determine an upper bound for the number of partial false positives (880, 1510, 681) – alignments that intersect with annotated pattern instances, consist of subsequences of such instances or are partially 5X denotes the absence of data 105covered by other alignments. These numbers also include the alignments that best cover a pattern, which can not exceed eight times the number of instances per pattern (104, 144, 216) due to the accumulation of the values across all repetitions of the experiment, and the perfectly matching alignments, which number 20 in total (7, 8, 5). Even when the MASS is set to 1,700, we still find 205 alignments of pattern 2 within the corpus, that in fact do not correspond to an annotated instance. Some of the excess can be explained by multiple locally optimal alignments, that partially cover a ground-truth annotated interval, other is in sequences that are simply sufficiently similar according to our measure, but in non-annotated parts of the corpus. The “A” part of the results is less interesting, as the precision values for the first two patterns are necessarily equal to one, due to every element in the search sequence being part of the pattern. In the third pattern, this value indicates how much of the alignment covers the undetermined part of the pattern. Recall values for the first two patterns are directly the ratio of alignment size to pattern size. For the third pattern, this does not hold true, as the alignment can cover non-determined cells. An additional factor to consider is that some of the alignments might qualify as patterns to an expert, when they are discovered by alignment, despite not having been selected in the non-aided, manual annotation process, due to the fuzzy nature of the latter. 4.2.3 Analysis The initial observation on these results is that finding pre-identified patterns by means of aligning n-tuples requires extensive pre-analysis by the expert user to formulate a reasonable expectation of MASS and number of pattern instances in the corpus, based on the scoring tables, size of the pattern and variability between pattern instances. Nonetheless, given the reasonable time of execution for our example (6 minutes for the sequential execution of the 24 samples of this experiment, on an Intel➤ Xeon➤ E5-2650), it is possible to quickly perform a number of alignment processes with different MASS, and discard those that appear to be too inclusive or too restrictive. If the parameters are chosen fortuitously, then the alignments closely match the expert’s expectation of what constitutes a pattern instance, or at the very least point to areas of interest. We also note that although pattern one and pattern two share almost the same amount of alignments made at the base score of 500, the elimination of false positives with increasing MASS differs greatly between them. The number of alignments for pattern one drops drastically at the step from 500 to 700 and then is reduced more gradually, whereas for pattern two the number of alignments drops more evenly at the lower MASS 1060 0,9 0,8 0,7 0,6 0,5 0,4 0,3 0,2 0,11 500 700 850 1000 1300 1700 2200 3000 prec 1 rec 1 prec 2 rec 2 prec 3 rec 3 MASS score Figure 4.2.4.: Mean precision and recall for the instances in the corpus (“B” - part of the alignment) for the 24 test configurations. From left to right are the different values of MASS used. With rising MASS, both precision and recall increase. The rightmost bars are fewer, as no alignments were made with MASS values 1,700 and above for pattern 3, and no alignments were made with MASS values 3,000 for pattern 1. Due to the smaller number of elements contained in pattern 3, it has higher values than patterns 1 and 2 for the same MASS. 107samples, but then very abruptly at a higher score level. And even though the maximum score is higher for pattern two, at MASS 1,700 there are fewer alignments made than for pattern one. This observation suggests that the larger instances of pattern two are also more varied. The consequence is, that as similarity values are accumulated by the alignment algorithm, they stay lower due to constant penalties. Conversely, instances of pattern one have higher local similarity, leading to a better separation of patterns from lower scoring false positives, as penalty scores are fewer and further between. The similarity based approach can therefore also be used to make qualitative observations on sensor data, especially when using a denser sampling of MASS values, for added precision. Although this evaluation does not cover the alignment of entire day sequences with one another, together with the synthetic evaluation it gives a clear notion of the characteristics of our proposed alignment algorithm, when it is applied on context data. The main challenge to evaluating the algorithm on real data is that this evaluation cannot be done with objective measures, as the notion of what constitutes a “pattern” in context data is not universal, and determining whether an actual routine activity is taking place requires activity diary data in parallel to the data collection campaign, which is unrealistic at relevant scales. Therefore we limit our experimentation to these two aspects. 108Conclusions and Future Work The aim of this work is to determine whether it is possible to detect routine in the dayto-day lives of mobile phone users. We come to the conclusion, that indeed it is possible – if such routine elements are present. We consider this result an extension, refinement and affirmation of existing approaches that detect routine in context data, such as the works of Clarkson [2003] and Eagle and Pentland [2009]. Our results align themselves particularly well with Clarkson’s work, in that our approach uses high resolution data, but is only validated against a single person’s real world data. What we present is to be seen as a proof of concept, as it lacks additional evaluation against a broader dataset. Before we continue to discuss the advantages and limitations to our approach, we briefly resume our contribution and results. We presented in this work an alignment algorithm for sequences of context data, that has been derived from an existing two-dimensional alignment approach, but optimised to take advantage of the characteristics of the data and the desired results, to decrease total calculation time by several orders of magnitude in some cases. To achieve this increased performance, we took into account the structure of context data as a sequence of n-tuples, which allowed us to decrease the original alignment problem complexity by one dimension, and gave a theoretical speed-up of n. Additionally, we used an early discard approach to finding locally optimal alignments in the data, greatly increasing real-wold performance by reducing the amount of backtracking operations required for the dynamic programming algorithm. This algorithm is then evaluated against two types of datasets, one generated by a specially developed simulator, the other an annotated subset of data recorded during a collection campaign. The results on the former show that our approach works largely as expected, with a weakness when attempting to segment patterns that appear in the same 109sequential order in two different input files. On the real world dataset, we used a different evaluation approach to account for the difficulty of obtaining a ground truth reference. The algorithm was used to align known routines with sequences that contained the data of one day each. This result showed that the quality of the results depends directly on the choice of the minimal admissible similarity score, which needs to be optimised to within a small fraction of the ideal value, to obtain results that closely match one’s expectations. One of the main advantages of our approach, is that it can point out from a dataset some candidate intervals that should correspond to pairs of routine elements in context. Our evaluation on synthetic data shows that – if naively configured – the algorithm has a strong tendency to cover multiple patterns, if they appear in the same sequence. It is disputable whether this is always desirable – as it reduces the segmentation of the results – but it follows from our choice to search optimal alignments to reduce the overall number of patterns extracted. An example of where this could be problematic, is when a person frequently does two activities in sequence, but occasionally only one individually. Then – numerically – one routine activity happens more often than the other, but this is not reflected in the result: when aligning two samples that contain the sequence of pairs, the result is a single alignment, with no direct relation to other alignments comprising only one activity. Our real data evaluation was limited in that we only checked for a set of pre-determined patterns – primarily due to the challenge of manually determining a desirable evaluation target, without a specific target application. Nonetheless, we were able to display how the minimal accumulated similarity score is related to the results. Good accuracy can be expected, if one is capable of expressing one’s expectation of what constitutes an alignment in the terms of individual per-element similarity scores and lower accumulated similarity score limits. In the introduction, we listed a wide variety of applications. When comparing the breadth of requirements different applications may have with regards to models of activity routine with our algorithmic results, we realise that our approach is not an all-in one solution to providing a better understanding of context. This is mostly due to the genericness of our approach, linked with the lack of a common, inherent understanding of what truly makes up a routine activity. What we provide then, is primarily an exploratory tool, enabling domain experts – for example application developers – to gauge across large datasets where there is detectable routine in sensor logs and what the general characteristics of the present routine activities are. They can then iteratively adapt 110and parametrise our approach, until they can accurately express their notion of what makes up a routine activity within the design space the alignment paradigm provides. Other potential interest groups include the people generating the data themselves (as a means of introspection and reflection) and researchers in social sciences. Usage in the advertisement industry or intelligence field could also be imagined. Although such a usage entails some preparation of the context data, the process is relatively straightforward: the first step is synchronisation of the different context streams. Next, the data is discretised, which often requires some manual intervention, to estimate a good number of clusters in the data, or determine a set of criteria to evaluate a clustering result. Based on this step, the meta-data (in the form of substitution score tables) is generated. A statistical approach to this can be mostly automated, a semantic approach requires direct intervention, and may provide better results. In each case, subsequent refinements may be necessary, depending on the first alignment results which reveal some consistency characteristics of the data. This iterative approach can provide a flexible – but complex – tool to extract specifically the patterns a user is interested in. False positives are a frequent occurrence which may have to be rejected by hand. Considering the scale of the raw data, this reduction of the problem of finding routine is a significant step forward, even despite the setup complexity. We already touched upon three limitations: the iterative, supervised approach is not completely automatable; there may be unexpected alignments among the results, which are classified as false positives; alignments are always maximised and may not extract discrete smaller patterns. Additionally, there are some limitations on the algorithmic level. Currently, our algorithm produces results which are dependent on the order in which the sensor data is arranged; an artefact carried over from the algorithm upon which we developed our adapted approach. We are also faced with a similar “multilevel”-problematic as Clarkson encountered, in that a single accumulated similarity value may be insufficient to characterise all kinds of patterns as alignments. The value may for example be equal for a large alignment with some errors and a small perfect alignment – no qualitative information, besides the number of aligned symbols and maximum similarity score, is retained. The future work we suggest is threefold. Firstly, there are some ways of modifying the algorithm to improve results and enhance performance. Secondly, there are some means of evaluation that can still be explored to gain an even better understanding of how our approach interacts with context data. Finally, we point to some pre- and post-treatment methods that could render this approach more powerful and simpler to use. 111Although we did improve and adapt the algorithm to our use case from a time and space performance standpoint, a weakness still persists: the in-tuple order of elements remains a factor in the alignments found. Correcting this by calculating and memorising the order in which each tuple element is accessed would result in order-independent alignments, at the cost of increased time and space requirements. A possible solution to the issue of large patterns obscuring smaller ones, can be approached by performing a further pattern extraction step on the results of the first extraction, using a lower MASS. This should reveal whether smaller patterns are present within the larger ones. The algorithm can be parallelised in its implementation in many ways, which can provide great speed-ups. The one-dimensional string alignment approaches exist in versions optimised for stream processing, porting the ideas of these implementations to our methods could increase performance on specialised hardware, such as graphics processors and processors with streaming extensions. Ultimately, the memory limitation will persist. We currently lack evaluation of actual pattern extraction on real world data, due the reasons we stated earlier in this chapter. A possible way to evaluate our approach, as a decision aid, would be to undertake user studies, to see how potential users – interested in finding patterns in context data – would be able to parametrise a model that enables them to do just that. Furthermore, a comparative evaluation against the approach of Plantevit et al. [2010] would be of interest, to see how the ultimate parametrisation efforts compare, as well as to be able to judge the results against a similar approach. Lastly, evaluating the extraction performance against a dataset supported with diary entries would be able to provide further insights – but ultimately be limited by the flexible notion of what makes up a routine activity. Each test subject providing a diary may have a different notion of routine from the other test subjects, or the experimenter ultimately constructing a model, which can lead to data that is nearly impossible to correctly interpret. As a result, either a naive model would be used, with results probably similar to those we obtained on synthetic data, or a properly developed, supervised model, which would again only demonstrate how well the model can be parametrised to correspond to a consistent but arbitrary notion of routine. We have already proposed some pre-treatment methods, to obtain a model that is partly automatically generated from a corpus of known data. Using advanced clustering algorithms, and defining a set of heuristics for the permissible error rates for specific sensors, as well as filtering rules, would further simplify the pre-treatment. From a post- 112treatment perspective, it is interesting to reduce the vast amount of pairs of results into representatives of actual routine activities. This has been done in the work of Pauchet et al. [2013], using a clustering approach. This approach can be extended, by using a variation of Hirschberg’s algorithm [Hirschberg, 1975] to obtain a local cumulative edit distance function across the different aligned elements. This would allow us to cluster multiple inter-similar context episodes to clusters of routine contexts, while also finding similar subsegments. Alternatively, a global alignment can be used, if the further segmentation has already been performed separately. 113Bibliography Mohamed Abouelhoda and Moustafa Ghanem. String Mining in Bioinformatics. In Mohamed Medhat Gaber, editor, Scientific Data Mining and Knowledge Discovery: Principles and Foundations, pages 207–247. Springer Berlin Heidelberg, Berlin, Heidelberg, 2010. ISBN 978-3-642-02787-1. doi: 10.1007/978-3-642-02788-8. URL http://www.springerlink.com/index/10.1007/978-3-642-02788-8. Ramesh C. Agarwal, Charu C. Aggarwal, and V. V. V. Prasad. A Tree Projection Algorithm for Generation of Frequent Item Sets. Journal of Parallel and Distributed Computing, 61(3):350–371, March 2001. ISSN 0743-7315. doi: 10.1006/jpdc.2000.1693. URL http://www.sciencedirect.com/science/article/ pii/S0743731500916939. Rakesh Agrawal and Ramakrishnan Srikant. Fast Algorithms for Mining Association Rules. In Jorge B. Bocca, Matthias Jarke, and Carlo Zaniolo, editors, Int’l Conf. Very Large Databases (VLDB ’94), pages 487–499, Santiago de Chile, Chile, 1994. Morgan Kaufmann Publishers Inc. San Francisco, CA, USA. Rakesh Agrawal and Ramakrishnan Srikant. Mining sequential patterns. In Proceedings of the Eleventh International Conference on Data Engineering, pages 3–14. IEEE Comput. Soc. Press, 1995. ISBN 0-8186-6910-1. doi: 10.1109/ICDE.1995.380415. Rakesh Agrawal, Tomasz Imielinski, and Arun Swami. Mining association rules between sets of items in large databases. In Proceedings of the 1993 ACM SIGMOD international conference on Management of data, pages 207–216, Washington, D.C., 1993. ACM New York, NY, USA. Stephen F. Altschul and Bruce W Erickson. Optimal sequence alignment using af- 114fine gap costs. Bulletin of Mathematical Biology, 48(5-6):603–616, 1986. ISSN 0092- 8240. doi: 10.1016/S0092-8240(86)90010-8. URL http://www.sciencedirect.com/ science/article/pii/S0092824086900108. Stephen F. Altschul, Warren Gish, Webb Miller, Eugene W. Myers, and David J. Lipman. Basic local alignment search tool. Journal of Molecular Biology, 215:403–410, 1990. URL http://www.cmu.edu/bio/education/courses/03510/LectureNotes/ Altschul1990.pdf. Amihood Amir and Martin Farach. Efficient 2-dimensional approximate matching of non-rectangular figures. In SODA ’91 Proceedings of the second annual ACM-SIAM symposium on Discrete algorithms, number 908, pages 212–223. Society for Industrial and Applied Mathematics Philadelphia, PA, USA, 1991. URL http://dl.acm.org/ citation.cfm?id=127829. Sarabjot Singh Anand and Bamshad Mobasher. Contextual Recommendation. In Bettina Berendt, Andreas Hotho, Dunja Mladenic, and Giovanni Semeraro, editors, From Web to Social Web Discovering and Deploying User and Content Profiles, volume 4737 of Lecture Notes in Computer Science, chapter 8, pages 142–160. Springer Berlin Heidelberg, 2007. ISBN 9783540749509. doi: 10.1007/978-3-540-74951-6 8. URL http://www.springerlink.com/content/r28874294253q051. Alberto Apostolico, Laxmi Parida, and Simona E. Rombo. Motif patterns in 2D. Theoretical Computer Science, 390(1):40–55, January 2008. ISSN 0304-3975. URL http://www.sciencedirect.com/science/article/pii/S0304397507007645. Daniel Ashbrook and Thad Starner. Learning significant locations and predicting user movement with GPS. In Proceedings of the 6th IEEE International Symposium on Wearable Computers, pages 101–108, Seattle, WA, USA, 2002. IEEE Computer Society, Washington, DC, USA. ISBN 0-7695-1816-8. doi: 10.1109/ISWC. 2002.1167224. URL http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm? arnumber=1167224. Jay Ayres, Jason Flannick, Johannes Gehrke, and Tomi Yiu. Sequential Pattern mining using a bitmap representation. In Proceedings of the eighth ACM SIGKDD international conference on Knowledge discovery and data mining - KDD ’02, page 429, New York, New York, USA, 2002. ACM Press. ISBN 158113567X. doi: 10.1145/775107. 775109. URL http://portal.acm.org/citation.cfm?doid=775047.775109. 115Ricardo A. Baeza-Yates and Gonzalo Navarro. Fast two-dimensional approximate pattern matching. In Claudio L. Lucchsei and Arnaldo V. Moura, editors, LATIN’98 Proceedings of the Third Latin American Symposium on Theoretical Informatics, pages 341–351, Campinas, Brazil, 1998. Springer-Verlag London, UK. URL http: //link.springer.com/chapter/10.1007/BFb0054334. Brenda S. Baker. A program for identifying duplicated code. In Computing Science and Statistics, pages 24:49–57, College Station, TX, USA, 1992. Theodore P. Baker. A Technique for Extending Rapid Exact-Match String Matching to Arrays of More than One Dimension. SIAM Journal on Computing, 7(4):533–541, November 1978. ISSN 0097-5397. doi: 10.1137/0207043. URL http://dx.doi.org/ 10.1137/0207043. Matthias Baldauf, Schahram Dustdar, and Florian Rosenberg. A survey on contextaware systems. International Journal of Ad Hoc and Ubiquitous Computing, 2(4): 263–277, 2007. Leonard E. Baum, Ted Petrie, George Soules, and Norman Weiss. A maximization technique occurring in the statistical analysis of probabilistic functions of Markov chains. The annals of mathematical statistics, 41(1):164–171, 1970. Victoria Bellotti, Bo Begole, Ed H. Chi, Nicolas Ducheneaut, Ji Fang, Ellen Isaacs, Tracy King, Mark W. Newman, Kurt Partridge, Bob Price, Paul Rasmussen, Michael Roberts, Diane J. Schiano, and Alan Walendowski. Activity-based serendipitous recommendations with the Magitti mobile leisure guide. In Proceeding of the twenty-sixth annual SIGCHI conference on Human factors in computing systems, pages 1157–1166, New York, NY, USA, 2008. ACM. ISBN 9781605580111. doi: 10.1145/1357054.1357237. Martin Berchtold, Matthias Budde, Hedda R. Schmidtke, and Michael Beigl. An extensible modular recognition concept that makes activity recognition practical. In R¨udiger Dillmann, J¨urgen Beyerer, Uwe Hanebeck, and Tanja Schultz, editors, Proceedings of the 33rd annual German conference on Advances in artificial intelligence, pages 400– 409. Springer-Verlag Berlin, Heidelberg, 2010. ISBN 3-642-16110-3 978-3-642-16110-0. doi: 10.1007/978-3-642-16111-7 46. Kevin Beyer and Raghu Ramakrishnan. Bottom-up computation of sparse and Iceberg CUBEs. In SIGMOD ’99 Proceedings of the 1999 ACM SIGMOD international con- 116ference on Management of data, pages 359–370, Philadelphia, PA, 1999. ACM New York, NY, USA. V Boonjing and P Songram. Efficient Algorithms for Mining Closed Multidimensional Sequential Patterns, 2007. A. J. Bernheim Brush, Amy K. Karlson, James Scott, Raman Sarin, Andy Jacobs, Barry Bond, Oscar Murillo, Galen Hunt, Mike Sinclair, Kerry Hammil, and Steven Levi. User experiences with activity-based navigation on mobile devices. In Proceedings of the 12th international conference on Human computer interaction with mobile devices and services, pages 73–82, 2010. doi: 10.1145/1851600.1851616. URL http://portal. acm.org/citation.cfm?id=1851616. Matthew Chalmers. A Historical View of Context. Computer Supported Cooperative Work (CSCW), 13(3-4):223–247, August 2004. ISSN 0925-9724. doi: 10.1007/s10606-004-2802-8. URL http://www.springerlink.com/index/10.1007/ s10606-004-2802-8. Tanzeem Choudhury, Gaetano Borriello, Sunny Consolvo, Dirk Haehnel, Beverly Harrison, Bruce Hemingway, Jeffrey Hightower, Predrag ”Pedja” Klasnja, Karl Koscher, Anthony Lamarca, James A. Landay, Louis LeGrand, Jonathan Lester, Ali Rahimi, Adam Rea, and Denny Wyatt. The mobile sensing platform: An embedded activity recognition system. Pervasive Computing, 7(2):32–41, 2008. Brian Clarkson and Alex (Sandy) Pentland. Unsupervised clustering of ambulatory audio and video. In Proceedings of the 1999 International Conference on Acoustics, Speech, and Signal Processing, pages 3037–3040 vol. 6, Phoenix, Arizona, United States, 1999. IEEE. doi: 10.1109/ICASSP.1999.757481. URL http://ieeexplore. ieee.org/xpls/abs_all.jsp?arnumber=757481. Brian Patrick Clarkson. Life Patterns : structure from wearable sensors. PhD thesis, MIT, 2003. Diane J. Cook, Michael Youngblood, Edwin O. Heierman, Karthik Gopalratnam, Sira Rao, Andrey Litvin, and Farhan Khawaja. MavHome : An Agent-Based Smart Home. In Proceedings of the First IEEE International Conference on Pervasive Computing and Communications (PerCom 2003), pages 521–5244, Fort Worth, TX, 2003. IEEE. ISBN 0769518931. Brian A. Davey and Hilary A. Priestley. Introduction to Lattices and Order (2. ed.). Cambridge University Press, 2002. ISBN 978-0-521-78451-1. 117Pedro Domingos and Geoff Hulten. Mining high-speed data streams. In Proceedings of the sixth ACM SIGKDD international conference on Knowledge discovery and data mining, KDD ’00, pages 71–80, New York, NY, USA, 2000. ACM. ISBN 1-58113-233-6. doi: 10.1145/347090.347107. URL http://doi.acm.org/10.1145/347090.347107. Paul Dourish. What we talk about when we talk about context. Personal and Ubiquitous Computing, 8(1):19–30, February 2004. ISSN 1617-4909. doi: 10.1007/s00779-003-0253-8. URL http://www.springerlink.com/openurl.asp? genre=article&id=doi:10.1007/s00779-003-0253-8. Nathan Eagle and Alex (Sandy) Pentland. Reality mining: sensing complex social systems. Personal and Ubiquitous Computing, 10(4):255–268, November 2005. ISSN 1617-4909. doi: 10.1007/s00779-005-0046-3. URL http://link.springer.com/10. 1007/s00779-005-0046-3. Nathan Eagle and Alex (Sandy) Pentland. Eigenbehaviors: identifying structure in routine. Behavioral Ecology and Sociobiology, 63(7):1057–1066, April 2009. ISSN 0340-5443. doi: 10.1007/s00265-009-0739-0. URL http://www.springerlink.com/ index/10.1007/s00265-009-0739-0. Vincent Etter, Mohamed Kafsi, and Ehzan Kazemi. Been There, Done That : What Your Mobility Traces Reveal about Your Behavior. In Nokia Mobile Data Challenge - Next Place Prediction, 2012. Simone Faro and Thierry Lecroq. The Exact Online String Matching Problem : a Review of the Most Recent Results. ACM Computing Surveys (CSUR), 45(2):Article No. 13, 2013. doi: 10.1145/0000000.0000000. Huiji Gao, Jiliang Tang, and Huan Liu. Mobile Location Prediction in Spatio-Temporal Context. In Nokia Mobile Data Challenge - Next Place Prediction, number 2, 2012. Fosca Giannotti, Mirco Nanni, and Dino Pedreschi. Efficient mining of temporally annotated sequences. In In Proc. SDM’06, pages 348–359, 2006. Fosca Giannotti, Mirco Nanni, Dino Pedreschi, and Fabio Pinelli. Trajectory pattern mining. In Proceedings of the International Conference on Knowledge Discovery and Data Mining (KDD), pages 330–339, San Jose, CA, 2007. ISBN 9781595936097. Marta C. Gonzalez, Cesar A. Hidalgo, and Albert-Laszlo Barabasi. Understanding individual human mobility patterns. Nature, 453(7196):779–782, June 2008. ISSN 0028- 0836. 118G¨osta Grahne and Jianfei Zhu. Efficiently Using Prefix-trees in Mining Frequent Itemsets. In Proceedings of the ICDM’03 international workshop on requent itemset mining implementations (FIMI ’03), volume 15, pages 123–132, Melbourne, FL, 2003. URL http://ftp.informatik.rwth-aachen.de/Publications/CEUR-WS/ Vol-90/grahne.pdf. M A Hall. Correlation-based feature selection for machine learning. PhD thesis, The University of Waikato, 1999. Mark Hall, Eibe Frank, Geoffrey Hilmes, Bernhard Pfahringer, Peter Reutemann, and Ian H Witten. The WEKA Data Mining Software: An Update. SIGKDD Explorations, 11(1), 2009. Jiawei Han and Yongjian Fu. Discovery of multiple-level association rules from large databases. In Proceeding of the 21st international conference on very large data bases (VLDB’95), pages 420–431, Zurich, Switzerland, 1995. Jiawei Han, Jian Pei, Behzad Mortazavi-Asl, Qiming Chen, Umeshwar Dayal, and MeiChun Hsu. FreeSpan: frequent pattern-projected sequential pattern mining. In KDD ’00 Proceedings of the sixth ACM SIGKDD international conference on Knowledge discovery and data mining, pages 355–259. ACM New York, NY, USA, 2000a. Jiawei Han, Jian Pei, and Yiwen Yin. Mining frequent patterns without candidate generation. In SIGMOD ’00 Proceedings of the 2000 ACM SIGMOD international conference on Management of data, pages 1–12, Dallas, TX, 2000b. ISBN 1581132182. doi: 10.1145/335191.335372. Jiawei Han, Micheline Kamber, and Jian Pei. Data mining: concepts and techniques. Morgan kaufmann, 2006. ISBN 0080475582. Jiawei Han, Hong Cheng, Dong Xin, and Xifeng Yan. Frequent pattern mining: current status and future directions. Data Mining and Knowledge Discovery, 15(1):55–86, January 2007. ISSN 1384-5810. doi: 10.1007/s10618-006-0059-1. URL http://link. springer.com/10.1007/s10618-006-0059-1. Martin Heidegger. Sein und Zeit. Max Niemayer Verlag, T¨ubingen, 10 (1963) edition, 1927. Steven Henikoff and Jorja G. Henikoff. Amino acid substitution matrices from protein blocks. Proceedings of the National Academy of Sciences of the United States of America, 89(22):10915–10919, November 1992. ISSN 0027-8424. 119Johan Himberg, Kalle Korpiaho, Heikki Mannila, Johanna Tikanm¨aki, and Hannu T. T. Toivonen. Time series segmentation for context recognition in mobile devices. In Proceedings 2001 IEEE International Conference on Data Mining, volume c, pages 203–210. IEEE Comput. Soc, 2001. ISBN 0-7695-1119-8. doi: 10.1109/ICDM. 2001.989520. URL http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm? arnumber=989520. Daniel S. Hirschberg. A Linear Space Algorithm for Computing Maximal Common Subsequences. Communications of the ACM, 18(6):341–343, 1975. Wassily Hoeffding. Probability Inequalities for Sums of Bounded Random Variables. Journal of the American Statistical Association, 58(301):13–30, March 1963. ISSN 0162-1459. doi: 10.1080/01621459.1963.10500830. URL http://amstat. tandfonline.com/doi/abs/10.1080/01621459.1963.10500830. Geoffrey Holmes, Bernhard Pfahringer, Richard Kirkby, Eibe Frank, and Mark Hall. Multiclass alternating decision trees. In ECML, pages 161–172. Springer, 2001. Geoffrey Holmes, Bernhard Pfahringer, Richard Kirkby, Eibe Frank, and Mark Hall. Multiclass Alternating Decision Trees. In Proceedings of the 13th European Conference on Machine Learning, ECML ’02, pages 161–172, London, UK, UK, 2002. SpringerVerlag. ISBN 3-540-44036-4. URL http://dl.acm.org/citation.cfm?id=645329. 650070. George H. John and Pat Langley. Estimating Continuous Distributions in Bayesian Classifiers. In Eleventh Conference on Uncertainty in Artificial Intelligence, pages 338–345, San Mateo, 1995. Morgan Kaufmann. Juyoung Kang and Hwan-Seung Yong. Mining spatio-temporal patterns in trajectory data. Journal of Information Processing Systems, 6(4):521–536, 2010. Tuula K¨arkk¨ainen, Tuomas Vaittinen, and Kaisa V¨a¨an¨anen-Vainio-Mattila. I Don’t Mind Being Logged, but Want to Remain in Control: A Field Study of Mobile Activity and Context Logging. In Proceedings of the 28th international conference on Human factors in computing systems - CHI ’10, pages 163–172, Atlanta, GA, USA, 2010. ACM New York, NY, USA. ISBN 9781605589299. Richard M Karp and M O Rabin. Efficient randomized pattern-matching algorithms, 1987. 120Dimitrios Katsaros and Yannis Manolopoulos. A Suffix Tree Based Prediction Scheme for Pervasive Computing Environments. In Panayiotis Bozanis and Elias N. Houstis, editors, 10th Panhellenic Conference on Informatics, PCI 2005, pages 267–277, Volos, Greece, 2005. Dimitrios Katsaros, Alexandros Nanopoulos, Murat Karakaya, Gokhan Yavas, Ozg ur Ulusoy, and Yannis Manolopoulos. Clustering mobile trajectories for resource allocation in mobile environments. In Proceedings of the 5th International Symposium on Intelligent Data Analysis, IDA 2003, number 102, pages 319–329, Berlin, Germany, 2003. Springer Berlin Heidelberg. Eamonn Keogh, Jessica Lin, and Wagner Truppel. Clustering of time-series subsequences is meaningless: implications for previous and future research. In Proceedings of the Third IEEE International Conference on Data Mining (ICDM’03), pages 115–122, 2003. ISBN 0769519784. Niko Kiukkonen, Jan Blom, Olivier Dousse, Daniel Gatica-Perez, and Juha K. Laurila. Towards rich mobile phone datasets: Lausanne data collection campaign. In Proceedings of ACM international conference on pervasive services (ICPS), Berlin, 2010. Donald E. Knuth, James H. Morris, Jr, and Vaughan R. Pratt. Fast pattern matching in strings. SIAM journal on computing, 6(2):323–350, 1977. URL http://epubs.siam. org/doi/abs/10.1137/0206024. David Kotz and Kobby Essien. Analysis of a campus-wide wireless network. Wireless Networks, 11(1-2):115–133, 2005. ISSN 1022-0038. Kamala Krithivasan and R Sitalakshmi. Efficient two-dimensional pattern matching in the presence of errors. Information Sciences, 43(3):169–184, December 1987. ISSN 0020-0255. doi: 10.1016/0020-0255(87)90037-5. URL http://www.sciencedirect. com/science/article/pii/0020025587900375. Hye-Chun Kum, Jian Pei, Wei Wang, and Dean Duncan. ApproxMAP: Approximate mining of consensus sequential patterns. In Third SIAM International Conference on Data Mining (SIAM-DM), pages 311–315, San Francisco, CA, 2003. Kari Laasonen. Clustering and prediction of mobile user routes from cellular data. In Knowledge Discovery in Databases: PKDD 2005, pages 569–576, Porto, Portugal, 2005. 121Philip Laird. Identifying and using patterns in sequential data. In KlausP. Jantke, Shigenobu Kobayashi, Etsuji Tomita, and Takashi Yokomori, editors, Algorithmic Learning Theory SE - 1, volume 744 of Lecture Notes in Computer Science, pages 1–18. Springer Berlin Heidelberg, 1993. ISBN 978-3-540-57370-8. doi: 10.1007/ 3-540-57370-4 33. Juha K. Laurila, Daniel Gatica-Perez, Imad Aad, Jan Blom, Olivier Bornet, TrinhMinh-Tri Do, Olivier Dousse, Julien Eberle, and Markus Miettinen. The mobile data challenge: Big data for mobile computing research. In Mobile Data Challenge by Nokia Workshop in Conjunction with Int. Conf. on Pervasive Computing, Newcastle, UK, 2012. Thierry Lecroq, Alexandre Pauchet, Emilie Chanoni, and Gerardo Solano Ayala. Pattern ´ discovery in annotated dialogues using dynamic programming. International Journal of Intelligent Information and Database Systems, 6(6):603–618, 2012. Philip I. S. Lei and Angus K. Y. Wong. The Multiple-Touch User Interface Revolution. IT Professional, 11(February):42–49, 2009. Jonathan Lester, Tanzeem Choudhury, and Gaetano Borriello. A practical approach to recognizing physical activities. Pervasive Computing, pages 1–16, 2006. doi: 10.1.1. 138.6972. Chao Li and Katharine Willis. Modeling context aware interaction for wayfinding using mobile devices. In Proceedings of the 8th conference on Human-computer interaction with mobile devices and services - MobileHCI ’06, page 97, New York, New York, USA, 2006. ACM. ISBN 1595933905. doi: 10.1145/1152215.1152235. URL http: //portal.acm.org/citation.cfm?doid=1152215.1152235. David J. Lipman and William R. Pearson. Rapid and sensitive protein similarity searches. Science, 227(4693):1435–1441, March 1985. doi: 10.1126/science.2983426. URL http://www.sciencemag.org/content/227/4693/1435.abstract. H Liu and R Setiono. A probabilistic approach to feature selection - A filter solution. In 13th International Conference on Machine Learning, pages 319–327, 1996. Nizar R. Mabroukeh and C. I. Ezeife. A taxonomy of sequential pattern mining algorithms. ACM Computing Surveys, 43(1):3:1–3:41, November 2010. ISSN 03600300. doi: 10.1145/1824795.1824798. URL http://portal.acm.org/citation.cfm?doid= 1824795.1824798. 122Heikki Mannila, Hannu Toivonen, and A. Inkeri Verkamo. Efficient Algorithms for Discovering Association Rules. In AAAI Workshop on Knowledge Discovery in Databases (KDD-94), number July, pages 181–192. AAAI Press, 1994. Jani M¨antyj¨arvi, Johan Himberg, Petri Kangas, Urpo Tuomela, and Pertti Huuskonen. Sensor Signal Data Set for Exploring Context Recognition of Mobile Devices. In Workshop ”Benchmarks and a database for context recognition” in conjuction with the 2nd Int. Conf. on Pervasive Computing (PERVASIVE 2004), Linz/Vienna, Austria, 2004. Edward M. McCreight. A space-economical suffix tree construction algorithm. Journal of the ACM (JACM), 23(2):262–272, 1976. URL http://dl.acm.org/citation.cfm? id=321946. Carl H. Mooney and John F. Roddick. Sequential Pattern Mining - Approaches and Algorithms. ACM Computing Surveys (CSUR), 45(2):19:1–19:39, 2013. doi: 10.1145/ 2431211.2431218. Cory S. Myers and Lawrence R. Rabiner. A Comparative Study of Several Dynamic Time-Warping Algorithms for Connected-Word. Bell System Technical Journal, 60 (7):1389–1409, 1981. Eugene W. Myers and Webb Miller. Optimal alignments in linear space. Computer applications in the biosciences : CABIOS, 4(1):11–17, March 1988. doi: 10. 1093/bioinformatics/4.1.11. URL http://bioinformatics.oxfordjournals.org/ content/4/1/11.abstract. Mirco Nanni, Roberto Trasarti, Chiara Renso, Fosca Giannotti, and Dino Pedreschi. Advanced Knowledge Discovery on Movement Data with the GeoPKDD system. In Proceedings of the 13th International Conference on Extending Database Technology EDBT ’10, pages 693–696. ACM New York, NY, USA, 2010. ISBN 9781605589459. Gonzalo Navarro. A guided tour to approximate string matching. ACM Computing Surveys, 33(1):31–88, March 2001. ISSN 03600300. doi: 10.1145/375360.375365. URL http://portal.acm.org/citation.cfm?doid=375360.375365. Saul B. Needleman and Christian D. Wunsch. A general method applicable to the search for similarities in the amino acid sequence of two proteins. Journal of molecular biology, 48(3):443–453, 1970. 123Kurt Partridge and Bob Price. Enhancing Mobile Recommender Systems with Activity Inference. User Modeling, Adaptation, and Personalization, pages 307–318, 2009. Nicolas Pasquier, Yves Bastide, Rafik Taouil, and Lotfi Lakhal. Discovering Frequent Closed Itemsets for Association Rules. In Catriel Beeri and Peter Buneman, editors, Database Theory – ICDT ’99 SE - 25, volume 1540 of Lecture Notes in Computer Science, pages 398–416. Springer Berlin Heidelberg, 1999. ISBN 978-3-540-65452-0. doi: 10.1007/3-540-49257-7\ 25. URL http://dx.doi.org/10.1007/3-540-49257-7_25. Alexandre Pauchet, Abed Mohamad El, Tayeb Merabti, Elise Prieur, Thierry Lecroq, ´ and St´efan Darmoni. Identification de r´ep´etitions dans les navigations au sein d’un catalogue de sant´e. Revue d Intelligence Artificielle, 23(1):113–132, 2009. URL http: //hal.archives-ouvertes.fr/hal-00450114. Alexandre Pauchet, Fran¸cois Rioult, Emilie Chanoni, Zacharie Ales, and Ovidiou Serban. ´ Advances on Dialogue Modelling Interactive Narration Requires Prominent Interaction and Emotion. In International Conference on Agents and Artificial Intelligence, pages 527–530, Barcelona, Spain, 2013. Jian Pei, Jiawei Han, Behzad Mortazavi-asl, and Hua Zhu. Mining Access Patterns Ef- ficiently from Web Logs. In Proceedings of the 4th Pacific-Asia Conference on Knowledge Discovery and Data Mining, PAKDD 2000, volume 0, pages 396–407, Kyoto, Japan, 2000. Springer Berlin Heidelberg. Jian Pei, Jiawei Han, Behzad Mortazavi-Asl, Helen Pinto, Qiming Chen, Umeshwar Dayal, and Mei-Chun Hsu. Prefixspan: Mining sequential patterns efficiently by prefixprojected pattern growth. In Proceeding of the 2001 international conference on data engineering (ICDE’01), pages 215–224, Heidelberg, Germany, 2001. Jian Pei, Jiawei Han, Behzad Mortazavi-Asl, Jianyong Wang, Helen Pinto, Qiming Chen, Umeshwar Dayal, and Mei-Chun Hsu. Mining Sequential Patterns by Pattern-Growth : The PrefixSpan Approach. IEEE Transactions on Knowledge and Data Engineering, 16(10):1424–1440, 2004. Dan Pelleg and Andrew Moore. X-means: Extending k-means with efficient estimation of the number of clusters. In Proceedings of the Seventeenth International Conference on Machine Learning, pages 727–734, 2000. Helen Pinto, Jiawei Han, Jian Pei, Ke Wang, Qiming Chen, and Umeshwar Dayal. Multi-dimensional sequential pattern mining. In Proceedings of the tenth international 124conference on Information and knowledge management - CIKM’01, pages 81–88, New York, New York, USA, 2001. ACM. ISBN 1581134363. doi: 10.1145/502598.502600. James Pitkow and Peter Pirolli. Mining longest repeating subsequences to predict world wide web surfing. In Proceedings of USITS ’99: The 2nd USENIX Symposium on Internet Technologies & Systems, pages 139–150, 1999. Marc Plantevit, Anne Laurent, Dominique Laurent, Maguelonne Teisseire, and Yeow Wei Choong. Mining multidimensional and multilevel sequential patterns. ACM Transactions on Knowledge Discovery from Data, 4:4:0–4:37, 2010. doi: 10.1145/1644873. 1644877. URL http://dl.acm.org/citation.cfm?id=1644877. John C. Platt. Advances in kernel methods. chapter Fast train, pages 185–208. MIT Press, Cambridge, MA, USA, 1999. ISBN 0-262-19416-3. URL http://dl.acm.org/ citation.cfm?id=299094.299105. Mika Raento. Mobile communication and context dataset. In Proceedings of the Workshop towards Benchmarks and a Database for Context Recognition, International Conference on Pervasive Computing, Vienna, Austria, 2004. Mika Raento, Antti Oulasvirta, Renaud Petit, and Hannu Toivonen. ContextPhone: A Prototyping Platform for Context-Aware Mobile Applications. IEEE Pervasive Computing, 4(2):51–59, 2005. ISSN 1536-1268. doi: 10.1109/MPRV.2005.29. Sherif Rashad, Mehmed Kantardzic, and Anup Kumar. PAC-WHN: Predictive Admission Control for Wireless Heterogeneous Networks. In 2007 IEEE Symposium on Computers and Communications, pages 139–144. Ieee, July 2007a. ISBN 978-1- 4244-1520-5. doi: 10.1109/ISCC.2007.4381633. URL http://ieeexplore.ieee.org/ lpdocs/epic03/wrapper.htm?arnumber=4381633. Sherif Rashad, Mehmed Kantardzic, and Anup Kumar. MSP-CACRR: Multidimensional Sequential Patterns Based Call Admission Control and Resource Reservation for Next-Generation Wireless Cellular Networks. 2007 IEEE Symposium on Computational Intelligence and Data Mining, (Cidm):552–559, 2007b. doi: 10.1109/ CIDM.2007.368924. URL http://ieeexplore.ieee.org/lpdocs/epic03/wrapper. htm?arnumber=4221348. Simona E. Rombo. Optimal extraction of motif patterns in 2D. Information Processing Letters, 109(17):1015–1020, August 2009. ISSN 0020-0190. URL http: //www.sciencedirect.com/science/article/pii/S0020019009001926. 125D Sankoff. Matching sequences under deletion-insertion constraints. Proceedings of the National Academy of Sciences of the United States of America, 69(1):4–6, January 1972. ISSN 0027-8424. URL http://www.pubmedcentral.nih.gov/articlerender. fcgi?artid=427531&tool=pmcentrez&rendertype=abstract. Albrecht Schmidt, Michael Beigl, and Hans-W. Gellersen. There is more to context than location. Computers & Graphics, 23(6):893–901, December 1999. doi: 10.1016/ S0097-8493(99)00120-X. Stephan Sigg, Sandra Haseloff, and Klaus David. An Alignment Approach for Context Prediction Tasks in UbiComp Environments. IEEE Pervasive Computing, 9(4):90– 97, 2010. ISSN 1536-1268. doi: 10.1109/MPRV.2010.23. URL http://ieeexplore. ieee.org/lpdocs/epic03/wrapper.htm?arnumber=5406495. Temple F. Smith and Michael S. Waterman. Identification of common molecular subsequences. Journal of Molecular Biology, 147(1):195–197, 1981. ISSN 0022-2836. Libo Song, David Kotz, Ravi Jain, and Xiaoning He. Evaluating location predictors with extensive Wi-Fi mobility data. In INFOCOM 2004. Twenty-third AnnualJoint Conference of the IEEE Computer and Communications Societies, volume 00, pages 1414–1424 vol. 2, Hong Kong, China, 2004. ISBN 0780383567. P. Songram, V. Boonjing, and S. Intakosum. Closed Multidimensional Sequential Pattern Mining. In Third International Conference on Information Technology: New Generations (ITNG’06), pages 512–517, Las Vegas, NV, USA, 2006. Ieee. ISBN 0-7695- 2497-4. doi: 10.1109/ITNG.2006.41. URL http://ieeexplore.ieee.org/lpdocs/ epic03/wrapper.htm?arnumber=1611644. Ramakrishnan Srikant and Rakesh Agrawal. Mining generalized association rules. In Proceeding of the 21st international conference on very large data bases (VLDB’95), pages 407–419, Zurich, Switzerland, 1995. Ramakrishnan Srikant and Rakesh Agrawal. Mining sequential patterns: Generalizations and performance improvements. In EDBT’96 Proceeding of the 5th international conference on extending database technology: Advances in Database Technology, pages 3–17, Avignon, France, 1996. Springer-Verlag London, UK. Mark P. Styczynski, Kyle L. Jensen, Isidore Rigoutsos, and Gregory Stephanopoulos. BLOSUM62 miscalculations improve search performance. Nat Biotech, 26(3):274–275, March 2008. ISSN 1087-0156. doi: 10.1038/nbt0308-274. 126Christian Voigtmann, Klaus David, Hendrik Skistims, and Alexander Roßnagel. Legal assessment of context prediction techniques. 2012 IEEE Vehicular Technology Conference (VTC Fall), pages 1–5, September 2012. doi: 10.1109/VTCFall. 2012.6399381. URL http://ieeexplore.ieee.org/lpdocs/epic03/wrapper.htm? arnumber=6399381. Jianyong Wang and Jiawei Han. BIDE: efficient mining of frequent closed sequences. In Proceedings of the 20th International Conference on Data Engineering, 2004., pages 79–90, 2004. ISBN 1063-6382 VO -. doi: 10.1109/ICDE.2004.1319986. Jingjing Wang and Bhaskar Prabhala. Periodicity Based Next Place Prediction. In Nokia Mobile Data Challenge - Next Place Prediction, 2012. Wei Wang, Jiong Yang, and Philip S. Yu. Mining patterns in long sequential data with noise. ACM SIGKDD Explorations Newsletter, 2(2):28–33, December 2000. ISSN 19310145. doi: 10.1145/380995.381008. URL http://portal.acm.org/citation. cfm?doid=380995.381008. Janet L. Wesson, Akash Singh, and Bradley van Tonder. Can Adaptive Interfaces Improve the Usability of Mobile Applications? Human-Computer Interaction, pages 187–198, 2010. Xifeng Yan, Jiawei Han, and Ramin Afshar. CloSpan: Mining closed sequential patterns in large datasets. In Proc. 2003 SIAM Int’l Conf. Data Mining (SDM’03), pages 166–177, 2003. Guizhen Yang. The complexity of mining maximal frequent itemsets and maximal frequent patterns. In Proceedings of the tenth ACM SIGKDD international conference on Knowledge discovery and data mining, KDD ’04, pages 344–353, New York, NY, USA, 2004. ACM. ISBN 1-58113-888-1. doi: 10.1145/1014052.1014091. URL http://doi.acm.org/10.1145/1014052.1014091. Jiong Yang, Wei Wang, Philip S. Yu, and Jiawei Han. Mining long sequential patterns in a noisy environment. Proceedings of the 2002 ACM SIGMOD international conference on Management of data - SIGMOD ’02, 4(d):406, 2002. doi: 10.1145/564736.564738. URL http://portal.acm.org/citation.cfm?doid=564691.564738. Zhenglu Yang and Masaru Kitsuregawa. LAPIN-SPAM: An Improved Algorithm for Mining Sequential Pattern. In 21st International Conference on Data Engineering Workshops (ICDEW’05), pages 1222–1222. Ieee, 2005. ISBN 0-7695-2657-8. 127doi: 10.1109/ICDE.2005.235. URL http://ieeexplore.ieee.org/lpdocs/epic03/ wrapper.htm?arnumber=1647839. Zhenglu Yang, Yitong Wang, and M Kitsuregawa. LAPIN: effective sequential pattern mining algorithms by last position induction for dense databases. In R. Kotagirim, P. R. Krishna, M. Mohania, and E. Nantajeewarawat, editors, 12th International Conference on Database Systems for Advanced Applications, DASFAA 2007, volume 1, pages 1020–1023, Bangkok, Thailand, 2007. Springer Berlin Heidelberg. URL http: //link.springer.com/chapter/10.1007/978-3-540-71703-4_95. Mariko Yoshida, Tetsuya Iizuka, Hisako Shiohara, and Masanori Ishiguro. Mining sequential patterns including time intervals. volume 4057, pages 213–220, 2000. URL http://dx.doi.org/10.1117/12.381735. Mohammed J. Zaki. Efficient enumeration of frequent sequences. In Proceedings of the seventh international conference on Information and knowledge management, pages 68–75. ACM, 1998. URL http://dl.acm.org/citation.cfm?id=288643. Mohammed J. Zaki. Scalable algorithms for association mining. IEEE Transactions on Knowledge and Data Engineering, 12(3):372–390, 2000. URL http://ieeexplore. ieee.org/xpls/abs_all.jsp?arnumber=846291. Mohammed J. Zaki. SPADE: An Efficient Algorithm for Mining Frequent Sequences. Machine Learning, 42(1-2):31–60, 2001. ISSN 0885-6125. doi: 10.1023/A:1007652502315. URL http://dx.doi.org/10.1023/A:1007652502315. Qiankun Zhao and Sourav S. Bhowmick. Sequential pattern mining: A survey. Technical Report 2003118, CAIS Nayang Technological University Singapore, 2003. URL http: //www.textedu.ru/tw_files2/urls_6/147/d-146938/7z-docs/5.pdf. Zhou Zhao, Da Yan, and Wilfred Ng. Mining Probabilistically Frequent Sequential Patterns in Large Uncertain Databases. IEEE Transactions on Knowledge and Data Engineering, 99(PrePrints):1, July 2013. ISSN 1041-4347. doi: 10.1109/TKDE.2013. 124. URL http://doi.ieeecomputersociety.org/10.1109/TKDE.2013.124. Yu Zheng, Lizhu Zhang, Zhengxin Ma, Xing Xie, and Wei-Ying Ma. Recommending friends and locations based on individual location history. ACM Transactions on the Web, 5(1):1–44, February 2011. ISSN 15591131. doi: 10.1145/1921591.1921596. URL http://portal.acm.org/citation.cfm?doid=1921591.1921596. 128Rui Feng Zhu and Tadao Takaoka. A technique for two-dimensional pattern matching. Communications of the ACM, 32(9):1110–1120, 1989. URL http://dl.acm.org/ citation.cfm?id=66459. Jacob Ziv and Abraham Lempel. Compression of individual sequences via variablerate coding. Information Theory, IEEE Transactions on, 24(5):530–536, 1978. ISSN 0018-9448. 129Benchmarks of Supervised Classification Algorithms for Next Place Prediction A.1 The Next Place Prediction Problem This annex illustrates our efforts undertaken in the context of the Nokia Mobile Data Challenge (MDC, Laurila et al. [2012]) task 2 “Next Place Prediction”. Our aim is to assess the performance of some well explored statistical algorithms chosen according to our expectations of their suitability, as well as classic “benchmark” approaches. This allows the selection of the most accurate algorithm for the prediction task, and a general judgement on the suitability of the approaches for this task. A step of pre-treatment of the MDC dataset is required to generate a subset of data that is suitable for training a statistical model using the algorithms explored. This treatment consists of a combination of two global – being applied equally to all users – filters, the first of which is an a priori “2D” feature selection, and the second a projection of these values into a 1D feature vector. Subsequently two statistical methods of feature selection are evaluated on this vector on per user basis. This pre-processing step is documented in the second section. The third section contains a brief presentation of the algorithms examined and their respective evaluation results. The final section summarizes the results and contains our conclusions. A.2 Dataset Analysis The MDC dataset [Laurila et al., 2012] is highly heterogeneous in nature. This stems both from the peculiarities of the group providing the data, and from the challenges of leading a large scale acquisition campaign. The most obvious heterogeneity lies in the 130difference of sizes of the per-user data sets: around 620 MB±320 MB in human readable, tabulator separated value format. Additionally, different users have made different use of the phone capabilities, leading to different distributions of useful data, e.g. some users not using the calendar functionality of their phone, and others using it extensively. The size of the dataset is also an important quantity: the “width” – i.e. the number of different data sources – is large (around 75 features), but the actual number of training cases (per individual) for the next place prediction task is fairly small (between 100 and 1500). This means that statistical analysis is more likely to be influenced by outliers, potentially leading to inadvertent overfitting of models and in general a higher error for the smaller sub-datasets. The data itself can also be unreliable: there are intervals of missing data and occasionally the data does not pass basic sanity tests, e.g. a time zone changing by many hours, during a single visit. The hardware homogenity at least allows for some transversal coherency of the gathered data, but this is of little consequence for the next place prediction. We propose a three-step approach for the preparation of this data, that consists of two a priori selection, and a final statistic filtering, using either the consistency criterion proposed by Liu and Setiono [1996] or a correlation-based feature selector (Cfs, [Hall, 1999]). In the first step we select twelve features, that should influence or indicate the decision which location is going to be visited next, according to our global conceptual model. From the 75 features available, this is the subset used as base of the model: ❼ hour of the day and day of the week – based on the assumption that certain visits will have a regularity in time, which is the case in non-shift workers and students; ❼ place id – based on the assumption, that some places are visited exclusively after a visit of another place; ❼ bluetooth devices – can link to sub-locations of a visit, transportation choice or the social environment; ❼ applications used – a mapping application may strongly correlate with first-time visits, the messaging application may provide information on a social link; ❼ call / message type – an outgoing or incoming phone call or message influence the choice of next location; ❼ call duration – the length of a phone call is expected to be an indicator of the social link between call participants; ❼ call / message contact – the contact can be an indicator of the next destination; 131❼ movement of the phone – is an indicator of physical activity, which could indicate a destination; ❼ charging state – if the phone is charged at a place, it can be expected that the next place is less likely to have charging facilities available, or that a long transition will follow; ❼ battery level – if the battery level at departure is low, the next location is likely to be a place with charging facilities, and close by; ❼ calendar event titles – both the knowledge that a calendar event is linked to the current place and visit, as well as the next known calendar event are clearly hints at the following destination. As most of these values are time dependant during a visit, the next step is to project the key information of these twelve features into a single characteristic vector. Here again the choices were made based on expected utility and with the goal of minimizing the features to limit noise and computational effort required. Per visit, the hour of day and day of week values were retained for both the beginning and end of the visit. The two most frequently encountered bluetooth addresses were recorded, as well as the two most frequently used phone applications. The details of the last communication (incoming/outgoing, message/call and contact ID), the sum of all acceleration values with a log weighting favouring the end of the visit, the portion of the visit that the phone was connected to the charger, the mean battery level as well as the battery level at the end of the visit and any calendar event during the following 24 hours and the first calendar event planned for the current visit. On average 59.6% (±14.3) of recorded visits were to the two most visited locations. More than one third of visits, 37.2% (±11.2), were to the most visited location. This value represents a lower boundary for prediction precision, when using the training set for evaluation. Around one sixth of the visits were to places that had an incidence rate below one percent. These were grouped as a single location, which, when predicted, are considered to be a new location. A.3 Next Visit Prediction It is currently beyond the scale of physical and logical modelling to emulate the decisionmaking process of a person, even if their complete context and history are known. In addition our knowledge of users and their context are imperfect. Even logical links 132Table A.1.: Classifier and Filter Configurations Tested Classifier Classifier Explicit Multiclass Settings Schemes NaiveBayes [John and Langley, 1995] Kernel estimator none (“NB”) 1-1 (“M3”) 1-all (“M0”) LADTree [Holmes et al., 2001] 10 or 20 Boosts none (“LAD”) 1-1 (“M3”) 1-all (“M0”) SMO [Platt, 1999] Complexity parameter none C = 0.5 or 10 1-1 (“M3”) Polynomial Kernel 1-all (“M0”) with exponent E = 1.0 or 2.0 between a decision and known context cannot be certainly established; at best different correlation measures could be calculated. As a result, there is no clear a priori indication which statistical classification model is best applicable to this process. Hence an empirical, iterative approach is the way we choose to obtain a predictor with optimal accuracy. A common evaluation scenario similar to the test scenario was chosen, dividing the training set along a 90%/10% split. The first 90% were used as training set, which was then evaluated on the other 10%. The evaluation metric is the ratio and number of correct predictions. Our interpretation of the problem as a multi-class classification problem, with asymmetrically sized classes and a mixed characteristic vector, containing both numerical and nominal values, permitted us to evaluate the naive Bayesian approach [John and Langley, 1995], the LogitBoost alternating decision (LAD, [Holmes et al., 2001]) tree classifier and a support vector machine based classifier, the sequential minimal optimization (SMO, [Platt, 1999]) algorithm. These methods represent three different approaches to statistical modelling and are all flexible enough to accept our dataset without modification. The specific configurations are referenced in Table 1. Additionally we tested four configurations of the feature vector, a basic vector using just the time and location information of the previous visit (time of day and day of week of both beginning and end of the visit and location), the extended vector (labeled “full” in the graphs) including the context data mentioned above, and two reduced vectors, using the features selected by either the correlation based feature selection filter (labelled “Cfs”) or consistency based feature selection [Liu and Setiono, 1996] filter (labelled “Consist”). For each filter 13330 35 40 45 50 55 Mean Number of Correct Predictions Relative Accuracy (%) Figure A.3.1.: Results for the Naive Bayes Classification Algorithm we were able to use an exhaustive search algorithm, due to our limited feature set size. These four variants allow us to show the impact of the availability of additional context information as well as what can be achieved by filtering on a per user level. To cater to the multi-class nature of the task, we used each algorithm’s natural multiclass approach, and also put in place two variants that forced the classifiers to function in 1-against-all (labelled M0 in the graphs) and 1-against-1 (labelled M3) mode. For our experiments, we used the Weka statistics suite [Hall et al., 2009]. In the following we present the results of our evaluation of a total of 84 different con- figurations. We constrain ourself to two evaluation scores: mean absolute accuracy, i.e. the average number of correct predictions, and mean relative accuracy, i.e. the average percentage of correct predictions. The former is a closer indicator of the algorithm’s performance for the challenge, the latter is a better measure of overall user experience. Significantly larger numbers of boost iterations for the LADtree could not be used, as the data set for some users is too small. The partial results we did obtain were not indicative of precision enhancements. Similarly, our attempts to run exhaustive error correction multiclass classifiers were foiled by the large size of other user’s data sets, which required more than 4GB of memory. Looking at the results of the naive Bayes classifier (see Fig. A.3.1), it becomes obvious, that it is negatively impacted (losing around 5 percent points of average accuracy) by the additional context information, unless it is filtered. Otherwise, results vary very little: mean accuracy is between 49% and 52%, the average number of correct predictions varies between 30 and 31 for the full feature vector and between 32.5 and 35 in the other configurations. Specifically, the minimalist dataset has the same average accuracy as the feature selection filtered variants of the full dataset. 134Figure A.3.2.: Results for the LogitBoost Adaptive Decision Tree Classification Algorithm Figure A.3.3.: Results for the SMO Classification Algorithm without Feature Selection Filters The LADtree (see Fig. A.3.2) model is the most stable of all tested algorithms, and appears to perform almost independently of the additional data. Mean accuracy is consistently between 49 and 52 percent and there are between 33 and 35 (one outlier at 31.4) average correct predictions. Two configurations (10x Boosting on the full dataset and 10x Boosting on the minimal dataset in a 1 - 1 multiclass classifier) exceed a mean correct prediction count of 35, equivalent to over 2800 correct predictions on our test dataset. Overall, LADtree performs the most consistent manner and is the most accurate, but only barely exceeds the results from the Naive Bayesian approach. Most of the results of our evaluations of the SMO algorithm (see Figs. A.3.3 and A.3.4) are disappointing, especially when using any of the two tested feature selection filters. Also, using a 1 - all multi-class approach decreased accuracy noticeably, leading to some 135Figure A.3.4.: Results for the SMO Classification Algorithm with Feature Selection Filters of the weakest results of our evaluation. Nonetheless, without feature selection filters, on the reduced dataset, and either forced 1 - 1 multi-class classification or the native 1 - 1 multi-class approach of SMO, results exceeding 50% mean accuracy could be achieved. Any additional data in the training set decreased accuracy. A.4 Conclusion The approaches we examined here only show marginal differences in performance, when only the most accurate configurations are taken into account. Nonetheless, the overall best algorithm in our testing set of three is the LADtree classifier. Regarding the feature selection, correlation based feature selection appears to perform consistently better than consistency based filtering. Also, a LogitBoost decision tree model performs slightly better with 10 boosting iterations, than with 20 iterations - in the majority of cases. The around 50% accuracy of the predictions observed during our evaluations, lead us to believe that a dedicated hybrid modelling approach, optimised just to predict the two most frequently visited locations, may achieve higher accuracies than we obtained during our series of evaluations. Given the constrained time resources given by the challenge, and the complexity and heterogeneity of the dataset, we decided to first examine the necessity of following a dedicated modelling approach. One example of a possible adaptation, would be the development of dedicated estimators for each feature, when using a naive Bayes classifier. For example the cyclic nature of the temporal 136features are currently not being correctly taken into account. Another important observation is the fact that adding what appeared to be – from an a priori stand point – a useful set of features extracted from the context to the classification process has little to no value in all three prediction models we examined. The relatively low number of training instances makes observation of strong correlations unlikely, which in turn reduces the predictive capability of any model based on this data. While our examination was by no means exhaustive, we see no basis to expect major gains using a similar approach, with more extensive, iterative tuning. It therefore appears that the extended conceptual model we based our feature extraction process on, was not matched by any of the statistical models we evaluated during this work. 137Details on the evaluation processes B.1 Real world data B.1.1 Similarity score tables These are the similarity scores used for the alignment of our real world dataset. The value 0 in each table represents the place holder value, if a sensor had no (valid) reading at this point in time. 138Table B.1.: Similarity score table for luminance 0 1 2 3 4 5 6 7 8 9 10 0 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 -1 4 -9 -8 -9 -9 -10 -9 -10 -10 -10 2 -1 -9 3 -7 -8 -9 -9 -9 -9 -9 -9 3 -1 -8 -7 3 -8 -9 -10 -9 -9 -9 -10 4 -1 -9 -8 -8 3 -9 -10 -9 -9 -10 -10 5 -1 -9 -9 -9 -9 3 -9 -9 -9 -9 -8 6 -1 -10 -9 -10 -10 -9 1 -10 -7 -10 -7 7 -1 -9 -9 -9 -9 -9 -10 1 -7 -10 -8 8 -1 -10 -9 -9 -9 -9 -7 -7 3 -10 -10 9 -1 -10 -9 -9 -10 -9 -10 -10 -10 2 -7 10 -1 -10 -9 -10 -10 -8 -7 -8 -10 -7 2 Table B.2.: Similarity score table for proximity 0 1 2 0 1 -1 -1 1 -1 2 -5 2 -1 -5 2 Table B.3.: Similarity score table for places 0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 0 1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 -1 1 -1 6 -9 -10 -9 -9 -10 -10 -9 -10 -10 -10 -9 -9 -10 2 -1 -9 3 -9 -8 -9 -10 -9 -9 -10 -9 -10 -8 -9 -10 3 -1 -10 -9 2 -10 -9 -10 -9 -7 -10 -10 -10 -8 -9 -10 4 -1 -9 -8 -10 3 -8 -9 -9 -8 -10 -10 -10 -8 -9 -10 5 -1 -9 -9 -9 -8 5 -9 -8 -10 -10 -9 -10 -9 -8 -10 6 -1 -10 -10 -10 -9 -9 5 -8 -9 -10 -9 -10 -9 -9 -10 7 -1 -10 -9 -9 -9 -8 -8 5 -9 -10 -10 -10 -10 -9 -10 8 -1 -9 -9 -7 -8 -10 -9 -9 6 -9 -9 -10 -9 -9 -9 9 -1 -10 -10 -10 -10 -10 -10 -10 -9 5 -8 -10 -10 -8 -10 10 -1 -10 -9 -10 -10 -9 -9 -10 -9 -8 6 -10 -10 -8 -10 11 -1 -10 -10 -10 -10 -10 -10 -10 -10 -10 -10 7 -10 -9 -10 12 -1 -9 -9 -8 -8 -9 -9 -10 -9 -10 -10 -10 2 -8 -10 13 -1 -9 -9 -9 -9 -8 -9 -9 -9 -8 -8 -9 -8 5 -9 14 -1 -10 -10 -10 -10 -10 -10 -10 -9 -10 -10 -10 -10 -9 7 139Table B.4.: Similarity score table for battery levels 0 1 2 3 4 5 6 7 8 0 1 -1 -1 -1 -1 -1 -1 -1 -1 1 -1 1 -1 -4 -3 -5 -1 -6 -2 2 -1 -1 1 -5 -4 -6 -2 -7 -3 3 -1 -4 -5 1 -1 -1 -3 -2 -2 4 -1 -3 -4 -1 1 -3 -2 -4 -1 5 -1 -5 -6 -1 -3 1 -4 -1 -2 6 -1 -1 -2 -3 -2 -4 1 -5 -1 7 -1 -6 -7 -2 -4 -1 -5 1 -3 8 -1 -2 -3 -2 -1 -2 -1 -3 1 Table B.5.: Similarity score table for orientation values 0 1 2 3 4 5 6 7 8 0 1 -1 -1 -1 -1 -1 -1 -1 -1 1 -1 2 -8 -7 -8 -4 -7 -7 -9 2 -1 -8 4 -7 -9 -7 -9 -8 -9 3 -1 -7 -7 2 -8 -4 -7 -7 -9 4 -1 -8 -9 -8 4 -8 -9 -9 -8 5 -1 -4 -7 -4 -8 4 -9 -8 -9 6 -1 -7 -9 -7 -9 -9 3 -5 -9 7 -1 -7 -8 -7 -9 -8 -5 4 -9 8 -1 -9 -9 -9 -8 -9 -9 -9 4 140B.1.2 Detailed results of the alignment algorithm evaluation on synthetic data These are the detailed result for the 5 datasets and 27 configurations used for the synthetic evaluation, for the three metrics which have thus far only been presented in aggregated form. 141d-set 1 d-set 2 precision size ratio recall precision size ratio recall index mean err mean err mean err mean err mean err mean err 0 0.42 0.32 4.13 2.73 1.00 0.00 0.91 0.20 1.23 0.65 1.00 0.00 1 0.89 0.21 1.32 0.93 1.00 0.00 0.96 0.10 1.06 0.25 1.00 0.00 2 0.82 0.30 1.82 1.99 1.00 0.00 0.95 0.13 1.09 0.34 1.00 0.00 3 0.89 0.21 1.29 0.81 1.00 0.00 0.97 0.09 1.06 0.24 1.00 0.00 4 0.45 0.39 5.86 5.50 1.00 0.00 0.55 0.33 3.03 2.61 1.00 0.00 5 0.50 0.39 5.25 5.31 1.00 0.04 0.88 0.23 1.38 1.02 1.00 0.00 6 0.68 0.36 2.81 3.25 1.00 0.00 0.92 0.18 1.18 0.55 1.00 0.00 7 0.23 0.26 8.92 5.61 1.00 0.00 0.42 0.33 4.43 3.24 0.98 0.07 8 0.23 0.26 8.99 5.64 1.00 0.00 0.63 0.37 2.97 2.75 0.99 0.06 9 0.54 0.39 4.69 5.07 0.99 0.07 0.79 0.30 1.74 1.46 1.00 0.02 10 0.85 0.27 1.53 1.27 1.00 0.04 0.94 0.15 1.13 0.42 1.00 0.00 11 0.91 0.19 1.23 0.73 1.00 0.00 0.95 0.12 1.08 0.29 1.00 0.00 12 0.51 0.36 3.70 2.86 1.00 0.00 0.70 0.32 1.95 1.24 1.00 0.00 13 0.58 0.37 3.09 2.53 1.00 0.06 0.90 0.20 1.24 0.64 1.00 0.00 14 0.77 0.32 1.89 1.60 1.00 0.00 0.93 0.16 1.16 0.47 1.00 0.00 15 0.39 0.31 4.35 2.68 1.00 0.00 0.58 0.34 2.50 1.51 0.99 0.04 16 0.49 0.36 3.72 2.75 1.00 0.07 0.71 0.32 1.92 1.22 1.00 0.00 17 0.57 0.36 2.98 2.22 1.00 0.02 0.85 0.25 1.41 0.78 1.00 0.01 18 0.39 0.37 8.68 10.54 1.00 0.00 0.89 0.22 1.30 0.77 1.00 0.00 19 0.79 0.32 2.22 3.11 1.00 0.01 0.94 0.14 1.12 0.40 1.00 0.00 20 0.36 0.39 11.26 12.35 1.00 0.00 0.49 0.35 5.38 6.90 1.00 0.00 21 0.48 0.40 8.45 11.74 1.00 0.00 0.86 0.25 1.43 1.14 1.00 0.00 22 0.70 0.38 4.50 8.19 1.00 0.00 0.93 0.17 1.16 0.52 1.00 0.00 23 0.26 0.34 17.55 14.69 1.00 0.00 0.29 0.34 10.44 8.49 0.98 0.08 24 0.26 0.34 17.89 14.89 1.00 0.00 0.30 0.34 10.29 8.45 0.98 0.07 25 0.47 0.40 8.88 12.30 0.99 0.08 0.76 0.32 2.17 2.84 1.00 0.02 26 0.37 0.33 5.83 4.86 1.00 0.00 0.91 0.20 1.24 0.67 1.00 0.00 d-set 3 d-set 4 0 0.17 0.10 6.96 2.66 0.96 0.13 0.45 0.32 3.66 2.56 1.00 0.00 1 0.04 0.06 6.13 7.33 0.21 0.26 0.90 0.22 1.33 1.02 1.00 0.00 2 0.15 0.16 6.52 5.70 0.63 0.37 0.77 0.32 2.11 2.39 1.00 0.02 3 0.08 0.11 5.28 4.58 0.34 0.35 0.91 0.21 1.27 0.81 1.00 0.00 4 0.11 0.10 6.93 4.86 0.68 0.42 0.30 0.33 8.03 5.72 1.00 0.00 5 0.16 0.20 4.17 4.20 0.48 0.44 0.49 0.38 5.33 5.42 0.99 0.10 6 0.13 0.15 4.40 3.29 0.52 0.44 0.70 0.36 2.77 3.16 1.00 0.02 7 0.10 0.05 10.07 6.50 0.78 0.31 0.30 0.31 7.36 5.34 1.00 0.00 8 0.10 0.06 10.34 6.51 0.81 0.28 0.31 0.32 7.34 5.37 1.00 0.009 0.20 0.31 2.80 1.56 0.41 0.47 0.50 0.38 4.97 5.14 0.99 0.09 10 0.09 0.09 4.22 2.58 0.42 0.42 0.82 0.28 1.58 1.22 1.00 0.00 11 0.06 0.12 3.59 2.24 0.25 0.39 0.91 0.21 1.24 0.69 1.00 0.00 12 0.15 0.10 4.33 2.22 0.71 0.43 0.43 0.32 3.98 2.72 1.00 0.00 13 0.23 0.18 3.41 2.15 0.69 0.40 0.60 0.37 2.93 2.35 0.99 0.12 14 0.16 0.20 3.27 2.01 0.46 0.45 0.75 0.32 1.92 1.59 1.00 0.00 15 0.13 0.06 5.94 2.48 0.78 0.33 0.49 0.34 3.60 2.60 1.00 0.00 16 0.23 0.18 2.95 1.49 0.63 0.40 0.50 0.36 3.71 2.75 0.98 0.13 17 0.26 0.28 2.97 1.71 0.60 0.42 0.62 0.37 2.87 2.39 1.00 0.00 18 0.05 0.05 12.08 7.45 0.51 0.18 0.16 0.20 17.17 14.66 1.00 0.00 19 0.06 0.08 7.89 8.96 0.27 0.26 0.73 0.35 2.92 4.75 1.00 0.03 20 0.09 0.09 11.88 11.49 0.64 0.39 0.20 0.29 18.45 14.15 1.00 0.00 21 0.12 0.15 5.31 5.28 0.44 0.41 0.44 0.40 9.92 12.32 1.00 0.04 22 0.10 0.13 5.72 5.24 0.41 0.41 0.67 0.39 5.05 8.81 1.00 0.04 23 0.10 0.09 17.29 16.14 0.83 0.23 0.15 0.24 21.38 14.20 1.00 0.00 24 0.14 0.18 16.43 16.20 0.80 0.26 0.15 0.24 21.37 14.21 1.00 0.00 25 0.17 0.24 3.09 1.96 0.44 0.44 0.44 0.39 9.77 12.88 0.99 0.08 26 0.08 0.07 7.55 3.85 0.56 0.25 0.27 0.28 7.52 5.27 1.00 0.00 d-set 5 0 0.82 0.24 0.33 0.14 0.25 0.06 1 0.48 0.11 0.39 0.12 0.18 0.04 2 0.67 0.34 0.36 0.13 0.24 0.13 3 0.42 0.12 0.41 0.13 0.16 0.04 4 0.46 0.11 0.41 0.14 0.18 0.04 5 0.52 0.10 0.39 0.11 0.19 0.04 6 0.37 0.10 0.48 0.09 0.17 0.03 7 8 9 0.29 0.03 0.49 0.09 0.14 0.02 10 0.77 0.26 0.38 0.16 0.28 0.10 11 0.65 0.36 0.36 0.12 0.24 0.14 12 0.44 0.10 0.38 0.12 0.16 0.04 13 0.46 0.13 0.46 0.15 0.20 0.04 14 0.44 0.10 0.34 0.10 0.15 0.04 15 0.42 0.14 0.48 0.14 0.18 0.01 16 0.81 0.24 0.34 0.17 0.25 0.06 17 0.75 0.26 0.40 0.18 0.28 0.10 18 0.66 0.35 0.36 0.14 0.24 0.13 19 0.43 0.11 0.40 0.13 0.16 0.04 20 0.51 0.11 0.35 0.10 0.17 0.0321 0.33 0.09 0.49 0.13 0.16 0.03 22 0.31 0.11 0.55 0.18 0.15 0.03 23 0.39 0.04 0.36 0.05 0.14 0.03 24 0.82 0.24 0.34 0.16 0.25 0.06 25 0.75 0.27 0.39 0.17 0.28 0.10 26B.1.3 Expert annotated patterns These are the reference patterns identified through visual examination of the dataset of one participant of our data collection campaign. They were selected through side by side comparison of data for all days, and identifying similar visual structures in the bar diagrammes. Pattern 1 (Fig. B.1.1) corresponds to the campaign participant spending a weekend evening and night at the out-of-town second home. Pattern 2 (Fig. B.1.2) is one of the instances of the campaign participant getting up in the morning and going to work. Pattern 3 (Fig. B.1.3) is slightly more tenuous: it covers only the proximity sensor and location, and corresponds to the campaign participant being at work and busy, hence the phone is stored away, with the screen covered. 14502468 10 12 14 23:02 23:08 23:15 23:21 23:28 23:35 23:41 23:48 23:54 0:01 0:09 0:16 0:23 0:29 0:36 0:42 0:49 0:55 1:02 1:11 1:15 1:22 1:28 1:35 1:41 1:50 1:57 2:03 2:10 2:16 2:23 2:29 2:36 2:42 2:49 2:56 3:02 3:09 3:15 3:22 3:28 3:37 3:41 3:50 3:57 Ori Batt Geo prox loglux date Figure B.1.1.: Reference pattern 1 - evening and night at the week-end home. 14686420 12 10 8:10 8:15 8:21 8:26 8:30 8:37 8:41 8:45 8:50 8:56 9:01 9:05 9:12 9:16 9:20 9:27 9:31 9:38 9:42 9:47 9:51 9:58 10:02 10:06 10:13 10:17 10:22 10:26 10:30 10:37 10:41 10:46 10:52 10:56 11:01 11:07 11:12 11:18 11:23 11:27 11:34 11:38 11:42 11:49 11:53 12:00 12:06 12:11 12:15 12:20 12:26 12:30 12:35 12:41 loglux prox Geo Batt Ori date Figure B.1.2.: Reference pattern 2 - morning and transit to work on a week-day. 14702468 10 12 8:10 8:17 8:24 8:30 8:37 8:43 8:50 8:56 9:03 9:12 9:18 9:25 9:31 9:38 9:44 9:51 9:58 10:04 10:13 10:19 10:24 10:30 10:39 10:46 10:52 10:59 11:05 11:12 11:18 11:25 11:34 11:40 11:47 11:53 12:02 12:09 12:15 12:22 12:28 12:35 12:41 12:50 12:54 13:01 13:10 16:13 16:22 16:29 16:35 16:42 16:48 Geo prox date Figure B.1.3.: Reference pattern 3 - at work, telephone stored or turned over. 148 Complétion combinatoire pour la reconstruction de r´eseaux m´etaboliques, et application au mod`ele des algues brunes Ectocarpus siliculosus Sylvain Prigent To cite this version: Sylvain Prigent. Compl´etion combinatoire pour la reconstruction de r´eseaux m´etaboliques, et application au mod`ele des algues brunes Ectocarpus siliculosus. Bioinformatics. Universit´e de Rennes 1, 2014. French. HAL Id: tel-01093287 https://hal.inria.fr/tel-01093287 Submitted on 10 Dec 2014 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destin´ee au d´epˆot et `a la diffusion de documents scientifiques de niveau recherche, publi´es ou non, ´emanant des ´etablissements d’enseignement et de recherche fran¸cais ou ´etrangers, des laboratoires publics ou priv´es.ANNÉE 2014 THÈSE / UNIVERSITÉ DE RENNES 1 sous le sceau de l’Université Européenne de Bretagne pour le grade de DOCTEUR DE L’UNIVERSITÉ DE RENNES 1 Mention : Informatique École doctorale Matisse présentée par Sylvain PRIGENT préparée à l’unité de recherche IRISA – UMR6074 Institut de Recherche en Informatique et Système Aléatoires ISTIC Complétion combinatoire pour la reconstruction de réseaux métaboliques, et application au modèle des algues brunes Ectocarpus siliculosus. Thèse soutenue à Rennes le 14 novembre 2014 devant le jury composé de : Alexander BOCKMAYR Professeur, Freie Universität, Berlin / Président Marie BEURTON-AIMAR Maître de conférences, Bordeaux 2 / Rapporteure Hubert CHARLES Professeur, INSA, Lyon / Rapporteur Claudine MÉDIGUE Directrice de recherche CNRS, CEA-Genoscope / Rapporteure Arnaud MARTIN Professeur, Université de Rennes 1 / Examinateur Anne SIEGEL Directrice de recherche CNRS / Directrice de thèse Thierry TONON Maître de conférences UMPC / Co-directeur de thèseI thought there couldn’t be anything as complicated as the universe, until I started reading about the cell. par Eric de SilvaRemerciements Je tiens tout d’abord à remercier mes deux directeurs de thèse, Anne Siegel et Thierry Tonon. Merci de m’avoir permis de réaliser ce doctorat avec vous et d’avoir été là pendant ces trois ans. Un grand merci pour votre soutien, qu’il fut professionnel, scientifique ou personnel. Travailler avec vous, en plus d’être très agréable, fut très enrichissant. Pour tout cela je vous remercie. Merci également à Marie Beurton-Aimar, Claudine Médigue et Hubert Charles d’avoir bien voulu accepter la charge de rapporteur. Je remercie également Alexander Bockmayr et Arnaud Martin pour avoir accepté de juger ce travail. J’adresse également mes remerciements à tout le "groupe Symbiose", composé des é- quipes Dyliss, GenScale et de la plate-forme GenOuest. Merci à tous pour cette ambiance exceptionnelle qui règne dans nos couloirs, merci pour l’ensemble des discussions (enrichissantes ou pas, d’ailleurs), pour toutes les activités du midi telles que l’escalade ou la batucada, et pour tout le reste. Espérons que cela reste comme ça encore longtemps, même après ce déménagement imposé. Je remercie également aux Nantais, Damien, Jérémie et Halim, pour les nombreuses discussions tellement intéressantes que nous avons eu, notamment du point de vue de la fonctionnalité des réseaux. Un merci tout particulier à Nicolas et Guillaume qui m’ont accompagné dans le bureau pendant tant de temps. Les deux ans passés avec vous furent tout simplement géniaux, les "pense vite", les courses au retour de la cafet et tout le reste m’ont beaucoup manqué après votre départ. Merci aussi à Malo qui a su les remplacer à merveille durant ces derniers mois. Merci également à Coraline, Nathalie, Valentin et Paulin pour l’ensemble des "cc" qui permettaient à la fois de se distraire, de se réveiller et d’avancer durant les moments de blocage. Au sein de Symbiose, un merci particulier à Gaëlle, Mathilde et Vincent pour l’ensemble du temps passé ensemble depuis ce stage de M2 génial. Mes remerciement vont également à tout ceux qui m’ont permis de se changer les idées en dehors des heures de travail, qu’il s’agisse d’Adrien, Olivier et Stéphane, de tous les gens du Flood, et de l’ensemble des amis de Rennes et d’ailleurs. Tous les citer serait trop long mais je pense particulièrement à Cécile, Ismahane, Charles, Ludo, Chunky, et tous les autres. Un grand merci à tout ceux qui m’ont fait découvrir et adorer la vulgarisation scientifique, qu’il s’agisse de l’association Nicomaque avec le festival Sciences en Cour[t]s ou toutes les personnes qui participent à l’aventure bioinfo-fr, par le blog ou le chan IRC si enrichissant. Un énorme merci à Fréné qui a toujours été là au cours de cette thèse même si ça n’a pas dû être simple tous les jours. Je ne peux pas terminer ces remerciements sans penser à l’ensemble de ma famille, merci à vous tous pour le soutien sans faille pendant ces trois années. Et enfin merci à toutes les personnes auxquelles je ne pense pas en ce moment mais qui ont également participé à faire de ces trois années de thèse une expérience inoubliable et s’étant passée dans les meilleures conditions possibles.Table des matières Table des matières 1 Introduction 5 1 État de l’art 7 1.1 Biologie des systèmes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7 1.2 Réseaux métaboliques . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2.1 Définition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 10 1.2.2 Fonctionnalité d’un réseau métabolique : Analyse en Balance de Flux (ou FBA : Flux Balance Analysis) . . . . . . . . . . . . . . . . . . . . . . . . 12 1.2.3 Optimisation d’une fonction objectif . . . . . . . . . . . . . . . . . . . . . 13 1.2.4 Impact de la structure du réseau . . . . . . . . . . . . . . . . . . . . . . . . 14 1.2.5 Vérification de la fonctionnalité d’un réseau : Flux Variability Analysis . 15 1.3 Pipeline de reconstruction d’un réseau métabolique . . . . . . . . . . . . . . . . 15 1.3.1 Construction d’une ébauche métabolique . . . . . . . . . . . . . . . . . . 18 1.3.2 Raffinement de l’ébauche métabolique . . . . . . . . . . . . . . . . . . . . 22 1.3.3 Évaluation du réseau final . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 1.3.4 Pipelines existants . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23 1.4 Complétion de réseaux : problèmes d’optimisation induits . . . . . . . . . . . . 24 1.4.1 Panorama général . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24 1.4.2 Optstrain, SMILEY - top-down & MILP . . . . . . . . . . . . . . . . . . . . 26 1.4.3 GapFind, GapFill - bottom-up & MILP . . . . . . . . . . . . . . . . . . . . 27 1.4.4 Christian et al - top-down & stochastique . . . . . . . . . . . . . . . . . . . 29 1.4.5 Network-expansion - bottom-up & optimisation combinatoire . . . . . . 30 1.4.6 Comparaisons . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 1.5 Reconstruction de réseaux métaboliques pour les algues . . . . . . . . . . . . . . 34 1.5.1 Les réseaux métaboliques chez les plantes . . . . . . . . . . . . . . . . . . 34 1.5.2 Les réseaux métaboliques chez les algues . . . . . . . . . . . . . . . . . . . 34 1.5.3 Pipelines de reconstructions utilisés . . . . . . . . . . . . . . . . . . . . . . 35 1.5.4 Ectocarpus siliculosus . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 37 1.6 Principaux apports/résumé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 40 2 Complétion combinatoire de réseau métabolique 41 2.1 Problème d’optimisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2.1.1 Espace de recherche . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41 2.1.2 Atteignabilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42 12 Table des matières 2.1.3 Problème de complétion . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43 2.2 Jeux de test . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 2.2.1 Impact de la taille des bases de complétion : Ectocarpus siliculosus & MetaCyc . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44 2.2.2 Effet de la taille de la base de données sur la productibilité des cibles . . 45 2.2.3 Fonctionnalité : E. Coli . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46 2.3 Performance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.3.1 Heuristiques de résolutions . . . . . . . . . . . . . . . . . . . . . . . . . . . 48 2.3.2 Nouvelle méthode d’optimisation dans Network-expansion . . . . . . . . 49 2.3.3 Recherche d’optimum . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 50 2.3.4 Impact de la taille de la base . . . . . . . . . . . . . . . . . . . . . . . . . . 51 2.4 Impact de la réversibilité sur les performances de Network-expansion . . . . . . 54 2.4.1 Réversibilité dans Network-expansion . . . . . . . . . . . . . . . . . . . . . 54 2.4.2 Nouvelle modélisation ASP de la réversibilité . . . . . . . . . . . . . . . . 55 2.4.3 Impact sur les performances . . . . . . . . . . . . . . . . . . . . . . . . . . 55 2.4.4 De Network-expansion à Meneco . . . . . . . . . . . . . . . . . . . . . . . . 57 2.5 Sémantique de productibilité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 57 2.5.1 Impact des cycles sur les différents concepts d’accessibilité . . . . . . . . 57 2.5.2 Comparaison des différentes sémantiques . . . . . . . . . . . . . . . . . . 59 2.5.3 Comparaison des sémantiques qualitatives sur la complétion . . . . . . 61 2.5.4 Fonctionnalité des complétions qualitatives . . . . . . . . . . . . . . . . . 64 2.6 conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67 3 Pipeline de reconstruction de réseaux à partir de données hétérogènes 69 3.1 Modèle d’application : Ectocarpus siliculosus . . . . . . . . . . . . . . . . . . . . 69 3.2 Construction d’une ébauche du réseau : gestion des données hétérogènes . . . 71 3.2.1 Reconstruction à partir des annotations . . . . . . . . . . . . . . . . . . . 71 3.2.2 Reconstruction à partir d’un réseau métabolique de réference . . . . . . 72 3.2.3 Complémentarité des deux réseaux : outils pour leur fusion . . . . . . . . 72 3.2.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3.3 Complétion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 73 3.3.1 Identification de réactions à ajouter . . . . . . . . . . . . . . . . . . . . . . 73 3.3.2 Filtrage par analyse sémantique . . . . . . . . . . . . . . . . . . . . . . . . 74 3.3.3 Compartimentation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.4 Curation manuelle du réseau . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.4.1 Score pour chaque réaction . . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.4.2 Identification de faux positifs . . . . . . . . . . . . . . . . . . . . . . . . . . 76 3.4.3 Ajout de réactions spécifiques . . . . . . . . . . . . . . . . . . . . . . . . . 77 3.4.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 77 3.5 Validation fonctionnelle . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 3.5.1 Réseau final . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 3.5.2 Analyse par balance de flux . . . . . . . . . . . . . . . . . . . . . . . . . . . 78 3.6 Le workflow de reconstruction du réseau . . . . . . . . . . . . . . . . . . . . . . . 80 3.6.1 Description du pipeline . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 80 3.6.2 Outils intégrés dans le pipeline . . . . . . . . . . . . . . . . . . . . . . . . . 81 3.7 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 84Table des matières 3 4 Contribution à l’amélioration des connaissances sur la physiologie des algues brunes 85 4.1 Ectocarpus siliculosus : ses spécificités . . . . . . . . . . . . . . . . . . . . . . . . 85 4.2 Analyse de la reconstruction automatique du réseau métabolique . . . . . . . . 86 4.2.1 La synthèse des alginates . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 4.2.2 Le cycle du mannitol . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 4.3 Étude de voies métaboliques chez Ectocarpus siliculosus à l’aide du réseau métabolique . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 88 4.3.1 Synthèse des acides aminés aromatiques . . . . . . . . . . . . . . . . . . . 88 4.3.2 Synthèse du molybdenum . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92 4.4 Réannotation des gènes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 96 4.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 98 Conclusion et perspectives 99 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 99 Perspectives . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 101 Bibliographie 118 Table des figures 119 Annexes 122 A Liste des molécules utilisées lors de l’étude de l’efficacité de Meneco 125 B Code ASP original de Network-Expansion 127 B.1 ASP . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 127 B.2 Network-Expansion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 128 B.3 Modélisation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 129 C Réannotation de gènes 1334 Table des matièresIntroduction Cette thèse a porté sur le développement de méthodes génériques de reconstruction de réseaux métaboliques à l’échelle génomique, c’est-à-dire des cartes complètes de réactions biochimiques qui transforment des molécules en d’autres molécules, pour des organismes eucaryotes. Cette méthode a été appliquée à la reconstruction du premier réseau métabolique du modèle des algues brunes, Ectocarpus siliculosus, et a permis de mieux comprendre la biologie et l’histoire évolutive des algues. Ce travail est ainsi naturellement interdisplinaire : pour réaliser la chaine complète d’analyse et d’interprétation, il a été né- cessaire de proposer des contributions en informatique, bioinformatique, et biologie. Classiquement, la reconstruction d’un réseau métabolique s’articule en trois points : la création d’une ébauche métabolique à partir des différentes informations comprises dans le génome, la complétion de cette ébauche métabolique pour être en accord avec les connaissances biologiques et enfin la vérification du résultat obtenu. Ces travaux ont mis en évidence que les différentes approches de reconstruction existantes ne pouvaient pas s’appliquer aux espèces eucaryotes non classiques à cause de deux écueils majeurs. Tout d’abord les connaissances sur les espèces non classiques sont trop éparses pour reconstruire une ébauche métabolique correcte permettant une complétion manuelle. Pour palier à cette difficulté, nous nous proposons d’étudier un problème d’optimisation combinatoire qui permet de formaliser la question de la complétion automatique d’un réseau. Pour résoudre ce problème combinatoire, l’objectif de ce document sera de tirer profil d’un paradigme de programmation par contraintes relativement récent, la Programmation par Ensemble Réponse (ou Answer Set Programming, ASP). Une modification d’un modèle existant en ASP sera proposée pour améliorer la pertinence biologique de la modélisation et rendre la résolution efficace et applicable à l’échelle des applications visées. Plus généralement, la question de la pertinence biologique du modèle sous-jacent au problème tel que formalisé sous sa forme combinatoire fait l’objet d’une attention toute particulière. D’autre part, ce travail de thèse s’est heurté à la nécessité de travailler avec des sources de données très différentes pour permettre la reconstruction d’un réseau. L’utilisation de ces sources multiples et hétérogènes nécessite de travailler sur leur unification avant et pendant leur intégration dans le réseau. Il s’avère également nécessaire de traiter a posteriori les ré- sultats des méthodes automatiques de reconstruction pour leur donner une signification biologique. Pour donner globalement du sens fonctionnel aux résultats des analyses automatiques, on s’appuiera à la fois sur des approches liées à la représentation des connaissances et aux études de séquences biologiques. Comme nous le verrons, ces apports méthodologiques ont permis de développer un pipeline de reconstruction de réseaux métaboliques s’appuyant sur un ensemble de données biologiques telles que des données génomiques, transcriptomiques ou de profilage méta- 56 Introduction bolique. Ce pipeline a permis de reconstruire le premier réseau métabolique du modèle des algues brunes, Ectocarpus siliculosus. Cependant, sa valeur ajoutée réside aussi dans son exploitation dans le monde de la biologie. Ainsi, nous détaillerons comment l’étude du ré- seau a permis, en collaboration avec la station biologique de Roscoff, de mieux comprendre la biologie de cette algue, notamment sur deux aspects : une annotation de nouveaux gènes ou une réannotation de gènes, et une meilleur compréhension de l’histoire évolutive et du métabolisme de cette algue. Une fois cette preuve de concept réalisée pendant la thèse sur cette algue brune, la méthode proposée est actuellement en cours d’application et d’amélioration en utilisant d’autres organismes, ce qui ouvre la voie à différentes perspectives de nature inforamtique, bio-informatique et biologiques.Chapitre 1 État de l’art. Reconstruction de réseaux métaboliques et applications à des modèles d’algues Dans ce chapitre de bibliographie, nous allons présenter une introduction aux diffé- rentes problématiques informatique et bioinformatique liées à la reconstruction de réseaux métaboliques. Nous nous concentrerons en particulier sur les questions d’optimisation, qu’elle soit combinatoire ou linéaire, et sur les questions liées à la représentation des connaissances sous-jacentes dans cette problématique. En particulier, ces questions seront abordées en ayant à l’esprit des applications sur des organismes eucaryotes non classiques, tels que les algues brunes qui seront notre modèle d’application. Dans ce chapitre, nous commencerons par une étude globale de la biologie des systèmes dans la partie 1.1 avant de se concentrer sur les réseaux métaboliques et les études possibles à partir de ceux-ci (partie 1.2). Nous présenterons ensuite les différentes méthodes existantes de reconstructions de réseaux métaboliques dans la partie 1.3. Nous nous concentrerons alors sur une étape cruciale de reconstruction de réseaux métaboliques, qui sera particulièrement étudiée dans cette thèse : la complétion des réseaux métaboliques (partie 1.4). Cette thèse s’attachant plus particulièrement au développement du réseau métabolique d’une algue brune, Ectocarpus siliculosus, nous verrons enfin les différentes reconstructions de réseaux métaboliques ayant eu lieu jusqu’à présent chez des algues dans la partie 1.5. 1.1 Biologie des systèmes Depuis les années 1990, les données de biologie moléculaire s’accumulent avec le développement des techniques dites "omiques" [Pal02]. La granularité et la quantité de données produites permet aujourd’hui d’étudier les systèmes biologiques à un niveau beaucoup plus fin qu’au 20ème siècle, au moment où Jacob et Monod décrivaient le fonctionnement de l’opéron lactose et les mécanismes de régulation géniques[JM61]. Pour les espèces les plus étudiées (commeEscherichia coli, la drosophile, la souris, l’humain ou encore Arabidopsis thaliana) et de plus en plus pour les espèces non classiques, nous possédons actuellement l’ensemble du génome, du transcriptome, du protéome et du 78 État de l’art métabolome, un des séquençages de génome le plus connu étant bien évidemment celui du génome humain [LLB+01]. Le domaine de la biologie des systèmes s’est naturellement développé pour permettre d’intégrer l’ensemble de ces connaissances par des approches informatiques et mathématiques. L’objectif est de modéliser in silico la réponse des diffé- rentes espèces à différentes perturbations génétiques ou environnementales en ne limitant plus les études à l’effet d’un seul gène ou d’une protéine, mais à l’étude du comportement d’une cellule dans son ensemble, voire à moyen terme d’un organe ou d’un organisme entier. [Kit01] défini quatre points essentiels à l’étude de systèmes biologiques par la biologie des systèmes : la conception du système étudié, sa structure, sa dynamique et enfin le contrôle de ce système. Si l’étude fine de la dynamique et le contrôle d’un modèle semblent a priori les plus intéressants pour analyser la réponse globale d’un système à des modifi- cations internes et/ou externes, les deux premiers points sont tout aussi intéressants à étudier. Ils sont non seulement indispensables dans le processus d’analyse mais intéressants en eux-mêmes. En effet, la reconstruction et l’étude "structurelle" du système étudié sont indispensables à des études plus fines. Mais au delà de ça, la reconstruction même du système à étudier apporte des connaissances sur l’organisme ou les organismes étudiés via l’étape compliquée de représentation des connaissances nécessaire. De même l’étude de la structure du système (la plupart du temps sous forme de réseau) peut apporter de nombreuses nouvelles connaissances. Désormais les différents composés d’un système biologique (ADN, ARN, protéines, ...) ne seront plus étudiés un à un mais tous ensemble. L’interaction entre ces différentes entités sera la pierre angulaire de la biologie des systèmes. Nous pouvons décomposer ces interactions en trois types de réseaux, comme illustré dans la Figure 1.1 [MCR+11] : – Les réseaux de signalisation [JLI00] vont permettre de décrire l’ensemble des mécanismes qui permettent à une cellule de répondre rapidement aux modifications de son environnement en transmettant rapidement de l’information au sein de la cellule. Cela se fera notamment par l’activation de différents récepteurs membranaires qui pourront conduire à l’activation ou l’inhibition de gènes. – Les réseaux de régulation génique [DL05] vont regrouper l’ensemble des interactions relatives à la régulation de l’expression des gènes d’une espèce. Cette régulation pourra avoir en particulier lieu via des facteurs de transcription. La transcription de ces facteurs de transcription sera elle-même régulée par d’autres protéines. – Les réseaux métaboliques vont regrouper l’ensemble des réactions métaboliques pré- sentes au sein d’un système, c’est-à-dire des transformations chimiques de molécules au sein de l’organisme. Ces réactions sont catalysées par des enzymes qui sont des protéines codées par des gènes. Dans son article de référence, Kitano [Kit01] introduit quatre points essentiels à l’étude de systèmes biologiques : étudier la structure du système, puis sa dynamique, le contrôler, et enfin concevoir des systèmes minimaux vérifiant des propriétés fixées. Pour mieux comprendre ces aspects, nous pouvons nous référer à une analogie entre un réseau biologique et un réseau routier. Ainsi nous pouvons analyser la structure d’un graphe découlant de l’analyse de données biologiques de la même manière que nous pouvons analyser une carte routière. Il est par exemple possible de chercher le chemin le plus court entre deux endroits (molécule ou ville), de regarder les nœuds du réseau qui sont les plus connectés au reste du réseau (qui pourraient correspondre à une molécule ou une ville plus importante que les autres), etc.Biologie des systèmes 9 FIGURE 1.1: Représentation des principaux processus se produisant dans une cellule. La cellule reçoit des signaux extérieurs qui engendrent des cascades de signalisation à l’inté- rieur de la cellule. Ces signaux et les cascades induites sont étudiées dans les réseaux de signalisation. Ce signal arrive jusqu’au noyau et engendre une régulation de l’expression des gènes. Cette régulation sera étudiée par les réseaux de régulation géniques. Les gènes sont ensuite transcrits en ARN messagers qui pourront être traduits en protéines. Certaines de ces protéines (appelées enzymes) pourront catalyser des réactions métaboliques qui transformeront les molécules présentes à l’intérieur de la cellule ou importées de l’extérieur. Ces réactions sont étudiées dans les réseaux métaboliques.10 État de l’art Les différents types de réseaux mentionnés ci-dessus ont fait l’objet d’analyses statiques variées, mettant en évidence des structures différentes en fonction de la nature des ré- seaux, ainsi que des motifs caractéristiques. Nous pouvons par exemple citer les travaux de [JTA+00] qui ont montré que les réseaux métaboliques semblent suivre une structure sans échelle, faisant de ces réseaux des réseaux petit monde. Si une structure globale semble exister dans les réseaux biologiques, il en va de même à un niveau plus précis. Ainsi [Alo07] a distingué et classé de nombreux motifs revenant souvent dans les réseaux biologiques. Nous pouvons aussi étudier un réseau routier de manière dynamique en ne regardant plus seulement la structure de la carte routière mais les différentes entités qui utilisent ce ré- seau et les flux qui y circulent. Certaines sont relativement grosses et lentes, et se déplacent habituellement entre des endroits précis prévus à l’avance. D’autres seront plus petites et imprévisibles. L’étude des interactions au cours du temps entre ces différents acteurs permettra de mieux comprendre la réalité d’un réseau routier, comparé à la seule étude de la structure des routes. On pourra d’abord prédire l’importance des flux qui passent sur le ré- seau routier, identifier les dépendances entre ces flux, y compris éloignés, et l’impact de modifications locales sur l’état global du trafic. On pourra ensuite identifier les points de contrôle de ce trafic pour mieux le réguler ou optimiser son comportement. Des méthodes très variées ont été développées pour étudier la dynamique des réseaux biologiques, mé- thodes qui peuvent être numériques, qualitatives, ou stochastiques en fonction des informations disponibles sur la réponse du système et de la nature des interactions en jeu. Nous pouvons par exemple citer les travaux de Cornish-Bowden sur les cinétiques enzymatiques [CB79] permettant aux modélisations continues du métabolisme de se développer. Cette thèse va se concentrer sur la toute première étape de ce processus, la reconstruction de cartes métaboliques, en particulier chez des espèces non classiques pour lesquelles la quantité d’information en notre possession est limitée. 1.2 Réseaux métaboliques 1.2.1 Définition Un réseau métabolique est défini comme un graphe dirigé biparti : – un des ensembles de nœuds est constitué par des métabolites au sein de la cellule, – l’autre ensemble nœuds correspond à des réactions métaboliques, qui tranforment un certain nombre de métabolites en d’autres métabolites, souvent sous l’action d’un catalyseur appelé enzyme. La réaction peut-être unidirectionnelle (irréversible) ou bidirectionnelle (réversible), en fonction des conditions intra-cellulaires. La figure 1.2 montre une représentation graphique de deux réactions, la première (R1) transforme une molécule A en une molécule B et est irréversible. La seconde (R2) réalise une transformation conjointe des molécules B etC pour produire D. Cette seconde réaction est réversible. Ces réactions sont habituellement associées à des gènes via une GPR (Gene Protein Relation). Ainsi, chaque réaction est associée à une ou plusieurs enzymes qui vont catalyser les réactions présentes dans le réseau. Ces enzymes sont elles-mêmes obtenues via la transcription, la traduction, et éventuellement la modification post-transcriptionnelle de un ou plusieurs gènes. De manière générale les enzymes ne sont pas représentées dans les réseaux métaboliques. Le lien est directement fait entre une réaction et un ou plusieurs gènes. LesRéseaux métaboliques 11 A R1 B R2 D C FIGURE 1.2: Représentation graphique d’un réseau métabolique composé de deux réactions. La première réaction (R1) est irréversible et produit B à partir de A. La seconde (R2) transforme B + C en D de manière réversible. éventuelles modifications post-traductionnelles influençant l’activité des enzymes ne sont pas prises en compte à ce niveau mais pourront être ajoutées directement dans la structure du réseau ou en tant que surcouches de celui-ci. Durant les cinquante dernières années, les réseaux métaboliques ont été exploités dans de nombreux domaines de la biologie. Nous pouvons en citer deux particulièrement notables. En biologie évolutive, l’étude de réseaux métaboliques, souvent sous la forme de structure de graphe, a permis une meilleure compréhension de la biologie et de l’histoire évolutive des organismes étudiés. Dans ces approches, des alignements de séquences permettent de suggérer une fonction de nature enzymatique pour un ensemble de gènes donnés. La comparaison des voies métaboliques entre différentes espèces et l’identification d’enzymes spécifiques aux espèces étudiées permet de comprendre globalement l’histoire des espèces ciblées d’un point de vue fonctionnel [FMP03]. Inspiré par les biotechnologies, l’étude des réseaux métaboliques a fait l’objet d’études extrêmement nombreuses durant les 20 dernières années, en particulier des dépendances induites par les conservations de masse et les stœchiométries des réactions. Un exemple phare est l’étude de la régulation du métabolisme des globules rouges humains réalisé par [PRP+03], de même que tous les travaux sur le fonctionnement optimal du métabolisme d’Escherichia Coli. Ces approches s’appuient sur la décomposition en modes élémentaires de voies métaboliques et des techniques d’optimisation linéaire [SDF99, PVPF04]. On se dirige maintenant vers la biologie synthétique et la production contrôlée de métabolites d’intérêt, par exemple pour l’agroalimentaire ou l’industrie pétrolière [BS05, PW09]. Dans cette direction, de nouvelles questions d’optimisation apparaissent actuellement, telles que le calcul de "capacitance" permettant d’identifier les réactions chimiques à ajouter dans un réseau métabolique pour maximiser la production d’un métabolite donné [LBG+12]. Durant cette thèse, nous nous concentrerons essentiellement sur le premier de ces deux points, en étudiant les points informatiques bloquants pour la reconstruction automatique de réseaux métaboliques pour des organismes non-classiques, et ce qu’on peut en déduire en terme de nouvelles connaissances biologiques sur l’espèce considérée. Les méthodes d’optimisation linéaire utilisées dans les approches de nature biotechnologiques seront plutôt utilisées comme validation des résultats. L’exploitation et le raffinement des réseaux d’espèces non-classiques pour permettre leur étude et leur contrôle sont pour l’instant envi-12 État de l’art sagé dans le cadre de perspectives. Les questions que nous allons développer vont porter sur les questions d’optimisation combinatoire et les questions de représentation des connaissances qui permettent de reconstruire un réseau métabolique. 1.2.2 Fonctionnalité d’un réseau métabolique : Analyse en Balance de Flux (ou FBA : Flux Balance Analysis) Pour tester et valider les méthodes qui vont être discutées dans cette thèse, nous utiliserons principalement un critère de fonctionnalité quantitative. Dans ce but, nous introduisons ici les différents éléments permettant de modéliser cette fonctionnalité. La FBA est une technique d’analyse quantitative de la fonctionnalité de réseaux, et en particulier de réseaux métaboliques. Elle va permettre de simuler le métabolisme d’une cellule et de connaître la distribution des flux de matière passant à travers les réactions lorsqu’un modèle est à l’état stable. Le calcul est très rapide même pour de très grands réseaux. Cette technique permet de faire de l’ingénierie, de simuler la réponse des cellules à diffé- rentes conditions, des délétions de gènes, etc. La FBA se différencie des méthodes classiques d’étude de réseaux utilisant des systèmes d’équations différentielles par la rapidité de calcul et le peu d’informations nécessaire aux simulations. Ainsi il n’y a pas besoin de connaître les constantes cinétiques des enzymes ou encore la concentration des métabolites internes au système pour pouvoir effectuer des simulations. Cette approche est basée sur l’hypothèse que le système métabolique est à un état stationnaire, qui implique que des cellules en culture dans des conditions données utilisent l’ensemble des nutriments à leur disposition pour créer de la biomasse. Étant donné qu’il n’y a ni création, ni de perte de matière, les entrées dans le modèle (les nutriments) correspondront parfaitement à la production de biomasse qui est représentée par les métabolites de l’organisme. D’un point de vue mathématique, le réseau sera représenté par une matrice stœchiométrique S formée de n lignes et m colonnes. Chaque ligne représentera un métabolite et chaque colonne une réaction. Les chiffres présents dans cette matrice correspondront aux coefficients stœchiométriques des réactions. Par exemple les réactions : R1 : 2A +3B → 2C +D R2 : 3C +2A → 4E correspondent à la matrice stœchiométrique représentée en table 1.1. TABLE 1.1: Exemple de matrice stœchiométrique R1 R2 A -2 -2 B -3 0 C 2 -3 D 1 0 E 0 4 Les réseaux métaboliques mettent en jeu un grand nombre de réactions (de l’ordre du millier), et chaque réaction implique en général moins d’une dizaine de métabolites diffé- rents. De plus, dans un réseau métabolique, le nombre de métabolites correspond environRéseaux métaboliques 13 à l’ordre de grandeur de la taille du réseau (de l’ordre du millier de métabolites). À partir de là, il ressort immédiatement que la matrice stœchiométrique est une matrice creuse, contenant moins d’une dizaine de valeurs non nulles par colonne. Une des hypothèses fondamentale de la FBA consiste à considérer que lors de l’étude du système, celui-ci se situe à "un état stationnaire". D’un point de vue mathématique, cela se représente par une contrainte simple : S.v = 0, avec S la matrice stœchiométrique, v un vecteur de flux dont la taille fait le nombre de réactions dans le modèle, et vi le flux passant dans une réaction i. Ce flux correspond à la quantité de matière qui passe à travers chaque réaction pour que le système soit à l’état stable. Il est bien évidemment possible d’avoir plusieurs vecteurs v qui satisfont cette contrainte. Une fois cette contrainte émise, on va pouvoir travailler sur le reste du système. Pour cela, on aura un autre type de contrainte : les bornes de flux pour chaque réaction. En effet, chaque réaction ne pourra avoir qu’une quantité de flux comprise entre une borne infé- rieure et une borne supérieure qui passera à travers elle. Typiquement, une réaction irré- versible aura par exemple toujours une borne inférieure qui sera positive ou nulle et une bonne supérieure positive. D’autre part, une réaction réversible aura forcément une borne inférieure négative et une borne supérieure positive. 1.2.3 Optimisation d’une fonction objectif Une fois ces deux contraintes posées (état stable et bornes sur les flux des réactions), reste à savoir ce que l’on souhaite modéliser. Habituellement, le choix se porte sur une maximisation de la biomasse. Le concept de "biomasse" représente le poids sec d’une cellule, c’est à dire la somme des quantités de chacun de ses composants les plus importants. Elle se calcule sous la forme d’une combinaison linéaire Z = c T v dépendant des flux traversant le réseau. Le vecteur Z peut être estimé par des techniques de biologie permettant de mesurer la concentration des composés au sein d’une cellule, ou il peut être estimé en se basant sur des biomasses précédemment définies chez des espèces proches physiologiquement. Lors de l’étude, cette fonction de biomasse sera maximisée. Au final le problème peut être représenté de la manière suivante (pour une matrice S de taille N xM) : Maximiser Z = c T v Avec : X M j=1 Si j v j = 0,∀i ∈ 1..N v min j ≤ v j ≤ v max j ,∀j ∈ 1..N Un vecteur de flux v qui permettra d’obtenir l’ensemble des métabolites de la fonction objectif dans les proportions voulues sera produit par les algorithmes de résolution de ce problème. Le vecteur c est alors un vecteur de poids qui représente la proportion dans laquelle chaque réaction de v participe à l’objectif. Étant donné qu’habituellement une seule réaction (la réaction de biomasse) est comprise dans l’objectif, le vecteur c est entièrement14 État de l’art constitué de 0 et de un seul 1 à la position d’intérêt. Il est cependant possible d’optimiser une combinaison de plusieurs réactions Différents outils existent pour réaliser des études de FBA sur des réseaux métaboliques. Le plus connu et le plus utilisé est la Cobra Toolbox [BFM+07] pour Matlab. Si l’outil est disponible librement, il est à noté qu’il tourne sur une plateforme (Matlab) qui n’est ni libre ni gratuite, bien que présente dans la plupart des laboratoires d’informatique et de bioinformatique. En revanche, la plupart des laboratoires de biologie ne sont pas équipés de cette plateforme, ce qui limite son utilisation dans ces laboratoires. On peut en revanche signaler qu’une implémentation en Python de la Cobra Toolbox existe, appelée CobraPy [ELPH13], elle aussi totalement libre et gratuite et ne nécessitant pas l’installation préalable de Matlab ou de solveur payants. Les résultats prédits par les analyses basées sur ces concepts sont nombreux et variés. Nous pouvons par exemple citer la prédiction du comportement d’un système à l’inactivation d’un gène [EP00, BES+01], la prédiction de croissance cellulaire [EIP01, IEP02], la modification de la performance d’un réseau métabolique suite à une déletion ou une addition de gènes [BVM01] ou encore la suggestion d’inactivation de gènes afin d’augmenter la production de métabolites [BPM03, PBM04]. En ce qui concerne le sujet de cette thèse (reconstruction des réseaux métaboliques), ces méthodes sont utilisées principalement pour vérifier la fonctionnalité des réseaux reconstruits, via la définition d’une fonction de biomasse ou de cibles métaboliques prédéfinies. 1.2.4 Impact de la structure du réseau L’analyse de réseaux par balance des flux se heurte aujourd’hui à un problème : l’utilisation de la stœchiométrie des réactions. En effet, si celle-ci est déterminante dans l’analyse, elle n’est pas toujours connue précisément et peut même, parfois, ne pas être déterminable. Nous pouvons par exemple citer les réactions de production de certaines molé- cules telles que les acides gras qui, en s’allongeant, produisent toujours la même molécule (f at t y aci d + molecule → same f at t y aci d). Ce genre de réactions seront souvent retirées du système et pas prise en compte. De plus une des hypothèses de base de la FBA consiste à avoir un système à l’état stable. Or on ne peut considérer qu’un système biologique est à l’état stable uniquement quand celui-ci n’est pas perturbé. Ainsi l’utilisation de la FBA pour étudier des modifications de l’environnement, de conditions de stress ou de systèmes de régulation peut se trouver limitée [RC09]. Dans le même esprit, on note une certaine instabilité des tests de fonctionnalité. Les implémentations et les vérifications inclues dans les suites logicielles liées aux réseaux mé- taboliques ne sont pas toujours explicites et peuvent procéder à des transformations cachées qui peuvent avoir un impact important sur la fonctionnalité des réseaux. Ainsi, le ré- seau EcoCyc [KCVGC+05] présent dans la banque MetaCyc est présenté comme fonctionnel par le logiciel Pathway Tools, qui inclut sa propre vérification de production de biomasse par FBA [LKTK12]. Or, si nous récupérons le réseau directement depuis Pathway Tools pour tenter d’appliquer des techniques de FBA sur ce modèle, en utilisant la même fonction de biomasse, le réseau devient étrangement non fonctionnel. Il semblerait que Pathway Tools procède à des opérations de dégénéricisation de réactions qui transforment complètement le résultat des analyses.Pipeline de reconstruction d’un réseau métabolique 15 De nombreuses méthodes ont été dérivées du cadre du FBA pour étudier les réseaux métaboliques. On se référera par exemple à la figure 1.3 tirée de [PRP04] pour un panorama de ces méthodes. Parmi ces méthodes, nous voudrions insister sur une approche particulièrement utile pour vérifier la fonctionnalité des réseaux et le rôle de certaines réactions en leur sein, l’analyse de variabilité de flux (figure 1.3, 11). 1.2.5 Vérification de la fonctionnalité d’un réseau : Flux Variability Analysis Lors de l’utilisation de techniques de FBA, nous obtenons habituellement une solution qui optimise une fonction objective, comme par exemple une fonction de biomasse. Cependant, il peut exister des optimaux alternatifs à cette solution. L’analyse de variabilité de flux (ou Flux Variability Analysis, FVA) [GT10] va permettre d’étudier ces optimaux alternatifs. Nous pourrons ainsi obtenir les flux minimaux et maximaux possibles pour chaque réaction tout en maintenant la fonctionnalité du réseau. Cette fonctionnalité globale pourra être soit complète (on garde le même optimum), soit suboptimale si on ne garde qu’une partie de l’optimum. L’étude d’un réseau par FBA (décrite précisément au-dessus) nous permet d’obtenir la valeur de l’optimum souhaité. Une fois cet optimum fixé, la FVA nous permettra de connaitre les plages de flux pour chaque réaction qui permettent d’obtenir cet optimum. On pourra ainsi définir différents types de réactions : – Les réactions obligatoires : la plage de flux passant à travers elles sera toujours positive – Les réactions bloquées : les flux seront nuls dans tous les scénarios possibles – Les réactions "accessoires" : les flux pourront être nuls ou non Les études de FVA peuvent se faire soit en conservant l’optimum inchangé, soit en prenant des sous-optimums. D’un point de vue mathématique, on aura donc pour les plages de flux correspondant parfaitement à l’objectif Z : Maximiser ou minimiser v j Avec : Sv = 0 v min ≤ v ≤ v max Z t v = Zob j Pour obtenir les plages de flux correspondant à des solutions sous-optimales, il suffit de remplacer Z t v = Zob j par Z t v ≥ Zob j .γ avec γ ∈ [0;1] (plus gamma est proche de 1, plus on est proche de l’optimum). Différentes implémentations de la FVA existent, en utilisant des plateformes telles que Matlab ou fonctionnant par elles-mêmes. Nous pouvons notamment citer fastFVA [GT10] compilé en tant que programme Matlab et qui peut utiliser les solveurs GLPK ou CPLEX. 1.3 Pipeline de reconstruction d’un réseau métabolique Le développement des techniques de séquençage haut débit et leur coût de plus en plus faible, couplé au développement des autres méthodes "omiques" permettant d’obtenir de16 État de l’art Application of constraints Energy and biomass constituents Network reconstruction Allowable solution space Genomics, physiology and biochemistry v3 v2 v1 15 Sampling v1 min v1 max v2 max v2 min 11 Flux variability vnet = 0 9 Energy balance analysis Line of optimality 6 Phenotypic phase plane analysis Cj Ci 16 Bi-linear concentration cone 1 Identifying optimal solutions An optimal solution 2 Robustness Flux through vi Maximal biomass yield Time (hours) Biomass (g L–1) 3 Dynamic simulations Model predictions Experimental data 4 Convex basis vectors 7 Alternate optima Equivalent optimal solutions 8 Regulatory constraints EP1 EP2 EP3 EP4 α-weightings 12α-spectrum 13 OptKnock Biomass production Metabolite production Knockout Wild type 5 Gene deletions 10 Finding objective functions 14 Flux coupling Uncoupled Fully coupled Partially coupled Directionally coupled vi /vj a c b FIGURE 1.3: Les méthodes classiques à base de contraintes pour l’analyse de réseaux mé- taboliques [PRP04]. La construction de l’espace des solutions est représentée au centre, les méthodes d’analyse de cet espace des solutions sont représentées autour.Pipeline de reconstruction d’un réseau métabolique 17 grandes quantités de données, nous permet aujourd’hui d’avoir de grandes quantités d’informations. Ces informations, combinées entre elles, sont aujourd’hui suffisantes pour reconstruire des réseaux métaboliques. Ces réseaux peuvent être de taille et de qualité très variables. Dans un récent article [MNP14] les réseaux métaboliques existant en février 2013 ont été étudiés, notamment du point de vue de la couverture phylogénétique des espèces modélisées. La figure 1.4 présente un arbre de l’ensemble de ces reconstructions. Il en ressort qu’un très grande majorité des réseaux métaboliques à l’échelle génomique appartiennent au règne bactérien, et notamment aux protéo-bactéries. À l’inverse les eucaryotes et les archaea-bactéries sont sous représentées, avec de nombreux phylum totalement non représentés. Deinococcus-Thermus Nitrospirae Caldiserica Armatimonadetes Dictyoglomi Elusimicrobia Gemmatimonadetes Aquif cae Deferribacteres Chrysiogenetes Thermodesulfobacteria Planctomycetes Spirochete Aminanaerobia Xenarchaea Nanoarchaeota Ignavibacteria Aigarchaeota Chlorobi Tardigrada Onychophora Echinoderms Xenoturbellida Hemichordata Chaetognatha Basidomycota Chromerida Firmicutes (8) Actinobacteria (6) Proteobacteria (32) Cyanobacteria (3) Tenericutes (2) Thermotogae (1) Chlorof exi (1) Bacteroidetes (1) Crenarchaeota (1) Euryarchaeota (4) Arthropoda (2) Streptophyta (2) Chlorophyta (2) Apicomplexa (2) Euglenozoa (1) Ascomycota (8) Chordata (2) Bacteria Archaea Eukaryota { Unrepresented phyla: No metabolic reconstruction exists Blue: Reconstructed phylum (count of metabolic reconstructions) Red: Unrepresented phylum (no metabolic reconstructions exist) P. aeruginosa P. putida B. aphidicola Y. pestis S. typhimurium E. coli K. pneumoniae S. glossinidius A A. sp ADP1 . baumannii AYE H. inf uenza V. vulnif cus C. salexigens S. oneidensis F. tularensis R. etli S. meliloti M. extorquens K. vulgarum Z. mobilis G. sulfurreducens P. propionicus C. jejuin H. pylori B. cenocepacia C. necator N. meningitdis i L. lact si L. plantarum S. aureus B. subtilis C. beijerinickii C. acetobutylicum R. erythropolis C. glutamicum M. tuberculosis S. erythraea A. balhimycina S. coelicolor A. platensis P. gingivalis T. maritima S. pombe A. nidulans A. oryzae A. niger S. stipitis Y. lipolytica S. cerevisiae K. pastoris H. sapiens D. melanogaster C. hominis P. falciparum A. thaliana Z. mays C. reinhardtii L. major N. pharaonis H. salinarum M. acetivorans M. barkeri S. solfataricus M. succiniciprod. C. thermocellum S. thermophilus R. sphaeroides G. metallireducens R. ferrireducens Cyan. AT Syn. PCC 6803 CC 51142 M. genitalium M. pneumoniae D. ethenogenes M. musculus P. carbonicus FIGURE 1.4: Couverture phylogénétique des reconstructions de réseaux métaboliques en février 2013[MNP14]. Pour tenter d’ homogénéiser les reconstructions, Thiele et Palsson [TP10] ont décrit une méthodologie globale de reconstruction de réseaux métaboliques. La figure 1.5 tirée de cet article résume l’ensemble de ce processus, qui sera décrit plus précisément par la suite. Une analyse proposée par [HR14] reprend cette méthodologie en étudiant des outils de reconstruction de réseaux métaboliques bactériens existants et réalisant plus ou moins automati-18 État de l’art quement certaines des étapes de reconstruction. 1. Draft reconstruction 1| Obtain genome annotation. 2| Identify candidate metabolic functions. 3| Obtain candidate metabolic reactions. 4| Assemble draft reconstruction. 5| Collect experimental data. 2. Refinement of reconstruction 6| Determine and verify substrate and cofactor usage. 7| Obtain neutral formula for each metabolite. 8| Determine the charged formula. 9| Calculate reaction stoichiometry. 10| Determine reaction directionality. 11| Add information for gene and reaction localization. 12| Add subsystems information. 13| Verify gene−protein-reaction association. 14| Add metabolite identifier. 15| Determine and add confidence score. 16| Add references and notes. 17| Flag information from other organisms. 18| Repeat Steps 6 to 17 for all genes. 19| Add spontaneous reactions to the reconstruction. 20| Add extracellular and periplasmic transport reactions. 21| Add exchange reactions. 22| Add intracellular transport reactions. 23| Draw metabolic map (optional). 24−32| Determine biomass composition. 33| Add biomass reaction. 34| Add ATP-maintenance reaction (ATPM). 35| Add demand reactions. 36| Add sink reactions. 37| Determine growth medium requirements. 3. Conversion of reconstruction into computable format 38| Initialize the COBRA toolbox. 39| Load reconstruction into Matlab. 40| Verify S matrix. 41| Set objective function. 42| Set simulation constraints. 4. Network evaluation 43−44| Test if network is mass-and charge balanced. 45| Identify metabolic dead-ends. 46−48| Perform gap analysis. 49| Add missing exchange reactions to model. 50| Set exchange constraints for a simulation condition. 51−58| Test for stoichiometrically balanced cycles. 59| Re-compute gap list. 60−65| Test if biomass precursors can be produced in standard medium. 66| Test if biomass precursors can be produced in other growth media. 67−75| Test if the model can produce known secretion products. 76−78| Check for blocked reactions. 79−80| Compute single gene deletion phenotypes. 81−82| Test for known incapabilites of the organism. 83| Compare predicted physiological properties with known properties. 84−87| Test if the model can grow fast enough. 88−94| Test if the model grows too fast. Data assembly and dissemination 95| Print Matlab model content. 96| Add gap information to the reconstruction output. FIGURE 1.5: Vue d’ensemble de la procédure de reconstruction de réseaux métaboliques [TP10]. Les étapes 2 à 4 seront itérées jusqu’à ce que les prédictions réalisées par le réseaux métaboliques soient en accord avec les observations biologiques. L’analyse de cette référence permet de dégager quatre étapes majeures pour ce type de reconstruction : 1. La construction d’une ébauche métabolique 2. Une amélioration de cette ébauche 3. La conversion du réseau en un format analysable par des méthodes automatiques 4. L’évaluation de la qualité du réseau final Ces quatre étapes, si elles ont été bien exécutées et ont conduit à un réseau de bonne qualité, peuvent être suivies de simulations et de prédictions. Nous allons maintenant décrire plus en détail chacune de ces étapes. 1.3.1 Construction d’une ébauche métabolique La première étape de la reconstruction d’un réseau métabolique consiste en la construction d’une ébauche ou esquisse (en anglais, draft) de réseau métabolique. Cette ébauche correspond à un réseau de réactions métaboliques brut, qui est le plus souvent obtenu automatiquement par extraction d’informations dans les annotations d’un génome ou par l’étude de réseaux métaboliques d’espèces cousines. En particulier, certaines réactions que l’on sait être présentes, i.e. fonctionnelles, chez l’espèce étudiée pourront être absentes ou "erronées" dans cette ébauche du fait d’annotations manquantes (ou de mauvaises annotations) des gènes.Pipeline de reconstruction d’un réseau métabolique 19 La réalisation de cette étape s’appuie principalement sur une annotation fonctionnelle précise du génome étudié, ou encore du transcriptome ou du protéome. Cette étape vise à proposer une fonction potentielle à chaque gène d’intérêt présent dans le génome. Cela se fait généralement en utilisant différentes informations comme : – Le numéro E.C. – Les termes GO – Des mots clefs – Des noms génériques de réactions Une fois que le génome est suffisamment annoté, il est, en théorie, possible de connaître précisément les réactions métaboliques associées à chaque annotation et donc à chaque gène connu. Les bases de données de réactions métaboliques telles que KEGG [KGS+14] ou MetaCyc [CAB+14] contiennent des informations détaillées sur ces réactions. Ces bases de données ont, en outre, le gros intérêt de posséder des identifiants internes cohérents à travers les différentes réactions. Ainsi, une molécule donnée (comme le β-D-glucose par exemple) possédera toujours le même identifiant ("GLC" pour MetaCyc, "C00221" pour KEGG) dans toutes les réactions produisant ou consommant cette molécule. Cette cohé- rence des identifiants permettra de construire des réseaux métaboliques où les différentes réactions seront interconnectées entre elles grâce à ces métabolites. La qualité d’une ébauche métabolique, en particulier pour les espèces non modèles, va ainsi dépendre directement de l’annotation du génome. La qualité d’une annotation va, elle, dépendre de la façon dont elle a été réalisée. En effet, il est possible de distinguer deux classes d’annotations fonctionnelles : celles réalisées manuellement (ou validées manuellement) et celles ne reposant que sur une découverte automatique de la fonction des gènes. Les annotations manuelles, bien que moins nombreuses et plus longues à réaliser que les annotations automatiques, sont normalement de bien meilleure qualité. Ainsi plus un gé- nome sera annoté manuellement, meilleure devrait être l’ébauche métabolique. Différentes méthodes se basent en parallèle sur les connaissances sur le métabolisme d’espèces cousines déjà connues. Dans ces cas là, on construit des modèles de références en extrayant de l’information sur le métabolisme d’une sélection d’espèces. Différents scores d’alignement permettent, soit à priori, soit à posteriori, de vérifier si les différentes réactions sélectionnées doivent être intégrées au réseau de l’espèce ciblée. Cela a par exemple été utilisé lors de la reconstruction d’un réseau compartimenté et tenant compte de la spécificité des tissus chez Arabidopsis thaliana [MOMM+12]. Cependant, comme noté par Monk, Nogales et Palsson dans [MNP14], l’utilisation de réseaux métaboliques et d’annotations pour des espèces voisines perd de son efficacité au fur et à mesure que s’accroît la distance phylogénétique entre l’espèce cible et les espèces sur lesquelles les réseaux métaboliques dont on dispose sont de bonne qualité. Ce problème est d’autant plus important chez certains eucaryotes pour lesquels la couverture phylogéné- tique est faible, rendant la reconstruction de réseaux métaboliques chez ces phylum d’autant plus important (figure 1.6). Lors de la reconstruction de réseaux métaboliques, nous sommes confrontés à des problèmes importants concernant l’hétérogénéité des données. Un gros travail d’intégration de ces données précède obligatoirement la reconstruction de réseaux. Une fois la liste des réactions métaboliques à inclure dans un réseau établie, il convient de transformer cette liste en un fichier analysable par la plupart des méthodes informatiques. Le format préconisé pour les réseaux métaboliques est le format SBML (Systems20 État de l’art FIGURE 1.6: Limitations actuelles au développement rapide de la reconstruction de ré- seaux métaboliques. Les éventuels points à améliorer sont indiqués en gris, les méthodes à base de contraintes étant au centre des améliorations [MNP14].Pipeline de reconstruction d’un réseau métabolique 21 Biology Markup Language). Cette norme SBML n’est malheureusement pas suivie à la lettre par grand nombre d’outils ce qui rend l’étude des réseaux métaboliques compliquée d’un point de vue "formatage des données". De plus de nombreuses versions de la norme SBML existent et ne sont pas forcément compatibles entre elles, rendant d’autant plus difficile l’utilisation d’outils plus ou moins récents. Dans le cas des espèces non-classiques, nous avons été particulièrement confronté à la modélisation des réactions réversibles dans différentes études de cette thèse. Les discussions sur cette question seront détaillées dans la section 2.2.3. Par ailleurs, si les ébauches métaboliques sont créées par orthologie directe entre des enzymes connues chez des espèces modèles et un nouveau génome, il faut être capable de faire le lien entre une réaction associée à l’enzyme connue (pouvant provenir de KEGG, The SEED, ou les réseaux utilisés dans CobraToolBox) et une réaction dans les formats ciblés (MetaCyc par exemple). Ces liens entre bases de données de réactions sont extrêmement problématiques et sources d’imprécisions. Il existe cependant des méthodes pour établir du lien entre elles. Par exemple la base de données MetaCyc donne parfois des liens vers les réactions KEGG correspondantes. De plus, les numéros E.C. (lorsqu’ils sont précis) permettent de relier entre elles les différentes réactions, un numéro E.C. précis ne pouvant en théorie correspondre qu’à une seule réaction. Dans cette direction, différentes approches proposent de réconcilier les réactions métaboliques en fonction de différents critères et annotations, mais aucune n’est exhaustive. Différents outils existent déjà pour réaliser de telles réconciliations entre les différentes bases de données. Nous pouvons par exemple citer BridgeDb [vIPK+10], MetaMerge [CSH+12] ou encore MNXref [BBM+14]. L’outil MetaMerge, par exemple, devrait permettre de fusionner des réseaux métaboliques créés pour une même espèce à partir de différentes méthodes et bases de données. D’autre part MNXref est un outil permettant de faire le lien entre les différentes bases de données de réactions métaboliques telles que MetaCyc, KEGG et beaucoup d’autres. Tout ces outils se basent sur diffé- rentes informations pour réaliser l’homogénéisation entre les différentes bases de données telles que la nomenclature chimique des réactifs des réactions, des références croisées entre différentes bases de données, des noms ou synonymes, etc. Outre la nature des données rencontrées, leur qualité peut également être très hété- rogène. Les annotations, par exemple, sont à considérer avec précaution, notamment car certaines d’entre elles ne sont pas complètes (ex. : absence du numéro E.C.) ou parce que certains gènes ne sont pas annotés du tout. Ces situations représentent une source importante de faux négatifs et de faux positifs lors de la création de l’ébauche métabolique. Inversement, un gène entièrement annoté manuellement et possédant l’ensemble des élé- ments nécessaires pour une recherche automatique de la réaction associée sera extrêmement fiable. Il faut également faire attention au taux élevé de faux positifs générés par les recherches d’homologues à partir de profils HMMs (Hidden Markov Models, ou modèles de Markov cachés). Certains des profils sont en effet très génériques du fait de l’existence de certaines enzymes chez des organismes présents à travers l’ensemble de l’arbre du vivant, ce qui engendre parfois des signatures floues et donc des faux positifs lors de la recherche d’homologues. L’absence de cohérence entre les différents outils d’alignements [RSS01, LSR03] peut-être source d’erreur et nécessite de définir des scores de réconciliations tels que dé- crits, par exemple, dans [LDNS12].22 État de l’art 1.3.2 Raffinement de l’ébauche métabolique Le résultat de l’étape précédente est un ensemble de réactions qui sont reliées entre elles par les métabolites qu’elles partagent. Ces réactions ne correspondent pas forcément à l’ensemble de celles ayant lieu dans l’espèce étudiée du fait des erreurs et des manques dans l’annotation. Il faut donc une seconde étape pour améliorer la qualité du réseau, qui consiste à rajouter les réactions que l’on aurait pu manquer lors de la création de l’ébauche métabolique ainsi que les gènes qui pourraient y être associés. Pour réaliser cette étape, des connaissances biologiques qui ne seraient pas expliquées par le réseau actuel sont nécessaires. Pour cela, il est possible d’utiliser l’ensemble des mé- tabolites dont la présence dans l’organisme d’intérêt a été prouvé expérimentalement, notamment par du profilage métabolique. En effet, il apparaît évident que le réseau métabolique correspondant à cet organisme doit contenir les voies complètes nécessaire à la production de ces molécules. Nous nous concentrerons cependant ici sur l’exploitation de pro- fils métaboliques, puisqu’il s’agit de la base de la plupart des méthodes de reconstruction de réseaux métaboliques. Pour étudier leur productibilité, il faut connaître le milieu de croissance dans lequel l’organisme d’intérêt est cultivé. En effet, les cellules d’un organisme vont récupérer, dans ce milieu, tous les nutriments nécessaires à la croissance, et donc à la production de biomasse. Bien évidemment, plus l’information sur ce milieu de culture est grande, meilleure sera la reconstruction. Le cas parfait correspond à un organisme pouvant croître à différentes vitesses dans différentes conditions, et pour lequel la vitesse de consommation des différentes molécules du milieu de culture est connue. Si l’organisme n’est pas cultivable en laboratoire, il faudra estimer les conditions nécessaires à la croissance à partir de la bibliographie ou de toute autre source d’informations. Une fois le milieu de culture parfaitement décrit, nous allons pouvoir étudier par diffé- rentes méthodes si ce milieu de culture, associé à l’ébauche métabolique, permet de prédire la production des molécules identifiées expérimentalement. Cette prédiction peut se faire par différents types de simulations, que l’on peut classer globalement en deux groupes : les simulations topologiques et les simulations numériques. Les simulations topologiques consistent en une recherche de chemins dans le graphe métabolique partant d’un set de nœuds "molécules" correspondant au milieu de croissance de l’organisme et allant jusqu’à l’ensemble des nœuds correspondant aux métabolites identifiés comme productibles par l’espèce étudiée [RK01]. Les simulations numériques consistent le plus souvent en une analyse d’un système de contraintes linéaires dictées par la structure et la stœchiométrie du ré- seau métabolique, comme c’est le cas avec la FBA [FS86]. Elles nécessitent plus de connaissances biologiques qu’une recherche topologique, notamment sur la quantité de molécules présentes dans la biomasse et la stœchiométrie précise des réactions, afin de permettre une optimisation des flux de molécules passant à travers les réactions pour que le résultat théorique corresponde aux connaissances biologiques. Un des apports de cette thèse consistera précisément à étudier l’impact de ces différentes modélisation du concept de productibilité sur la qualité de la reconstruction (chapitre 2). Si toutes les molécules sont productibles à partir de l’ébauche métabolique et de la composition du milieu de culture, c’est un signe que la reconstruction initiale à partir des annotations a été particulièrement efficace. Étant donné les erreurs d’annotations, de séquen- çage et les spécificités de chaque espèce, ce cas est extrêmement rare. Pour produire les mé-Pipeline de reconstruction d’un réseau métabolique 23 tabolites identifiés expérimentalement, il a toujours été nécessaire de rajouter des réactions au réseau. Cette addition peut être manuelle [FMR+12] quand des experts de l’organisme connaissent parfaitement le métabolisme de celui-ci. Une complétion manuelle peut cependant être extrêmement longue et risque de n’apporter au réseau que des informations déjà connues par les biologistes. La recherche des réactions à ajouter dans le réseau peut également être réalisée automatiquement. De très nombreuses méthodes existent pour effectuer cette étape mais reposent presque toutes sur le même principe de parcimonie, c’est-à-dire d’inclure le minimum possible de réactions dans le réseau. Pour choisir ces réactions, la plupart des méthodes ne donnent pas une solution unique mais un ensemble de solutions possibles. Ces solutions sont ensuite classifiées selon des scores généralement basés sur des données d’orthologie ou de phylogénie. Les approches de complétion se ramènent à des questions d’optimisation que nous détaillerons dans le chapitre 2. 1.3.3 Évaluation du réseau final Après cette étape, le réseau métabolique obtenu doit être de qualité suffisante pour pouvoir réaliser différentes prédictions. La complétion du réseau métabolique va produire une liste de réactions susceptibles d’être ajoutées au réseau. Ces réactions étant en très grande majorité catalysées par des enzymes, il convient de rechercher si les enzymes en question sont présentes chez l’espèce étudiée. Pour cela, il faut rechercher d’éventuels gènes qui pourraient coder pour ces enzymes dans le génome. Cette recherche peut se faire en utilisant différentes techniques telles que la recherche d’orthologues [LSR03], la recherche de signatures de familles de protéines [FBC+14], etc. L’évaluation du réseau final se fait habituellement au niveau fonctionnel en utilisant des méthodes de Flux Balance Analysis (FBA). Si des données précises de quantification de certaines molécules sont disponibles, il est assez aisé de créer une fonction objectif et de tester la croissance virtuelle de l’organisme en utilisant des algorithmes d’optimisation linéaire. Si ces données ne sont pas disponibles, il est toujours possible de reconstruire une fonction objective "virtuelle" en se basant sur celles existantes chez d’autres espèces, si possible proches au niveau phylogénétique et/ou au niveau physiologique. Si différentes données de croissance obtenues au cours de plusieurs conditions de culture sont disponibles, la FBA pourra être appliquée pour chaque condition et les résultats pourront être comparés avec la croissance mesurée expérimentalement. Si les résultats sont corrélés entre les analyses de simulation et les observations biologiques, cela suffit habituellement à valider la qualité globale d’un réseau métabolique. 1.3.4 Pipelines existants Plusieurs logiciels ou groupes de logiciels permettent de réaliser une ou plusieurs des étapes de reconstruction citées précédemment. Comme indiqué par Hamilton et Reed en 2014 [HR14], la reconstruction automatique d’une ébauche est maintenant proposée de manière automatique par la plupart des plate-formes logicielles. La plupart de ces méthodes nécessitent tout de même une part de curation manuelle, souvent guidée par différentes approches. En revanche, l’ensemble des analyses relatives à la fonctionnalité du système sont24 État de l’art généralement laissées à la charge de l’utilisateur, avec un accompagnement limité, et peu d’automatisation. Il faut cependant noter que les principaux pipelines ici mentionnés sont plutôt des canevas sur lesquels se positionnent différents outils qui permettent d’améliorer l’efficacité et/ou l’automatisation des méthodes dans des contextes applicatifs particulier. Dans leur article, Hamilton et Reed [HR14] étudient quatre outils de reconstruction globale de réseaux métaboliques microbiens : Subliminal [SSM+11b], Model SEED [HDB+10], Raven [ALS+13] et Pathway Tools [KPK+10]. La figure 1.7 résume les points positifs et né- gatifs de ces outils. Il est également possible d’étendre cette étude aux organismes non microbiens en citant MetaNetter [JBBG08] qui permet d’inférer des réseaux métaboliques à partir de données de métabolomique, en se basant sur la différence de masse entre les différents métabolites pour inférer des réactions (comme la disparition d’une molécule de CO2 par exemple). Cet outil et ceux associés mettent particulièrement en avant la visualisation des réseaux métaboliques après reconstruction. Une autre plateforme de reconstruction automatique de réseaux métaboliques microbien existe, MicroScope [VBC+13]. Cette plateforme permet de reconstruire et d’étudier un réseau métabolique bactérien à partir d’un génome brut, en utilisant notamment la structure particulière de ces génomes et en accompagnant l’utilisateur tout le long du processus. L’analyse de l’ensemble de ces plate-formes fait ressortir un manque dans la reconstruction automatique ou semi-automatique de réseaux métaboliques eucaryotes à partir de données génétiques. 1.4 Complétion de réseaux : problèmes d’optimisation induits Les différentes problématiques informatiques relatives à la reconstruction d’un réseau métabolique à partir de données brutes, relèvent finalement de trois domaines différents : il y a d’abord différentes questions autour de la représentation des connaissances pour homogénéiser et réconcilier les données provenant de différentes sources, il y a ensuite des questions complexes en optimisation entière, relative à la fonctionnalité des réseaux ou des réactions. Enfin, la question de la complétion des réseaux métaboliques a été abordée avec différentes méthodes et algorithmes. Dans cette partie, nous allons détailler les principales approches existantes concernant ce troisième point et discuter leurs limites. 1.4.1 Panorama général La principale difficulté dans cette étude bibliographique réside dans le fait que les diffé- rentes approches ne résolvent pas toujours le même problème. Dans tous les cas, il s’agit de construire un réseau métabolique consistant, supporté par des observations biologiques en partant d’un réseau brut incomplet et de connaissances additionnelles. Souvent, la consistance avec les observations biologiques réside dans le fait que, lorsque l’on connaît la composition du milieu de culture d’un organisme et que l’on a des données de métabolomique, le réseau doit être en mesure de trouver un moyen de produire les métabolites identifiés à partir des nutriments du milieu de culture. Cependant, la notion de productibilité peut varier en fonction des approches (quantitative, qualitative, globale ou probabiliste...). La consistance peut aussi être mesurée à l’aide de données d’expression, de protéomique, ou à l’aide de critères topologiques tel que réalisé lors de la création d’un réseau métabolqie compartimentalisé d’Arabidopsis thaliana [MOMM+12].Complétion de réseaux : problèmes d’optimisation induits 25 FIGURE 1.7: Support apporté par les différents outils de reconstruction de réseaux métaboliques, de la création de l’ébauche jusqu’à l’évaluation de la qualité du réseau [HR14]. Les quatre étapes principales et certains des 96 points relevés par [TP10] sont étudiés.26 État de l’art Si on prend du recul, les méthodes de complétion de réseaux métaboliques se basent habituellement sur deux stratégies différentes : – une approche descendante (dite top-down), qui consistera à ajouter toutes les informations disponibles à un instant donné, qu’elles soient intéressantes ou non, avant de supprimer petit à petit les données les moins relevantes. On citera ici la méthode OptStrain [PBM04] et sa dérivation SMILEY [RPC+06] qui, à l’aide de programmation MILP, a été utilisée pour reconstruire par exemple un réseau métabolique d’une souche d’Escherichia coli [HJFP06] et une approche stochastique [CMK+09] utilisée pour reconstruire un réseau métabolique de Chlamydomonas reinhardtii [MWK+08] par exemple , – une approche ascendante (dite bottom-up), qui partira uniquement de l’ébauche mé- tabolique avant de rajouter progressivement des informations (et donc des réactions) afin d’obtenir au final un réseau de bonne qualité. C’est en particulier l’approche choisie dans la méthode GapFind [SKDM07] et la méthode combinatoire Networkexpansion [ST09]. Les algorithmes sous-jacents aux différents méthodes ne sont pas toujours explicités, et leur complexité peu étudiée. Cependant, Nikolski et ses collaborateurs ont montré dans un cadre assez générique que l’extraction d’un sous-réseau satisfaisant un score minimal dans un réseau métabolique est NP-difficile, en se ramenant à un problème de Weighted Tree Packing [NGMS08]. On peut aussi noter l’ensemble des travaux de Acuna et Sagot autour de la complexité de différents problèmes relatifs à l’identification de sources dans un réseau métabolique [CMA+08]. 1.4.2 Optstrain, SMILEY - top-down & MILP OptStrain [PBM04] est une méthode impliquant quatre étapes afin de rajouter des réactions provenant d’une base de données de réactions métaboliques à l’intérieur d’un réseau pré-existant. – La première étape consiste à télécharger et nettoyer la base de données de réactions métaboliques. Les erreurs de stœchiométrie relativement importantes pouvant impacter grandement les résultats de l’approche, toutes les réactions mal équilibrées ou impliquant au moins un élément donc la composition n’est pas précise sont supprimées de la base de données, – La seconde étape consiste à ajouter l’ensemble de la base de données au réseau pré- existant. Cela permet d’obtenir un "méta-réseau" grâce auquel il est possible d’étudier, à partir d’un ensemble de substrats, le rendement maximum possible pour la production d’une cible donnée. Cette étape ne prend pas du tout en compte l’origine des réactions (base de données ou organisme étudié) utilisées pour maximiser la production de la cible. Cette maximisation correspond à un problème de programmation linéaire, – Une fois le rendement maximal identifié, la troisième étape cherche à minimiser le nombre de réactions provenant de l’extérieur en maintenant ce rendement. Ce problème est modélisé et résolu par programmation linéaire mixte en nombres entiers (MILP), – Enfin la dernière étape va consister à faire en sorte de ne garder dans le réseau que les réactions nécessaires pour maximiser le rendement de production de la cible étu-Complétion de réseaux : problèmes d’optimisation induits 27 diée. L’ajout des réactions n’est pas automatique pour autant mais utilise l’algorithme OptKnock [BPM03, PBM03] pour éviter de découpler la production de biomasse et celle du métabolite d’intérêt qui risquerait de conduire à une mort de l’organisme d’intérêt. Aucune étude particulière ne semble avoir été effectuée pour tester la rapidité ou la qualité de cette méthode. Il est uniquement indiqué que les optimisations prennent quelques heures et que certaines prédictions réalisées sur une espèce bactérienne donnée semblent cohérentes avec des résultats biologiques. Cette méthode a été très utilisée par la communauté. Nous pouvons notamment citer son utilisation pour étudier la production de succinate par Mannheimia succiniciproducens [LLK05] ou encore la production de lactate par Escherichia coli [HJFP06]. Une extension de cette approche est la méthode SMILEY [RPC+06], qui donne la possibilité d’inclure des réactions de transport permettant d’excréter n’importe quel produit. Cette approche a en particulier été utilisée pour la reconstruction de réseaux métaboliques de Ostreoccocus [KYW+12]. 1.4.3 GapFind, GapFill - bottom-up & MILP En 2007, Kumar et ses collaborateurs [SKDM07] ont développé une procédure d’optimisation linéaire pour identifier des trous dans les réseaux métaboliques, et proposer des solutions afin de combler ces trous. Pour cela, ils commencent par identifier les métabolites ne pouvant pas être produits dans un réseau métabolique avant de restaurer la connectivité du réseau en modifiant celui-ci ou en rajoutant des réactions à l’intérieur du modèle. GapFind va ainsi permettre d’identifier des trous dans les réseaux métaboliques. Ceux-ci se manifestent par le fait qu’il existe des métabolites qui ne sont pas produits ou consommés par le réseau. À l’état stable, aucun flux ne pourra alors passer à travers ces métabolites ce qui indique une erreur dans le réseau. De plus, si un ou plusieurs métabolites sont bloqués, cela entraînera très souvent une cascade de réactions bloquées. Par exemple, un métabolite non consommé bloquera les flux dans toutes les réactions en amont de celui-ci à l’état stable. Les métabolites non produits peuvent être identifiés en scannant la matrice stœchiométrique du réseau. En effet, il suffit de chercher toutes les colonnes contenant des valeurs non positives (pour les réactions irréversibles) ou non nulles (pour les réactions réversibles). Pour les métabolites non consommés, on applique la même méthode que pour les réactions réversibles et on cherche des valeurs non négatives pour les réactions irréversibles. Cela permet d’identifier les "racines" des voies métaboliques bloquées par un métabolite non produit ou non consommé. Pour trouver les métabolites bloqués respectivement en amont et en aval de ceux-ci, une simple inspection de la matrice stœchiométrique ne suffit pas. Les auteurs ont alors mis en place un ensemble de contraintes permettant, pour chaque mé- tabolite, de connaître si celui-ci est bien produit et consommé. Les contraintes sont telles que : – Pour chaque réaction irréversible produisant un métabolite i, la réaction produit une quantité ǫ de i supérieure à zéro, – Pour chaque réaction réversible qui inclut un métabolite i, le métabolite est considéré comme produit uniquement si la réaction produit une quantité ǫ de i supérieure à zéro,28 État de l’art – Un métabolite i doit posséder au moins une voie de production pour être considéré comme productible, c’est-à-dire qu’il doit être le produit d’au moins une réaction active, – Les flux passant dans chaque réaction doivent être compris entre des bornes supé- rieures et inférieures imposées par le modèle, – Étant à l’état stable, les cellules continuent toujours à se diviser, il faut donc produire un minimum de métabolites. Ils fixent dont P j∈M Si j v j ≥ 0 ∀i = 1...N, – Enfin, la fonction objective va maximiser le nombre de métabolites productibles. L’ensemble de ces contraintes fait en sorte de maximiser le nombre de métabolites considérés comme productibles. S’il reste des métabolites non productibles, c’est la preuve d’un manque dans le réseau métabolique. Une fois les trous identifiés, il convient de les combler. Pour cela les auteurs ont dé- veloppé GapFill afin de rechercher si inverser le sens des réactions, rajouter des réactions provenant de bases de données, ou rajouter des réactions de transport permettent de combler les trous du réseau et rendre l’ensemble des métabolites productibles et consommés. Il s’agit là encore d’un problème d’optimisation linéaire en nombres entiers ayant comme objectif de minimiser le nombre de réactions provenant de bases de données ajoutées dans le réseau initial. Les différentes contraintes à respecter sont : – Pour chaque réaction réversible qui inclut un métabolite i, le métabolite est considéré comme produit uniquement si la réaction produit une quantité ǫ de i supérieure à zéro, – Les additions de réactions doivent conduire à une production minimale des métabolites jusqu’à présent non productibles, – Les flux passant dans chaque réaction doivent être compris entre des bornes supé- rieures et inférieures imposées par le modèle, – Les réactions ajoutées au réseau métaboliques doivent toutes avoir des flux non nuls passant à travers elles. L’ensemble du processus est réalisé pour trouver le minimum de réactions à ajouter pour pouvoir produire et/ou consommer chaque métabolite cible du réseau. L’ensemble des contraintes définissant GapFind et GapFill est extrêmement intéressant et produit des résultats biologiquement valides. Ainsi, GapFind/GapFill ont été utilisés intensivement par l’équipe ayant créé la méthode. En dehors de cette équipe, nous pouvons citer son utilisation pour la reconstruction du réseau métabolique de Gordonia alkanivorans [AKRI13], du pathogène Salmonella Typhimurium LT2 [THS+11] et d’une souche de Clostridium beijerinckii produisant du butanol [MER+11]. On peut cependant apporter quelques critiques à cette méthode. La première est que, si l’encodage des contraintes est disponible librement, celui-ci s’applique uniquement au solveur GAMS qui, lui, est payant et relativement cher. Cela empêche toute comparaison neutre entre cet outil et les outils existants. De plus, à ma connaissance, aucun test n’a été effectué pour connaître le comportement de la méthode face à un accroissement de la taille des jeux de données. Il est donc difficile de savoir si ce logiciel fonctionne dans un contexte où la taille des bases de données et la complexité des réseaux augmentent sans cesse. Il est également possible de se poser la question de la conséquence que pourrait avoir l’introduction d’un faux positif au niveau des réactions lors de la première reconstruction du réseau. Une seule réaction consommant deux molécules et en produisant deux autres, siComplétion de réseaux : problèmes d’optimisation induits 29 celle-ci est ajoutée "loin" de toutes les voies métaboliques existantes, amènerait la reconstruction d’une longue voie métabolique pour raccorder l’ensemble des quatre métabolites à l’ensemble du réseau. De même, si la technique initiale semble limitée à la recherche d’une solution unique, des techniques d’optimisation linéaire pourraient être appliquées pour obtenir l’ensemble des solutions existantes, mais là encore nous pouvons nous interroger sur l’utilisabilité en pratique de ces méthodes. Enfin on peut s’interroger sur la contrainte P j∈M Si j v j ≥ 0 ∀i = 1...N à l’état stable. Cette contrainte indique que le réseau (étant à l’état stable) peut produire une quantité illimitée de tous les métabolites, ce qui relâche énormément les contraintes de modélisation classiques où, habituellement, nous avons P j∈M Si j v j = 0 qui force le système à ne pas créer de matière. 1.4.4 Christian et al - top-down & stochastique Nils Christian et ses collaborateurs proposent une méthode stochastique de complétion de réseaux métaboliques[CMK+09]. Cette méthode est basée sur une approche "top-down", commençant par une complétion très large qui sera ensuite précisée au fur et à mesure des différentes itérations. Le cœur de la méthode consiste à identifier des groupes minimaux de réactions (appelées "extensions") permettant de compléter le réseau métabolique pour produire des métabolites sélectionnés à partir des nutriments du milieu de culture. – L’algorithme consiste, dans un premier temps, à ajouter l’ensemble des réactions contenues dans une base de données de réactions métaboliques au réseau incomplet, – Une fois cette addition réalisée, il convient de regarder l’ensemble des métabolites d’intérêt productibles à partir du réseau incomplet auquel on a ajouté la base de données. Ces métabolites d’intérêt formeront alors la base de travail autour de laquelle la méthode fonctionnera, – Lors d’un processus itératif, à chaque pas de temps, une réaction (provenant de la base de données) tirée aléatoirement sera enlevée du réseau. Si le réseau garde sa fonctionnalité (c’est à dire si les métabolites d’intérêts sont toujours productibles à partir des nutriments), cette réaction est définitivement retirée de l’extension. Si le fait de retirer cette réaction supprime la fonctionnalité du réseau, celle-ci semble être indispensable à cette fonctionnalité et sera donc remise dans l’extension et ne sera plus testée avant la fin du déroulement de la méthode. La fonctionnalité utilisée par les auteurs est topologique mais, hormis les temps de calcul, rien ne semble s’opposer à une étude quantitative de la fonctionnalité, – Puisque les extensions obtenues vont dépendre énormément de l’ordre dans lequel les réactions sont tirées, les auteurs recommandent de réaliser un grand nombre de tirages aléatoires de l’ordre de test des réactions, – Le résultat de cette méthode correspondra à un ensemble d’extensions possibles. Les réactions présentes dans les extensions vont être analysées d’un point de vue statistique pour classer les réactions par ordre d’importance afin de pouvoir les étudier manuellement par la suite. Finalement, cette approche consiste donc à explorer l’espace de toutes les complétions fonctionnelles qui sont minimales au sens ensembliste du terme (si on enlève une réaction, la fonctionnalité globale du système n’est plus vérifiée). On peut cependant regretter qu’au-30 État de l’art cune estimation de la taille de cette espace ne soit proposée, ce qui ne permet pas de décider si le nombre d’itérations est suffisant pour l’explorer de manière fiable. De plus cette méthode ne propose pas une "bonne" solution. En effet, rien n’assure qu’ajouter l’ensemble des réactions revenant souvent dans les simulations suffit au final à compléter le réseau pour le rendre fonctionnel. Imaginons par exemple un cas où dix réactions différentes permettraient de compléter le même "trou" dans un réseau. D’après l’aléa créé par la méthode, chaque réaction reviendrait dans 1/10ème des simulations, ces réactions prises une par une auraient alors un score final faible et ne seraient probablement pas inclues automatiquement dans le réseau final. Celui-ci perdrait ainsi sa fonctionnalité, ce qui est pourtant la raison initiale du développement de cette méthode. Pour essayer de limiter ce biais, les auteurs associent un "score biologique" aux réactions et biaisent plus ou moins fortement le tirage aléatoire de l’ordre dans lequel les réactions sont étudiées. Plus le score sera fort, moins une réaction aura de chance d’être tirée "tôt". Ce score peut se baser sur différentes informations telles que des scores de similarité de séquence entre des enzymes connues pour catalyser les réactions présentes dans les bases de données et les protéines produites par le génome de l’espèce d’intérêt. Puisque plus une réaction est testée tôt, plus elle a de chances de ne pas être présente dans l’extension au final, ces classifications des listes de réactions permet d’améliorer grandement les capacités de prédiction de la méthode. Cette approche a notamment été utilisée pour améliorer les réseaux métaboliques des algues vertes Chlamydomonas reinhardtii [MWK+08] et Ostreococcus [KYW+11]. Il est également possible de citer son utilisation pour étudier les relations métaboliques existantes entre des plantes et des phytopathogènes [DCS+13]. On peut regretter que les implémentations des algorithmes ne soient pas mises à disposition. Une ré-implémentation de l’algorithme au laboratoire (durant un stage) a cependant suggéré qu’il ne passait pas à l’échelle quand la taille de la base de données de référence augmente. 1.4.5 Network-expansion - bottom-up & optimisation combinatoire En 2009, Torsten Schaub et Sven Thiele proposent une méthode [ST09] permettant de compléter des réseaux métaboliques d’un point de vue qualitatif en s’affranchissant de la nécessité d’obtention de données cinétiques. Par rapport aux approches précédentes, l’idée est de vérifier la fonctionnalité du réseau d’un point de vue qualitatif (accessibilité des mé- tabolites) sans prendre en compte les contraintes induites par la stoechiométrie du système qui pourront être vérifiées dans un second temps. En reformulant ce problème de manière combinatoire, Schaub et Thiele proposent d’utiliser des méthodes d’optimisation récentes pour énumérer intégralement l’espace des solutions du problème. Comme pour les précédentes approches, les auteurs sont partis du constat que la grande majorité des réseaux métaboliques reconstruits automatiquement sont incomplets. De plus, les bases de données de réactions métaboliques sont de plus en plus exhaustives et leur utilisation n’en devient que plus pertinente. Enfin, il y a à disposition des données biologiques pour la plupart des organismes biologiques pour lesquels un réseau métabolique est reconstruit ou en cours de reconstruction, et qui sont utilisables pour l’étape de complétion. L’idée générale des auteurs est qu’une réaction ne peut avoir lieu uniquement que si les réactants de celle-ci sont présents, soit dans un milieu de culture donné, soit comme produit d’une autre réaction. Ainsi, en partant des métabolites présents dans un milieu deComplétion de réseaux : problèmes d’optimisation induits 31 culture (les métabolites graines) il devient possible de déterminer le "scope" des graines, c’est à dire l’ensemble des métabolites productibles à partir des graines et des réactions présentes dans un modèle. L’approche s’appuie ainsi sur des données expérimentales comme la présence de certains métabolites dans une cellule (métabolites cibles). La méthode regarde si ces cibles font partie du scope des graines. Si c’est le cas, le réseau métabolique peut être considéré comme suffisamment complet pour expliquer l’existence de ces cibles. Si ce n’est pas le cas, il conviendra d’ajouter des réactions dans le réseau pour permettre aux cibles de faire partie du scope des graines. Ajouter l’ensemble des réactions provenant d’une base de données de réactions comme MetaCyc permet (généralement) de produire l’ensemble des cibles. Cependant, toute capacité d’étude biologique ultérieure du réseau sera perdue du fait de la trop grande quantité de faux-positifs. Les auteurs proposent donc d’utiliser un principe de parcimonie pour minimiser le nombre total de réactions à ajouter au réseau, et ainsi minimiser les modifications faites à un réseau que l’on considère initialement de bonne qualité. Ce problème est par nature extrêmement combinatoire et donne de très nombreuses solutions. Contrairement aux approches précédentes, cette modélisation n’a pas fait l’objet d’une résolution algorithmique ou en programmation entière, mais d’une résolution déclarative. En effet, les auteurs ont modélisé les concepts de scope et d’accessibilité dans un langage déclaratif puis utilisé des techniques d’optimisation combinatoire particulièrement effi- caces pour résoudre ce problème. Plus précisément, la modélisation et la résolution du problème sont basées sur des technologies apparues relativement récemment, dite de programmation par ensemble réponse (ou Answer Set Programming, ASP) [Bar03, GKKS12], qui sont connues pour être particulièrement efficaces pour résoudre des problèmes NPdur. La programmation par ensembles réponses propose un cadre déclaratif pour modéliser des problèmes combinatoires. Le caractère déclaratif et la haute performance des solveurs ASP actuels permettent de se concentrer sur les problèmes de modélisation plutôt que de rechercher des façons intelligentes de traiter ces problèmes. L’idée de base d’ASP est d’exprimer un problème sous forme logique de manière à ce que les modèles sortant de cette représentation donnent les solutions au problème initial. Les problèmes sont exprimés en tant que programmes logiques et les modèles résultants sont appelés "ensembles réponses" (ou Answer Sets). Ces ensembles-réponses sont identifiées à l’aide de technologies inspirées par les approches SAT et les bases de données. Il est bien évidemment possible de déterminer, à l’aide d’ASP, si un programme possède un ensemble réponse, mais d’autres modes de raisonnement sont nécessaires pour couvrir l’ensemble des problèmes que l’on peut rencontrer en pratique. Ainsi il sera possible d’identifier aisément l’intersection ou l’union de l’ensemble des ensembles réponses. De la même manière, lister l’intégralité des ensembles réponses pourra être possible. Dans leur article, Schaub et Thiele proposent une implémentation de cette approche en ASP, en utilisant la suite Potassco [GKK+11]. L’implémentation est détaillée en annexe B. Ils ont ainsi montré sur différents exemples tirés de dégradations d’un réseau métabolique d’Escherichia coli que leur implémentation en ASP permet de compléter un réseau en un temps raisonnable tant que les dégradations de réseaux et la taille de la base de données utilisée pour compléter n’est pas trop grande. En revanche dès que la taille de la base de données de référence devient trop grande l’outil n’arrive plus à calculer de complétions, laissant de la place à de grandes améliorations de la méthode.32 État de l’art TABLE 1.2: Description générale d’outils de complétion de réseaux métaboliques. Nom Approche Méthode Disponibilité principe OptStrain [PBM04] top-down MILP Non disponible Nombre minimal de réactions à ajouter pour maintenir le rendement optimal du réseau initial associé à une banque de ré- action. SMILEY [RPC+06] top-down MILP Code Matlab Comme OptStrain avec prise en compte de réactions de transport GapFill [SKDM07] bottom-up MILP Code GAMS Nombre minimal de réactions à ajouter pour produire des mé- tabolites internes (préalablement identifiés) empêchant la formation de biomasse. Christian [CMK+09] top-down stochastique Non disponible Exploration non exhaustive de l’ensemble des sous-ensembles de réactions minimaux au sens ensembliste qui restaurent la fonctionnalité globale du système. Network Expansion [ST09] bottom-up recherche combinatoire ASP Exploration exhaustive de l’ensemble des plus petits sousensembles qui restaurent la fonctionnalité du système au sens topologique. L’intérêt principal de cette approche réside dans le fait que les auteurs effectuent une énumération exhaustive de l’ensemble des solutions qui permettent la production de l’ensemble des métabolites cibles plutôt que ces cibles une à une. Cependant, le prix à payer pour cela est de relaxer la contrainte de fonctionnalité puisqu’ils ne font plus qu’une véri- fication topologique de la productibilité des cibles sans prendre en compte les contraintes induites par la stœchiométrie et les équilibres internes du système. 1.4.6 Comparaisons Finalement, les différentes propriétés des méthodes étudiées ci-dessus sont être synthétisées dans la table 1.2. On notera en particulier des difficultés liées à l’accessibilité des méthodes, leur utilisation générique, et leur comparaison. En détaillant plus précisément les différentes approches, on constate finalement qu’elles ne résolvent pas toutes le même problème d’optimisation. Pour résumer, nous pouvons dire que OptStrain et SMILEY vont chercher à obtenir une fonctionnalité maximale des réseaux pendant que GapFill cherchera à produire chaque métabolite cible individuellement plutôtComplétion de réseaux : problèmes d’optimisation induits 33 TABLE 1.3: Description fonctionnelle d’outils de complétion de réseaux métaboliques. Nom Production Fonctionnalité Espace de solution Minimalité OptStrain et SMILEY biomasse quantitative une seule solution Taille des solutions GapFill cibles intermédiaires quantitative une seule solution Taille des solutions Christian ensemble de cibles topologique échantillonnage Ensembliste Networkexpansion ensemble de cibles topologique énumération globale et union Taille des solutions que d’essayer d’optimiser la biomasse dans son ensemble. Dans les deux cas il est possible de trouver une solution unique en suivant la méthode présentée même s’il semble possible d’obtenir l’ensemble des solutions en utilisant des techniques propres aux MILP tel que l’"integer cut", mais aucune donnée sur le fait que cette technique serait utilisable en pratique d’un point de vue du temps de calcul n’est disponible à notre connaissance. La mé- thode développée par Nils Christian permet, elle, une exploration plus complète de l’espace des solutions via un échantillonnage de solutions minimales d’un point de vue ensembliste. Enfin Network-expansion va arriver à être exhaustif dans l’énumération des solutions tout en cherchant à produire l’ensemble des molécules présents dans la biomasse. Ces deux dernières méthodes relâchent quelque peu la contrainte de fonctionnalité étant donné que la fonctionnalité ne sera plus étudiée que d’un point de vue topologique. D’un point de vue biologique, le fait de choisir une méthode de complétion globale, qui prend en compte l’ensemble des métabolites que l’on sait présents chez une espèce, sans pour autant avoir besoin de connaître la concentration précise de ceux-ci, permet d’avoir une complétion beaucoup plus large du réseau avec des informations incomplètes. Ceci est également un gros apport comparé aux méthodes de complétions manuelles qui n’utilisent que les connaissances pré-existantes chez une espèce pour créer le réseau, au risque de n’apporter aucune nouvelle connaissance au modèle ainsi créé. Le fait d’avoir une énumération exhaustive des solutions (dont on peut faire l’union ou l’intersection) permet d’éviter de faire un choix entre les différents modèles proposés, ce choix se faisant habituellement par la création de scores impliquant la similarité de sé- quence et/ou des informations provenant de la phylogénie. Chez des espèces trop lointaines des espèces modèles, ces deux informations risquent de biaiser une éventuelle reconstruction du fait d’une trop grande divergence des séquences avec les séquences connues. D’éventuels transferts horizontaux de gènes risquent également de poser problèmes, les gènes impliqués pouvant être très éloignés phylogénétiquement entre deux espèces étudiées. Cependant, il faut bien noter que l’approche de Network-expansion, qui a les deux caractéristiques précédentes, nécessite de relaxer le critère de fonctionnalité du système puisque les équilibres stœchiométriques internes ne sont plus pris en compte. Un des objectifs de cette thèse fut d’utiliser et d’améliorer les méthodes combinatoires de Network-expansion pour permettre à cette approche de passer à l’échelle sur des réseaux eucaryotes pour des34 État de l’art espèces non-classiques. Nous en avons profité pour tester l’impact de la modélisation combinatoire de la productibilité au lieu de la fonctionnalité issue de la stœchiométrie. Ces questions seront abordées au chapitre 2. 1.5 Reconstruction de réseaux métaboliques pour les algues L’objectif de la thèse est de développer des méthodes informatiques pour permettre la reconstruction de réseaux métaboliques pour des espèces non classiques telles que celles étudiées dans le projet Investissement d’avenir Idealg (macro-algues). Dans cette section, nous proposons une revue bibliographique des enjeux spécifiques à la reconstruction de réseaux pour les algues. 1.5.1 Les réseaux métaboliques chez les plantes De par son statut d’organisme modèle en génétique, Arabidopsis thaliana a profité très rapidement des développements de la reconstruction de réseaux métaboliques. D’autres plantes telles que le maïs ont également reçu l’attention de la communauté scientifique de par leur intérêt dans l’agroalimentaire. Les plantes étant souvent des organismes possédant plusieurs tissus et organites, leur modélisation s’en retrouve d’autant plus compliquée et leur analyse d’autant plus intéressantes. Des revues complètes et récentes de ces reconstructions [SHH12] et des perspectives [dODN13] existent, nous allons ici discuter des spé- cificités de la reconstruction de réseaux chez ces organismes photosynthétiques plutôt que de rentrer en détail dans leur processus de reconstruction. En effet, les plantes sont des organismes complexes possédant un génome souvent très grand caractérisé par de nombreux gènes enzymatiques ou de transports non annotés. La chronologie de création des réseaux métaboliques des plantes est un bon exemple de la difficulté de reconstruction de tels réseaux. Ainsi en 2009, Poolman et ses collaborateurs [PMSF09] publiaient un modèle de cellules en suspension d’Arabidopsis thaliana comprenant 1.336 réactions, suivi de près par la création d’AraCyc [dQP+10a] (1.567 réactions) qui se concentrait sur le métabolisme primaire de cette plante au niveau des feuilles, avant de passer à l’ensemble des tissus d’une plante (le maïs) avec [SSM11a] (1.588 réactions). Aujourd’hui, un réseau compartimenté et multi-tissus d’A. thaliana existe permettant des analyses fines de son métabolisme [MOMM+12]. Celui-ci est formé de différents sous-réseaux selon l’organe étudié, le réseau du fruit, par exemple, est formé de 1.143 réactions. Les reconstructions de ces réseaux ont été grandement facilitées par le fait qu’Arabidopsis thaliana est une espèce modèle en génétique depuis de nombreuses années [Fin98]. Ainsi de très nombreuses données "omiques" existent sur cette plante et de nombreuses techniques telles que l’inactivation ciblées de gène sont possibles. Tout cela permet également de valider fonctionnellement les réseaux reconstruits. 1.5.2 Les réseaux métaboliques chez les algues Les algues sont actuellement des organismes étudiés par les biologistes du fait de leur grande diversité, leur métabolisme chimérique et leur caractère évolutif très particulier. L’étude des algues est également en plein essor au niveau applicatif en biotechnologie avec l’arrivée de plus en plus de données omiques.Reconstruction de réseaux métaboliques pour les algues 35 TABLE 1.4: Comparaison des différentes méthodes de reconstruction de réseaux métaboliques chez des algues. Plus de détails sont donnés en 1.5 Espèce Nom du réseau Source de données Reconstruction initiale Complétion FBA Chlamydomonas reinhardtii AlgaGem KEGG mapping sur KEGG manuel, composé par composé Oui Chlamydomonas reinhardtii iRC1080 réseau pré- existant & bibliographie Manuel Effectué mais pas d’informations Oui Ostreococcus KEGG mapping sur KEGG Top-down et Bottom-up, pas de solution unique Oui Phaeodactylum tricornutum DiatomCyc KEGG et Metacyc Pathway tools Manuel pour les voies métaboliques connues Non Cependant, les connaissances globales sur le métabolisme des algues est finalement assez limité. Nous pouvons étudier quatre réseaux métaboliques ayant été reconstruits chez des algues, pour trois espèces différentes (chronologiquement) : – Chlamydomonas reinhardtii (AlgaGem et iRC1080) – Ostreococcus (pas de nom) – Phaelodactylum tricornutum (DiatomCyc) Pour ce faire, les étapes classiques de reconstruction de réseaux métaboliques décrites en 1.3 ont été suivies, cependant chaque étape a été réalisée avec des outils et des méthodes différentes. On notera en particulier qu’aucun de ces réseaux n’a fait l’objet d’une étude fonctionnelle équivalente à celle opérée sur les plantes plus classiques citées plus haut. Le tableau 1.4 résume l’ensemble de ces informations de manière synthétique. Le tableau 1.5 donne des informations sur les réseaux obtenus. 1.5.3 Pipelines de reconstructions utilisés Nous allons décrire plus précisément chaque étape et les méthodes utilisées pour chaque réseau en insistant sur les spécificités de chacune. Pour la reconstruction des ébauches métaboliques, concernant Chlamydomonas reinhardtii, le réseau AlgaGEM [GdODQPN11] a été reconstruit d’après le génome de C. reinhardtii, ainsi que l’ensemble des réactions disponibles dans KEGG. L’ébauche du second réseau de cette espèce (iRC1080) [CGM+11] a été reconstruite en se basant sur un précé- dent réseau reconstruit manuellement en 2009 (iAM303) [MGH+09] et contenant 259 réactions impliquées dans des voies métaboliques d’intérêt pour cette microalgue. Le réseau de 2011 reprend le premier en rajoutant des réactions provenant de plus de 250 publications différentes.36 État de l’art TABLE 1.5: Description des réseaux obtenus Espèce Nom du réseau Nombre de gènes Nombre de réactions Nombre de métabolites Nombre de métabolites dans la fonction de biomasse Chlamydomonas reinhardtii AlgaGem 2 249 1 725 1 862 39 Chlamydomonas reinhardtii iRC1080 1 080 2 190 1 068 172 Ostreococcus tauri 871 1 014 48 Ostreococcus lucimarinus 964 1 100 48 Phaeodactylum tricornutum DiatomCyc 1 069 1 719 1 073 - Pour la reconstruction de l’ébauche du réseau métabolique des pico-algues vertes Ostreococcus [KYW+12], des annotations de gènes provenant de KEGG ont été récupérées et traitées par Matlab avant que la relation gène-réaction soit créée grâce aux données d’orthologie contenues dans KEGG Orthology (KO). Enfin, la création de l’ébauche métabolique de DiatomCyc (pour Phaelodactylum tricornutum) a été faite en utilisant la suite logicielle Pathway Tools à partir d’annotations provenant de KEGG et de MetaCyc. Tous les réseaux mentionnés ont fait l’objet d’une complétion des informations manquantes lors de la première reconstruction suite à des erreurs d’annotations, des données manquantes ou hétérogènes, etc. Lors de la reconstruction d’AlgaGem, la complétion a été réalisée en reconstruisant manuellement les voies métaboliques intéressantes qui mènent aux métabolites intégrés dans la fonction de biomasse. Pour chaque métabolite présent dans cette biomasse, Dal’Molin et al. ont regardé si ce métabolite était productible d’un point de vue "fonctionnel" en utilisant de la FBA. Si ce n’était pas le cas ils ont regardé manuellement quelles réactions sont à ajouter afin de rendre ce métabolite productible. Une complétion du réseau iRC1080 a été réalisée, mais aucune information autre que "Network gap-filling was performed to make pathways functionnal and account for deadend metabolites" n’est disponible dans l’article. La complétion du réseau Ostreococcus a été réalisé automatiquement, de deux manières différentes, en utilisant comme base de données le réseau meta-plant correspondant à l’union des 17 réseaux métaboliques de plantes contenus dans KEGG en 2012. La première complétion a été réalisée en utilisant l’approche "bottom-up" SMILEY [RPC+06] (voir section 1.4.2) et l’approche top-down de Christian et al [CMK+09] (voir section 1.4.4). Ces deux approches ne possédant pas de solution unique, un score prenant en compte la distance phylogénétique des espèces dont proviennent les réactions ajoutées et la similarité de sé- quence entre les enzymes connues et celles du génome d’intérêt a été utilisé. Si l’approcheReconstruction de réseaux métaboliques pour les algues 37 "bottom-up" donne un nombre plus faible de réactions ajoutées, l’approche "top-down" donne de meilleurs scores globaux. L’étape de complétion du réseau DiatomCyc a été réalisée entièrement à la main et en se concentrant uniquement sur les voies métaboliques connues et considérées comme intéressantes pour cette espèce, comme la biosynthèse des acides gras, des sucres ou encore des isoprénoïdes. Le réseau final représente le métabolisme central de P. tricornutum. La validation des réseaux considérés a également été plus ou moins soignée. De la FBA a été réalisée sur le réseau AlgaGem. Le critère ayant servi de base à la complétion manuelle étant la production de biomasse par le réseau via les techniques de FBA, il est normal qu’à la fin de la reconstruction la FBA fonctionne toujours. Pour le réseau iRC1080 une fonction objectif a également été créée et testée dans différentes conditions. Une attention toute particulière a été portée sur la validation des voies métaboliques impliquées dans la photosynthèse. Concernant Ostreococcus, là encore une fonction de biomasse a été créée en se basant sur la littérature. Très peu d’informations sont disponibles sur les expérimentations réalisées dans le cadre de l’étude du réseau par FBA. Enfin le réseau de Phaelodactylum tricornutum n’a reçu aucune validation fonctionnelle. Seules certaines voies métaboliques ont été étudiées manuellement d’un point de vue topologique. Une étude des données transcriptomiques disponibles pour cette espèce a toutefois permis de valider la prédiction de certaines de ces voies métaboliques. 1.5.4 Ectocarpus siliculosus Le modèle d’application de cette thèse est Ectocarpus siliculosus (représentée en figure 1.8), un eucaryote appartenant au groupe des algues brunes. Les algues brunes sont des organismes photosynthétiques multicellulaires et vivant principalement dans l’eau de mer qui appartiennent au groupe des straménopiles (aussi appelés hétérocontes). Les stramé- nopiles sont distants phylogénétiquement des plantes vertes et des opisthocontes (animaux et champignons) [CPC11], comme le montre la figure 1.9. L’ancêtre commun à ces trois lignées date de la radiation initiale des eucaryotes il y a plus d’un milliard d’années [YHC+04]. Depuis cette divergence, les algues brunes ont développé des caractéristiques spécifiques, qui leur ont notamment permis de s’adapter aux environnements extrêmes de la zone de balancement des marées (ou zone intertidale) et aux stress abiotiques induits. Ces organismes ont acquis leurs plastides lors d’une endosymbiose secondaire [Kee04] impliquant une capture d’une algue rouge, impactant grandement la structure interne de leurs cellules et sur la composition de leur génome du fait de transferts de gènes depuis l’endosymbiote. Les algues brunes sont des piliers des écosystèmes marins et costaux [GKD+07]. Elles sont également très importantes pour l’industrie de l’aquaculture en pleine expansion, et repré- sentent une ressource durable de composants importants pour des applications biotechnologiques [WLW+12, ENFB+14, WQJ13]. Parmi les algues brunes, Ectocarpus siliculosus a été choisie comme modèle génomique [CSR+10, BNLC13] et génétique [HCP+10], entraînant l’arrivée d’une nouvelle vague d’études sur cet organisme. Si les recherches sur Ectocarpus siliculosus se concentrent classiquement sur la biologie du développement [CGA+11, LBBLP+11], les plus récentes couvrent aujourd’hui des champs beaucoup plus larges tels que son évolution [PVC+10, DPR+11], son métabolisme [MTS+10b, MTS+10a, GDR+10, MCDL+13] ou son adaptation et38 État de l’art FIGURE 1.8: Photo de sporophyte d’Ectocarpus siliculosus en culture. FIGURE 1.9: Représentation simplifiée de l’arbre phylogénétique des eucaryotes [CPC11]. Les cinq groupes majeures ayant développé une multicellularité complexe sont repré- senté en couleur. La longueur des barres de couleur indique le temps relatif approché de développement de la multicellularité dans chaque lignée.Reconstruction de réseaux métaboliques pour les algues 39 acclimatation aux changements environnementaux [DSP+09, DGR+11, DGG+12, RUR+10]. Toutes ces études suggèrent que les algues brunes possèdent un métabolisme chimérique façonné par des endosymbioses et des transferts latéraux de gènes. Ces études suggèrent également une importance du mannitol dans le stockage de l’énergie et la défense face au stress. Nous reviendrons sur cette molécule plus particulièrement dans le chapitre 4. Malgré la disponibilité de jeux de données transcriptomiques, protéomiques et de pro- filages métaboliques [TEP+11], aucun réseau métabolique à l’échelle génomique n’avait été proposé avant cette thèse. Un tel réseau métabolique visait à servir de modèle pour le mé- tabolisme de l’ensemble des algues brunes. Cependant, l’application des méthodes utilisées pour les réseaux métaboliques d’algues s’avère délicate sur différents points. D’abord, la reconstruction de la plupart des ébauches métaboliques mentionnées cidessus a été réalisée en utilisant des informations pré-existantes dans KEGG. Cette base de données de référence ne contenant aucune information sur le génome ou les réactions pré- sentes chez Ectocarpus siliculosus, il est nécessaire d’utiliser uniquement les annotations (manuelles ou automatiques) existant chez cette espèce et disponibles via un portail web (http://bioinformatics.psb.ugent.be/orcae/overview/Ectsi). KEGG ayant changé de statut en juillet 2011 et l’accès étant maintenant payant, il fut nécessaire d’utiliser l’autre référence parmi les bases de données de réactions métaboliques, MetaCyc et le logiciel qui lui est associé, Pathway Tools. De plus, l’analyse bibliographique a mis en évidence le besoin de creuser les approches de complétions qui devraient être utilisées. En effet, la plupart des réseaux algues ont été complétés manuellement en utilisant les connaissances bibliographiques pré-existantes. Or l’utilisation de complétion manuelle est particulièrement compliquée lorsqu’on travaille sur des réseaux métaboliques chez des espèces non classiques. En effet, ceux-ci évoluent en permanence et réaliser une étude bibliographique à chaque modification minime du réseau devient vite irréalisable. À l’inverse, utiliser une méthode automatique non biaisée permet d’obtenir de nouvelles connaissances. Cependant, la reconstruction des réseaux d’Ostreococcus met en jeux deux techniques différentes de complétion : SMILEY [RPC+06] et une approche stochastique [CMK+09]. La première approche, décrite plus précisément en 1.4.2, nécessite d’avoir un grand nombre d’expérimentation sur l’espèce étudiée. En effet, cette méthode utilise les différences de croissance sur différents substrats pour que les réactions présentes dans le modèle amènent à des simulations en adéquation avec les observations numériquement parlant. On peut également utiliser des données de flux connues à travers certaines réactions. Dans le cas d’Ectocarpus siliculosus nous ne possédons pas de telles données mais uniquement des données de croissance en milieu eau de mer. L’application de la méthode stochastique ([CMK+09]) (là encore décrite plus précisément en 1.4.4) aurait été possible en théorie. Cependant en pratique, nous nous sommes rendu compte que cette méthode était non seulement très longue mais surtout donnait un grand élevé de solutions diffé- rentes. Celles-ci n’étant pas toutes équivalentes, pour les discriminer il faut introduire des scores pour chaque réaction. Ces scores sont habituellement définis en fonction de données d’orthologie et de données phylogénétiques. En présence d’une espèce éloignée phylogé- nétiquement des espèces classiquement étudiées, ces scores peuvent rapidement perdre de leur pertinence. De plus, dans le cas d’Ectocarpus siliculosus, cette espèce résulte de deux40 État de l’art endosymbioses, et les transferts horizontaux de gènes, non négligeables, risquent de ne pas être pris en compte par les données phylogénétiques. Cette analyse a mis en évidence que la reconstruction du réseau métabolique pour Ectocarpus siliculosus ne pourrait pas être réalisée en utilisant les pipelines utilisés pour les autres réseaux algues existant, en particulier à cause de l’hétérogénéité des sources de données permettant de reconstruire l’ébauche et de la nature des données fonctionnelles (pro- fils métaboliques) connues sur Ectocarpus siliculosus pour le compléter. 1.6 Principaux apports/résumé Durant cette thèse, nous nous sommes appliqués à proposer un processus de reconstruction de réseaux métaboliques appliqués aux espèces non classiques. Nous avons appliqué l’ensemble de ce processus à Ectocarpus siliculosus en vue d’obtenir un réseau mé- tabolique modèle pour les algues brunes. Ce processus global s’articule autour d’un point particulier, l’amélioration d’une technique existante de complétion de réseaux métabolique résolvant un problème combinatoire difficile. Cette amélioration sera présentée dans le chapitre 2. Nous sommes ainsi passés d’une méthode expérimentale fonctionnant sur de petits jeux de données à une méthode rapide, précise et permettant d’obtenir l’ensemble des complétions minimales possibles pour un réseau métabolique donné. Une fois ce problème combinatoire résolu, nous nous sommes appliqués à intégrer cet outil dans un processus global de reconstruction de réseaux métaboliques que nous avons appliqué à Ectocarpus siliculosus . Ce pipeline décrit dans le chapitre 3 utilise des données génomiques (annotations et séquences) pour reconstruire une ébauche métabolique. Cette ébauche sera ensuite améliorée par l’utilisation de données de profilage métabolique permettant de faire des hypothèses sur les réactions manquantes dans le réseau. Enfin nous proposons des gènes pouvant coder pour les enzymes pour lesquelles nous émettons l’hypothèse qu’elles sont présentes chez l’organisme malgré l’absence d’annotation équivalentes au niveau du génome. La reconstruction du réseau métabolique d’Ectocarpus siliculosus et sa curation manuelle ont permis d’obtenir de nouvelles indications sur le métabolisme de cette algue. Ces hypothèses, qui concernent par exemple la synthèse des acides aminés aromatiques ou encore du molybdenum seront présentées dans le chapitre 4.Chapitre 2 Complétion combinatoire de réseau métabolique Durant ce chapitre nous allons étudier plus précisément le problème de complétion d’ébauches de réseaux métaboliques tel que défini par Schaub and Thiele [ST09]. Après avoir décrit le problème d’optimisation auquel nous faisons face dans la partie 2.1, nous étudierons différentes extensions de ce problème pour en améliorer les performances : nouvelle modélisation de la réversibilité (partie 2.4), impact des heuristiques de résolution (partie 2.3), impact de la sémantique de productibilité (partie 2.5). Dans une dernière section (partie 2.5.4), nous étudierons l’efficacité de l’approche de complétion combinatoire revisitée en terme de fonctionnalité quantitative. Une partie des résultats de ce chapitre a été présentée lors de la conférence LPNMR 2013 et avant d’être publiée dans les actes de cette même conférence [CEG+13]. 2.1 Problème d’optimisation 2.1.1 Espace de recherche Un réseau métabolique est représenté par un graphe dirigé bipartite G = (R ∪M,E) où R et M sont des nœuds représentant respectivement les réactions et les métabolites. Les réactants d’une réaction correspondent à l’ensemble des nœuds reliés par des arêtes entrant dans un nœud R, soit r eac(r ) = {m ∈ M|(m, r ) ∈ E}. Les produits correspondent aux arêtes sortantes : pr od(r ) = {m ∈ M|(r,m) ∈ E}. Les entrées du problème d’optimisation consistent en l’introduction d’un ensemble de métabolites M et deux ensembles de réactions reliant des métabolites de l’ensemble M : – Une ébauche de réseau métabolique formée du groupe de réactions : Rd r a f t , – Une base de données de réactions métaboliques formée de réactions : Rdb. Parmi les métabolites M on définit aussi deux sous-ensembles de métabolites : – Un ensemble de métabolites graines : Mseed ⊂ M, – Un ensemble de métabolites cibles : Mt ar g e t ⊂ M. L’espace de recherche va être constitué de l’ensemble des sous-ensembles de R = Rd r a f t∪ Rdb. 4142 Complétion combinatoire de réseau métabolique 2.1.2 Atteignabilité Le problème de complétion est particulièrement dépendant du concept d’atteignabilité. La définition la plus simple d’atteignabilité est purement topologique et consiste à propager les dépendances du graphe. On dit qu’une réaction r ∈ R est topologiquement atteignable depuis M′ si l’ensemble de ses réactants est dans le scope de M′ , c’est-à-dire si r eac(r ) ⊆ M′ . De manière similaire, on dit qu’un métabolite est atteignable depuis M′ si m ∈ M′ ou si m ∈ pr od(r ) pour au moins une réaction r ∈ R atteignable depuis M′ . L’ensemble des métabolites atteignables depuis Mseed , noté scopeFW D(Mseed ) (ou F w f (Mseed ) dans [CMA+08]), est l’ensemble des métabolites produits à partir des graines en utilisant les réactions du réseau. Formellement, scopeFW D(Mseed ) est le résultat de l’itération Mi+1 = Mi ∪ pr od(r eac(Mi)) partant de Mseed jusqu’à atteindre un point fixe. L’ensemble des mé- tabolites atteignables depuis Mseed , noté scopeFW D(Mseed ), pourra être calculé en temps polynomial [RK01, ST09]. Une deuxième définition plus fine d’atteignabilité a été introduite par Cottret, avant d’être utilisée par Acuna et Sagot, dans [CMA+08, AMC+12] et cherche à introduire les effets des cycles dans la production des cibles. Il s’agit de définir l’ensemble des précurseurs d’une manière plus élaborée. Au lieu de commencer la propagation depuis un ensemble de sources, les auteurs autorisent l’inclusion de métabolites internes, sous la condition que ces métabolites internes soient produits par une réaction dans une étape ultérieure de la propagation. On définit ainsi F wdZ (M), l’ensemble des cibles de M avec Z comme mé- tabolite interne, comme le résultat de l’itération Mi+1 = Mi ∪ pr od(r eac(Mi ∪ Z)) partant de M0 = Mseed jusqu’à atteindre un point fixe. Ainsi, un ensemble S ⊂ Mseed est précurseur d’un ensemble T s’il existe Z tel que T et Z sont inclus dans l’ensemble F wdZ (S). Cela permet d’identifier les éléments assurant le maintien de différents cycles sans provenir de sources externes. À partir de ce concept, il est possible de définir un nouvel ensemble scopeInter nal Suppl y (Mseed ) de cibles atteignables à partir d’une ensemble de sources Mseed . Il va s’agir de tous les métabolites qui admettent Mseed comme ensemble de précurseurs. L’ensemble scopeInter nal Suppl y (Mseed ) pourra être calculé en temps polynomial [AMC+12]. Enfin, lorsque la stœchiométrie du réseau est disponible, on peut aussi considérer que l’ensemble des métabolites atteignables à partir d’un ensemble de sources correspond à l’ensemble des produits de réactions non bloquées, c’est-à-dire pouvant posséder un flux non-nul en FVA. L’ensemble scopeF B A(Mseed ) sera alors défini par des contraintes linéaires et pourra être, la plupart du temps, calculé en temps polynomial [MB13]. Dans leur article, Acuna et al. [AMC+12] proposent un exemple permettant de bien comprendre leur définition de l’atteignabilité. Cet exemple est présenté en figure 2.1. Dans cet exemple, la cible t sera atteignable aussi bien lorsque l’on utilise la sémantique topologique simple que celle avec recyclage interne. Pour la sémantique topologique simple, pour pouvoir produire t, il va falloir que h appartienne au scope des sources. Cette molécule est productible à partir de deux réactions, r3 et r5, cette dernière nécessitant la présence de e dans le scope. Or la molécule e pourra être produite directement à partie de deux sources, b et c. La cible t sera donc productible et ce malgré le fait que g et f ne fassent pas partie du scope des sources. Pour la sémantique topologique avec recyclage interne, si l’on suit la propagation, avec M0 = {a,b,c} nous aurons alors M1 = {a,b,c,e} de manière classique puis M2 = {a,b,c,e,h} et enfin M3 = {a,b,c,e,h,i,t} qui sera un point fixe. Nous aurons donc F wd({a,b,c}) =Problème d’optimisation 43 FIGURE 2.1: Représentation schématique d’un réseau métabolique[AMC+12]. Les nœuds représentent les métabolites et les hyper-arcs représentent les réactions. Les nœuds gris correspondent aux sources et le nœud noir la cible. {a,b,c,e,h,i,t}. En revanche, avec l’ensemble des sources présentes dans cet exemple nous aurons M0 = {a,b,c,d} puis M1 = {a,b,c,d,e, f , g ,h} étant donné que les métabolites f et g sont des métabolites internes à un cycle pouvant être produites plus tard par ce même cycle. Nous aurons enfin M2 = {a,b,c,d,e, f , g ,h,i,t} qui sera le point fixe. Une fois ce point fixe atteint, nous pouvons conclure que F wdZ ({a,b,c,d}) = {a,b,c,d,e, f , g ,h,i,t}. Il est intéressant de remarquer que F wdZ ({a,b,c,d}) = F wdZ ({c,d}) si l’on ne prend pas en compte les sources a, b et c qui ne peuvent être produites par aucune réaction. 2.1.3 Problème de complétion Trouver une complétion de réseaux métaboliques correspondra à trouver un sous-ensemble de réactions Rcomple t i on ⊂ Rdb de telle manière que le scope de Mseed associé aux réactions Rd r a f t ∪Rcomple t i on contienne l’ensemble des métabolites Mt ar g e t . Plus formellement, une complétion de (Rd r a f t ∪Md r a f t ,Ed r a f t) à partir de (Rdb ∪Mdb,- Edb) par rapport à Mseed et Mt ar g e t est un ensemble de réaction Rcomple t i on ⊆ Rdb \Rd r a f t tel que Mt ar g e t est atteignable à partir de Mseed dans le réseau ((Rd r a f t ∪ Rcomple t i on) ∪ (Md r a f t ∪ Mcomple t i on),Ed r a f t ∪ Ecomple t i on), où Mcomple t i on et Ecomple t i on sont les projections de Mdb et Edb sur le réseau complété. En particulier, cette définition dépend de la notion d’accessibilité utilisée : scopeFW D, scopeInter nal Suppl y , scopeF B A. Lors de la complétion, nous allons minimiser le nombre de réactions ajoutées aux ré- seau métabolique initial. Pour cela nous définissons un score S correspondant au nombre de réactions de R ′ à ajouter pour obtenir une solution. Un premier problème d’optimisation consistera donc à minimiser S. Une fois la taille de l’ensemble minimal de réactions à ajouter déterminée, nous allons chercher exhaustivement l’intégralité des ensembles de réactions de cette taille permettant de compléter le réseau. Les différents problèmes de complétion que nous allons étudier consistent donc à calculer :44 Complétion combinatoire de réseau métabolique – Une complétion minimale en taille à un réseau métabolique, – Toutes les complétions minimale en taille, – L’union ou l’intersection des complétions minimales en taille. Dans les applications, nous utiliserons plutôt l’union de l’ensemble des solutions obtenues pour ne pas avoir à discriminer des complétions sans connaissance biologique préalable. Les variantes de ce problèmes dépendent bien évidemment de la notion d’accessibilité. Une variante, dont la complexité est bien plus élevée, consiste à recherche des complétions minimales au sens ensembliste. Comme indiqué dans l’état de l’art, Schaub et Thiele [ST09] ont proposé une modélisation en programmation par ensemble-réponse du problème d’optimisation correspondant à la notion d’accessibilité topologique scopeFW D. Ce programme ASP est décrit en annexe. Dans [ST09], les auteurs ont montré que ce programme permettait de répondre à la question de la complétion de réseaux métaboliques. Leurs expériences ont été réalisés sur des réseaux bactériens (E. coli) ayant été dégradés et dont la complétion est réalisée à partir de sous ensembles de taille croissante de la base de données de réactions métaboliques, MetaCyc. Ce programme montrait alors des performances acceptables pour une petite taille de base de données mais ces performances se dégradaient dès que la taille de celle-ci approchait la taille réelle. 2.2 Jeux de test De manière à étudier les performances de Network-expansion vis-à-vis de différents critères, nous avons construits plusieurs jeux de donnés de test. 2.2.1 Impact de la taille des bases de complétion : Ectocarpus siliculosus & MetaCyc Afin de mesurer l’impact de la taille de la base de complétion, nous avons créé un jeu de test se rapprochant le plus possible de la réalité. Une des applications étant la complétion de réseaux métaboliques de nouvelles espèces d’intérêt, nous avons décidé de faire ce benchmark en se basant sur un réseau "brut" d’Ectocarpus siliculosus. Ce réseau (à l’inverse de celui présenté dans le chapitre 3) a été créé à partir de la fusion entre un réseau créé depuis d’anciennes annotations du génome d’Ectocarpus siliculosus et une toute première version de l’ébauche créée à partir de données d’orthologie. La méthodologie de création de ce réseau sera plus détaillée dans le chapitre 3, le but ici étant de démontrer la faisabilité de la complétion d’un point de vue informatique et non la pertinence biologique de la création de l’ébauche métabolique. L’ébauche métabolique d’Ectocarpus siliculosus, non complétée, contenait à l’époque 1210 réactions et 1454 métabolites. D’après les informations biologiques que nous possé- dons, nous pouvons recenser 44 métabolites graine, qui correspondent aux constituants du milieu de croissance de l’algue, et 48 métabolites cibles, qui correspondent à des molécules identifiées comme étant productibles par l’algue. En utilisant la sémantique topologique simple ou avec recyclage interne, nous pouvons constater que le réseau initial n’était pas capable de produire 25 des cibles.Jeux de test 45 La taille de la base de donnée étant le facteur majeur de la complexité, nous avons décidé de jouer principalement sur celle-ci pour la construction du jeu de test. Nous avons donc créé des sous-ensembles de la base de données MetaCyc (version 17.0) de taille comprise entre 10000 et 5000 réactions, en enlevant 1000 réactions à chaque fois. Pour chaque taille de base de données, 10 réplicats ont été réalisés. Nous avons veillé à ce que chaque sousensemble contienne à peu près la même proportion de réactions réversibles que la base de données initiale, c’est à dire 42%. 2.2.2 Effet de la taille de la base de données sur la productibilité des cibles Étant donné que nous prenons des sous-parties de la base de données MetaCyc dans cette étude, les métabolites cibles productibles à partir des graines vont varier selon les ré- actions présentes dans ces sous-ensembles. De manière intéressante, les deux sémantiques étudiées (topologique simple et avec recyclage interne) permettent dans tous les cas étudiés de produire les mêmes métabolites à partir du réseau initial auquel a été ajouté toutes les réactions présentes dans les sous-ensembles des bases de données. Cela semble indiquer que les cycles ne sont jamais bloquant pour produire des métabolites d’un point de vue topologique, du moins dans les exemples étudiés ici. La figure 2.2 présente la distribution du nombre de cibles productibles selon les sous-ensembles de la base de données utilisés. Taille de la base de données Nombre de cibles non productibles FIGURE 2.2: Représentation de la répartition statistique du nombre de métabolites non productibles en fonction de la taille de la base de données utilisée. Les boites correspondent à la taille du premier et du troisième quartile, la ligne centrale correspond à la moyenne et les barres correspondent aux valeurs extrêmes. Le réseau initial est capable de produire 23 cibles sur les 48 identifiées. Il reste donc 25 cibles à reconstruire à l’aide des bases de données. La figure 2.2 nous montre que, globalement, plus la taille des sous-ensemble de MetaCyc considérés augmente, plus il est possible d’expliquer la productibilité des cibles. Ce point particulier sera à retenir pour la suite, la46 Complétion combinatoire de réseau métabolique taille des complétions proposées ainsi que le temps de calcul pour les identifier sera évidemment influencé par le nombre de voies métaboliques à compléter. 2.2.3 Fonctionnalité : E. Coli Pour tester la différence entre la sémantique de productibilité topologique et une sé- mantique quantitative, nous avons exploité un réseau de référence pour sa fonctionnalité et la qualité de l’annotation de ses cycles. Il s’agit d’un réseau d’Escherichia coli, Ec_iJR904 issu de la banque de référence gérée par H. Pallson [RVSP03]. Ce réseau est composé de 1.074 réactions (dont 143 réactions à la frontière du système pour l’import et l’export de molécules) et 905 composés métaboliques différents. Une fonction de biomasse formée de 49 métabolites différents a été utilisée dans le cadre de cette étude. Ce réseau existe sous la forme d’un fichier sbml, mais celui-ci n’étant pas totalement cohérent intrinsèquement (voir par la suite) nous avons finalement choisi de partir de la matrice stœchiométrique associée pour reconstruire des fichiers sbml. On peut regretter que les identifiants (des métabolites et des réactions) de ce réseau ne soient pas normalisées vis-à-vis des bases de données de réactions de référence (KEGG ou MetaCyc). En particulier, cela nous a empêcher d’utiliser MetaCyc comme base de référence pour tester la complétion sur des versions dégradées de ce réseau L’idée générale est de regarder dans ce réseau, pour des fonctions objectives différentes, les types de réactions qui existent (réactions obligatoires, bloquées et alternatives pour la production de biomasse) en utilisant les techniques de FBA (pour tester la fonctionnalité globale du réseau) et de FVA (pour trouver les classes de réactions). Une fois ces réactions classées, nous dégradons chaque réseau en enlevant une proportion équivalente de chaque classe de réactions. Une fois la dégradation accomplie, nous utilisons une approche de complétion topologique simple pour compléter le réseau afin de rendre productible d’un point de vue topologique l’ensemble des métabolites compris dans la biomasse. Les jeux de tests qui ont été extraits de ce réseaux ont consisté à les dégrader de manière à casser la production de la biomasse. À partir de la fonction de biomasse associée au réseau, 90 biomasses intermédiaires ont été créés aléatoirement en enlevant 9 à 26 composants à cette biomasse. Le déroulement globale de la création du jeu de test a été celui-ci : – Identification de la classe de chaque réaction en rapport avec la fonction de biomasse étudiée (Obligatoire, bloquée ou alternative) à l’aide de techniques de FVA. – Dégradation du réseau selon différentes contraintes : – Enlever entre 10 et 40% des réactions du réseau par palier de 10%, – Rompre la production de biomasse en FBA, – Enlever une proportion égale de réactions obligatoires, bloquées et alternatives, – Réaliser 10 réplicats aléatoires pour chaque dégradation. Au final nous obtenons 9.600 réseaux dégradés : 4 pourcentages de dégradation * 10 réplicats * 90 fonctions de biomasse. Tout ces réseaux sont non fonctionnels vis-à-vis de la biomasse qui leur est associée. La complétion effectuée par la suite correspond à compléter ces réseaux dégradés en utilisant comme base de référence le réseau initial non dégradé, le but étant d’identifier à quelle classe appartiennent les réactions ainsi ajoutées.Jeux de test 47 Une difficulté pour la préparation de ces jeux de données a consisté à identifier correctement les informations relatives à la réversibilité des réactions ou de la direction des réactions des fichiers sources. Dans un fichier sbml il y a en effet deux manières de spécifier la réversibilité et/ou la direction d’une réaction. Ainsi, pour la réversibilité, il est possible de spécifier un argument "reversible" à une réaction de la manière suivante : Listing 1: Une réaction définie comme réversible en format SBML 1 ou Listing 2: Une réaction définie comme irréversible en format SBML 1 Cependant, il est également possible de spécifier l’espace des possibles pour les flux passant à travers cette réaction en fixant une upper-bound (borne supérieure) et une lowerbound (borne inférieure) pour ces flux. Typiquement pour la réaction 3 il est indiqué qu’il s’agit d’une réaction réversible alors que les flux ne peuvent aller que dans une seule direction. Il existe également deux manières d’indiquer la direction des réactions, là encore en prenant en compte les valeurs des flux ou non. Ainsi, dans les spécifications de SBML, il est possible de désigner une molécule comme réactant d’une réaction ou comme produit de celle-ci. Une réaction irréversible (peu importe la manière dont l’irréversibilité est introduite) ayant pour réactant une molécule A et une molécule B, et ayant pour produit une molécule C correspondrait donc à : A +B →C. Cependant, là encore, il faut prendre en compte les flux. Pour certaines réactions, la borne supérieure du flux peut être nulle et la borne inférieure peut être négative. Cela indique que la réaction ne doit pas être prise dans le sens initial mais dans le sens inverse, où les réactants deviennent les produits, et les produits deviennent les réactants. C’est le cas notamment de la réaction 3 (ayant pour identifiant "R_EX_o2_LPAREN_e_RPAREN_") qui est définie comme faisant rentrer du dioxygène dans une cellule, mais, si l’on se fie aux flux, qui exporte du dioxygène de l’intérieur vers l’extérieur de la cellule. Listing 3: Une réaction irréversible spécifiée comme réversible mais dont le sens des flux ne correspond pas à la définition 1 2 3 Abbreviation: R_EX_o2_LPAREN_e_RPAREN_ 4 Synonyms: _0 5 Equation: [e] : o2 <==> 6 Confidence Level: 7 GENE ASSOCIATION: 8 9 10 48 Complétion combinatoire de réseau métabolique 11 12 13 14 15 16 17 FLUX_VALUE 18 19 20 21 22 23 24 25 26 Ces différentes formalisations indiquent que les réseaux présentés sous leurs formats SBML et matriciels peuvent en fait avoir des comportements et des structures très diffé- rentes. Pour homogénéiser les analyses et les comparaisons entre approches quantitatives et qualitatives, il a été décidé de ne pas prendre en compte les informations présentes dans les fichiers SBML mais de reconstruire des fichiers SBML cohérents à partir de matrices stœ- chiométriques et de vecteurs de flux. 2.3 Performance Comme indiqué dans l’état de l’art, Schaub et Thiele [ST09] ont proposé une modélisation en programmation par ensemble-réponse du problème d’optimisation correspondant à la notion d’accessibilité topologique scopeFW D. Ce programme ASP, appelé Networkexpansion, est décrit en annexe. Dans [ST09], les auteurs ont montré que ce programme permettait de répondre à la question de la complétion de réseaux métaboliques. Leurs expériences ont été réalisés sur des réseaux bactériens (E. coli) ayant été dégradés et dont la complétion est réalisée à partir de sous ensembles de taille croissante de la base de données de réactions métaboliques, MetaCyc. Ce programme montrait alors des performances acceptables pour une petite taille de base de données mais ces performances se dégradaient dès que la taille de celle-ci approchait la taille réelle. 2.3.1 Heuristiques de résolutions En 2012, une nouvelle méthode de recherche pour les solveurs ASP a été développée par l’équipe qui maintient la collection Potassco [GKK+11] et qui développe notamment le solveur ASP Clasp. Cette méthode de recherche utilise une optimisation basée sur l’insatis- fiabilité de contraintes [AKMS12]. Jusque avant la version 3, le solveur Clasp [GKS12] utilisait uniquement des méthodes d’optimisation très efficaces basées sur des algorithmes de séparation et d’évaluation (ouPerformance 49 branch and bound). Ces techniques top-down ont montré leur efficacité pour résoudre de nombreux problèmes d’optimisation en travaillant énormément sur les bornes supérieures et inférieures d’un problème. La stratégie globale consistera à descendre plus ou moins rapidement une borne supérieure jusqu’à atteindre une configuration insatisfiable qui marquera une borne inférieure. Cette méthode d’optimisation a montré sa forte efficacité sur certains types de problèmes. En parallèle, une nouvelle méthode a émergé du domaine des solveurs SAT pour résoudre les problèmes MaxSAT [CKS01]. Cette approche se base sur l’identification et la relaxation de cœurs insatisfiables et a montré son efficacité notamment lors de compétitions comme la "2008 MaxSAT evaluation". Le solveur Clasp étant peu ef- ficace pour certains problèmes résolus efficacement par cette approche les développeurs de ce solveur se sont inspirés de ces nouvelles techniques pour développer une heuristique efficace combinant les caractéristiques d’ASP et les techniques développées dans ce cadre, en étendant l’algorithme à la résolution de problèmes d’optimisation pondérée [AKMS12]. La base de ce travail consiste en l’identification de cœurs insatisfiables. Un cœur insatisfiable est un sous-ensemble de clauses du problème initial dont la conjonction est insatisfiable. La méthode essaie donc de résoudre le problème une première fois. Si elle y arrive directement, le problème est satisfiable, la solution est trouvée. Sinon on identifie ainsi un ensemble insatisfiable de contraintes. Le solveur va alors relaxer des contraintes afin que l’ensemble soit satisfiable avant d’identifier un autre ensemble insatisfiable, les relaxer à leur tour et cela jusqu’à ce qu’il n’y ai plus de contraintes insatisfiables dans le problème. Dans le cadre de notre problème d’optimisation, nous cherchons à minimiser le nombre de réactions ajoutées dans un modèle à partir d’une base de données de réactions métabolique très grande. Nous avons donc un problème de minimisation qui sera traditionnellement traité par une approche "top-down" en prenant un modèle stable résout l’ensemble des contraintes, peu importe sa taille, avant de réduire la taille du modèle petit à petit. Étant donné que la taille de la base de données est très grande par rapport à la taille de la solution recherchée (de l’ordre de la dizaine de milliers pour la base de données contre des solutions de taille inférieure à 100), cette minimisation pourra être longue. À l’inverse l’heuristique se basant sur les cœurs insatifiables va traiter le problème par une approche "bottom-up" en cherchant des solutions de très petite taille puis en augmentant progressivement la taille de ces solutions jusqu’à trouver un modèle stable satisfaisant l’ensemble des contraintes qui sera donc de taille minimale. Cette méthode ayant été validée par les chercheurs de Potsdam sous la forme d’un solveur à part entière (Unclasp),elle a ensuite été intégrée au solveur Clasp (à partir de Clasp 3.0 en février 2014) sous la forme d’une paramètre de recherche : –opt-strategy=usc. Par soucis de lisibilité, nous désignerons dans la suite par : – Clasp : la recherche par séparation et évaluation (Clasp version 2, ou version 3 avec le paramètre –opt-strategy=bb), – Unclasp : la recherche MaxSat (Unclasp version 0.1 ou Clasp version 3 avec le paramètre –opt-strategy=usc). 2.3.2 Nouvelle méthode d’optimisation dans Network-expansion L’apparition de nouvelles techniques de recherche a permis de faire évoluer Networkexpansion qui réalisait la complétion topologique. Clasp a été configuré de manière à pouvoir trouver au plus vite une solution optimale en autorisant des redémarrages de la re-50 Complétion combinatoire de réseau métabolique cherche afin de ne pas rester bloqué dans des optimas locaux. Cette solution semble être la meilleure pour ce solveur après utilisation quotidienne de celui-ci pendant plusieurs mois. Unclasp n’étant pas capable de réaliser l’énumération des solutions ainsi que l’intersection des solutions, seul Clasp a été utilisé dans ce cas afin d’observer l’influence de l’inclusion de la réversibilité dans la modélisation. 2.3.3 Recherche d’optimum Nous avons utilisé les jeux de tests pour tester l’impact des deux méthodes de résolution Clasp ou Unclasp sur les performances de la complétion. Les critères testés ont été les suivants : – Calcul des optimaux de complétion, – Énumération de toutes les solutions possibles, – Calcul de l’intersection de toutes les solutions possibles. La figure 2.3 donne les résultats de ce test pour le temps de calcul des optimaux en fonction du solveur. 5000 6000 7000 8000 9000 10000 Complète Nombre de réactions 0.1 1 10 100 1000 10000 100000 Temps en secondes (log) Clasp Unclasp FIGURE 2.3: Temps de calcul de Clasp et Unclasp pour la recherche de la taille minimale de complétion. Les cercles transparents correspondent à la médiane des expérimentations avec Clasp. Les carrés grisés correspondent à la médiane des expérimentations avec Unclasp. Pour chaque expérience, les valeurs minimale et maximale sont reportées avec des lignes verticales. Comme nous pouvons le voir, le changement de méthode de recherche entraîne un gain important dans le temps de calcul des optimaux. Étant donné que nous avons un timeout à 100.000 secondes, nous remarquons que, même avec une taille de base de données dePerformance 51 9000 réactions, il était souvent impossible de trouver des solutions au problème étudié. Les résultats de la complétion ainsi que le détail des timeout avec Clasp sont donnés dans le tableau 2.1. TABLE 2.1: Tailles et nombre de solutions optimales pour chaque sous-ensemble de réactions. Les time-outs de Clasp sont également reportés (100.000 secondes). Nombre de réactions 5000 6000 7000 8000 9000 10000 Complet Taille de l’optimal [6,14] [7,22] [7,29] [9,29] [16,47] [33,50] 52 Nombre de solutions [4,32] [6,324] [6,1728] [16,3456] [80,1150] [180,22800] 2600 Time-out de Clasp 0 0 1 3 9 10 10 2.3.4 Impact de la taille de la base Une fois la recherche d’optima réalisée, nous pouvons utiliser cet optimum pour rechercher l’ensemble des solutions de taille minimale permettant de compléter le réseau métabolique. Unclasp n’étant pas capable de faire cette énumération, nous avons utilisé uniquement Clasp pour cela. Les résultats sont présentés en figure 2.4. Ces résultats nous montrent que le nombre de solutions différentes augmente jusqu’à atteindre un plateau autour d’une taille de base de données de 9.000 réactions, tandis que le temps de calcul augmente exponentiellement avec la taille de la base de données. Cela semble montrer que 9000 réactions sont suffisantes pour compléter le réseau, les autres réactions augmentant l’espace de solutions, et donc le temps de calcul. Malgré cette croissance exponentielle, le calcul de l’ensemble des solutions reste réalisable en un temps suffisamment court pour être utilisé en routine. Cela est principalement dû au fait que l’utilisation d’Unclasp nous permet d’avoir la valeur de l’optimum en un temps très court. Ceci montre tout d’abord que l’utilisation des méthodes de recherche d’Unclasp permet de calculer le nombre minimum de réactions à ajouter lors de l’étape de complétion du réseau métabolique en quelques secondes malgré un espace de solution très grand. Cette première étape est indispensable à toute autre étude de complétion. Il est à noter que la taille de la base de données ne semble pas impacter énormément la recherche d’optimas avec Unclasp. Ce solveur est en effet particulièrement adapté à la recherche d’optima très petits (ici de taille 50 environ) face à un espace de solutions très grand (plus de 10000 réactions). Enfin, nous avons déterminé la valeur de l’intersection des solutions ainsi que le temps nécessaire au calcul de cette intersection. L’intersection des solutions est calculée en utilisant l’option –enum-mode=cautious de Clasp. La figure 2.5 présente les résultats obtenus. On remarque encore une fois que le temps de calcul est exponentiel par rapport au nombre de réactions dans la base de données. Par contre, la taille de l’intersection grandit beaucoup moins vite alors que le nombre de solutions optimales augmente énormément. Cela est cohérent avec les observations réalisées au cours de la thèse selon lesquelles le nombre total de solutions possibles n’impacte que très peu sur la taille de l’union et/ou de l’intersection de ces solutions. Cela semble indiquer une très forte redondance dans l’ensemble des solutions étudiées.52 Complétion combinatoire de réseau métabolique 5000 6000 7000 8000 9000 10000 Complète Nombre de réactions 1 10 100 1000 10000 100000 Temps en secondes (log) 1 10 100 1000 10000 100000 Nombre de solutions Nombre de solutions Temps de calcul FIGURE 2.4: Temps de calcul de Clasp pour énumérer l’ensemble des solutions Les cercles transparents correspondent aux médianes des durées des expérimentations. Les points noirs correspondent aux médianes du nombre de solutions. Les lignes verticales correspondent aux valeurs maximales et minimales.Performance 53 5000 6000 7000 8000 9000 10000 Complète Nombre de réactions 1 10 100 1000 10000 100000 Temps en secondes (log) 1 10 100 1000 10000 100000 Taille de l'intersection Temps de calcul Taille de l'intersection FIGURE 2.5: Temps de calcul de Clasp pour déterminer les intersections des solutions optimales. Les cercles transparents correspondent aux médianes des résultats de durée des expérimentations. Les points noirs correspondent à la taille médiane des intersections. Les lignes verticales correspondent aux valeurs maximales et minimales.54 Complétion combinatoire de réseau métabolique Suite aux différentes observations, nous pouvons dire que l’utilisation de la combinaison des méthodes de recherche d’Unclasp et Clasp est indispensable pour permettre la reconstruction de réseaux métaboliques avec ce programme ASP. La méthode de recherche d’Unclasp est la seule capable (en un temps raisonnable) de calculer le nombre minimal de réactions à ajouter au réseau métabolique, mais n’est pas capable, ni d’énumérer l’ensemble des solutions optimales, ni de calculer leur intersection ou leur union. En revanche, une fois que l’optimum recherché est connu, Clasp permet de réaliser ces trois tâches en un temps suffisamment court pour être utilisé en routine. Maintenant que la méthode d’optimisation présente dans Unclasp a été ajoutée dans Clasp (version 3), la combinaison des deux outils en un seul simplifie cette étape de complétion. 2.4 Impact du codage de la réversibilité sur les performances de Network-expansion 2.4.1 Réversibilité dans Network-expansion Au début du projet, Network-expansion ne prenait pas du tout en compte les réactions réversibles. Si une réaction dans une base de données ou dans un modèle était considérée comme réversible, cette réaction était dédoublée pour créer deux réactions différentes, une allant dans un sens et l’autre dans le sens inverse. Cette modélisation initiale peut poser différents problèmes, en terme de fonctionnalité comme de performance. Tout d’abord, créer deux réactions en sens inverse l’une de l’autre pour chaque réaction réversible est incompatible avec la réalité biologique que l’on souhaite modéliser lors de la création d’un réseau métabolique et pour sa complétion avec Network-expansion. En effet, la réversibilité d’une réaction est une donnée importante en biologie et deux réactions possédant les mêmes réactants et mêmes produits mais ne partageant pas la même réversibilité pourront être catalysées par des enzymes différentes. Un tel exemple est présenté en figure 2.6. ADENOSINETRIPHOSPHATASE-RXN PHOSPHATE H+ ADP H2O ATP 3.6.4.4-RXN PHOSPHATE H+ ADP H2O ATP FIGURE 2.6: Exemple de deux réactions impliquant les mêmes molécules et provenant de la même base de données (MetaCyc), l’une étant réversible et l’autre irréversible. Ainsi, ajouter la réaction ayant pour identifiant "ADENOSINETRIPHOSPHATASE-RXN"Impact de la réversibilité sur les performances de Network-expansion 55 OU "3.6.4.4-RXN" n’aura pas les mêmes implications en matière de recherche biologique. De plus, étant donné que nous essayons d’ajouter le nombre minimal de réactions pour compléter le réseau, si nous avons besoin qu’une réaction réversible fonctionne dans les deux sens, nous devrions ajouter deux réactions différentes plutôt qu’une seule dans le ré- seau, au risque de biaiser le résultat final en terme de cardinalité. D’autre part, cette dissociation d’une réaction réversible en deux réactions irréversibles n’était pas automatique lors de la complétion, et devait se faire manuellement en amont. L’objectif de cette thèse étant notamment de produire un outil utilisable aisément par toute personne travaillant sur des réseaux métaboliques, cette étape risquait d’être oubliée, entraînant ainsi une totale incohérence au niveau des résultats, seul un des sens des réactions réversibles étant pris en compte aléatoirement. Enfin, comme montré précédemment, la complétion d’un réseau métabolique est un problème hautement combinatoire. Hors, les bases de données contiennent énormément de réactions réversibles (autour de 40% des réactions dans MetaCyc 17.0). L’espace des solutions de complétion des réseaux métaboliques est très grand. Dédoubler cet espace des solutions pour chaque réaction réversible agrandit encore plus l’espace des solutions, avec un risque important de ralentir la recherche de l’optimum. 2.4.2 Nouvelle modélisation ASP de la réversibilité À l’inverse, conserver les réactions réversibles telles quelles en changeant l’encodage, outre le fait d’outrepasser l’ensemble des problèmes cités précédemment, possède quelques avantages vis-à-vis du solveur de contraintes. Ainsi, si l’on garde les réactions comme réversibles, l’espace des solutions ne grandit plus, et ajouter une réaction réversible permet de s’affranchir plus tard de l’étude de l’autre sens de réaction. En ASP, cela a consisté à créer un fait "reversible/1" pour chaque réaction réversible du modèle et de la base de données de réactions, et d’utiliser ce fait pour changer la définition des scopes utilisant des réactions réversibles. Ainsi, par exemple, le scope d’une molécule M pourra désormais être calculé de la manière présentée en listing 4. Ceci est à comparer avec la précédente version de la définition d’un scope avec le code ASP initial présenté en annexe B. Il était alors nécessaire de créer une seconde réaction en inversant les réactants et les produits. Listing 4: 1 scope(M) :- seed(M). 2 scope(M) :- product(M,R), reaction(R), scope(M’) : reactant(M’,R). 3 scope(M) :- reactant(M,R), reversible(R), scope(M’) : product(M’,R). 2.4.3 Impact sur les performances La figure 2.7 donne les résultats de ce test pour le temps de calcul des optimaux en fonction de la réversibilité pour l’utilisation de Clasp et d’Unclasp. Nous pouvons remarquer que l’introduction de la réversibilité, en plus d’être plus proche de la réalité biologique, a permis d’accélérer grandement la recherche d’optimaux avec Un-56 Complétion combinatoire de réseau métabolique FIGURE 2.7: Temps de calcul de Clasp et Unclasp pour la recherche de la taille minimale de complétion. Les cercles correspondent à la médiane des expérimentations avec Clasp. Les carrés correspondent à la médiane des expérimentations avec Unclasp. Les ronds et carrés grisés correspondent à la modélisation avec prise en compte de la réversibilité, les ronds et carrés vides correspondent à la même modélisation sans cette prise en compte. Pour chaque expérience, les valeurs minimale et maximale sont reportées avec des lignes verticales.Sémantique de productibilité 57 clasp. Cette accélération va d’un facteur 2 à 11. Il est intéressant de remarquer l’absence d’accélération significative avec Clasp. Une des explications possible pourrait se trouver dans les techniques d’optimisation différentes entre les deux solveurs. En effet, Clasp travaille beaucoup sur les bornes supérieures et inférieures de la taille des solutions, avec donc un effet limité de la taille de l’espace de recherche si Clasp arrive rapidement à réduire ces bornes. En revanche Unclasp recherche à prouver l’insatisfiabilité de cœurs contraints, réduire l’espace de recherche permettra donc d’accélérer cette preuve d’insatisfiabilité. Ceci n’est pour l’instant qu’une hypothèse et il serait intéressant d’étudier ce cas plus en détail. Le nouvel encodage de la réversibilité des réactions permet donc de mieux prendre en compte la réalité biologique des réactions étudiées et d’accélérer la recherche d’optima. 2.4.4 De Network-expansion à Meneco Après changement des méthodes de recherche avec l’introduction d’Unclasp pour la recherche d’optimum et Clasp pour les énumérations, et recodage de la réversibilité, Networkexpansion a été inclus dans un package Python autonome et a pris le nom de Meneco (pour Metabolic network completion : https://pypi.python.org/pypi/meneco/), développé par Sven Thiele. 2.5 Sémantique de productibilité Nous l’avons vu précédemment, le problème de complétion peut être considéré comme un problème d’optimisation où l’on rajoute le minimum de réactions pour produire un ensemble de métabolites à partir d’un autre ensemble de métabolites. Par contre, la notion d’accessibilité ou de productibilité peut être définie de manières différentes. Nous avons déjà vu qu’il existe différentes manières de considérer un métabolite comme productible ou non. Nous allons ici étudier plus finement ces concepts pour mieux les comparer, en particulier vis-à-vis de leur utilisation pour compléter un réseau métabolique. 2.5.1 Impact des cycles sur les différents concepts d’accessibilité Accessibilité quantitative (FBA) La recherche de productibilité en FBA est une recherche de nature numérique. Pour savoir si un ensemble de métabolites est productible, nous mettons l’ensemble de ces métabolites (avec la concentration associée si celle-ci est disponible) dans une fonction objectif globale. Les métabolites graines, à partir desquels les métabolites de la fonction objectif devront être produits, seront considérés comme des métabolites à la frontière du système. Aucune contrainte n’est fixée quand à leur conservation dans le système. Des bornes pourront être placées pour mettre des contraintes numériques à leur import dans le système en fixant les flux maximaux et minimaux passant à travers les réactions d’import. La stœchiométrie des réactions revêt ici une importance toute particulière, comme le montre la figure 2.8. La partie (a) représente un cycle formé de quatre réactions métaboliques. Nous avons une entrée à ce cycle (métabolite A) et une sortie (métabolite F). En FBA ce cycle sera fonctionnel car le métabolite A permettra d’alimenter le cycle en matière et la sortie de F ne consommera pas de matière.58 Complétion combinatoire de réseau métabolique FIGURE 2.8: Deux exemples de réseaux métaboliques contenant des cycles. Les métabolites sont représentés par des ovales verts, les réactions sont représentées par des rectangles rouges. La direction des réactions est représentée par la direction des arcs. La stœchiométrie des réactions n’est pas représentée. La partie (b) représente également un cycle formé de quatre réactions métaboliques ainsi que d’une réaction de sortie. Ici l’amorçage du cycle par le métabolite A fonctionne toujours. En revanche, pour que le cycle puisse avoir lieu dans son intégralité et continue de produire le métabolite F, il faudra que la réaction R2 produise au moins deux molécules de D. Une d’entre elles sera transformée en E pour permettre au cycle de continuer. L’autre sera transformée en F qui pourra être utilisé par le reste du réseau métabolique. Si ce n’est pas le cas, et que la réaction R2 produit moins de deux molécules de D, le cycle ne pourra pas être maintenu et le métabolite F ne pourra pas s’accumuler. Accessibilité topologique (Meneco) La recherche de productibilité par Meneco se fera uniquement de manière topologique. Nous allons ici chercher un chemin à travers le graphe bipartite des réactions métaboliques. Pour qu’un métabolite soit productible, il faut que l’ensemble des réactants d’au moins une réaction qui le produit soit présent. Cette défi- nition de la productibilité a l’avantage de ne pas prendre en compte la stœchiométrie des réactions qui n’est pas toujours exacte dans les bases de données, notamment pour ce qui concerne les cofacteurs. Par contre, cette définition a l’inconvénient de créer des problèmes lors de la présence de cycles. Ainsi, si les exemples présentés en figure 2.8 conduisent à une production du métabolite F en FBA, ce n’est pas le cas lors de l’utilisation de la sémantique de Meneco. En effet, dans l’exemple 2.8(a), le métabolite A ne pourra pas produire B car cela nécessite la présence préalable de E, qui n’est pas présent ici. Il en va de même pour l’exemple 2.8 (b). En revanche si une autre molécule du cycle est produite à un autre endroit du réseau, cela ne pose plus de problème pour ce cycle. Par exemple, si une réaction du réseau produit la molécule E, celle-ci permettra d’alimenter la réaction R4 pour produire B rendant la ré- action R1 possible. Dans ce cas, les exemples (a) et (b) permettront de produire F. Cela ne serait pas forcément en contradiction avec la FBA, dans le cas (b) et une production d’une seule molécule de D par R2, étant donné que nous avons une alimentation extérieure du cycle.Sémantique de productibilité 59 Accessibilité avec recyclages internes (Pitufo) Pour tenter de résoudre le problème des cycles, nous pourrions utiliser la méthode développée dans le cadre de recherche de précurseurs par [CMA+08]. Un précurseur est un ensemble de métabolites minimal suffisant pour produire un ensemble de métabolites cibles. Pour cela les auteurs définissent un type de molécules "continuellement disponibles" qui, lorsqu’ils sont présents dans un cycle et produits par ce même cycle, pourront être produits en continu. Ainsi, dès qu’un cycle simple est obtenu, l’ensemble des réactions de ce cycle est réalisable et l’ensemble des produits de ce cycle est réellement produit. Dans les exemples précédents, dès que la molécule A est présente dans le réseau, l’ensemble des réactions est dès lors atteignable et l’ensemble des molécules impliquées est productible, peu importe la stœchiométrie des réactions. Si la méthode Pitufo ne s’applique pas directement à complétion de réseaux métaboliques, la sémantique de productibilité utilisée est intéressante à étudier dans ce cas. 2.5.2 Comparaison des différentes sémantiques Nous l’avons vu, la productibilité semble dépendre grandement de la sémantique utilisée. Pour clarifier ce point, nous allons ici comparer la productibilité de molécules dans cinq exemples qui semblent correspondre à l’ensemble des cas possibles que l’on peut rencontrer. Les métabolites sont représentés par des ronds et les réactions par des rectangles. La stœchiométrie des réactions est indiquée sur les arêtes. Les molécules S correspondront aux graines et les molécules T aux cibles. L’ensemble de ces cas a été préparé avec l’aide de Sven Thiele et sont présentés en figure 2.9. Le résumé de la productibilité de ces différents exemples est présenté dans la table 2.2. Dans un article de 2009 [dFSKF09], De Figueiredo et ses collaborateurs présentent un cas réel de recherche de productibilité de métabolites, le cycle de Krebs associé à la glycolyse/néoglucogénèse chez l’humain. Ils montrent dans leur article que les méthodes basées sur une étude uniquement topologique de réseaux mé- taboliques résultent habituellement en une sur-approximation des molécules considérées comme productibles ces méthodes. Le réseau présenté en exemple dans cet article peut être décomposé en les différents exemples suivants, montrant que la sémantique topologique simple ne sur-approxime pas les résultats mais, à l’inverse, prédit certains métabolites comme étant non productibles alors que les méthodes numériques les considèrent comme productibles du fait de l’auto-alimentation du cycle. TABLE 2.2: Résultat de productibilité des métabolites T à partir de S pour les exemples présentés en figure 2.9. Cas (a) (b) (c) (d) (e) FBA Productible Non productible Productible Non productible Productible Meneco Productible Non productible Non productible Non productible Non productible Pitufo Productible Non productible Productible Productible Productible Dans l’exemple 2.9 (a), le cas est simple. Nous avons une réaction qui transforme une molécule graine en une molécule cible. Pour toutes les sémantiques utilisées, la cible sera toujours productible. Dans l’exemple 2.9 (b) pour pouvoir produire T , il faut être en présence de deux molé- cules, S et C1. S étant une molécule graine, celle-ci est présente. En revanche C1 n’est pro-60 Complétion combinatoire de réseau métabolique S C1 r1 r2 C2 r3 T 1 1 2 1 1 1 1 S r1 T 1 1 S C1 r1 T 1 1 1 S C1 r1 r2 C2 r3 T 1 1 1 1 1 1 1 S C1 r1 r2 C2 T 1 1 1 1 1 1 (a) (b) (c) (d) (e) FIGURE 2.9: Exemples de réseaux métaboliques. Les cercles représentent les métabolites, les rectangles représentent les réactions. Les chiffres sur les arcs représentent la stœchiométrie des réactions. Les métabolites S correspondent aux sources et les métabolites T correspondent aux cibles.Sémantique de productibilité 61 duite par aucune réaction et ne pourra donc pas être produite, impliquant une impossibilité de produire T que ce soit en FBA, par Meneco ou en utilisant la sémantique Acuna - Sagot. Nous rencontrons, dans le cas 2.9 (c), notre premier cycle et la première différence entre Meneco et la FBA. Dans le cas présent, en FBA, la réaction r1 va produire deux molécules de C2. La première va pouvoir être utilisée pour alimenter le cycle en C1 via la réaction r2 et la seconde pourra être utilisée par la réaction r3 pour produire T . À l’état stable et avec uniquement une entrée de S dans le système, le métabolite cible pourra donc être produit. En revanche en utilisant Meneco, pour produire C2, il faudra que S et C1 soient présents. Or C1 ne peut être produit qu’à partir de C2, le cycle ne pourra donc jamais être amorcé et T ne pourra jamais être produit. Une production de C1 à un autre endroit du réseau rendrait en revanche le cycle actif et permettrait de produire T . En utilisant Acuna - Sagot, les métabolites C1 et C2 sont "continuellement disponibles" et permettent donc aux réactions r1 et r2 de fonctionner, ce qui alimente la réaction r3 en substrat. La différence entre le réseau 2.9 (d) et le précédent consiste en la production d’un seul métabolite C2 par la réaction r1. Meneco ne prenant pas en compte la stœchiométrie des réactions, T ne sera pas produit à partir de S ici non plus. En revanche nous avons une différence en utilisant la FBA, étant donné qu’une seule molécule de C2 est produite, le mé- tabolite C2 ne pourra plus, à la fois, entretenir le cycle et être utilisé par la réaction r3. T ne sera donc pas non plus productible en FBA. D’après Acuna - Sagot, les métabolites C1 et C2 sont disponibles et permettent donc d’alimenter r3 malgré la stœchiométrie qui devrait interdire cela. Enfin, dans l’exemple 2.9 (d), encore une fois la FBA donnera T comme productible et Meneco considérera T comme non productible. En effet en FBA, à l’état stable, le cycle se maintiendra de lui même par une entrée de S et la réaction R2 qui produit C1 + T ne "consommera" pas de matière à proprement parlé. En revanche, pour que T soit productible par Meneco, il faudra comme dans l’exemple précédent que C2 soit productible or celui-ci étant produit par C1 +S, ce ne sera pas le cas car C1 nécessite C2 pour être produit. Encore une fois, avec Acuna - Sagot,C1 etC2 sont "continuellement disponibles" entrainant une productibilité de T par r2. Cette étude des différents exemples d’analyses qualitatives indique que la sémantique de productibilité utilisée par Meneco peut être vue comme une sur-approximation de la sé- mantique quantitative. Une complétion basée sur ce critère sera globalement plus restrictive étant donné qu’elle empêche d’alimenter des cycles par des métabolites internes. On risque donc de créer des faux négatifs lors de l’identification des métabolites productibles. Au contraire, la sémantique autorisant les alimentations de cycles par leurs métabolites internes risque ici de produire des faux positifs. En effet en ne prenant pas en compte la stœ- chiométrie des réactions, il y a de grandes chances de rendre productibles des métabolites qui ne le sont pas réellement. 2.5.3 Comparaison des sémantiques qualitatives sur la complétion Une implémentation en ASP de la complétion de réseaux métaboliques utilisant le critère de productibilité topologique avec recyclage interne a été proposée par Sven Thiele. Les solveurs ASP ne pouvant, pour le moment, utiliser que des valeurs entières, il n’a pas été possible de tester une complétion s’appuyant sur une sémantique de productibilité par FBA. Cependant des efforts sont actuellement réalisés pour intégrer la programmation MILP dans62 Complétion combinatoire de réseau métabolique ces solveurs, ouvrant la voie à de futures recherches sur le sujet. Pour mieux comprendre l’impact de la sémantique de productibilité, nous avons d’abord considéré un critère de performance vis-à-vis de la taille de la base de référence. Les tests ont donc été réalisés avec le jeu décrit dans la section 2.2, c’est-à-dire le même jeu de données que celui utilisé pour tester l’amélioration de l’efficacité dû au changement de méthode de recherche (Unclasp VS Clasp). Le programme ASP n’ayant pas été particulièrement optimisé, nous n’allons pas comparer les temps de calcul mais uniquement les résultats obtenus, et notamment le nombre de réactions à ajouter pour rendre tous les métabolites cible productibles ainsi que l’union de ces complétions. La figure 2.10 présente la taille médiane des optimaux et de l’union des solutions proposées par les complétions utilisant la sémantique de Meneco et la sémantique topologique avec recyclage interne. La taille médiane de l’union utilisant cette dernière sémantique, pour une base de données de taille 10.000, n’est pas disponible, les calculs n’ayant pas terminés après deux semaines. D’autre part la répartition statistique des unions des complétions est présentée en figure 2.11. 5000 6000 7000 8000 9000 10000 0 10 20 30 40 50 60 Union Acuna Union Meneco Optimaux Acuna Optimaux Meneco Taille de la base de données Nombre de réactions FIGURE 2.10: Tailles des solutions et de l’union des solutions selon la sémantique de productibilité utilisée. Les croix correspondent aux expériences utilisant la productibilité d’Acuna-Sagot, les carrés celle de Meneco. Les courbes noires correspondent à la taille des optimaux, les courbes grises correspondent à la taille des unions. Il n’existe pas de valeur pour l’union avec Acuna pour une base de données de 10.000 réactions, les calculs étant trop long. Comme nous pouvions nous y attendre, le changement du critère de complétion en prenant en compte les cycles réduit énormément la taille de chacune des complétions. En revanche nous pouvons remarquer que la taille de l’union des complétions est beaucoup plus variable et reste dans le même ordre de grandeur si l’on prend les critères de productibilité de Meneco ou de Pitufo. Cela pourrait être dû au fait que, avec ce critère de productibilité, nous avons plus d’endroits possibles où réaliser la complétion. Pour étudier la composition de ces unions, et comparer d’un point de vue qualitatif les deux complétions,Sémantique de productibilité 63 Taille de l'union Taille de l'union Nombre de réactions Nombre de réactions a) b) FIGURE 2.11: Représentation de la répartition statistique des différentes complétions en fonction de la taille de la base de données utilisée. La partie a) correspond à la complétion utilisant la sémantique proposée par Acuna et Sagot, la partie droite correspond à la complétion utilisée par Meneco. Les boites correspondent à la taille du premier et du troisième quartile, la ligne centrale correspond à la moyenne et les barres correspondent aux valeurs extrêmes. nous avons donc regardé la composition de l’intersection des complétions. Ces intersections sont en accord avec cette hypothèse, celles-ci étant souvent de taille nulle et toujours de taille inférieure à deux. Il y a donc extrêmement peu de redondance lorsqu’on complète un réseau avec une sémantique autorisant les cycles, au contraire d’une sémantique topologique simple où les complétions se recoupent énormément (cf figure 2.5). Les complétions réalisées en utilisant la sémantique de productibilité topologique avec recyclage semblent donc être des complétions petites en taille et distribuées à plusieurs endroit du réseau. Cela est supporté par le fait que les complétions minimales sont de petite taille par rapport à celles proposées par la sémantique de Meneco (2.10) , alors que les unions de complétions sont de taille similaire pour les deux sémantiques. De plus, le fait que l’intersection des complétions réalisées avec cette sémantique soit très petite voire nulle indique une complétion répartie en plusieurs endroits du réseau. À l’inverse les complétions réalisées par Meneco semblent beaucoup plus "stables" avec des optimaux de plus grande taille, un cœur de réactions représenté par les intersections de grande taille également et une union petite comparée à la taille des optimaux (2.10). D’un point de vue biologique, il semble plus logique d’utiliser une méthode complétant le réseau métabolique à un endroit précis avec différentes possibilités pour finir cette complétion (comme cela est le cas avec Meneco), plutôt que de compléter un réseau à beaucoup d’endroits différents (comme cela semble être le cas avec la sémantique topologique avec recyclage). Enfin du point de vue de l’efficacité informatique, ce dernier critère de productibilité s’avère beaucoup plus long à calculer, étant donné qu’il y a beaucoup plus d’endroits diffé- rents à compléter. Concrètement, pour des bases de données à plus de 10000 réactions, les calculs de complétions selon la sémantique de Acuna-Sagot ne terminent pas en un temps raisonnable (plusieurs jours de calculs nécessaires). Dans la suite du document, nous nous sommes donc concentrés sur l’utilisation de la sémantique de Meneco. Cependant, il faut garder à l’esprit que, une fois résolu la question64 Complétion combinatoire de réseau métabolique des performances pour le calcul des complétions avec la sémantique topologique avec recyclage, il sera intéressant d’en utiliser les résultats pour proposer des réactions complémentaires pour la complétion des effets de cycles. Ce point sera rediscuté en perspectives. 2.5.4 Fonctionnalité des complétions qualitatives Il reste maintenant à étudier les pertes de fonctionnalité induites par le fait d’utiliser une méthode qualitative. En effet, si la complétion basée sur un point de vue topologique nous permet d’obtenir des résultats précis et rapides, il n’est pas évident que ceux-ci soient corrects d’un point de vue fonctionnel et numérique. Il a donc été choisi de comparer les résultats de complétion obtenus d’un point de vue "topologique" à des méthodes numériques basées sur l’analyse en balance de flux (ou Flux Balance Analysis, FBA) et l’analyse par variabilité de flux (ou Flux Variability Analysis, FVA). Les jeux de test s’appuyant sur un réseau d’E. Coli sont décrits en partie 2.2.3. Une fois les réseaux métaboliques dégradés, la phase de reconstruction est réalisée en utilisant Meneco. La base de données de réactions utilisée correspond au réseau non dé- gradé. Les graines correspondent aux métabolites pouvant être importés dans le modèle et les cibles correspondent aux métabolites de la fonction de biomasse qui peuvent être produits topologiquement à partir des graines. La complétion est réalisée avec Meneco de manière à obtenir l’union des solutions optimales. L’analyse de la qualité de la complétion se basera sur les différentes classes de réactions définies en FVA : les réactions obligatoires, bloquées et alternatives. En effet, la complétion devant être minimale mais rester fonctionnelle, une complétion "parfaite" correspondrait à un ajout de l’ensemble des réactions obligatoires, aucune réaction bloquée et une faible proportion de réactions alternatives. La figure 2.12 présente les résultats globaux de cette analyse. Nous remarquons que, globalement, les reconstructions ont bien fonctionné. À 10% de dégradations, nous ajouterons l’ensemble des réactions obligatoires dans le réseau dans 88% des cas . À 20% de dégradation, nous ajouterons toujours l’ensemble des réactions obligatoires ayant été retirées du réseau dans 87% des cas. À 40% de dégradation ce pourcentage descend à 65% et 57% à 40% de dégradation. Ainsi, assez logiquement, plus le réseau a été détérioré, plus il est compliqué de le compléter d’un point de vue fonctionnel. Il en va de même pour les réactions bloquées. Dans ce cas plus le réseau sera détérioré plus le nombre de réactions bloquées que l’on rajoutera lors de la complétion sera élevé. Nous l’avons mentionné précédemment, une complétion "parfaite" correspondrait à une complétion contenant 100% des réactions obligatoires ayant été retirées et aucun ajout de réaction bloquée n’aurait été effectuée. C’est le cas dans 47% des complétions réalisées avec une dégradation à 10%. Concernant les réactions alternatives, nous remarquons que la proportion ajoutée augmente légèrement avec la dégradation, tout en restant très faible. Ce faible nombre valide le choix de rechercher des complétions minimales en taille que nous avions fait. Le fait que la proportion augmente avec le pourcentage de dégradation s’explique probablement par le fait que nous considérons l’union des solutions minimales. En effet, une forte dégradation du réseau revient à retirer des réactions un peu partout dans le réseau. Meneco risque alors de trouver un grand nombre d’endroits à compléter de manière minimale ce qui agrandira la taille de l’union des complétions minimales.Sémantique de productibilité 65 Pourcentage de réactions retrouvées Obligatoires Bloquées Alternatives dégradation : 10% dégradation : 20% dégradation : 30% dégradation : 40% FIGURE 2.12: Distribution des pourcentages de réactions rajoutées aux réseaux dégradés selon les différentes classes de réactions et le pourcentage de dégradation. Les boites représentent l’espace interquartile, les moustaches représentent 1.5 espace interquartile. Les ronds représentent les valeurs extrêmes sûres (vides) ou potentielles (pleins).66 Complétion combinatoire de réseau métabolique Nous avons également étudié, pour chacune des 90 fonctions objectives définies, ce qu’il se passe si nous essayons de compléter un réseau vide à l’aide du réseau initial d’E. coli. Cela correspondrait à une dégradation de 100% du réseau. Nous allons ainsi identifier, dans le réseau initial, uniquement les réactions nécessaires à la production de biomasse. De manière globale sur l’ensemble des fonctions objectives étudiées, nous retrouvons ainsi 94% des réactions obligatoires, 5% de réactions bloquées et 14% de réactions alternatives. La figure 2.13 représente la distribution statistique sur l’ensemble des 90 fonctions objectives. Pourcentage de réactions retrouvées Classes des réactions Obligatoires Bloquées Alternatives FIGURE 2.13: Distribution des pourcentages de réactions rajoutées au réseau vide selon les différentes classes de réactions. Les boites représentent l’espace interquartile, les moustaches représentent 1.5 espace interquartile. Les ronds représentent les valeurs extrêmes sûres (vides) ou potentielles (pleins). Les réactions essentielles à la production de biomasse (au sens de la FVA) sont représentées en bleu, les réactions bloquées qui ne possédent jamais aucun flux non nul en FVA sont représentées en violet, les réactions alternatives pouvant posséder un flux nul ou non nul lors d’optimisation de la fonction objective sont repré- sentées en jaune. Il est intéressant de remarquer que dans la majorité des réseaux ainsi reconstruits, une réaction obligatoire manque. Il s’agit de la réaction irréversible appelée "inorganic diphosphatase" qui correspond à la réaction H2O + d i phosphate → H + + phosphate. Cette ré- action peut être importante d’un point de vue quantitatif pour produire le phosphate qui sera consommé dans énormément de réactions. En revanche d’un point de vue topologique simple cette réaction n’est pas obligatoire, d’autres réactions existant déjà permettant de produire du phosphate.conclusion 67 2.6 conclusion Au cours de ce chapitre nous avons étudié la pertinence de la complétion d’une ébauche métabolique d’un point de vue combinatoire vis-à-vis d’une complétion quantitative. Nous avons montré la grande efficacité en terme de temps de calcul de la résolution du problème combinatoire à l’aide d’une approche déclarative (programmation par ensembles-réponses - ASP), notamment en utilisant un nouveau solveur ASP qui a permis d’accélérer grandement les calculs, tout en changeant la modélisation existante précédemment pour mieux prendre en compte la réalité biologique du modèle. Nous avons également montré que cette complétion topologique d’un réseau métabolique, si elle relâche des contraintes par rapport à une étude quantitative prenant en compte la stœchiométrie des réactions, donne de très bons résultats en pratique. Cette complétion topologique pourrait être améliorée dans la suite en prenant en compte une sémantique topologique avec recyclage interne qui semble proposer des résultats complémentaires que sémantique topologique simple. Pour arriver à intégrer cette sémantique il faudrait tout d’abord résoudre le problème combinatoire associé de manière suffisamment efficace pour pouvoir utiliser des bases de données de réactions de grande taille. Ce problème combinatoire de complétion de réseaux métaboliques étant résolu, nous nous sommes attelés à l’intégrer dans un pipeline global de reconstruction de réseaux mé- taboliques qui sera présenté dans le chapitre suivant.68 Complétion combinatoire de réseau métaboliqueChapitre 3 Pipeline de reconstruction de réseaux à partir de données hétérogènes Dans ce chapitre nous allons étudier plus précisément le processus global de reconstruction de réseau métabolique que nous proposons. Ce processus est décomposé en différentes étapes, chacune possédant des spécificités propres que nous expliciterons, notamment dans le cas de la reconstruction de réseaux métaboliques chez des espèces non classiques. Cette thèse se concentrant plus particulièrement sur la reconstruction du réseau métabolique d’Ectocarpus siliculosus, nous allons prendre cet organisme comme exemple d’application durant tout ce chapitre. Ces travaux ont été décrits dans la publication [PCD+14] et présentés sous forme de poster à ECCB 2014. L’application de ces méthodes est également en cours sur d’autres espèces : bactéries associées à l’espèce Ectocarpus d’eau douce [DET14], micro-algues vertes, protistes, etc. 3.1 Modèle d’application : Ectocarpus siliculosus Le réseau test sur lequel nous avons testé les différentes méthodes de reconstruction puis proposé des améliorations est le réseau métabolique d’Ectocarpus siliculosus, l’organisme modèle pour l’étude de la biologie des algues brunes [HCP+10]. Sur ce modèle, biologique, différentes sources d’informations sont disponibles. Génome Les algues brunes sont des straménopiles jouant un rôle important dans la zone intertidale. Le génome d’E. siliculosus ayant été séquencé et annoté en 2010. Ce génome est constitué de 1.561 supercontigs (ou scaffolds) de plus de 2.000 paires de bases. 97,4% des séquences d’ARN messagers précédemment séquencés sont retrouvés dans ce génome, indiquant une bonne couverture du séquençage réalisé. Durant tout ce chapitre, le terme "annotation" consistera en l’annotation fonctionnelle du produit d’un gène et non de la recherche de modèles de gènes dans le génome. Les annotations du génome d’Ectocarpus siliculosus sont une combinaison d’annotations automatiques, réalisée avec le logiciel EuGene, et manuelles [CSR+10]. On a à disposition des numéros EC, des termes GO, des noms de fonctions, de domaine et les séquences protéiques. Tout cela est disponible via une interface web sur le site ORCAE (http://bioinformatics.psb.ugent.be/orcae/overview/ 6970 Pipeline de reconstruction de réseaux à partir de données hétérogènes Ectsi) qui est régulièrement mis à jour avec de nouvelles annotations fonctionnelles de gènes. Pour la reconstruction du réseau, l’ensemble des données a été téléchargé à partir ce site web le 21 juin 2013. Ces informations vont constituer une première sources pour reconstituer le réseau métabolique d’Ectocarpus siliculosus. Réseau métabolique de référence En complément aux annotations du génome d’Ectocarpus siliculosus, pour exploiter les méthodes de reconstruction de réseau métabolique s’appuyant sur un réseau de référence, nous avons recherché un réseau métabolique de bonne qualité (incluant une curation manuelle étendue) et pas trop éloigné phylogénétiquement parlant de l’espèce étudiée. Nous avons choisi d’utiliser le réseau réseau métabolique d’Arabidopsis thaliana, AraGEM [dODQP+09], un réseau global qui satisfait les critères listés pré- cédemment. Ce choix a été réalisé car, au moment de la réalisation de l’étude, ce réseau était le plus complet des réseaux d’Arabidopsis thaliana. Il est composé de 1.567 réactions et 1.748 métabolites. Ce réseau a été reconstruit en se basant sur des études bibliographiques et un réseau précédent et a été réalisé en utilisant les identifiants présents dans KEGG. Il eut été plus aisé pour la suite de l’étude d’utiliser le réseau AraCyc [MZR03] étant donné que les identifiants auraient été les mêmes entre notre réseau métabolique, basé sur la base de données MetaCyc, et ce réseau basé sur la même base de données. Cependant le réseau AraGEM a été choisi pour sa plus grande qualité, il intègre en effet la plupart des informations contenues dans AraCyc, une curation manuelle étendue ayant été réalisée en plus. Définition du milieu de culture Ectocarpus siliculosus est un organisme vivant dans de l’eau de mer. L’identification de l’ensemble des métabolites présents dans ce milieu de croissance étant compliquée, nous avons choisi de prendre comme milieu de croissance l’eau de mer artificielle utilisée en laboratoire pour cultiver cette algue. Il s’agit d’un milieu de culture nommé Provasoli et dont la composition est détaillée en annexe A dans la colonne "Graines" en association avec quelques cofacteurs. Ce Provasoli contient essentiellement des ions, du nitrate et des vitamines. Profilage métabolique Des données de profilage métabolique ont été obtenues au cours de plusieurs études [TEP+11] et ont permis d’identifier 51 métabolites que l’on sait être productibles par l’algue (des acides aminés, des acides gras, des sucres, et des polyalcools). Ces métabolites sont listés en annexe A. La productibilité de ces métabolites par le réseau métabolique sera le critère principal de validation de la fonctionnalité du réseau. Cependant, en étudiant la base de données MetaCyc v17.0 nous nous sommes aperçus que trois d’entre eux (l’acide eicosadienoique, l’acide docosanoique et l’acide erucique) n’étaient produits par aucune réaction de cette base de données. En revanche, deux réactions de KEGG (R08190 et R08184) permettent la production de l’acide eicosadienoique et de l’acide docosanoique mais n’était pas présentes dans la base MetaCyc. Ces deux réactions ont donc été ajoutées à la base de données de référence. Au final, 50 métabolites, parmi les 51 caractérisés chez Ectocarpus siliculosus, doivent être productibles par le réseau. Critères de fonctionnalité Dans ce but, nous avons utilisé Meneco pour vérifier que ces cibles étaient productibles à partir des métabolites graines (milieu de culture), selon la sé- mantique décrite au chapitre 2. Etant donné les limites discutées précédemment de ce cri-Construction d’une ébauche du réseau : gestion des données hétérogènes 71 tère qualitatif de productibilité, après la reconstruction globale du réseau, nous avons vérifié que ces métabolites étaient aussi productibles d’un point de vu quantitatif (FBA). Cette vé- rification quantitative n’a été effectuée qu’à la fin de la complétion du réseau pour plusieurs raisons. Tout d’abord il nous a semblé plus naturel d’effectuer une analyse topologique du réseau avant de s’intéresser aux détails liés à la stœchiométrie des réactions. De plus nous avons intuité que les cycles métaboliques les plus importants du réseau ont été reconstruits lors de la toute première étape de reconstruction du réseau métabolique, les gènes "importants" dans le métabolisme ayant souvent été bien annotés manuellement. D’autre part ASP ne permet pas, actuellement, de réaliser des calculs sur l’ensemble des chiffres réels mais uniquement sur les entiers, rendant difficile voir impossible le fait de tester la productibilité de molécules selon des critères quantitatifs tout en profitant de la très grande efficacité des solveurs ASP. Données transcriptomiques Enfin, nous possédons des données de transcriptomique et protéomique [TEP+11] qui permettront de valider certaines prédictions de réactions métaboliques intégrées dans le réseau. 3.2 Construction d’une ébauche du réseau : gestion des données hétérogènes 3.2.1 Reconstruction à partir des annotations L’exploitation des annotations a nécessité un prétraitement important et fastidieux. En effet, les annotations de gènes étaient uniquement disponibles en ligne sous forme de pages html, avec une page par gène. L’ensemble de ces pages est accessible à l’adresse http:// bioinformatics.psb.ugent.be/orcae/overview/Ectsi. Ces annotations proviennent en grande majorité de recherches de fonctions réalisées manuellement. Les pages pour chaque gène ont donc été créées manuellement et ne sont pas du tout homogènes. Certaines contiennent des informations très précises avec le numéro E.C., des données ontologiques en lien avec GO, des liens vers des réactions présentes dans KEGG, un nom précis et un nom générique, une description précise du gène ou encore une descriptions des différents domaines protéiques retrouvés à partir de la séquence de la protéine prédite. Pour d’autres pages seul un nom de gène plus ou moins précis et non normalisé sera disponible. Il a donc fallu recueillir les différentes informations disponibles au niveau de l’annotation pour pouvoir faire le tri entre les plus précises et celles pouvant être laissées de coté. L’accès direct à la base de données regroupant toutes ces informations nous ayant été refusé, le choix a été fait de télécharger l’ensemble des pages HTML regroupant les annotations et de parser ces fichiers à l’aide de scripts spécialement créés pour l’occasion. Cela a également permis de créer directement des fichiers dans le bon format pour permettre une intégration directe dans la suite de logiciels Pathway tools qui nécessite d’avoir soit des fichiers "maison" contenant l’ensemble des informations disponibles, soit directement des fichiers GeneBank. La version 17.0 du logiciel Pathway Tools [KPR02] a été utilisée pour la reconstruction du draft du réseau métabolique d’E. siliculosus à partir des annotations obtenues sur le site internet ORCAE. Ce logiciel permet d’interpréter l’ensemble des informations disponibles dans les annotations pour retrouver quelle(s) réaction(s) de la base de données MetaCyc72 Pipeline de reconstruction de réseaux à partir de données hétérogènes (version 17.0) correspond à quelle(s) annotation(s). Le choix s’est basé sur ce logiciel de par sa forte complémentarité avec la base de données MetaCyc et son efficacité dans la gestion d’annotations peu précises, comme lorsque l’on a uniquement le nom d’un gène par exemple. Cela a permis de reconstruire un premier draft métabolique que l’on nommera EctoGEMannot contenant 1677 réactions et 1889 métabolites. Comme expliqué précédemment, Meneco permet de vérifier la productibilité des 50 mé- tabolites cibles à partir du milieu de culture. Le réseau EctoGEM-annot est capable de produire 25 de ces 50 cibles. Cela suggère que les annotations du génome ne suffisent pas à reconstruire un réseau métabolique fonctionnel. On peut par exemple citer les enzymes appelées "élongases" qui permettent de produire des acides gras poly-insaturés. Celles-ci ne sont annotées que partiellement du fait de la difficulté d’établir leur spécificité à partir seulement de la séquence protéique. Par conséquent, aucun numéro EC ne leur est attribué, et les réactions associées n’ont pas pu être ajoutées au réseau. 3.2.2 Reconstruction à partir d’un réseau métabolique de réference Une seconde ébauche de réseau métabolique a été reconstruite en n’utilisant plus l’expertise manuelle des spécialistes sur les annotations mais en considérant l’expertise manuelle des spécialistes sur la reconstruction de réseaux métaboliques. L’ensemble des protéines codant pour les réactions contenues dans le réseau métabolique d’Arabidopsis thaliana, AraGEM [dQP+10b], ont ainsi été identifiées. Une recherche d’orthologie a ensuite été effectuée entre ces protéines et les protéines prédites chez l’algue brune afin d’extrapoler ces résultats d’orthologie à l’ajout de réactions dans l’ébauche. Cette recherche a été effectuée par les outils InParanoid (version 4.1) [RSS01] et OrthoMCL (version 2.0.9) [LSR03] puis ces résultats ont été combinés en utilisant le logiciel Pantograph (version 0.1.1) [NL13]. L’ébauche métabolique obtenue, appelée EctoGEM-ortho, est composée de 786 réactions et 1767 métabolites. Meneco indique que le réseau EctoGEM-ortho n’est capable de produire aucun des métabolites d’intérêt. Ceci s’explique probablement par la distance phylogénétique entre Ectocarpus siliculosus et Arabidopsis thaliana, qui a rendu la recherche d’orthologues difficile. 3.2.3 Complémentarité des deux réseaux : outils pour leur fusion Une fois EctoGEM-annot et EctoGEM-ortho construits, nous avons choisi de fusionner l’ensemble des deux réseaux pour profiter à la fois de la qualité des annotations manuelles réalisées sur le génome et de la qualité de la reconstruction manuelle réalisée avec le ré- seau métabolique d’Arabidopsis thaliana. Les deux réseaux ont été fusionnés en un réseau appelé EctoGEM-combined. Fusionner deux réseaux métaboliques créés à partir de bases de données de réactions différentes est particulièrement difficile pour une raison simple, les identifiants des réactions et des métabolites ne seront pas les mêmes dans les deux bases de données. Pour résoudre ce problème et réussir à faire correspondre les identifiants de deux métabolites ou de deux réactions identiques, deux outils ont été créés par Guillaume Collet. MeMap transforme chaque identifiant de réaction provenant de MetaCyc (ou possédant un lien depuisComplétion 73 MetaCyc vers une autre base de données) en un identifiant interne. MeMerge fusionne ensuite simplement les différents réseaux qui possèdent désormais des identifiants communs. Pour réussir à faire correspondre les différents identifiants, ces outils utilisent largement les informations contenues dans la base de données MetaCyc. En effet, cette base de données a l’intérêt énorme de posséder beaucoup de lien entre chaque entité existante et les mêmes entités dans d’autres bases de données. Quand un lien direct existe depuis une ré- action présente dans MetaCyc vers une réaction présente dans Kegg, cette association est assez aisée à trouver. Quand ce n’est pas le cas, nous allons pouvoir travailler au niveau des métabolites, en considérant que deux réactions possédant les mêmes réactants et les mêmes produits, il est raisonnable de considérer qu’il s’agit d’une réaction unique. Là encore le lien entre les métabolites pourra se faire directement depuis MetaCyc vers Kegg à l’aide des références croisées entre ces deux bases de données, ou en passant par une base de données intermédiaire spécialisée dans les molécules biochimiques, ChEBI [DdME+08]. Cette base de données contiendra la composition chimique des molécules, des liens externes vers d’autres bases de données mais surtout les synonymes qu’auront les molécules. Ces synonymes permettront de faire le lien entre les molécules présentes dans les diffé- rentes bases de données et donc le lien entre les réactions. Le réseau EctoGEM-annot contient désormais 1785 réactions et 1981 métabolites. Nous pouvons donc considérer que la recherche d’orthologues a permis d’ajouter 108 réactions par rapport aux annotations, ce qui prouve l’intérêt de cette seconde étape. En revanche, l’ajout de ces réactions n’a rien changé pour la fonctionnalité du réseau ; vis à vis des 50 métabolites d’intérêt, nous avons toujours 25 d’entre eux qui ne peuvent pas être produits. 3.2.4 Conclusion Ces deux reconstructions d’ébauches métaboliques et leur association ont permis d’utiliser la majorité des informations disponibles dans le génome de l’espèce étudiée. Il en ressort que ces informations ne sont pas suffisantes pour reconstruire un réseau métabolique fonctionnel, lorsque nous sommes en présence d’espèces non classiques et éloignées phylogénétiquement des espèces modèles classiques. Cela est en partie dû au fait que nous nous retrouvons en permanence face à des problèmes de formalisation des données biologiques, des problèmes d’unification d’identifiants entre différentes bases de données, etc. Le développement d’approches de réconciliation efficaces va rapidement devenir nécessaire pour éviter la perte d’information et la multiplication de réseaux métaboliques possédant chacun leurs propres conventions de nommage des identifiants de réactions ou de métabolites. 3.3 Complétion 3.3.1 Identification de réactions à ajouter Seuls 25 des 50 métabolites d’intérêt pouvant être produits par le réseau résultant de la fusion des deux ébauches métaboliques, il semble donc évident que certaines réactions manquent dans le réseau. Le logiciel Meneco va être utilisé une fois de plus. Ici nous ne nous contenterons pas de vérifier la productibilité de molécules, mais nous allons nous servir de la seconde fonctionnalité de Meneco qui consiste en la résolution du problème combina-74 Pipeline de reconstruction de réseaux à partir de données hétérogènes toire traité au chapitre 2. Pour cela, nous avons besoin de quatre sources de données diffé- rentes : – Un draft métabolique : le réseau provenant de la fusion précédente – Une base de données de réactions métaboliques : MetaCyc 17.0 – Une liste de métabolites graines : les molécules entrant dans la composition de l’eau de mer artificielle – Une liste de métabolites cibles : une liste de 51 métabolites identifiés par diffé- rentes techniques biologiques En suivant un principe de parcimonie, Meneco va calculer le nombre minimal de réactions provenant de la base de données à ajouter au réseau pour permettre la production des métabolites cibles à partir des métabolites graines. Étant donné que l’on peut considérer que les cofacteurs sont présents (au moins en quantité infime) dans toutes les cellules d’un organisme et qu’ils ne peuvent être créés à partir de rien, nous avons choisi de rajouter ces molécules nécessaires à la plupart des réactions dans les métabolites graines. Cette approche est en total accord avec les méthodes classiques de modélisations de ré- seaux métaboliques basées sur une étude topologique des réseaux [HE07]. Meneco va ainsi nous indiquer les métabolites cibles ne pouvant pas être produits à partir du réseau et des métabolites graines. Si ce nombre est non nul, on calculera le nombre minimal de réactions à ajouter au réseau, et on listera l’ensemble des groupes de réactions de taille minimale qui pourront compléter le réseau. Nous pouvons également obtenir l’union et l’intersection de ces sets minimaux de réactions. Le logiciel Meneco a donc été utilisé pour calculer le nombre minimal de réactions à ajouter dans le modèle pour permettre la production de l’ensemble des 50 métabolites cibles (c’est à dire les réactions à ajouter pour produire les 25 autres métabolites). La base de données considérée pour identifier les réactions à rajouter est MetaCyc, à laquelle nous avons ajouté les deux réactions de KEGG précédemment citées. Il est ressorti de cette étude que l’ajout de 44 réactions au moins suffit à rétablir la connectivité du réseau vis à vis des 50 métabolites étudiés. Il existe 4320 ensembles de 44 réactions qui permettent de faire cela. L’union de ces 4320 solutions toutes différentes est formée de 60 réactions, signe d’un très grand chevauchement des solutions. Les améliorations de Meneco présentées dans le chapitre 2, qu’elles concernent l’inté- gration de la réversibilité des réactions dans la modélisation ou le changement de solveur, ont montré leur intérêt pour permettre de réaliser la complétion en un temps raisonnable. Cependant le nombre de solutions proposées est assez important et nécessite un filtrage qui dépasse les questions purement combinatoires posées précédemment. 3.3.2 Filtrage par analyse sémantique Pour étudier ce chevauchement nous avons réalisé une étude sémantique des diffé- rentes solutions pour observer l’importance de ces réactions vis à vis de la fonctionnalité. En effet certaines réactions vont être mutuellement exclusives les unes des autres car jamais présentes ensemble dans groupe de réactions. En analysant sémantiquement ces réactions et en étudiant les termes GO associés, nous pouvons identifier certaines réactions qui seraient représentatives d’un ensemble de réactions mutuellement exclusives. Pour cela les ancêtres ontologiques des termes GO ont été étudiés, en vu de réduire la taille de l’union des ensembles de réactions.Complétion 75 Nous pouvons les classer en deux groupes : celles qui interviennent dans toutes les solutions (35), et celles n’étant pas ubiquitaires (25). Ces 25 réactions ont été divisées en sept cliques mutuellement exclusives (figure 3.1), et un groupe de quatre réactions avec trois incompatibilités deux à deux. Dans une clique de 4 réactions mutuellement exclusives, par exemple, dès que l’on a une réaction, nous ne pourrons pas avoir les trois autres dans la même solution. Chacune des 4320 solutions sera donc formée des 35 réactions ubiquitaires, d’une des réactions de cliques et de deux réactions du dernier groupe de quatre. Nous avons donc eu l’intuition que certaines réactions étaient équivalentes, notamment au cœur des cliques. Dihydrofolatesynth-RXN H2neopterinaldol-RXN RXN-9655 ... 35 ubiquitous reactions RXN-9549 RXN3O-9780 1/2 reactions Phosphoglycerate-phosphatase-RXN Glycerol-dehydrogenase-NADP+-RXN 3-phosphoglycerate-phosphatase-RXN 2/3 reactions Fatty-acid-synthase-RXN Fatty-acyl-CoA-synthase-RXN RXN-12766 1/3 reactions ACP-S-acetyltransfer-RXN 1/3 reactions RXN-2361 2.3.1.180-RXN Adenylylsulfate-reductase-RXN 1 reaction RXN-8389 1 reaction RXN-961 Glyoxylate-reductase-NADP+-RXN Glycolate-reductase-RXN Glycolald-dehydrog-RXN 1/4 reactions 1/2 pairs of reactions RXN-9634 + RXN3O-5304 EctoGEM-combined RXN-9634 + RXN-9543 1,785 reactions 1,981 compounds FIGURE 3.1: Composition des 432 ensembles de 44 réactions candidates à la complétion pour permettre la productibilité des 50 cibles. Chaque ensemble de réactions peut être décomposé en un ensemble de 35 réactions présentes partout auquel nous ajoutons une réaction de chaque groupe représenté, deux réactions du groupe représenté en haut à gauche et une paire de deux réactions. Si des cliques contiennent des réactions équivalentes, nous aurons la possibilité de choisir une ou l’autre des réactions de la clique pour limiter l’ajout de réactions non supportées par des preuves biologiques et aussi le nombre de solutions différentes. Cette procédure a permis d’enlever 5 réactions différentes du réseau, qui possédaient déjà leur équivalent, amenant le nombre de solutions différentes de 4320 à 432. Nous avons ajouté ces 55 réactions au réseau précédent pour obtenir EctoGEM-functional, qui contient 1840 réactions et 2004 métabolites, et permettent de produire les 50 métabolites identifiés. 3.3.3 Compartimentation Les annotations du génome d’Ectocarpus siliculosus contiennent une information qui n’a pas été prise en compte jusqu’à présent : une prédiction de localisation des protéines effectuée par l’outil HECTAR [GGC08], développé spécifiquement pour les protéines pré- sentes chez les hétérokontes. Cette information a été prise en compte en fin de reconstruction pour définir une localisation supposée de certaines enzymes, bien qu’aucune validation expérimentale n’ai été réalisée chez aucune algue brune à ce jour. D’autre part les gènes présents dans le génome mitochondrial et chloroplastique d’Ectocarpus siliculosus ont également servi à prédire la localisation de certaines protéines.76 Pipeline de reconstruction de réseaux à partir de données hétérogènes 3.4 Curation manuelle du réseau Afin de valider la reconstruction automatique du réseau métabolique d’Ectocarpus siliculosus et d’étudier sa complétude, nous avons effectué une curation manuelle du réseau. Cette curation est basée sur une étude bibliographique par des experts et une étude des pro- fils HMMs pour évaluer l’existence de gènes candidats dans le génome de l’algue. Une attention toute particulière a été apportée aux réactions supportées ni par leurs annotations, ni par des données d’orthologie. Celles-ci sont en effet la cible privilégiée pour de nouvelles annotations géniques amenant à de futures validations fonctionnelles. 3.4.1 Score pour chaque réaction Pour chaque réaction ajoutée dans le réseau, l’ensemble des enzymes connues dans l’arbre du vivant qui codent pour cette réaction particulière à partir de la base de données ExPASy-ENZYME (http://enzyme.expasy.org/) ont été recherchées. Ces séquences enzymatiques ont été alignées par ClustalO (http://www.clustal.org/omega) puis des profils HMMs ont été créés pour chaque réaction avec la suite logicielle HMMER (http: //hmmer.janelia.org version 3.0). La même suite logicielle a été utilisée pour rechercher des séquences correspondantes au profil dans l’ensemble des séquences protéiques prédites par le génome d’Ectocarpus siliculosus. Lorsque nous avons obtenu une e-value ≤ 10−15, nous avons considéré le match comme étant suffisamment sûr pour être présenté aux biologistes pour une éventuelle étude manuelle. 3.4.2 Identification de faux positifs Parmi ces réactions ne possédant aucune base génétique, nous pouvons citer les réactions ajoutées par Pathway Tools dans le réseau. En effet, lors de la reconstruction initiale, Pathway Tools identifie des voies métaboliques qu’il considère comme étant présentes dans le réseau, que celles-ci soient complètes ou non. Ainsi, pour une voie métaboliques donnée, s’il manque une seule réaction de cette voie, Pathway Tools va probablement ajouter cette réaction au réseau sans associer aucune enzyme. L’ajout de réactions dépendra à la fois de la proportion de réactions manquantes dans une voie donnée et du nombre de voies différentes dans lesquelles sont impliquées les réactions identifiées comme présentes. Ainsi une voie métabolique composée de trois réactions, dont deux ont été retrouvées pourra être considérée comme présente, si ces deux réactions n’interviennent que dans cette voie métabolique, ou absente si ces deux réactions sont associées à de nombreuses voies dans la base de données. Étant donné la grande distance phylogénétique existant entre Ectocarpus siliculosus et les espèces présentes dans MetaCyc, Pathway Tools risque d’inclure un grand nombre de faux positifs. Nous pouvons prendre comme exemple la première voie de dégradation du glycogène (glycocat-PWY dans MetaCyc) formée de sept réactions et considérée comme complète dans EctoGEM-annot. Seules trois des réactions sont supportées par des annotations de gènes (numéros E.C. : 2.1.7.1.2, 5.4.2.2 et 3.2.1.20). Deux de ces réactions sont impliquées dans plusieurs autres voies métaboliques comme la dégradation du glucose, du glucose-1-phosphate ou encore de l’amidon. La troisième (3.2.1.20) correspond à une alpha-glucosidase dont la spécificité basée uniquement sur de l’homologie de séquence est difficile à déterminer. Il reste quatre réactions ajoutées par Pathway Tools qui sont très pro-Curation manuelle du réseau 77 bablement des faux positifs. Des cas similaires ont été rencontrés dans d’autres voies métaboliques associées au métabolisme des acides aminés. Ces faux positifs ont été identifiés et retirés lors de l’étape de curation manuelle. 3.4.3 Ajout de réactions spécifiques La curation manuelle a également été utilisée pour rajouter des réactions pour lesquelles les annotations étaient incomplètes et les recherches d’orthologie insuffisantes. On peut par exemple citer l’exemple de la réaction correspondant à la 3-phosphoglycérate-phosphatase, catalysée par une "Purple Acid Phosphatase" (PAP) qui produit du phosphate et du glycé- rate. Les PAPs sont présentes chez la plupart des eucaryotes, même si les orthologues entre plantes et animaux sont assez éloignés. Aucun gène correspondant aux PAPs n’avait été annoté dans le génome, mais une recherche manuelle a montré que le gène Esi0000_0474 est un bon candidat. Un autre exemple concerne le gène Esi0002_0097. Pathway Tools a considéré qu’une réaction correspondant à une phosphoglycérate-phosphatase devait être pré- sente comme alternative à la production de glycérate, catalysée par une phosphatase alkaline. Le gène Esi0002_0097 est un excellent candidat pour cette enzyme comme le montre les analyses HMMs notamment. La reconstruction basée sur les analyses d’orthologie apporte également son lot d’informations. On peut par exemple citer deux enzymes, la diamine oxydase (gène Esi0076_0063) et l’alanine aminotransférase (gène Esi0008_0209) qui ont été correctement identifiées par l’analyse des orthologues malgré une annotation insuffisante de ces gènes dans le génome d’Ectocarpus. Cette approche n’est pourtant pas parfaite, si l’on regarde par exemple la glycérate kinase impliquée dans la photorespiration. Pour cette réaction, le gène candidat trouvé manuellement est le gène Esi0157_0054. Celui-ci n’a pas été annoté dans le génome d’algue, et aucune protéine n’est associée à cette réaction chez Arabidopsis thaliana, empêchant par là même la recherche d’orthologue. Cette réaction et le gène associé ont été ajouté manuellement dans le réseau final. Enfin, quand cela était possible des données d’expression ont été utilisées pour caracté- riser certains gènes bien précis. Ainsi, si l’ARN messager d’un gène existe, ceci est un signe que la prédiction du gène est réelle et que nous ne sommes pas en présence d’un pseudogène. 3.4.4 Conclusion Cette curation manuelle du réseau métabolique a permis de distinguer plusieurs sources de faux positifs dans la reconstruction du réseau, de par l’utilisation de Pathway tools ou encore la présence d’enzymes multi-domaines. Des faux négatifs existant également après la reconstruction des ébauches métaboliques, la complétion du réseau a permis de guider cette curation manuelle lors de la recherche des réactions et des associations gènesréactions manquantes. Les apports biologiques de cette curation manuelle seront étudiés plus précisément dans le chapitre 4.78 Pipeline de reconstruction de réseaux à partir de données hétérogènes 3.5 Validation fonctionnelle 3.5.1 Réseau final Au final le réseau EctoGEM contient 1866 réactions et 2020 métabolites impliqués dans 224 voies métaboliques complètes. Ces chiffres sont du même ordre de grandeur que ceux obtenus pour la reconstruction d’autres réseaux métaboliques d’eucaryotes photosynthé- tiques : – Phaeodactylum tricornutum : 1719 réactions [FMR+12] – Chlamydomonas reinhardtii : 1500 à 2000 réactions [CMK+09, CGM+11, dQP+10b] – Ostreococcus : ∼900 réactions [KYW+12] – Arabidopsis thaliana : 1567 réactions [dQP+10b] EctoGEM v1.0 est ainsi basé sur l’utilisation de différentes méthodes informatiques complémentaires, complétées par une curation manuelle. Toutes les informations relatives à EctoGEM sont disponibles via un site internet (http://ectogem.irisa.fr/) avec les liens vers les différentes annotations génomiques, les données de séquences ou encore les liens vers MetaCyc. Nous considérons que EctoGEM peut être une ressource communautaire, dynamique, flexible et évolutive. En effet n’importe quel chercheur peut désormais avoir accès au réseau et nous donner des informations sur différents aspects du réseau. Un formulaire a été mis en place sur le site internet afin de favoriser et simplifier ce type d’échanges. De plus, l’ensemble des sources d’information ayant amené l’ajout de telle ou telle réaction dans le modèle est disponible, permettant par là même de juger de la crédibilité à apporter à chacune des prédictions. 3.5.2 Analyse par balance de flux Comme validation globale du réseau EctoGEM-functional obtenu nous avons construit une fonction de biomasse spécifique à Ectocarpus siliculosus, basée sur une étude bibliographique des résultats de profilage métabolique obtenu chez cette algue. Cette fonction objectif est formée de 30 métabolites issus d’expériences de profilage métabolique décrites dans des publications contenant des valeurs numériques de concentrations de molécules [GDR+10, DGR+11]. Ces 30 métabolites étaient tous présents dans la liste des 50 cibles utilisés pour le gap-filling. La FBA permet de vérifier que le réseau peut produire ces 30 métabolites en quantité équivalente à la réalité biologique. La composition précise de la fonction de biomasse est présentée en table 3.1. Une fois cette fonction établie, une analyse par balance de flux (décrite précisément en 1.2.2) a été effectuée pour vérifier si le réseau reconstruit est quantitativement capable de produire de la biomasse. Dans le cadre de la reconstruction de ce réseau, nous avons décidé d’utiliser la boite à outil COBRApy [ELPH13] qui utilise le solveur GLPK (GNU Linear Programming Kit). À l’inverse de Meneco qui réalise une analyse topologique qualitative du réseau, les approches numériques telles que le FBA sont basées sur des contraintes quantitatives regardant l’existence de flux quantitatifs capables de produire les métabolites présents dans la fonction objective tout en satisfaisant les contraintes stœchiométriques. Comme discuté dans le chapitre 2, il n’était certain que le réseau complété à l’aide de Meneco permettrait de produire de la biomasse avec une approche basée sur la stœchiométrie des réactions. LeValidation fonctionnelle 79 TABLE 3.1: Nom et quantité des molécules prises en compte dans la fonction de biomasse du réseau EctoGEM molécule quantité 4-amino-butyrate 0.01 arginine 0.1 asparagine 0.75 citrate 19.3055 cysteine 0.3 glucose 2.7615 glutamine 10.7 glutamate 18.85 glycine 3.8 glycerate 0.123 glycerol 2.375 glycollate 0.029 histidine 0.1 Iso-leucine 0.2 alanine 26.6 aspartate 12.5 ornithine 0.1 leucine 0.3 lysine 0.35 mannitol 331.4 methionine 0.3 phenylalanine 0.35 proline 1.35 serine 3.35 succinate 0.878 threonine 0.65 iso-citrate 9.37 tryptophane 0.115 tyrosine 0.125 valine 0.8580 Pipeline de reconstruction de réseaux à partir de données hétérogènes modèle métabolique obtenu ici permet de produire de la biomasse globalement à partir de la composition du milieu de culture de l’algue. Notre analyse montre que la complétion topologique avec un nombre minimal de ré- actions, combiné à la curation manuelle, résulte en un réseau capable de produire de la biomasse dans des proportions correctes. Étant donné que Meneco peut échouer lors de la reconstruction de certains cycles, cela semble indiquer que peu de cycles incomplets existaient lors de la création de l’ébauche métabolique. Ce processus de reconstruction semble donc particulièrement adapté à la création de réseaux métaboliques chez des espèces non classiques pour l’étude de processus globaux. 3.6 Le workflow de reconstruction du réseau Le but principal de notre approche était la reconstruction automatique d’un réseau mé- tabolique d’un nouvel organisme modèle distant phylogénétiquement des principaux modèles biologiques eucaryotes étudiés jusqu’à présent, tout en minimisant le nombre de faux positifs ajoutés au niveau des réactions et des gaps, ou du moins en facilitant leur détection et ainsi leur retrait. Dans ce but, nous avons implémenté un pipeline intégratif pour la reconstruction d’un réseau métabolique de ce type. Ce processus global peut être généralisé à de nombreux autres organismes du même type. 3.6.1 Description du pipeline Nous nous basons tout d’abord sur l’utilisation de Pathway Tools qui va prendre en compte les annotations du génome de l’espèce, en particulier les numéros EC et les termes GO, afin de trouver les réactions correspondantes provenant de MetaCyc. Nous utilisons ensuite Pathologic [LDNS12] afin de retrouver des informations provenant d’orthologie plutôt que d’utiliser les annotations. Pour cela un réseau métabolique reconstruit pour une espèce proche phylogénétiquement ou métaboliquement parlant, et de très bonne qualité, doit être utilisé. Le réseau AraGEM [dQP+10b] d’Arabidopsis thaliana a donc été choisi comme référence pour Ectocarpus siliculosus car il s’agit d’un réseau mé- tabolique de bonne qualité pour un eucaryote multicellulaire photosynthétique. Malgré ces deux sources importantes de données biologiques, les deux approches considérées indépendamment ne permettent pas d’obtenir un réseau métabolique fonctionnel. Afin de surmonter cette difficulté, nous avons développé MeMap et MeMerge pour fusionner des réseaux avec des identifiants issus de Metacyc ou Kegg en un réseau unifié. Afin de compléter ce réseau, nous avons amélioré un outil de gap-filling existant, Meneco, en améliorant son efficacité notamment, comme précisé dans le chapitre précédent. Cette amélioration a été nécessaire afin de pouvoir envisager de travailler à l’échelle du gé- nome, et afin de mieux prendre en compte certaines spécificités des réseaux construits pour de nouveaux modèles biologiques susceptibles de contenir de nouveaux gènes et donc de nouvelles réactions métaboliques (grand nombre de gaps et prise en compte des réactions réversibles). Cet outil utilise des résultats de profilage métabolique publiés et suggère des réactions à ajouter au modèle pour satisfaire à des critères topologiques de productibilité des métabolites identifiés. Dans le cas d’Ectocarpus siliculosus , le mannitol, par exemple, n’était pas productible par la combinaison des deux réseaux précédents. Il est devenu productible après l’addition d’une seule réaction manquante.Le workflow de reconstruction du réseau 81 Malgré cela, la combinaison de toutes ces méthodes ne remplace pas la nécessité d’une curation manuelle, bien qu’elle facilite celle-ci. En effet, la dernière étape consiste en une curation manuelle du réseau basée sur des informations provenant d’étude de séquences avec des profils HMMs et/ou de la bibliographie. Cette étape permet également de rajouter des réactions dans le réseau qui n’auraient pas pu être trouvées par les données génomiques ou de profilage métabolique, comme par exemple deux réactions impliquées dans le recyclage du mannitol ou la voie de synthèse des alginates. La dernière étape consiste à vérifier la fonctionnalité du système à produire quantitativement de la biomasse. Dans le cas d’Ectocarpus siliculosus , le système a été capable de produire cette biomasse. Il reste cependant à améliorer le réseau en introduisant de nouveaux métabolites cibles et caractérisant les échanges de co-facteurs dans le cycle cellulaire. La figure 3.2 résume l’ensemble du workflow et les résultats obtenus lors de la création d’EctoGEM 1.0, le réseau métabolique d’Ectocarpus siliculosus. 3.6.2 Outils intégrés dans le pipeline Comparaison avec les autres pipelines de reconstruction de réseaux algues Comparé aux autres pipelines de reconstruction de réseaux métaboliques utilisés jusqu’à présent chez des algues, qui sont présentés en partie 1.5, notre approche contient un certain nombre de particularités. Tout d’abord nous ne nous sommes pas contentés d’une source unique de données, comme cela a été le cas la plupart du temps, mais nous avons utilisé à la fois les annotations disponibles via l’interface web Orcae et des recherches d’orthologues en s’appuyant sur la qualité du réseau métabolique AraGEM. Ces deux sources de données nous ayant permis de créer une ébauche métabolique de grande taille, nous avons dû utiliser une méthode automatique globale de complétion à la différence d’AlgaGEM et de DiatomCyc. Pour cela, nous avons développé une méthode permettant d’obtenir l’ensemble des complétions minimales, et non uniquement un échantillonnage comme cela a été le cas pour une partie de la complétion réalisée chez Ostreococcus. La validation du réseau obtenue a été réalisée en utilisant la technique de Flux Balance Analysis, comme cela a été le cas dans presque tous les réseaux métaboliques d’algues existants, en créant entièrement une fonction de biomasse à l’aide d’une étude bibliographique. Enfin les réactions prédites comme étant présentes dans le réseau ont été étudiées afin de rechercher des gènes pouvant coder pour les enzymes impliquées dans ces réactions. Cela a été réalisé en créant des profils HMMs pour chaque réaction en se basant sur les séquences des enzymes existantes chez d’autres organismes. D’autres méthodes pourraient être utilisées pour effectuer cette recherche telle que la méthode PRIAM [?]. Les étapes principales de ce processus global de reconstruction sont présentées en table 3.2 avec les différentes étapes utilisées pour réaliser les autres réseaux métaboliques chez des algues. Importance des briques du pipeline Ce pipeline global, nous le voyons, est composé de différentes briques qui nous semblent les plus efficaces et les plus précises aujourd’hui. Il est cependant intéressant de remarquer que l’ensemble de ces briques ne sont pas figées et pourraient aisément être remplacées par d’autres méthodes si celles-ci venaient à dépasser celles utilisées. Par exemple, Pantograph pourrait être remplacé par un autre outil d’infé- rence de réseaux métaboliques à partir de réseaux existants en se basant sur d’autres scores82 Pipeline de reconstruction de réseaux à partir de données hétérogènes 1,785 reactions 1,981 metabolites 25/50 targets 1,840 reactions 2,004 metabolites 50/50 targets 1,677 reactions 1,889 metabolites 25/50 targets 786 reactions 1,767 metabolites 0/50 targets 1,866 reactions 2,020 metabolites Ectocarpus siliculosus genome Pantograph OrthoMCL InParanoïd Protein sequences EctoGEM-ortho Pathway Tools Genome annotations EctoGEM-annot EctoGEM-combined Meneco Semantic analysis EctoGEM-functional HMM profile Manual curation EctoGEM 1.0 chloroGEM-combined mitoGEM-combined 66 reactions 136 metabolites 22 reactions 33 metabolites FIGURE 3.2: Résumé de l’approche intégrative de la reconstruction du réseau métabolique d’Ectocarpus siliculosus. Les boites bleues correspondent aux outils utilisés. Les boites vertes correspondent aux données utilisées et aux différentes versions du réseau existantes.Le workflow de reconstruction du réseau 83 TABLE 3.2: Comparaison des différentes méthodes de reconstruction de réseaux métaboliques chez des algues avec la méthode proposée pour la reconstruction du réseau d’Ectocarpus siliculosus. Espèce Nom du réseau Source de données Reconstruction initiale Complétion FBA ? Chlamydomonas reinhardtii AlgaGEM KEGG mapping sur KEGG manuel, composé par composé Oui Chlamydomonas reinhardtii iRC1080 réseau pré- existant + bibliographie Manuel Effectué mais pas d’informations Oui Ostreococcus KEGG mapping sur KEGG Top-down et Bottom-up, pas de solution unique Oui Phaeodactylum tricornutum DiatomCyc KEGG + Metacyc Pathway tools Manuel pour les voies métaboliques connues Non Ectocarpus siliculosus EctoGEM Orcae + MetaCyc + AraCyc Pathway tools + Orthologie Bottom-up automatique, union de toutes les solutions minimales + curation sémantique et manuelle Oui84 Pipeline de reconstruction de réseaux à partir de données hétérogènes qu’uniquement la similarité de séquence. La prédiction des enzymes par des profils HMMs pourrait être remplacée par des outils utilisant des fonctions de score plus précises, en prenant par exemple en compte des domaines protéiques interagissant en trois dimension. Meneco pourrait également être remplacé par d’autres outils de complétion si les données nécessaires sont disponibles et que l’efficacité de ces outils est présente. Ainsi, si la méthode proposée permet bien de reconstruire des réseaux métaboliques, le pipeline en lui même apparaît comme un outil d’aide à l’annotation de réseaux métaboliques plus qu’un outil de reconstruction automatique. Importance de l’aide à la décision et du caractère évolutif du réseau Ces résultats suggèrent que le pipeline intégratif décrit dans cette thèse est pertinent pour la reconstruction de réseaux métaboliques d’organismes biologiques pour lesquels les données expérimentales sont moins importantes que pour certains modèles biologiques bien établis, et qui sont aussi distants phylogénétiquement par rapport à des organismes tels que E. coli, Arabidopsis, C. elegans et bien d’autres pour lesquels des réseaux métaboliques de bonne qualité sont accessibles. En effet, en combinant des outils de reconstruction automatique et des outils permettant une assistance à la curation manuelle, tout en conservant en permanence des traces de toutes les modifications effectuées, qu’elles soient manuelles ou automatiques, nous obtenons un pipeline global permettant la reproductibilité des manipulations. En se basant sur la même méthodologie, des mises à jour d’EctoGEM pourront être effectuées régulièrement au fur et à mesure que de nouvelles données seront disponibles, telles que de nouvelles annotations de gène, et de nouveaux résultats de profilage transcriptomique, protéomique, et/ou métabolique. 3.7 Conclusion Ce chapitre nous a permis de décrire le processus global de reconstruction d’un réseau métabolique chez une espèce eucaryote non classique. Si l’étape de complétion d’ébauche métabolique, telle que décrite dans le chapitre précédent, contient un fort problème combinatoire, l’enchaînement des étapes pose, elle, d’autres problèmes. En effet, nous nous sommes retrouvés confrontés a de nombreux problèmes d’unifications de formats entre différents logiciels, d’unifications d’identifiants entre différentes bases de données ou encore de représentations des connaissances. Si tout le processus n’est pas encore entièrement automatisé, cette automatisation est déjà avancée.Chapitre 4 Contribution du réseau métabolique d’Ectocarpus siliculosus pour améliorer les connaissances sur la physiologie des algues brunes Dans ce chapitre nous présenterons tout d’abord les spécificités du métabolisme d’Ectocarpus siliculosus (partie 4.1) avant d’étudier la reconstruction de certaines voies métaboliques importantes chez Ectocarpus siliculosus (partie 4.2). Nous continuerons par l’analyse de voies métaboliques mieux connues grâce à l’analyse du réseau métabolique reconstruit dans la partie 4.3, avant de terminer par l’étude de la réannotation de gène permise par la reconstruction du réseau métabolique (partie 4.4). La majorité des apports biologiques présentés dans ce chapitre ont été publiés en 2014 dans Plant Journal [PCD+14]. Ces études ont été réalisées en collaboration avec Simon Dittami et Ludovic Delage de la station biologique de Roscoff. 4.1 Ectocarpus siliculosus : ses spécificités Ectocarpus siliculosus est une algue brune possédant plusieurs spécificités la rendant intéressante à étudier, particulièrement d’un point de vue de biologie systémique. Tout d’abord son génome (et donc son métabolisme) est le résultat d’une endosymbiose secondaire et de nombreux transferts latéraux de gènes [CSR+10, MTS+10b, MTS+10a]. Cela conduit à un métabolisme hybride et à de nouvelles voies métaboliques, certaines des connexions entre les différentes voies n’existant pas chez d’autres organismes. D’autre part, les algues brunes sont sujettes à de fortes influences de leur environnement sur leurs capacités métaboliques. Elles ont ainsi développé des adaptations métaboliques en rapport avec leur habitat, c’est à dire la zone intertidale. Il est également intéressant de remarquer qu’une souche d’Ectocarpus a été découverte vivant dans de l’eau douce en Australie [WK96], entraînant une série d’études passionnantes sur les capacités d’adaptation et d’acclimatation de cette algue aux stress salins. Comme chez de nombreux organismes, certains exemples d’évolution convergente au niveau d’activités enzymatiques existent, illustrés par le fait qu’une même réaction biochi- 8586 Contribution à l’amélioration des connaissances sur la physiologie des algues brunes mique est catalysée par des protéines qui n’ont pas de proximité phylogénétique. Il est possible de citer l’exemple de la mannitol-1-phosphatase (M1Pase) [GSM+14]. Ceci n’est pas spécifiques aux algues brunes, mais complexifie l’annotation de génomes. La création de réseaux métaboliques peut aider à la réannotation de génomes lorsque l’on se trouve face à de telles réactions pour lesquelles les enzymes mises en jeu ne peuvent pas être identifiées par similarité de séquence. De plus il n’est pas possible de réaliser de modification génétique directe ou inverse chez Ectocarpus siliculosus . Il est donc difficile d’analyser la fonction physiologique ainsi que l’influence de certains gènes in vivo in vivo. La reconstitution de voies métaboliques in silico permet d’identifier certains gènes d’intérêt pour guider les futures expérimentations in vitro ou in vivo. Enfin Ectocarpus siliculosus ne se développe pas seule dans son environnement, mais est associée à de nombreux autres organismes, notamment des bactéries. Pour certains sujets d’étude, il sera donc insuffisant de se concentrer uniquement sur l’algue. Il faudra étudier l’holobionte dans son ensemble et cela sera grandement simplifié par la création ulté- rieure de méta-réseaux métaboliques impliquant différents organismes. 4.2 Analyse de la reconstruction automatique du réseau métabolique Afin d’avoir une idée générale de la qualité de la reconstruction automatique du réseau métabolique d’Ectocarpus siliculosus , nous avons analysé en détail deux voies métaboliques typiques des algues brunes, le cycle du mannitol et la synthèse des alginates. Ces deux voies sont indispensables au métabolisme de l’algue, le mannitol étant utilisé comme forme de stockage du carbone et les alginates étant des composants majeurs de la matrice extracellulaire. 4.2.1 La synthèse des alginates Une voie potentielle de synthèse des alginates a été proposée par [MTS+10b] et les gènes correspondant ont été annotés dans la base de données Orcae. Dans la voie proposée par [MTS+10b], à partir du fructose-6-phosphate produit par la photosynthèse, la première étape consiste en l’action d’une mannose-6-phosphate isomérase pour produire du mannose- 6-phosphate. Celui-ci est ensuite transformé en mannose-1-phosphate par une phosphomannomutase et servira à produire du GDP-mannose par une mannose-1-phosphate guanylyltransférase. Ce GDP-mannose sera ensuite transformé en acide GDP-mannuronique par une GDP-mannose 6-déshydrogénase avant de produire du mannuronane par une mannuronane synthase. Enfin ce mannuronane produira de l’alginate par une mannuronate C5 épimérase. L’ensemble de ces informations est représenté dans la partie gauche de la figure 4.1. Différents gènes candidats existent pour presque toutes ces réactions, seule la transformation du mannose-1-phosphate en GDP-mannose n’est pour l’instant supportée par aucun gène. Les quatre premières réactions de cette voie de synthèse des alginates ont été bien retrouvées lors de la reconstruction du réseau métabolique. Les gènes proposés sont quasiment équivalents, nous proposons un candidat supplémentaire pour la réaction de transformation du mannose-6-phosphate en mannose-1-phosphate. Une analyse plus pousséeAnalyse de la reconstruction automatique du réseau métabolique 87 Enzyme Réaction prédite (MetaCyc id) Gènes assignés MPI MANNPISOM-RXN Esi0000_0207 Esi0120_0005 Esi0120_0009,0010 Esi0195_0002* PMM PHOSMANMUT-RXN Esi0149_0031,0032 Esi0315_0030 MPG 2.7.7.13-RXN Pas de gène GMD GDP-MANNOSE-6- DEHYDROGENASE-RXN Esi0051_0092 Esi0052_0113 Esi0164_0053** MS (GT2) Pas de réaction Pas de gène MC5E Pas de réaction Pas de gène Annotation manuelle (Cette étude) Synthèse des alginates Fructose-6-P Mannose-6-P Mannose-1-P GDP-mannose Acide GDP-mannuronique Mannuronane Alginate Mannose-6-P isomerase (MPI) Esi0000_0207 Esi0120_0005 Esi0120_0009,0010 Esi0195_0005* Phosphomannomutase (PMM) Esi0149_0031,0032 Mannuronate C5 epimerase (MC5E) 28 genes GDP-mannose 6-dehydrogenase (GMD) Esi0051_0092 Esi0051_0113 Esi0164_0053** Mannuronan synthase (MS) Esi0010_0147 Esi0086_0005 Mannose-1-P guanylyltransferase (MPG) No candidate gene EctoGEM-functional (Michel et al., 2 010a) FIGURE 4.1: Comparaison entre la reconstruction automatique et l’annotation manuelle de la voie de synthèse des alginates. * indique un gène pour lequel l’identifiant a changé dans la base de données en fonction de la mise à jour de l’annotation structurale du gé- nome (Esi0195_0005 est devenu Esi0195_0002). ** indique une protéine dont la fonction a été caractérisée biochimiquement [TVC+11].88 Contribution à l’amélioration des connaissances sur la physiologie des algues brunes de ce gène candidat montre une identité forte (65%) avec des phosphomannomutases pré- sentes chez des plantes [QYQ+07] suggérant qu’Ectocarpus siliculosus ne possède pas une, mais deux protéines pour cette fonction. Le gène Esi0051_0113 n’a pas été retrouvé à cause d’un manque d’annotations dans la base de données génomique. Le gène candidat proposé lors de la reconstruction du réseau correspond en effet à une GDP-mannose 6-déshydrogé- nase, mais celle-ci est connue comme faisant partie d’un virus ayant intégré le génome d’Ectocarpus siliculosus [CSR+10]. Les deux dernières réactions de cette voie métabolique n’ont pas été prédites lors de la reconstruction du réseau pour différentes raisons. Tout d’abord les gènes correspondant ne possèdent pas de numéro E.C. dans leur annotation, rendant difficile leur identification et leur assignation lors de l’étape d’étude des annotations pour la reconstruction du réseau. De plus, l’alginate ne faisant pas partie des molécules cibles utilisées lors de la complétion de l’ébauche métabolique par Meneco, les réactions enzymatiques associées à cette voie métabolique n’ont pas été considérées pour la complétion du réseau. 4.2.2 Le cycle du mannitol Le cycle du mannitol est composé de quatre réactions différentes, deux pour la synthèse à partir du fructose-6-phosphate, et deux correspondant au recyclage de ce polyalcool pour produire du fructose-6-phosphate. Des gènes candidats ont été identifiés dans le génome d’Ectocarpus siliculosus pour ces réactions dans [MTS+10a]. Ces réactions sont présentées dans la partie gauche de la figure 4.2. La première réaction consiste à transformer le fructose-6-phosphate en mannitol-1-phosphate à l’aide d’une mannitol-1-phosphate déshydrogénase. Le mannitol-1-phosphate sert ensuite à la production de mannitol grâce à une mannitol-1-phosphatase. Lors du recyclage du mannitol, nous allons avoir production de fructose par une mannitol-2-déshydrogénase, cet ose étant ensuite reconverti en fructose- 6-phosphate par une fructokinase. La première réaction a été correctement retrouvée et associée aux bons gènes. Le mannitol faisant partie des métabolites cibles, Meneco a correctement retrouvé la seconde réaction mais du fait du manque dans les bases de données de séquences protéiques identifiées comme M1Pases, il n’a pas été possible de proposer de gènes candidats pour cette réaction. En effet, une séquence de M1Pase a été identifiée en 1998 chez Eimera [LAF+98] mais sa séquence a trop divergé entre les deux organismes. En revanche aucune des réactions impliquées dans le recyclage du mannitol n’a été retrouvée lors de la création automatique du réseau. Des gènes candidats existants, ils ont été rajoutés manuellement au réseau EctoGEM final. 4.3 Étude de voies métaboliques chez Ectocarpus siliculosus à l’aide du réseau métabolique 4.3.1 Synthèse des acides aminés aromatiques Une étude manuelle d’EctoGEM avant curation montre que, parmi les voies métaboliques de synthèse des acides aminés aromatiques (tryptophane, tyrosine, et phenylalanine) telles que décrites dans [TG10], seule celle de la tyrosine est incomplète. Les trois voies mé- taboliques de synthèse de la tyrosine présentes dans MetaCyc ("tyrosine biosynthesis I" =Étude de voies métaboliques chez Ectocarpus siliculosus à l’aide du réseau métabolique 89 Annotation manuelle EctoGEM-functional (Cette étude) Cycle du mannitol Enzyme Réactions prédite (MetaCyc id) Gènes assignés M1PDH MANNPDEHYDROG-RXN Esi0017_0062** Esi0020_0181 Esi0080_0017 M1Pase MANNITOL-1-PHOSPHATASE-RXN Pas de gène M2DH Pas de réaction Pas de gène HK Pas de réaction Pas de gène Mannitol-1-P dehydrogenase (M1PDH) Esi0017_0062 ** Esi0020_0181 Esi0080_0017 Fructokinase (FK) Fructose-6-P Mannitol-1-P Mannitol Fructose Esi0139_0025 Mannitol-1-phosphatase (M1Pase) Esi0080_0016 Esi0100_0020** Mannitol-2-dehydrogenase (M2DH) Esi0135_0010 ( ichel M et al., 2010b) FIGURE 4.2: Comparaison entre la reconstruction automatique et l’annotation manuelle de la voie du cycle du mannitol. ** indique une protéine dont la fonction a été caractérisée biochimiquement. [RGD+11, GSM+14] TYRSYN, "tyrosine biosynthesis II" = PWY-3461 et "tyrosine biosynthesis III" = PWY-6120) montrent la présence d’une seule des trois réactions présentes dans ces voies. La tyrosine étant présente dans les 50 métabolites d’intérêt ayant servi à la reconstruction du réseau, Meneco a proposé l’ajout d’une phénylalanine hydroxylase (PAH) afin de permettre la production de tyrosine via une hydroxylation de la phénylalanine(figure 4.4a). Cette suggestion est compatible avec ce qui est observé dans le réseau métabolique DiatomCyc, qui contient la réaction catalysée par une phénylalanine hydroxylase, pour laquelle la protéine associée présente 50% d’identité avec une phenylalanine-4-hydroxylase humaine caractérisée. Cependant, l’analyse du génome d’Ectocarpus siliculosus n’a pas permis de retrouver de gène codant pour cette protéine. La voie de production des acides aminés aromatiques a donc été étudiée manuellement afin de mieux la cerner chez cet organisme. Dans MetaCyc, la voie de synthèse I est présente chez Saccharomyces cerevisiae et Escherichia coli, alors que les voies II et III sont présentes chez les plantes. La principale différence entre ces trois voies réside dans la nature des intermédiaires générés entre le préphénate et la tyrosine (Figure 4.3) : – La voie microbienne implique le préphénate comme précurseur pour produire du 4- hydroxyphénylpyruvate (HPP) par l’activité d’une déshydrogénase, ce HPP étant ensuite converti en tyrosine par une tyrosine aminotransférase – La voie présente chez les plantes utilise le préphénate pour produire de l’arogénate par une préphénate aminotransférase (PAT), puis cet intermédiaire est décarboxyler en tyrosine par une arogénate déshydrogénase La figure 4.3 tirée de [TG10] résume ces différentes informations. La voie métabolique associée aux plantes est localisée dans le chloroplaste [RPG+09] et les PATs des plantes ont été caractérisées chez Arabidopsis thaliana et Petunia hybrida90 Contribution à l’amélioration des connaissances sur la physiologie des algues brunes FIGURE 4.3: Les voies de synthèse des acides aminés aromatiques chez les plantes. [TG10] Les noms des enzymes sont donnés à côté des flèches, et sont accompagnés des noms abré- gés entre parenthèses. Les voies majoritaires de synthèse de la phénylalanine et de la tyrosine chez les plantes sont indiquées par des flèches vertes (voie II pour la tyrosine). La voie de synthèse I de la tyrosine et une voie de synthèse secondaire de la phénylalanine sont représentées par des flèches rouges. [GGJ+10, MYD11]. Toutefois, des résultats récents semblent indiquer qu’une voie métabolique proche de la voie microbienne pourrait être aussi présente chez les plantes, et que la synthèse de phénylalanine ne serait pas uniquement chloroplastique [YWQ+13]. Trois candidats ont été identifiés dans le génome d’E. siliculosus lors de la reconstruction du ré- seau métabolique pour ces deux voies métaboliques. On note l’absence de candidat pour les PATs, probablement parce que cette protéine n’est pas présente dans le réseau métabolique AraGEM. Cependant une analyse avec la PAT identifiée chez Arabidopsis thaliana a permis d’identifier un candidat chez Ectocarpus siliculosus (Esi0128_0018). L’ensemble des gènes candidats pour les deux voies est supporté par des EST, et plusieurs d’entre eux ont leur expression qui est réduite lors de stress abiotiques [DSP+09, RDG+14]. La fonction biochimique de ces gènes reste à vérifier expérimentalement. La figure 4.4 (b) représente la voie de synthèse des acides aminés aromatiques proposée après curation manuelle du réseau. Des analyses phylogénétiques ont été effectuées sur les quatre candidats présents dans le génome d’Ectocarpus siliculosus pour étudier l’évolution de cette voie chez les algues brunes. Le logiciel Phylogeny.fr [DGB+08] a été utilisé pour cela. Les alignements protéiques ont été réalisés à l’aide du logiciel MUSCLE avant d’être raffinés avec GBlocks. Une fois les alignements réalisés, les arbres phylogénétiques ont été obtenus par la méthode du maximum de vraisemblance implémentée dans PhyML. Des analyses de bootstrap sur 100 réplicats ont ensuite été réalisées pour estimer la confiance pouvant être accordée à la topologie des arbres obtenus.Étude de voies métaboliques chez Ectocarpus siliculosus à l’aide du réseau métabolique 91 FIGURE 4.4: Voies de biosynthèse des acides aminés aromatiques avant et après curation manuelle.(a) Voies métaboliques prédites dans EctoGEM-functionnal. Les commentaires associés aux enzymes indiquent comment les gènes ont été identifiés et les réactions pré- dites : PWT (Pathway Tools), PTG (Pantograph) et HMM. (b) Voies métaboliques obtenues après curation manuelle par analyse comparative avec d’autres espèces. La voie métabolique de l’arogénate est représentée en pointillés. Les changements d’expression significatifs (FDR < 5%) dûs à des stress cuivriques (après 4h et 8h de traitement), hypersalins, hyposalins et oxydatifs (après 6h de traitement pour les trois derniers types de stress) sont indiqués dans cet ordre par les flèches sous les noms des gènes.92 Contribution à l’amélioration des connaissances sur la physiologie des algues brunes La chorismate mutase d’Ectocarpus (Esi0002_0121) groupe avec les séquences d’oomycètes et de champignons, alors que les gènes d’algues codant pour les autres enzymes sont plus proches de leurs homologues chez les plantes. Cette observation semble indiquer que la synthèse de phénylalanine et de la tyrosine chez Ectocarpus siliculosus se ferait de façon similaire à ce qui se passe chez les plantes terrestres (via l’arogénate) plutôt que directement depuis le préphénate comme chez la levure. Une analyse de la sé- quence d’Esi0000_0583 montre que cette protéine contient deux domaines, l’un correspondant à une arogénate/préphénate déshydratase (A/P-DT) à l’extrémité N-terminale, et l’autre à une arogénate/préphénate déshydrogénase (A/P-DH) à l’extrémité C-terminale. Cette structure est différente de celles des gènes des plantes terrestres où ces deux fonctions sont catalysées par des enzymes différentes [RPG+09]. Des enzymes potentiellement bi-fonctionnelles A/P-DT et A/P-DH ont été retrouvées chez certains straménopiles comme les oomycètes (Phytophtora, Albugo) et chez d’autres organismes plus éloignés comme des haptophytes ou des choanoflagellées (figure 4.5). À l’inverse, chez d’autres straménopiles plus proches phylogénétiquement des algues brunes, comme les diatomées ou les pélagophytes, les deux activités sont codées par des gènes différents, comme c’est le cas aussi chez les algues vertes et rouges. De plus, certains organismes tels que les oomycètes, M. brevicollis, et E. huxleyi possèdent une enzyme potentiellement tri-fonctionnelle PAT, A/P-DH et A/P-DT. Tous ces résultats semblent indiquer une enzyme ancestrale tri-fonctionnelle étant donné que celle-ci est partagée par deux lignées éloignées, les straménopiles et les opisthokontes. Le gène aurait ainsi été tout d’abord clivé en un gène PAT et un gène bi-fonctionnel A/P-DT et A/P-DH après la divergence entre les oomycètes et les ochrophytes. Les figures 4.6 et 4.7 présentent les analyses phylogénétiques des A/P-DH et A/P-DT respectivement. Ce gène bi-fonctionnel aurait lui même été clivé plus tard chez les diatomées. De plus, le fait que la préphénate aminotransférase soit une partie d’une enzyme trifonctionnelle impliquée dans la synthèse de la phénylalanine et de la tyrosine chez les oomycètes est une indication que le scénario le plus plausible de production de ces acides aminés chez les straménopiles passe par la synthèse d’arogénate. Cependant, la voie de synthèse de la tyrosine connue chez la levure ne peut pas être exclue définitivement. Enfin, nous avons effectué une recherche d’homologues d’aminotransférases d’acides aminés aromatiques et de phénylalanine hydroxylase (PAH) chez différentes lignées. Le gène codant pour l’enzyme PAH est absent du génome d’E. siliculosus, mais a été identifié chez de nombreux autres straménopiles où les deux voies métaboliques pour la production de la tyrosine semblent co-exister, avec ou sans la phénylalanine comme intermédiaire. Cette situation peut également être observée chez les archaeplastides, les opisthokontes, les alvéolés et les cryptophytes. Tout cela semble suggérer une évolution de la production de phénylalanine et de tyrosine indépendante de l’évolution phylogénétique des organismes. 4.3.2 Synthèse du molybdenum La reconstruction du réseau métabolique d’E. siliculosus a également permis d’obtenir de nouveaux indices quant à la synthèse du cofacteur molybdenum (Molybdenum cofactor, Moco). La voie de synthèse du Moco a été correctement reconstruite dans EctoGEM (figure 4.8a) avec trois réactions prédites par Pathway Tools en se basant sur les annotations d’Orcae, et les quatre autres réactions ajoutées par l’algorithme de gap-filling de Pathway Tools. Les quatre réactions ajoutées ont été associées aux gènes correspondant durant la phaseÉtude de voies métaboliques chez Ectocarpus siliculosus à l’aide du réseau métabolique 93 FIGURE 4.5: Évolution des enzymes impliquées dans la synthèse des acides aminés aromatiques. L’arbre représente les relations phylogénétiques entre les organismes telles que définies dans Tree Of Life (http ://tolweb.org). La longueur des branches ne représente aucune information. La présence des gènes chez les différents organismes est indiquée par un "+". Les flèches indiquent la fusion des déshydratases (A/P-DT) et déshydrogénases (A/PDH). Phytophtora infestans contient deux déshydratases, l’une étant fusionnée à la déshydrogénase.94 Contribution à l’amélioration des connaissances sur la physiologie des algues brunes FIGURE 4.6: Analyse phylogénétique de la A/P-DT d’Ectocarpus siliculosus . Pour chaque séquence, la première partie du nom correspond au numéro d’accession dans la base de données NCBI et la seconde partie correspond au nom de l’espèce où la séquence a été retrouvée. Les couleurs correspondent aux origines phylogénétiques des espèces.Étude de voies métaboliques chez Ectocarpus siliculosus à l’aide du réseau métabolique 95 FIGURE 4.7: Analyse phylogénétique de la A/P-DH d’Ectocarpus siliculosus . Pour chaque séquence, la première partie du nom correspond au numéro d’accession dans la base de données NCBI et la seconde partie correspond au nom de l’espèce où la séquence a été retrouvée. Les couleurs correspondent aux origines phylogénétiques des espèces.96 Contribution à l’amélioration des connaissances sur la physiologie des algues brunes de curation manuelle. Une recherche de gènes associés à cette voie métabolique a mis en avant la présence d’un transporteur de molybdate de type MOT2 [TJGF11] et de six loci gé- nomiques codant pour des protéines qui dépendent probablement du Moco pour leurs activités. Chez les plantes terrestres, le Moco est essentiel au fonctionnement notamment des nitrates réductases et de la xanthine déshydrogénase, impliquées respectivement dans l’assimilation du nitrate, et la dégradation de la purine [SM06]. Chez E. siliculosus nous avons retrouvé toutes ces réactions, avec en plus une enzyme de la famille des phosphoadénosine phosphosulfate réductase qui contient aussi un domaine de fixation au Moco. Tous les gènes candidats impliqués dans la synthèse du molybdenum sont conservés chez les animaux, les plantes et les straménopiles. On a remarqué cependant que les sé- quences d’E. siliculosus sont plus proches de celles des autres straménopiles avec lesquelles elles forment une clade indépendante. La seule exception est pour une des deux molybdopterine synthases potentielles (Esi0290_0003), qui groupe avec les séquences de cyanobactéries lors des analyses phylogénétiques (fig 4.8b). Cela indique que tout en considérant le fait que la biosynthèse du Moco est ancestrale chez les eukaryotes, un deuxième gène codant pour une molybdopterine synthase a été acquis par l’ancêtre commun des straménopiles via un transfert horizontal à partir d’une cyanobactérie. Comme les deux gènes correspondant à cette acitvité enzymatique sont exprimés chez E. siliculosus et présents chez les autres straménopiles, il est intéressant de s’interroger quand à leur(s) rôle(s) physiologiques chez ces organismes. 4.4 Réannotation des gènes Au début de cette thèse, dans la base de données génomique Orcae, plus d’un tiers des gènes ne sont pas annotés précisément ou pas annotés du tout. Un des apports de la reconstruction du réseau métabolique d’Ectocarpus siliculosus a été la réannotation d’un certain nombre de ces gènes. En effet, lors des étapes de complétion d’ébauches de réseaux métaboliques, nous ajoutons des réactions dans le réseau qui ne sont pas, la plupart du temps, supportées par une annotation génomique précise (si c’était le cas, normalement, la phase de création de l’ébauche basée sur les annotations aurait dû la trouver). Ainsi, l’étape de complétion pourra attirer l’attention des annotateurs sur une réaction précise pour laquelle les gènes correctement annotés sont manquants. Notre workflow va permettre de proposer des gènes candidats pour ces réactions via l’utilisation des données d’orthologie et les pro- fils HMMs. Ce manque initial d’annotation peut être dû à différentes raisons. Tout d’abord comme précisé précédemment, le génome d’Ectocarpus siliculosus est la résultante d’une endosymbiose secondaire et de nombreux transferts latéraux de gènes. Cela conduit à la pré- sence de voies métaboliques "non classiques" chez cette algue. D’autre part, les algues brunes font partie d’un groupe phylogénétique ayant divergé très rapidement parmi les eucaryotes. Les annotations de génome automatiques basées sur des techniques d’homologie de séquence risquent donc d’échouer du fait de la grande distance phylogénétique entre Ectocarpus siliculosus et la plupart des organismes séquencés et annotés jusqu’à présent. De plus, le métabolisme chimérique très particulier à Ectocarpus siliculosus engendre le fait que cette espèce possède des voies métaboliques (et donc des gènes) spécifiques à cette espèce. Enfin les expériences de transcriptomique chez Ectocarpus siliculosus sont peu nombreuses. Par conséquent, les possibilités de réaliser des méta-analyses afin d’identifierRéannotation des gènes 97 Cyclic pyranopterin phosphate GTP 4.1.99.18 Cysteine Molybdopterin synthase Small subunit Thiocarboxylated molybdopterin synthase small subunit 2.8.1.7 2.7.7.80 2.8.1.11 Molybdopterin Molybdopterin adenine dinucleoide MoO2 -molybdopterin cofactor Molybdopterin synthase Small subunit 2.8.1.12 2.7.7.75 2.10.1.1 Esi0147_0053** Esi0290_0003* Esi0179_0043* Esi0290_0003* Esi0179_0043* Esi0553_0005 Esi0000_0519* Esi0000_0519* Molybdate MOT2 Esi0053_0098* Molybdate Nitrate reductase Esi0006_0124* Sulfite oxidase Esi0008_0206* NADH dehydrogenase Esi0028_0044* Xanthine dehydrogenase Esi0058_0101* Esi0058_0108 Phosphoadenosine phosphosulfate reductase family protein Esi0218_0033* Exctracellular space a Targets b Cyanobacteria Stramenopiles II (incl. Esi0290_0003) Firmicutes Fibrobacteres Acinobacteria Armaimonadetes Chlamydiae Bacteroidetes Chloroflexi Deltaproteobacteria Fibrobacteres Chlamydiae Nitrospinae Gammaproteobacteria Stramenopiles I (incl. Esi0179_0043) Animals Green plants Fungi 99 100 82 90 63 94 100 70 82 60 100 91 86 93 100 99 89 89 72 100 98 0.2 Bacteria (+ Stramenopiles II) Eukaryotes Esi0031_0067 * FIGURE 4.8: Voies de biosynthèse du cofacteur molybdenum. a) Voies métaboliques curées et protéines associées aux réactions enzymatiques. * marque les gènes exprimés chez E. siliculosus. ** marque les gènes significativement (FDR < 5%) réprimés en réponse à un stress hyposalin. Les nombres dans les ovales correspondent aux numéros E.C. des réactions. (b) Position phylogénétique de deux candidats pour l’activité molybdopterin synthase. La fi- gure montre un arbre de maximum de vraisemblance avec 75 séquences sélectionnées dans différentes lignées. Seules les valeurs possédant un bootstrap supérieur à 50 sont indiquées.98 Contribution à l’amélioration des connaissances sur la physiologie des algues brunes des gènes co-régulés susceptibles d’intervenir dans des voies métaboliques communes sont limitées. De la même manière, l’absence de structure en opéron ou en cluster dans le gé- nome (que l’on retrouve chez les bactéries ou dans le métabolisme secondaire des plantes [WGH+12]) empêche de réaliser des prédictions d’annotations en se basant sur la localisation des gènes. La création du réseau métabolique d’Ectocarpus siliculosus a permis de réannoter manuellement, pour le moment, 56 gènes. Aucune autre voie métabolique en particulier n’a été retrouvée associée à ces gènes, ce qui amène à penser que ces réannnotations ont été réalisées pour des gènes correspondant à des protéines impliquées dans différentes voies métaboliques, et des loci dispersés dans le génome. La liste des gènes réannotés est présentée en annexe C. Toutefois, nous avons remarqué qu’une majorité des gènes réannotés se trouvent dans des voies métaboliques connues comme étant des voies de synthèse de molécules. Cela peut être expliqué par l’étape de complétion du réseau métabolique. En effet, Meneco rajoute dans ce réseau des réactions afin de produire certaines molécules. Il est tout à fait possible que ces réactions n’aient pas été ajoutées au cours de la construction de l’ébauche du réseau car elles n’ont pas été retrouvées dans le génome, probablement parce que le(s) gène(s) associé(s) à ces réactions étaient pas, peu, ou mal annotées. Nous retrouvons également quelques réactions catalysant la production de métabolites intervenant dans plusieurs voies métaboliques. De même manière, l’ajout de celles-ci par Meneco indique que les gènes étaient mal annotés dans le génome, et leur intégration dans le réseau est sans doute nécessaire pour rendre disponibles un grand nombre de réactions. 4.5 Conclusion Nous l’avons vu, EctoGEM a d’ores et déjà été utilisé pour compléter certaines annotations au sein du génome d’Ectocarpus siliculosus dans la base de données ORCAE, notamment en lien avec certaines voies métaboliques qui ont déjà été étudiées ou sont en cours de considération par des équipes travaillant sur la physiologie d’Ectocarpus. D’autre part, le processus de reconstruction du réseau métabolique a permis aux experts de se concentrer sur certaines voies métaboliques particulières apportant ainsi de nouvelles connaissances sur le métabolisme de cette algue, et sur l’évolution des voies métaboliques chez les eucaryotes. Par la suite, EctoGEM pourra être utilisé pour analyser des changements physiologiques de l’algue brune en réponse à certaines modifications des conditions environnementales. Ce réseau sera également considéré pour intégrer et cartographier des résultats d’expé- riences de transcriptomique et de profilage métabolique obtenus dans différentes conditions de stress. Ceci devrait permettre d’améliorer la compréhension de l’influence de ces stress sur la physiologie globale de l’organisme par une vision globale, c’est à dire à l’échelle du génome complet.Conclusion et perspectives Conclusion Cette thèse se situe dans le domaine de la bioinformatique. La question abordée est la reconstruction de réseaux métaboliques pour des espèces eucaryotes non classiques, en se concentrant particulièrement sur une étape primordiale de cette reconstruction, la complétion d’ébauche métaboliques L’ensemble des résultats obtenus au cours de ce travail ont été appliquées à la reconstruction d’une carte métabolique chez Ectocarpus siliculosus, le modèle génomique des algues brunes. Le problème de complétion d’un réseau métabolique est le suivant. Nous disposons d’information partielles sur les réactions métaboliques qui transforment des molécules chez une espèce données. De plus, nous avons à notre disposition des données qui nous indiquent la présence de certaines molécules, produites par l’organisme d’intérêt (profilage métabolique). Étant donné que ces molécules sont présentes au sein des cellules de l’organisme, il semble logique de supposer que le métabolisme de cet organisme est capable de les produire à partir des nutriments qui composent son milieu de culture. Pour vérifier cela, nous parcourons le graphe créé par les réactions métaboliques reliées entre elles par les molécules impliquées. Ce parcours va se faire à la recherche d’un chemin entre au moins une molécule présente dans le milieu de culture et l’ensemble des molécules identifiées par profilage métabolique. Si ce chemin existe, les informations contenues dans le génome ont suffit à expliquer la présence de ces molécules. Si ce n’est pas le cas, nous allons ajouter des réactions provenant de bases de données de réactions métaboliques dans le réseau afin de rétablir la connectivité. Cet ajout de réaction se fera de manière à modifier le moins possible le réseau existant, en ajoutant le nombre minimal de réactions. Le problème qui doit être résolu consiste donc à proposer un ensemble de réactions métaboliques piochées dans une banque "universelle" de réactions, pour restaurer "in silico" la production de composés cibles. Au début de cette thèse une méthode de résolution de la version combinatoire de ce problème avait été proposée sous la forme d’une approche de programmation par contraintes déclaratives appelée programmation par ensemble réponses (ou Answer Set Programming, ASP) [ST09]. mais celle-ci n’était pas applicable en routine car elle ne passait pas à l’échelle sur de grandes bases de données. D’autre part cette méthode ne représentait pas fidèlement la réalité biologique de certaines réactions, les réactions réversibles. La première partie de cette thèse a donc consisté en l’amélioration de cette méthode de complétion de réseaux métaboliques sur deux plans : la modélisation des réactions réversibles et les méthodes de recherches de solutions. Ces modifications ont été introduite dans le développement du package python Meneco, rapide et aisément utilisable à partir de fichiers dans des formats 99100 Conclusion et perspectives sbml classiques. L’intérêt de cette méthode, tant d’un point de vue de l’efficacité des calculs que de la fonctionnalité biologique des réseaux reconstruits, a été validée par des expérimentations sur des réseaux classiques (E. Coli) et non-classique (Ectocarpus siliculosus). Une fois la méthode de complétion validée, celle-ci a été utilisée pour reconstruire le réseau métabolique du modèle biologique des algues brunes, Ectocarpus siliculosus. Une reconstruction d’un réseau métabolique fonctionnel ne se limitant pas à la seule étape de complétion, nous avons développé un processus global de reconstruction de réseau métabolique. Celui-ci se base sur les données classiquement utilisées lors de la reconstruction de réseaux métaboliques : le génome de l’espèce étudiée (avec les annotations associées) et toute autre source de données biologiques disponibles (métabolomique, transcriptomique, etc). Pour cela deux ébauches métaboliques différentes seront créées. La première utilisera les informations présentes dans les annotations du génome, que celles-ci soient manuelles ou automatiques. Ces informations seront recoupées avec celles présentes dans les bases de données de réactions métaboliques telles que MetaCyc afin de créer un lien entre un gène et une réaction. Cette étape est réalisée à l’aide du logiciel de référence Pathway Tools. D’autre part, nous utilisons les informations incluses dans les séquences génomiques pour réaliser une seconde ébauche métabolique. Pour cela nous utilisons un réseau métabolique existant chez une espèce proche phylogénétiquement de l’espèce étudiée. Une recherche d’orthologues est alors réalisée entre le génome de l’espèce pour laquelle nous reconstruisons le réseau et celle possédant déjà un réseau métabolique. Le but ici est de transposer les associations entre gènes et réactions ayant déjà été réalisées vers l’espèce d’intérêt. Si dans le premier cas nous cherchons à obtenir le maximum d’informations possible à partir des annotations manuelles du génome, dans le second nous cherchons à profiter de la curation manuelle préexistante dans certains réseaux. Une difficulté ici est de fusionner les deux ébauches métaboliques, en particulier lorsque les sources de données sont différentes, ce qui nécessite de réconcilier les annotations avec des méthodes dédiées. Nous obtenons alors une ébauche métabolique contenant le maximum d’informations contenues dans le génome. Pour réaliser la complétion de ce réseau métabolique nous utilisons alors une autre source de données (un profilage métabolique), et utilisons l’approche Meneco de complétion combinatoire discutée plus haut. Les solutions au problème combinatoire étant nombreuses (mais énumérables), elles sont analysées a posteriori avec des approches sémantiques ( et fonctionnelles (validation via des profils HMM pour les réactions introduites). L’ensemble du réseau reconstruit a finalement été validé par une étude fonctionnelle quantitative (FBA) qui a montré sa capacité à produire de la biomasse. Surtout, les méthodes introduites dans le pipeline complet (alignement de séquences, harmonisation des annotations, complétion combinatoire de réseau, analyse sémantique), permettent de réaliser efficacement une reconstruction de reconstruction de réseau métabolique en tirant partie de la plupart des informations disponibles sur le réseau : annotation du génome, connaissance sur des espèces cousines (réseau métabolique de référence), pro- fils métabolique, et modèles HMM associé à toutes les protéines introduites dans la banque de référence metacyc. Ce pipeline est en cours d’application à d’autres modèles marins ou extrémophiles. Une fois la complétion réalisée, le réseau a été analysé d’un point de vue topologique pour obtenir de nouvelles connaissances sur le métabolisme d’Ectocarpus siliculosus. CetteConclusion et perspectives 101 étude a permis de faire de nouvelles hypothèses sur la biosynthèse des acides aminés aromatiques ou du molybdenum. Ainsi, une nouvelle voie de synthèse de la tyrosine aurait été identifiée de même qu’une origine probablement bactérienne d’un des gènes présent dans la voie de synthèse du molybdenum. D’autre par la création du réseau métabolique a permis de guider la réannotation de gènes chez Ectocarpus siliculosus. En effet, lorsque nous ajoutons des réactions au réseau pendant l’étape de création de l’ébauche à l’aide d’orthologues ou lors de la complétion, cela indique que ces réactions n’ont pas été ajoutées grâce aux annotations. Il y a donc ici une amélioration possible des annotations du génome. Si le transfert d’information est relativement direct lorsqu’il s’agit de l’utilisation des données d’orthologie, cela est beaucoup moins évident à partir de la complétion. Nous proposons alors une liste de réactions à ajouter au réseau mais ces réactions sont totalement détachées de toute preuve de présence de l’enzyme au niveau génétique. Pour palier à cela, lorsque nous proposons la présence d’une réaction dans le réseau, nous associons cette proposition de réaction à un ou plusieurs gènes associés en utilisant la création de profils HMMs à partir des gènes existants chez d’autres espèces. Perspectives Différentes perspectives ressortent de ce travail à plus ou moins long terme. Automatisation du pipeline Tout d’abord, si les différentes briques du processus de reconstruction de réseaux métaboliques sont grandement automatiques, il reste à automatiser l’ensemble du processus pour fournir aux utilisateurs finaux un processus global et automatique de reconstruction nécessitant le moins possible d’étapes manuelles. Cela permettra d’obtenir un outil global utilisable par tous pour la reconstruction de réseaux métaboliques eucaryotes chez des espèces non classiques. Ce travail est d’ors et déjà en cours. Fonctionnalité La définition de la productibilité par Meneco, nous l’avons vu, amène à une sous-approximation de la productibilité des molécules comparé aux méthodes stœ- chiométriques au niveau des cycles. Une voie d’amélioration de ce point serait d’améliorer la sémantique de productibilité en prenant en compte une partie des cycles utilisés par la sémantique proposée par Acuna Sagot. Une autre grosse piste de recherche consisterait à utiliser les développements en cours de solveurs hybrides ASP+ILP. Cela permettrait de combiner l’efficacité des solveurs ASP avec une définition quantitative de la productibilité. Il faudrait alors combiner des critères quantitatifs et qualitatifs. Mais pour le moment les méthodes de recherche combinatoire ont du mal à "apprendre" des contraintes à partir des solveurs ILP existants. Amélioration et étude fonctionnelle du réseau métabolique D’autre part, maintenant que le réseau est reconstruit, il devrait pouvoir être utilisé pour réaliser des prédictions sur le métabolisme d’Ectocarpus siliculosus en réalisant une étude fonctionnelle précise du réseau. Nous espérons que cette étude aide à comprendre la forte capacité d’adaptation et d’acclimatation de cette algue brune aux stress abiotiques tel que le stress salin. Pour102 Conclusion et perspectives cela nous comptons utiliser les quelques données de transcriptomique existantes. Ces expériences ont été réalisées en conditions de stress salin ou cuivrique, il sera donc intéressant de voir quelles gènes présents dans le réseau métabolique sont sur-exprimées ou sousexprimés lors de ce stress. De nouvelles voies de réponses aux stress pourraient alors être identifiées. D’autre part l’espèce d’Ectocarpus vivant en eau douce va être très prochainement séquencée. Reconstruire le réseau métabolique de cette espèce par la même méthode et comparer les deux réseaux obtenus pourrait permettre d’obtenir des indications sur la raison de cette adaptation à l’eau douce (apparition de certaines voies métaboliques ou disparition d’autres). Là encore l’étude de la fonctionnalité du réseau a commencé avec sa décomposition en modes élémentaires et en modules réalisée par Annika Röhl et Arne Reimers, respectivement, lors d’une visite au laboratoire "Mathematics in Life Sciences" de Berlin. De plus de nouvelles données de métabolomique à haut débit devraient être disponibles sous peu. L’identification d’un grand nombre de métabolites chez Ectocarpus siliculosus devrait ainsi permettre d’améliorer encore l’étape de complétion du réseau, la technique de complétion utilisée étant d’autant plus précise que le nombre de métabolites dont nous devons expliquer la présence est grand. Enfin des données de profilage C13 devraient arriver sous peu chez des algues. Il serait alors intéressant de travailler au niveau moléculaire, par exemple en rajoutant des contraintes de traçage des carbones sur les voies métaboliques. Étude de communautés d’espèces À plus long terme, nous pouvons nous interroger sur la symbiose existant entre Ectocarpus siliculosus et de nombreuses souches bactériennes vivant à sa surface. En effet, il a d’ores et déjà été montré que ces bactéries jouent un rôle non négligeable pour le métabolisme de l’algue brune. Reconstruire le réseau "méta-métabolique" de l’algue et de l’ensemble des bactéries vivant en symbiose avec elle. Il est en effet possible que ces bactéries fournissent à l’algue des nutriments et vice-versa. Cet échange pourrait être particulièrement intéressant par exemple lorsque la marée se retire et que l’algue subit de très forts stress au niveau de la zone intertidale. Pour ce faire, les zones d’échange entre les différents organismes seront particulièrement importantes à modéliser. En effet, ces zones d’échanges et les transporteurs impliqués impliquent des contraintes à la fois qualitatives et quantitatives qui caractérisent les échanges au sein d’une communauté. Identifier automatiquement ces contraintes est à la fois un défi informatique et une donnée très importante en biologie. En effet, il est souvent impossible ou très difficile d’isoler une bactérie précise ou un protiste vivant en communauté pour le faire croître en culture. Une fois que les échanges de molécules entre organismes élucidés, il est possible d’espérer pouvoir créer des milieux de cultures spécifiques en mimant les conditions de vie au sein de la communauté. Importance des réseaux métaboliques chez de nouveaux modèles Cette thèse a permis de reconstruire un réseau métabolique chez un nouveau modèle, le modèle des algues brunes, Ectocarpus siliculosus. Dans un récent article, Fabris et ses collaborateurs [FMC+14] ont étudié le réseau DiatomCyc qu’ils ont reconstruit récemment. Leur étude montre l’intérêt des reconstruire des réseaux métaboliques chez des espèces modèles, notamment chez les straménopiles. En effet, ces réseaux métaboliques pourraient permettre d’élucider certainesConclusion et perspectives 103 parties de leur métabolisme hybride entre ce que l’on trouve chez les animaux, les plantes et les champignons, notamment.104 Conclusion et perspectivesBibliographie [AKMS12] Benjamin Andres, Benjamin Kaufmann, Oliver Matheis, and Torsten Schaub. Unsatisfiability-based optimization in clasp. In LIPIcs-Leibniz International Proceedings in Informatics, volume 17. Schloss DagstuhlLeibniz-Zentrum fuer Informatik, 2012. [AKRI13] Shilpi Aggarwal, I. A. Karimi, and Gregorius Reinaldi Ivan. In silico modeling and evaluation of gordonia alkanivorans for biodesulfurization. Mol. BioSyst., 9 :2530–2540, 2013. [Alo07] Uri Alon. Network motifs : theory and experimental approaches. Nat. Rev. Genet., 8(6) :450–461, 2007. [ALS+13] Rasmus Agren, Liming Liu, Saeed Shoaie, Wanwipa Vongsangnak, Intawat Nookaew, and Jens Nielsen. The raven toolbox and its use for generating a genome-scale metabolic model for Penicillium chrysogenum. PLoS Comput Biol, 9(3) :e1002980, 03 2013. [AMC+12] Vicente Acuña, Paulo Vieira Milreu, Ludovic Cottret, Alberto MarchettiSpaccamela, Leen Stougie, and Marie-France Sagot. Algorithms and complexity of enumerating minimal precursor sets in genome-wide metabolic networks. Bioinformatics, 28(19) :2474–2483, 2012. [Bar03] Chitta Baral. Knowledge Representation, Reasoning, and Declarative Problem Solving. Cambridge University Press, New York, NY, USA, 2003. [BBM+14] Thomas Bernard, Alan Bridge, Anne Morgat, Sébastien Moretti, Ioannis Xenarios, and Marco Pagni. Reconciliation of metabolites and biochemical reactions for metabolic networks. Briefings in Bioinformatics, 15(1) :123– 135, 2014. [BES+01] V. Badarinarayana, P. W. Estep, J. Shendure, J. Edwards, S. Tavazoie, F. Lam, and G. M. Church. Selection analyses of insertional mutants using subgenic-resolution arrays. Nat. Biotechnol., 19(11) :1060–1065, November 2001. [BFM+07] Scott A Becker, Adam M Feist, Monica L Mo, Gregory Hannum, Bernhard O Palsson, and Markus J Herrgard. Quantitative prediction of cellular metabolism with constraint-based models : the COBRA toolbox. Nat. Protocols, 2(3) :727–738, March 2007. [BNLC13] B. Billoud, Z. Nehr, A. Le Bail, and B. Charrier. Computational prediction and experimental validation of microRNAs in the brown alga Ectocarpus siliculosus. Nucleic Acids Research, pages gkt856–, September 2013. 105106 Bibliographie [BPM03] Anthony P. Burgard, Priti Pharkya, and Costas D. Maranas. Optknock : A bilevel programming framework for identifying gene knockout strategies for microbial strain optimization. Biotechnology and Bioengineering, 84(6) :647–657, 2003. [BS05] S. A. Benner and A. M. Sismour. Synthetic biology. Nat. Rev. Genet., 6(7) :533–543, Jul 2005. [BVM01] Anthony P. Burgard, Shankar Vaidyaraman, and Costas D. Maranas. Minimal reaction sets for escherichia coli metabolism under different growth requirements and uptake environments. Biotechnology Progress, 17(5) :791– 797, 2001. [CAB+14] Ron Caspi, Tomer Altman, Richard Billington, Kate Dreher, Hartmut Foerster, Carol A. Fulcher, Timothy A. Holland, Ingrid M. Keseler, Anamika Kothari, Aya Kubo, Markus Krummenacker, Mario Latendresse, Lukas A. Mueller, Quang Ong, Suzanne Paley, Pallavi Subhraveti, Daniel S. Weaver, Deepika Weerasinghe, Peifen Zhang, and Peter D. Karp. The metacyc database of metabolic pathways and enzymes and the biocyc collection of pathway/- genome databases. Nucleic Acids Research, 42(D1) :D459–D471, 2014. [CB79] A. Cornish-Bowden. Fundamentals of enzyme kinetics. Butterworths, 1979. [CEG+13] Guillaume Collet, Damien Eveillard, Martin Gebser, Sylvain Prigent, Torsten Schaub, Anne Siegel, and Sven Thiele. Extending the metabolic network of Ectocarpus Siliculosus using answer set programming. In Pedro Cabalar and TranCao Son, editors, Logic Programming and Nonmonotonic Reasoning, volume 8148 of Lecture Notes in Computer Science, pages 245–256. Springer Berlin Heidelberg, 2013. [CGA+11] S. M. Coelho, O. Godfroy, A. Arun, G. Le Corguille, A. F. Peters, and J. M. Cock. OUROBOROS is a master regulator of the gametophyte to sporophyte life cycle transition in the brown alga ectocarpus. Proceedings of the National Academy of Sciences, 108(28) :11518–11523, June 2011. [CGM+11] Roger L Chang, Lila Ghamsari, Ani Manichaikul, Erik F Y Hom, Santhanam Balaji, Weiqi Fu, Yun Shen, Tong Hao, Bernhard ØPalsson, Kourosh SalehiAshtiani, and Jason A Papin. Metabolic network reconstruction of Chlamydomonas offers insight into light-driven algal metabolism. Molecular Systems Biology, 7 :518, January 2011. [CKS01] Nadia Creignou, Sanjeev Khanna, and Madhu Sudan. Complexity classifi- cations of boolean constraint satisfaction problems. SIAM, 2001. [CMA+08] Ludovic Cottret, Paulo Vieira Milreu, Vicente Acuña, Alberto MarchettiSpaccamela, Fábio Viduani Martinez, Marie-France Sagot, and Leen Stougie. Enumerating precursor sets of target metabolites in a metabolic network. In Algorithms in Bioinformatics, pages 233–244. Springer, 2008. [CMK+09] Nils Christian, Patrick May, Stefan Kempa, Thomas Handorf, and Oliver Ebenhöh. An integrative approach towards completing genome-scale metabolic networks. Molecular bioSystems, 5(12) :1889–903, December 2009.Bibliographie 107 [CPC11] J. Mark Cock, Akira F. Peters, and Susana M. Coelho. Brown algae. Current Biology, 21(15) :R573 – R575, 2011. [CSH+12] Leonid Chindelevitch, Sarah Stanley, Deborah Hung, Aviv Regev, and Bonnie Berger. Metamerge : scaling up genome-scale metabolic reconstructions with application to mycobacterium tuberculosis. Genome Biology, 13(1) :r6, 2012. [CSR+10] J. Mark Cock, Lieven Sterck, Pierre Rouzé, Delphine Scornet, Andrew E. Allen, Grigoris Amoutzias, Veronique Anthouard, François Artiguenave, JeanMarc Aury, Jonathan H. Badger, Bank Beszteri, Kenny Billiau, Eric Bonnet, John H. Bothwell, Chris Bowler, Catherine Boyen, Colin Brownlee, Carl J. Carrano, Bénédicte Charrier, Ga Youn Cho, Susana M. Coelho, Jonas Collén, Erwan Corre, Corinne Da Silva, Ludovic Delage, Nicolas Delaroque, Simon M. Dittami, Sylvie Doulbeau, Marek Elias, Garry Farnham, Claire M. M. Gachon, Bernhard Gschloessl, Svenja Heesch, Kamel Jabbari, Claire Jubin, Hiroshi Kawai, Kei Kimura, Bernard Kloareg, Frithjof C. Küpper, Daniel Lang, Aude Le Bail, Catherine Leblanc, Patrice Lerouge, Martin Lohr, Pascal J. Lopez, Cindy Martens, Florian Maumus, Gurvan Michel, Diego Miranda-Saavedra, Julia Morales, Hervé Moreau, Taizo Motomura, Chikako Nagasato, Carolyn A. Napoli, David R. Nelson, Pi Nyvall-Collén, Akira F. Peters, Cyril Pommier, Philippe Potin, Julie Poulain, Hadi Quesneville, Betsy Read, Stefan A. Rensing, Andrés Ritter, Sylvie Rousvoal, Manoj Samanta, Gaelle Samson, Declan C. Schroeder, Béatrice Ségurens, Martina Strittmatter, Thierry Tonon, James W. Tregear, Klaus Valentin, Peter von Dassow, Takahiro Yamagishi, Yves Van de Peer, and Patrick Wincker. The Ectocarpus genome and the independent evolution of multicellularity in brown algae. Nature, 465(7298) :617–21, June 2010. [DCS+13] Guangyou Duan, Nils Christian, Jens Schwachtje, Dirk Walther, and Oliver Ebenhöh. The metabolic interplay between plants and phytopathogens. Metabolites, 3(1) :1–23, January 2013. [DdME+08] Kirill Degtyarenko, Paula de Matos, Marcus Ennis, Janna Hastings, Martin Zbinden, Alan McNaught, Rafael Alcántara, Michael Darsow, Mickaël Guedj, and Michael Ashburner. Chebi : a database and ontology for chemical entities of biological interest. Nucleic Acids Research, 36(suppl 1) :D344–D350, 2008. [DET14] Simon M. Dittami, Damien Eveillard, and Thierry Tonon. A metabolic approach to study algal–bacterial interactions in changing environments. Molecular Ecology, 23(7) :1656–1660, 2014. [dFSKF09] Luis F. de Figueiredo, Stefan Schuster, Christoph Kaleta, and David A. Fell. Can sugars be produced from fatty acids ? a test case for pathway analysis tools. Bioinformatics, 25(1) :152–158, 2009. [DGB+08] A Dereeper, V Guignon, G Blanc, S Audic, S Buffet, F Chevenet, J-F Dufayard, S Guindon, V Lefort, M Lescot, J-M Claverie, and O Gascuel. Phylogeny.fr : robust phylogenetic analysis for the non-specialist. Nucleic Acids Research, 36(Web Server issue) :W465–9, 2008.108 Bibliographie [DGG+12] Simon M. Dittami, Antoine Gravot, Sophie Goulitquer, Sylvie Rousvoal, Akira F. Peters, Alain Bouchereau, Catherine Boyen, and Thierry Tonon. Towards deciphering dynamic changes and evolutionary mechanisms involved in the adaptation to low salinities in ectocarpus (brown algae). The Plant Journal, 71(3) :366–377, June 2012. [DGR+11] Simon M. Dittami, Antoine Gravot, David Renault, Sophie Goulitquer, Anja Eggert, Alain Bouchereau, Catherine Boyen, and Thierry Tonon. Integrative analysis of metabolite and transcript abundance during the short-term response to saline and oxidative stress in the brown alga Ectocarpus siliculosus. Plant, cell & environment, 34(4) :629–642, April 2011. [DL05] Eric Davidson and Michael Levin. Gene regulatory networks. Proceedings of the National Academy of Sciences of the United States of America, 102(14) :4935, 2005. [dODN13] Cristiana Gomes de Oliveira Dal’Molin and Lars Keld Nielsen. Plant genome-scale metabolic reconstruction and modelling. Current Opinion in Biotechnology, 24(2) :271 – 277, 2013. Food biotechnology • Plant biotechnology. [dODQP+09] C. G. de Oliveira Dal’Molin, L.-E. Quek, R. W. Palfreyman, S. M. Brumbley, and L. K. Nielsen. AraGEM, a genome-scale reconstruction of the primary metabolic network in arabidopsis. PLANT PHYSIOLOGY, 152(2) :579– 589, December 2009. [DPR+11] Simon M. Dittami, Caroline Proux, Sylvie Rousvoal, Akira F Peters, J Mark Cock, Jean-Yves Coppee, Catherine Boyen, and Thierry Tonon. Microarray estimation of genomic inter-strain variability in the genus Ectocarpus (Phaeophyceae). BMC Molecular Biology, 12(1) :2, January 2011. [dQP+10a] Cristiana Gomes de Oliveira Dal’Molin, Lake-Ee Quek, Robin William Palfreyman, Stevens Michael Brumbley, and Lars Keld Nielsen. AraGEM, a genome-scale reconstruction of the primary metabolic network in Arabidopsis. Plant physiology, 152(2) :579–89, February 2010. [dQP+10b] Cristiana Gomes de Oliveira Dal’Molin, Lake-Ee Quek, Robin William Palfreyman, Stevens Michael Brumbley, and Lars Keld Nielsen. AraGEM, a genome-scale reconstruction of the primary metabolic network in Arabidopsis. Plant physiology, 152(2) :579–89, February 2010. [DSP+09] Simon M Dittami, Delphine Scornet, Jean-Louis Petit, Béatrice Ségurens, Corinne Da Silva, Erwan Corre, Michael Dondrup, Karl-Heinz Glatting, Rainer König, Lieven Sterck, Pierre Rouzé, Yves Van de Peer, J Mark Cock, Catherine Boyen, and Thierry Tonon. Global expression analysis of the brown alga ectocarpus siliculosus (phaeophyceae) reveals large-scale reprogramming of the transcriptome in response to abiotic stress. Genome Biology, 10(6) :R66, 2009. [EIP01] J. S. Edwards, R. U. Ibarra, and B. O. Palsson. In silico predictions of escherichia coli metabolic capabilities are consistent with experimental data. Nat. Biotechnol., 19(2) :125–130, February 2001.Bibliographie 109 [ELPH13] Ali Ebrahim, Joshua Lerman, Bernhard Palsson, and Daniel Hyduke. COBRApy : COnstraints-Based reconstruction and analysis for python. BMC Systems Biology, 7(1) :74, 2013. [ENFB+14] Maria Enquist-Newman, Ann Marie E. Faust, Daniel D. Bravo, Christine Nicole S. Santos, Ryan M. Raisner, Arthur Hanel, Preethi Sarvabhowman, Chi Le, Drew D. Regitsky, Susan R. Cooper, Lars Peereboom, Alana Clark, Yessica Martinez, Joshua Goldsmith, Min Y. Cho, Paul D. Donohoue, Lily Luo, Brigit Lamberson, Pramila Tamrakar, Edward J. Kim, Jeffrey L. Villari, Avinash Gill, Shital A. Tripathi, Padma Karamchedu, Carlos J. Paredes, Vineet Rajgarhia, Hans Kristian Kotlar, Richard B. Bailey, Dennis J. Miller, Nicholas L. Ohler, Candace Swimmer, and Yasuo Yoshikuni. Efficient ethanol production from brown macroalgae sugars by a synthetic yeast platform. Nature, 505(7482) :239–243, January 2014. [EP00] J. S. Edwards and B. O. Palsson. The escherichia coli mg1655 in silico metabolic genotype : Its definition, characteristics, and capabilities. Proceedings of the National Academy of Sciences, 97(10) :5528–5533, 2000. [FBC+14] Robert D. Finn, Alex Bateman, Jody Clements, Penelope Coggill, Ruth Y. Eberhardt, Sean R. Eddy, Andreas Heger, Kirstie Hetherington, Liisa Holm, Jaina Mistry, Erik L. L. Sonnhammer, John Tate, and Marco Punta. Pfam : the protein families database. Nucleic Acids Research, 42(D1) :D222–D230, 2014. [Fin98] Gerald R Fink. Anatomy of a revolution. Genetics, 149(2) :473–477, 1998. [FMC+14] Michele Fabris, Michiel Matthijs, Sophie Carbonelle, Tessa Moses, Jacob Pollier, Renaat Dasseville, Gino J. E. Baart, Wim Vyverman, and Alain Goossens. Tracking the sterol biosynthesis pathway of the diatom phaeodactylum tricornutum. New Phytologist, pages n/a–n/a, 2014. [FMP03] Stephen S. Fong, Jennifer Y. Marciniak, and Bernhard Ø. Palsson. Description and interpretation of adaptive evolution of escherichia coli k-12 mg1655 by using a genome-scale in silico metabolic model. Journal of Bacteriology, 185(21) :6400–6408, 2003. [FMR+12] Michele Fabris, Michiel Matthijs, Stephane Rombauts, Wim Vyverman, Alain Goossens, and Gino J.E. Baart. The metabolic blueprint of phaeodactylum tricornutum reveals a eukaryotic entner-doudoroff glycolytic pathway. The Plant Journal, 70(6) :1004–1014, June 2012. [FS86] David A Fell and J Rankin Small. Fat synthesis in adipose tissue. an examination of stoichiometric constraints. Biochem. J, 238 :781–786, 1986. [GdODQPN11] Cristiana Gomes de Oliveira Dal’Molin, Lake-Ee Quek, Robin Palfreyman, and Lars Nielsen. Algagem - a genome-scale metabolic reconstruction of algae based on the chlamydomonas reinhardtii genome. BMC Genomics, 12(Suppl 4) :S5, 2011. [GDR+10] Antoine Gravot, Simon M. Dittami, Sylvie Rousvoal, Raphael Lugan, Anja Eggert, Jonas Collén, Catherine Boyen, Alain Bouchereau, and Thierry Tonon. Diurnal oscillations of metabolite abundances and gene analysis provide new insights into central metabolic processes of the brown alga Ectocarpus siliculosus. New Phytologist, 188(1) :98–110, October 2010.110 Bibliographie [GGC08] Bernhard Gschloessl, Yann Guermeur, and J Mark Cock. Hectar : A method to predict subcellular targeting in heterokonts. BMC Bioinformatics, 9(1) :393, 2008. [GGJ+10] Matthieu Graindorge, Cécile Giustini, Anne Claire Jacomin, Alexandra Kraut, Gilles Curien, and Michel Matringe. Identification of a plant gene encoding glutamate/aspartate-prephenate aminotransferase : The last homeless enzyme of aromatic amino acids biosynthesis. {FEBS} Letters, 584(20) :4357 – 4360, 2010. [GKD+07] M H Graham, B P Kinlan, L D Druehl, L E Garske, and S Banks. Deep-water kelp refugia as potential hotspots of tropical marine diversity and productivity. Proceedings of the National Academy of Sciences of the United States of America, 104(42) :16576–16580, 2007. [GKK+11] M. Gebser, R. Kaminski, B. Kaufmann, M. Ostrowski, T. Schaub, and M. Schneider. Potassco : The Potsdam answer set solving collection. 24(2) :107–124, 2011. [GKKS12] Martin Gebser, Roland Kaminski, Benjamin Kaufmann, and Torsten Schaub. Answer set solving in practice. Synthesis Lectures on Artificial Intelligence and Machine Learning, 6(3) :1–238, 2012. [GKS12] M. Gebser, B. Kaufmann, and T. Schaub. Conflict-driven answer set solving : From theory to practice. Artificial Intelligence, 187-188 :52–89, 2012. [GSM+14] Agnès Groisillier, Zhanru Shao, Gurvan Michel, Sophie Goulitquer, Patricia Bonin, Stefan Krahulec, Bernd Nidetzky, Delin Duan, Catherine Boyen, and Thierry Tonon. Mannitol metabolism in brown algae involves a new phosphatase family. Journal of Experimental Botany, 65(2) :559–570, 2014. [GT10] Steinn Gudmundsson and Ines Thiele. Computationally efficient flux variability analysis. BMC Bioinformatics, 11(1) :489, 2010. [HCP+10] Svenja Heesch, Ga Youn Cho, Akira F Peters, Gildas Le Corguillé, Cyril Falentin, Gilles Boutet, Solène Coëdel, Claire Jubin, Gaelle Samson, Erwan Corre, Susana M Coelho, and J Mark Cock. A sequence-tagged genetic map for the brown alga Ectocarpus siliculosus provides large-scale assembly of the genome sequence. The New phytologist, 188(1) :42–51, April 2010. [HDB+10] Christopher S Henry, Matthew DeJongh, Aaron A Best, Paul M Frybarger, Ben Linsay, and Rick L Stevens. High-throughput generation, optimization and analysis of genome-scale metabolic models. Nature Biotechnology, 28(9) :977–982, August 2010. [HE07] Thomas Handorf and Oliver Ebenhöh. Metapath online : a web server implementation of the network expansion algorithm. Nucleic Acids Research, 35(suppl 2) :W613–W618, 2007. [HJFP06] Qiang Hua, Andrew R. Joyce, Stephen S. Fong, and Bernhard Ø. Palsson. Metabolic analysis of adaptive evolution for in silico-designed lactateproducing strains. Biotechnology and Bioengineering, 95(5) :992–1002, 2006.Bibliographie 111 [HR14] Joshua J. Hamilton and Jennifer L. Reed. Software platforms to facilitate reconstructing genome-scale metabolic networks. Environmental Microbiology, 16(1) :49–59, 2014. [IEP02] Rafael U. Ibarra, Jeremy S. Edwards, and Bernhard O. Palsson. Escherichia coli k-12 undergoes adaptive evolution to achieve in silico predicted optimal growth. Nature, 420(6912) :186–189, November 2002. [JBBG08] Fabien Jourdan, Rainer Breitling, Michael P. Barrett, and David Gilbert. Metanetter : inference and visualization of high-resolution metabolomic networks. Bioinformatics, 24(1) :143–145, 2008. [JLI00] J. D. Jordan, E. M. Landau, and R. Iyengar. Signaling networks : the origins of cellular multitasking. Cell, 103(2) :193–200, Oct 2000. [JM61] F. Jacob and J. Monod. Genetic regulatory mechanisms in the synthesis of proteins. J. Mol. Biol., 3 :318–356, Jun 1961. [JTA+00] H. Jeong, B. Tombor, R. Albert, Z. N. Oltvai, and A. L. Barabasi. The largescale organization of metabolic networks. Nature, 407(6804) :651–654, Oct 2000. [KCVGC+05] Ingrid M. Keseler, Julio Collado-Vides, Socorro Gama-Castro, John Ingraham, Suzanne Paley, Ian T. Paulsen, Martín Peralta-Gil, and Peter D. Karp. Ecocyc : a comprehensive database resource for escherichia coli. Nucleic Acids Research, 33(suppl 1) :D334–D337, 2005. [Kee04] Patrick J. Keeling. Diversity and evolutionary history of plastids and their hosts. American Journal of Botany, 91(10) :1481–1493, 2004. [KGS+14] Minoru Kanehisa, Susumu Goto, Yoko Sato, Masayuki Kawashima, Miho Furumichi, and Mao Tanabe. Data, information, knowledge and principle : back to metabolism in kegg. Nucleic Acids Research, 42(D1) :D199–D205, 2014. [Kit01] Hiroaki Kitano, editor. Foundations of systems biology. MIT Press, Cambridge (Mass.), London, 2001. [KPK+10] Peter D Karp, Suzanne M Paley, Markus Krummenacker, Mario Latendresse, Joseph M Dale, Thomas J Lee, Pallavi Kaipa, Fred Gilham, Aaron Spaulding, Liviu Popescu, Tomer Altman, Ian Paulsen, Ingrid M Keseler, and Ron Caspi. Pathway Tools version 13.0 : integrated software for pathway/genome informatics and systems biology. Briefings in Bioinformatics, 11(1) :40–79, January 2010. [KPR02] Peter D Karp, Suzanne Paley, and Pedro Romero. The Pathway Tools software. Bioinformatics, 18 Suppl 1 :S225–32, January 2002. [KYW+11] Elias W. Krumholz, Hong Yang, Pamela Weisenhorn, Christopher S. Henry, and Igor G. L. Libourel. Genome-wide metabolic network reconstruction of the picoalga ostreococcus. Journal of Experimental Botany, 2011. [KYW+12] Elias W Krumholz, Hong Yang, Pamela Weisenhorn, Christopher S Henry, and Igor G L Libourel. Genome-wide metabolic network reconstruction of the picoalga Ostreococcus. Journal of Experimental Botany, 63(6) :2353– 62, March 2012.112 Bibliographie [LAF+98] Paul Liberator, Jennifer Anderson, Marc Feiglin, Mohinder Sardana, Patrick Griffin, Dennis Schmatz, and Robert W. Myers. Molecular cloning and functional expression of mannitol-1-phosphatase from the apicomplexan parasite eimeria tenella. Journal of Biological Chemistry, 273(7) :4237–4244, 1998. [LBBLP+11] A. Le Bail, B. Billoud, S. Le Panse, S. Chenivesse, and B. Charrier. ETOILE regulates developmental patterning in the filamentous brown alga ectocarpus siliculosus. The Plant Cell, 23(4) :1666–1678, April 2011. [LBG+12] Abdelhalim Larhlimi, Georg Basler, Sergio Grimbs, Joachim Selbig, and Zoran Nikoloski. Stoichiometric capacitance reveals the theoretical capabilities of metabolic networks. Bioinformatics, 28(18) :i502–i508, 2012. [LDNS12] Nicolas Loira, Thierry Dulermo, Jean-Marc Nicaud, and David Sherman. A genome-scale metabolic model of the lipid-accumulating yeast yarrowia lipolytica. BMC Systems Biology, 6(1) :35, 2012. [LKTK12] M. Latendresse, M. Krummenacker, M. Trupp, and P. D. Karp. Construction and completion of flux balance models from pathway databases. Bioinformatics, 28(3) :388–396, Feb 2012. [LLB+01] E. S. Lander, L. M. Linton, B. Birren, C. Nusbaum, M. C. Zody, J. Baldwin, K. Devon, K. Dewar, M. Doyle, W. FitzHugh, R. Funke, D. Gage, K. Harris, A. Heaford, J. Howland, L. Kann, J. Lehoczky, R. LeVine, P. McEwan, K. McKernan, J. Meldrim, J. P. Mesirov, C. Miranda, W. Morris, J. Naylor, C. Raymond, M. Rosetti, R. Santos, A. Sheridan, C. Sougnez, N. StangeThomann, N. Stojanovic, A. Subramanian, D. Wyman, J. Rogers, J. Sulston, R. Ainscough, S. Beck, D. Bentley, J. Burton, C. Clee, N. Carter, A. Coulson, R. Deadman, P. Deloukas, A. Dunham, I. Dunham, R. Durbin, L. French, D. Grafham, S. Gregory, T. Hubbard, S. Humphray, A. Hunt, M. Jones, C. Lloyd, A. McMurray, L. Matthews, S. Mercer, S. Milne, J. C. Mullikin, A. Mungall, R. Plumb, M. Ross, R. Shownkeen, S. Sims, R. H. Waterston, R. K. Wilson, L. W. Hillier, J. D. McPherson, M. A. Marra, E. R. Mardis, L. A. Fulton, A. T. Chinwalla, K. H. Pepin, W. R. Gish, S. L. Chissoe, M. C. Wendl, K. D. Delehaunty, T. L. Miner, A. Delehaunty, J. B. Kramer, L. L. Cook, R. S. Fulton, D. L. Johnson, P. J. Minx, S. W. Clifton, T. Hawkins, E. Branscomb, P. Predki, P. Richardson, S. Wenning, T. Slezak, N. Doggett, J. F. Cheng, A. Olsen, S. Lucas, C. Elkin, E. Uberbacher, M. Frazier, R. A. Gibbs, D. M. Muzny, S. E. Scherer, J. B. Bouck, E. J. Sodergren, K. C. Worley, C. M. Rives, J. H. Gorrell, M. L. Metzker, S. L. Naylor, R. S. Kucherlapati, D. L. Nelson, G. M. Weinstock, Y. Sakaki, A. Fujiyama, M. Hattori, T. Yada, A. Toyoda, T. Itoh, C. Kawagoe, H. Watanabe, Y. Totoki, T. Taylor, J. Weissenbach, R. Heilig, W. Saurin, F. Artiguenave, P. Brottier, T. Bruls, E. Pelletier, C. Robert, P. Wincker, D. R. Smith, L. Doucette-Stamm, M. Rubenfield, K. Weinstock, H. M. Lee, J. Dubois, A. Rosenthal, M. Platzer, G. Nyakatura, S. Taudien, A. Rump, H. Yang, J. Yu, J. Wang, G. Huang, J. Gu, L. Hood, L. Rowen, A. Madan, S. Qin, R. W. Davis, N. A. Federspiel, A. P. Abola, M. J. Proctor, R. M. Myers, J. Schmutz, M. Dickson, J. Grimwood, D. R. Cox, M. V. Olson, R. Kaul, C. Raymond, N. Shimizu, K. Kawasaki, S. Minoshima, G. A. Evans, M. Athanasiou, R. Schultz, B. A.Bibliographie 113 Roe, F. Chen, H. Pan, J. Ramser, H. Lehrach, R. Reinhardt, W. R. McCombie, M. de la Bastide, N. Dedhia, H. Blocker, K. Hornischer, G. Nordsiek, R. Agarwala, L. Aravind, J. A. Bailey, A. Bateman, S. Batzoglou, E. Birney, P. Bork, D. G. Brown, C. B. Burge, L. Cerutti, H. C. Chen, D. Church, M. Clamp, R. R. Copley, T. Doerks, S. R. Eddy, E. E. Eichler, T. S. Furey, J. Galagan, J. G. Gilbert, C. Harmon, Y. Hayashizaki, D. Haussler, H. Hermjakob, K. Hokamp, W. Jang, L. S. Johnson, T. A. Jones, S. Kasif, A. Kaspryzk, S. Kennedy, W. J. Kent, P. Kitts, E. V. Koonin, I. Korf, D. Kulp, D. Lancet, T. M. Lowe, A. McLysaght, T. Mikkelsen, J. V. Moran, N. Mulder, V. J. Pollara, C. P. Ponting, G. Schuler, J. Schultz, G. Slater, A. F. Smit, E. Stupka, J. Szustakowski, D. Thierry-Mieg, J. ThierryMieg, L. Wagner, J. Wallis, R. Wheeler, A. Williams, Y. I. Wolf, K. H. Wolfe, S. P. Yang, R. F. Yeh, F. Collins, M. S. Guyer, J. Peterson, A. Felsenfeld, K. A. Wetterstrand, A. Patrinos, M. J. Morgan, P. de Jong, J. J. Catanese, K. Osoegawa, H. Shizuya, S. Choi, Y. J. Chen, and J. Szustakowki. Initial sequencing and analysis of the human genome. Nature, 409(6822) :860–921, Feb 2001. [LLK05] Sang Yup Lee, Dong-Yup Lee, and Tae Yong Kim. Systems biotechnology for strain improvement. Trends in Biotechnology, 23(7) :349 – 358, 2005. [LSR03] Li Li, Christian J. Stoeckert, and David S. Roos. Orthomcl : Identification of ortholog groups for eukaryotic genomes. Genome Research, 13(9) :2178– 2189, 2003. [MB13] Arne C. Müller and Alexander Bockmayr. Fast thermodynamically constrained flux variability analysis. Bioinformatics, 29(7) :903–909, 2013. [MCDL+13] Laurence Meslet-Cladière, Ludovic Delage, Cédric J-J Leroux, Sophie Goulitquer, Catherine Leblanc, Emeline Creis, Erwan Ar Gall, Valérie StigerPouvreau, Mirjam Czjzek, and Philippe Potin. Structure/Function analysis of a type iii polyketide synthase in the brown alga Ectocarpus siliculosus reveals a biochemical pathway in phlorotannin monomer biosynthesis. The Plant cell, 25(8) :3089–103, August 2013. [MCR+11] Daniel Machado, Rafael Costa, Miguel Rocha, Eugenio Ferreira, Bruce Tidor, and Isabel Rocha. Modeling formalisms in systems biology. AMB Express, 1(1) :45, 2011. [MER+11] Caroline Milne, James Eddy, Ravali Raju, Soroush Ardekani, Pan-Jun Kim, Ryan Senger, Yong-Su Jin, Hans Blaschek, and Nathan Price. Metabolic network reconstruction and genome-scale model of butanol-producing strain clostridium beijerinckii ncimb 8052. BMC Systems Biology, 5(1) :130, 2011. [MGH+09] Ani Manichaikul, Lila Ghamsari, Erik F Y Hom, Chenwei Lin, Ryan R Murray, Roger L Chang, S Balaji, Tong Hao, Yun Shen, Arvind K Chavali, Ines Thiele, Xinping Yang, Changyu Fan, Elizabeth Mello, David E Hill, Marc Vidal, Kourosh Salehi-Ashtiani, and Jason A Papin. Metabolic network analysis integrated with transcript verification for sequenced genomes. Nat Meth, 6(8) :589–592, August 2009. [MNP14] Jonathan Monk, Juan Nogales, and Bernhard O Palsson. Optimizing genome-scale network reconstructions. Nature biotechnology, 32(5) :447– 452, 2014.114 Bibliographie [MOMM+12] Shira Mintz-Oron, Sagit Meir, Sergey Malitsky, Eytan Ruppin, Asaph Aharoni, and Tomer Shlomi. Reconstruction of arabidopsis metabolic network models accounting for subcellular compartmentalization and tissuespecificity. Proceedings of the National Academy of Sciences, 109(1) :339– 344, 2012. [MTS+10a] Gurvan Michel, Thierry Tonon, Delphine Scornet, J Mark Cock, and Bernard Kloareg. Central and storage carbon metabolism of the brown alga Ectocarpus siliculosus : insights into the origin and evolution of storage carbohydrates in Eukaryotes. New Phytologist, 188(1) :67–81, October 2010. [MTS+10b] Gurvan Michel, Thierry Tonon, Delphine Scornet, J Mark Cock, and Bernard Kloareg. The cell wall polysaccharide metabolism of the brown alga Ectocarpus siliculosus. Insights into the evolution of extracellular matrix polysaccharides in Eukaryotes. The New phytologist, 188(1) :82–97, October 2010. [MWK+08] Patrick May, Stefanie Wienkoop, Stefan Kempa, Björn Usadel, Nils Christian, Jens Rupprecht, Julia Weiss, Luis Recuenco-Munoz, Oliver Ebenhöh, Wolfram Weckwerth, and Dirk Walther. Metabolomics- and proteomicsassisted genome annotation and analysis of the draft metabolic network of chlamydomonas reinhardtii. Genetics, 179(1) :157–166, 2008. [MYD11] Hiroshi Maeda, Heejin Yoo, and Natalia Dudareva. Prephenate aminotransferase directs plant phenylalanine biosynthesis via arogenate. Nature chemical biology, 7(1) :19–21, 2011. [MZR03] Lukas A. Mueller, Peifen Zhang, and Seung Y. Rhee. Aracyc : A biochemical pathway database for arabidopsis. Plant Physiology, 132(2) :453–460, 2003. [NGMS08] Zoran Nikoloski, Sergio Grimbs, Patrick May, and Joachim Selbig. Metabolic networks are np-hard to reconstruct. Journal of Theoretical Biology, 254(4) :807 – 816, 2008. [NL13] David J Sherman Nicolas Loira, Anna Zhukova. Pantograph : A scaffoldbased method for genome-scale metabolic model reconstruction. To appear, unknown, 2013. [Pal02] B. Palsson. In silico biology through "omics". Nat. Biotechnol., 20(7) :649– 650, Jul 2002. [PBM03] Priti Pharkya, Anthony P. Burgard, and Costas D. Maranas. Exploring the overproduction of amino acids using the bilevel optimization framework optknock. Biotechnology and Bioengineering, 84(7) :887–899, 2003. [PBM04] Priti Pharkya, Anthony P. Burgard, and Costas D. Maranas. Optstrain : A computational framework for redesign of microbial production systems. Genome Research, 14(11) :2367–2376, 2004. [PCD+14] Sylvain Prigent, Guillaume Collet, Simon M. Dittami, Ludovic Delage, Floriane Ethis de Corny, Olivier Dameron, Damien Eveillard, Sven Thiele, Jeanne Cambefort, Catherine Boyen, Anne Siegel, and Thierry Tonon. The genome-scale metabolic network of ectocarpus siliculosus (ectogem) : a resource to study brown algal physiology and beyond. The Plant Journal, pages n/a–n/a, 2014.Bibliographie 115 [PMSF09] Mark G Poolman, Laurent Miguet, Lee J Sweetlove, and David A Fell. A genome-scale metabolic model of Arabidopsis and some of its properties. Plant physiology, 151(3) :1570–81, November 2009. [PRP+03] Nathan D. Price, Jennifer L. Reed, Jason A. Papin, Sharon J. Wiback, and Bernhard O. Palsson. Network-based analysis of metabolic regulation in the human red blood cell. Journal of Theoretical Biology, 225(2) :185 – 194, 2003. [PRP04] Nathan D Price, Jennifer L Reed, and Bernhard Ø Palsson. Genome-scale models of microbial cells : evaluating the consequences of constraints. Nature Reviews Microbiology, 2(11) :886–897, 2004. [PVC+10] Akira F. Peters, Serinde J. Van Wijk, Ga Youn Cho, Delphine Scornet, Takeaki Hanyuda, Hiroshi Kawai, Declan C. Schroeder, J. Mark Cock, and Sung Min Boo. Reinstatement of Ectocarpus crouaniorum Thuret in Le Jolis as a third common species of Ectocarpus (Ectocarpales, Phaeophyceae) in Western Europe, and its phenology at Roscoff, Brittany. Phycological Research, 58(3) :157–170, May 2010. [PVPF04] M.G. Poolman, K.V. Venkatesh, M.K. Pidcock, and D.A. Fell. A method for the determination of flux in elementary modes, and its application to lactobacillus rhamnosus. Biotechnology and Bioengineering, 88(5) :601–612, 2004. [PW09] P. E. Purnick and R. Weiss. The second wave of synthetic biology : from modules to systems. Nat. Rev. Mol. Cell Biol., 10(6) :410–422, Jun 2009. [QYQ+07] Weiqiang Qian, Chunmei Yu, Huanju Qin, Xin Liu, Aimin Zhang, Ida Elisabeth Johansen, and Daowen Wang. Molecular and functional analysis of phosphomannomutase (pmm) from higher plants and genetic evidence for the involvement of pmm in ascorbic acid biosynthesis in arabidopsis and nicotiana benthamiana. The Plant Journal, 49(3) :399–413, 2007. [RC09] Karthik Raman and Nagasuma Chandra. Flux balance analysis of biological systems : applications and challenges. Briefings in Bioinformatics, 10(4) :435–449, 2009. [RDG+14] Andres Ritter, Simon Dittami, Sophie Goulitquer, Juan Correa, Catherine Boyen, Philippe Potin, and Thierry Tonon. Transcriptomic and metabolomic analysis of copper stress acclimation in ectocarpus siliculosus highlights signaling and tolerance mechanisms in brown algae. BMC Plant Biology, 14(1) :116, 2014. [RGD+11] S. Rousvoal, A. Groisillier, S. M. Dittami, G. Michel, C. Boyen, and T. Tonon. Mannitol-1-phosphate dehydrogenase activity in Ectocarpus siliculosus, a key role for mannitol synthesis in brown algae. Planta, 233(2) :261–273, Feb 2011. [RK01] P. R. Romero and P. Karp. Nutrient-related analysis of pathway/genome databases. Pac Symp Biocomput, pages 471–482, 2001. [RPC+06] Jennifer L. Reed, Trina R. Patel, Keri H. Chen, Andrew R. Joyce, Margaret K. Applebee, Christopher D. Herring, Olivia T. Bui, Eric M. Knight, Stephen S.116 Bibliographie Fong, and Bernhard O. Palsson. Systems approach to refining genome annotation. Proc Natl Acad Sci U S A, 103(46) :17480–17484, November 2006. PMID : 17088549 PMCID : PMC1859954. [RPG+09] P. Rippert, J. Puyaubert, D. Grisollet, L. Derrier, and M. Matringe. Tyrosine and phenylalanine are synthesized within the plastids in Arabidopsis. Plant Physiol., 149(3) :1251–1260, Mar 2009. [RSS01] Maido Remm, Christian E.V. Storm, and Erik L.L. Sonnhammer. Automatic clustering of orthologs and in-paralogs from pairwise species comparisons. Journal of Molecular Biology, 314(5) :1041 – 1052, 2001. [RUR+10] Andrés Ritter, Martin Ubertini, Sarah Romac, Fanny Gaillard, Ludovic Delage, Aaron Mann, J Mark Cock, Thierry Tonon, Juan A Correa, and Philippe Potin. Copper stress proteomics highlights local adaptation of two strains of the model brown alga Ectocarpus siliculosus. Proteomics, 10(11) :2074–88, June 2010. [RVSP03] Jennifer L Reed, Thuy D Vo, Christophe H Schilling, and Bernhard O Palsson. An expanded genome-scale model of escherichia coli k-12 (iJR904 GSM/GPR). Genome Biol, 4(9) :R54, 2003. PMID : 12952533 PMCID : PMC193654. [SDF99] S. Schuster, T. Dandekar, and D. A. Fell. Detection of elementary flux modes in biochemical networks : a promising tool for pathway analysis and metabolic engineering. Trends Biotechnol., 17(2) :53–60, Feb 1999. [SHH12] Samuel M. D. Seaver, Christopher S. Henry, and Andrew D. Hanson. Frontiers in metabolic reconstruction and modeling of plant genomes. Journal of Experimental Botany, 63(6) :2247–2258, 2012. [SKDM07] Vinay Satish Kumar, Madhukar S Dasika, and Costas D Maranas. Optimization based automated curation of metabolic reconstructions. BMC Bioinformatics, 8 :212, 2007. [SM06] Günter Schwarz and Ralf R. Mendel. Molybdenum cofactor biosynthesis and molybdenum enzymes. Annual Review of Plant Biology, 57(1) :623– 647, 2006. PMID : 16669776. [SSM11a] Rajib Saha, Patrick F. Suthers, and Costas D. Maranas. zea mays irs1563 : A comprehensive genome-scale metabolic reconstruction of maize metabolism. PLoS ONE, 6(7) :e21784, 07 2011. [SSM+11b] N. Swainston, K. Smallbone, P. Mendes, D. Kell, and N. Paton. The SuBliMinaL Toolbox : automating steps in the reconstruction of metabolic networks. J Integr Bioinform, 8(2) :186, 2011. [ST09] Torsten Schaub and Sven Thiele. Metabolic network expansion with answer set programming. In Logic Programming 25th International Conference, pages 312–326. Springer Berlin Heidelberg, 2009. [TEP+11] Thierry Tonon, Damien Eveillard, Sylvain Prigent, Jérémie Bourdon, Philippe Potin, Catherine Boyen, and Anne Siegel. Toward systems biology in brown algae to explore acclimation and adaptation to the shore environment. Omics : a journal of integrative biology, 15(12) :883–892, December 2011. PMID : 22136637.Bibliographie 117 [TG10] Vered Tzin and Gad Galili. New insights into the shikimate and aromatic amino acids biosynthesis pathways in plants. Molecular Plant, 3(6) :956– 972, 2010. [THS+11] Ines Thiele, Daniel Hyduke, Benjamin Steeb, Guy Fankam, Douglas Allen, Susanna Bazzani, Pep Charusanti, Feng-Chi Chen, Ronan Fleming, Chao Hsiung, Sigrid De Keersmaecker, Yu-Chieh Liao, Kathleen Marchal, Monica Mo, Emre Ozdemir, Anu Raghunathan, Jennifer Reed, Sook-Il Shin, Sara Sigurbjornsdottir, Jonas Steinmann, Suresh Sudarsan, Neil Swainston, Inge Thijs, Karsten Zengler, Bernhard Palsson, Joshua Adkins, and Dirk Bumann. A community effort towards a knowledge-base and mathematical model of the human pathogen salmonella typhimurium lt2. BMC Systems Biology, 5(1) :8, 2011. [TJGF11] Manuel Tejada-Jiménez, Aurora Galván, and Emilio Fernández. Algae and humans share a molybdate transporter. Proceedings of the National Academy of Sciences, 108(16) :6420–6425, 2011. [TP10] Ines Thiele and Bernhard ØPalsson. A protocol for generating a high-quality genome-scale metabolic reconstruction. Nature Protocols, 5(1) :93–121, January 2010. [TVC+11] Raimund Tenhaken, Elena Voglas, J. Mark Cock, Volker Neu, and Christian G. Huber. Characterization of gdp-mannose dehydrogenase from the brown alga ectocarpus siliculosus providing the precursor for the alginate polymer. Journal of Biological Chemistry, 286(19) :16707–16715, 2011. [VBC+13] David Vallenet, Eugeni Belda, Alexandra Calteau, Stéphane Cruveiller, Stefan Engelen, Aurélie Lajus, François Le Fèvre, Cyrille Longin, Damien Mornico, David Roche, Zoé Rouy, Gregory Salvignol, Claude Scarpelli, Adam Alexander Thil Smith, Marion Weiman, and Claudine Médigue. Microscope—an integrated microbial resource for the curation and comparative analysis of genomic and metabolic data. Nucleic Acids Research, 41(D1) :D636–D647, 2013. [vIPK+10] Martijn van Iersel, Alexander Pico, Thomas Kelder, Jianjiong Gao, Isaac Ho, Kristina Hanspers, Bruce Conklin, and Chris Evelo. The bridgedb framework : standardized access to gene, protein and metabolite identifier mapping services. BMC Bioinformatics, 11(1) :5, 2010. [WGH+12] Thilo Winzer, Valeria Gazda, Zhesi He, Filip Kaminski, Marcelo Kern, Tony R Larson, Yi Li, Fergus Meade, Roxana Teodor, Fabián E Vaistij, et al. A papaver somniferum 10-gene cluster for synthesis of the anticancer alkaloid noscapine. Science, 336(6089) :1704–1708, 2012. [WK96] J West and G Kraft. Ectocarpus siliculosus (Dillwyn) Lyngb. from Hopkins River Falls, Victoria - the first record of a freshwater brown alga in Australia. Muelleria, 9 :29–33, 1996. [WLW+12] Adam J Wargacki, Effendi Leonard, Maung Nyan Win, Drew D Regitsky, Christine Nicole S Santos, Peter B Kim, Susan R Cooper, Ryan M Raisner, Asael Herman, Alicia B Sivitz, Arun Lakshmanaswamy, Yuki Kashiyama, David Baker, and Yasuo Yoshikuni. An engineered microbial platform for direct118 Bibliographie biofuel production from brown macroalgae. Science, 335(6066) :308–13, January 2012. [WQJ13] Na Wei, Josh Quarterman, and Yong-Su Jin. Marine macroalgae : an untapped resource for producing fuels and chemicals. Trends in Biotechnology, 31(2) :70 – 77, 2013. [YHC+04] Hwan Su Yoon, Jeremiah D Hackett, Claudia Ciniglia, Gabriele Pinto, and Debashish Bhattacharya. A molecular timeline for the origin of photosynthetic eukaryotes. Molecular biology and evolution, 21(5) :809–18, May 2004. [YWQ+13] Heejin Yoo, Joshua R Widhalm, Yichun Qian, Hiroshi Maeda, Bruce R Cooper, Amber S Jannasch, Itay Gonda, Efraim Lewinsohn, David Rhodes, and Natalia Dudareva. An alternative pathway contributes to phenylalanine biosynthesis in plants via a cytosolic tyrosine : phenylpyruvate aminotransferase. Nature communications, 4, 2013.Table des figures 1.1 Représentation des principaux processus se produisant dans une cellule. La cellule reçoit des signaux extérieurs qui engendrent des cascades de signalisation à l’intérieur de la cellule. Ces signaux et les cascades induites sont étudiées dans les réseaux de signalisation. Ce signal arrive jusqu’au noyau et engendre une régulation de l’expression des gènes. Cette régulation sera étudiée par les réseaux de régulation géniques. Les gènes sont ensuite transcrits en ARN messagers qui pourront être traduits en protéines. Certaines de ces protéines (appelées enzymes) pourront catalyser des réactions métaboliques qui transformeront les molécules présentes à l’intérieur de la cellule ou importées de l’extérieur. Ces réactions sont étudiées dans les réseaux métaboliques. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 9 1.2 Représentation graphique d’un réseau métabolique composé de deux réactions. La première réaction (R1) est irréversible et produit B à partir de A. La seconde (R2) transforme B + C en D de manière réversible. . . . . . . . . . . . . 11 1.3 Les méthodes classiques à base de contraintes pour l’analyse de réseaux mé- taboliques [PRP04]. La construction de l’espace des solutions est représentée au centre, les méthodes d’analyse de cet espace des solutions sont représentées autour. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16 1.4 Couverture phylogénétique des reconstructions de réseaux métaboliques en février 2013[MNP14]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17 1.5 Vue d’ensemble de la procédure de reconstruction de réseaux métaboliques [TP10]. Les étapes 2 à 4 seront itérées jusqu’à ce que les prédictions réalisées par le réseaux métaboliques soient en accord avec les observations biologiques. 18 1.6 Limitations actuelles au développement rapide de la reconstruction de ré- seaux métaboliques. Les éventuels points à améliorer sont indiqués en gris, les méthodes à base de contraintes étant au centre des améliorations [MNP14]. 20 1.7 Support apporté par les différents outils de reconstruction de réseaux mé- taboliques, de la création de l’ébauche jusqu’à l’évaluation de la qualité du réseau [HR14]. Les quatre étapes principales et certains des 96 points relevés par [TP10] sont étudiés. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25 1.8 Photo de sporophyte d’Ectocarpus siliculosus en culture. . . . . . . . . . . . . 38 1.9 Représentation simplifiée de l’arbre phylogénétique des eucaryotes [CPC11]. Les cinq groupes majeures ayant développé une multicellularité complexe sont représenté en couleur. La longueur des barres de couleur indique le temps relatif approché de développement de la multicellularité dans chaque lignée. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 38 119120 Table des figures 2.1 Représentation schématique d’un réseau métabolique[AMC+12]. Les nœuds représentent les métabolites et les hyper-arcs représentent les réactions. Les nœuds gris correspondent aux sources et le nœud noir la cible. . . . . . . . . . . 43 2.2 Représentation de la répartition statistique du nombre de métabolites non productibles en fonction de la taille de la base de données utilisée. Les boites correspondent à la taille du premier et du troisième quartile, la ligne centrale correspond à la moyenne et les barres correspondent aux valeurs extrêmes. . . 45 2.3 Temps de calcul de Clasp et Unclasp pour la recherche de la taille minimale de complétion. Les cercles transparents correspondent à la médiane des expérimentations avec Clasp. Les carrés grisés correspondent à la médiane des expérimentations avec Unclasp. Pour chaque expérience, les valeurs minimale et maximale sont reportées avec des lignes verticales. . . . . . . . . . . . . . . . 50 2.4 Temps de calcul de Clasp pour énumérer l’ensemble des solutions Les cercles transparents correspondent aux médianes des durées des expérimentations. Les points noirs correspondent aux médianes du nombre de solutions. Les lignes verticales correspondent aux valeurs maximales et minimales. . . . . . . 52 2.5 Temps de calcul de Clasp pour déterminer les intersections des solutions optimales. Les cercles transparents correspondent aux médianes des résultats de durée des expérimentations. Les points noirs correspondent à la taille mé- diane des intersections. Les lignes verticales correspondent aux valeurs maximales et minimales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 2.6 Exemple de deux réactions impliquant les mêmes molécules et provenant de la même base de données (MetaCyc), l’une étant réversible et l’autre irréversible. 54 2.7 Temps de calcul de Clasp et Unclasp pour la recherche de la taille minimale de complétion. Les cercles correspondent à la médiane des expérimentations avec Clasp. Les carrés correspondent à la médiane des expérimentations avec Unclasp. Les ronds et carrés grisés correspondent à la modélisation avec prise en compte de la réversibilité, les ronds et carrés vides correspondent à la même modélisation sans cette prise en compte. Pour chaque expérience, les valeurs minimale et maximale sont reportées avec des lignes verticales. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 56 2.8 Deux exemples de réseaux métaboliques contenant des cycles. Les métabolites sont représentés par des ovales verts, les réactions sont représentées par des rectangles rouges. La direction des réactions est représentée par la direction des arcs. La stœchiométrie des réactions n’est pas représentée. . . . 58 2.9 Exemples de réseaux métaboliques. Les cercles représentent les métabolites, les rectangles représentent les réactions. Les chiffres sur les arcs représentent la stœchiométrie des réactions. Les métabolites S correspondent aux sources et les métabolites T correspondent aux cibles. . . . . . . . . . . . . . . . . . . . . 60 2.10 Tailles des solutions et de l’union des solutions selon la sémantique de productibilité utilisée. Les croix correspondent aux expériences utilisant la productibilité d’Acuna-Sagot, les carrés celle de Meneco. Les courbes noires correspondent à la taille des optimaux, les courbes grises correspondent à la taille des unions. Il n’existe pas de valeur pour l’union avec Acuna pour une base de données de 10.000 réactions, les calculs étant trop long. . . . . . . . . . . . . . . 62Table des figures 121 2.11 Représentation de la répartition statistique des différentes complétions en fonction de la taille de la base de données utilisée. La partie a) correspond à la complétion utilisant la sémantique proposée par Acuna et Sagot, la partie droite correspond à la complétion utilisée par Meneco. Les boites correspondent à la taille du premier et du troisième quartile, la ligne centrale correspond à la moyenne et les barres correspondent aux valeurs extrêmes. . . . . . . 63 2.12 Distribution des pourcentages de réactions rajoutées aux réseaux dégradés selon les différentes classes de réactions et le pourcentage de dégradation. Les boites représentent l’espace interquartile, les moustaches représentent 1.5 espace interquartile. Les ronds représentent les valeurs extrêmes sûres (vides) ou potentielles (pleins). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65 2.13 Distribution des pourcentages de réactions rajoutées au réseau vide selon les différentes classes de réactions. Les boites représentent l’espace interquartile, les moustaches représentent 1.5 espace interquartile. Les ronds représentent les valeurs extrêmes sûres (vides) ou potentielles (pleins). Les ré- actions essentielles à la production de biomasse (au sens de la FVA) sont représentées en bleu, les réactions bloquées qui ne possédent jamais aucun flux non nul en FVA sont représentées en violet, les réactions alternatives pouvant posséder un flux nul ou non nul lors d’optimisation de la fonction objective sont représentées en jaune. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 66 3.1 Composition des 432 ensembles de 44 réactions candidates à la complétion pour permettre la productibilité des 50 cibles. Chaque ensemble de réactions peut être décomposé en un ensemble de 35 réactions présentes partout auquel nous ajoutons une réaction de chaque groupe représenté, deux réactions du groupe représenté en haut à gauche et une paire de deux réactions. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 75 3.2 Résumé de l’approche intégrative de la reconstruction du réseau métabolique d’Ectocarpus siliculosus. Les boites bleues correspondent aux outils utilisés. Les boites vertes correspondent aux données utilisées et aux différentes versions du réseau existantes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82 4.1 Comparaison entre la reconstruction automatique et l’annotation manuelle de la voie de synthèse des alginates. * indique un gène pour lequel l’identifiant a changé dans la base de données en fonction de la mise à jour de l’annotation structurale du génome (Esi0195_0005 est devenu Esi0195_0002). ** indique une protéine dont la fonction a été caractérisée biochimiquement [TVC+11]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 87 4.2 Comparaison entre la reconstruction automatique et l’annotation manuelle de la voie du cycle du mannitol. ** indique une protéine dont la fonction a été caractérisée biochimiquement. [RGD+11, GSM+14] . . . . . . 89122 Table des figures 4.3 Les voies de synthèse des acides aminés aromatiques chez les plantes. [TG10] Les noms des enzymes sont donnés à côté des flèches, et sont accompagnés des noms abrégés entre parenthèses. Les voies majoritaires de synthèse de la phénylalanine et de la tyrosine chez les plantes sont indiquées par des flèches vertes (voie II pour la tyrosine). La voie de synthèse I de la tyrosine et une voie de synthèse secondaire de la phénylalanine sont repré- sentées par des flèches rouges. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 90 4.4 Voies de biosynthèse des acides aminés aromatiques avant et après curation manuelle.(a) Voies métaboliques prédites dans EctoGEMfunctionnal. Les commentaires associés aux enzymes indiquent comment les gènes ont été identifiés et les réactions prédites : PWT (Pathway Tools), PTG (Pantograph) et HMM. (b) Voies métaboliques obtenues après curation manuelle par analyse comparative avec d’autres espèces. La voie métabolique de l’arogénate est représentée en pointillés. Les changements d’expression signi- ficatifs (FDR < 5%) dûs à des stress cuivriques (après 4h et 8h de traitement), hypersalins, hyposalins et oxydatifs (après 6h de traitement pour les trois derniers types de stress) sont indiqués dans cet ordre par les flèches sous les noms des gènes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91 4.5 Évolution des enzymes impliquées dans la synthèse des acides aminés aromatiques. L’arbre représente les relations phylogénétiques entre les organismes telles que définies dans Tree Of Life (http ://tolweb.org). La longueur des branches ne représente aucune information. La présence des gènes chez les différents organismes est indiquée par un "+". Les flèches indiquent la fusion des déshydratases (A/P-DT) et déshydrogénases (A/P-DH). Phytophtora infestans contient deux déshydratases, l’une étant fusionnée à la déshydrogénase. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 93 4.6 Analyse phylogénétique de la A/P-DT d’Ectocarpus siliculosus . Pour chaque séquence, la première partie du nom correspond au numéro d’accession dans la base de données NCBI et la seconde partie correspond au nom de l’espèce où la séquence a été retrouvée. Les couleurs correspondent aux origines phylogénétiques des espèces. . . . . . . . . . . . . . . . . . . . . . . 94 4.7 Analyse phylogénétique de la A/P-DH d’Ectocarpus siliculosus . Pour chaque séquence, la première partie du nom correspond au numéro d’accession dans la base de données NCBI et la seconde partie correspond au nom de l’espèce où la séquence a été retrouvée. Les couleurs correspondent aux origines phylogénétiques des espèces. . . . . . . . . . . . . . . . . . . . . . . 95 4.8 Voies de biosynthèse du cofacteur molybdenum. a) Voies métaboliques curées et protéines associées aux réactions enzymatiques. * marque les gènes exprimés chez E. siliculosus. ** marque les gènes significativement (FDR < 5%) réprimés en réponse à un stress hyposalin. Les nombres dans les ovales correspondent aux numéros E.C. des réactions. (b) Position phylogé- nétique de deux candidats pour l’activité molybdopterin synthase. La figure montre un arbre de maximum de vraisemblance avec 75 séquences sélectionnées dans différentes lignées. Seules les valeurs possédant un bootstrap supé- rieur à 50 sont indiquées. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 97Annexes 123125126 Liste des molécules utilisées lors de l’étude de l’efficacité de Meneco Annexe A Liste des molécules utilisées lors de l’étude de l’efficacité de Meneco TABLE A.1: Liste des molécules utilisées pour la complétion du réseau métaboliqueLes identifiants en majuscule correspondent aux identifiants MetaCyc, les minuscules aux noms des molécules (quand les identifiants n’étaient pas suffisamment parlant) Graines Cibles Electron Acceptor 4-amino-butyrate ACP EICOSAPENTAENOATE ADP AMMONIUM AMMONIA ARACHIDIC ACID AMP ARACHIDONIC ACID ATP ARG BIOTIN ASN CA+2 CIT CARBON-DIOXIDE eicosadienoate CPD-12921 erucate CL- myristate CO-A γ-linolenate cobalt chloride stearidonate manganese chloride di-homo-γ-linolenate molybdate eicosatetraenoate cyanocob(III)alamin palmitoleate CU+ Cis-vaccenate CU+2 CYS Donor-H2 DOCOSANOATE GDP GLC EDTA GLN GTP GLT HYDROGEN-PEROXIDE GLUTATHIONE K+ GLY MG+2 GLYCERATE Graines Cibles NA+ GLYCEROL NAD GLYCOLLATE NADH HIS NADP ILE NADPH ALANINE NITRATE ASPARTATE OXYGEN-MOLECULE ORNITHINE Pi LEU PPI LINOLEIC ACID PROTON LINOLENIC ACID SULFATE LYS THIAMINE MANNITOL UDP MET Vitamins-B12 OLEATE COB-I-ALAMIN PALMITATE WATER PHE ZN+2 PRO SER STEARIC ACID SUC THR Iso-citrate TRP TYR VALAnnexe B Code ASP original de Network-Expansion En 2009, Torsten Schaub et Sven Thiele proposent une méthode [ST09] permettant de compléter des réseaux métaboliques d’un point de vue qualitatif en s’affranchissant de la nécessité d’obtention de données cinétiques. Par rapport aux approches précédentes, l’idée est de vérifier la fonctionnalité du réseau d’un point de vue qualitatif (accessibilité des mé- tabolites) sans prendre en compte les contraintes induites par la stoechiométrie du système, qui pourront être vérifiée dans un second temps. En reformulant ce problème de manière combinatoire, Schaub et Thiele proposent d’utiliser des méthodes d’optimisation récentes pour énumérer intégralement l’espace des solutions au problème. Les auteurs sont partis du constat que la grande majorité des réseaux métaboliques reconstruits automatiquement sont incomplets. De plus, les bases de données des réactions métaboliques sont de plus en plus exhaustives et leur utilisation n’en devient que plus pertinente. Enfin, il y a à disposition des données biologiques pour la plupart des organismes biologiques pour lesquels un réseau métabolique est reconstruit ou en cours de reconstruction, et qui sont utilisables pour l’étape de complétion. B.1 ASP La modélisation et la résolution du problème sont basée sur des technologies apparues relativement récemment, dite de programmation par ensemble réponse (ou Answer Set Programming, ASP), qui sont connues pour être particulièrement efficace pour résoudre des problèmes NP-dur. La programmation par ensembles réponses (ou Answer Set Programming, ASP) [Bar03, GKKS12] propose un cadre déclaratif pour modéliser des problèmes combinatoires. Les caractères déclaratifs et la haute performance des solveurs ASP actuels permettent de se concentrer sur les problèmes de modélisation plutôt que de rechercher des façons intelligentes de traiter ces problèmes. L’idée de base d’ASP est d’exprimer un problème sous forme logique de manière à ce que les modèles sortant de cette représentation donnent les solutions au problème initial. Les problèmes sont exprimés en tant que programmes logiques et les modèles résultants sont appelés "ensembles réponses" (ou Answer Sets). Ces ensembles-réponses sont identifiées à l’aide de technologies inspirées par les approches SAT et les bases de données. Il est bien évidemment possible de déterminer, à l’aide 127128 Code ASP original de Network-Expansion d’ASP, si un programme possède un ensemble réponse, mais d’autres modes de raisonnement sont nécessaires pour couvrir l’ensemble des problèmes que l’on peut rencontrer en pratique. Ainsi il sera possible d’identifier aisément l’intersection ou l’union de l’ensemble des ensembles réponses. De la même manière, lister l’intégralité des ensembles réponses pourra être possible. L’idée générale consiste à représenter les modèles étudiés sous forme de faits logiques afin de pouvoir raisonner sur ces faits par des ensembles de règles et de contraintes. les règles seront de la forme : Listing 5: 1 t : − a1, ..., an. avec t : la tête de la règle et a1...n les atomes du corps de la règles. Dans le cas présent t sera vrai si l’ensemble des atomes du corps de la règle sont vrais. Un grounder va instancier l’ensemble des règles présentes dans un programme ASP à partir des faits logiques afin de transformer l’ensemble en un langage compréhensible par un solveur. Durant l’ensemble de la thèse, il a été choisi de travailler avec la suite logicielle Potassco, vainqueur de nombreux concours par la grande efficacité de son solveur. Ce solveur (Clasp) a grandement évolué durant les trois années de la thèse et continu encore aujourd’hui d’évoluer : nouvelles heuristiques, nouveaux solveurs, nouvelle syntaxe avec l’arrivée du grounder gringo4. B.2 Network-Expansion La reconstruction de réseaux métaboliques est, par nature, incomplète. En effet, celle-ci se base classiquement sur des données d’annotations génomiques qui sont intrinsèquement imprécises, même si l’annotation a été effectuée manuellement. De plus, il peut arriver que certaines parties d’un génome n’aient pas été annotées du tout. Ces deux raisons impliquent qu’un réseau métabolique contient forcément des trous qu’il convient de combler pour coller au mieux à la réalité biologique. L’idée générale des auteurs est qu’une ré- action ne peut avoir lieu uniquement que si les réactants de celle-ci sont présents, soit dans un milieu de culture donné, soit comme produit d’une autre réaction. Ainsi, en partant des métabolites présents dans un milieu de culture (les métabolites graines) il devient possible de déterminer le "scope" des graines, c’est à dire l’ensemble des métabolites productibles à partir des graines et des réactions présentes dans un modèle. En modélisant ce concept en ASP, les auteurs ont réussi à développer un outil permettant de compléter des réseaux métaboliques en utilisant des données expérimentales tel que la présence de certains métabolites cibles dans une cellule. Ainsi, en regardant si ces cibles font partie du scope des graines, le réseau métabolique peut être considéré comme suffi- samment complet pour expliquer l’existence de ces cibles. Si ce n’est pas le cas, il conviendra d’ajouter des réactions dans le réseau pour permettre aux cibles de faire partie du scope des graines. Ajouter l’ensemble des réactions provenant d’une base de données de réactions comme MetaCyc permet (généralement) de produire l’ensemble des cibles. Cependant, toute capacité d’étude biologique ultérieure du réseau sera perdue du fait de la trop grande quantité de faux-positifs. Les auteurs proposent donc d’utiliser un principe de parcimonie pour minimiser le nombre total de réactions à ajouter au réseau, et ainsi minimi-Modélisation 129 ser les modifications faites à un réseau que l’on considère initialement de bonne qualité. Ce problème est par nature extrêmement combinatoire et donne de très nombreuses solutions. L’utilisation des techniques d’optimisation particulièrement efficaces de la programmation par ensembles réponses permet de résoudre ce problème. B.3 Modélisation Un réseau métabolique est représenté comme un graphe dirigé bipartite G = (R ∪ M,E) où R et M sont des nœuds représentant respectivement les réactions et les métabolites. Les réactants d’une réaction correspondent à l’ensemble des nœuds reliés par des arêtes entrant dans un nœud R (r eac(r ) = {m ∈ M|(m, r ) ∈ E}) et les produits aux arêtes sortantes (pr od(r ) = {m ∈ M|(r,m) ∈ E}). Étant donné un réseau métabolique (R ∪M,E) et un sous ensemble M′ ⊆ M de métabolites graines, une réaction r ∈ R sera "atteignable" depuis M′ si l’ensemble de ses réactants est dans le scope de M′ , c’est à dire si r eac(r ) ⊆ M′ . De plus un métabolite m ∈ M est atteignable depuis M′ si m ∈ M′ ou si m ∈ pr od(r ) pour au moins une réaction r ∈ R atteignable depuis M′ . Ainsi, le scope de M′ , noté Σ(M′ ), pourra être calculé en temps polynomial. Une fois le scope d’un ensemble de métabolites défini, il devient possible de regarder de plus près la complétion de réseaux métaboliques. Pour cela, il faut également définir un sous-ensemble de métabolites T ∈ M correspondant aux métabolites cibles (ou targets). On a également un second réseau métabolique de référence (R ′∪M′ ,E ′ ) qui correspond à la base de données de réactions métaboliques. On va donc chercher un ensemble de réactions R ′′ ⊆ R ′ \R telle que T ⊆ ΣG (S) avec : G = ((R ∪R ′′)∪(M ∪ M′′),E ∪E ′′) M′′ = {m ∈ M′ |r ∈ R ′′ ,m ∈ r eac(r )∪ pr od(r )} E ′′ = {(m, r ) ∈ E ′ |r ∈ R ′′ ,m ∈ r eac(r )}∪{(r,m) ∈ E ′ |r ∈ R ′′ ,m ∈ pr od(r )} R ′′ sera appelé "complétion" de (R ∪ M,E) à partir de (R ′ ∪ M′ ,E ′ ) par rapport à S et T . L’ensemble de cette modélisation a été représenté en programmation logique. Le scope d’un réseau métabolite N peut alors être défini de la manière suivante en ASP : Listing 6: 1 scope(M) :- seed(M). 2 scope(M) :- product(M,R), reaction(R,N), draft(N), scope(M’) : reactant( M’,R). Ainsi, tous les métabolites graine font partie du scope par nature. Ensuite on défini récursivement qu’un produit M d’une réaction R appartenant à un réseau N fait également partie du scope si tous les réactants M′ de cette réaction R font déjà partie du scope. On pourra ainsi décrire un scope pour le draft métabolique (d scope) et un scope potentiel qui contient l’union des réactions du draft et de la base de données (p scope). Pour réaliser la complétion il va falloir choisir des réactions provenant de la base de données mais pas inclues dans le draft métabolique N :130 Code ASP original de Network-Expansion Listing 7: 1 {xreaction(R) : not reaction(R,N) : draft(N)}. Le scope des graines du draft métabolique N étendu par la base de données sera donc : Listing 8: 1 xscope(M) :- seed(M). 2 xscope(M) :- product(M,R), reaction(R,N), draft(N), xscope(M’) : reactant(M’,R). 3 xscope(M) :- product(M,R), reaction(R,N), xscope(M’) : reactant(M’,R). Enfin, il faut que l’ensemble des métabolites cibles puisse être produit, et donc qu’ils fassent partie du scope étendu des graines. Cela se représente par la contrainte d’intégrité suivante : Listing 9: 1 :- target(M), not xscope(M). L’encodage précédent permet d’obtenir l’ensemble des complétions possibles. Cependant, le nombre de celles-ci étant gigantesque, il y a un gros risque que l’on ne passe pas à l’échelle. Afin de réduire le nombre de solutions possibles, différents ajustements ont été réalisés. Tout d’abord nous ne nous intéressons qu’à certaines réactions de la base de données, réactions que nous qualifierons d’"intéressantes" : Listing 10: 1 :- xreaction(R), not ireaction(R). Ces réactions d’intérêt sont toutes les réactions du scope des métabolites graines qui se trouvent en amont des métabolites cibles. Listing 11: 1 ireaction(R) :- interesting(M), product(M,R), reaction(R,N). 2 interesting(M) :- target(M), not dscope(M). 3 interesting(M) :- reactant(M,R), ireaction(R), not dscope(M). Ainsi, une réaction d’intérêt est une réaction produisant un métabolite d’intérêt, c’est à dire : – Un métabolite cible qui ne peut pas être produit par le draft métabolique – Un métabolite nécessaire à une réaction d’intérêt et non productible par le draft mé- tabolique. Ensuite nous nous concentrons sur les réactions qui peuvent être utilisées, c’est à dire celles pour lesquelles tous les réactants sont présents dans l’extension étudiée : Listing 12: 1 :- xreaction(R), not oreaction(R). 2 oreaction(R) :- xscope(M) : reactant(M’, R), reaction(R,N), not draft(N) .Modélisation 131 Une fois l’ensemble des complétions possibles, on va chercher à réduire au maximum les modifications apportées au réseau en minimisant le nombre de réactions ajoutées au ré- seau. En ASP cela se définira de la manière suivante : Listing 13: 1 minimize{xreaction(R) : ireaction(R) : not~reaction(R,N)}.132 Code ASP original de Network-ExpansionAnnexe C Réannotation de gènes TABLE C.1: Liste des gènes réannotés dans la base de données génomique Orcae après reconstruction du réseau métabolique Locus Numéro EC prédit Prédiction fonctionnelle dans Ectocyc Esi0000_0236 EC-2.1.1.163 S-adenosylmethionine :2-demethylmenaquinol methyltransferase Esi0000_0399 EC-1.1.1 3-oxo-acyl-CoA reductase Esi0000_0579 EC-5.3.3 2-hydroxyhepta-2,4-diene-1,7-dioate isomerase Esi0002_0180 EC-4.2.1.46 dTDP-glucose 4,6-dehydratase Esi0006_0009 EC-5.4.2.3 Phosphoacetylglucosamine mutase (PAGM) Esi0008_0209 EC-2.6.1.2 Alanine aminotransferase Esi0009_0077 EC-2.7.1.173 nicotinate riboside kinase Esi0009_0083 EC-2.7.1.173 nicotinate riboside kinase Esi0012_0057 EC-3.6.1 dihydroneopterin-PPP pyrophosphohydrolase Esi0012_0116 EC-3.6.1 dihydroneopterin-PPP pyrophosphohydrolase Esi0016_0068 EC-2.7.1.173 nicotinate riboside kinase Esi0016_0192 EC-2.1.1.163 S-adenosylmethionine :2-demethylmenaquinol methyltransferase Esi0017_0076 EC-2.4.1.67 alpha-D-galactosyl-(1-3)-1D-myo-inositol :raffinose galactosyltransferase EC-2.7.1.173 nicotinate riboside kinase Esi0018_0057 EC-2.7.8.1 ethanolaminephosphotransferase Esi0021_0019 EC-3.6.1 dihydroneopterin-PPP pyrophosphohydrolase 133134 Réannotation de gènes TABLE C.2: Liste des gènes réannotés dans la base de données génomique Orcae après reconstruction du réseau métabolique (suite) Locus Numéro EC prédit Prédiction fonctionnelle dans Ectocyc Esi0031_0020 EC-2.1.2.3 phosphoribosylaminoimidazolecarboxamide formyltransferase EC-3.5.4.10 IMP cyclohydrolase Esi0039_0037 EC-1.6.5.4 Monodehydroascorbate reductase Esi0039_0059 EC-2.7.1.173 nicotinate riboside kinase Esi0040_0041 EC-6.2.1.5 succinate—CoA ligase (ADP-forming) Esi0041_0029 EC-3.6.1 dihydroneopterin-PPP pyrophosphohydrolase Esi0044_0110 EC-1.3.1.21 7-dehydrocholesterol reductase (=Sterol delta-7 reductase) Esi0047_0145 EC-4.1.1.22 Histidine decarboxylase Esi0053_0006 EC-6.1.1.1 Tyrosyl-tRNA synthetase Esi0059_0045 EC-4.1.3.4 Hydroxymethylglutaryl-CoA lyase Esi0062_0044 EC-5.1.3 Isomerases acting on Carbohydrates and Derivatives EC-5.1.3.18 GDP-mannose 3,5-epimerase Esi0072_0101 EC-2.7.1.173 nicotinate riboside kinase Esi0073_0082 EC-1.3.1.70 C-14 sterol reductase (=Delta14-sterol reductase) Esi0081_0055 EC-3.1.3.67 phosphatidylinositol-3,4,5-trisphosphate 3-phosphatase Esi0082_0007 EC-5.5.1 Intramolecular lyases EC-5.5.1.18 Lycopene epsilon-cyclase EC-5.5.1.19 Lycopene β-cyclase Esi0089_0041 EC-2.1.1.163 Demethylmenaquinone methyltransferase Esi0091_0014 EC-6.4.1.4 methylcrotonoyl-CoA carboxylase beta chain Esi0098_0007 EC-2.4.2.7 Adenine phosphoribosyltransferase Esi0109_0084 EC-4.1.3.36 Naphthoate synthase Esi0122_0080 EC-1.2.1 pyruvate dehydrogenase Esi0122_0102 EC-2.1.1.163 Demethylmenaquinone methyltransferase Esi0143_0028 EC-3.3.2.6 Leukotriene-A(4) hydrolase Esi0212_0027 EC-1.6.5.4 Monodehydroascorbate reductase Esi0223_0020 EC-1.3.1.83 geranylgeranyl reductase EC-1.3.1.84 acrylyl-CoA reductase (NADPH)135 TABLE C.3: Liste des gènes réannotés dans la base de données génomique Orcae après reconstruction du réseau métabolique (fin) Locus Numéro EC prédit Prédiction fonctionnelle dans Ectocyc Esi0223_0029 EC-2.4.2.9 Uracil phosphoribosyltransferase Esi0243_0011 EC-6.1.1.11 Seryl-tRNA synthetase Esi0346_0014 EC-1.8.7.1 Sulfite reductase Esi0359_0011 EC-2.7.1.25 Adenylyl-sulfate kinase Esi0361_0011 EC-2.5.1.9 Riboflavin synthase Esi0392_0016 EC-2.6.1.62 Adenosylmethionine–8-amino-7-oxononanoate transaminase Esi0438_0007 EC-2.7.1.35 Pyridoxamine kinase Esi0673_0003 EC-2.7.1.17 Xylulokinase Esi0179_0043 EC- 2.7.7.80/2.8.1.11 molybdopterin-synthase adenylyltransferase / sulfurtransferase Esi0147_0053 EC-4.1.99.18 cyclic pyranopterin monophosphate synthase Esi0031_0067 EC-2.8.1.12 molybdopterin synthase Esi0000_0519 EC- 2.7.7.75/2.10.1.1 molybdopterin adenylyltransferase / hydrolaseRésumé Durant cette thèse nous nous sommes attachés au développement d’une méthode globale de création de réseaux métaboliques chez des espèces biologiques non classiques pour lesquelles nous possédons peu d’informations. Classiquement cette reconstruction s’articule en trois points : la création d’une ébauche métabolique à partir d’un génome, la complétion du réseau et la vérification du résultat obtenu. Nous nous sommes particulièrement intéressé au problème d’optimisation combinatoire difficile que représente l’étape de complétion du réseau, en utilisant un paradigme de programmation par contraintes pour le ré- soudre : la programmation par ensemble réponse (ou ASP). Les modifications apportées à une méthode préexistante nous ont permis d’améliorer à la fois le temps de calcul pour ré- soudre ce problème combinatoire et la qualité de la modélisation. L’ensemble de ce processus de reconstruction de réseau métabolique a été appliqué au modèle des algues brunes, Ectocarpus siliculosus, nous permettant ainsi de reconstruire le premier réseau métabolique chez une macro-algue brune. La reconstruction de ce réseau nous a permis d’amé- liorer notre compréhension du métabolisme de cette espèce et d’améliorer l’annotation de son génome. Abstract In this thesis we focused on the development of a comprehensive approach to reconstruct metabolic networks applied to unconventional biological species for which we have little information. Traditionally, this reconstruction is based on three points : the creation of a metabolic draft from a genome, the completion of this draft and the verification of the results. We have been particularly interested in the hard combinatorial optimization problem represented by the gap-filling step. We used Answer Set Programming (or ASP) to solve this combinatorial problem. Changes to an existing method allowed us to improve both the computational time and the quality of modeling. This entire process of metabolic network reconstruction was applied to the model of brown algae, Ectocarpus siliculosus, allowing us to reconstruct the first metabolic network of a brown macro-algae. The reconstruction of this network allowed us to improve our understanding of the metabolism of this species and to improve annotation of its genome. Nouvelles approches en filtrage particulaire. Application au recalage de la navigation inertielle A. Murangira To cite this version: A. Murangira. Nouvelles approches en filtrage particulaire. Application au recalage de la navigation inertielle. Other. Universit´e de Technologie de Troyes - UTT, 2014. French. HAL Id: tel-01018717 https://tel.archives-ouvertes.fr/tel-01018717 Submitted on 4 Jul 2014 HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers. L’archive ouverte pluridisciplinaire HAL, est destin´ee au d´epˆot et `a la diffusion de documents scientifiques de niveau recherche, publi´es ou non, ´emanant des ´etablissements d’enseignement et de recherche fran¸cais ou ´etrangers, des laboratoires publics ou priv´es.École Doctorale Science des systèmes technologiques et organisationnels Thèse présentée pour obtenir le grade de docteur de l’Université de Technologie de Troyes Spécialité : Optimisation et Sûreté des Systèmes Achille Murangira Nouvelles approches en filtrage particulaire. Application au recalage de la navigation inertielle soutenue le 25 mars 2014 devant le jury composé de François Le Gland Rapporteur (INRIA Rennes) Christophe Macabiau Rapporteur (ENAC) Igor Nikiforov Directeur de thèse (UTT) Jean-Michel Allard Examinateur (Onera) Karim Dahia Examinateur (Onera) Christian Musso Examinateur (Onera) Hichem Snoussi Examinateur (UTT) Jean-Yves Tourneret Examinateur (ENSEEIHT) Gilles Clerc-Renaud Invité (DGA)3 Remerciements Tout d’abord, je tiens à remercier Igor Nikiforov d’avoir dirigé cette thèse. Merci à François Le Gland et Christophe Macabiau d’avoir accepter d’en être les rapporteurs, et à Jean-Yves Tourneret qui a assuré la présidence du jury. Je suis également reconnaissant envers Hichem Snoussi pour sa participation au jury. Merci à la DGA et à l’Onera pour avoir co-financé la thèse et à Gilles Clerc-Renaud pour avoir manifesté beaucoup d’intérêt pour mes recherches. Grand merci également à Jean-Michel Allard, Karim Dahia de m’avoir accompagné dans la réalisation de ces travaux. Leur expertise et leur disponibilité ont été essentielles au bon déroulement de ce doctorat. Je remercie également Christian Musso pour ses idées, son ouverture scientifique et sa sympathie qui n’ont jamais fait défaut tout au long de ces trois années de recherches. Merci aux collègues du DCPS et du DTIM avec qui j’ai travaillé et échangé dans une atmosphère conviviale et détendue. Enfin merci à mon père, ma mère et mes frères pour leur soutien et leurs encouragements répétés.45 Résumé Les travaux présentés dans ce mémoire de thèse concernent le développement et la mise en oeuvre d’un algorithme de filtrage particulaire pour le recalage de la navigation inertielle par mesures altimétriques. Le filtre développé, le MRPF (Mixture Regularized Particle Filter), s’appuie à la fois sur la modélisation de la densité a posteriori sous forme de mélange fini, sur le filtre particulaire régularisé ainsi que sur l’algorithme mean-shift clustering. Nous proposons également une extension du MRPF au filtre particulaire Rao-Blackwellisé appelée MRBPF (Mixture Rao-Blackwellized Particle Filter). L’objectif est de proposer un filtre adapté à la gestion des multimodalités dues aux ambiguïtés de terrain. L’utilisation des modèles de mélange fini permet d’introduire un algorithme d’échantillonnage d’importance afin de générer les particules dans les zones d’intérêt. Un second axe de recherche concerne la mise au point d’outils de contrôle d’intégrité de la solution particulaire. En nous appuyant sur la théorie de la détection de changement, nous proposons un algorithme de détection séquentielle de la divergence du filtre. Les performances du MRPF, MRBPF, et du test d’intégrité sont évaluées sur plusieurs scénarios de recalage altimétrique. Mots clés : filtrage particulaire, recalage altimétrique, modèles de mélange, mean-shift clustering, échantillonnage d’importance, maximum a posteriori, test d’intégrité, détection de changement, algorithme CUSUM. Abstract This thesis deals with the development of a mixture particle filtering algorithm for inertial navigation update via radar-altimeter measurements. This particle filter, the so-called MRPF (Mixture Regularized Particle Filter), combines mixture modelling of the posterior density, the regularized particle filter and the mean-shift clustering algorithm. A version adapted to the Rao-Blackwellized particle filter, the MRBPF (Mixture Rao-Blackwellized Particle Filter), is also presented. The main goal is to design a filter well suited to multimodal densities caused by terrain amibiguity. The use of mixture models enables us to introduce an alternative importance sampling procedure aimed at proposing samples in the high likelihood regions of the state space. A second research axis is concerned with the development of particle filtering integrity monitoring tools. A novel particle filter divergence sequential detector, based on change detection theory, is presented. The performances of the MRPF, MRBPF and the divergence detector are reported on several terrain navigation scenarios. Keywords : particle filtering, terrain navigation, mixture models, mean-shift clustering, importance sampling, maximum a posteriori, integrity monitoring, change detection, CUSUM algorithm.67 Table des matières Notations 11 Introduction générale 15 1 Filtrage statistique : méthodes analytiques et numériques 19 1.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19 1.2 Estimation bayésienne et filtrage en temps discret . . . . . . . . . . . . . . . . 19 1.2.1 Estimation bayésienne . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.2.2 Le filtre optimal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20 1.3 Méthodes de résolution du problème de filtrage . . . . . . . . . . . . . . . . . . 22 1.3.1 Méthodes analytiques . . . . . . . . . . . . . . . . . . . . . . . . . . . 22 1.3.1.1 Le filtre de Kalman (KF) . . . . . . . . . . . . . . . . . . . . 22 1.3.1.2 Le filtre de Kalman étendu (EKF) . . . . . . . . . . . . . . . . 24 1.3.1.3 Le filtre de Kalman sans parfum (UKF) . . . . . . . . . . . . . 25 1.3.2 Méthodes numériques . . . . . . . . . . . . . . . . . . . . . . . . . . . 27 2 Méthodes particulaires pour le filtrage non linéaire 29 2.1 Méthodes de Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 29 2.1.1 Echantillonnage Monte Carlo . . . . . . . . . . . . . . . . . . . . . . . 29 2.1.2 Echantillonnage pondéré . . . . . . . . . . . . . . . . . . . . . . . . . 30 2.1.3 Échantillonnage par acceptation-rejet . . . . . . . . . . . . . . . . . . . 31 2.2 Filtrage particulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32 2.2.1 L’échantillonnage séquentiel pondéré . . . . . . . . . . . . . . . . . . . 32 2.2.2 Dégénérescence des poids . . . . . . . . . . . . . . . . . . . . . . . . . 34 2.2.3 Ré-échantillonnage des particules . . . . . . . . . . . . . . . . . . . . . 35 2.2.4 L’algorithme Sequential Importance Resampling (SIR) . . . . . . . . . . 37 2.2.5 Convergence des filtres particulaires . . . . . . . . . . . . . . . . . . . . 39 2.3 Le filtre particulaire régularisé (RPF) . . . . . . . . . . . . . . . . . . . . . . . 39 2.3.1 Régularisation d’une loi de probabilité discrète . . . . . . . . . . . . . . 40 2.3.2 Algorithme du filtre particulaire régularisé . . . . . . . . . . . . . . . . . 41 2.4 Les filtres particulaires hybrides (RBPF, KPKF) . . . . . . . . . . . . . . . . . . 42 2.4.1 Le filtre particulaire Rao-Blackwellisé (RBPF) . . . . . . . . . . . . . . . 428 TABLE DES MATIÈRES 2.4.2 Un exemple de filtre particulaire à noyau : le Kalman Particle Kernel Filter (KPKF) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45 2.5 Comportement du filtre particulaire en présence de multimodalités . . . . . . . . 47 2.5.1 Cas où le nombre de modes est supérieur ou égal à 3 . . . . . . . . . . . 51 2.5.2 Cas où l’état est continu . . . . . . . . . . . . . . . . . . . . . . . . . . 51 2.6 Modèles de mélange pour le filtrage particulaire . . . . . . . . . . . . . . . . . . 52 2.6.1 Filtrage pour les modèles de mélange . . . . . . . . . . . . . . . . . . . 52 2.6.2 Approximation particulaire pour les modèles de mélange et algorithme MPF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53 3 Systèmes de navigation inertielle et recalage radio-altimétrique 59 3.1 Introduction à la navigation inertielle . . . . . . . . . . . . . . . . . . . . . . . 59 3.1.1 Repères de navigation . . . . . . . . . . . . . . . . . . . . . . . . . . . 59 3.1.2 Capteurs inertiels . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 60 3.2 Les équations de la navigation inertielle . . . . . . . . . . . . . . . . . . . . . . 61 3.2.1 Equation d’attitude . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62 3.2.2 Equation de vitesse du mobile . . . . . . . . . . . . . . . . . . . . . . . 63 3.2.3 Equation de position . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 3.3 Modélisation de l’erreur de navigation . . . . . . . . . . . . . . . . . . . . . . . 64 3.3.1 Variables d’erreurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64 3.3.2 Équation d’évolution de l’erreur d’attitude . . . . . . . . . . . . . . . . 66 3.3.3 Équation d’évolution de l’erreur de vitesse . . . . . . . . . . . . . . . . 66 3.3.4 Équation d’évolution de l’erreur de position . . . . . . . . . . . . . . . . 66 3.3.5 Modélisation angle-psi pour les équation d’erreurs de navigation . . . . . 67 3.3.5.1 Modélisation des erreurs des capteurs inertiels . . . . . . . . . 67 3.4 Radio-altimétrie et architecture de la navigation hybridée . . . . . . . . . . . . . 68 3.4.1 Généralités sur les radio-altimètres . . . . . . . . . . . . . . . . . . . . 68 3.4.2 Principe de la navigation hybridée . . . . . . . . . . . . . . . . . . . . . 69 3.5 Approches algorithmiques pour le recalage altimétrique . . . . . . . . . . . . . . 70 3.5.1 Recalage altimétrique par bloc . . . . . . . . . . . . . . . . . . . . . . . 70 3.5.2 Recalage par banc de filtres de Kalman . . . . . . . . . . . . . . . . . . 71 3.5.3 Du Point-Mass Filter aux filtres particulaires . . . . . . . . . . . . . . . 71 3.5.4 Recalage altimétrique continu . . . . . . . . . . . . . . . . . . . . . . . 72 4 Développement de filtres particulaires adaptés aux multimodalités 75 4.1 Détermination des modes de la loi a posteriori par clustering . . . . . . . . . . . 76 4.1.1 L’algorithme mean-shift clustering . . . . . . . . . . . . . . . . . . . . . 77 4.1.1.1 Estimation de densité par noyau . . . . . . . . . . . . . . . . 77 4.1.1.2 Estimation du gradient de la densité . . . . . . . . . . . . . . 78 4.1.1.3 Détermination de clusters par procédures mean-shift . . . . . 81 4.1.2 Sélection automatique du facteur de lissage du mean-shift clustering . . . 82 4.1.2.1 Sélection d’un facteur de lissage global fondée sur un critère statistique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 829 4.1.2.2 Sélection d’un facteur de lissage global basée sur un indice de validité des clusters . . . . . . . . . . . . . . . . . . . . . . . 83 4.1.2.3 Sélection d’un facteur de lissage local basée sur la stabilité de la partition . . . . . . . . . . . . . . . . . . . . . . . . . . . 84 4.1.2.4 Sélection d’un facteur de lissage global adapté à l’échelle du nuage de particules . . . . . . . . . . . . . . . . . . . . . . . 86 4.1.3 Stratégies de réduction du temps de calcul de l’algorithme de mean-shift clustering . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 86 4.2 Ré-échantillonnage et régularisation locale . . . . . . . . . . . . . . . . . . . . 88 4.3 Gestion dynamique des clusters du filtre . . . . . . . . . . . . . . . . . . . . . . 92 4.4 Résumé de l’algorithme MRPF . . . . . . . . . . . . . . . . . . . . . . . . . . 93 4.5 Échantillonnage d’une loi d’importance basée sur les maxima locaux de la densité a posteriori . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 4.5.1 Motivation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 94 4.5.2 Evaluation du maximum a posteriori pour un modèle d’observation partiellement linéaire avec a priori gaussien . . . . . . . . . . . . . . . . . . 97 4.5.3 Loi de proposition centrée sur le MAP pour l’échantillonnage d’importance 99 4.5.3.1 Cadre statique . . . . . . . . . . . . . . . . . . . . . . . . . . 99 4.5.3.2 Cadre dynamique : illustration . . . . . . . . . . . . . . . . . . 109 4.5.3.3 Application au filtrage particulaire pour les modèles d’observation partiellement linéaires . . . . . . . . . . . . . . . . . . . . 111 4.5.4 Extension au filtre particulaire Rao-Blackwellisé : algorithme MRBPF-MAP 117 4.6 Evaluation des performances du MRPF, du MRPF-MAP et du MRBPF-MAP . . 119 4.6.1 Profils de terrain pour le recalage radio-altimétrique . . . . . . . . . . . 119 4.6.2 Modèle d’état et d’observation . . . . . . . . . . . . . . . . . . . . . . 120 4.6.3 Critères de performances . . . . . . . . . . . . . . . . . . . . . . . . . . 124 4.6.4 Simulations A : évaluation des performances du MRPF . . . . . . . . . . 126 4.6.4.1 Conditions de simulations . . . . . . . . . . . . . . . . . . . . 126 4.6.4.2 Résultats numériques . . . . . . . . . . . . . . . . . . . . . . 128 4.6.5 Simulations B : évaluation des performances du MRPF-MAP . . . . . . 135 4.6.5.1 Conditions de simulations . . . . . . . . . . . . . . . . . . . . 136 4.6.5.2 Résultats numériques . . . . . . . . . . . . . . . . . . . . . . 137 4.6.6 Simulations C : évaluation des performances du MRBPF-MAP . . . . . . 146 4.6.6.1 Résultats numériques . . . . . . . . . . . . . . . . . . . . . . 148 5 Test d’intégrité pour le filtrage particulaire : application au recalage radioaltimétrique 157 5.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 5.2 Outils statistiques pour la détection de changement . . . . . . . . . . . . . . . 157 5.2.1 Test d’hypothèses . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 157 5.2.2 Test séquentiel entre hypothèses simples . . . . . . . . . . . . . . . . . 158 5.2.3 Algorithme CUSUM pour la détection de changement en ligne . . . . . . 159 5.3 Un aperçu sur les tests d’intégrité pour les filtres de Kalman . . . . . . . . . . . 16110 TABLE DES MATIÈRES 5.3.1 Définition et causes de divergences pour le filtre de Kalman et ses variantes161 5.3.2 Tests de détection de divergence en filtrage de Kalman . . . . . . . . . . 162 5.4 Détection de divergence en filtrage particulaire . . . . . . . . . . . . . . . . . . 163 5.5 Formulation d’un test d’hypothèse pour la détection de divergence d’un filtre particulaire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 164 5.5.1 Approximation de la moyenne de l’innovation particulaire sous l’hypothèse de fonctionnement normal du filtre . . . . . . . . . . . . . . . . . . . . 165 5.5.2 Approximation de la variance de l’innovation particulaire sous l’hypothèse de fonctionnement normal du filtre . . . . . . . . . . . . . . . . . . . . 166 5.5.3 Cas d’un vecteur de mesure multidimensionnel . . . . . . . . . . . . . . 169 5.5.4 Définition du test d’hypothèse . . . . . . . . . . . . . . . . . . . . . . . 169 5.6 Mise en oeuvre d’un test séquentiel pour la détection de divergence . . . . . . . 170 5.6.1 Détection en ligne du changement de moyenne du processus d’innovation normalisé . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 170 5.6.2 Choix des paramètres . . . . . . . . . . . . . . . . . . . . . . . . . . . 172 5.6.3 Evaluation des performances du détecteur de divergence dans le cadre du recalage radio-altimétrique . . . . . . . . . . . . . . . . . . . . . . . . . 173 5.7 Ré-initialisation du filtre particulaire après divergence . . . . . . . . . . . . . . . 180 5.7.1 Choix de la loi a priori pour la ré-initialisation du filtre . . . . . . . . . . 180 5.7.2 Simulations . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 183 Conclusion générale 193 A Compléments au chapitre 1 197 A.1 Lemme 1 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 A.2 Lemme 2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 197 B Complément au chapitre 2 199 C Complément au chapitre 4 203 D Compléments au chapitre 5 205 D.1 Détection de divergence dans le cas d’un vecteur de mesure multidimensionnel . 205 D.2 Initialisation à partir d’une série de mesures . . . . . . . . . . . . . . . . . . . . 209 Bibliographie 21811 Notations et acronymes Notations P mesure de probabilité k temps discret xk vecteur d’état yk vecteur d’observation x0:k ensemble {x0, x1, · · · xk} y0:k ensemble {y0, y1, · · · yk} d dimension de l’espace d’état E(.) espérance Ep(.) espérance par rapport à la densité p pk, pk|k densité de xk sachant y0:k pk|k−1 densité de xk sachant y0:k−1 Cov covariance Var variance xˆMAP maximum a posteriori Qk matrice de covariance du bruit de dynamique Rk matrice de covariance du bruit d’observation N nombre de particules/échantillons x ∼ p échantillon issu de p x i particule/échantillon ω i poids de la particule x i Nef f taille effective de l’échantillon Nth seuil de ré-échantillonnage pour le critère Nef f K noyau de régularisation hopt facteur de dilatation optimal Xk ensemble des particules à l’instant k : {x i k , i = 1, · · · , N} 4 = égal par définition à ∝ proportionnel à DKL (f k g) divergence de Kullback-Leibler de g à f U([a, b]) loi uniforme sur [a, b] hF, Gi Z F(x)G(x)dx12 Notations Jm, nK segment des entiers compris entre m et n bxc partie entière de x ∈ R ✶A fonction indicatrice pour un événement A det(A) déterminant de la matrice A diag(u1, . . . , un) matrice de diagonale d’éléments u1, . . . , un ϕ(.|µ, Σ) densité de probabilité de la distribution gaussienne de moyenne µ et de covariance Σ dilog fonction di-logarithme plim limite en probabilité αj,k coefficient de mélange de la composante d’indice j à l’instant k Cj,k ensemble des particules appartenant au cluster d’indice j à l’instant k Ij,k indices des particules appartenant au cluster d’indice j mh,G vecteur mean-shift évalué avec la fenêtre de lissage h et le noyau G Rm rayon de fusion dans l’algorithme mean-shift N j ef f taille effective de l’échantillon du cluster d’indice j αmin seuil de suppression d’un cluster xˆ ∗ j estimation du j-ème mode de la densité conditionnelle Nth,MAP seuil d’utilisation de lois d’importance locales dans le MRPF λ latitude géographique φ longitude géographique z altitude géographique Rn2b matrice de rotation du repère de navigation (n) au repère engin (b) ψ lacet θ tangage ϕ roulis γm force spécifique g pesanteur terrestre ωie vitesse de rotation de la terre dans le repère TGL hMNT fonction d’observation correspondant au MNT H0 hypothèse nulle H1 hypothèse alternative Dk fonction de décision ta temps d’arrêt du test t0 vrai instant de changement T¯ temps moyen entre deux fausses alarmes τ ∗ pire retard moyen de détection ess sup essentiel supremum k innovation du filtre optimal  N k innovation du filtre particulaire rk processus d’innovation normalisé τ délai moyen de détection13 Abbréviations i.i.d. indépendant(e)s et identiquement distribué(e)s p.s. presque sûrement v.a. variable aléatoire Acronymes AMISE Asymptotic Mean Integrated Squared Error ARL Fonction ARL (Average Run Length) BCR Borne de Cramer-Rao classique ou a posteriori CUSUM Algorithme des sommes cumulées pour la détection de changement de moyenne EKF filtre de Kalman étendu KF filtre de Kalman KPKF Kalman Particle Kernel Filter MAP Maximum a posteriori MNT Modèle numérique de terrain MRPF Mixture Regularized Particle Filter MRBPF Mixture Rao-Blackwellized Particle Filter MSE Mean Squared Error MISE Mean Integrated Squared Error RBPF Rao-Blackwellized Particle Filter RPF Regularized Particle Filter SIR Sequential Importance Resampling SIS Sequential Importance Sampling TFA Taux de fausses alarmes TGL Trièdre géographique local TND Taux de non détection UKF filtre de Kalman sans parfum14 Notations15 Introduction générale Contexte de la thèse De manière générale, la navigation est la science et l’ensemble des techniques permettant de connaître la position d’un véhicule en mouvement. Les systèmes de navigation inertielle fournissent une estimation des coordonnées de position, vitesse et attitude par double intégration des mesures d’accélération et de vitesse angulaire délivrées par les accéléromètres et gyromètres de la centrale inertielle. Ces systèmes permettent une navigation autonome contrairement aux systèmes de radio-navigation qui reposent sur la transmission de signaux par un émetteur externe. Les capteurs de la centrale inertielle étant entachés d’erreurs de mesure, la solution de navigation subit une dérive. Il est nécessaire de recaler la navigation à l’aide de mesures auxiliaires indépendantes de la centrale inertielle. Dans cette thèse, nous nous intéressons au recalage d’un aéronef via des mesures de hauteursol fournies par un radio-altimètre, et un modèle numérique de terrain (MNT). L’estimation de la position de l’aéronef se fait alors en comparant le profil de terrain obtenu à partir des mesures altimétriques avec le profil de terrain issu de la carte embarquée. Les algorithmes de recalage fonctionnent soit par batch, c’est-à-dire par corrélation de blocs de mesures consécutives avec le MNT, soit récursivement en mettant à jour l’estimation de la position à chaque mesure reçue. Les systèmes batch comme le TERCOM (Terrain Contour Matching) supposent généralement une bonne connaissance de la vitesse et de l’altitude ce qui restreint leur domaine d’utilisation. Les méthodes récursives telles que le SITAN (Sandia Inertial Terrain Navigation) reposent sur l’utilisation d’un ou plusieurs filtres de Kalman étendus (EKF). Cependant lorsque l’incertitude sur la position initiale est grande ou lorsque le terrain est très accidenté, leur efficacité est limitée. Dans les deux dernières décennies, les filtres particulaires ont connu un intérêt croissant car ils permettent d’estimer récursivement l’état d’un système dynamique, sans imposer de contraintes sur la linéarité du modèle. Ils reposent sur l’approximation de la loi de l’état du système, conditionnellement aux mesures passées et sont particulièrement adaptés lorsque cette loi est multimodale. Les caractéristiques de non-linéarité et de multimodalités sont justement typiques de la problé- matique du recalage par mesures altimétriques : – en début de recalage, du fait de l’ambiguïté de terrain, il existe plusieurs positions compatibles avec les mesures. Cela se traduit par une loi conditionnelle multimodale. – l’équation d’observation du radio-altimètre reliant la position de l’aéronef à la hauteur-sol est non-linéaire.16 Introduction générale Le filtre particulaire est une méthode de Monte Carlo séquentielle dont les fondements datent probablement des années 70 [53, 52], mais la plupart des travaux ont eu lieu à partir des années 90 avec les contributions de Gordon et. al [50], Kong et al. [69], Del Moral [30], Del Moral et. al [33], ou encore Pitt et Shepard [105]. Les algorithmes particulaires standards reposent sur la succession d’étapes de prédiction, de correction et de ré-échantillonnage qui maintiennent un système de particules pondérées approchant la loi a posteriori. Lors de l’étape de prédiction, les particules sont propagées selon l’équation de dynamique, puis leur poids sont ajustés selon leur adéquation avec l’observation courante via l’évaluation de la fonction de vraisemblance. Le ré- échantillonnage consiste à favoriser les particules dont les poids sont significatifs afin de conserver une approximation de la loi a posteriori non-dégénérée. Bergman [6] est à l’origine des premiers travaux sur le filtrage particulaire pour le recalage altimétrique. Dans son étude, il suppose que l’altitude et les composantes de vitesse sont connues et cherche à estimer la position horizontale du véhicule. Les filtres implémentés se montrent robustes aux divergences et sont capables d’atteindre la borne d’erreur minimale (Borne de Cramer-Rao a posteriori), pour une incertitude initiale en position modeste. Des travaux ultérieurs ont permis d’étudier l’apport de nouveaux filtres à la problématique du recalage altimétrique. Le filtre particulaire régularisé de Oudjane et Musso [96], initialement développé pour le pistage de cible, a permis de rendre l’étape de ré-échantillonnage plus robuste. Dans ses travaux sur la navigation par corrélation de terrain, Nordlund [94] utilise Le Rao-Blackwellized Particle Filter. Ce filtre exploite la nature linéaire de l’équation de mesure altimétrique, conditionnellement à la position horizontale, ce qui permet de restreindre l’échantillonnage des particules aux coordonnées de position horizontale, les composantes d’altitude et de vitesse étant estimées grâce à une batterie de filtres de Kalman. Ceci permet en principe de réduire le nombre de particules utilisées pour des performances identiques. On peut également citer le développement du KPKF de Dahia [28] qui permet d’avoir des taux de convergence plus importants lorsque l’incertitude initiale est importante tout en réduisant le nombre de particules utilisées. Néanmoins, il y a deux situations spécifiques pouvant provoquer la divergence du filtre : 1. Lorsque l’approximation particulaire est multimodale, on observe [67, 118] que les étapes de ré-échantillonnage successives peuvent provoquer la perte prématurée d’un ou plusieurs modes. Lorsque le mode perdu correspond à la vraie position de l’aéronef, le filtre diverge automatiquement. Ce risque est d’autant plus important que le terrain est ambigu car, dans ce cas le filtre est multimodal. 2. Lorsque le terrain connait une variation brusque sous forme d’un fort gradient de terrain (par exemple un canyon), les méthodes d’échantillonnage standards intervenant dans l’implémentation du filtre, sont mises en difficulté. Cette situation survient également lorsque la fonction de vraisemblance, qui intervient lors de l’étape de correction, est très localisée : c’est le cas si la variance du bruit de mesure est très petite. Lorsque cette situation survient, le risque est de n’avoir que quelques particules avec un poids significatif, ce qui peut faire diverger le filtre. Une autre problématique soulevée par le filtrage particulaire est la détection automatique et sé- quentielle de la divergence : cela permet de contrôler l’intégrité de la solution de recalage fournie17 par le filtre et, éventuellement, de le ré-initialiser. Dans ces travaux nous considérons que la divergence correspond à une situation où l’erreur d’estimation est incompatible avec le domaine de confiance fourni par le filtre particulaire. Nous proposons dans cette thèse, une approche permettant de conserver le plus longtemps possible, les modes de la loi conditionelle, jusqu’à ce que l’ambigüité soit levée : les filtres particulaires développés à cet effet sont le MRPF (Mixture Regularized Particle Filter) et son extension au filtre Rao-Blackwellisé, noté MRBPF (Mixture Rao-Blackwellized Particle Filter). Ces filtres s’appuient sur le MPF (Mixture Particle Filter) [118] où la densité cible est exprimée sous forme d’un mélange de densités fini. Idéalement, chaque composante du mélange est monomodale et approximée par un sous-ensemble de particules pondérées. Nous utilisons dans le MRPF et le MRBPF l’algorithme de clustering mean-shift permettant de grouper automatiquement les particules associées au même mode. Par ailleurs, nous introduisons une procédure de régularisation locale adaptée aux multimodalités. Le MRPF et le MRBPF sont ensuite combinés avec une méthode d’échantillonnage d’importance basée sur les maxima locaux de la loi conditionnelle, l’objectif étant de propager efficacement les particules dans les zones d’intérêt. Les algorithmes résultants sont le MRPF-MAP et le MRBPFMAP. Enfin, nous introduisons un algorithme de détection séquentielle de divergence que nous testons sur plusieurs scénarios de recalage : la première difficulté est de définir un test d’hypothèse permettant de décider entre la divergence et la non-divergence du filtre. Classiquement, la divergence en filtrage particulaire est souvent confondue avec le phénomène de dégénérescence, qui est évalué empiriquement grâce à des indicateurs comme la taille effective de l’échantillon ou l’entropie des poids. Pourtant en pratique, la divergence du filtre particulaire - au sens d’une "grande" erreur d’estimation - n’implique pas systématiquement la dégénérescence, d’où la nécessité d’introduire un autre critère. Organisation du mémoire Ce document est organisée en 5 chapitres : – Le chapitre 1 est un aperçu général sur la problématique du filtrage linéaire et non-linéaire. Les algorithmes classiques (filtre de Kalman et ses variantes, méthodes de maillages) et leur cadre d’applicabilité y sont présentés. – Le chapitre 2 présente les méthodes standards de filtrage particulaire avec un accent sur leur utilisation dans le cadre du recalage altimétrique. Les difficultés soulevées par le maintien des modes de la densité conditionnelle dans un filtre particulaire y sont détaillées. – Le chapitre 3 présente brièvement les systèmes de navigation inertielles et la problématique du recalage radio-altimétrique. – Le chapitre 4 introduit plusieurs algorithmes de filtrage particulaire (MRPF, MRBPF et leurs variantes), développés afin d’approcher plus efficacement la loi a posteriori en début de recalage lorsque celle-ci est fortement multimodale. Une méthode d’échantillonnage d’importance permettant de propager les particules dans les zones de forte probabilité est18 Introduction générale également proposée. Nous présentons également les simulations expérimentales permettant de quantifier l’apport de chaque algorithme sur plusieurs scénarios de recalage altimétrique. – Le chapitre 5 est consacré aux tests d’intégrité pour le filtrage particulaire. Nous formulons le problème de la détection de divergence sous forme d’un test d’hypothèses portant sur l’innovation du filtre. L’algorithme CUSUM (CUmulative SUM) est utilisé pour contrôler la statistique de test. Les performances du test développé sont étudiées dans le cadre du recalage altimétrique en terme de fausses alarmes, de délai de détection et de non détection. Liste de publications Le travail de recherche a donné lieu à trois publications dans des congrès internationaux : B Murangira, A., Musso, C., Proposal Distribution for Particle Filtering Applied to Terrain Navigation, Proceedings of the 21st European Signal Processing Conference (EUSIPCO), Marrakech, September 9–13, 2013 B Murangira, A., Musso, C., Nikiforov, I., Particle filter divergence monitoring with application to terrain navigation, Proceedings of the 15th International Conference on Information Fusion (FUSION), Singapore, July 9–12, 2012 B Murangira, A., Musso, C., Dahia, K., Allard, J., Robust regularized particle filter for terrain navigation, Proceedings of the 14th International Conference on Information Fusion (FUSION), Chicago, July 5–8, 201119 Chapitre 1 Filtrage statistique : méthodes analytiques et numériques 1.1 Introduction Ce chapitre introduit la notion de filtrage d’un point de vue général. Après avoir exposé le filtre optimal comme solution au problème de filtrage, nous nous décrivons les méthodes permettant de calculer de manière exacte ou approchée le filtre optimal. Nous présentons d’abord les méthodes analytiques (le filtre de Kalman et ses dérivées) avant de passer au méthodes de résolution numériques. 1.2 Estimation bayésienne et filtrage en temps discret Le filtrage consiste à estimer les variable d’états d’un système dynamique que l’on observe partiellement à travers une série de mesures. Les états (xk)k≥0 du système sont soumis à une évolution dans le temps décrite par une équation de dynamique du type : xk = fk(xk−1, wk) (1.1) où le vecteur des états xk prend ses valeurs dans R d , d ≥ 1 étant un entier désignant le nombre d’états. La suite de variables aléatoires (v.a.) (wk)k≥0 à valeurs dans R s , s ≥ 1, modélise les perturbations aléatoires de la dynamique et l’imperfection du modèle. fk est une fonction à valeurs dans R d . Ce système est partiellement observé à travers une série de mesures yk fournies par un instrument. Ce processus d’observation est modélisé par l’équation suivante : yk = h(xk) + vk (1.2) h est une fonction d’observation connue à valeurs dans R m, m ≥ 1 et (vk)k≥0 une suite de v.a. décrivant les erreurs de mesures dont l’intensité est fonction des imperfections des capteurs et du rapport signal à bruit. Étant donné la série d’observations bruitées {y0, y1, y2, · · · yk}, on souhaite estimer l’état du système xk.20 1. Filtrage statistique : méthodes analytiques et numériques 1.2.1 Estimation bayésienne Le problème consistant à déterminer l’état du système grâce aux mesures (yk)k≥0 s’appelle estimation. L’estimation de xk se fait souvent selon un critère de minimisation d’un risque. Par exemple, l’estimateur xˆk minimisant l’erreur quadratique moyenne (ou estimateur MMSE pour minimum mean squared error) E  kxk − xˆkk 2 2  = trace  E (xk − xˆk) (xk − xˆk) T  est l’espérance conditionnelle [73] xˆ MMSE k = E (xk | y0, . . . , yk) 4 = Z xkp(xk | y0, . . . , yk) dxk (1.3) Un deuxième estimateur, utilisé notamment lorsque la loi de densité conditionnelle p(xk | y0, . . . , yk) est multimodale, est le maximum a posteriori [29], que nous notons ici xˆ MAP k et qui est défini par xˆ MAP k = arg max xk p(xk | y0, . . . , yk) (1.4) Dans tous les cas, la formulation de ces estimateurs nécessite de déterminer la loi de probabilité conditionnelle de xk sachant les mesures passées {y0, y1, y2, · · · yk} : c’est la problématique du filtrage. De façon plus générale, l’estimation de la loi de xk sachant y0:p = {y0, y1, y2, · · · yp} s’appelle : – prédiction si p < k – filtrage si p = k – lissage si p > k Pour résoudre le problème du filtrage non-linéaire en temps discret, on se place dans le cadre des modèles à espace d’état : – (wk)k≥0 est une suite de v.a. mutuellement indépendantes et indépendante de x0. xk est donc markovien, sa loi est entièrement définie par sa loi initiale µ0(dx) = P(x0 ∈ dx) et le noyau de transition Qk tel que P(xk ∈ A|xk−1 = x 0 ) = Z A Qk(x 0 , dx) (1.5) – Le bruit vk est une suite de v.a. mutuellement indépendantes et indépendante du processus xk. – L’état initial x0 est indépendant de vk et du bruit de dynamique wk Dans toute la suite, on supposera que la loi conditionnelle de xk sachant y0:k admet une densité par rapport à la mesure de Lebesgue. Par abus de langage, on confondra parfois la loi conditionnelle de xk avec sa densité. 1.2.2 Le filtre optimal On note pk = p(xk | y0:k) la densité conditionnelle de xk sachant les observations passées y0:k = {y0, y1, · · · yk}. La suite de densités de probabilité (pk) k≥0 est appelée filtre optimal. Une21 remarque importante pour la résolution du problème du filtrage est la suivante : le calcul de pk peut se faire de manière récursive. En effet, pk est entièrement déterminé par la donnée de pk−1 et de la mesure yk sous réserve que l’on puisse évaluer la densité de probabilité P (yk | xk) = gk(xk) appelée fonction de vraisemblance. Le calcul récursif de pk peut alors se décomposer en une étape dite de prédiction et une étape de correction. Prédiction L’étape de prédiction calcule la loi prédite définie par pk|k−1(dx) = P(xk ∈ dx | y0:k−1) à partir de pk−1 et de la dynamique du système, caractérisée par le noyau de transition Qk. pk|k−1(dx) = Z Rd pk−1(dx0 )Qk(x 0 , dx) (1.6) En effet, pk|k−1(dx) = p(xk ∈ dx|y0:k−1) = Z p(xk ∈ dx, xk−1|y0:k−1)dxk−1 = Z p(xk ∈ dx|xk−1, y0:k−1)p(xk−1|y0:k−1)dxk−1 et étant donné le caractère markovien de xk, p(xk ∈ dx|xk−1, y0:k−1) = p(xk ∈ dx|xk−1), d’où pk|k−1(dx) = Z p(xk ∈ dx|xk−1)p(xk−1|y0:k−1)dxk−1 = Z Qk(xk−1, dx)pk−1(dxk−1) Correction Cette étape permet d’obtenir le filtre pk en utilisant la mesure yk pour corriger la loi prédite pk|k−1 grâce à la formule de Bayes. pk = gk(xk)pk|k−1 Z Rd gk(x 0 )pk|k−1(dx0 ) (1.7) En effet, pk = p(xk|y0:k) = p(yk|xk)p(xk|y0:k−1)p(y0:k−1) p(yk) = gk(xk)p(xk|y0:k−1) p(yk|y0:k−1) = gk(xk)pk|k−1 Z Rd gk(x 0 )pk|k−1(dx0 )22 1. Filtrage statistique : méthodes analytiques et numériques La réalisation des étapes de prédiction et de correction nécessite le calcul d’intégrales multidimensionnelles dont le calcul analytique n’est possible que sous certaines conditions. Par exemple dans le cas d’un modèle linéaire gaussien, on dispose d’expressions exactes grâce à l’algorithme du filtre de Kalman présenté ci-après. De manière générale, il est nécessaire de recourir à des approximations soit par des méthodes analytiques faisant intervenir une simplification du modèle (linéarisation pour le filtre de Kalman étendu par exemple, cf. section 1.3.1.2), soit par des méthodes numériques fondées sur une discrétisation de l’espace d’état (méthodes de maillage), soit par des méthodes de Monte Carlo (cf. chapitre 2). 1.3 Méthodes de résolution du problème de filtrage 1.3.1 Méthodes analytiques 1.3.1.1 Le filtre de Kalman (KF) Le filtre de Kalman a été développé par Rudolf Emil Kalman en 1960 pour les modèles discrétisés [65]. Une version en temps continu a été élaborée une année après par Kalman et Bucy. C’est le filtre optimal pour les modèles linéaires gaussiens de la forme suivante : ( xk = Fkxk−1 + Bk + wk yk = Hkxk + Dk + vk avec les hypothèses : – Fk ∈ Md,d(R), Bk ∈ Md,1(R), Hk ∈ Mm,d(R) et Dk ∈ Mm,1(R) sont des matrices déterministes et connues – les bruits wk et vk à valeurs dans Rd et Rm sont des bruits blancs gaussiens de matrices de covariance respectives Qk et Rk. wk et vk sont mutuellement indépendants et indépendants de la condition initiale x0. – La condition initiale x0 suit une loi gaussienne de moyenne m0 et de matrice de covariance P0. Sous ces hypothèses, on montre que la loi jointe de (xk, yk) est gaussienne ce qui implique que la loi a posteriori pk l’est également. Le filtre pk est donc entièrement déterminé par la donnée de sa moyenne xˆk et de sa matrice de covariance Pk. Le filtre de Kalman est un algorithme qui permet de calculer analytiquement et récursivement ces 2 moments via des étapes de prédiction (1.6) et de correction (1.7). 1. Prédiction ( xˆk|k−1 = Fkxˆk−1 + Bk Pk|k−1 = FkPk−1F T k + Qk (1.8) 2. Correction    xˆk = ˆxk|k−1 + Kk[yk − (Hkxˆk|k−1 + Dk)] Kk = Pk|k−1HT k [HkPk|k−1HT k + Rk] −1 Pk = [I − KkHk]Pk|k−1 (1.9)23 Le terme Kk désigne la matrice de gain de Kalman. Il permet d’obtenir la moyenne a posteriori xˆk = E(xk|y0:k) et la covariance a posteriori Pk = Cov(xk|y0:k) en faisant intervenir la mesure yk via le terme dit d’innovation k = yk − (Hkxˆk|k−1 + Dk). Les équations de Kalman peuvent être obtenues en appliquant directement les équations (1.6) et (1.7) afin de calculer successivement la moyenne et la covariance prédites  xˆk|k−1, Pk|k−1  , puis la moyenne et la covariance corrigées (ˆxk, Pk). Notons que les matrices (Kk) k≥0 , (Pk) k≥0 et  Pk|k−1  k≥0 ne dépendent pas des mesures (yk) k≥0 et peuvent être calculées hors ligne. Lorsque le bruit de dynamique ou de mesure n’est plus gaussien, le filtre de Kalman est le filtre linéaire à variance minimale. Filtre de Kalman informationnel Le filtre de Kalman informationnel est une implémentation qui propage l’inverse Jk de la matrice de de covariance Pk, appelée matrice d’information. Introduisons Jk|k−1 = P −1 k|k−1 et Jk = P −1 k . Le calcul récursif de Jk|k−1 et Jk s’obtient en utilisant le lemme d’inversion matricielle (cf. annexe A.1) : 1. Jk|k−1 = P −1 k|k−1 = h FkPk−1F T k + Qk i−1 (1.10) = h FkJ −1 k−1F T k + Qk i−1 (1.11) = Q −1 k − Q −1 k Fk[F T k QkFk + Jk−1] −1F T k Q −1 k (1.12) 2. Jk = P −1 k = [Pk|k−1 − Pk|k−1H T k (HkPk|k−1H T k + Rk) −1HkPk|k−1] −1 (1.13) = (P −1 k|k−1 + H T k R −1 k Hk) (1.14) = (Jk|k−1 + H T k R −1 k Hk) (1.15) La moyenne prédite se calcule de la même façon : xˆk|k−1 = Fkxˆk−1 + Bk La moyenne corrigée est obtenue en exprimant le gain de Kalman Kk en fonction de Jk|k−1 : Kk = Pk|k−1H T k [HkPk|k−1H T k + Rk] −1 = [HkR −1 k H T k + P −1 k|k−1 ] −1H T k R −1 k d’après le lemme d’inversion matricielle A.2. D’où Kk = [HkR −1 k H T k + P −1 k|k−1 ] −1H T k R −1 k = J −1 k H T k R −1 k Finalement, xˆk = ˆxk|k−1 + J −1 k H T k R −1 k [yk − (Hkxˆk|k−1 + Dk)]24 1. Filtrage statistique : méthodes analytiques et numériques D’après (1.12) et (1.15), on observe que dans le filtre de Kalman informationnel, on inverse essentiellement des matrices d × d (exception faite de la matrice de covariance de mesure Rk) contrairement au filtre de Kalman standard qui nécessite l’inversion de matrices m×m, où m est la dimension de la mesure et d celle de l’état. Dans le cas où m >> d, la version informationnelle peut se révéler avantageuse. D’autre part, le filtre de Kalman informationnel permet de traiter le cas d’une incertitude initiale P0 infinie, qui correspond à une information initiale nulle i.e. J0 = 0, là où l’écriture P0 = ∞ n’aurait pas de sens numériquement dans le filtre de Kalman standard. 1.3.1.2 Le filtre de Kalman étendu (EKF) On considère un système dynamique dont les fonctions d’évolution et d’observation sont non-linéaires. ( xk = fk(xk−1) + wk yk = hk(xk) + vk (1.16) wk et vk sont des bruits blancs gaussiens mutuellement indépendants et indépendant de x0. On ne suppose plus que la condition initiale x0 est gaussienne. Dans le cas où les fonctions d’observations sont dérivables, on peut linéariser les équations de prédictions et de corrections respectivement autour de l’état corrigé xˆk−1 et autour de l’état prédit xˆk|k−1 : xk ≈ fk(ˆxk−1) + ∇fk (ˆxk−1) (xk−1 − xˆk−1) + wk yk ≈ h(ˆxk|k−1) + ∇hk  xˆk|k−1  xk − xˆk|k−1  + vk où ∇fk et ∇hk représentent les matrices jacobiennes de fk et hk. Soit Fk−1 = ∇fk(ˆxk−1) et Hk = ∇hk(ˆxk|k−1). Le modèle linéarisé est donc : ( xk = Fkxk−1 + fk(ˆxk−1) − ∇fk (ˆxk−1) ˆxk−1 + wk yk = Hkxk + hk(ˆxk|k−1) − ∇hk  xˆk|k−1  xˆk|k−1 + vk (1.17) L’algorithme du filtre de Kalman étendu est alors le suivant : 1. Prédiction    Fk−1 = ∇fk(ˆxk−1) xˆk|k−1 = fk(ˆxk−1) Pk|k−1 = Fk−1Pk−1Fk T + Qk (1.18) 2. Correction    Hk = ∇hk(ˆxk|k−1) Kk = Pk|k−1Hk T  HkPk|k−1Hk T + Rk −1 xˆk = ˆxk|k−1 + Kk h yk − h(ˆxk|k−1) i Pk = (I − KkHk) Pk|k−1 (1.19) Le filtre de Kalman étendu est extrêmement populaire en estimation de systèmes dynamiques. Il est notamment utilisé en pistage de cible [100], en navigation par mesures GPS [64] ou en robotique [74]. Il est avantageux par la simplicité de sa mise en oeuvre et sa faible complexité algorithmique. Cependant, lorsque les fonctions d’évolution et d’observation sont fortement nonlinéaires ou lorsque l’initialisation est mauvaise, l’EKF est susceptible de diverger.25 1.3.1.3 Le filtre de Kalman sans parfum (UKF) Le filtre de Kalman sans parfum - Unscented Kalman Filter (UKF) en anglais - a été introduit par Julier et Uhlmann [63] afin d’éviter l’étape de linéarisation de l’EKF qui peut poser des problèmes numériques lorsque l’on souhaite calculer les jacobiennes du modèles. L’UKF fonctionne en calculant successivement la moyenne et la covariance a posteriori de l’état à l’aide d’un nombre fini d’échantillons, appelés sigma-points caractéristiques de la loi conditionnelle. L’algorithme suppose implicitement que cette loi est monomodale. Le calcul des sigma points se fait grâce à une transformation sans parfum (Unscented Transformation) qui permet de calculer les moments d’une variable aléatoire Y ayant subi une transformation non linéaire sous la forme Y = g(X). Transformation sans parfum (UT) Etant donné une variable aléatoire X de dimension d de moyenne X¯ et matrice de covariance PX. Soit Y = g(X) une v.a. dont on veut calculer la moyenne et la covariance et g une fonction non linéaire. Le principe de la transformation UT est de choisir 2d+ 1 points pondérés, caractéristiques de la distribution de X, de telle sorte que leurs moyenne et covariance valent respectivement X¯ et PX. Les sigma-points {χi} 2d+1 i et leur poids correspondants {ωi} 2d+1 i sont choisis de manière déterministe selon le schéma suivant :    χ0 = X¯ χi = X¯ + (q (d + κ)PX)i , i = 1, ..., d χi = X¯ − ( q (d + κ)PX)i , i = d + 1, ..., 2d ω0 = κ/(d + κ) ωi = ωi = 1/2(d + κ), i = 1, ..., 2d (1.20) q (d + κ)PX  i est la i-ème colonne de la racine carrée de la matrice (d + κ)PX. Pour une distribution gaussienne κ = 3 − d, cette valeur est en général utilisée lorsqu’on ne connait pas la forme de la distribution de X. Le calcul de la moyenne Y¯ et de la covariance PY de Y se fait alors de la manière suivante :    Yi = g(χi), i = 0, ..., 2d Y¯ ≈ X 2d i=0 ωiYi PY ≈ X 2d i=0 ωi(Yi − Y¯ )(Yi − Y¯ ) T Julier et Uhlmann montrent que ces approximations de la moyenne et de la covariance sont correctes au troisième ordre [62]. L’algorithme UKF L’algorithme de filtrage récursif de l’UKF a été obtenu par Julier et Uhlmann en définissant l’état augmenté du système x a k , comme la concaténation de l’état xk et des bruits wk et vk à l’instant k soit : x a k = (xk, wk, vk) T . x a k est donc un vecteur de dimension da = 2d + m, m étant la dimension du vecteur de mesure. L’UKF calcule donc à chaque instant26 1. Filtrage statistique : méthodes analytiques et numériques la moyenne conditionnelle x¯k et la variance a posteriori Pk. On pose P a k = Cov(x a k | y0:k) =   Pk 0 0 0 Q 0 0 0 R   • Initialisation 1. x¯0 = E (x0) 2. P0 = E h (x0 − xˆ0) (x0 − xˆ0) T i 3. P a 0 =   P0 0 0 0 Q 0 0 0 R   Pour k = 1 . . . n • Calcul des sigma-points 1. χ a,i k−1 =  x¯ a k−1 x¯ a k−1 ± q (da + κ) P a,i k−1  i = 1 . . . 2da où q (da + κ) P a,i k−1 représente la i ème colonne de la décomposition de Cholesky de (da + κ) P a,i k−1 . • Prédiction 1. χ x,i k|k−1 = fk  χ x,i k−1 , χ w,i k−1  2. x¯k|k−1 = X 2da i=0 ωiχ x,i k|k−1 3. Pk|k−1 = X 2da i=0 ωi(χ x,i k|k−1 − x¯k|k−1)(χ x,i k|k−1 − x¯k|k−1) T 4. y i k|k−1 = hk  χ x,i k−1 , χ v,i k−1  5. y¯k|k−1 = X 2da i=0 ωiy i k|k−1 • Correction 1. P Y k|k−1 = X 2da i=0 ωi(y i k|k−1 − y¯k|k−1)(y i k|k−1 − y¯k|k−1) T 2. P XY k|k−1 = X 2da i=0 ωi(χ x,i k|k−1 − x¯k|k−1)(y i k|k−1 − y¯k|k−1) T 3. Kk = P XY k|k−1P Y,−1 k|k−1 4. x¯k = ¯xk|k−1 + Kk  Yk − y¯k|k−1  5. Pk = Pk|k−1 + KkP Y k|k−1KT k27 Dans la plupart des applications, il a été observé que l’UKF permet d’estimer l’état du système avec plus de précision que l’EKF [63] avec un gain en robustesse appréciable. De plus, il ne nécessite pas de linéarisation du modèle, ce qui rend son implémentation plus simple que celle de l’EKF. Cependant son application se limite aux applications où la loi conditionnelle p(xk | y0:k) est monomodale. 1.3.2 Méthodes numériques La plupart des systèmes physiques sont décrits par des modèles en temps continu. Par exemple, la dérive d’une centrale inertielle obéit à un système d’équations différentielles stochastiques (cf.3.3). Les systèmes dynamiques en temps continu consistent en un processus d’état caché (xt)t≥0 et un processus d’observation (yt)t≥0 à valeur respectivement dans R d et R m, dont l’évolution est régie par le système d’équations suivant : ( dxt = b(xt)dt + σ(xt)dWt dyt = h(xt)dt + dVt (1.21) où (Wt)t≥0 et (Vt)t≥0 sont des processus de Wiener standards mutuellement indépendants avec (Vt)t≥0 indépendant de (xt)t≥0. b et h sont des fonctions à valeurs dans R d et σ une application de R d 7→ R d × R d . Soit Yt = σ(ys, 0 ≤ s ≤ t) la sigma-algèbre engendrée par les observations. Le problème du filtrage en temps continu consiste à déterminer la densité conditionnelle de xt sachant Yt notée pt , telle que pour toute fonction φ mesurable bornée E(φ(xt)|Yt) = Z Rd φ(x)pt(x)dx (1.22) Sous certaines hypothèses sur les fonctions b et σ, Zakai [125] a montré que le filtre optimal pt est l’unique solution d’une équation différentielle stochastique, l’équation de Zakai. dpt = L T ptdt + pth TR −1 dyt (1.23) où L est l’opérateur infinitésimal associé au processus xt , défini par L = 1 2 Xm i,j=1 ai,j (.) ∂ 2 ∂xi∂xj + Xm i,j=1 bi(.) ∂ ∂xi où a = (ai,j ) = σσT . En pratique, les observations sont disponibles à des instants discrets tk, k = 0, 1, . . . de sorte qu’il est nécessaire de discrétiser l’équation de Zakai en utilisant un schéma d’Euler par exemple [104]. Reste à discrétiser l’espace d’état par maillage de manière à résoudre numériquement (1.23) par différences finies. Le maillage peut se faire à pas constant [71] ou avec un pas variable ce qui permet de mailler finement les zones de grande probabilité [14] et mailler grossièrement les zones de faible probabilité : l’avantage du maillage adaptatif est qu’il permet généralement des gains en temps de calcul et en mémoire. Les méthodes de maillage sont efficaces en dimension d ≤ 3 mais au delà, le temps de calcul est souvent prohibitif.28 1. Filtrage statistique : méthodes analytiques et numériques Conclusion du Chapitre 1 Nous avons introduit et défini le problème du filtrage et son application à l’estimation de l’état d’un système. Le cadre théorique nous a conduit à étudier les méthodes analytiques et numérique en filtrage. Les principales méthodes analytiques sont essentiellement le filtre de Kalman et ses variantes. Lorsque le système à espace d’état est faiblement non-linéaire, le filtre de Kalman étendu (EKF) donne généralement des résultats satisfaisants. Le filtre de Kalman sans parfum (UKF) améliore la précision de l’estimation de l’état par rapport à l’EKF tout en se montrant plus robuste. En revanche lorsque les non-linéarités sont fortes, ces méthodes analytiques sont peu fiables. Une possibilité est de recourir aux méthodes numériques, basées sur une résolution d’une équation aux dérivées partielles, par des schémas de discrétisation. Cependant, au delà de la dimension 3, le temps de calcul augmente exponentiellement avec la dimension de l’espace d’état, ce qui rend leur utilisation limitée. Les méthodes de Monte Carlo sont a priori plus appropriées car moins sensibles à la dimension de l’espace d’état et indifférents aux non-linéarités et au caractère gaussien des bruits de dynamique et de mesure. En outre, elles sont adaptées aux lois conditionnelles multimodales.29 Chapitre 2 Méthodes particulaires pour le filtrage non linéaire Introduction L’objectif de ce chapitre est d’introduire les briques de base du filtrage particulaire et d’exposer quelques algorithmes utilisés notamment pour le recalage de la navigation inertielle. Nous introduisons brièvement les méthodes de Monte Carlo usuelles avant d’illustrer comment leur utilisation dans un cadre séquentiel permet d’aboutir au filtre particulaire. Nous mettons en évidence les limites du filtre particulaire classique en présence de multimodalités. Dans ce contexte, nous présentons une méthodologie générale adaptée à l’estimation des lois a posteriori p(xk|y0:k) multimodales. 2.1 Méthodes de Monte Carlo 2.1.1 Echantillonnage Monte Carlo Soit X une variable aléatoire à valeurs dans R d de densité de probabilité p(x). Soit φ une fonction bornée de R d dans R. On souhaite approcher numériquement l’espérance de φ(X) définie par : E (φ(X)) = Z φ(x)p(x)dx = φ¯ (2.1) Soit Xi , i = 1, 2, . . . , N une suite de variable aléatoires i.i.d de même loi que X. Alors, d’après la loi des grands nombres, la moyenne empirique converge presque surement (p.s.) vers E(φ(X)), i.e. φ¯N 4 = 1 N X N i=1 φ(X i ) −−−−−→ N→+∞ E(φ(X)) (2.2) De plus, la variance de l’estimateur φ¯N (X) vaut : Var  φ¯N  = σ 2 φ N30 2. Méthodes particulaires pour le filtrage non linéaire avec σ 2 φ = Z (φ(x) − φ¯) 2 p(x)dx Par ailleurs, le théorème central limite caractérise l’erreur asymptotique de l’estimateur φ¯N . En effet, la variable aléatoire √ N σφ  φ¯N − φ¯  converge en loi vers une loi normale centrée réduite. 2.1.2 Echantillonnage pondéré L’échantillonnage Monte Carlo pondéré (importance sampling en anglais) consiste à calculer l’espérance définie par l’équation (2.1) en simulant un échantillon issu d’une loi de densité q, dite loi d’importance ou loi instrumentale, et en pondérant cet échantillon de manière adéquate. Cette méthode est utile lorsque l’on souhaite réduire la variance de l’estimateur Monte Carlo classique ou quand échantillonner p est difficile (voir l’exemple ci-après). La densité de probabilité q doit vérifier les hypothèses suivantes pour toute fonction mesurable bornée φ : 1. Le support de x 7→ φ(x)p(x) est inclus dans le support de q 2. Z φ 2 (x) p(x) q(x) dx < ∞ L’estimateur obtenu par échantillonnage pondéré est obtenu en remarquant que : Ep (φ(X)) = Z φ(x)p(x)dx = Z φ(x) p(x) q(x) q(x)dx = Eq φ(X) p(X) q(X) ! (2.3) Soit x i , i = 1, 2, . . . , N un échantillon issu de q. Alors E (φ(X)) ≈ φ¯N IS = 1 N X N i=1 φ(x i ) p(x i ) q(x i ) (2.4) Lorsque la densité p n’est connue qu’à une constante de normalisation c près, i.e. p(x) = cp˜(x) avec c = R p(x)dx, il est possible de définir l’estimateur φ¯N IS pondéré de la manière suivante : φ¯N IS ≈ X N i=1 ω˜ iφ(x i ) X N i=1 ω˜ i (2.5) avec ω˜ i = p˜(x i ) q(xi) . Dans ce cas, la constante de normalisation c est approchée par 1 N PN i=1 ω˜ i .31 Exemple (Inférence Bayésienne) : Afin d’illustrer l’intérêt de l’échantillonnage pondéré, supposons que le paramètre inconnu X ∼ q où q est la densité d’une loi que l’on sait échantillonner. On observe X à travers une mesure y = h(X) + v où v est un bruit de densité gv et h une fonction non-linéaire. On souhaite estimer une quantité E(φ(X)|Y ) = R φ(x)p(x|y)dx où φ est une fonction bornée. Dans la plupart des cas, échantillonner p = p(x|y) n’est pas aisé donc on ne peut recourir à l’estimateur Monte Carlo standard. En revanche, en prenant comme densité d’importance la densité a priori q et en constatant que p(x) q(x) ∝ p(y|x) = gv(y − h(x)) en vertu de la loi de Bayes, on a accès à l’estimateur par échantillonnage pondéré φ¯N IS = PN i=1 φ(x i )gv(y−h(x i )) PN i=1 gv(y−h(xi)) où x i , i = 1, . . . , N est un N-échantillon issu de q. Les estimateurs (2.4) et (2.5) sont asymptotiquement non biaisés et convergent presque surement vers E (φ(X)) (voir, par exemple [48]). De plus, Var  φ¯N IS = 1 N Z φ 2 (x) p 2 (x) q(x) dx − 1 N Z φ(x)p(x) dx2 De même que pour l’estimateur Monte Carlo standard, il existe un théorème central limite qui permet de caractériser la loi limite de l’erreur d’estimation. En effet, lorsque N tend vers l’infini la v.a. √ N  φ¯N IS − φ¯  converge en loi vers une loi normale centrée de variance σ 2 IS = Z  φ(x) − φ¯ 2 p 2 (x) q(x) dx 2.1.3 Échantillonnage par acceptation-rejet Supposons que la densité p s’exprime comme le produit d’une densité q et d’une fonction g que l’on sait évaluer en tout x de R d . p(x) = g(x)q(x) R Rd g(x)q(x)dx La méthode d’acceptation permet [34] d’obtenir un échantillon suivant la loi de densité p lorsqu’on sait simuler la loi de densité q. Pour cela, on suppose seulement que M = supx∈Rd g(x) < ∞. Afin d’obtenir un échantillon x i ∼ p, i = 1, . . . , N, on applique l’algorithme suivant. 1. i = 1 2. Générer ξ ∼ q et u ∼ U([0, 1]) où U([a, b]) désigne la loi uniforme sur l’intervalle [a, b], a et b étant des réels. 3. Si Mu ≤ g(ξ), poser x i = ξ et i = i + 1. 4. Aller en (2) tant que i ≤ N. L’efficacité de la méthode d’acceptation-rejet dépend essentiellement du recouvrement de g et q. En effet, la probabilité d’acceptation vaut pa = R Rd g(x)q(x)dx M et est d’autant plus grande que le recouvrement entre q et g est important. Cette méthode est donc potentiellement couteuse en temps de calcul puisqu’on risque de rejeter beaucoup de variables aléatoires lors de l’étape 3.32 2. Méthodes particulaires pour le filtrage non linéaire 2.2 Filtrage particulaire Soit un système dynamique non-linéaire défini par l’ensemble d’équations suivant : ( xk = fk (xk−1, wk) yk = hk(xk, vk) (2.6) – xk est le vecteur d’état de dimension d – yk est le vecteur d’observations de dimension m – wk et vk sont des bruits blancs mutuellement indépendants non nécessairement gaussiens qui admettent des densités de probabilités. (wk) k≥0 et (vk) k≥0 sont indépendantes de la condition initiale x0. x0 suit une loi de densité µ0. Le filtre particulaire - également appelé bootstrap filter [50], Monte Carlo filter [68] ou encore condensation filter [79] - approche la densité conditionnelle p(xk | y0:k) par un ensemble d’échantillons pondérés appelés particules. Ces particules évoluent selon la dynamique de l’état et sont pondérés en fonction de leur adéquation avec l’observation courante grâce à la fonction de vraisemblance (cf. section 1.2.2). Dans toute la suite on supposera que : – on sait générer des échantillons selon la densité de transition p(xk|xk−1), – il est possible d’évaluer la fonction de vraisemblance gk(xk) = p(yk|xk) en tout point xk de l’espace d’état. 2.2.1 L’échantillonnage séquentiel pondéré L’algorithme d’échantillonnage séquentiel pondéré [52] (Sequential Importance Sampling (SIS) en anglais) est fondé sur une approximation de la densité conditionnelle p0:k = p(x0:k|y0:k) par la méthode d’échantillonnage pondéré abordée dans la section 2.1.2. On notera x0:k = (x0, . . . , xk) T la trajectoire de l’état de l’instant initial à l’instant k. Dans le cas général, échantillonner directement p0:k est difficile et/ou couteux. En effet, la factorisation p0:k(x0:k|y0:k) = p(y0:k|x0:k)p(x0:k) p(y0:k) suggère que si échantillonner selon la densité jointe p(x0:k) est généralement possible, cela né- cessiterait une méthode de type acceptation-rejet pour obtenir un échantillon suivant la loi p0:k. Soit q(x0:k|y0:k) une densité instrumentale pour laquelle la simulation directe est aisée. Soit x i 0:k , i = 1, . . . , N un échantillon issu de q. On définit les poids non normalisés par ω˜ i k = p(x i 0:k |y0:k) q(x i 0:k |y0:k) et les poids normalisés ω i k = ω˜ i k PN i=1 ω˜ i k . Alors, p(x0:k|y0:k) ≈ X N i=1 ω i k δx i 0:k (2.7) où δx désigne la masse de Dirac centrée au point x. Une approximation du filtre à l’instant k est33 alors obtenue par marginalisation de p(x0:k|y0:k) : p(xk|y0:k) ≈ X N i=1 ω i k δx i k (2.8) De manière générale échantillonner q(x0:k|y0:k) a une complexité qui augmente au moins linéairement au cours du temps car la dimension du vecteur x0:k est linéaire en k. Il est donc intéressant d’avoir une méthode d’échantillonnage séquentielle. Pour obtenir une formulation récursive de (2.7), on exprime p(x0:k|y0:k) en fonction de p(x0:k−1|y0:k−1). p(x0:k|y0:k) = p(x0:k−1|y0:k−1)p(xk|x0:k−1, y0:k−1)p(yk|xk) p(yk|y0:k−1) Etant donné que xk est Markovien, p(xk|x0:k−1, y0:k−1) = p(xk|xk−1). D’où p(x0:k|y0:k) = p(x0:k−1|y0:k−1)p(xk|xk−1)p(yk|xk) p(yk|y0:k−1) (2.9) Afin d’obtenir un algorithme séquentiel du filtre, considérons une densité d’importance q sous la forme : q(x0:k|y0:k) = q(x0:k−1|y0:k−1)q(xk|x0:k−1, y0:k) (2.10) On observe que si l’on dispose d’un échantillon pondéré n ω i k−1 , xi 0:k−1 oN i=1 de taille N, il est possible d’obtenir un échantillon {ω i k , xi 0:k} N i=1 en simulant x i k selon q(xk|x i 0:k−1 , y0:k) et en concaté- nant cet échantillon au vecteur x i 0:k−1 . Le calcul des poids ω i k se fait selon ω i k ∝ p(x i k |x i k−1 )p(yk|x i k )p(x i 0:k−1 |y0:k−1) q(x i k |x i 0:k−1 , y0:k)q(x i 0:k−1 |y0:k−1) (2.11) = ω i k−1 p(x i k |x i k−1 )p(yk|x i k ) q(x i k |x i 0:k−1 , y0:k) (2.12) Notons qu’en filtrage, le but est d’estimer la loi a posteriori p(x i k |y0:k). On a donc uniquement besoin de l’ensemble des particules à l’instant précédent n x i k−1 oN i=1 . L’algorithme d’échantillonnage pondéré séquentiel peut alors être simplifié en choisissant une densité d’importance q telle que q(xk|x0:k−1, y0:k) = q(xk|xk−1, yk). Dans ce cas, ω i k ∝ ω i k−1 p(x i k |x i k−1 )p(yk|x i k ) q(x i k |x i k−1 , yk) (2.13) L’algorithme SIS se résume ainsi : Algorithme 1 : SIS pour i = 1, . . . , N faire34 2. Méthodes particulaires pour le filtrage non linéaire – tirer x i ∼ q(x0|y0) – calculer ω i 0 ∝ µ0(x i 0 )p(y0|x i 0 ) q(x i 0 |y0) – normaliser les poids ω i 0 fin pour pour k = 1, . . . , n faire pour i = 1, . . . , N faire – [Prédiction] tirer x i k ∼ q(x i k |x i k−1 , yk) – [Correction] calculer les poids ω i k ∝ ω i k−1 p(x i k |x i k−1 )p(yk|x i k ) q(x i k |x i k−1 ,yk) – normaliser les poids ω i k fin pour fin pour Les estimées de la moyenne et de la covariance de l’état xk sont alors respectivement : E(xk|y0:k) ≈ xˆk = X N i=1 ω i kx i k (2.14) E h (xk − xˆk) (xk − xˆk) T |y0:k i ≈ Pˆ k = X N i=1 ω i k  x i k − xˆk  x i k − xˆk T (2.15) 2.2.2 Dégénérescence des poids L’algorithme d’échantillonnage séquentiel pondéré est la brique de base du filtrage particulaire. Cependant, il souffre d’une limitation importante : après quelques itérations, toutes les particules sauf une ont un poids proche de zéro. L’estimation de la loi a postériori est donc réduite à un dirac, ce qui entraine la divergence du filtre. Ce phénomène est caractérisé par une augmentation dans le temps de la variance des poids normalisés {ω i k} N i=1. Kong et al. ont notamment montré que lorsque la loi d’importance de densité q0:k = q(x0:k|y0:k) est différente de la loi cible de densité p(x0:k|y0:k), la variance des poids ne peut qu’augmenter [69]. Une illustration de la dégénérescence du système de particules est donnée par la figure 2.1. On considère ici l’évolution des particules d’un filtre SIS à 100 particules estimant le modèle linéaire gaussien suivant : ( xk+1 = xk + wk yk = xk + vk (2.16) avec wk ∼ N (0, 0.0022 ), vk ∼ N (0, 0.1 2 ) et x0 ∼ N (0, 1). La position des particules de poids significatifs 1 y est affichée en fonction du temps. On observe que le système perd rapidement en diversité et vers la fin de la trajectoire, très peu de particules contribuent à l’estimation. Pour retarder ce phénomène il est nécessaire de choisir une densité instrumentale q0:k aussi proche de la loi conditionnelle p0:k que possible. Malgré cela, il est indispensable de recourir à une étape dite de ré-échantillonnage afin de conserver un système de particules non dégénéré. 1. càd dont les poids sont supérieurs à 10−635 Figure 2.1 – Illustration du phénomène de dégénérescence des poids. Abscisse : temps discret, ordonnée : position des particules 2.2.3 Ré-échantillonnage des particules Le ré-échantillonnage a pour objectif de dupliquer les particules dont le poids est suffisamment fort et d’éliminer les particules dont le poids est trop faible afin de ne conserver que les particules les plus significatives. Kong et al. [69] préconisent de contrôler l’évolution de la taille effective de l’échantillon (effective sample size en anglais) notée Nef f qui est un indicateur de la dégénerescence du filtre. Ils montrent que Nef f est relié à la variance des poids normalisés à l’instants k, {ω i k} N i=1 via l’égalité : Nef f = N 1 + Varp0:k (ωk(x0:k)) (2.17) Ainsi, plus la variance des poids est élevée, plus la taille effective de l’échantillon est faible. Par ailleurs, Nef f est relié à la divergence du χ 2 entre p0:k et q0:k via l’égalité : N Nef f − 1 = χ 2 (p0:k, q0:k) = Z (p0:k(x0:k) − q0:k(x0:k))2 q0:k(x0:k) dx0:k (2.18) On peut remarquer que 1 ≤ Nef f ≤ N. Autrement dit, Nef f est un indicateur du nombre d’échantillons qui contribuent significativement à l’estimation de la loi p(xk|y0:k). Dans la pratique, lorsque Nef f est inférieur à un seuil prédéfini Nth, on applique le ré-échantillonnage. Pour cela, l’approximation suivante de Nef f est souvent utilisée : Nef f ≈ 1 PN i=1(ω i k ) 2 (2.19)36 2. Méthodes particulaires pour le filtrage non linéaire Il existe un second critère relatif à l’entropie des poids normalisés, introduit par Pham [102] dans le cadre d’assimilation de données, qui s’exprime sous la forme suivante : Sω = log(N) + X N i=1 ω i k log  ω i k  (2.20) Une observation intéressante est que : Sω ≈ log(N) + DKL (p0:k k q0:k) où DKL (p0:k k q0:k) désigne la divergence de Kullback-Leibler de q0:k par rapport à p0:k : c’est une mesure de l’information perdue lorsque q0:k est utilisée pour approcher p0:k [13]. De façon générale, la divergence de Kullback-Leibler d’une loi de densité g par rapport à une loi de densité f est définie par : DKL (f k g) = Z f(x) log f(x) g(x) dx (2.21) Sω est nul lorsque tous les poids sont égaux à 1 N et Sω = log(N) si l’un des poids vaut 1 . Une heuristique est de ré-échantillonner le système de particules lorsque l’entropie Sw dépasse un certain seuil Sth. Ré-échantillonner consiste à remplacer le système de particules {ω i k , xi k} N i=1 par {ω 0i k , x0i k } N i=1 de sorte que la variance des poids après ré-échantillonnage soit réduite et que p 0 N k = PN i=1 ω 0i k δx 0i k soit une "bonne approximation" de pˆk = PN i=1 ω i k δx i k . Les schémas qui correspondent à une bonne approximation supposent que p 0 N k soit un estimateur non-biaisé de p N k . De manière générale, le ré-échantillonnage vérifie les conditions suivantes : 1. ω 0i k = 1 N 2. E hPN i=1 ✶ n x 0i k = x j k o |x0:k, y0:k i = Nωj k Les deux conditions assurent le caractère non-biaisé de l’approximation après ré-échantillonnage [76]. La seconde signifie qu’en moyenne une particule sera dupliquée d’autant plus qu’elle possède un poids fort. La méthode de redistribution la plus courante est le ré-échantillonnage multinomial. Elle consiste à tirer N particules x˜ i k avec probabilités ω i k , i = 1, . . . , N et à leur affecter un nouveau poids égal à ω 0i k = 1 N . A titre d’exemple considérons un échantillon pondéré x 1 , x2 , . . . , x10 de taille 10 dont les poids normalisés respectifs sont ω 1 = 0.02, ω 2 = 0.3, ω 3 = 0.15, ω 4 = 0.07, ω 5 = 0.09, ω 6 = 0.07, ω 7 = 0.1, ω 8 = 0.12, ω 9 = 0.05 et ω 10 = 0.03. Le tirage multinomial peut se faire de la façon suivante : 1. Tirer N va indépendantes ui ∼ U([0, 1]), i = 1, . . . , N 2. Pour i = 1, . . . , N, si u i ∈ hPj−1 i=1 ω i k , Pj i=1 ω i k i , sélectionner la particule d’indice j, i.e. poser x 0i k = x j k . Dans l’exemple précédent, un tirage multinomial nous donne l’ensemble de particules ré-échantillonnées {x 2 , x2 , x3 , x3 , x9 , x2 , x3 , x10, x10, x2} où les particules x 2 et x 3 sont dupliquées tandis que x 1 et37 x 6 sont éliminées. Il est important de noter que le ré-échantillonnage augmente la variance de l’estimation. Il existe tout de même des schémas de redistribution qui induisent une variance plus faible que celle du ré-échantillonnage multinomial : Ré-échantillonnage résiduel D’après [76], cette méthode permet de réduire efficacement la variance du ré-échantillonnage multinomial. L’un des problèmes du ré-échantillonnage multinomial est que le nombre de copies de la particule x i k peut varier fortement pour deux réalisations de l’algorithme de ré-échantillonnage. Pour limiter cet effet, le ré-échantillonnage résiduel attribue d’office Ni = bNωi k c copies de l’échantillon x i k pour i = 1, . . . , N. Il reste à allouer le nombre de particules restant N¯ = N − PN i=1 Ni afin de conserver un nombre constant de particules. Ces N¯ particules sont alors échantillonnées selon un tirage multinomial de probabilités données par les poids résiduels {ω¯ i k} N i=1 définis par : ω¯ i k = Nωi k − Ni N¯ (2.22) Afin d’illustrer notre propos, revenons à l’exemple précédent du ré-échantillonnage de {x i , ωi} 1 i=10. Dans la première passe, chaque particule x i est dupliquée bNωi c fois, ce qui donne l’ensemble {x 2 , x2 , x2 , x3 , x7 , x8}. Il reste maintenant à tirer 4 échantillons selon un tirage multinomial de probabilités ω¯ 1 = 0.05, ω¯ 2 = 0, ω¯ 3 = 0.125, ω¯ 4 = 0.175, ω¯ 5 = 0.225, ω¯ 6 = 0.175, ω¯ 7 = 0, ω¯ 8 = 0.05, ω¯ 9 = 0.125, ω¯ 10 = 0.075. Un tirage donne les particules additionnelles {x 6 , x4 , x5 , x3}. Un réalisation du ré-échantillonnage stratifié fournit donc le système de particules {x 2 , x2 , x2 , x3 , x7 , x8 , x6 , x4 , x5 , x3}. Ré-échantillonnage stratifié L’intervalle [0, 1] est partitionné en N sous-intervalles disjoints sous la forme [0, 1] = ∪ N i=1  i − 1 N , i N  . Ensuite, N variables Ui , i = 1, . . . , N sont tirées selon une loi uniforme U  i−1 N , i N  . A chaque variable Ui est associé l’inverse de la fonction de répartition de la loi discrète PN i=1 ω i k δx i k . Plus précisément, si Ui ∈ hPj−1 i=1 ω i k , Pj i=1 ω i k i , on sélectionne la particule d’indice j, i.e. x 0i k = x j k . La variance induite par le ré-échantillonnage stratifié est également inférieure à celle du ré-échantillonnage multinomial [35]. Ré-échantillonnage systématique Cette méthode est similaire au ré-échantillonnage stratifié excepté que le choix des Ui se fait selon : Ui = i−1 N + U où U ∼ U  0, 1 N  . En revanche, les particules sélectionnées x˜ i k ne sont plus indépendantes conditionnellement aux poids {ω i k} N i=1. 2.2.4 L’algorithme Sequential Importance Resampling (SIR) L’ajout de l’étape de ré-échantillonnage dans l’algorithme SIS permet d’obtenir l’algorithme SIR [107] qui évite le phénomène de dégénérescence des poids et permet d’obtenir un filtre stable. Lorsque le ré-échantillonnage intervient à chaque pas de temps, le SIR correspond au bootstrap filter de Gordon, Salmond et Smith [50].38 2. Méthodes particulaires pour le filtrage non linéaire Algorithme 2 : SIR pour i = 1, . . . , N faire – tirer x i ∼ q(x0|y0) – calculer ω i 0 ∝ µ0(x i 0 )p(y0|x i 0 ) q(x i 0 |y0) – normaliser les poids ω i 0 fin pour pour k = 1, . . . , n faire – [Prédiction] tirer x i k ∼ q(x i k |x i k−1 , yk), i = 1, . . . , N – [Correction] calculer les poids ω i k ∝ ω i k−1 p(x i k |x i k−1 )p(yk|x i k ) q(x i k |x i k−1 ,yk) , i = 1, . . . , N – normaliser les poids ω i k , i = 1, . . . , N – Calculer Nef f d’après (2.19) – [Ré-échantillonnage] Si Nef f < Nth, ré-échantillonner les particules et poser ω i k = 1 N , i = 1, . . . , N fin pour Bien que le ré-échantillonnage permette de garantir la survie du système de particules, il introduit plusieurs effets indésirables. La duplication des particules de poids fort a tendance à appauvrir le système de particules, ce qui peut être problématique lorsque le bruit de dynamique est faible. Dans ce cas, lorsque la loi d’importance utilisée dans l’étape de prédiction est le noyau de transition p(xk|xk−1), les particules ont tendance à se concentrer autour de quelques zones resserrées provoquant une perte de diversité dans le système de particules (phénomène connu sous le nom de sample impoverishment dans la littérature). Cela augmente le risque qu’aucune des particules ne soit cohérente avec l’observation yk courante, ce qui à terme peut provoquer la divergence du filtre. Pour limiter ce phénomène, une méthode peut-être de choisir une loi d’importance différente du noyau de transition ou de recourir aux méthodes de régularisation (cf. section 2.3 ). Choix de la densité d’importance Le choix d’une densité d’importance appropriée permet de concevoir des filtres plus robustes. Dans la classe des algorithmes d’échantillonnage pondéré séquentiel, la densité d’importance qopt = p(xk|xk−1, yk) = p(yk|xk)p(xk|xk−1) p(yk|xk−1) est optimale. On peut montrer que la variance des poids normalisés correspondant ω i k est nulle, conditionnellement à xk−1 [37]. De manière équivalente, ce choix maximise la taille effective de l’échantillon Nef f introduite précédemment via l’équation (2.17) [37]. Malheureusement, échantillonner suivant cette loi n’est aisé que pour certaines classes de modèles. Le choix le plus simple est d’utiliser la densité a priori q = p(xk|xk−1). Échantillonner selon p(xk|xk−1) est immédiat pour les modèles que nous considérons mais cette loi ne prend pas en compte l’observation courante et peut déplacer les particules dans des zones de faible vraisemblance. Afin d’exploiter l’information apportée par la mesure yk, il peut être souhaitable de recourir à des approximations de qopt. Parmi les méthodes d’approximations de la loi d’importance optimale, on peut citer le filtre particulaire auxiliaire [105] ainsi que les filtres basés sur une approximation gaussienne de qopt39 via l’utilisation d’un filtre de Kalman étendu [37] ou un filtre de Kalman sans parfum [117]. Ce dernier filtre est connu sous le nom d’Unscented Particle Filter. Une autre solution consiste à rechercher une approximation π de qopt dans une classe de lois paramétrées. Le choix de π se fait alors en minimisant la divergence du chi-deux entre la densité cible q opt et π ou bien la divergence de Kullback-Leibler (2.21) de π à q opt [23]. 2.2.5 Convergence des filtres particulaires La littérature sur les méthodes Monte Carlo séquentielle est riche en résultats sur la convergence des filtres particulaires lorsque N → +∞. On peut citer notamment [25],[24], [26] ou [32]. On rappelle ci-dessous un résultat établi pour l’algorithme SIR. Théorème 1 (Convergence faible [26]). Soit φ une fonction continue bornée de R d . On suppose que la fonction de vraisemblance xk 7→ gk(xk) = p(yk|xk) est bornée. Alors, lim N→+∞ X N i=1 ω i kφ(x i k ) = Z φ(xk)p(xk|y0:k)dxk (2.23) presque-surement. Un autre résultat concernant la convergence en norme L p s’énonce comme suit : Théorème 2 (Convergence L p [32]). Sous les hypothèses précédentes, pour tout p ≥ 1, il existe un réel Ck,p > 0, indépendant de N, tel que pour toute fonction φ continue bornée de R d , E [|hφ, pki − hφ, pˆki|p ] 1 p ≤ Ck,p supxk∈Rd |φ(xk)| √ N avec hφ, pki = Z φ(xk)p(xk|y0:k)dxk et pˆk = X N i=1 ω i k δx i k . Ce dernier résultat montre que l’erreur L p converge à la vitesse √ 1 N . Mais comme la constante Ck,p dépend du temps, sans hypothèse supplémentaire, Ck,p augmente généralement de manière exponentielle avec le temps. Ceci suggère que pour maintenir une erreur bornée, on a en général besoin d’un nombre croissant de particules. 2.3 Le filtre particulaire régularisé (RPF) On a vu que le ré-échantillonnage classique appauvrissait dans certains cas le système de particules dans la mesure où les schémas de redistribution sont fondées sur la duplication de particules. En particulier lorsque le bruit de dynamique est faible, les particules explorent peu l’espace d’état et le filtre peut diverger. Afin d’éviter ceci, le filtre particulaire régularisé (RPF) [37, p. 247-271] [89, 72], effectue le rééchantillonnage en simulant un échantillon selon une distribution continue, ce qui évite d’avoir plusieurs copies d’une même particule. La distribution continue utilisée est obtenue en régularisant la densité discrète pˆk = PN i=1 ω i k δx i k , obtenue après l’étape de correction.40 2. Méthodes particulaires pour le filtrage non linéaire 2.3.1 Régularisation d’une loi de probabilité discrète Soit K une fonction sur R d symétrique, telle que : Z K(x) dx = 1 Z xK(x) dx = 0 Z kxk 2 K(x) dx < +∞ (2.24) Pour tout h > 0 et tout x ∈ R d , on définit le noyau de régularisation Kh = 1 h K  x h d  Le paramètre h s’appelle facteur de dilatation. Si ν est une densité de probabilité, on définit la densité régularisée de ν par : νh(x) = (Kh ∗ ν) (x) = Z Kh(x − u)ν(u)du (2.25) Considérons le cas où ν représente une densité de probabilité discrète de la forme ν = X N i=1 ω i δxi obtenue par échantillonnage d’importance i.e. en simulant N points i.i.d. x i , i = 1, . . . , N selon une loi a priori q et en les pondérant selon une fonction de vraisemblance g avec ω i = g(x i ). Autrement dit, ν est une approximation de la loi a posteriori p ∝ gq.La densité de probabilité de la distribution régularisée de ν est νh(x) = X N i=1 ω iKh(x − x i ) (2.26) Le paramètre h contrôle le degré de lissage de la densité ν. Une valeur de h petite rapproche νh de ν tandis qu’une valeur plus élevée a tendance à fusionner les modes de la densité ν. En estimation de densité par noyaux, le noyau et le facteur de dilatation sont choisis de manière à minimiser l’erreur quadratique intégrée moyenne E kνh − pk 2 entre νh et la loi a posteriori p avec kνh − pk 2 = Z (νh(x) − p(x))2 dx. En particulier, lorsque w i = 1 N pour i = 1, . . . , N, le noyau optimal Kopt est le noyau d’Epanechnikov défini par [112] : Kopt(x) =    d+2 2cd  1 − kxk 2  si kxk < 1 0 sinon (2.27) De manière générale, le facteur de dilatation optimal hopt dépend de la quantité ( R |∇2p(x)| dx) 1/2 qui n’est facilement calculable que pour certaines densités de probabilités. Par exemple, si p est une densité gaussienne standard, en utilisant le noyau d’Epanechnikov (2.27), hopt = A(K)N − 1 d+4 A(K) = [8c −1 d (d + 4)(2√ π) d ] 1 d+4 (2.28)41 où cd est le volume de la sphère unité. Pour les applications usuelles, il est suffisant d’utiliser un noyau gaussien, dont le coût de simulation est moindre. Dans ce cas, hopt est obtenu selon hopt = A(K)N − 1 d+4 A(K) = (4/(d + 2)) 1 d+4 (2.29) Pour une densité quelconque, le choix de h peut se faire selon des méthodes classiques d’estimation de densité par noyaux (validation croisée [108], règle du plug-in [122]) mais elles impliquent un coût de calcul non négligeable. Pour s’en affranchir, on peut par exemple approcher la densité sous-jacente p par une gaussienne de moyenne la moyenne empirique et de covariance la covariance empirique S donnée par l’échantillon x 1 , . . . , xN [37]. Pour tenir compte du rapport d’échelle entre les composantes du vecteur d’état, on blanchit le système de particule afin de se ramener à un système de particules de covariance unitaire. En supposant que S = AAT , les particules blanchies sont les A−1x i . La valeur de h donnée par (2.29) peut alors être utilisée pour le système de particules blanchies. Cette procédure de régularisation est équivalente à utiliser le noyau de régularisation : Kh(x) = 1 det(A)h d K A−1x h ! (2.30) Lorsque la densité a posteriori est multimodale, la méthode de blanchiment (« data sphering ») a tendance à surlisser la densité d’origine. Silverman [112] conseille de poser h = chopt, avec c < 1 afin de limiter cet effet. Nous verrons dans le chapitre 4 qu’il est possible de régulariser les densités multimodales en s’affranchissant de ce réglage empirique. 2.3.2 Algorithme du filtre particulaire régularisé Il existe deux versions du RPF qui diffèrent par le choix de l’instant de régularisation [37, p. 253-254]. Le filtre particulaire pré-régularisé : l’étape de prédiction est identique à celle de SIR. En revanche, l’étape de correction est obtenue en considérant la distribution régularisée de la loi prédite empirique pˆk|k−1 = PN i=1 ω i k−1 δx i k|k−1 où n ω i k−1 , xi k|k−1 oN i=1 est le système de particules obtenues après l’étape de prédiction. pˆ h k|k−1 (x) =  Kh ∗ pˆk|k−1  (x) = X N i=1 ω i k−1Kh(x − x i k|k−1 ) L’approximation de la densité corrigée est alors pˆ h k (x) ∝ X N i=1 ω i k−1 gk(x i k|k−1 )Kh(x − x i k|k−1 ) Simuler un échantillon {x i k} N i=1 issue de cette loi requiert généralement de recourir à une méthode d’acceptation/rejet en prenant comme loi instrumentale la densité prédite régularisée pˆ h k|k−1 (x). Cette méthode est donc généralement coûteuse et n’est pas recommandée.42 2. Méthodes particulaires pour le filtrage non linéaire Le filtre particulaire post-régularisé : La régularisation intervient après l’étape de correction du SIR. L’étape de ré-échantillonnage consiste cette fois à échantillonner la distribution régularisée de la loi a posteriori empirique pˆk|k = PN i=1 ω i k δx i k . Le surcout du à la régularisation par rapport au ré-échantillonnage classique provient uniquement de la génération de N variables aléatoires selon le noyau K. Pour cette raison on préfèrera l’algorithme du filtre particulaire post-régularisé à sa version pré-régularisée. Algorithme 3 : RPF (filtre particulaire régularisé) pour i = 1, . . . , N faire – tirer x i ∼ q(x0|y0) – calculer ω i 0 ∝ µ0(x i 0 )p(y0|x i 0 ) q(x i 0 |y0) – normaliser les poids ω i 0 fin pour pour k = 1, . . . , n faire – [Prédiction] tirer x i k ∼ q(x i k |x i k−1 , yk), i = 1, . . . , N – [Correction] calculer les poids ω i k ∝ ω i k−1 p(x i k |x i k−1 )p(yk|x i k ) q(x i k |x i k−1 ,yk) , i = 1, . . . , N – normaliser les poids ω i k , i = 1, . . . , N – Calculer Nef f d’après (2.17) – [Ré-échantillonnage/Régularisation] Si Nef f < Nth – générer I1, . . . , IN avec P(Ij = i) = ω i k – générer ε i suivant le noyau d’Epanechnikov ou un noyau gaussien – calculer Ak tel que Sk = AkAT k où Sk est la covariance empirique de {ω i k , xi k} N i=1 – calculer hopt d’après (2.28) ou (2.29) et poser x j k = x Ij k + hoptAkε j , j = 1, . . . , N fin pour Les applications du RPF dans le domaine du pistage de cible [96] ou du recalage d’aéronefs par mesures radio-altimétriques [28] ont montré que la régularisation améliore sensiblement les performances du filtre particulaire classique (SIR) notamment en terme de taux de non-divergence, lorsque la dynamique est faiblement bruitée. 2.4 Les filtres particulaires hybrides (RBPF, KPKF) 2.4.1 Le filtre particulaire Rao-Blackwellisé (RBPF) Il existe une classe de modèles, appelée modèles conditionnellement linéaires gaussiens, pour laquelle l’estimation peut se faire grâce à un filtre particulaire pour une partie du vecteur d’état et un filtre de Kalman pour le reste du vecteur. Un tel filtre est appelé Rao-Blackwellized Particle Filter [15, 36], Mixture Kalman Filter [17] ou Marginalized Particle Filter [110, 94]. On suppose que l’on peut partitionner le vecteur d’état xk telle que x T k = h (x n k ) T ,(x l k ) T i . Le43 vecteur x n k désigne la partie non-linéaire de xk tandis que x l k représente la partie linéaire, conditionnellement à x n k et y0:k. En outre, on fait l’hypothèse que le modèle s’écrit sous la forme suivante :    x n k = f n k−1 (x n k−1 ) + F n k−1 (x n k−1 )x l k−1 + Gn k−1 (x n k−1 )w n k−1 x l k = f l k−1 (x n k−1 ) + F l k−1 (x n k−1 )x l k−1 + Gl k−1 (x n k−1 )w l k−1 yk = hk(x n k ) + Hk(x n k )x l k + vk (2.31) où – wk est un bruit blanc gaussien de matrice de covariance Qk et w T k = h (w n k ) T ,(w l k ) T i Qk = Qn k Qln k (Qln k ) T Ql k ! – vk est un bruit blanc gaussien de matrice de covariance Rk – La partie non linéaire suit une loi p0(x n 0 ) connue – La partie linéaire x l 0 est une gaussienne N (¯x0, P¯ 0) La densité jointe p(x l k , xn 0:k |y0:k) se factorise comme p(x l k , xn 0:k |y0:k) = p(x l k |x n 0:k , y0:k)p(x n 0:k |y0:k). On montre que sous les hypothèses du modèle p(x l k |x n 0:k , y0:k) est une densité gaussienne : il suffit donc de calculer à chaque pas de temps sa moyenne et sa covariance grâce au filtre de Kalman. Par ailleurs, La loi conditionnelle de la partie non-linéaire de l’état p(x n 0:k |y0:k) peut être estimée grâce un filtre particulaire selon le schéma suivant : – Prédiction p(x n 0:k |y0:k−1) = p(x n k |x n 0:k−1 , y0:k−1)p(x n 0:k−1 |y0:k−1) (2.32) – Correction p(x n 0:k |y0:k) = p(yk|x n 0:k , y0:k−1) p(yk|y0:k−1) p(x n 0:k |y0:k−1) (2.33) Définissons les variables z 1 k et z 2 k par : ( z 1 k = x n k+1 − f n k (x n k ) z 2 k = yk − hk(x n k ) Détaillons à présent la récursion de Kalman dans le cadre du RBPF. On suppose que la densité p(x l k−1 |x n 0:k−1 , y0:k−1) est une loi gaussienne N  xˆ l k−1 , Pk−1  connue dont la moyenne et la covariance dépendent de x n 0:k−1 et y0:k−1. Alors la moyenne et la covariance prédite s’obtiennent comme suit [94] :    xˆ l k|k−1 = F¯l k−1xˆ l k−1 + Gl k−1 (Qln k−1 ) T (Gn k−1Qn k−1 ) −1 z 1 k−1 + f l k−1 (x n k−1 ) + Lk−1(z 1 k−1 − An k−1xˆ l k−1 ) Pk|k−1 = F¯l k−1Pk−1(F¯l k−1 ) T + Gl k−1Q¯l k−1 (Gl k−1 ) T − Lk−1Nk−1L T k−1 Nk = F n k Pk(F n k ) T + Gn kQn k (Gn k ) T Lk = F¯l kPk(F n k ) TN −1 k (2.34) avec ( F¯l k = F l k − Gl k (Qln k ) T (Gn kQn k ) −1F n k Q¯l k = Ql k − (Qln k ) T (Qn k ) −1Qln k44 2. Méthodes particulaires pour le filtrage non linéaire De même, la loi corrigée p(x l k |x n 0:k , y0:k) est une densité gaussienne N  xˆ l k , Pk  de moyenne xˆ l k = ˆx l k|k−1 + Kk(yk − hk(x n k ) − H T k (x n k )ˆx l k|k−1 ) (2.35) et de covariance Pk = Pk|k−1 − KkMkKT k (2.36) où Mk = Hk(x n k )Pk|k−1HT k (x n k ) + Rk Kk = Pk|k−1HT k (x n k )M−1 k (2.37) Si l’on suppose que p(x n 0:k |y0:k) ≈ PN i=1 ω i k δx n,i 0:k , la loi conditionnelle p(x l k |y0:k) s’obtient selon p(x l k |y0:k) = Z p(x l k |x n 0:k , y0:k)p(x n 0:k |y0:k) dxn 0:k ≈ X N i=1 ω i k p(x l k |x n,i 0:k , y0:k) (2.38) où les densités p(x l k |x n,i 0:k , y0:k) sont gaussiennes et dont les paramètres sont donnés par les équations (2.35) et (2.36). Revenons à l’approximation particulaire de p(x n 0:k |y0:k). L’étape de prédiction (2.32) nécessite de déterminer la loi de p(x n k |x n 0:k−1 , y0:k−1). p(x n k |x n 0:k−1 , y0:k−1) = Z p(x n k |x l k−1 , xn k−1 )p(x l k−1 |x n 0:k−1 , y0:k−1)dxl k−1 Comme p(x n k |x l k−1 , xn k−1 ) est une gaussienne N  f n k (x n k−1 ) + F n k (x n k−1 )x l k−1 , Gn kQn k (Gn k ) T  et p(x l k−1 |x n 0:k−1 , y0:k−1) est également une densité gaussienne N  xˆ k l , Pk  , il s’en suit que p(x n k |x n 0:k−1 , y0:k−1) suit une distribution gaussienne N  f n k (x n k−1 ) + F n k (x n k−1 )ˆx l k−1 , F n k Pk(F n k ) T + G n kQ n k (G n k ) T  (2.39) Il reste à déterminer le terme p(yk|x n 0:k , y0:k−1) qui intervient dans l’étape de correction (2.33). On remarque que yk est la somme des termes hk(x n k ), Hk(x n k )x l k et du bruit de mesure vk. De plus : – conditionnellement à x n 0:k et y0:k−1, Hk(x n k )x l k est gaussien de moyenne Hk(x n k )ˆx l k|k−1 et de covariance Hk(x n k )Pk|k−1HT k (x n k ) – vk ∼ N (0, Rk) est indépendant de Hk(x n k )x l k et hk(x n k ) Donc la loi de p(yk|x n 0:k , y0:k−1) est une gaussienne N  hk(x n k ) + H T k (x n k )ˆx l k|k−1 , Hk(x n k )Pk|k−1H T k (x n k ) + Rk  (2.40) Nous donnons ci-dessous une version de l’algorithme du RBPF où la loi d’importance utilisée pour la partie non linéaire est la loi p(xk|x0:k−1, y0:k−1). Algorithme 4 : RBPF pour i = 1, . . . , N faire45 – tirer x n,i k ∼ p(x n 0 ) – poser x l,i 0|−1 = ¯x l 0 et P i 0|−1 = P¯ 0 fin pour pour k = 1, . . . , n faire – [Correction particulaire] calculer les poids ω i k ∝ ω i k−1 p(yk|x n,i k , y0:k−1), i = 1, . . . , N où la vraisemblance p(yk|x n,i k , y0:k−1) est donnée d’après (2.40) – normaliser les poids ω i k , i = 1, . . . , N – Calculer Nef f d’après (2.19) – [Ré-échantillonnage] Si Nef f < Nth rééchantilloner le système de particules – [Correction de Kalman] Pour i = 1, . . . , N, calculer xˆ l,i k et P l,i k d’après (2.35) et (2.36) – [Prédiction particulaire] Générer un échantillon x n,i k+1 ∼ p(x n k+1|x n 0:k , y0:k) (cf. (2.39)) – [Prédiction de Kalman] Pour i = 1, . . . , N, calculer xˆ l,i k+1|k et P l,i k+1|k d’après (2.34) fin pour Le filtre Rao-Blackwellisé produit des estimées en général meilleures que le SIR en terme d’erreur Monte Carlo. Cependant, à nombre de particules constant, il est plus coûteux puisqu’en toute généralité, il recquiert un filtre de Kalman par particule. Néanmoins, il est possible d’obtenir un compromis coût de calcul/performances en faveur du RBPF pour bien des applications. Par exemple, en recalage par mesures radio-altimétriques ou en pistage par mesure angulaire, la matrice de covariance du filtre de Kalman est indépendante de la partie non-linéaire ce qui réduit la complexité du RBPF étant donné qu’il il n’y a qu’une matrice de covariance à mettre à jour. 2.4.2 Un exemple de filtre particulaire à noyau : le Kalman Particle Kernel Filter (KPKF) Le KPKF [28, 103] s’appuie sur la théorie d’estimation de densité par noyau en exprimant les densités prédites et corrigées comme une somme pondérée de noyaux gaussiens. Dans la théorie du KPKF, le bruit de dynamique wk et le bruit d’observation vk sont supposés additifs gaussiens de moyennes nulles et de matrices de covariance respectives Qk et Rk. Étant donné une densité de probabilité f et {x i , i = 1 . . . N} un N-échantillon issu de f, un estimateur de densité par noyau est donné par : ˆf = 1 N X N i=1 ϕ(x − x i |P) où l’application x 7→ ϕ(x|P) désigne un noyau gaussien de moyenne nulle et de covariance P = h 2 Cov(x i ) = h 2 N−1 PN i=1(x i − x¯)(x i − x¯) T . h est le paramètre de dilatation du noyau et joue le même rôle que dans le filtre particulaire régularisé. Conformément à l’approche ci-dessus, le KPKF formule la loi prédite p(xk|y0:k−1) comme un mélange de N noyaux gaussiens : p(xk|y0:k−1) ≈ X N i=1 ω i k|k−1ϕ(xk − x i k|k−1 |P i k|k−1 ) (2.41)46 2. Méthodes particulaires pour le filtrage non linéaire où pour tout i = 1, . . . , N, P i k|k−1 est une matrice de covariance égale à h 2 fois la covariance empirique des particules prédites, i.e. : P i k|k−1 = h 2 X N i=1 ω i k|k−1 (x i k|k−1 − x¯k|k−1)(x i k|k−1 − x¯k|k−1) T (2.42) x¯k|k−1 = PN i=1 ω i k|k−1x i k|k−1 étant la moyenne prédite donnée par le système de particules. La particularité du KPKF est que, à l’étape de correction, les covariance P i k|k−1 sont suffisamment petites pour justifier une linéarisation de la fonction d’observation hk autour des particules prédites x i k|k−1 , i = 1, . . . , N. Étant donné que le bruit est additif gaussien, on vérifie que la densité a posteriori p(xk|y0:k) s’exprime comme un mélange de noyaux gaussiens dont les moyennes et les matrices de covariance s’obtiennent en appliquant les équations de Kalman [28]. Autrement dit, p(xk|y0:k) ≈ X N i=1 ω i kϕ(xk − x i k |P i k ) (2.43) avec H i k = ∇hk(x i k|k−1 ) (2.44) x i k = x i k|k−1 + Ki k (yk − hk(x i k|k−1 )) (2.45) Σ i k = H i kP i k|k−1 (H i k ) T + Rk (2.46) Ki k = P i k|k−1 (H i k ) T (Σi k ) −1 (2.47) P i k = P i k|k−1 − P i k|k−1 (H i k ) T (Σi k ) −1H i kP i k|k−1 (2.48) ω i k = ω i k|k−1ϕ(yk − y i k|k−1 |Σ i k ) PN j=1 ω i k|k−1ϕ(yk − y i k|k−1 |Σi k ) (2.49) L’étape de prédiction nécessite le calcul de p(xk+1|y0:k) = X N i=1 ω i k Z Rd ϕ(xk+1 − fk+1(x)|Qk+1)ϕ(x − x i k |P i k )du En remarquant que kP i kk ≤ P i k|k−1 , on peut de nouveau effectuer une linéarisation de la fonction d’observation fk+1 autour des particules corrigées x i k . fk+1(x) ≈ fk+1(x i k ) + F i k+1(x − x i k ) où F i k+1 = ∇fk+1(x i k ). Dans de nombreuses applications, la dynamique considérée est linéaire et il n’est donc pas nécessaire de procéder à une linéarisation. Dans tous les cas, la densité prédite est égale à une somme pondérée de noyaux gaussiens : p(xk+1|y0:k) = X N i=1 ω i kϕ(xk − fk+1(x i k )|P i k+1|k )47 avec P i k+1|k = F i k+1P i k (F i k+1) T + Qk+1. L’étape de prédiction soulève une difficulté : la matrice de covariance P i k+1|k n’est plus de l’ordre de h 2 . Il est donc nécessaire de rajouter une étape supplémentaire afin de conserver la structure donnée par (2.41) et (2.42). Cette étape, nommée ré-échantillonnage partiel [28] par leurs auteurs, consiste à rajouter à chaque particule fk+1(x i k+1|k ) un bruit gaussien centré de covariance P i k+1|k− h ∗2Πk+1|k où Πk+1|k = X N i=1 ω i kP i k+1|k + X N i=1 ω i k (fk+1(x i k ) − fk+1(xk))(fk+1(x i k ) − fk+1(xk))T est la covariance de la densité prédite. Le paramètre h ∗ est défini par h ∗2 = min i λ i min λ i min, i = 1, . . . , N est la plus petite valeur propre de (C T k+1) −1P i k+1|kC −1 k+1 et Ck+1 est la racine carrée de Πk+1|k (C T k+1Ck+1 = Πk+1|k). Lorsque la variance des poids {ω i k} N i=1 est élevée, il est préférable d’effectuer un ré-échantillonnage dit total ce qui revient à échantillonner N particules n x i k+1|k oN i=1 suivant la densité pˆ(xk+1|y0:k) = X N i=1 ω i kϕ(xk+1 − x i k+1|k |h ∗2Πk+1|k) (2.50) Rappelons que la variance des poids normalisés {ω i k} N i=1 peut s’estimer en contrôlant en ligne un critère sur la taille effective de l’échantillon Nef f ou bien en évaluant le critère entropique présentée dans la section 2.2.3. 2.5 Comportement du filtre particulaire en présence de multimodalités La section 2.2.3 a mis en évidence la nécessité de ré-échantillonner le système de particules afin de garantir la stabilité du filtre (mais pas nécessairement la convergence). Si l’on considère une distribution multimodale approchée par un ensemble fini de N particules pondérées {ω i k , xi k} N i=1, il n’y a pas de garantie qu’après ré-échantillonnage, ce système de particules représente tous les modes de la distribution conditionnelle. En effet, ré-échantillonner consiste essentiellement à tirer avec remise dans l’ensemble {x i k} N i=1, la probabilité de tirage de chaque particule étant égale à son poids. Ce phénomène a été rapporté dans la littérature du filtrage particulaire dans le cadre du pistage multi-cibles [58, 95], du pistage vidéo [59, 118, 95] ou en localisation de robot [85]. Une justifi- cation a été fournie par King et Forsyth [67] lorsque l’état xk prend ses valeurs dans un ensemble48 2. Méthodes particulaires pour le filtrage non linéaire fini discret. Les auteurs considèrent entre autres un modèle à espace d’état où xk ∈ {−1, 1}. Dans cette expérience, l’objet stationnaire est situé en x = 1 et on suppose que l’observation est parfaite et se fait dans un plan image par réflection sur deux miroirs (figure 2.2). Il apparaît donc à la fois en x = 1 et x = −1 sur le plan image. Cela crée une ambiguité sur la position réelle de l’objet, qui peut être modélisée par la fonction de vraisemblance p(y|x) = 0.5δx(y) + 0.5δ−x(y). Cette modélisation est purement illustrative mais permet de comprendre le phénomène de perte mirroir mirroir objet −1 0 1 plan image Figure 2.2 – "Pistage" d’un objet stationnaire de mode en filtrage particulaire. Pour cela, King et Forsyth supposent une densité a priori initiale p0(x) = 0.5δ1(x) + 0.5δ−1(x). Comme l’objet est stationnaire, p(xk|xk−1) = δxk−1 (xk), de sorte que p(xk|y0:k) = p0(xk). La loi a posteriori a donc 2 modes quelque soit k : −1 et 1. En utilisant un filtre particulaire pour estimer p(xk|y0:k), les échantillons x i k , i = 1, . . . , N prennent les valeurs −1 ou 1 et ont pour poids ω i k = 1 N . La distribution empirique est donc entièrement caractérisée par le nombre Ak d’échantillons qui sont situé sur le mode 1. Ak = Card n i ∈ J0, NK | x i k = 1o (2.51) de sorte que à l’instant k, l’approximation particulaire de p(xk|y0:k) est pˆk(x) = Ak N δ1(x) + N − Ak N δ−1(x) (2.52) Une bonne approximation pˆk correspond donc à Ak = N 2 , ∀k. Supposons que le ré-échantillonnage multinomial est appliquée à chaque instant (bootstrap filter). Cela correspond à un tirage uniforme avec remise dans la population n x 1 k , x2 k , . . . , xN k o . La v.a. Ak est donc une chaine de Markov homogène à valeur dans {0, 1, . . . , N}. La probabilité de transition est une loi binomiale B(N, Ak/N) : P(Ak = j|Ak−1 = m) = N j ! m N j  1 − m N N−j = pmj (2.53) La perte de l’un des modes correspond à Ak ∈ {0, N}, c’est-à-dire que la chaîne Ak a atteint un état absorbant. Les états 0 et N sont dits absorbants car une fois que la chaine Ak atteint ces49 valeurs, elle y reste. Cette modélisation est analogue aux chaînes de Wright-Fisher en génétique des populations [39]. Les deux modes sont comparables à deux allèles d’une population de taille fixe, asexuée et dont les générations ne se chevauchent pas. On définit le temps d’absorption T comme étant le temps d’atteinte de l’ensemble {0, N}. T 4 = inf {n ≥ 0 | An ∈ {0, N}} (2.54) En génétique des populations, cela correspond à la perte définitive d’un allèle. L’espace des états étant fini, le temps d’atteinte T est presque sûrement fini. Si on désigne par u la proportion initiale d’échantillons correspondant au premier mode, le temps moyen d’absorption est asymptotiquement linéaire en N [39]. E[T | A0 = Nu] ∼ N→∞ −2N (u ln u + (1 − u) ln(1 − u)) (2.55) Cette approximation est relativement bonne même pour des "petites" valeurs de N. Si l’on considère le problème précédent du pistage d’un objet stationnaire avec N = 100 (modes équiprobables), on peut constater que le temps moyen d’absorption empirique, calculé sur 500 réalisations indépendantes, est proche de son équivalent asymptotique (cf. figure 2.3). En particulier pour u = 1/2 (modes équiprobables), le temps moyen théorique est de 138 itérations. Par ailleurs, nous avons calculé la variance du temps moyen d’absorption vaut asymptotiquement : Var(T | A0 = Nu) = −2N [u ln u + (1 − u) ln(1 − u)] + 8N 2u dilog u + 8N 2u ln u − 8N 2 dilog u − 8N 2u dilog(1 − u) + 8N 2 ln(1 − u) − 8N 2u ln(1 − u) − 4N 2 [u ln u + (1 − u) ln(1 − u)]2 + 4 3 π 2N 2 (2.56) où dilog est la fonction dilogarithme définie par dilog(u) = Z u 1 ln t 1 − t dt (2.57) Des éléments de preuve sont fournis en annexe (B).50 2. Méthodes particulaires pour le filtrage non linéaire 0 0.2 0.4 0.6 0.8 1 0 50 100 150 u E(τ) Figure 2.3 – Temps moyen d’absorption de mode. Rouge : approximation asymptotique, Bleu : moyenne empirique 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 0 20 40 60 80 100 120 140 u σ τ Figure 2.4 – Ecart-type du temps d’absorption de mode. Rouge : approximation asymptotique, Bleu : écart-type empirique Lorsque la répartition des particules entre les deux modes est identique, la variance asymptotique se réduit à : Var(T | A0 = N/2) ∼ N→∞ ( 2 2 π 2 − 8 log 2)N 2 + 2N log 2 Lorsque N est grand, l’écart-type du temps de perte de mode est proportionnel à N. Ainsi, le temps moyen d’absorption augmente avec N à la même vitesse que l’écart-type associé. On observe en pratique que même pour des N grands la probabilité de perdre rapidement un mode n’est pas nulle.51 2.5.1 Cas où le nombre de modes est supérieur ou égal à 3 Lorsqu’on considère un modèle discret comportant plus de 2 modes dans la loi a posteriori p(x|y), on observe également que le ré-échantillonnage répété provoque une perte progressive des modes jusqu’à n’en avoir plus qu’un seul [67]. S’il y a initialement b modes, contenant initialement X1, X2, . . . , Xb échantillons, le temps moyen de réduction à un mode est asymptotiquement égal à : −2N X b i=1 N − Xi N ln N − Xi N  2.5.2 Cas où l’état est continu L’expérience décrite par King et Forsyth met en jeu un système à espace d’état sans bruit de dynamique ni bruit de mesure ce qui permet d’obtenir une approximation asymptotique sur les temps moyen de perte de mode. Dans un cadre plus général avec un bruit de dynamique et/ou d’observation, on observe le même phénomène de perte de modes [67, 118]. Considérons le modèle suivant : ( xk = xk−1 + wk yk = x 2 k + vk (2.58) où xk , k = 1, . . . , 200 est une variable scalaire. La loi a priori est supposée symétrique bimodale 1 2 U(−6.01, −5.99) + 1 2 U(5.99, 6.01) et les bruits d’état et de mesure sont des bruits blancs gaussiens de variances respectives σ 2 w = 0.01 et σ 2 v = 0.01. La nature de l’équation de mesure assure que la distribution p(xk|y0:k) est bimodale avec des modes de signes opposés. Un moyen simple d’associer une particule à un mode est de lui associer le mode de même signe. L’écart-type du bruit de dynamique assure qu’une particule x j qui sera initialement associé au i-ème mode le restera étant donné la faible probabilité pour que la somme cumulée des bruits de dynamique provoque un changement du signe de x j . Nous avons étudié dans [88] le temps moyen de perte de mode d’un filtre particulaire standard sur le modèle (2.58). Dans cet article, nous avons considéré un filtre particulaire avec ré-échantillonnage à chaque itération (bootstrap filter) et utilisant N = 100 particules. Le filtre est initialisé avec N/2 particules dans chaque mode. Le temps moyen de perte de mode calculé empiriquement sur la base de 1000 trajectoires indépendantes est de 11 itérations. En comparant (à nombre de particules égal) avec le modèle statique illustré par la figure 2.2 où le temps moyen est de l’ordre de 138 itérations, on observe que la présence de bruits de dynamique et d’observation est de nature à accélérer la perte de l’un des modes. Cela est du au fait que le ré-échantillonnage se fait en tirant les particules proportionnellement à leurs poids normalisés ω i k qui sont différents de 1 N , contrairement au cas stationnaire. Nous verrons ci-après une implémentation, proposée par Vermaak et al. [118], qui permet de traiter le problème du ré-échantillonnage au niveau de chaque mode de la densité empirique dans le soucis de préserver autant que possible son caractère multimodal.52 2. Méthodes particulaires pour le filtrage non linéaire 2.6 Modèles de mélange pour le filtrage particulaire Les modèles de mélange finis consistent à représenter une densité de probabilité f comme une somme pondérée de M densités de probabilités fj . f(x) = X M j=1 αjfj (x) avec X M j=1 αj = 1 (2.59) Les réels αj sont les coefficients ou poids de mélange. Les modèles de mélange sont utilisés en classification de données [83], en segmentation d’image [16] ou extraction d’image [101]. Ils sont également utiles pour représenter une loi de probabilité multimodale. Ils se prêtent bien à la problématique du filtrage dans un cadre ou la fonction de mesure est ambiguë. Ils ont notamment été utilisés dans un cadre particulaire en localisation de robot [85, 77], en pistage vidéo [118], en pistage multi-objet[113] ou encore en pistage multi-cibles [47]. Nous présentons ci-après le cadre théorique du filtrage pour le modèle de mélange et l’algorithme particulaire correspondant. 2.6.1 Filtrage pour les modèles de mélange Nous rappelons le modèle à espace d’état (2.6). ( xk = fk (xk−1, wk) yk = hk(xk, vk) Formulons la loi conditionnelle pk|k = p(xk|y0:k) soit comme un mélange de lois conditionnelles : pk|k = X M j=1 αj,kpj (xk|y0:k) (2.60) où PM j=1 αj,k = 1. Les composantes pj sont des lois conditionnelles non-paramétriques. Cette décomposition n’étant pas unique, nous allons supposer que chaque pj est monomodale, de manière à capter la multimodalité de la loi a posteriori p(xk|y0:k). La mise à jour du filtre suppose la mise à jour des composantes {pj , j = 1 · · · M} et des poids de mélange αj,k. Supposons que pk−1|k−1 = p(xk−1|y0:k−1) soit connu. Le calcul de pk|k se fait selon les équations de Chapman-Kolmogorov : – Prédiction pk|k−1 = p(xk|y0:k−1) = Z p(xk|xk−1)p(xk−1|y0:k−1) dxk−1 (2.61) – Correction pk|k = p(xk|y0:k) = p(yk|xk)p(xk|y0:k−1) R p(yk|xk)p(xk|y0:k−1) dxk (2.62) En prenant en compte la formulation sous forme de mélange de loi conditionnelle donnée par (2.60), on a53 – Prédiction pk|k−1 = X M j=1 αj,k−1pj (xk|y0:k−1) avec pj (xk|y0:k−1) = Z p(xk|xk−1)pj (xk−1|y0:k−1)dxk−1 (2.63) – Correction pk|k = PM j=1 αj,k−1p(yk|xk)pj (xk|y0:k−1) PM l=1 αl,k−1 R p(yk|xk)pl(xk|y0:k−1) dxk = X M j=1 αj,k−1 R p(yk|xk)pj (xk|y0:k−1) dxk PM l=1 αl,k−1 R p(yk|xk)pl(xk|y0:k−1) dxk p(yk|xk)pj (xk|y0:k−1) R p(yk|xk)pj (xk|y0:k−1) dxk ! | {z } pj (xk|y0:k) (2.64) Etant donné que Z p(yk|xk)pj (xk|y0:k−1) dxk = pj (yk|y0:k−1), on en déduit donc l’équation de mise à jour des poids de mélange : αj,k = αj,k−1pj (yk|y0:k−1) X M l=1 αl,k−1pl(yk|y0:k−1) (2.65) 2.6.2 Approximation particulaire pour les modèles de mélange et algorithme MPF La précédente section a mis en évidence la procédure de filtrage pour les modèles de mélange. Voyons maintenant comment obtenir l’ équivalent particulaire des filtres de mélange. Dans la littérature du filtrage particulaire, l’algorithme a été introduit par Vermaak, Doucet et Perez sous le nom de mixture particle filter (MPF) [118]. Ce même algorithme est également connu comme le clustered particle filter [126]. L’idée sous-jacente est d’affecter un filtre particulaire à chaque composante pj du mélange. A l’étape de prédiction, les filtres évoluent indépendamment et à l’étape de correction, ils interagissent lors de la mise à jour des poids de mélange {αj,k} M j=1via l’équation (2.65). Conformément aux notations précédentes, on notera {x i k} N i=1 l’ensemble des particules, {ω i k} N i=1 les poids associés et Ij ⊆ {1, . . . , N} l’ensemble des indices des particules appartenant à la composante d’indice j. La loi a posteriori est donc approchée selon p(xk|y0:k) ≈ X M j=1 αj,k X i∈Ij ω i k δx i k (2.66) avec X i∈Ij ω i k = 154 2. Méthodes particulaires pour le filtrage non linéaire et X M j=1 αj,k = 1 L’étape de prédiction se fait en échantillonnant N particules x i k ∼ q(x|x i k−1 , yk) où q est une densité d’importance. D’après (2.64), l’équation de mise à jour des poids d’importance {ω i k} N i=1 se fait selon : ω˜ i k = ω i k−1 p(yk|x i k )p(x i k |x i k−1 ) q(x i k |x i k−1 , yk) (2.67) ∀i ∈ Ij , ωi k = ω˜ i X k l∈Ij ω˜ l k (2.68) Afin d’obtenir les poids de mélange à l’instant k, il faut estimer la vraisemblance prédite pj (yk|y0:k−1) = Z p(yk|xk)pj (xk|y0:k−1) dxk. Appelons pˆj (xk|y0:k−1) une approximation particulaire de la loi prédite de la composante d’indice j. Alors, pj (yk|y0:k−1) = Z p(yk|xk)pj (xk|y0:k−1) dxk (2.69) = ZZ p(yk|xk)p(xk|xk−1)pj (xk−1|y0:k−1) dxk dxk−1 (2.70) ≈ X i∈Ij ω i k−1 p(yk|x i k )p(x i k |x i k−1 ) q(x i k |x i k−1 , yk) (2.71) ≈ X i∈Ij ω˜ i k (2.72) On en déduit l’estimateur des coefficients de mélange suivant : αj,k ≈ αj,k−1w + j,k X M p=1 αp,k−1w + p,k (2.73) où w + j,k est défini par : w + j,k = X i∈Ij ω˜ i k (2.74) Jusqu’ici, on a supposé que le nombre de composantes de la loi a posteriori restait fixe. Dans l’hypothèse où une composante est affectée à un mode de la loi conditionnelle pk|k, cela signifie que le nombre de modes est constant. Cependant pour des applications telles que le suivi d’objets dans les séquences vidéo, une composante pj correspond idéalement à la probabilité d’un objet particulier. Le nombre d’objets pouvant évoluer au cours du temps, il parait naturel d’introduire une dépendance du nombre de composantes M par rapport au temps. En recalage de navigation inertielle par mesures radio-altimétriques, la modélisation de la loi conditionnelle sous-forme de55 mélange fini correspond à une ambiguïté sur la position réelle de l’aéronef qui se matérialise par plusieurs positions possibles dans le plan horizontal. En fonction des similarités de terrain et de l’incertitude de mesure du radio-altimètre, le nombre de positions candidates peut évoluer. Afin de prendre en compte ces remarques, Vermaak et al. [118] formulent la loi a posteriori à l’instant k comme un mélange de Mk composantes : pk|k = X Mk j=1 αj,kpj (xk|y0:k) (2.75) Soit pˆk|k l’approximation particulaire de pk|k. Alors, pˆk|k = X Mk j=1 αj,k X i∈Ij,k ω i k δx i k (2.76) où Ij,k ⊆ {1, . . . , N} est l’ensemble des indices des particules approximant la composante pj à l’instant k. A l’instant k + 1 on a donc : pk+1|k+1 ≈ pˆk+1|k+1 = X Mk j=1 αj,k+1 X i∈Ij,k ω i k+1δx i k+1 (2.77) = X N i=1 αc1(i),k+1ω i k+1δx i k+1 (2.78) où c1(i) = j si i appartient à Ij,k. Dans la formulation (2.77), les lois Πj = P i∈Ij,k ω i k+1δx i k+1 peuvent contenir plusieurs modes, auquel cas il est judicieux de séparer les particules en autant de modes que nécessaire. Inversement, deux lois Πˆ l et Πm peuvent avoir des modes très rapprochés ce qui incite à regrouper les particules correspondantes. Cela se traduit par la formulation de pˆk+1|k+1 comme somme de Mk+1 composantes Πˆ 0 l , l = 1, . . . , Mk+1 obtenues après re-clustering des composantes Πˆ l , l = 1, . . . , Mk. pˆk+1|k+1 = M Xk+1 l=1 βl,k+1Πˆ 0 l pˆk+1|k+1 = M Xk+1 l=1 βl,k+1 X i∈Il,k+1 ν i k+1δx i k+1 (2.79) avec PMk+1 l=1 βl,k+1 = 1 , P i∈Ij,k+1 ν i k+1 = 1 et Πˆ 0 l = P i∈Il,k+1 ν i k+1δx i k+1 . Il,k+1 ⊆ {1, . . . , N} est l’ensemble des indices des particules représentant la loi Πˆ 0 l . On peut réécrire l’égalité (2.79) sous la forme : pˆk+1|k+1 = X N i=1 βc2(j),k+1ν j k+1δx j k+1 (2.80)56 2. Méthodes particulaires pour le filtrage non linéaire où c2(i) = l si i ∈ Il,k+1. On peut également transformer l’équation (2.78) sous la forme : pˆk+1|k+1 = X N i=1 αc1(i),k+1ω i k+1δx i k+1 (2.81) = M Xk+1 l=1 X i∈Il,k+1 αc1(i),k+1ω i k+1δx i k+1 (2.82) = M Xk+1 l=1 X i 0∈Ij,k+1 αc1(i 0),k+1ω i 0 k+1 X i∈Il,k+1 αc1(i),k+1ω i k+1 P i 0∈Il,k+1 αc1(i 0),k+1ω i 0 k+1 δx i k+1 (2.83) En identifiant l’égalité (2.83) avec l’équation (2.79), il vient : βl,k = X i∈Il,k+1 αc1(i),kω i k (2.84) et ν i k = αc1(i),kω i k βc2(i),k (2.85)57 Conclusion du Chapitre 2 Nous avons présenté les briques de base du filtre particulaire dans le cadre des modèles à espace d’état. L’algorithme SIS assure théoriquement une convergence vers la loi de filtrage lorsque le nombre de particule est infiniment grand. Cependant, l’utilisation d’un nombre fini de particules peut occasionner la divergence des algorithmes particulaires. En particulier, lorsque le bruit d’observation est faible ou lorsque la dynamique est faiblement bruitée, l’échantillonnage successif des particules selon la loi a priori ne garantit pas la convergence du filtre. Des variantes telles que le filtre particulaire régularisé (RPF) ou le KPKF permettent de rendre le filtre plus robuste lorsque ces situations surviennent mais n’éliminent pas totalement le risque de divergence. Le filtre Rao-Blackwellisé (RBPF) exploite la structure des modèles conditionnellement linéaires gaussiens afin d’effectuer une approximation particulaire sur une partie réduite de l’espace de l’état et réduire ainsi le nombre d’échantillons nécessaire, le reste de l’état étant estimée par un banc de filtres de Kalman. Nous avons également exposé une autre limitation des algorithmes particulaires, qui est le risque de perte de mode lorsque la loi conditionnelle de l’état est multimodale. Nous avons illustré l’impact du ré-échantillonnage sur la disparition des modes grâce à une modélisation issue de la génétique des populations. Ceci a des implications pratiques car la loi de filtrage est multimodale dans les scénarios de recalage de la navigation par mesures altimétriques. Enfin, nous avons exposé les modèles de mélange dans le cadre du filtrage particulaire comme une solution adaptée au distributions multimodales. Le chapitre 4 proposera une mise en oeuvre de ces modèles en proposant une approche basée sur les techniques de clustering pour identifier automatiquement les modes de la loi conditionnelle. Nous proposerons également une méthode de régularisation adaptée aux densités multimodales, appelée régularisation locale.58 2. Méthodes particulaires pour le filtrage non linéaire59 Chapitre 3 Systèmes de navigation inertielle et recalage radio-altimétrique 3.1 Introduction à la navigation inertielle La navigation consiste d’une manière générale à connaitre la position, la vitesse et l’attitude d’un mobile dans un référentiel donné. Dans cette thèse nous nous intéressons plus particuliè- rement à la navigation terrestre, c’est-à-dire la détermination des caractéristiques cinématiques d’un objet par rapport au globe terrestre. Nous chercherons donc à déterminer la position, la vitesse et éventuellement les angles d’attitude de l’objet en déplacement. Les angles d’attitude donnent accès à l’orientation angulaire du solide considéré. L’objet d’intérêt est un aéronef muni d’une centrale inertielle qui comporte des accéléromètres et des gyromètres et d’un calculateur permettant de déduire la solution de navigation par intégration successive des mesures accélérométriques et gyrométriques. Nous présentons ci-après les principaux repères utilisés en navigation terrestre ainsi que les types de centrales inertielles. 3.1.1 Repères de navigation Repère inertiel (inertial frame) Le repère terrestre (O, xi , yi , zi) a pour origine le centre de la Terre O et ses axes ont une direction fixe par rapport aux étoiles. Repère terrestre Le repère terrestre (O, xT , yT , zT ), également appelé ECEF (Earth-Centered, Earth-Fixed) , est lié à la Terre et est en rotation avec celle-ci. Il est centré sur la Terre et les 3 vecteurs du trièdre xT , yT et zT sont tels que : − xT est contenu dans le plan équatorial et passe par le méridien de Greenwich, − zT est dirigé vers le pôle nord, − yT complète le trièdre direct. Trièdre géographique local (navigation frame) Le trièdre géographique local (TGL) est le repère de navigation. Il a pour origine la projection P du centre de masse du mobile sur la surface de la terre et ses axes sont dirigés respectivement vers le Nord, l’Est et selon la verticale descendante. Dans toute la suite on notera (n, e, d) ce repère.60 3. Systèmes de navigation inertielle et recalage radio-altimétrique Figure 3.1 – Repères de référence (ϕ et λ désignent ici respectivement la latitude et la longitude géographique) Trièdre lié au mobile (body frame) Il s’agit du repère (M, xb, yb, zb) lié à l’engin. Son origine M est un point quelconque du véhicule et n’est pas nécessairement confondu avec son centre de gravité G. L’orientation des axes est conventionnelle : − l’axe xb est dirigé selon l’axe de symétrie longitudinal de l’engin et est orienté vers l’avant, − l’axe zb est perpendiculaire au plan de la voilure et dirigé vers l’intrados du corps, − l’axe yb complète le trièdre direct. Les angles d’attitudes, notés ϕ, θ et ψ, définissent l’orientation du mobile par rapport au TGL. ϕ désigne le roulis (roll), θ le tangage (pitch) et ψ le lacet (yaw). 3.1.2 Capteurs inertiels Il existe deux types de centrales inertielles qui se distinguent par la façon dont la plate-forme de capteurs est orienté par rapport au boitier : les centrales à plate-forme stabilisée et les centrales à composants liés. Les 2 types de centrales comportent 3 accéléromètres et 3 gyromètres. Les accéléromètres fournissent l’accélération non-gravitationnelle du véhicule par rapport au repère inertiel, c’est-à-dire l’accélération absolue moins la pesanteur. Le vecteur résultant est appelé force spécifique fa . Les gyromètres mesurent la vitesse angulaire de l’engin par rapport au repère inertiel. Centrales à plate-forme stabilisé (gyrostabilized platforms) Sur ce type de centrales, les accéléromètres sont installés sur une plate-forme mécanique isolée des mouvements angu-61 laires du boitier. Les gyromètres permettent d’asservir la plate-forme en position horizontale de telle sorte que les accéléromètres ont leurs axes parallèles au TGL [106]. Les centrales à plate-forme stabilisée sont relativement précises mais la présence d’un système mécanique d’asservissement les rend plutôt encombrantes. Centrales à composants liées Dans ce type de centrale, également appelée centrale inertielle strap-down, les capteurs inertiels sont directement fixés à la structure rigide du boitier de la centrale. Les 3 gyromètres et les 3 accéléromètres fournissent donc des mesures dans le repère engin (G, xb, yb, zb) lié au mobile. Les accélérations sont projetées dans le TGL par intégration des vitesses angulaires issues des gyromètres. Les centrales à composants liés sont plus simples mécaniquement que les centrales à plate-forme stabilisée, ce qui les rend peu encombrantes et exige moins de maintenance mais nécessite un calculateur plus puissant. Aujourd’hui, la puissance des calculateurs embarqués fait qu’elles sont plus répandues que les centrales à plate-forme stabilisée. Dans la suite de l’exposé, nous considérons un véhicule muni d’une centrale à composants liés. Le rôle du calculateur est de projeter les mesures des capteurs inertiels dans le trièdre géographique local afin d’obtenir par intégration les paramètres cinématiques du véhicule. 3.2 Les équations de la navigation inertielle Les paramètres cinématiques de l’aéronef sont : − la position géographique (λ, φ, z) où λ est la latitude géographique, φ la longitude et z l’altitude. Ces 3 composantes sont exprimées dans le trièdre de navigation. − la vitesse de déplacement de son centre de masse, exprimée dans le TGL et notée v = (vn, ve, vd) − l’attitude, représentée par les angles d’Euler ϕ, θ et ψ. Dans une centrale inertielle à composants liés, les mesures de forces spécifiques et de vitesses de rotation se font dans le trièdre engin (M, xb, yb, zb), M étant l’origine de la centrale inertielle. La vitesse du centre de masse vG est reliée à la vitesse du point M par la relation : vG = vM − (ωm − ωie) ∧ GM (3.1) où ωie est le vecteur de la rotation de la terre et ωm est le vecteur de vitesse angulaire mesuré par les gyromètres (vitesse de rotation absolue). Afin de déterminer l’ensemble des paramètres cinématiques de l’aéronef, on représente le globe terrestre comme un ellipsoïde de révolution dont l’axe de symétrie est confondu avec l’axe de révolution autour des pôles. Cet ellipsoïde est défini par son demi grand axe a et son demi petit axe b. Son excentricité e et son aplatissement fap sont définis par : e = s 1 − b 2 a 2 et fap = 1 − b a62 3. Systèmes de navigation inertielle et recalage radio-altimétrique Les paramètres de l’ellipsoïde sont fournies par le modèle WGS84 ( World Geodetic System 1984). Les valeurs numériques sont : a = 6378137 m (3.2) fap = 1/298.257223563 (3.3) b = 6356752.3 m (3.4) 3.2.1 Equation d’attitude L’orientation du mobile par rapport au TGL est définie par les angles d’attitudes ϕ, θ et ψ (respectivement roulis, tangage et lacet). Ces angles permettent d’obtenir la matrice des cosinus directeurs Rn2b qui correspond à la matrice de rotation qui fait passer du TGL (n, e, d) au repère engin (xb, yb, zb). Rn2b =   cos θ cos ψ cos θ sin ψ − sin θ − cos ϕ sin ψ + sin ϕ sin θ cos ψ cos ϕ cos ψ + sin ϕ sin θ sin ψ sin ϕ cos θ sin ϕ sin ψ + cos ϕ sin θ cos ψ − sin ϕ cos ψ + cos ϕ sin θ sin ψ cos ϕ cos θ   (3.5) On définit également la matrice de rotation Rb2n qui fait passer du repère engin au repère de navigation. On a donc : Rb2n = R T n2b = R −1 n2b Soit ω la vitesse angulaire de rotation du mobile par rapport au repère TGL et soit p, q, r ses composantes exprimées dans le repère lié à l’avion. Les angles d’attitude sont reliés aux vitesses angulaires p, q, r selon l’équation différentielle suivante :   ψ˙ ˙θ ϕ˙   =   0 sin ϕ cosθ cos ϕ cosθ 0 cos ϕ − sin ϕ 1 tan θ sin ϕ tan θ cos ϕ     p q r   (3.6) La vitesse angulaire de l’aéronef par rapport au TGL, est égale à ω = ωm − ρ − ωie ωm est la vitesse angulaire mesurée par les gyromètres dans le repère engin tandis que ρ représente la vitesse angulaire de rotation du TGL par rapport à la Terre. Les composantes de ρ et ωie sont définies dans le repère TGL selon :    ρn = ve Rφ+z ρe = − vn Rλ+z ρd = − ve Rφ+z tan(λ) (3.7) et    ω n ie = ω0 cos(λ) ω e ie = 0 ω d ie = −ω0 sin(λ) (3.8)63 avec ω0 = 7.29 × 105 rd.s−1 est la vitesse de rotation propre du globe terrestre. Rλ est le rayon de courbure de la Terre dans le plan méridien (rayon nord). Rλ = a 1 − e 2 (1 − e 2 sin2 (λ))3/2 (3.9) Rφ est la grande normale de l’ellipsoïde (rayon est). Rφ = a (1 − e 2 sin2 (λ))1/2 (3.10) L’équation du mouvement angulaire d’un corps rigide en rotation permet d’obtenir l’équation différentielle de la matrice des cosinus directeurs : R˙ n2b = −[ωm×]Rn2b + Rn2b[(ρ + ωie)×] (3.11) où ωm =  ωx ωy ωz T est le vecteur des vitesses angulaires mesurées par les gyromètres et [ωm×] est la matrice anti-symétrique définie par : [ωm×] =   0 −ωz ωy ωz 0 −ωx −ωy −ωx 0   (3.12) 3.2.2 Equation de vitesse du mobile L’équation différentielle régissant la vitesse du mobile et projetée dans le trièdre de navigation est v˙ = Rb2nγm + g − (2ωie + ρ) ∧ v (3.13) γm est le vecteur d’accélération spécifique mesurée par les accéléromètres exprimé dans le repère engin. g est la pesanteur terrestre. Il est égal à la gravité ΦT de la Terre diminué de l’accélération d’entraînement due à la rotation de celle-ci. g = ΦT − ωie ∧ (ωie ∧ OM) (3.14) Dans le modèle WGS84, la norme de g à la surface de la Terre ne dépend que de la latitude λ et de l’altitude z via la formule suivante : g ≈ 9.7803 + 0.0519 sin2 (λ) − 3.08 × 10−6 z (3.15) où z est exprimé en mètres. En projetant l’équation (3.13) sur le TGL, et compte tenu des égalités (3.7) et (3.8), il vient :   v˙n v˙e v˙d   = Rb2n   γx γy γz   +   0 0 g   +   − v 2 e Rφ+z tan λ − 2ω0ve sin λ + vnvd Rλ+z 1 Rφ+z (vevn tan λ + vevd) + 2ω0(vn sin λ + vd cos λ) − v 2 n Rφ+z − v 2 e Rλ+z − 2ω0ve cos λ   (3.16) où  γx γy γz T est le vecteur des accélérations mesurées par les accéléromètres.64 3. Systèmes de navigation inertielle et recalage radio-altimétrique 3.2.3 Equation de position L’équation d’évolution de la position du mobile s’obtient par intégration de l’équation de vitesse (3.16) :   λ˙ φ˙ z˙   =   1 Rλ+z 0 0 0 1 (Rφ+z) cos(λ) 0 0 0 −1     vn ve vd   (3.17) 3.3 Modélisation de l’erreur de navigation La centrale inertielle calcule la solution de navigation par intégration successives des données accélérométriques et gyrométriques. Des erreurs peuvent apparaître lorsque l’initialisation (alignement) de la centrale est erronée ou inévitablement parce que les capteurs ont une précision limitée. Les erreurs de navigation sont dues à la juxtaposition d’erreurs de projection et d’erreurs d’inté- gration. En effet, une mesure erronée des gyromètres donnera une matrice d’attitude Rn2b fausse. La projection des mesures des accéléromètres se faisant grâce à cette matrice d’attitude, il en ré- sultera une accumulation de l’erreur due à une mauvaise projection et de celle due à l’imperfection des accéléromètres. L’intégration de cette projection entraînera une dérive des composantes de vitesse et donc des coordonnées de position. Par ailleurs, le modèle de pesanteur que nous avons considéré dépend, en ce qui concerne la direction, de la position horizontale du véhicule, et en ce qui concerne l’intensité, de son altitude. Toute erreur sur la position du véhicule entraîne donc une mauvaise estimation de la pesanteur et se répercute sur les futures estimations de vitesses et de position. Ce couplage, appelé phénomène de Schüler, se traduit par une oscillation des erreurs de position horizontale et une divergence de la position verticale. Nous rappelons ci-après les équations d’évolution des erreurs de position, vitesse et attitude. 3.3.1 Variables d’erreurs Dans la suite, les variables entachées d’erreurs seront notées par un tilde. Ces variables représentent par exemple la position inertielle ou les mesures des accéléromètres. On notera δu le vecteur d’erreur correspondant à la différence entre la valeur vraie ou idéale de u et la valeur erronée u˜. δu = u − u˜ Erreur de position On définit l’erreur de position δx comme l’écart métrique entre la position inertielle et la position vraie dans le repère TGL. Ses coordonnées sont :    δxn = (Rλ + z)δλ δxe = (Rφ + z) cos(λ)δφ δxd = −δz (3.18) où δλ, δφ et δz sont les erreurs de position géographiques dans le trièdre géographique local.65 Erreur de vitesse On définit δv = v − v˜ comme l’erreur de vitesse dans le repère TGL. Erreur d’attitude Soit δφ, δθ et δψ les erreurs commises sur les angles d’attitude. Si on note R˜ n2b la matrice des cosinus directeurs dont dispose la centrale inertielle (Rn2b étant la matrice exacte), on a la relation suivante [5], valable dans l’approximation des petits angles : Rn2b = R˜ n2b   1 −δψ δθ δψ 1 −δϕ −δθ δϕ 1   (3.19) On définit la matrice antisymétrique [Φ×] comme [Φ×] =   0 −δψ δθ δψ 0 −δϕ −δθ δϕ 0   L’équation (3.19) est donc équivalente à : Rn2b = R˜ n2b(I3 + [Φ×]) (3.20) Erreurs de mesure des capteurs inertiels On définit l’erreur de mesure des accéléromètres comme δγ = γ − γ˜ (3.21) où γ˜ est la mesure accélérométrique fournie par la centrale inertielle. De la même façon l’erreur de mesure des gyromètres est : δω = ω − ω˜ (3.22) Erreur d’orientation du TGL Soit B la matrice de rotation qui fait passer du repère terrestre au repère de navigation. B dépend de la latitude et longitude du véhicule de la façon suivante : B =   − cos φ sin λ − sin φ sin λ cos λ − sin φ cos φ 0 − cos φ cos λ − sin φ cos λ − sin λ   (3.23) Ainsi, une erreur sur les coordonnées géographiques a une répercussion sur la matrice B de sorte que la matrice B˜ dont dispose la centrale s’exprime sous la forme. B = (I − [δΘ×])B˜ (3.24) avec [δΘ×] =   0 −δΘn δΘe δΘd 0 −δΘn −δΘe δΘn 0   (3.25)66 3. Systèmes de navigation inertielle et recalage radio-altimétrique δΘn, δΘe et δΘd sont trois petits angles décrivant l’erreur d’orientation du TGL en fonction de l’erreur de position :    δΘn = δxe Rφ+z δΘe = − δxn Rλ+z δΘd = − tan(λ)δxe Rφ+z Nous donnons ci-après les équations de propagation des erreurs de navigation. Elles sont obtenues par différentiation au premier ordre des équations de la navigation. Dans un premier temps, ces équations correspondent à un modèle dit angle-phi, pour lequel les variables d’erreurs δx, δv sont projetées dans le repère lié à la Terre [5]. Ensuite, nous présentons la modélisation dite angle-psi [5], qui permet d’éliminer certaines variables intermédiaires du problème. 3.3.2 Équation d’évolution de l’erreur d’attitude Rappelons que Φ =  δφ δθ δψT est le vecteur des erreurs d’attitude en repère TGL. Notons g = Rb2nδωm la projection des erreurs des gyromètres dans le repère TGL. On introduit également δρ et δωie les erreurs d’estimation de vitesse angulaire de ρ et ωie. L’équation d’évolution du vecteur des erreurs d’attitude est alors Φ˙ = −(ρ + ωie) ∧ Φ − g + δρ + δωie (3.26) 3.3.3 Équation d’évolution de l’erreur de vitesse Soit f = Rb2nγm et a = Rb2nδγm les projections respectives de la mesure accélérométrique et de l’erreur correspondante dans le TGL. L’équation d’évolution du vecteur des erreurs de vitesse projetée dans le TGL est δv˙ = −Φ ∧ f + a + δg − (ρ + 2ωie) ∧ δv − (δρ + 2δωie) ∧ v (3.27) où δg ≈  0 0 − 2g a δzT est le vecteur d’erreur de la pesanteur qui a une contribution nulle dans le plan horizontal. De plus, la composante sur l’axe vertical du TGL, gD, a une erreur δgD qui s’exprime comme δgD = ∂g ∂z δz + ∂g Rφ∂λRφδλ Une analyse numérique montre que le terme ∂g Rφ∂λRφδλ peut être négligé, ce qui réduit δgD à ∂g ∂z δz. 3.3.4 Équation d’évolution de l’erreur de position L’équation d’évolution de l’erreur de position fait intervenir un terme du à l’erreur d’estimation de la vitesse et un terme du à une mauvaise estimation du TGL. δx˙ = δv − ρ ∧ δx + δΘ ∧ v (3.28)67 3.3.5 Modélisation angle-psi pour les équation d’erreurs de navigation Une analyse des équations (3.26), (3.27) et (3.28) montre que les variables δρ, δωie et δΘ doivent être exprimées en fonctions des paramètres cinématiques δx, δv et δΦ afin d’être intégrées, ce qui est possible, mais résulte en un système d’équations différentielles couplées peu commode à manipuler. La modélisation dite angle-psi permet d’obtenir un ensemble d’équations plus simple d’utilisation en introduisant les variables suivantes : δv 0 = δv + δΘ ∧ v Ψ = Φ − δΘ (3.29) On aboutit alors au système d’équations suivant [28] :    Ψ˙ = −(ρ + ωie) ∧ Ψ − g δ ˙v 0 = −Ψ ∧ f + a + δg 0 − (ρ + 2ωie) ∧ δv 0 δx˙ = δv 0 − ρ ∧ δx (3.30) 3.3.5.1 Modélisation des erreurs des capteurs inertiels L’erreur accélérométrique δγm est modélisée de la manière suivante : δγm = ba + Kaγm + ξa (3.31) où − ba est un terme de biais accélérométrique, − Ka est un facteur d’échelle, − ξa est un processus de Wiener [38]. L’erreur gyrométrique est modélisée de la même façon : δωm = bg + Kgωm + ξg (3.32) − bg est un terme de biais gyrométrique, − Kg est un facteur d’échelle propre au gyromètre, − ξg est un processus de Wiener. Les biais ba et bg sont communément modélisés par un processus de Markov du premier ordre noté b : ˙b = −1 τ b + ν (3.33) où − τ est la période de corrélation du processus b, − ν est un processus de Wiener.68 3. Systèmes de navigation inertielle et recalage radio-altimétrique Figure 3.2 – Mesure altimétrique sur une surface plane : évolution de la puissance P reçue par le radar 3.4 Radio-altimétrie et architecture de la navigation hybridée 3.4.1 Généralités sur les radio-altimètres Un radio-altimètre permet de mesurer la distance entre un mobile donné et le sol, appelée hauteur-sol. L’altimètre émet une onde électromagnétique et reçoit le signal renvoyé par les cibles situées sur le trajet de l’onde (surfaces terrestres) avec un décalage temporel. La distance h entre l’objet en vol (porteur de l’instrument) et le sol est déduite du temps de propagation aller-retour (t0) d’une onde électromagnétique (de célérité c) entre l’objet et la surface du sol par la relation : h = ct0 2 (3.34) Il existe deux classes de fonctionnement pour les radio-altimètres, qui se distinguent par la largeur de la zone éclairée au sol par son faisceau d’antenne : − les altimètres pour lesquels la surface éclairée au sol est limitée par l’ouverture θ0 du faisceau de l’antenne (beam-limiter altimeters), − les altimètres dont la durée d’impulsion courte limite la surface de la zone de sol reçue dans une cellule de résolution (pulse-limited altimeter). La figure 3.2 représente l’évolution d’une impulsion électro-magnétique et la courbe d’évolution de la puissance reçue par le radar, pour une mesure altimétrique effectuée sur une surface69 900 1000 1100 1200 1300 1400 1500 1600 1700 m hauteur−sol réelle mesure issue d’un modèle RA Figure 3.3 – Comparaison de la hauteur-sol réelle et d’une mesure simulée à partir d’un modèle d’antenne RA réaliste. Le profil considéré est une portion de terrain de 20 km. plane (un océan,. . .) dans le cas d’un radio-altimètre à durée d’impulsion courte. La surface éclairée par l’onde est l’intersection de la coquille sphérique, qui représente l’impulsion radar, par la surface observée. L’impulsion émise ayant une durée finie, cette surface passe d’un point à un disque, puis à un anneau de surface constante. La puissance renvoyée par la surface est plus faible à des angles d’incidences plus grands, d’où la décroissance observée de la puissance reçue. Le radio-altimètre a tendance à indiquer une distance qui diffère de la hauteur-sol d’autant plus que le lobe de l’antenne radar est large, même s’il est orienté verticalement vers le sol. Une illustration de cette observation est donnée par la figure 3.3 où est représentée la hauteur-sol théorique le long d’une trajectoire donnée et la mesure issue d’un modèle radio-altimétrique réaliste. La distance indiquée est plutôt la distance la plus courte entre le mobile et le relief ce qui introduit un biais. Idéalement ceci doit être pris en compte dans le développement de filtres de recalage réalistes en modifiant le modèle d’observation décrivant la mesure altimétrique. Cependant dans cette thèse, la modélisation retenue ne tient pas compte de cette erreur systématique. 3.4.2 Principe de la navigation hybridée La navigation hybridée consiste à coupler un capteur indépendant des senseurs inertiels avec la centrale inertielle afin d’augmenter la précision et la fiabilité de la solution de navigation. Une architecture d’hybridation permet donc d’effectuer un recalage de la navigation inertielle. Parmi les capteurs couramment utilisées pour le recalage d’aéronef, on peut citer : − le GPS (Global Positioning System), système de positionnement par satellites fondé sur la triangulation. Le système GPS est géré par les autorités américaines et assure une précision dans le pire des cas de 7,8 mètres à 95% de certitude (GPS civil) [1]. − le radar à synthèse d’ouverture (SAR, Synthetic Aperture Radar) qui permet d’obtenir une cartographie de la zone de relief survolé et d’effectuer le recalage par comparaison avec une carte de référence embarquée [81]. − le radio-altimètre, présenté précédemment, offre la possibilité de se recaler en comparant les mesures successives de hauteur-sol avec un Modèle Numérique de Terrain (MNT)70 3. Systèmes de navigation inertielle et recalage radio-altimétrique embarqué. Les avantages principaux du radio-altimètre par rapport au GPS sont essentiellement son fonctionnement autonome et la difficulté de brouillage des signaux issue de son antenne-radar. Capteurs inertiels Navigation inertielle Filtre Radio-altimètre Σ Navigation recalée état inertiel + erreurs inertielles − Figure 3.4 – Architecture de navigation hybride 3.5 Approches algorithmiques pour le recalage altimétrique 3.5.1 Recalage altimétrique par bloc Le recalage altimétrique par bloc consiste à acquérir une suite de mesures altimétriques afin d’inférer la position courante par comparaison de profils d’altitude. Parmi les approches de recalage par bloc, on peut citer le procédé TERCOM (Terrain Contour Matching) fondé sur une mesure de corrélation entre un vecteur de mesures de hauteurs-sol et un profil de terrain de même longueur. Si h = (h1, . . . , hp) est une suite de p mesures RA consécutives et H désigne la matrice représentant le modèle numérique de terrain, une mesure de corrélation possible est [6] : ck,m = 1 p X p n=1 |hn − Hm,n+k| (3.35)71 La position estimée est celle maximisant la corrélation ck,m : ( ˆk, mˆ ) = arg max (k,m) ck,m (3.36) Le système TERCOM est applicable aux véhicules dont les manoeuvres sont rares et limitées ce qui contraint son utilisation. De plus, il suppose une connaissance précise des vitesses de l’aéronef. 3.5.2 Recalage par banc de filtres de Kalman Le système SITAN (Sandia Inertial Terrain Aided Navigation), développé à la fin des années 70 par Sandia Laboratories, est le premier à adopter une approche récursive au problème de navigation par corrélation de terrain, contrairement à TERCOM qui procède par "batch". La version d’origine utilise un filtre de Kalman étendu modifié, dans lequel est introduit une linéarisation stochastique adaptative censée atténuer les effets des fortes non-linéarités du relief [57]. Par la suite, des modifications ont été apportées à l’algorithme afin d’éviter les divergences du filtre : dans la version de Hollowel et al. [56], un banc de filtre de Kalman remplace l’unique EKF. L’idée est que les filtres initialisés au voisinage de la position vraie ont moins de chance de diverger. 3.5.3 Du Point-Mass Filter aux filtres particulaires Le Point-Mass Filter (PMF) [11, 3], est un filtre bayésien capable de traiter les ambiguïtés de terrain inévitable en début de recalage lorsque l’incertitude est grande. A notre connaissance, la première application du PMF au recalage altimétrique date des travaux de Bergman sur l’estimation bayésienne pour la navigation et le pistage [7]. Le PMF suppose que l’espace d’état soit discrétisé selon une grille déterministe x (1), . . . , x(N) . Les équations du filtrage linéaire sont alors exprimées sur cette grille en introduisant des poids ω (1) k , . . . , ω (N) k qui représente les probabilités p(xk = x (i) |y0:k), i = 1, . . . , N . En pratique, le PMF peut s’implémenter aisément pour des vecteurs de petite dimension, c’est-à-dire inférieure ou égale à 3 : au delà, le maillage régulier de l’espace devient inefficace. Ainsi, dans [7], les auteurs s’intéressent au recalage de la position horizontale, ayant supposé que l’altitude est fournie par un baro-altimètre. En outre, le calcul récursif des poids devient extrêmement couteux puisqu’il revient à une convolution discrète en dimension d [51]. Concrètement cela signifie que le PMF est envisageable pour le recalage de véhicules dont les trois composantes de vitesse sont connues avec une précision suffisante. Une autre problématique du PMF est celle de l’adaptation de la résolution du maillage par rapport au support de la densité a posteriori p(xk|y0:k) : en début de recalage, l’incertitude sur x est grande donc une maille de faible résolution suffit tandis que dès que p(xk|y0:k) se résume à quelques modes, il vaut mieux augmenter la résolution de la maille. Bergman a proposé dans ses travaux de thèse [6] la première étude du filtre particulaire standard (SIR) pour le recalage radio-altimétrique. Plus récemment, on peut citer les travaux de : − K.Dahia [28] qui a développé et appliqué le KPKF (Kernel Particle Kalman Filter) pré- senté au chapitre 2 au recalage d’aéronefs. Le KPKF combine la philosophie des mé- thodes particulaires classiques avec le filtre de Kalman, mais contrairement au RBPF72 3. Systèmes de navigation inertielle et recalage radio-altimétrique (Rao-Blackwellized Particle Filter), il ne suppose pas de structure partiellement linéaire de l’équation de mesure. L’avantage algorithmique du KPKF est sa robustesse aux grandes incertitudes initales. − M. Flament [41] a proposé une étude comparative des filtres particulaires gaussiens avec le filtre de Kalman étendu et le Point Mass Filter. − La thèse de Nordlund [93] propose une étude des performances du RBPF pour le recalage altimétrique. 3.5.4 Recalage altimétrique continu Le recalage altimétrique continu (RAC) est une technique de recalage utilisée lorsque l’erreur de position initiale a été réduite par un algorithme de type TERCOM, SITAN ou particulaire. Le RAC s’appuie sur un filtre de Kalman étendu pour estimer les variables d’état du véhicule : les paramètres cinématiques (3 erreurs de position , 3 erreurs de vitesse et 3 erreurs d’angles d’attitude) et éventuellement les défauts des capteurs (bias gyrométriques et accélérométriques).73 Conclusion du Chapitre 3 Dans ce chapitre, la problématique de navigation inertielle est introduite. Après avoir rappelé les principales équations régissant l’évolution des paramètres cinématiques, nous avons exposé les équations d’évolution des erreurs de la navigation inertielle. La navigation hybridée permet de fusionner les informations fournies par la centrale inertielle avec le filtre de recalage afin de fournir un estimation recalée des variables d’états du véhicule. Le chapitre suivant est consacré au développement d’un nouveau filtre particulaire de recalage permettant de lutter contre les difficultés soulevées par les ambiguïtés de terrain.74 3. Systèmes de navigation inertielle et recalage radio-altimétrique75 Chapitre 4 Développement de filtres particulaires adaptés aux multimodalités Introduction Nous avons vu dans le chapitre 2 que l’une des limitations du filtre particulaire concernait la gestion des lois conditionnelles multimodales. En effet, la phase de ré-échantillonnage peut provoquer la perte de l’un des modes de la loi conditionnelle (voir 2.5). Dans l’application du recalage par mesures altimétriques, la présence de plusieurs modes dans la loi a posteriori pk|k = p(xk|y0:k) est due à l’ambiguïté du terrain survolé. La perte du mode correspondant à la vraie position provoquant quasi-systématiquement la divergence du filtre particulaire, il est souhaitable de mettre en oeuvre un algorithme permettant de limiter cette occurrence. Dans cette thèse, nous proposons d’adopter la représentation sous-forme d’un modèle de mélange de lois conditionnelles, c’est-à-dire que le filtre pk|k est formulé sous la forme suivante : pk|k = X Mk j=1 αj,kpj (xk|y0:k) (4.1) Cette approche a été introduite par Vermaak et. al dans leurs travaux sur le suivi de joueurs de football dans une séquence vidéo [118]. S’inspirant de [118], Okuma a utilisé cette modélisation dans le cadre du pistage vidéo de joueurs de hockey [95]. La particularité de [95] est de détecter les joueurs par un classifieur à partir de données d’apprentissage composées de joueurs de hockey. Après la phase de détection, une composante pj (xk|y0:k) est affectée à chaque joueur détecté. Cela permet de gérer l’apparition ou la disparition de joueurs d’une image à l’autre. Dans l’approche de Vermaak[118], un mode peut correspondre à plusieurs joueurs proches. Pour regrouper les particules correspondant au même mode, Vermaak et ses co-auteurs utilisent l’algorithme de clustering k-means [80], qui nécessite une connaissance a priori du nombre de modes. Nous reprenons dans cette thèse la formulation (4.1) afin de conserver au mieux les modes de la loi a posteriori. Les contributions du chapitre sont les suivantes : − l’utilisation de l’algorithme mean-shift [19] pour la détermination automatique des modes et des clusters de particules,76 4. Développement de filtres particulaires adaptés aux multimodalités − la gestion automatique du nuage de particules par suppression des clusters peu vraisemblable et ré-allocation des particules supprimées aux clusters restants, − l’introduction d’une méthode de régularisation locale, − l’échantillonnage de particules selon une série de densités d’importances centrées sur les modes de la densité a posteriori 4.1 Détermination des modes de la loi a posteriori par clustering Afin d’utiliser la modélisation (4.1), il nous faut identifier à chaque instant l’ensemble des particules associé à la même composante pj de manière à écrire l’approximation suivante : pk|k ≈ pˆk|k = X Mk j=1 αj,k X i∈Ij,k ω i k δx i k (4.2) C’est-à-dire que pj ≈ P i∈Ij,k ω i k δx i k où, idéalement, chaque pj est unimodale. Le regroupement des particules rattachées au même mode se fait par une méthode de clustering. De manière générale, le clustering consiste à partitionner un ensemble de points X = {x i , i = 1, . . . , N} en M sous-ensembles C1, C2, . . . , CM, ou clusters, selon un critère de similarité de sorte que les éléments appartenant au même cluster soient plus semblables (en un certain sens) que les éléments d’autres clusters. Il existe une grande variété de types d’algorithmes de clustering (mesure de distance, décomposition hiérarchique, réseau de neurones,. . .) sur lesquels nous ne nous attarderons pas : le lecteur intéressé pourra par exemple consulter un état de l’art détaillé dans [60] et [124]. A titre d’exemple, considérons l’algorithme k-means [80]. La mesure de similarité entre deux points x i et x j (i 6= j) de R 2 est la distance euclidienne kx i −x jk2. Les clusters sont alors déterminées en minimisant la somme des écarts quadratiques intra-classes : arg min C1,...,CM X M i=1 X xj∈Ci x j − µ(Ci) 2 où µ(Ci) est la moyenne empirique des points appartenant à Ci et les Ci forment une partition de X . L’utilisation de l’algorithme k-means n’est pas recommandée dans l’application de recalage car nous ignorons le nombre Mk de modes de pˆk|k. Par ailleurs, cet algorithme définit des clusters convexes, bien qu’a priori les clusters recherchés aient une forme quelconque. En revanche, l’algorithme mean-shift, basé sur l’estimation de densité par noyau, permet de déterminer les clusters de points correspondant au même mode, sans connaître Mk. C’est cette méthode que nous retenons afin d’identifier les ensembles Ij,k, j = 1, . . . , M ci-dessus. A chaque ensemble Ij,k sera associé le cluster Cj,k constitué de l’ensemble des particules d’indices appartenant à Ij,k, i.e. : Cj,k = n x i k , i ∈ Ij,ko (4.3)77 Dans toute la suite, on notera ck la fonction qui associe l’indice i d’une particule à l’indice j du cluster auquel il appartient, k désignant la variable de temps courant. Ainsi, ∀ i ∈ J0, NK, ck(i) = j ⇔ x i k ∈ Cj,k (4.4) Enfin on désignera par Xk l’ensemble des particules à l’instant k. Xk = n x i k , i = 1, · · · , No (4.5) 4.1.1 L’algorithme mean-shift clustering L’algorithme mean-shift est une méthode populaire de clustering utilisée notamment en segmentation d’image, pistage vidéo ou débruitage d’image. Les fondements de cette méthode se trouvent dans les travaux de Fukunaga et Hostetler [45] dans le cadre de l’estimation du gradient d’une fonction. Ils ont été ensuite repris dans [19] puis par Cominiciu et Meer [21] pour la segmentation d’image. La popularité du mean-shift est due au fait qu’il ne nécessite pas de connaître le nombre de clusters a priori. De plus, il permet de trouver des clusters de forme quelconque. Le mean-shift s’appuie sur l’identification des modes de la densité lissée d’un nuage de point. La localisation de ces modes est effectuée par une recherche itérative des zéros du gradient de la densité lissée. 4.1.1.1 Estimation de densité par noyau Etant donné un ensemble de N points x i , i = 1, . . . , N, dans R d , on rappelle que l’estimateur de densité par noyaux est défini par : ˆf(x) = 1 N X N i=1 KH(x − x i ) (4.6) où KH(x) = det(H) 1/2K(H −1/2x) et H est une matrice d×d symétrique définie positive, K une fonction (noyau) à support compact telle que : Z K(x) dx = 1 Z xK(x) dx = 0 Z kxk 2 K(x) dx = cKId lim kxk→+∞ kxk dK(x) = 0 (4.7) Une classe importante de noyaux est celle des noyaux radialement symétriques [21] i.e. tels que : K(x) = ck,dk(kxk 2 ) (4.8) où k est une fonction définie sur R+ et ck,d > 0 est telle que l’intégrale de K sur R d vaut 1. Dans toute la suite, on considère que K est radialement symétrique. En pratique, la matrice H est choisie sous la forme H = h 2 Id, où h > 0 est le facteur de lissage78 4. Développement de filtres particulaires adaptés aux multimodalités global, paramètre que nous avons introduit dans la section 2.3 dans le cadre du filtre particulaire régularisé. L’estimateur de densité à noyaux devient donc : ˆf(x) = 1 Nhd X N i=1 K x − x i h ! (4.9) Notons qu’il est également possible d’avoir un estimateur à noyau où le facteur de lissage dépend des données x i [9] : on parle alors de facteur de lissage local. C’est une stratégie préférable lorsque le nuage de points comporte plusieurs clusters de tailles différentes. Dans ce cas, l’expression de l’estimateur de densité est : ˆf(x) = X N i=1 1 Nhd i K x − x i hi ! (4.10) avec hi = h(x i ). L’un des intérêts d’une fenêtre dépendant des données est que le biais de l’estimateur est inférieur à celui de l’estimateur à fenêtre constante [22] pour un certain choix des hi = h ∗ i . Cependant, la détermination des h ∗ i dans le cas multi-dimensionnel est un problème non encore résolu [12]. Rappelons que la qualité de l’estimateur ˆf est classiquement mesurée par l’erreur quadratique intégrée moyenne, ou MISE (Mean Integrated Squared Error) définie par : MISE = E Z  f(x) − ˆf(x) 2 dx  (4.11) Souvent, seule une approximation asymptotique, dénomée AMISE (Asymptotic Mean Integrated Squared Error), est disponible. Lorsque N tend vers +∞ et h tend vers 0 moins vite que 1 N , l’AMISE est minimisée par le noyau d’Epanechnikov (cf. eq. (2.27)) [120, p.104]. La première étape de l’algorithme mean-shift consiste à déterminer les modes de la densité sous-jacente f. Pour cela, on recherche les zéros du gradient ∇f à l’aide de l’estimateur ˆf(x) défini par (4.9). 4.1.1.2 Estimation du gradient de la densité L’estimateur donnée par l’equation (4.9) peut être réécrit comme suit : ˆf = ck,d Nhd X N i=1 k   x − x i h 2   (4.12) Un estimateur du gradient de la densité f est obtenu en calculant le gradient de ˆf : ∇ˆ f(x) = ∇ ˆf(x) = 2ck,d Nhd+2 X N i=1  x − x i  k 0   x − x i h 2   (4.13) En posant g(x) = −k 0 (x), on peut réécrire (4.13) sous la forme :79 ∇ˆ f(x) = ∇ ˆf(x) = 2ck,d Nhd+2 X N i=1  x i − x  g   x − x i h 2   (4.14) = 2ck,d Nhd+2    X N i=1 g   x − x i h 2         PN i=1 x i g  x−x i h 2  PN i=1 g  x−xi h 2  − x    (4.15) En pratique pour les noyaux usuels (Epanechnikov, gaussien), PN i=1 g  x−x i h 2  > 0. Le terme 2ck,d Nhd+2 PN i=1 g  x−x i h 2  est proportionnel à l’estimateur de densité en x calculée avec un noyau G - appelé kernel shadow - tel que G(x) = cg,dg(kxk 2 ) où cg,d est une constante de normalisation : ˆfg = cg,d Nhd X N i=1 g   x − x i h 2   (4.16) Le deuxième terme est appelé vecteur mean-shift : mh,G(x) = PN i=1 x i g  x−x i h 2  PN i=1 g  x−xi h 2  − x (4.17) En combinant les expressions (4.15) et (4.16), le vecteur mean-shift s’exprime comme mh,G(x) = 1 2 h 2 cg,d ck,d ∇ ˆfh,K(x) ˆfh,G(x) (4.18) Lorsque l’estimateur à noyau est défini grâce à une matrice de lissage H et que le noyau K est gaussien, le vecteur mean-shift s’écrit sous la forme mH,G(x) = H ∇ ˆfh,K(x) ˆfh,G(x) (4.19) L’équation (4.19) suggère que le vecteur mean-shift pointe vers la direction de plus fort gradient de densité et peut donc être utilisé dans un schéma de recherche des modes de la densité f. En particulier, le gradient ∇ˆ f(x) va s’annuler lorsque ce vecteur sera nul. Sous certaines conditions sur le noyau K, la suite {y i j , j ≥ 1} définie par : ( y i 1 = x i y i j+1 = y i j + mh,G(y i j ) si j ≥ 1 (4.20) converge vers une limite y i ∞ correspondant à un maximum local de la densité ˆf [21]. Cette suite est définie pour chaque donnée x i , i = 1, . . . , N et initialisée par x i . Dans la suite on80 4. Développement de filtres particulaires adaptés aux multimodalités appellera procédure mean-shift le calcul de cette suite pour 1 ≤ i ≤ N. En pratique, lorsque le facteur de lissage h est adéquatement choisi, la procédure mean-shift peut converger en quelques itérations (typiquement entre 5 et 20) [43]. La recherche de la limite peut alors se faire en calculant les termes successifs de la suite {y i j , j ≥ 1} jusqu’à ce que ky i j+1 − y i jk < εMS où ε MS est un seuil de convergence défini par l’utilisateur. Lorsque K est le noyau d’Epanechnikov, G correspond au noyau uniforme et le nombre d’itérations nécessaires pour la convergence de la suite est fini [21]. On remarque que le coeur d’une procédure mean-shift est le calcul du vecteur mh,G(x) pour un x donné. Ceci nécessite d’évaluer les valeurs g( x−x i h 2 ) pour tout i = 1, . . . , N. Or, on peut considérer que pour les noyaux K vérifiant les hypothèses de l’équation (4.7), g(x) ≈ 0 lorsque kxk ≥ h (pour les noyaux uniformes ou triangulaires, l’approximation devient une vraie égalité). Ceci entraîne que g( x−x i h 2 ) ≈ 0 lorsque kx − x ik ≥ h. L’expression du vecteur mean-shift (4.17) peut donc être approchée par : mh,G(x) ≈ X xi∈Bh(x) x i g   x − x i h 2   X xi∈Bh(x) g   x − x i h 2   − x (4.21) où Bh(x) désigne la boule de rayon h centrée en x. En particulier, si K est le noyau d’Epanechnikov, g(x) = 1kxk≤h et mh,G(x) ≈ 1 nx X xi∈Bh(x) x i − x (4.22) où nx désigne le nombre d’éléments x i de X qui sont à une distance inférieure ou égale à h. La figure 4.1 illustre le calcul du vecteur mean-shift dans le plan, avec un noyau gaussien pour une valeur de h = 1.8. Les données en rouge représentent les points qui sont dans le cercle de rayon h centré en yj , le point où s’effectue le calcul de vecteur mean-shift. Le vecteur mean-shift peut être également généralisé à un échantillon {x i , ωi} N i=1 pondéré avec PN i=1 ω i = 1. Dans ce cas, ˆf(x) = 1 h d X N i=1 ω iK x − x i h ! (4.23) et mh,G(x) = PN i=1 ω ix i g  x−x i h 2  PN i=1 ωig  x−xi h 2  − x (4.24) C’est cette forme qui sera utilisée pour l’identification des clusters.81 Figure 4.1 – Calcul du vecteur mean shift 4.1.1.3 Détermination de clusters par procédures mean-shift La section précédente a montré que l’on pouvait déterminer les modes de la densité lissée d’un nuage de points en identifiant les points où le vecteur mean-shift s’annule. Trouver les clusters correspondants consiste essentiellement à regrouper les points dont les procédures mean-shift ont convergé vers le même mode ou vers deux modes très proches. En principe, cela suppose de calculer les limites y i ∞ de (4.20) pour chaque x i , i = 1, . . . , N. Cependant, il est possible de réduire le nombre de procédures mean-shift en définissant un pavage de l’ensemble des données X = {x i , i = 1, . . . , N}. Un pavage des données est un sous-ensemble X˜ = {x ij , j = 1, . . . , N˜} de X tel que : 1. N < N ˜ 2. Deux points distincts x ij et x ik (j 6= k) sont à une distance supérieure à la taille du facteur de lissage h. 3. La réunion des boules de rayon h centrées en les points de X˜ contient X . En utilisant ce schéma, la détermination des modes de la densité lissée du nuage de points se fait en effectuant N˜ procédures mean-shift au lieu de N ce qui réduit la complexité algorithmique. Une fois ces modes trouvés, il s’agit d’associer chaque échantillon x i à un cluster correspondant à l’un des modes. Pour cela, on introduit un paramètre Rm, appelé rayon de fusion, qui a une influence sur le degré de séparation des clusters et le nombre de clusters identifiés. Si deux procédures mean-shift initialisées à partir des points x ij et x ik de X˜ convergent vers deux modes y ij∞ et y ik∞ tels que ky ij∞ − y ik∞k ≤ Rm, les deux modes sont fusionnées en un seul (par exemple en prenant leur moyenne) et les deux points x ij et x ik sont associés au même cluster. Dans le cas contraire, ils définissent deux clusters distincts. Dans la figure 4.2, les procédures mean-shift initialisées à partir de deux points distincts notés P1 convergent vers le même mode Pn ; ils sont donc associés au même cluster.82 4. Développement de filtres particulaires adaptés aux multimodalités y1 1 y1 2 y2 1 y∞ 1 Figure 4.2 – Procédures mean-shift : les cercles matérialisent les positions successives du noyau. y 1 1 et y 2 1 désignent les points initiaux de chaque procédure mean-shift. y 1 ∞ est le mode vers lequel converge les 2 procédures. Enfin, si un échantillon x i n’appartient pas à l’ensemble X˜, on lui associe le cluster majoritaire de ses k-plus proches voisins issus de X˜. 4.1.2 Sélection automatique du facteur de lissage du mean-shift clustering Contrairement à la méthode du k-means [80], l’algorithme mean-shift ne requiert pas la connaissance a priori du nombre de clusters recherchés. Cependant, il nécessite de spécifier h la taille du facteur de lissage, ce qui a une influence directe sur le nombres de clusters trouvés. Par ailleurs, il faut également spécifier le paramètre de rayon de fusion Rm, qui permet de fusionner deux clusters dont les modes correspondants serait à une distance inférieure à Rm. Il existent plusieurs règles, heuristiques ou non, qui permettent d’obtenir une valeur de h appropriée. Nous rappelons ci-après quelques techniques génériques. 4.1.2.1 Sélection d’un facteur de lissage global fondée sur un critère statistique Les critères de sélection fondés sur l’analyse statistique des propriétés de l’estimateur à noyau (4.6) visent à minimiser une mesure de l’erreur entre f(x) et ˆf(x) telle que l’erreur quadratique moyenne (MSE), l’erreur quadratique moyenne intégrée (MISE) ou l’erreur quadratique moyenne intégrée asymptotique (AMISE), pour un x ∈ R d donné. Par exemple, l’erreur quadratique83 moyenne de l’estimateur ˆf(x) s’exprime comme la somme des biais de la variance de ˆf(x). MSE(x) = E( ˆf(x) − f(x))2 = (b(x))2 + v(x) (4.25) où b(x) = E( ˆf(x)) − f(x) et v(x) sont respectivement le biais et la variance de l’estimateur ˆf(x). Les expressions approchées de b(x) et v(x) sont [120] b(x) ≈ 1 2 h 2µ2(K)∆f(x) (4.26) v(x) ≈ N −1h −dR(K)f(x) (4.27) avec µ2(K) = R z 2 1K(z)dz et R(K) = R K(z)dz, z1 étant la première composante du vecteur z. Au vu de (4.26) et (4.27), le biais augmente lorsque h augmente tandis que la variance diminue avec l’accroissement de h. Dans le cadre d’un estimateur à noyau à fenêtre constante, le choix d’une valeur de h optimale implique un compromis entre le biais b(x) et la variance v(x) pour tout x de R d . Cela revient à la minimisation de l’erreur quadratique moyenne intégrée MISE = E Z (f(x) − ˆf(x))2 dx. Malheureusement, la valeur optimale hMISE est peu exploitable car elle dépend du Laplacien de la densité inconnue f [112]. Néanmoins, il existe des techniques qui permettent d’approcher hMISE décrites dans la section 2.3. 4.1.2.2 Sélection d’un facteur de lissage global basée sur un indice de validité des clusters Cette approche consiste à trouver le paramètre h qui maximise une fonction objectif repré- sentant la qualité du clustering. De manière générale, cette fonction évalue le caractère compact des clusters délimités et le degré de séparation de chaque cluster. Une possibilité est d’évaluer l’isolement et la connectivité des clusters pour plusieurs valeurs de h et de choisir la valeur de h qui optimise les deux critères [99]. L’isolement se réfère au fait que pour un point x i donné appartenant au cluster d’indice c(i), ses plus proches voisins appartiennent au même cluster. Cela correspond au fait qu’idéalement, un algorithme de clustering satisfaisant isole chaque cluster du reste des données. Une mesure d’isolement d’un cluster est la moyenne de la norme des k plus proches voisins des points du cluster. La norme νk(x) des k plus proches voisins d’un point x est définie comme la fraction des k plus proches voisins appartenant au même cluster que x. Autrement dit, N étant le nombre total de points, l’isolement Isok se mesure comme : Isok = 1 N X N i=1 νk(x i ) Cette mesure seule ne suffit cependant pas à caractériser la qualité de clustering car elle ne peut détecter des clusters fusionnés à tort. En effet, dans le cas extrême où l’on associerait indûment tous les points au même cluster, la mesure d’isolement est optimale. L’utilisation d’une mesure de connectivité permet d’éviter ceci en pénalisant les partitions qui regroupent des points appartenant en réalité à des clusters distincts. La connectivité d’un cluster signifie que pour n’importe quelle paire de point (x i , xj ), i 6= j, il existe un chemin entre x i et x j sur lequel la densité de points84 4. Développement de filtres particulaires adaptés aux multimodalités reste élevée. Pour une estimation d’un indice de connectivité Conk du cluster, on pourra se référer à l’article de Pauwels et al. [99]. A partir des indices Isok et Conk il est possible de déduire, pour une partition donnée, un indice composite Z prenant en compte les deux indicateurs. La meilleure partition est alors celle qui maximise ce critère. Afin de déterminer une valeur optimale de h, on peut donc procéder de la manière suivante : 1. Définir b facteurs de lissage h (1) , h (2) ,..., h (b) 2. Pour j = 1, . . . , b, déterminer la partition C (j) correspondant au facteur h (j) 3. Pour chaque partition C (j) , évaluer l’indice composite d’isolement et de connectivité Z (j) (cf. [99]) 4. La valeur optimale h (j) est celle qui maximise Z (j) , j = 1, . . . , b 4.1.2.3 Sélection d’un facteur de lissage local basée sur la stabilité de la partition Une méthode de recherche systématique d’une fenêtre de lissage consiste à démarrer d’une petite valeur h = hmin et à effectuer plusieurs instances de clustering en augmentant peu à peu la valeur de h [44]. Typiquement, pour h = hmin le nombre de clusters est élevé puis baisse progressivement pour ensuite se stabiliser sur un intervalle [ha, hb], avant de baisser à nouveau jusqu’à atteindre la valeur 1. On choisit alors la valeur moyenne h = ha+hb 2 . Cette méthode est malheureusement gourmande car elle nécessite d’appliquer l’algorithme de clustering plusieurs fois. Intuitivement, la valeur de h est reliée à l’échelle des clusters du nuage de points. Comaniciu propose d’utiliser une approche semi-paramétrique pour sélectionner un facteur de lissage local hi . Il se base sur le résultat suivant, plus général puisqu’il suppose l’utilisation d’une matrice de lissage H. Ce résultat est valide lorsque N est grand. Théorème 3 (Comaniciu [20]). Supposons que la vraie densité f soit une gaussienne de moyenne m et de matrice de covariance Σ = σ 2 I. Soit mh,G(x) le vecteur mean-shift calculé selon (4.19) où G est un noyau gaussien. Alors le vecteur kh −1/2 plim mh,G(x)k atteint son maximum lorsque h = σ, la notation plim signifiant la limite en probabilité. Lorsque la distribution f comporte M modes, Comaniciu émet l’hypothèse qu’au voisinage de chaque mode, la distribution est approximativement gaussienne. Cela permet de déduire une série de matrices de covariance locales Σ (1) , Σ (2) , . . . , Σ (M) . Afin d’en déduire M facteurs de lissage optimaux hi , Comaniciu observe que si les M clusters peuvent effectivement être paramétrés par un ensemble de M paires moyenne-covariance (µ (i) , Σ (i) ), i = 1, · · · , M, alors la meilleure partition est celle pour laquelle l’estimation des (µ (i) , Σ (i) ) est la plus stable, c’est-à-dire celle pour laquelle une petite variation des facteurs de lissage a le moins d’effet sur l’estimation des paramètres des lois normales [20]. L’algorithme de sélection d’un facteur de lissage locale de Comaniciu se déroule en deux étapes. On suppose que l’on dispose d’une série de b facteurs de lissage h (1) , h (2) ,..., h (b) définis à l’avance, sur une échelle logarithmique par exemple. 1. Pour chaque facteur h (j) , j = 1, . . . , b85 (a) Déterminer une partition de taille Mj représentée par un ensemble de Mj clusters. Noter cj (i) = u si x i appartenant au cluster d’indice u, obtenu avec le facteur de lissage h (j) . (b) Pour le u-ème mode de la partition (1 ≤ u ≤ Mj ), estimer la moyenne µ (u,j) et la covariance Σ (u,j) de l’approximation gaussienne correspondant à l’ensemble des particules appartenant au cluster d’indice u. (c) Associer à chaque donnée x i appartenant au cluster d’indice u, la moyenne µ (u,j) et la covariance Σ (u,j) . 2. Pour chaque donnée x i , identifier l’indice u du cluster qui la contient, ceci pour chaque facteur h (j) , i.e trouver u tel que cj (i) = u, j = 1, . . . , b (a) Soit G1, G2,. . .,Gb les lois des gaussiennes de paramètres (µ (u,j) , Σ (u,j) ), j = 1, . . . , b. (b) Déterminer la valeur h (j0) , j0 = 1, . . . , b pour laquelle l’estimation de (µ (u,j) , Σ (u,j) ) est la plus stable. Pour cela, minimiser la divergence de Jensen-Shannon entre Gj−1, Gj et Gj+1 pour r = 2, · · · , b − 1 (voir ci-après). (c) Associer à x i le facteur local hi = h (j0) La divergence de Jensen-Shannon JS(ϕ1, · · · , ϕr) entre r distributions de densités ϕ1, · · · , ϕr est une mesure de dissimilarité entre ces lois. Elle permet notamment de traiter des problèmes de classification multi-classes. Etant donné r coefficients positifs π1, · · · , πr, de somme 1, JS(ϕ1, · · · , ϕr) est définie par [75] : JS(ϕ1, · · · , ϕr) = H( Xr i=1 πiϕi) − Xr i=1 πiH(ϕi) où H désigne la fonction d’entropie de Shannon définie pour toute densité de probabilité q par H(q) = Z q(x) log q(x)dx (4.28) Lorsque les densités ϕ1, ϕ2, · · · , ϕr sont gaussiennes, de moyennes et covariances respectives µj et Σj , j = 1, · · · , r, la divergence de Jensen-Shannon se calcule selon : JS(ϕ1, · · · , ϕr) = 1 2 log | Pr j=1 Σj | ( Qr j=1 |Σj |) 1/r + 1 2 Xr j=1 (µj − µ) T   Xr j=1 Σj   −1 (µj − µ) où µ = 1 r Pr j=1 µj . La méthode décrite de sélection ci-dessus permet d’obtenir une série de facteurs de lissage locaux hi = h(x i ) permettant d’effectuer un clustering adapté à l’échelle locale du nuage de particule. Cependant, par souci de simplicité, nous avons cherché une méthode qui effectue le clustering des particules grâce à un unique facteur d’échelle global. Une autre limitation des techniques de sélection de facteur de lissage h basées sur la stabilité de la partition est qu’elles requièrent d’appliquer plusieurs fois l’algorithme de clustering sur le même nuage de points afin d’identifier la valeur optimale de h. Dans le cadre de notre thèse, nous souhaitons une méthode de clustering dont le coût de calcul reste raisonnable et donc nous laisserons de côté les approches fondées sur la stabilité de la partition.86 4. Développement de filtres particulaires adaptés aux multimodalités 4.1.2.4 Sélection d’un facteur de lissage global adapté à l’échelle du nuage de particules Le problème posé est le suivant : étant donné l’algorithme de mélange de filtre particulaire exposé dans la sous-section 2.6.2, il s’agit à chaque instant k de déterminer un ensemble de Mk clusters Cj,k, j = 1, . . . , Mk de particules grâce à l’algorithme mean-shift. Pour cela, il faut régler un facteur de lissage h qui dépend essentiellement de l’échelle locale du nuage de particules à l’instant considéré. Comme le nuage de particule change de taille au cours du temps, h doit être modifié en conséquence. Nous proposons un algorithme qui met à jour, à chaque instant, la valeur du facteur de lissage global. On notera h = h (k) pour rappeler la dépendance en temps. Pour cela, on suppose que l’on dispose d’une partition à l’instant k de l’ensemble des particules Xk sous forme de clusters Cj,k (j = 1, . . . , Mk). En s’inspirant de l’approche de Comaniciu, on effectue une approximation gaussienne de chaque cluster afin de déterminer son échelle locale. On note Σˆ(j) k , j = 1, . . . , Mk les matrices de covariance empiriques correspondantes et m (j) k , j = 1, . . . , Mk les modes associés aux clusters. L’échelle locale d’un cluster est alors donnée par le demi-grand axe et le demi-petit axe de l’ellipsoïde de confiance de la covariance du cluster pour un niveau de confiance donnée (par exemple 95%). Cela permet d’avoir une matrice de lissage bidimensionnelle ; cependant, comme nous souhaitons un unique paramètre, nous résumons l’échelle du cluster au demi petit-axe. Afin d’obtenir un facteur de lissage global, nous proposons de prendre la moyenne ¯b des échelles locales (i.e. les demis-petit axes). Le facteur de lissage global obtenu à l’instant k sert d’entrée à l’algorithme de clustering à l’itération suivante, ce qui est motivé par le fait que le nuage de particules évolue lentement d’un instant à l’autre. 1. Pour j = 1, . . . , Mk, déterminer l’ellipsoïde de confiance à 95% associé Σˆ(j) k . Calculer son demi-petit axe bj . 2. Poser ¯b = 1 Mk X Mk i=1 bj 3. Poser h (k+1) = ¯b 4.1.3 Stratégies de réduction du temps de calcul de l’algorithme de mean-shift clustering La complexité algorithmique de l’algorithme mean-shift standard est en O (JdN2 )[46] où J désigne le nombre d’itérations de la procédure mean-shift, d la dimension et N le nombre de particules à classifier. En adoptant la stratégie consistant à trouver un pavage de l’ensemble des particules Xk (cf. section 4.1.1.3), c’est-à-dire un sous-ensemble de taille N < N ˜ , la complexité est de l’ordre de O  JdN˜ 2  . Les algorithmes particulaires standards ont une complexité de l’ordre de O (N) ce qui indique qu’il faut envisager des stratégies permettant de réduire la complexité de l’algorithme de clustering. L’étape la plus couteuse est le calcul de la suite {yj , j ≥ 1} qui converge vers les modes du nuage87 mean-shift avec arbres k-d mean-shift standard N = 5000 0.1516 0.2279 N = 2000 0.1050 0.1404 N = 1000 0.0509 0.0513 Table 4.1 – Temps de calcul (en secondes) de l’algorithme mean-shift sur un N-échantillon issu du mélange gaussien F ; moyenne sur 50 réalisations de points, dont on rappelle l’expression ci-dessous : yj+1 = X xi∈Bh(yj ) x i g   yj − x i h 2   X xi∈Bh(yj ) g   yj − x i h 2   (4.29) où Bh(yj ) = {x i , i = 1, . . . , N : kyj − x ik ≤ h} (4.30) Plus précisément, les goulots d’étranglement sont : (i) La détermination de la boule Bh(yj ) : c’est un problème de recherche des plus proches voisins dont la distance à yj est inférieure à h. Des structures telles que les arbres k-dimensionnels (k-d trees) [123] permettent de déterminer le voisinage Bh(yj ) efficacement. (ii) L’évaluation du quotient (4.30) qui consiste en 2N d multiplications (N d au numérateur et au dénominateur), sans compter le coût de l’évaluation de g(x) pour x qui dépend du noyau utilisé. Dans le cadre de la thèse, nous avons retenu l’utilisation d’un noyau G uniforme pour le calcul de la suite {yj} car le nombre d’itérations nécessaire pour la convergence de la suite est fini [21]. De plus, l’évaluation de yj pour un noyau uniforme est moins coûteuse que celle utilisant un noyau gaussien. En ce qui concerne la recherche des points qui tombent dans le support du noyau [point (ii)], nous avons constaté que l’utilisation d’une structure d’arbre k-d permettait de réduire le temps de calcul de manière appréciable lorsque N ≥ 2000 (voir 4.1). Nous avons toutefois noté que pour des valeurs moindres de N, l’utilisation de telles structures de données n’était pas justifié. La comparaison a été menée sur des données simulées selon le mélange gaussien F défini par : F = 1 5 X 5 i=1 N (µi , Σi) (4.31) avec µ1 = [3, 3]T , µ2 = [−6, −6]T , µ3 = [−5, 2]T , µ4 = [5, −3]T , µ5 = [0, 0]T et Σ1 = 1/2 1/4 1/2 1/4 ! , Σ2 = 1 2 I2, Σ3 = 2 1 1 2! , Σ4 = 3 −1 −1 3 ! , Σ5 = 0.6 0.15 0.15 0.375! Nous exposons ci-après quelques méthodes permettant de réduire le coût algorithmique du clustering.88 4. Développement de filtres particulaires adaptés aux multimodalités Représentation compacte de densité (RCD) Cette méthode introduite par Freedman [43] vise à accélérer l’étape de clustering en réduisant le nombre N de points x1, . . . , xN sur lequel la procédure mean-shift est appliquée. Pour cela, on s’appuie sur une représentation compacte de la densité ˆf. Soit ˆˆf(x) = 1 L X L j=1 KH(x − xˆj ), avec L << N. Pour un choix approprié des xˆj et de H, l’erreur E "Z  ˆf(x) − ˆˆf(x) 2 dx# tend vers 0 lorsque L → ∞. L’algorithme de clustering se résume alors à la succession des étapes suivantes : 1. Tirer L échantillons xˆ1, . . . , xˆL ∼ ˆf afin de construire ˆˆf. 2. Effectuer une procédure mean-shift sur chacun des échantillons xˆj , j = 1, · · · , L, i.e. évaluer le mode limite y j ∞. 3. Pour chaque x i , trouver l’échantillon xˆj∗ le plus proche et associer le mode ˆmˆ j∗ à xi . La seconde étape permet un gain considérable puisque on utilise L points pour le calcul de la suite des vecteurs mean shift au lieu de N. Selon [43], une implémentation de cet algorithme permet de diviser le temps de calcul par un facteur N L . Nous proposons une simplification qui permet de se passer de la génération des L échantillons selon ˆf. Pour cela, les échantillons {xˆj} peuvent être tirés au hasard et sans remise parmi les échantillons de départ x 1 , . . . , xN . Cette méthode ne garantit plus que l’approximation ˆˆf soit proche de ˆf mais elle s’est avérée efficace expérimentalement. Clustering périodique Nous faisons également l’observation que la forme du nuage de particules n’évolue que légèrement d’un instant à l’autre lorsqu’il n’y a pas d’étape de ré-échantillonnage. On peut raisonnablement s’attendre à ce que deux particules appartenant au même cluster le restent à l’itération suivante. Ainsi, on peut attendre quelques cycles de prédiction/correction (typiquement 3 à 10) avant d’appliquer l’algorithme de clustering. 4.2 Ré-échantillonnage et régularisation locale Le filtre particulaire régularisé (RPF) [37, p. 247-271], introduit au chapitre 2, permet d’augmenter la robustesse du filtre dans le cas où le bruit de dynamique et/ou d’observation est faible. Il s’appuie sur une régularisation de la loi discrète obtenue après la phase de correction (cf. 2.3) : concrètement, la régularisation consiste à ajouter un bruit contrôlé aux particules ré- échantillonnées de façon à améliorer l’exploration de l’espace d’état. Soit pˆk|k = PN i=1 ω i k δx i k , l’approximation de la loi conditionnelle à l’instant k. Dans sa version originale, la phase de ré-échantillonnage du RPF se fait en échantillonnant un estimateur à noyau de pˆk|k. Cet estimateur est noté Kh ∗ pˆk|k et est défini par Kh ∗ pˆk|k = 1 h d X N i=1 ω i kK x − x i k h !89 où K est le noyau de régularisation considéré. Une implémentation du RPF nécessite de préciser le coefficient de dilatation h, à ne pas confondre avec le facteur de lissage utilisé dans l’algorithme de clustering mean-shift. Le choix optimal de h se fait en minimisant l’erreur quadratique moyenne intégrée entre Kh ∗ pˆk|k et la loi a posteriori inconnue pk|k = p(xk|y0:k) (cf. 2.3). Dans sa formulation générique, le RPF approxime la loi de filtrage pk|k par une gaussienne dont les moments sont la moyenne empirique mk et la covariance empirique Sk du système de particules pondérés {ω i k , xi k} N i=1. mk = X N i=1 ω i kx i k et Sk = X N i=1 ω i k (x i k − mk)(x i k − mk) T Afin de sa ramener au cas connu d’une gaussienne standard, les particules sont blanchies, c’est- à-dire que l’on considère les particules obtenue par la transformation S − 1 2 k (x i k − mk). En notant {x˜ i k} N i=1 les particules obtenues après ré-échantillonnage multinomial, le système de particules régularisé est obtenu en posant : x i k = ˜x i k + hoptS 1 2 k ε i où les ε i , i = 1, . . . , N sont des tirages i.i.d. du noyau K. Lorsque pk|k est multimodale, Silverman [112] conseille d’utiliser le facteur h = chopt où 0 < c ≤ 0.5 est un paramètre de réglage, hopt étant calculé d’après 2.28 ou 2.29 selon le noyau K utilisé. Nous avons néanmoins constaté que cette méthode n’est pas satisfaisante, notamment lorsque les modes de la loi conditionnelle sont éloignés. A titre d’exemple, considérons un échantillon x1, x2, . . . , xN de taille N = 100 issu de la distribution bi-modale ν = 1 2 N (m1, Σ1) + 1 2 N (m2, Σ2) (4.32) avec m1 =  5 5T m2 =  −50 −60T Σ1 =   7 2 2 1   Σ2 = √ 2 2   2 1 1 2   Considérons à présent la régularisation de l’échantillon x1, x2, . . . , xN avec la méthode classique décrite précédemment (µ = 0.4). On suppose ici l’utilisation d’un noyau de régularisation K gaussien, ce qui a peu d’influence sur le résultat (cf. 2.3). L’échantillon après régularisation est représenté sur la figure 4.3 : on constate que la distribution initiale est déformée après régularisation. En particulier, les ellipsoïdes des covariances des deux composantes ne sont plus orientées de la même façon. Cela est due à l’étape de blanchiment où le bruit de régularisation issu du noyau K est mis à l’échelle par la matrice de covariance empirique de x1, x2, . . . , xN . Nous proposons d’utiliser la représentation de la loi conditionnelle pk|k = p(xk|y0:k) sous forme de mélange de lois afin de proposer un algorithme de régularisation adapté aux distributions90 4. Développement de filtres particulaires adaptés aux multimodalités −70 −60 −50 −40 −30 −20 −10 0 10 20 −100 −80 −60 −40 −20 0 20 40 Figure 4.3 – Echantillon avant (bleu) et après régularisation globale (vert) multimodales. Rappelons l’approximation particulaire pour les modèles de mélange, obtenue après l’étape de correction à l’instant k. pk|k ≈ pˆk|k = X Mk j=1 αj,kpˆj avec pˆj = X i∈Ij,k ω i k δx i k et X i∈Ij,k ω i k = 1 Dans l’algorithme du MPF, les étapes de prédiction/correction sont essentiellement celles du SIR à la différence près qu’une étape supplémentaire est ajoutée pour mettre à jour les coefficients de mélange αj,k. Outre l’introduction de ces coefficients, la différence avec le SIR est la possibilité de ré-échantillonner le système de particules localement. Concrètement, pour chaque composante pˆj , on peut définir une mesure de dégénérescence du système de particule comme la taille effective (locale) du cluster de particules correspondant à pˆj , N j ef f , où l’entropie. Ces deux indicateurs sont définis au chapitre 2, section 2.2.3. Par exemple, N j ef f ≈ 1 P i∈Ij,k (ω i k ) 2 (4.33) Lorsque N j ef f /Nj < Nth/N, les particules du cluster d’indice j subissent un ré-échantillonnage multinomial selon les poids d’importance de la composante pˆj , {ω i k}i∈Ij,k . Nth désigne le seuil de ré-échantillonnage. Tout comme il est possible de ré-échantillonner localement grâce à la formulation (4.1), nous91 proposons un algorithme de régularisation locale fondé sur le blanchiment local et de l’utilisation d’un paramètre de lissage propre à chaque cluster. Soit Sj,k = X i∈Ij,k ω i k (x i k −mk,j )(x i k −mk,j ) T la matrice de covariance empirique du cluster d’indice j et mk,j = P i∈Ij,k ω i kx i k sa moyenne empirique. Par souci de simplicité, nous supposerons que le noyau de régularisation K est gaussien. Soit le paramètre de lissage local au cluster Cj,k, h j opt défini par : h j opt = D(K)N −1 d+4 j (4.34) Soit x˜ i k , i ∈ Ij,k, les particules après ré-échantillonnage multinomial local dans le cluster Cj,k. Alors les particules après régularisation locale sont obtenues selon l’équation : ∀i ∈ Ij,k, xi k = ˜x i k + h j optS 1 2 j,kε i (4.35) où ε i ∼ i.i.d. K. Dans la suite de l’exposé, nous appellerons MRPF (Mixture Regularized Particle Filter) la combinaison du MPF et de la routine de ré-échantillonnage/régularisation locale. Afin d’illustrer l’impact de la régularisation locale, revenons à la distribution bi-modale ν définie par (4.32). La figure 4.4 représente le nuage de point avant et après régularisation locale. On peut constater sur cet exemple que la méthode développée permet de conserver la forme initiale de la distribution multimodale, contrairement à la régularisation globale. −60 −50 −40 −30 −20 −10 0 10 20 −70 −60 −50 −40 −30 −20 −10 0 10 Figure 4.4 – Echantillon avant (bleu) et après régularisation locale (rouge) Remarquons qu’il est possible d’effectuer une étape de régularisation locale dans un algorithme particulaire standard avec ré-échantillonnage global tel que le RPF. Dans ce cas, la succession des étapes de ré-échantillonnage et de régularisation se fait selon le schéma suivant.92 4. Développement de filtres particulaires adaptés aux multimodalités Algorithme 5 : Ré-échantillonnage global et régularisation locale − Calculer Nef f selon (2.19) − Si Nef f < Nth (Nth : seuil fixé par l’utilisateur) 1. Identifier une partition des particules sous-forme de Mk clusters Cj,k, j = 1, . . . , Mk (avec l’algorithme de clustering mean-shift par exemple ) 2. Effectuer un ré-échantillonnage multinomial global selon les poids {ω i k}. Noter I les indices des particules ré-échantillonnées. 3. Pour j = 1, . . . , Mk (a) Calculer la covariance Sj,k et la moyenne mj,k des particules avant ré-échantillonnage (b) Calculer h j opt selon (4.34) (c) Identifier l’ensemble des indices JI des particules ré-échantillonnées qui appartiennent au cluster Cj,k i.e. JI = {i ∈ I | x i k ∈ Cj,k} (d) Poser pour tout i ∈ JI , x i k = x Ii k + h j optS 1 2 j,kε i avec ε i ∼ i.i.d. K 4.3 Gestion dynamique des clusters du filtre Dans la formulation originale du MPF [118], il peut arriver qu’une partie des ressources soit utilisée en pure perte pour mettre à jour les poids de mélange {αj,k} et les poids intra-cluster ω i k associés à des clusters devenus très peu vraisemblables pendant plusieurs itérations. Il faut donc un schéma permettant de supprimer les clusters correspondant, et ré-allouer un nombre équivalent de particules aux clusters restant. Cependant, la littérature sur le sujet [118, 95, 126] ne détaille pas comment un tel mécanisme peut être mis en oeuvre. Concrètement, nous suggérons de vérifier à chaque pas de temps k, la contribution de chaque cluster à l’approximation de la loi a posteriori p(xk|y0:k). Sachant que p(xk|y0:k) ≈ X Mk j=1 αj,k X i∈Ij,k ω i k δx i k si pour j0 ∈ J1, MkK, αj,k < αmin, on supprime les Nj0 particules du cluster Cj0,k. Le paramètre αmin est un seuil fixé au préalable, typiquement pris inférieur à 10−5 . Il reste à échantillonner Nj0 nouvelles particules afin de conserver un système de particules de taille constante N. Cela peut être fait selon le schéma suivant : 1. Soit X Mk j=1 j6=j0 πj,kpˆj la distribution empirique sans la composante pˆj0 , renormalisée avec ∀j =93 1, . . . , N, j 6= j0 πj,k = X αj,k l=1 l6=j0 αl,k (4.36) et pˆj = X i∈Ij,k ω i k δx i k 2. Faire un tirage multinomial de Nj0 indices e1, e2, . . . , eNj0 selon les poids πj,k, j ∈ {1, . . . , Mk}\ {j0} 3. Pour j = 1, . . . , Mk, j 6= j0, (a) Soit Dj = Card{l = 1, . . . , Nj0 | el = j} le nombre d’indices égaux à j (b) − Tirer Dj particules ξ 1 , ξ2 , . . . , ξDj selon pˆj = P i∈Ij,k ω i k δx i k , en posant ξ i = x q k avec probabilité ω q k , q ∈ Ij,k. − Associer le poids γ i = ω q k à ξ i . − Rajouter les ξ i au cluster Cj,k et poser pˆj = 1 P i∈Ij,k ω i k + PDj i=1 γ i   X i∈Ij,k ω i k δx i k + X Dj i=1 γ i ξ i   4.4 Résumé de l’algorithme MRPF Nous donnons ici une version de l’algorithme MRPF (Mixture Regularized Particle Filter) qui est une extension du MPF. La nouveauté est l’introduction d’une étape de régularisation locale et l’utilisation de l’algorithme mean-shift pour le clustering du nuage de particule. Par souci de simplicité, on suppose ici que la loi d’importance utilisée dans l’étape de prédiction est la transition p(xk|xk−1). Algorithme 6 : MRPF 1. [Initialisation] − Tirer N particules selon la loi initiale x i 0 ∼ µ0 − poser ω i 0 ∝ p(y0|x i 0 ) − Normaliser les ω i 0 2. Pour k ≥ 1 (a) [Prédiction] Tirer N particules x i k ∼ p(xk|x i k−1 ) (b) [Correction] i. Pour j = 1, . . . , Mk−1 − ∀i ∈ Ij,k−1, calculer ω˜ i k = ω i k−1 p(yk|x i k ) (4.37)94 4. Développement de filtres particulaires adaptés aux multimodalités − Calculer les poids normalisés de la j-ème composante : ∀i ∈ Ij,k−1, ω i k = ω˜ i k P l∈Ij,k−1 ω˜ l k (4.38) ii. Pour j = 1, . . . , Mk−1, calculer αj,k en fonction des {αj,k−1}1≤j≤Mk−1 selon (2.73) et (2.74) (c) [Clustering] Décomposer le nuage de particules en Mk clusters Cj,k. [C 0 j,k, I0 j,k] = meanshiftClustering({x i k } N i=1, {ω i k } N i=1, K, hMS, Rm, nitermax, εMS) (d) Mettre à jour les coefficients de mélange αj,k et les poids des particules intra-cluster ω i k pour la nouvelle partition C 0 j,k en utilisant les équations (2.84) et (2.85). 3. Poser j = 1. Tant que j ≤ Mk − Si αj,k < αmin supprimer le cluster Cj,k et échantillonner Nj nouvelles particules selon la procédure décrite dans la section 4.3 − Sinon – Calculer N j ef f selon (4.33) – Si N j eff Nj est inférieur au seuil de ré-échantillonnage, ré-échantillonner et régulariser les particules du cluster Cj,k selon l’algorithme décrit dans la section 4.2 – j = j + 1 4. Mettre à jour la fenêtre de lissage h MS de l’algorithme de clustering mean-shift On rappelle que les paramètres Rm, nitermax et ε MS utilisés dans l’algorithme de clustering mean-shift représentent respectivement : − le rayon de fusion, qui contrôle le degré de séparation des clusters − le nombre d’itérations maximum autorisés par procédure mean-shift − le seuil de convergence d’une procédure mean-shift La routine de clustering peut être effectuée avant l’étape de correction. Par ailleurs, puisque les modèles de mélange du filtrage particulaire ne sont pas spécifiques à un filtre particulier, nous utiliserons également dans la suite de la thèse une extension naturelle du MRPF, le MRBPF, obtenu par Rao-Blackwellisation (cf. 2.4.1), en conservant l’étape de régularisation locale. Le MRPF et le MRBPF seront tous les deux combinés avec une procédure d’échantillonnage d’importance fondée sur les maxima locaux de la densité cible, ce qui est l’objet de la section suivante. 4.5 Échantillonnage d’une loi d’importance basée sur les maxima locaux de la densité a posteriori 4.5.1 Motivation Dans le chapitre précédent (sous-section 2.2.4), nous avons évoqué la nécessité de sélectionner une loi d’importance prenant en compte la mesure courante. En effet, lorsque la loi d’importance95 dans l’étape de prédiction est le noyau de transition p(xk|xk−1), le risque est que les particules échantillonnées tombent dans la queue de distribution de la fonction de vraisemblance. Ceci arrive d’autant plus souvent que la fonction de vraisemblance décroit rapidement autour de son maximum, par exemple dans le cas d’un bruit additif v gaussien de variance petite, ou quand la fonction d’observation du modèle présente un fort gradient (cf. Figure 4.5 (a)). De même, lorsque le bruit de dynamique est additif gaussien de petite matrice de covariance Q, il est possible que, malgré l’étalement de la vraisemblance, p(xk|x i k−1 ) et p(yk|xk) aient un faible recouvrement (cf. Figure 4.5 (b)). (a) Cas d’une vraisemblance « pointue » (b) Cas d’un a priori « pointu » Figure 4.5 – Incohérence entre la fonction de vraisemblance et le noyau de transition Parmi les approches algorithmiques permettant d’échantillonner les particules dans des régions de forte vraisemblance, on peut citer : − L’échantillonnage de la fonction de vraisemblance [18] : si la fonction de vraisemblance p(yk|xk) est intégrable en xk [42], elle peut servir de loi d’importance lors de l’étape de prédiction et dans ce cas l’équation de mise à jour des poids est ω i k ∝ ω i k−1 p(x i k |x i k−1 ). Cette technique est difficile à implémenter lorsque la dimension de l’espace d’observation est inférieure ou égale à celle de l’espace d’état (m ≤ d) : en effet, dans ce cas on ne peut pas inverser la fonction de vraisemblance xk 7→ p(yk|xk) . En particulier, en recalage par96 4. Développement de filtres particulaires adaptés aux multimodalités mesure radio-altimétriques, les mesures sont scalaires et l’état est de dimension supérieure ou égal à 3 donc la méthode n’est pas envisageable. − La correction progressive [97] : cet algorithme permet de simuler un échantillon approximativement issu de p(xk|y0:k) en introduisant, à l’étape de correction, une série de fonctions de vraisemblance intermédiaires gλm(xk) = p(yk|xk) 1/λm, m = 1, . . . , n de moins en moins diffuses, où λ1, . . . , λn est une suite de coefficients supérieurs ou égaux à 1 avec λn = 1, de sorte que gλn (xk) = p(yk|xk). L’étape de correction est divisée en étapes intermé- diaires. L’algorithme est initialisé avec les N particules {ξ i 1 , i = 1, . . . , N} obtenues lors de la phase de prédiction. Ensuite, pour m = 2, . . . , n, les particules obtenues à l’étape m − 1 sont pondérées avec la fonction de vraisemblance intermédiaire gλm, ce qui donne des poids intermédiaires ω i λm,k. Le nouveau nuage de particule est alors obtenu en tirant N échantillons {ξ i m, i = 1, . . . , N} selon la distribution régularisée PN i=1 ω i λm,kK( x−ξ i m−1 h ), où K est un noyau de régularisation. Dans le cas d’un bruit gaussien additif, cette méthode revient à considérer une suite de densités gaussiennes de covariances décroissantes et supérieures à la vraie covariance. L’utilisation de vraisemblances intermédiaires de moins en moins étalées permet de ramener progressivement les particules dans les zones où la (vraie) fonction vraisemblance prend des valeurs significatives. Cette méthode a été testée sans succès. − Le filtre particulaire auxiliaire [105] : cet algorithme permet de propager prioritairement les particules à l’instant k −1 qui seront compatibles avec la mesure yk. L’étape de prédiction à l’instant k consiste à tirer N indices i1, . . . , iN selon une loi multinomiale dont les poids sont égaux à ω i k−1 pˆ(yk|x i k−1 ), où pˆ(yk|x i k−1 ) est une approximation de la vraisemblance prédite p(yk|x i k−1 ). Les particules prédites à l’instant k sont alors obtenues en échantillonnant x j k ∼ p(xk|x ij k−1 ), j = 1, . . . , N. Cela nécessite néanmoins d’avoir une approximation pˆ(yk|xk−1) qui soit plus diffuse que p(yk|xk−1) = R p(yk|xk)p(xk|xk−1)dxk. Selon Whiteley et. al [121], les performances du filtre particulaire auxiliaire dépendent fortement du choix de l’approximation de la vraisemblance prédite, ce qui, selon le modèle, peut s’avérer une tâche compliquée en soit. Nous proposons ci-après, une loi d’importance adaptée au MRPF, qui consiste à définir au niveau de chaque composante unimodale du filtre, une loi d’importance basée sur une approximation du maximum a posteriori (MAP) de la loi conditionnelle locale. Pour cela, nous présentons d’abord plusieurs estimateurs d’importance utilisant une loi d’importance centrée sur le MAP dans un cadre non-dynamique. En particulier, nous présentons une méthode d’évaluation du MAP lorsque l’observation est linéaire par rapport à une partie de l’espace d’état et lorsque la loi a priori est gaussienne. Ensuite, nous discutons du choix de la matrice de covariance de la loi de proposition lorsque cette dernière est gaussienne. Enfin nous illustrons comment cette loi peut être mise en pratique dans un cadre particulaire (dynamique) pour les distributions multimodales.97 4.5.2 Evaluation du maximum a posteriori pour un modèle d’observation partiellement linéaire avec a priori gaussien Soit x ∈ R d une v.a. gaussienne de moyenne µ et de covariance P, observée via une mesure y ∈ R m corrompue par un bruit additif v. y = H(x) + v (4.39) On suppose que v est un bruit gaussien de moyenne nulle et de covariance R. On souhaite calculer le maximum a posteriori xˆMAP défini par xˆMAP = arg max x∈Rd p(x|y) (4.40) où p(x|y) est la densité conditionnelle de x sachant y. Le calcul du MAP est difficile lorsque la dimension de l’état est grande, ce qui est le cas dans notre application. C’est pourquoi nous proposons une méthode approchée du calcul du MAP en exploitant le fait que seule une petite partie du vecteur d’état participe à la non-linéarité de l’équation d’observation. Nous considérons une équation de mesure générale avec une partie linéaire : y = Ax2 − h(x1) + v (4.41) où x1 et x2 sont des sous-vecteurs de x, i.e. x = (x T 1 , xT 2 ) T , h une fonction non-linéaire de x1 et A est une matrice indépendante de x. La structure de la fonction de mesure (4.41) est caractéristique du recalage altimétrique : x1 représente le vecteur des composantes horizontales, x2 regroupe l’altitude et les composantes de vitesse et h correspond au modèle numérique de terrain. En posant A = h 1 0 0 0i on vérifie que Ax2 − h(x1) correspond à la hauteur relative d’un mobile situé en x. Notons que le signe (−) dans (4.41) est introduit par pure commodité puisque aucune hypothèse n’est faite sur la fonction h. Dans la suite, on note q la densité de x et on notera q(x) = q(x1, x2) pour faire apparaître la décomposition du vecteur x = (x T 1 , xT 2 ) T . De même, on note µ = (µ T 1 , µT 2 ) T , la moyenne de x avec µ1 = E(x1) et µ2 = E(x2). La covariance de x se décompose comme P =   P11 P12 P21 P22   Remarquons d’abord que p(x|y) = p(x1, x2|y) (4.42) ∝ p(y|x1, x2)q(x1, x2) (4.43) ∝ p(y|x1, x2)q(x2|x1)q(x1) (4.44) de sorte que max x1,x2 p(x1, x2|y) ∝ maxx1 q(x1) maxx2 {p(y|x1, x2)q(x2|x1)} (4.45) = maxx1 q(x1) maxx2 F1 (x1, x2) (4.46)98 4. Développement de filtres particulaires adaptés aux multimodalités La maximisation de la loi conditionnelle p(x1, x2|y) se fait donc en maximisant d’abord la fonction (x1, x2) 7→ F1 (x1, x2) = p(y|x1, x2)q(x2|x1) par rapport à x2. La maximisation de F1 par rapport à x2 est équivalente à la minimisation de x2 7→ Q(x1, x2) = − 1 2 log F1(x1, x2) (4.47) Etant donné que, − p(y|x1, x2) est une densité gaussienne de moyenne y − (Ax2 − h(x1)) et de covariance R − q(x2|x1) est une densité gaussienne de moyenne E(x2|x1) = E(x2) + P21P −1 11 (x1 − E(x1)) = µ2 + P21P −1 11 (x1 − µ1) et de matrice de covariance Σ2|1 = P22 − P21P −1 11 P12 on a Q(x1, x2) = (y + h(x1) − Ax2) R −1 (y + h(x1) − Ax2) T (4.48) + (x2 − E1(x2)) Σ−1 2|1 (x2 − E1(x2))T où E1(x2) = E(x2|x1). En regroupant les termes en x2, on peut réécrire Q sous la forme Q(x1, x2) = Γ(x1) + (x2 − γ(x1)) Ω−1 (x2 − γ(x1))T (4.49) avec Γ(x1) = [y + h(x1) − Aγ(x1)] R −1 [y + h(x1) − Aγ(x1)]T + [γ(x1) − E1(x2)] Σ−1 2|1 [γ(x1) − E1(x2)]T γ(x1) = Ω h A TR −1 (y + h(x1)) + Σ−1 2|1E1(x2) i Ω =  A TR −1A + Σ−1 2|1 −1 L’espérance conditionnelle E1(x2) = E(x2|x1) est bien une fonction de x1 uniquement puisque E1(x2) = µ2 + P21P −1 11 (x1 − µ1). Les fonctions γ et Γ ne dépendent donc que de x1. A x1 fixé, Q atteint donc son minimum Γ(x1) en xˆ2 = γ(x1). On a donc max x2 F1(x1, x2) = exp  − 1 2 minx2 Q(x1, x2)  (4.50) = exp  − 1 2 Γ(x1)  (4.51) En reportant maxx2 F1(x1, x2) dans (4.46), il reste donc à maximiser q(x1) exp(− 1 2 Γ(x1)) par rapport à x1. Etant donné que q(x1) = (2π) −1/2 q det(P) exp(− 1 2 (x1 −µ1) TP −1 11 (x1 −µ1)) , cela revient à minimiser G(x1) = (x1 − µ1) TP −1 11 (x1 − µ1) + Γ(x1) (4.52)99 par rapport à x1. La minimisation de G relève de l’optimisation non-linéaire. Heureusement, dans l’application du recalage par mesures radio-altimétriques, le vecteur x1 est un vecteur bi-dimensionnel regroupant les composantes de position horizontales. La recherche du minimum de G peut donc se faire facilement en utilisant les algorithmes issus de la méthode de Newton comme l’algorithme BFGS (Broyden-Fletcher-Goldfarb-Shanno) [10]. Une autre possibilité est d’utiliser un algorithme du gradient conjugé [54], qui évite le calcul et l’inversion de la hessienne de la fonction objectif. En notant xˆ1 = arg min G(x1), il est maintenant possible de calculer explicitement xˆ2 = γ(ˆx1). Finalement, le MAP est donc estimé par xˆMAP = (ˆx1, xˆ2). 4.5.3 Loi de proposition centrée sur le MAP pour l’échantillonnage d’importance 4.5.3.1 Cadre statique En échantillonnage d’importance, il est souhaitable de choisir une densité de proposition "proche" en un certain sens de la densité a posteriori p(x|y). Si l’on suppose que p(x|y) est unimodale, le choix d’une densité d’importance gaussienne centrée sur le MAP xˆMAP semble judicieux. Ensuite, on peut par exemple prendre comme covariance de la loi de proposition, une approximation de la covariance a posteriori Cov(x|y). La méthode de Laplace [66, 115] fournit une approximation au premier ordre de la covariance a posteriori en fonction du MAP et de la matrice d’information de Fisher observée J selon Cov(x|y) ≈ J −1 (ˆxMAP ) (4.53) avec J(x) = − ∂ 2 log g ∂x2 (x) − ∂ 2 log q ∂x2 (x) (4.54) On rappelle que g(x) = p(y|x) et q est la densité a priori. Revenons au modèle défini par (4.39). Dans ce cas, q étant gaussien, J se réduit à J(x) = 2   ∂ 2H ∂x2 R −1 (y − H(x)) − R −1 ∂H ∂x ! ∂H ∂x !T   + P −1 (4.55) On voit que l’approximation (4.53) dépend essentiellement du gradient et de la hessienne de H. L’autre possibilité est de prendre une densité d’importance q˜ gaussienne de moyenne xˆMAP et de covariance la covariance a priori P. Nous proposons de comparer ces deux approches dans un cadre statique proche de la problématique de recalage par mesures altimétriques. Pour cela nous considérons le problème d’estimation suivant : x = (x1, x2) ∼ N (µ, P) est un vecteur statique dans le plan que nous cherchons à localiser. On suppose qu’une observation y est fournie via l’équation de mesure y = H(x) + v100 4. Développement de filtres particulaires adaptés aux multimodalités avec H(x) = 1 2π|C| 1/2 exp  − 1 2 (x − θ) T C −1 (x − θ)  . H est la densité d’une distribution gaussienne de moyenne θ et de matrice de covariance C avec θ = (1, 1)T et C =   0.0075 0.0025 0.0025 0.0075   La fonction d’observation H joue ici le rôle d’un relief artificiel dont le sommet correspond à la moyenne m et dont l’inclinaison autour du sommet est contrôlé par la matrice C. La matrice C permet de modéliser les situations où le terrain est subitement très informatif (présence d’un canyon,. . . ). Le bruit d’observation suit une distribution gaussienne centrée d’écart-type σv = 0.01. Figure 4.6 – densité a posteriori non normalisée L’objectif est de calculer la moyenne a posteriori xˆ = E(x|y) par échantillonnage pondéré en utilisant trois lois de propositions différentes dont les densités sont notées q˜0, q˜1 et q˜2. Dans la suite de cette section, ϕ(.|m, κ) désignera la densité gaussienne de moyenne m et de covariance κ. − q˜0 = q est la densité a priori pour laquelle on obtient l’estimateur Monte Carlo standard − q˜1(x) = ϕ(x|xˆMAP , P) − q˜2(x) = ϕ(x|xˆMAP , J −1 (ˆxMAP )) L’estimateur par échantillonnage pondéré de xˆ en utilisant une densité d’importance q˜ est obtenu en tirant N échantillons indépendants x i ∼ q˜ et en calculant xˆ N = X N i=1 ω ix i (4.56)101 avec ω˜ i = g(x i )q(x i ) q˜(x i ) ω i = ω˜ i PN j=1 ω˜ j (4.57) Afin de comparer les différentes densités instrumentales q˜0, q˜1 et q˜2, nous calculons xˆ N en fonction du nombre d’échantillons N et pour q˜ ∈ {q˜0, q˜1, q˜2}. Nous évaluons ensuite l’erreur quadratique moyenne (RMSE) E  xˆ N − xˆ 2 1/2 en fonction de N, en utilisant 100 réalisations indépendantes. La valeur de référence xˆ = E(x|y) est calculée par intégration numérique. (a) RMSE x1 (b) RMSE x2 Figure 4.7 – Comparaison de lois de proposition pour l’estimation de xˆ par échantillonnage d’importance102 4. Développement de filtres particulaires adaptés aux multimodalités (a) q˜1 (b) q˜2 Figure 4.8 – Réalisations de xˆ N en fonction de N La figure 4.7 montre que l’utilisation d’une loi d’importance q˜1 obtenu par translation de la loi a priori q sur le MAP réduit l’erreur d’estimation de l’estimateur Monte Carlo standard. Par exemple, il faut tirer au moins 104 échantillons selon q pour avoir la même erreur quadratique moyenne qu’un estimateur utilisant 3.103 échantillons selon q˜1. En revanche, le choix de la densité q˜2 ne semble pas améliorer l’erreur d’estimation. Pire, l’estimateur correspondant semble ne pas converger. En effet, si l’on observe les réalisations de xˆ N à N fixé, on observe que sur les 100 tirages indépendants, il existe des valeurs aberrantes (figure 4.8). La raison de cette instabilité est que tous les choix de fonctions d’importance ne garantissent pas une variance de l’estimateur finie. La qualité d’un estimateur d’importance est103 liée à la variance asymptotique Vq˜ des poids normalisés, dont l’expression est [31] : Vq˜ = 1 N   Z Rd g 2 (x)q 2 (x) q˜(x) dx Z Rd g(x)q(x)dx2 − 1   (4.58) La fonction d’importance optimale est égale à la densité a posteriori. En effet, en posant q˜ ∝ gq, on a Vq˜ = 0. Vq˜ est finie si et seulement si R g 2 (x)q 2 (x) q˜(x) dx < +∞ . Une condition suffisante est que le rapport q q˜ soit borné. En effet, le produit gq est intégrable, la vraisemblance g est bornée donc si sup q/q <˜ +∞, alors Z Rd g 2 (x)q 2 (x) q˜(x) dx ≤ sup x∈Rd g sup x∈Rd q q˜ Z Rd g(x)q(x)dx < +∞ Dans le cas de l’utilisation de la fonction d’importance q˜ = ˜q2, on voit que le rapport q q˜2 peut être très grand lorsque la covariance de q˜2, J −1 (ˆxMAP ), est petite devant la covariance a priori P, de sorte que le numérateur de Vq˜ n’est pas fini. Lors du calcul de xˆ N selon (4.56), quelques tirages peuvent avoir un poids ω i très important et avoir trop d’impact sur l’estimation finale. Afin de garantir la convergence de l’estimateur, on peut alors chercher une condition suffisante pour assurer que q q˜ soit majoré lorsque q˜ est une densité gaussienne de moyenne xˆMAP et de covariance à déterminer Σ. On maintient l’hypothèse gaussienne sur la densité a priori q, de moyenne µ et de covariance P. Le rapport q q˜ est borné ssi ln( q q˜ ) borné. Etant donné que q(x) ∝ e − 1 2 (x−µ) T P −1 (x−µ) et q˜(x) ∝ e − 1 2 (x−xˆMAP ) T Σ−1 (x−xˆMAP ) , on a ln q(x) q˜(x) = c1 + 1 2 (x − xˆMAP ) T Σ −1 (x − xˆMAP ) − 1 2 (x − µ) T P −1 (x − µ) = c1 + 1 2 (x − µ + µ − xˆMAP ) T Σ −1 (x − µ + µ − xˆMAP ) − 1 2 (x − µ) T P −1 (x − µ) = c1 + 1 2 (x − µ) T Σ −1 (x − µ) + 1 2 (µ − xˆMAP ) T Σ −1 (x − µ) + 1 2 (µ − xˆMAP ) T Σ −1 (µ − xˆMAP ) | {z } constante + 1 2 (x − µ) T Σ −1 (µ − xˆMAP ) − 1 2 (x − µ) T P −1 (x − µ) = c2 + 1 2 (x − µ) T  Σ −1 − P −1  (x − µ) + 1 2  u(x − µ) | {z } scalaire + (x − µ) T u T | {z } scalaire   = 1 2 (x − µ) T  Σ −1 − P −1  (x − µ) + u1(x − µ) + c2 (4.59) = 1 2 x T  Σ −1 − P −1  x + u2x + c3 (4.60) (4.61)104 4. Développement de filtres particulaires adaptés aux multimodalités où u1 = (µ − xˆMAP ) T Σ −1 , u2, c1, c2 et c3 des constantes. ln q q˜ est majoré ssi le terme K(x) = 1 2 x T (Σ−1 − P −1 ) x + u2x est majoré. Ce dernier terme est majoré ssi sa limite vaut −∞ lorsque kxk → +∞. Une condition suffisante est que P −1 − Σ −1 soit définie positive. En effet, dans ce cas on a K(x) = − 1 2 (x − a) T  P −1 − Σ −1  (x − a) + c4 avec a = µ +  Σ −1 − P −1 −1 c4 = 1 2 a T  Σ −1 − P −1  a + u2a En posant x 0 = (P −1 − Σ −1 ) 1/2 (x − a) (possible car on suppose P −1 − Σ −1 > 0), on a K(x) = − 1 2 kx 0k 2 + c4. Comme limkxk→+∞ kx 0k = +∞, on a limkxk→+∞ K(x) = −∞. Il s’en suit que si la matrice P −1 − Σ −1 est définie positive, alors la forme quadratique ln( q q˜ ) est majorée. Cherchons maintenant une caractérisation de la propriété P −1 − Σ −1 > 0. Σ −1 − P −1 < 0 ⇔ x T (Σ−1 − P −1 )x < 0 ∀x ∈ R d \ {0} ⇔ x TΣ −1x x TP −1x < 1 ∀x ∈ R d \ {0} ⇔ sup x∈Rd\{0} x TΣ −1x x TP −1x < 1 ∀x ∈ R d \ {0} (4.62) Soit P −1 = DDT la décomposition de Choleski de P −1 . On pose C = D−TΣ −1D−1 avec D−T = (D−1 ) T . Alors, x TΣ −1x x TP −1x = x T DT CDx x T DT Dx En posant y = Dx, x TΣ −1x x TP −1x = y T Cy y T y et sup x∈Rd\{0} x TΣ −1x x TP −1x < 1 ⇔ sup y∈Rd\{0} y T Cy y T y < 1 (4.63) (En effet, D étant inversible, y décrit R d \ {0} lorsque x décrit R d \ {0}). En remarquant que y 0T Cy0 y 0T y 0 = y T Cy y T y pour x 0 = cx avec c > 0, (4.63) est équivalent à sup kyk=1 y T Cy < 1 Il faut donc résoudre le problème suivant : Maximiser y T Cy sous la contrainte kyk = 1. On introduit le multiplicateur de Lagrange L(y, λ) = y T Cy + λ(y T y − 1)105    ∂L ∂y = 2y T C + 2λyT ∂L ∂λ = y T y − 1 ∂L ∂y = 0 ⇔ 2y T C + 2λyT = 0 ⇔ y T C = −λyT ⇔ Cy = −λy ⇔ Cy = λ 0 y avec λ 0 = −λ. Les extrema de y T Cy sont donc obtenus pour y vecteur propre de C. Comme par ailleurs y 7→ y T Cy est continue sur le compact {y ∈ R d |kyk = 1}, le maximum est bien atteint pour un vecteur propre unitaire e de C tel que Ce = λ 0 e. Comme e T Ce = λ 0 e T e = λ 0 , le maximum de y T Cy est la valeur propre maximale de C. Finalement, Proposition 1. Si la valeur propre maximale de D−TΣ −1D−1 est inférieure à 1 alors le rapport q q˜ est majoré. Choix de la covariance de la loi de proposition On a vu sur un exemple synthétique, que l’utilisation directe d’une loi de proposition gaussienne de covariance donnée par l’approximation de Laplace J −1 (ˆxMAP ) de la covariance a posteriori, peut donner un estimateur de mauvaise qualité. Néanmoins, afin d’exploiter l’information donnée par la matrice Jˆ−1 = J −1 (ˆxMAP ), nous suggérons d’utiliser une loi de proposition gaussienne q˜ dont la matrice de covariance Σ a pour valeurs propres les valeurs propres de P et pour vecteurs propres, les vecteurs propres de Jˆ−1 : schématiquement, cela revient à aligner l’ellipsoïde de confiance de la covariance Σ sur celle de Jˆ−1 . De cette façon nous nous attendons à générer les échantillons selon les axes principaux de Jˆ−1 ≈ Cov(x|y). Ainsi, ces échantillons sont orientés conformément à la matrice de covariance de la fonction d’importance optimale. Soit EJ la matrice des vecteurs propres de Jˆ−1 . Soit ΛP la matrice des valeurs propres de P. On construit la matrice Prot définie par : Prot 4 = EJΛPE T J (4.64) et on pose Σ = Prot. D’après la proposition précédente, ceci ne garantit cependant pas que la variance asymptotique Vq˜ des poids d’importance ω i soit finie, même si en pratique nous avons observé que l’estimateur correspondant était stable. On peut tout de même chercher une matrice de covariance sous la forme Σ = sProt avec s > 0 et trouver le plus petit réel s qui garantissent que q q˜ soit borné. D’après la proposition 1, cela revient à déterminer s ∗ = inf{s > 0 | λmax( 1 s D −TP −1 rot D −1 ) < 1}106 4. Développement de filtres particulaires adaptés aux multimodalités où λmax(B) désigne la plus grande valeur propre de la matrice B lorsqu’elle existe. On en déduit que s ∗ = λmax(D −TP −1 rot D −1 ) (4.65) Pour tout s > s∗ , la variance Vq˜ sera finie si q˜ est une densité gaussienne de moyenne xˆMAP et de covariance Σ = sProt. Une autre approche permettant d’exploiter l’approximation Jˆ−1 ≈ Cov(x|y) consiste à chercher la matrice de covariance Σ ∗ la plus proche de Jˆ−1 en norme, telle que q q˜ soit bornée. Autrement dit, Σ ∗ = arg min Σ kΣ − Jˆ−1 k 2 F } (4.66) sous la contrainte Σ −1 −P −1 < 0. La norme matricielle k.kF est définie pour toute matrice réelle A = (ai,j )i,j de taille d × d par kAkF =   X i,j a 2 i,j   1 2 (4.67) Remarquons que Σ −1 − P −1 < 0 est équivalent à Σ − P > 0 (cf. annexe C). Théorème 4 (N. Higham [55]). Soit A est une matrice réelle symétrique. Le problème suivant : minimiser kX − Ak 2 F sous la contrainte X ≥ 0 admet une unique solution X∗ de la forme X ∗ = 1 2 (A + H) (4.68) où H est une matrice symétrique positive telle que A = UH avec U TU = I. L’égalité A = UH est appelé décomposition polaire de A. On peut alors résoudre min Σ−P ≥0 kΣ − Jˆ−1 k 2 F en remarquant que kΣ − Jˆ−1k 2 F = k(Σ − P) − (Jˆ−1 − P)k 2 F . On a alors, min Σ−P ≥0 kΣ − Jˆ−1 k 2 F = min X≥0 kX − (Jˆ−1 − P)k 2 F En notant XF = arg minX≥0 kX − (Jˆ−1 − P)k, d’après le théorème précédent, on a XF = 1 2 (Jˆ−1 − P + H) avec Jˆ−1 − P = UH et U TU = I. On en déduit que ΣF = arg min Σ−P ≥0 kΣ − Jˆ−1k 2 F est donné par ΣF = 1 2 (Jˆ−1 + P + H) (4.69)107 Cette formule est relativement simple à mettre en oeuvre pour peu que l’on dispose d’une matrice H = HT ≥ 0 vérifiant Jˆ−1 − P = UH où U est une matrice unitaire. Heureusement, il existe une alternative à la décomposition polaire permettant de calculer ΣF . Si on diagonalise Jˆ−1 − P sous la forme Jˆ−1 − P = ZΛ˜Z T avec Λ = diag( ˜ λ1, . . . , λd) matrice diagonale et ZZT = I. En posant Λ˜ + = diag(max(0, λ˜ 1), . . . , max(0, λ˜ d)) on a [55], ΣF = ZΛ˜ +Z T + P (4.70) P J −1 s ∗Prot Prot ΣF Figure 4.9 – Ellipsoïdes de confiance à 99 % des matrices de covariance P, J −1 , Prot, s ∗Prot et ΣF Enfin, pour conserver une variance d’estimation finie, on peut également échantillonner selon une loi de Student multivariée, dont la queue de distribution est plus lourde et garantit automatiquement sup q q˜ < +∞. On rappelle qu’une v.a X de R d suit une distribution de Student multivariée Td(ν, µ, Σ) si elle admet pour fonction de densité td(x; ν, µ, Σ) = Γ( ν+d 2 )(πd) − d 2 |Σ| −1/2 Γ( ν 2 ) [1 + (x − µ) TΣ−1 (x − µ)/ν] ν+d 2 (4.71) ν ∈ N ∗ + désigne le degré de liberté, µ est un paramètre de localisation et Σ une matrice de produit scalaire (symétrique, définie positive) [70]. Ici, Γ désigne la fonction Gamma d’Euler. X a pour moyenne µ (resp. matrice de covariance) uniquement lorsque ν > 1 (resp. ν > 2) et, lorsqu’elle existe, sa covariance est donné par Cov(X) = ν ν−2Σ. Plus ν est petit, plus la queue de la distribution de Student est lourde.108 4. Développement de filtres particulaires adaptés aux multimodalités Comparaison des densités d’importances Dans un premier temps, nous avons évalué les 5 densités d’importances gaussiennes centrées sur une approximation du MAP précédemment : − q˜1(x) = ϕ(x|xˆMAP , P) − q˜2(x) = ϕ(x|xˆMAP , Jˆ−1 ) − q˜3(x) = ϕ(x|xˆMAP , Prot) − q˜4(x) = ϕ(x|xˆMAP , s∗Prot) (cf. (4.65)) − q˜5(x) = ϕ(x|xˆMAP , ΣF ) Nous nous proposons de les comparer dans le problème d’estimation statique présenté précé- demment. Plus précisément, pour chaque densité q˜ ∈ {q˜1, . . . , q˜5} on calcule l’estimateur xˆ N de E(x|y) en fonction du nombre d’échantillons N. On peut alors en déduire l’erreur quadratique moyenne de chaque estimateur en fonction de N. 102 103 104 105 10 6 10 7 0 1 2 3 4 5 6 7 8 x 10−4 N RMSE x q˜0 q˜1 q˜2 q˜3 q˜4 q˜5 (a) RMSE x1 102 103 104 105 10 6 10 7 0 1 2 3 4 5 6 7 8 x 10−4 N RMSE y q˜0 q˜1 q˜2 q˜3 q˜4 q˜5 (b) RMSE x2 Figure 4.10 – Comparaison de lois de proposition pour l’estimation de E(x|y) par échantillonnage d’importance : densité instrumentale gaussienne On constate sur la figure 4.10 que le paramétrage le plus avantageux est donné par q˜3, c’est- à-dire la densité gaussienne centrée sur le MAP et de covariance Prot. Les densités d’importance q˜5 et q˜1 centrées sur le MAP et de covariances respectives P et ΣF sont relativement proches en termes d’erreur quadratique moyenne (q˜5 étant légèrement meilleure). En revanche, l’utilisation de la covariance s ∗Prot dans la loi instrumentale n’améliore que marginalement le RMSE. q˜4 garantit une variance d’estimation finie mais s’éloigne de la densité a posteriori comme l’illustre la figure 4.9.109 Dans un second temps, nous avons examiné l’utilisation d’une densité d’importance suivant une loi de Student Td(ν, xˆMAP , Σ). La matrice Σ a été choisie de sorte que Cov(X) = J −1 (ˆxMAP ), i.e. Σ = ν−2 ν J −1 (ˆxMAP ), et le degré de liberté ν a été fixé expérimentalement à 4. Ce choix donne des résultats satisfaisants comme l’atteste la figure 4.11. 102 103 104 105 10 6 10 7 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 x 10−3 N RMSE x q˜ = q q˜ = N(ˆxMAP , Prot) q˜ = N(ˆxMAP , J−1 ) q˜ = Td(ˆxMAP , J−1 ) (a) RMSE x1 102 103 104 105 10 6 10 7 0 0.1 0.2 0.3 0.4 0.5 0.6 0.7 0.8 0.9 1 x 10−3 N RMSE y q˜ = q q˜ = N(ˆxMAP , Prot) q˜ = N(ˆxMAP , J−1 ) q˜ = Td(ˆxMAP , J−1 ) (b) RMSE x2 Figure 4.11 – Comparaison de lois de proposition pour l’estimation de E(x|y) par échantillonnage d’importance : densité instrumentale Student 4.5.3.2 Cadre dynamique : illustration On considère un problème de pistage de cible dans le plan cartésien par mesure de distance et d’azimuth. La cible suit une dynamique linéaire suivante : xk = F xk−1 où F =   I2 ∆I2 02 I2   ∆ désigne le pas de temps et xk = [xk,1, xk,2, x˙ k,1, x˙ k,2] T est le vecteur d’état comprenant la position et la vitesse horizontale de la cible.110 4. Développement de filtres particulaires adaptés aux multimodalités Le capteur radar est supposé fixe à la position (0, 0) et mesure à chaque instant k une distance r = q x 2 k,1 + x 2 k,2 et un azimuth θ = arctan( xk,2 xk,1 ) tous deux corrompus par un bruit de mesure additif. On note yk le vecteur de mesure correspondant dont l’expression est yk =   q x 2 k,1 + x 2 k,2 arctan( xk,2 xk,1 )   + vk où vk ∼ N (02×1, diag(σ 2 r , σ2 θ )) est le bruit de mesure gaussien. σr et σθ désignent respectivement l’écart-type du bruit sur la mesure de distance et sur la mesure d’angle. L’objectif est d’estimer la position et la vitesse de la cible sachant les mesures passées en calculant l’espérance conditionnelle E(xk|y0:k). Pour cela, nous allons comparer le comportement du filtre particulaire régularisé (cf. 2.3), avec un filtre particulaire régularisé dont la fonction d’importance est une gaussienne multivariée centrée sur une estimation du MAP, et de matrice de covariance Prot définie dans la section 4.5.3.1 : ce dernier algorithme est noté RPF-MAP. Les paramètres du capteur sont fixés à σr = 5 m et σθ = 1◦ . L’erreur en distance est faible, ce qui est un cas difficile pour le filtrage particulaire classique. La cible a pour vecteur position-vitesse initiale xcible,0 = h 10000 10000 40 −40iT . On suppose également que x0 suit une loi gaussienne de moyenne x¯0 et de covariance P0 = diag  (1000m) 2 (1000m) 2 (10m/s) 2 (10m/s) 2  . La moyenne x¯0 est tirée selon une gaussienne centrée sur la position initiale de la cible xcible,0 de covariance P0. Nous avons calculé l’erreur quadratique moyenne des trajectoires non-divergentes sur la base de 200 simulations ainsi que le taux de non-divergence des deux algorithmes : le RPF-MAP affiche un taux de non-divergence de 97% tandis que le RPF standard a un taux de non-divergence de 24%. Nous avons considéré qu’un filtre a divergé si l’état final vrai sort de l’ellipsoide de confiance associée à la Borne de Cramer-Rao a posteriori au seuil 99.99% et centrée sur l’état estimé, ceci pendant les 5 derniers instants de la trajectoire. Par ailleurs, on observe (figure 4.12) que la position horizontale est estimée avec plus de précision par le RPF-MAP pour ce capteur : l’erreur quadratique moyenne des trajectoires convergentes du RPF-MAP s’approche rapidement de la borne de Cramer-Rao à posteriori tandis que celle du RPF ne suit pas tout à fait cette borne.111 0 50 100 150 200 101 102 103 104 RMSE x1 RPF RPF−MAP BCR (a) RMSE x1 0 50 100 150 200 100 101 102 103 104 RMSE x 2 RPF RPF−MAP BCR (b) RMSE x2 Figure 4.12 – Erreur quadratique moyenne pour la position ; bleu : RPF, noir : RPF-MAP, traits pointillés rouges : Borne de Cramer-Rao a posteriori 0 50 100 150 200 0 2 4 6 8 10 12 RMSE ˙x1 RPF RPF−MAP BCR (a) RMSE x˙ 1 0 50 100 150 200 0 2 4 6 8 10 12 RMSE ˙x 2 RPF RPF−MAP BCR (b) RMSE x˙ 2 Figure 4.13 – Erreur quadratique moyenne pour la vitesse ; bleu : RPF, noir : RPF-MAP, traits pointillés rouges : Borne de Cramer-Rao a posteriori 4.5.3.3 Application au filtrage particulaire pour les modèles d’observation partiellement linéaires Dans cette section nous détaillons comment définir une fonction d’importance basée sur les maxima locaux estimés de la densité a posteriori p(xk|y0:k). Pour cela nous nous appuyons sur les résultats établis précédemment pour l’échantillonnage d’importance dans un cadre statique. Nous faisons l’hypothèse que l’équation d’observation est partiellement linéaire, ce qui est le cas en recalage altimétrique : yk = Ax(2) k − h n k (x (1) k ) + vk (4.72)112 4. Développement de filtres particulaires adaptés aux multimodalités où vk ∼ N (0, R) et A est une matrice indépendante de xk. Le vecteur d’état se décompose sous la forme d’une partie linéaire x (2) k et non-linéaire x (1) k , xk = h x (1),T k , x (2),T k iT . Enfin, h n k est une fonction non-linéaire de x (1) k . Nous nous plaçons dans le cadre du MRPF (Mixture Regularized Particle Filter) introduit précédemment. Rappelons dans le MRPF, la densité a posteriori p(xk|y0:k) s’écrit comme un mélange de densités : pk|k = p(xk|y0:k) = X M j=1 αj,kpj (xk|y0:k) (4.73) avec PM j=1 αj,k = 1. On a p(xk|y0:k) = p(yk|xk)p(xk|y0:k−1) Z p(yk|xk)p(xk|y0:k−1) dxk (4.74) Supposons les coefficients αj,k−1 connus. La densité prédite est : pk|k−1 = X M j=1 αj,k−1pj (xk|y0:k−1) (4.75) avec pj (xk|y0:k−1) = Z p(xk|xk−1)pj (xk−1|y0:k−1)dxk−1 Introduisons M densités d’importance q˜j (xk), j = 1, . . . , M respectivement centrées sur le MAP de pj (xk|y0:k) noté xˆ ∗ j . pk|k = X M j=1 αj,k−1p(yk|xk)pj (xk|y0:k−1) X M l=1 αl,k−1 Z p(yk|xk)pl(xk|y0:k−1) dxk = X M j=1 αj,k−1p(yk|xk) pj (xk|y0:k−1) q˜j (xk) q˜j (xk) X M l=1 αl,k−1 Z p(yk|xk) pl(xk|y0:k−1) q˜l(xk) q˜l(xk) dxk = X M j=1 αj,k−1 R p(yk|xk) pj (xk|y0:k−1) q˜j (xk) q˜j (xk) dxk PM l=1 αl,k−1 R p(yk|xk) pl(xk|y0:k−1) q˜l(xk) q˜l(xk) dxk ×   p(yk|xk) pj (xk|y0:k−1) q˜j (xk) q˜j (xk) R p(yk|xk) pj (xk|y0:k−1) q˜j (xk) q˜j (xk) dxk   | {z } pj (xk|y0:k) (4.76) Par identification des termes, αj,k = αj,k−1 Z p(yk|xk) pj (xk|y0:k−1) q˜j (xk) q˜j (xk) dxk PM l=1 αl,k−1 Z p(yk|xk) pl(xk|y0:k−1) q˜l(xk) q˜l(xk) dxk (4.77)113 Ceci suggère l’algorithme suivant, 1. On suppose que l’on dispose de l’approximation particulaire suivante à l’instant k − 1 : pk−1|k−1 = X M j=1 αj,k−1 X i∈Ij,k−1 ω i k−1 δx i k−1 (4.78) 2. Prédiction : tirer N échantillons x i k ∼ p(xk|x i k−1 ) 3. Pour j = 1, . . . , M, former une approximation gaussienne ϕ(xk|x¯j,k|k−1, Pˆ j,k|k−1) de la densité prédite pj (xk|y0:k−1) : calculer la moyenne prédite selon x¯j,k|k−1 = X i∈Ij,k−1 ω i k−1x i k (4.79) et la covariance prédite selon Pˆ j,k|k−1 = X i∈Ij,k−1 ω i k−1 (x i k − x¯j,k|k−1)(x i k − x¯j,k|k−1) T (4.80) 4. Pour j = 1, . . . , M, calculer le MAP xˆ ∗ j de pj (xk|y0:k) ∝ p(yk|xk)pj (xk|y0:k−1). Pour cela, utiliser l’approximation gaussienne qj = ϕ(xk|x¯j,k|k−1, Pˆ j,k|k−1) de pj (xk|y0:k−1). Utiliser ensuite la méthode exposée dans 4.5.2 : qj joue ici le rôle de la loi a priori. 5. Définir pour j = 1, . . . , M une densité d’importance gaussienne q˜j de moyenne xˆ ∗ j et de covariance Σ ∗ j égale à Prot. q˜j (x) = ϕ(x|xˆ ∗ j , Σ ∗ j ) (4.81) Un autre choix consiste à définir q˜j comme la densité de la loi de Student Td(ν, xˆ ∗ j , ν−2 ν J −1 j (ˆx ∗ j )) où Jj (x) = − ∂ 2 log gk ∂x2 (x) − ∂ 2 log qj ∂x2 (x) Le degré de liberté est alors choisi expérimentalement. Soit Nj = Card(Ij,k−1). Tirer Nj échantillons i.i.d. x i k ∼ q˜j avec i ∈ Ij,k−1. 6. Calculer les poids intra-composante ω i k . Pour j = 1, . . . , M : Pour i ∈ Ij,k−1 calculer ω˜ i k = p(yk|x i k )qj (x i k ) q˜j (x i k ) (4.82) et poser ω i k = ω˜ i k P i∈Ij,k−1 ω˜ i k (4.83) 7. Calculer les coefficients de mélange αj,k selon αj,k ≈ αj,k−1 Nj P i∈Ij,k−1 ω˜ i k PM l=1 αl,k−1 Nl P i∈Il,k−1 ω˜ i k (4.84)114 4. Développement de filtres particulaires adaptés aux multimodalités L’approximation (4.84) peut se déduire par substitution des échantillons i.i.d. x i k ∼ q˜j , i ∈ Ij,k−1 dans (4.77) : on a alors Z p(yk|xk) pj (xk|y0:k−1) q˜j (xk) q˜j (xk) dxk ≈ 1 Nj X i∈Ij,k−1 p(yk|x i k )pj (x i k |y0:k−1) q˜j (x i k ) (4.85) ≈ 1 Nj X i∈Ij,k−1 p(yk|x i k )qj (x i k ) q˜j (x i k ) (4.86) = 1 Nj X i∈Ij,k−1 ω˜ i k (4.87) Echantillonnage d’importance adaptatif pour le MRPF Pour diminuer le surcoût algorithmique induit par la recherche des maxima locaux, il est judicieux d’utiliser un critère permettant de quantifier l’incohérence entre la fonction de vraisemblance gk(xk) = p(yk|xk) et la densité prédite pk|k−1(xk) = p(xk|y0:k−1), de manière à recourir aux fonctions d’importances q˜j uniquement lorsque le critère indique que le recouvrement entre les deux densités est faible. Dans le cas contraire, le déroulement des étapes de prédiction et correction se fait comme exposé dans le chapitre 2, sous-section 2.6.2 et dans la section 4.4. Un indicateur de cohérence entre gk et pk|k−1 est donné par δk = supx∈Rd gk(x) Z gk(xk)pk|k−1(xk)dxk (4.88) δk ≥ 1 et δk est d’autant plus grand que gk et pk|k−1 ont un faible recouvrement [37, p. 256]. On peut évaluer δk pour un filtre particulaire donné en utilisant les particules et les poids associées. En effet, soit pˆk|k−1 = X N k=1 ω i k−1 δx i k (4.89) une approximation de la densité prédite pk|k−1, avec PN k=1 ω i k−1 = 1. Alors, δk ≈ N supx∈Rd gk(x) PN k=1 ω i k−1 gk(x i k ) (4.90) Dans le cas particulier où le bruit v est additif gaussien, (4.90) se réduit à δk ≈ N X N k=1 ω i k−1 exp(− 1 2 kyk − hk(xk)k 2 R−1 ) (4.91) où k.k 2 W est définie par kxk 2 W = x TW x lorsque W est une matrice d × d. On peut alors exploiter l’indicateur δk, pour contrôler les instants où l’échantillonnage d’importance basé sur les densités q˜1, . . . , q˜M est utilisé. Il suffit de définir un seuil δmax > 1 qui115 contrôle le degré d’incohérence tolérable. Souvenons-nous que dans le MPF et le MRPF, le passage de la densité prédite pj (xk|y0:k−1) de la j-ème composante à la densité corrigée pj (xk|y0:k) peut se faire indépendamment des autres composantes (cf. 2.6.2). Seul le calcul des coefficients de mélange {αl,k} M l=1 dépend de l’ensemble des poids des particules. On peut alors définir pour chaque composante d’indice j, un indicateur de cohérence entre gk et pj (xk|y0:k), que nous noterons δj,k. Si δj,k ≥ δmax, l’étape de correction pour la j-ème composante se fait selon les points 3, 4, 5 et 6. Dans le cas contraire, l’étape de correction se réduit au calcul des poids intra-composante ω i k comme décrit dans le point 2.(b)i. de l’algorithme MRPF. Dans les deux cas, pour obtenir la densité a posteriori globale p(xk|y0:k), il faut calculer les coefficients {αl,k} M l=1 en fonction de {αl,k−1} M l=1. L’expression correspondante est : αj,k = αj,k−1βj,k PM l=1 αl,k−1βl,k (4.92) avec βj,k =    X i∈Ij,k−1 ω i k−1 p(yk|x i k ) si δj,k < δmax 1 Nj X i∈Ij,k−1 p(yk|x i k )qj (x i k ) q˜j (x i k ) sinon (4.93) Alternativement, on peut utiliser la taille effective de l’échantillon (4.33) comme indicateur d’incohérence entre la fonction de vraisemblance et la densité prédite. Le choix d’utiliser la densité d’importance q˜j s’opère lorsque la taille effective de la loi empirique pˆj = P i∈Ij,k ω i k δx i k , notée N j ef f , descend en dessous d’un seuil Nth,MAP inférieur ou égal au seuil de ré-échantillonnage. Nous proposons de définir ce seuil comme une fraction ζ ∈ [0, 1] du seuil de ré-échantillonnage : Nth,MAP = ζNth (4.94) L’idée est que, le ré-échantillonnage et la régularisation peuvent suffire à ramener les particules dans la zone d’intéret lorsque N j ef f est juste légèrement en dessous du seuil de ré-échantillonnage. Le coefficient ζ < 1 permet alors d’ajuster le degré de dégénérescence toléré : des valeurs petites de ζ < 1 signifient que l’échantillonnage selon q˜j est effectué uniquement lorsque les particules appartenant à la composante d’indice j sont très dégénérées. En résumé, si N j ef f < Nth,MAP N Nj , l’échantillonnage se fait selon q˜j , et dans le cas contraire selon le noyau de transition. Nous résumons ci-après l’algorithme fusionnant le MRPF et l’utilisation des modes locaux pour la phase de d’échantillonnage d’importance, que nous appellerons MRPF-MAP. Dans la partie consacrée à l’évaluation des performances, nous distinguerons deux variantes du MRPF-MAP : − le MRPF-MAP 1 : la densité instrumentale a pour covariance la covariance prédite, − le MRPF-MAP 2 : la densité instrumentale a pour covariance la covariance Prot définie par l’équation (4.64).116 4. Développement de filtres particulaires adaptés aux multimodalités Algorithme 7 : MRPF-MAP 1. [Initialisation] − Tirer N particules selon la loi initiale x i 0 ∼ µ0 − poser ω i 0 ∝ p(y0|x i 0 ) − Normaliser les ω i 0 2. Pour k ≥ 1 (a) [Prédiction] Tirer N particules x i k ∼ p(xk|x i k−1 ) (b) [Correction] i. Pour j = 1, . . . , Mk−1 − calculer N j ef f selon (4.33) − Si N j ef f ≤ Nth,MAP /Nj – Calculer x¯j,k|k−1 et Pˆ j,k|k−1 selon (4.80) et (4.79). Poser qj = ϕ(.|x¯j,k|k−1, Pˆ j,k|k−1). – Calculer xˆ ∗ j = arg maxx p(yk|x)qj (x) selon la méthode de la section 4.5.2. – Poser q˜j (x) = ϕ(x|xˆ ∗ j , Σ ∗ j ) avec Σ ∗ j = Pˆ j,k|k−1 ou Σ ∗ j = Prot – Tirer Nj échantillons i.i.d. x i k ∼ q˜j avec i ∈ Ij,k−1 et Nj = Card(Ij,k−1) – Calculer ω˜ i k et ω i k selon (4.82) et (4.83) – Poser βj,k = 1 Nj P i∈Ij,k−1 ω˜ i k − Sinon – Calculer les poids non normalisés ω˜ i k et les poids normalisés ω i k de la j-ème composante selon (4.37) et (4.38) – Poser βj,k = P i∈Ij,k−1 ω˜ i k ii. Pour j = 1, . . . , Mk−1, calculer αj,k en fonction des {αj,k−1}1≤j≤Mk−1 et des {βj,k−1}1≤j≤Mk−1 en utilisant l’équation (4.92) (c) [Clustering] Décomposer le nuage de particules en Mk clusters Cj,k. [C 0 j,k, I0 j,k] = meanshiftClustering({x i k } N i=1, {ω i k } N i=1, K, hMS, Rm, nitermax, εMS) (d) Mettre à jour les coefficients de mélange αj,k et les poids des particules intra-cluster ω i k pour la nouvelle partition C 0 j,k en utilisant les équations (2.84) et (2.85). 3. Poser j = 1. Tant que j ≤ Mk − Si αj,k < αmin supprimer le cluster Cj,k et échantillonner Nj nouvelles particules selon la procédure décrite dans la section 4.3 − Sinon – Calculer N j ef f selon (4.33) – Si N j eff Nj est inférieur au seuil de ré-échantillonnage, ré-échantillonner et régulariser les particules du cluster Cj,k selon l’algorithme décrit dans la section 4.2 – j = j + 1 4. Mettre à jour la fenêtre de lissage h MS de l’algorithme de clustering mean-shift117 4.5.4 Extension au filtre particulaire Rao-Blackwellisé : algorithme MRBPFMAP L’algorithme précédent s’étend naturellement au RBPF (cf. section 2.4.1). L’avantage du RBPF par rapport au RPF est que l’échantillonnage des particules est restreint à la partie nonlinéaire du vecteur d’état (composantes de la position horizontale dans le cas du recalage altimétrique). De plus, nous avons observé dans les simulations que les ambiguïtés de terrain sont résolues plus rapidement par le RBPF que par le RPF : cela permet en principe d’appliquer la recherche des modes locaux du RBPF pour un coût de calcul moindre puisque le nombre de modes dans le RBPF est en pratique plus faible que celui du RPF. Rappellons que le MRBPF est l’extension du MRPF où le RPF est remplacé par le RBPF en conservant l’étape de régularisation lors du ré-échantillonnage. De même, le MRBPF-MAP est l’extension du MRPF-MAP. Deux adaptations sont nécessaires afin d’obtenir cet algorithme : − le calcul de la matrice de covariance de la densité prédite correspondant à chaque cluster se fait en considérant la décomposition du vecteur d’état en la partie linéaire et non-linéaire − la correction de Kalman au niveau d’un cluster donné est effectuée différemment selon que l’échantillonnage d’importance fondée sur les modes locaux est appliquée ou non. Algorithme 8 : MRBPF-MAP si k = 1 − tirer x n,i k ∼ p(x n 0 ), i = 1, . . . , N − poser x l,i 0|0 = ¯x l 0 et P l 0|0 = P¯ 0 fin si si k = 2, . . . , n, − [Prédiction particulaire] Générer un échantillon x n,i k|k−1 ∼ p(x n k |x n 0:k−1 , y0:k−1) (cf. (2.39)), i = 1, . . . , N. Poser ω i k|k−1 = ω i k−1 , i = 1, . . . , N. − [Prédiction de Kalman] Pour i = 1, . . . , N, calculer xˆ l,i k|k−1 et P l k|k−1 d’après (2.34). − [Clustering] Décomposer le nuage de particules en Mk clusters Cj,k. [C 0 j,k, I0 j,k] = meanshiftClustering({x i k } N i=1, {ω i k } N i=1, K, hMS, Rm, nitermax, εMS) − [Correction particulaire] Calculer les poids non-normalisés omega ˜ i k = ω i k−1 p(yk|x n,i k , y0:k−1), i = 1, . . . , N où la vraisemblance p(yk|x n,i k , y0:k−1) est donnée d’après (2.40). − [Echantillonnage d’importance selon critère de dégénérescence] Pour j = 1, . . . , Mk – βj = P i∈Ij,k ω˜ i k – ω i k = ω˜ i k βj , i ∈ Ij,k – Calculer N j ef f ≤ Nth,MAP /Nj selon (4.33) – indexMAPj = 0 – Si N j ef f ≥ Nth,MAP /Nj – Poser x¯ n k|k−1,j = P i∈Ij,k ω i k|k−1x n,i k|k−1 – Poser x¯ l k|k−1,j = P i∈Ij,k ω i k|k−1x l,i k|k−1 – Poser Pˆn j,k|k−1 = P i∈Ij,k ω i k|k−1 (x n,i k|k−1 − x¯ n k|k−1,j )(x n,i k|k−1 − x¯ n k|k−1,j ) T118 4. Développement de filtres particulaires adaptés aux multimodalités – Poser Pˆl j,k|k−1 = P l k|k−1 + P i∈Ij,k ω i k|k−1 (x l,i k|k−1 − x¯ l k|k−1,j )(x l,i k|k−1 − x¯ l k|k−1,j ) T – Poser Pˆnl j,k|k−1 = P i∈Ij,k ω i k|k−1 (x n,i k|k−1 − x¯ n k|k−1,j )(x l,i k|k−1 − x¯ l k|k−1,j ) T – Poser Pˆ j,k|k−1 =   Pˆn j,k|k−1 Pˆnl j,k|k−1  Pˆnl j,k|k−1 T Pˆl j,k|k−1   et x¯j,k|k−1 =  x¯ n k|k−1,jT  x¯ l k|k−1,jT T . – Poser qj = ϕ(.|x¯j,k|k−1, Pˆ j,k|k−1). – Calculer xˆ ∗ j = arg maxx p(yk|x)qj (x) selon la méthode de la section 4.5.2. – Poser q˜j (x) = ϕ(x|xˆ ∗ j , Σ ∗ j ) avec Σ ∗ j = Pˆ j,k|k−1 ou Σ ∗ j = Prot – Tirer Nj échantillons i.i.d. ξ i ∼ q˜j avec i ∈ Ij,k−1 et Nj = Card(Ij,k−1) – Poser x n,i k = ξ n,i et x l,i k = ξ l,i avec ξ i =   ξ n,i ξ l,i  . – Calculer ω˜ i k et ω i k selon (4.82) et (4.83) – Poser βj,k = 1 Nj P i∈Ij,k−1 ω˜ i k – indexMAPj = 1 − Pour j = 1, . . . , Mk, calculer αj,k en fonction des {αj,k−1}1≤j≤Mk−1 et des {βj,k−1}1≤j≤Mk−1 en utilisant l’équation (4.92) − Calculer la moyenne pondérée partie non-linéaire xˆ n k = PMk j=1 P i∈Ij,k ω i kx n,i k . − [Ré-échantillonnage] Poser j = 1. Tant que j ≤ Mk – Si αj,k < αmin supprimer le cluster Cj,k et échantillonner Nj nouvelles particules selon la procédure décrite dans la section 4.3 – Sinon – Calculer N j ef f selon (4.33) – Si N j eff Nj est inférieur au seuil de ré-échantillonnage, ré-échantillonner et régulariser les particules du cluster Cj,k selon l’algorithme décrit dans la section 4.2 – j = j + 1 − Mettre à jour la fenêtre de lissage h MS de l’algorithme de clustering mean-shift − [Correction de Kalman] − Calculer P l k selon (2.36). – Pour j = 1, . . . , Mk – si indexMAPj = 0, calculer xˆ l,i k , i ∈ Ij,k−1 d’après (2.35) − calculer la moyenne a posteriori de la partie linéaire xˆ l k = PMk j=1 P i∈Ij,k ω i kx l,i k fin pour Les performances de cet algorithme seront illustrées dans la section suivante et comparées avec le RBPF standard.119 4.6 Evaluation des performances du MRPF, du MRPFMAP et du MRBPF-MAP Nous présentons dans cette section les performances des filtres développés sur la base de trois simulations : − Simulations A : comparaison du MRPF avec le RPF et le RBPF dans un cas nominal d’intensité de bruit de mesure, − Simulations B : comparaison du MRPF avec le MRPF-MAP dans un cas où la variance du bruit de mesure est petite, − Simulations C : comparaison du MRBPF-MAP avec le MRBPF et le RBPF dans les mêmes conditions que les simulations B. Pour chaque simulation, les résultats numériques issus des tirages Monte Carlo sont rapportés, ceci pour trois types de terrain. Dans un premier temps, nous introduisons les scénarios de référence (terrain et trajectoire associée) qui serviront de base aux simulations. Ensuite, nous rappelons le modèle d’état et d’observation. Enfin, nous présentons les performances en termes d’erreur quadratique moyenne et de taux de convergence. 4.6.1 Profils de terrain pour le recalage radio-altimétrique Afin d’évaluer les performances des algorithmes de recalage, nous nous appuyerons sur trois scénarios de navigation qui diffèrent essentiellement par le niveau d’ambigüité et/ou de dureté du profil de terrain. La dureté d’un terrain est une caractéristique locale du relief utilisée pour évaluer son degré de rugosité. Plus celle ci est grande, plus l’information contenue dans le terrain est importante. Il existe diverses définitions du facteur f de dureté, selon les industriels, la suivante est couramment utilisée en navigation par corrélation de terrain : f = rσT σp 2π (4.95) où − σT désigne l’écart-type de l’altitude locale − σp désigne l’écart-type de la pente locale Une valeur de f faible suggère que le terrain est localement plat tandis qu’une valeur de f élevée indique que le terrain est localement accidenté. On peut montrer que f ∝ σT XT , où XT est la longueur de corrélation du terrain et le rapport σT XT caractérise la rugosité de terrain d’après [27]. En pratique, la dureté f en un point de la carte est évaluée en moyennant la dureté nord fn et la dureté est fe. Afin de calculer fn et fe, les termes σT et σp sont calculées sur une croix nord-est de 5 km centrée sur le point d’intérêt. Type de terrain plat vallonné accidenté très accidenté extrêmement accidenté f 0 à 0.35 0.35 à 0.75 0.75 à 2 2 à 3.6 > 3.6 L’ambiguïté de terrain désigne la présence de portions de terrain dont les profils en altitude sont semblables. En terme de filtrage, plus un terrain est ambigu, plus l’intervalle de temps pendant lequel le filtre est multimodal est grand.120 4. Développement de filtres particulaires adaptés aux multimodalités Lors de l’évaluation et la comparaison des différents filtres de navigations, nous considérons des trajectoires rectilignes. Le radio-altimètre fournit une mesure à la fréquence de 10 Hz Les scénarios de navigation que nous considérons ont les caractéristiques suivantes : − Scénario 1 : Terrain peu ambigu, présentant une dureté moyenne. − Scénario 2 : Terrain ambigu en début de recalage, avec une dureté élevée. − Scénario 3 : Terrain très ambigu sur la première moitié de la trajectoire, moyennement ambigu sur la deuxième moitié de la trajectoire. La dureté le long de la trajectoire considérée est faible (f < 0.35). 4.6.2 Modèle d’état et d’observation Nous souhaitons estimer à chaque instant k ≥ 0, le vecteur d’erreur inertielle xk = h xk,1 xk,2 xk,3 xk,4 xk,5 xk,6 iT défini par xk =   δx δv   k (4.96) où δxk =     δxn δxe δxd     k (4.97) désigne le vecteur d’erreur en position horizontale dans le repère TGL (n, e, d) défini au chapitre 3, section 3.1.1. De même, δvk =     δvn δve δvd     k (4.98) est le vecteur d’erreur en vitesse horizontale dans ce même repère. La dynamique que nous considérons est un modèle double intégrateur défini par xk+1 = F xk + Gkwk (4.99) avec F =   I3 ∆I3 03 I3   Gk =   ∆2 2 I3 ∆I3   (4.100) − I3 est la matrice identité de taille − 03 est la matrice nulle de taille 3 × 3 − ∆ est la période d’échantillonnage. − wk est un bruit blanc gaussien de covariance Q121 (a) Profil de terrain et trajectoire (trait rouge) 0 10 20 30 40 50 60 70 80 90 1200 1300 1400 1500 1600 1700 1800 1900 temps (s) m (b) Hauteur de terrain le long de la trajectoire 0 10 20 30 40 50 60 70 80 90 1.4 1.6 1.8 2 2.2 2.4 2.6 2.8 3 3.2 3.4 dureté temps (s) (c) Dureté du terrain le long de la trajectoire122 4. Développement de filtres particulaires adaptés aux multimodalités (a) Profil de terrain et trajectoire (trait rouge) 0 20 40 60 80 100 120 400 500 600 700 800 900 1000 1100 1200 temps (s) m (b) Hauteur de terrain le long de la trajectoire 0 20 40 60 80 100 120 0.8 1 1.2 1.4 1.6 1.8 2 2.2 2.4 2.6 dureté temps (s) (c) Dureté du terrain le long de la trajectoire123 (a) Profil de terrain et trajectoire (trait rouge) 0 20 40 60 80 100 600 650 700 750 800 850 900 950 temps (s) m (b) Hauteur de terrain le long de la trajectoire 0 10 20 30 40 50 60 70 80 90 100 0 0.2 0.4 0.6 0.8 1 1.2 1.4 dureté temps (s) (c) Dureté du terrain sous la trajectoire124 4. Développement de filtres particulaires adaptés aux multimodalités Notons que dans cette étude, nous n’estimons pas les angles d’attitude étant donné que les trajectoires considérées sont assez courtes et ne permettent pas aux erreurs d’estimation d’attitude de converger suffisamment. Le modèle d’observation que nous considérons est celui d’une mesure altimétrique correspondant à la hauteur-sol bruitée par un bruit blanc additif gaussien v de variance σ 2 v . Soit λ˜, φ˜ et z˜, la latitude, longitude et altitude inertielle de l’aéronef. On introduit également le modèle numérique de terrain hMNT qui à une latitude λ et une longitude φ, fait correspondre la hauteur du relief hMNT (λ, φ). La mesure altimétrique y correspond à la différence entre l’altitude z du mobile et la hauteur du MNT correspond à la position horizontale (λ, φ) du mobile, à laquelle vient s’ajouter un bruit d’observation v ∼ N (0, σ2 v ). y = z − hMNT (λ, φ) + v (4.101) Compte tenu de l’orientation de l’axe d du TGL, l’altitude réelle z du mobile est reliée à l’altitude inertielle z˜ selon z = ˜z − δxd De même, la latitude réelle λ et la longitude réelle φ de l’aéronef s’obtiennent en fonction de leurs équivalents inertiels d’après les expressions suivantes : λ =λ˜ + δxn Rλ˜ + ˜z φ =φ˜ + δxe  Rφ˜ + ˜z  cos φ˜ (4.102) Finalement, l’équation d’observation est yk = ˜zk − xk,3 − hMNT  λ˜ + xk,1 Rλ˜ + ˜zk , φ˜ k + xk,2  Rφ˜ + ˜zk  cos φ˜ k   + vk (4.103) où Rλ˜ et Rφ˜ sont respectivement les rayons nord et est défini par les équations (3.9) et (3.10). 4.6.3 Critères de performances Pour chaque scénario nous calculons l’erreur quadratique moyenne (MSE), le taux de non divergence ainsi que la vitesse de convergence des algorithmes. Etant donné un estimateur xˆk de xk issu d’un algorithme particulaire, nous définissons momentanément ici l’erreur quadratique moyenne comme MSE(ˆxk) = Ep(xk,y0:k) h (ˆxk − xk)(ˆxk − xk) T i (4.104) Cette définition diffère légèrement de celle donnée dans le chapitre 1 et nous permet d’estimer l’erreur quadratique moyenne commise sur chacun des axes nord, est et down en position et vitesse. Dans les trois algorithmes considérés l’estimateur xˆk est la moyenne pondérée xˆk = X N i=1 ω i kx i k125 Géoïde z Figure 4.14 – Mesure altimétrique La vraie densité jointe p(xk, y0:k) étant inconnue, nous approchons le MSE sur la base de NMC = 200 réalisations du filtre : MSE(ˆxk) ≈ 1 NMC N XMC j=1 (ˆx j k − x j k )(ˆx j k − x j k ) T (4.105) où les termes xˆ j k et x j k représentent respectivement l’estimée du filtre et l’état vrai pour la j-ème réalisation du filtre. L’état vrai correspond à la vraie erreur inertielle simulée sur la bases des paramètres données dans la section 4.6.4.1. Afin d’évaluer l’efficacité des algorithmes en terme d’erreur, le MSE est comparé à la borne de Cramer-Rao a posteriori (BCR) qui correspond à une borne inférieure sur l’erreur quadratique du filtre optimal. Pour les modèles à espace d’état de type (2.6), l’erreur quadratique moyenne d’un estimateur xˆ0:k de x0:k est minorée par l’inverse de la matrice d’information de Fisher du modèle i.e. MSE(ˆx0:k) = E h (ˆx0:k − x0:k)(ˆx0:k − x0:k) T i ≥ J −1 0:k (4.106) où la matrice d’information de Fisher J0:k est définie de la manière suivante : J0:k = −Ep(x0:k,y0:k) " ∂ 2 ∂x2 0:k log p(x0:k, y0:k) # (4.107) En ce qui concerne cette étude, nous souhaitons plutôt une borne sur MSE(ˆxk). En décomposant J0:k en blocs Ak, Bk et Ck de taille respectives kd × kd, kd × d et d × d J0:k =   Ak Bk BT k Ck   (4.108)126 4. Développement de filtres particulaires adaptés aux multimodalités on a [114] MSE(ˆxk) ≥ J −1 k (4.109) Jk = Ck − BT k AkBk est la matrice d’information de Fisher associée à l’estimation de xk. En pratique, l’algorithme de Tichavsky et al. [114] qui permet de calculer Jk récursivement hors ligne. Enfin, nous estimons pour chaque filtre le taux de non-divergence qui est calculé comme le rapport du nombre de réalisations non-divergentes sur le nombre total de réalisations du filtre. On considère qu’il y a divergence d’une réalisation d’un filtre lorsque l’erreur entre l’état xk et l’estimée xˆk est grande devant la covariance de l’estimation. Plus précisément, si n désigne l’instant final de la trajectoire, une divergence est déclarée lorsque xn se trouve en dehors de l’ellipsoïde de confiance au seuil α associée à la distribution gaussienne centrée en xˆn et de covariance Pˆ n où Pˆ n désigne la covariance empirique du filtre. Autrement dit, une réalisation sera considérée divergente si (ˆxn − xn) TPˆ−1 n (ˆxn − xn) > χ2 d,1−α (4.110) où χ 2 2,1−α est le quantile d’ordre 1 − α de la distribution du khi-deux à d degrés de libertés. Dans les simulations, nous avons pris la valeur α = 0.001 pour le niveau de confiance. Ce critère est motivé par l’utilisation d’une approximation gaussienne de la distribution empirique pˆn = PN i=1 ω i n δxi n : en cas de non-divergence, l’état vrai xk doit se trouver dans l’ellipsoïde de confiance associée à la distribution gaussienne dont les moments sont ceux de pˆn. Nous reviendrons sur la divergence du filtre particulaire au chapitre 5, dans le cadre de sa détection en ligne. 4.6.4 Simulations A : évaluation des performances du MRPF Le MRPF est ici comparé à deux algorithmes particulaires classiques : − le filtre particulaire régularisé (RPF) présenté au chapitre 2, section 2.3 − le filtre particulaire Rao-Blackwellisé (RBPF) exposé au chapitre 2, section 2.4.1 4.6.4.1 Conditions de simulations Simulation de trajectoires inertielles Les trajectoires inertielles sont simulées en prenant les paramètres accélérométriques et gyrométriques suivants : − écart-type du biais accélérométrique : σa = 3.10−5 m.s−2 − période de corrélation du biais accélérométrique : τa = 60 s − écart-type du biais gyrométrique : σa = 10−6 rad.s−1 − période de corrélation du biais gyrométrique : τg = 60 s L’erreur initiale en position, vitesse et attitude suit une distribution gaussienne centrée de matrice de covariance P INS 0 = diag(σ 2 0,xn , σ2 0,xe , σ2 0,xd , σ2 0,vn , σ2 0,ve , σ2 0,vd , σ2 0,ϕ, σ2 0,θ, σ2 0,ψ) avec :127 − σ0,xn = 1000 m (écart-type en position Nord) − σ0,xe = 1000 m (écart-type en position Est) − σ0,xd = 100 m (écart-type en position Verticale) − σ0,vn = 3 m.s−1 (écart-type en vitesse Nord) − σ0,ve = 3 m.s−1 (écart-type en vitesse Est) − σ0,vd = 1 m.s−1 (écart-type en vitesse Verticale) − σ0,ϕ = σ0,θ = σ0,ψ = 0.05 π 180 ◦ (écarts-type en roulis, tangage et lacet) Paramètres du modèle de dynamique et de mesure − covariance du bruit de dynamique Q = diag  1 2 1 2 0.012  − écart-type du bruit de mesure du radio-altimètre σv = 15 m − période d’échantillonnage ∆ = 0.1 s Paramètres propres aux filtres RPF B NRP F = 5000 particules B seuil de ré-échantilonnnage : Nth = NRP F 2 MRPF B NMRP F = 5000 particules B Paramètres de l’algorithme mean-shift clustering : • rayon de fusion Rm = 100 m • nombre d’itérations maximum par procédure mean-shift : nitermax = 50 • seuil de convergence ε MS = 1 m B seuil de suppression de cluster αmin = 10−8 L’algorithme de clustering est appliqué toutes les 5 itérations afin de limiter le surcoût algorithmique RBPF B NRBP F = 5000 particules B seuil de ré-échantillonnage : Nth = NRBP F 2128 4. Développement de filtres particulaires adaptés aux multimodalités 4.6.4.2 Résultats numériques Scénario 1 0 20 40 60 80 100 100 101 102 103 104 temps (s) RMSE position nord (m) MRPF RBPF RPF BCR 0 20 40 60 80 100 100 101 102 103 104 temps (s) RMSE position est (m) MRPF RBPF RPF BCR 0 20 40 60 80 100 100 101 102 103 temps (s) RMSE position down (m) MRPF RBPF RPF BCR Figure 4.15 – RMSE en position ; noir : MRPF, vert : RBPF, bleu : RPF129 0 20 40 60 80 100 1 1.5 2 2.5 3 3.5 4 4.5 temps (s) RMSE vitesse nord (m.s−1 ) MRPF RBPF RPF BCR 0 20 40 60 80 100 0.5 1 1.5 2 2.5 3 3.5 4 temps (s) RMSE vitesse est (m.s−1 ) MRPF RBPF RPF BCR 0 20 40 60 80 100 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 temps (s) RMSE vitesse down (m.s−1 ) MRPF RBPF RPF BCR Figure 4.16 – RMSE en vitesse ; noir : MRPF, vert : RBPF, bleu : RPF130 4. Développement de filtres particulaires adaptés aux multimodalités Scénario 2 0 20 40 60 80 100 120 100 101 102 103 104 temps (s) RMSE position nord (m) MRPF RBPF RPF BCR 0 20 40 60 80 100 120 100 101 102 103 104 temps (s) RMSE position est (m) MRPF RBPF RPF BCR 0 20 40 60 80 100 120 100 101 102 103 temps (s) RMSE position down (m) MRPF RBPF RPF BCR Figure 4.17 – RMSE en position ; noir : MRPF, vert : RBPF, bleu : RPF131 0 20 40 60 80 100 120 1 1.5 2 2.5 3 3.5 4 temps (s) RMSE vitesse nord (m.s−1 ) MRPF RBPF RPF BCR 0 20 40 60 80 100 120 1 1.5 2 2.5 3 3.5 4 4.5 temps (s) RMSE vitesse est (m.s−1 ) MRPF RBPF RPF BCR 0 20 40 60 80 100 120 0 0.5 1 1.5 2 2.5 temps (s) RMSE vitesse down (m.s−1 ) MRPF RBPF RPF BCR Figure 4.18 – RMSE en vitesse ; noir : MRPF, vert : RBPF, bleu : RPF132 4. Développement de filtres particulaires adaptés aux multimodalités Scénario 3 0 20 40 60 80 100 101 102 103 104 temps (s) RMSE position nord (m) MRPF RBPF RPF BCR 0 20 40 60 80 100 101 102 103 104 temps (s) RMSE position est (m) MRPF RBPF RPF BCR 0 20 40 60 80 100 100 101 102 103 temps (s) RMSE position down (m) MRPF RBPF RPF BCR Figure 4.19 – RMSE en position ; noir : MRPF, vert : RBPF, bleu : RPF133 0 20 40 60 80 100 1 1.5 2 2.5 3 3.5 4 4.5 5 temps (s) RMSE vitesse nord (m.s−1 ) MRPF RBPF RPF BCR 0 20 40 60 80 100 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 temps (s) RMSE vitesse est (m.s−1 ) MRPF RBPF RPF BCR 0 20 40 60 80 100 0 0.2 0.4 0.6 0.8 1 1.2 1.4 temps (s) RMSE vitesse down (m.s−1 ) MRPF RBPF RPF BCR Figure 4.20 – RMSE en vitesse ; noir : MRPF, vert : RBPF, bleu : RPF134 4. Développement de filtres particulaires adaptés aux multimodalités MRPF RBPF RPF scénario 1 94 93 73 scénario 2 93 97 60 scénario 3 90 94 50 Table 4.2 – Simulations A : Taux de non divergence (%) Figure 4.21 – Conservation des modes du MRPF dans le scénario 3 : chaque mode est représenté par un nuage de point de couleur différente Analyse des résultats B scénario 1 : L’analyse du RMSE fait apparaître une précision légèrement meilleure en position du MRPF par rapport au RPF sur la partie centrale de la trajectoire, les erreurs de vitesse étant comparables. De plus, on constate que le MRPF est plus robuste aux divergences que RPF (21% de cas non divergents en plus pour le MRPF). B scénario 2 : ce terrain cumule deux types de difficultés pour le filtre particulaire : la présence d’ambiguïtés en début de recalage et l’apparition d’un dénivelé abrupt (canyon) sur la première portion du terrain, qui en terme de filtrage, correspond à un pic d’information élevé dont on a vu qu’il pouvait provoquer la divergence du filtre lorsque peu de particules tombent dans la zone d’intérêt. Ici le gain en robustesse du MRPF par rapport au RPF est bien plus marqué (33% de divergences en moins). L’erreur quadratique moyenne de la position pour les réalisations convergentes est la plus faible dans le RBPF en début de trajectoire ; sur la deuxième moitié de la trajectoire, le MRPF a un avantage en terme de précision sur le RPF et son RMSE est comparable à celui du RBPF. B Ce scénario est le plus ambigu des trois : le MRPF converge à une fréquence plus élevée135 que le RPF. On peut néanmoins constater une moindre précision du MRPF sur l’estimation des composantes de précision sur la la première moitié de la trajectoire. Ceci correspond au fait que l’algorithme maintient les modes plus longtemps que le RPF et le RBPF et que l’ambiguité persiste jusqu’à 45 secondes environ après le début du vol (cf. figure 4.21). Il se trouve que sur la portion de terrain considérée, les modes maintenus peuvent être relativement éloignés ce qui explique que l’estimation du MRPF (la moyenne pondérée) est moins précise sur la première moitié de la trajectoire. Nous observons sur les figures 4.15, 4.17 et 4.19 que le RMSE est éloigné de la BCR dans les phases multimodales, la BCR étant un critère de performance locale. En outre, le RMSE n’est pas le critère de performance le plus pertinent dans les phases multimodales car il est calculé avec l’état vrai et non avec l’espérance conditionnelle exacte qui est inconnue. Enfin, le temps de calcul du MRPF est de 1.8 fois supérieur à celui du RPF et 1.4 fois supérieur à celui du RBPF. 4.6.5 Simulations B : évaluation des performances du MRPF-MAP Afin d’illustrer les performances du MRPF-MAP, nous avons considéré un cas où la dynamique de l’aéronef est faiblement bruitée avec un radio-altimètre délivrant des mesures précises. Comme nous l’avons évoqué dans la section 4.5.1, les méthodes particulaires où la prédiction se fait selon le noyau de transition sont souvent peu efficaces, puisque beaucoup de particules sont propagées dans des zones de faible vraisemblance. Nous comparons ici le MRPF-MAP au MRPF en terme d’erreur quadratique moyenne et de robustesse aux divergences. 2 versions du MRPF-MAP utilisant deux densités d’importance légèrement différentes sont présentées-ci après : − MRPF-MAP 1 : utilise une loi d’importance locale q˜ = N (ˆx ∗ j , Pj ) (cf. 4.5.3.1) en cas d’incohérence entre la densité prédite et la fonction de vraisemblance. xˆ ∗ j et Pj désigne le MAP local et la covariance prédite du cluster d’indice j − MRPF-MAP 2 : utilise une loi d’importance locale q˜ = N (ˆx ∗ j , Prot) en cas d’incohérence entre la densité prédite et la fonction de vraisemblance où Prot est défini par (4.64). Les performances du RPF standard étant peu satisfaisantes dans le cas qui nous intéressent, elles ne sont pas exposées dans les résultats numériques. Afin de caractériser les performances du MRPF-MAP, nous distinguons deux situations : Cas faiblement multimodal Nous établissons les performances du MRPF-MAP lorsque le nombre de modes de la densité a posteriori est petit (inférieur à 10). L’objectif est d’évaluer l’apport de l’échantillonnage d’importance, lorsque le coût lié à la recherche des maxima locaux est modeste. Cette situation est simulée en considérant les paramètres suivants : − écart-type du bruit de mesure du radio-altimètre σv = 1 m − L’état initial x0 suit une distribution gaussienne centrée de covariance P INS 0 = diag((100m) 2 , (100m) 2 , (100m) 2 , (3m/s) 2 , (3m/s) 2 , (1m/s) 2 )136 4. Développement de filtres particulaires adaptés aux multimodalités Cas fortement multimodal Cette situation est caractérisée par la présence d’un nombre important de modes en début de recalage de sorte que l’échantillonnage d’importance basé sur les maxima locaux occasionne un coût de calcul non-négligeable s’il est appliqué brutalement. Afin de limiter ce surcoût algorithmique, l’échantillonnage d’importance de densité q˜ n’est activé uniquement que lorsque le filtre présente moins de 30 modes. Ce cas est simulé en prenant les paramètres suivants : − écart-type du bruit de mesure du radio-altimètre σv = 5 m − L’état initial x0 suit une distribution gaussienne centrée de covariance P INS 0 = diag((1000m) 2 , (1000m) 2 , (100m) 2 , (3m/s) 2 , (3m/s) 2 , (1m/s) 2 ) 4.6.5.1 Conditions de simulations Paramètres propres aux filtres MRPF B NMRP F = 4000 particules B seuil de ré-échantilonnage : Nth = NMRP F 2 MRPF-MAP B NMRP F −MAP = 3000 particules B seuil de déclenchement de l’échantillonnage selon la loi d’importance centrée sur le MAP : Nth,MAP = 3 4Nth B Algorithme d’optimisation : BFGS [10] B Paramètres de l’algorithme mean-shift clustering : • rayon de fusion Rm = 25 m • nombre d’itérations maximum par procédure mean-shift : nitermax = 50 • seuil de convergence ε MS = 1 m B seuil de suppression de cluster αmin = 10−10137 4.6.5.2 Résultats numériques Cas faiblement multimodal (scénario 2) 0 10 20 30 40 50 10−1 100 101 102 103 temps(s) RMSE position nord (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 10 20 30 40 50 10−1 100 101 102 103 temps(s) RMSE position est (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 10 20 30 40 50 10−1 100 101 102 temps(s) RMSE position down (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR Figure 4.22 – RMSE en position138 4. Développement de filtres particulaires adaptés aux multimodalités 0 10 20 30 40 50 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 temps(s) RMSE vitesse nord (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 10 20 30 40 50 0 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 temps(s) RMSE vitesse est (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 10 20 30 40 50 0 0.5 1 1.5 2 2.5 temps(s) RMSE vitesse down (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR Figure 4.23 – RMSE en vitesse139 Analyse des résultats Les taux de non-divergence sont de 92% pour le MRPF-MAP 1 et le MRPF-MAP 2 et de 78% pour le MRPF standard. Les courbes d’erreur quadratique moyenne de la figure 4.22 montrent que la borne de Cramer-Rao a posteriori sur l’erreur de postition est atteinte plus rapidement dans le cas de l’utilisation du MRPF. En revanche, le RMSE est plus élevé en début de recalage, ce qui peut s’expliquer par le fait que le MRPF-MAP maintient plus longtemps des clusters dont le recouvrement avec la fonction de vraisemblance est initialement faible mais augmente petit à petit. Les choix différents de la covariance de la densité d’importance ne semblent pas avoir d’incidence sur la robustesse ou la précision du MRPF-MAP.140 4. Développement de filtres particulaires adaptés aux multimodalités Cas fortement multimodal Scénario 1 0 20 40 60 80 100 100 101 102 103 temps(s) RMSE position nord (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 100 101 102 103 temps(s) RMSE position est (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 10−1 100 101 102 temps(s) RMSE position down (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR Figure 4.24 – RMSE en position141 0 20 40 60 80 100 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 temps(s) RMSE vitesse nord (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 0.5 1 1.5 2 2.5 3 3.5 4 4.5 temps(s) RMSE vitesse est (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 0 0.2 0.4 0.6 0.8 1 1.2 1.4 1.6 temps(s) RMSE vitesse down (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR Figure 4.25 – RMSE en vitesse142 4. Développement de filtres particulaires adaptés aux multimodalités Scénario 2 0 20 40 60 80 100 120 100 101 102 103 104 temps(s) RMSE position nord (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 120 100 101 102 103 104 temps(s) RMSE position est (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 120 10−1 100 101 102 temps(s) RMSE position down (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR Figure 4.26 – RMSE en position143 0 20 40 60 80 100 120 0.5 1 1.5 2 2.5 3 3.5 4 4.5 temps(s) RMSE vitesse nord (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 120 0.5 1 1.5 2 2.5 3 3.5 4 4.5 temps(s) RMSE vitesse est (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 120 0 0.5 1 1.5 2 2.5 temps(s) RMSE vitesse down (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR Figure 4.27 – RMSE en vitesse144 4. Développement de filtres particulaires adaptés aux multimodalités Scénario 3 0 20 40 60 80 100 100 101 102 103 temps(s) RMSE position nord (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 100 101 102 103 temps(s) RMSE position est (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 10−1 100 101 102 103 temps(s) RMSE position down (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR Figure 4.28 – RMSE en position145 0 20 40 60 80 100 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 temps(s) RMSE vitesse nord (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 0.5 1 1.5 2 2.5 3 3.5 4 4.5 5 5.5 temps(s) RMSE vitesse est (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR 0 20 40 60 80 100 0 0.2 0.4 0.6 0.8 1 1.2 1.4 temps(s) RMSE vitesse down (m) MRPF−MAP 1 MRPF−MAP 2 MRPF BCR Figure 4.29 – RMSE en vitesse146 4. Développement de filtres particulaires adaptés aux multimodalités MRPF-MAP 1 MRPF-MAP 2 MRPF scénario 1 78 78 72 scénario 2 80 82 73 scénario 3 78 76 73 Table 4.3 – Simulations B : Taux de non divergence (%) Analyse des résultats B scénario 1 : les deux versions du MRPF-MAP sont plus précises en termes de RMSE comparativement au MRPF sur une bonne partie de la trajectoire. En revanche, il semble que l’utilisation de la densité d’importance q˜2 ne permet pas de gagner en précision sur l’estimation de la position et de la vitesse de l’aéronef par rapport à q˜1 (voir la figure 4.24). Les deux versions du MRPF-MAP sont également plus robustes aux divergences (6% de cas convergents supplémentaires) que le MRPF standard. B scénario 2 : même constat ici ; les deux versions du MRPF-MAP permettent de gagner jusqu’à 10 mètres de précision supplémentaire en position nord et est dans la phase monomodale, et 3 mètres en erreur verticale (cf. figure 4.26). Le MRPF-MAP 1 et le MRPF-MAP 2 présentent ici des gains en taux de non-divergence de 7% et 9% respectivement relativement au MRPF. L’utilisation de la densité d’importance q˜2 dans le MRPF-MAP permet d’obtenir une modeste augmentation des cas convergents par rapport à q˜1. B scénario 3 : Le MRPF apporte un gain modéré en terme de robustesse (5% de cas convergents en plus pour le MRPF-MAP 1, 3% pour le MRPF-MAP 2). 4.6.6 Simulations C : évaluation des performances du MRBPF-MAP Le MRBPF-MAP est l’extension du MRPF-MAP obtenu en considérant un filtre particulaire Rao-Blackwellisé à la place du RPF standard. Dans l’algorithme MRBPF-MAP que nous avons implémenté, la procédure de régularisation a été conservé afin d’assurer la robustesse au petit bruit d’état. L’extension au RBPF est justifié expérimentalement par le fait que le filtre RaoBlackwellisé élimine plus rapidement les modes non-pertinents de la densité a posteriori. Dans ce cas, on peut espérer utiliser l’échantillonnage d’importance fondé sur les modes locaux dès les premiers instants de filtrage, là où il faut attendre quelques itérations dans le cas du MRPFMAP. Dans les simulations suivantes, l’échantillonnage selon la densité d’importance q˜ = ˜q2 n’est enclenché que lorsque le filtre comporte moins de 20 modes afin de limiter le temps de calcul lié à la recherche des modes. Les paramètres du modèles sont les suivants : B écart-type du bruit de mesure du radio-altimètre : σv = 5 m B l’état initial x0 suit une distribution gaussienne centrée de covariance P INS 0 = diag((1000m) 2 , (1000m) 2 , (100m) 2 , (3m/s) 2 , (3m/s) 2 , (1m/s) 2 )147 Paramètres propres aux filtres RBPF B NRBP F = 4000 particules B seuil de ré-échantilonnage : Nth = NRBP F 3 MRBPF et MRBPF-MAP B NMRBP F = 4000 particules B NMRBP F −MAP = 3000 particules B seuil de déclenchement de l’échantillonnage selon la loi d’importance centrée sur le MAP : Nth,MAP = 3 4Nth B seuil de suppression de cluster αmin = 10−20148 4. Développement de filtres particulaires adaptés aux multimodalités 4.6.6.1 Résultats numériques Scénario 1 0 20 40 60 80 100 100 101 102 103 temps (s) RMSE position nord (m) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 100 101 102 103 temps (s) RMSE position est (m) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 10−1 100 101 102 103 temps (s) RMSE position down (m) MRBPF−MAP MRBPF RBPF BCR Figure 4.30 – RMSE en position149 0 20 40 60 80 100 0.5 1 1.5 2 2.5 3 3.5 4 4.5 temps (s) RMSE vitesse nord (m.s−1 ) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 0.5 1 1.5 2 2.5 3 3.5 4 4.5 temps (s) RMSE vitesse est (m.s−1 ) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 0 0.5 1 1.5 2 2.5 3 3.5 4 MRBPF−MAP MRBPF RBPF BCR Figure 4.31 – RMSE en vitesse150 4. Développement de filtres particulaires adaptés aux multimodalités Scénario 2 0 20 40 60 80 100 120 100 101 102 103 temps (s) RMSE position nord (m) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 120 100 101 102 103 104 temps (s) RMSE position est (m) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 120 10−1 100 101 102 temps (s) RMSE position down (m) MRBPF−MAP MRBPF RBPF BCR Figure 4.32 – RMSE en position151 0 20 40 60 80 100 120 0.5 1 1.5 2 2.5 3 3.5 4 temps (s) RMSE vitesse nord (m.s−1 ) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 120 0.5 1 1.5 2 2.5 3 3.5 4 4.5 temps (s) RMSE vitesse est (m.s−1 ) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 120 0 1 2 3 4 5 6 7 8 9 temps (s) RMSE vitesse down (m.s−1 ) MRBPF−MAP MRBPF RBPF BCR Figure 4.33 – RMSE en vitesse152 4. Développement de filtres particulaires adaptés aux multimodalités Scénario 3 0 20 40 60 80 100 100 101 102 103 temps (s) RMSE position nord (m) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 100 101 102 103 104 temps (s) RMSE position est (m) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 10−1 100 101 102 103 temps (s) RMSE position down (m) MRBPF−MAP MRBPF RBPF BCR Figure 4.34 – RMSE en position153 0 20 40 60 80 100 0.5 1 1.5 2 2.5 3 3.5 4 4.5 temps (s) RMSE vitesse nord (m.s−1 ) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 0.5 1 1.5 2 2.5 3 3.5 4 4.5 temps (s) RMSE vitesse est (m.s−1 ) MRBPF−MAP MRBPF RBPF BCR 0 20 40 60 80 100 0 0.2 0.4 0.6 0.8 1 1.2 1.4 temps (s) RMSE vitesse down (m.s−1 ) MRBPF−MAP MRBPF RBPF BCR Figure 4.35 – RMSE en vitesse154 4. Développement de filtres particulaires adaptés aux multimodalités RBPF MRBPF MRBPF-MAP scénario 1 71 74 86 scénario 2 83 79 93 scénario 3 71 73 84 Table 4.4 – Simulations C : Taux de non divergence (%) Analyse des résultats B scénario 1 : de la 30ème à la 60ème seconde de la trajectoire, le RMSE des composantes de position du MRBPF-MAP est significativement inférieur à celui du RBPF et du MRBPF comme le montre la figure 4.30. Le gain en précision sur les composantes de vitesse est peu significatif excepté pour la composante de vitesse verticale. Enfin, le gain du MRBPF-MAP en terme de taux non-divergence est de 12% comparé au MRBPF et de 15% par rapport au RBPF standard. B scénario 2 : Ici, on remarque également que le RMSE en position du MRBPF-MAP est inférieur à celui du RBPF et du MRBPF à partir de la 20ème seconde (fig. 4.32). L’analyse de la figure 4.33 révèle que les composantes de vitesses ne sont pas estimées avec plus de précision par le MRBPF-MAP. Le taux de non-divergence du MRBPF-MAP est supérieur de 14% par rapport au MRBPF et 10% par rapport au RBPF. B scénario 3 : La figure 4.34 ne montre pas d’amélioration appréciable en précision pour le MRBPF-MAP pour les composantes de position. Le RMSE du MRBPF-MAP est légèrement plus élevé pour les composantes de vitesse horizontale (cf. fig. 4.35). En revanche le MRBPF-MAP converge à 84% contre 73% pour le MRBPF et 71% pour le RBPF. Pour le choix de paramètres précédent, le temps de calcul du MRBPF-MAP est environ 2.3 fois celui du RBPF.155 Conclusion du Chapitre 4 Nous avons développé dans ce chapitre un nouvel algorithme, le MRPF, permettant de gérer le caractère fortement multimodal de la loi a posteriori en début de recalage. Cet algorithme est étendu au filtre Rao-Blackwellisé et donne lieu au MRBPF. L’un des apports du MRPF est l’identification des modes de la loi empirique du filtre particulaire grâce à l’algorithme mean-shift. La formulation du MRPF sous forme de mélange de densités permet la régularisation locale du nuage de particules qui est plus robuste que l’implémentation classique de la régularisation qui suppose implicitement une loi a posteriori monomodale. Enfin, nous avons introduit une procédure d’échantillonnage d’importance fondée sur les modes locaux de la densité a posteriori. Chaque mode local est calculé en approximant la densité prédite de chaque composante du mé- lange par une densité gaussienne dont les moments sont calculés empiriquement. La matrice de covariance de la densité d’importance est orientée suivant les axes principaux de la loi a posteriori, ce qui permet de générer le nuage de particules dans les zones d’intérêt. Le déclenchement de cette procédure d’échantillonnage d’importance est fait adaptativement en contrôlant la taille effective de l’échantillon au niveau de chaque cluster. L’algorithme résultant, le MRPF-MAP, a été comparé au MRPF dans un cas où les techniques d’échantillonnage classiques sont mises en difficulté, par exemple lorsque la variance du bruit de mesure est petite. Des gains en robustesse et en précision des filtres proposés ont été observés sur ces scénarios. L’extension du MRPF-MAP au filtre Rao-Blackwellisé, notée MRBPF-MAP, a également été implémentée. Les simulations ont montré que l’utilisation de la procédure d’échantillonnage d’importance précédente permet d’obtenir des gains en terme de taux non-divergence encore plus significatifs que ceux obtenus avec le MRPF-MAP.156 4. Développement de filtres particulaires adaptés aux multimodalités157 Chapitre 5 Test d’intégrité pour le filtrage particulaire : application au recalage radio-altimétrique 5.1 Introduction Les algorithmes de filtrage particulaire permettent d’obtenir une estimation sur l’état d’un système donné avec une confiance associée. Cette estimation peut servir d’entrée à une architecture dont la fonction est potentiellement critique : il est donc nécessaire de contrôler tout au long de la procédure d’estimation la fiabilité de l’estimée particulaire. L’objectif de ce chapitre est de proposer un cadre de détection séquentielle de divergence du filtre particulaire. En première approximation, nous définirons la divergence du filtre comme un état tel que l’erreur d’estimation est grande devant le domaine de confiance représenté par le système de particules et tel que la succession des étapes de prédiction, de correction et de ré-échantillonnage ne permet pas au filtre de converger vers l’état vrai. Nous ouvrons ce chapitre avec un aperçu rapide des méthodes statistiques pour la détection de changement. Après avoir rappelé quelques résultats sur les détecteurs de divergence en filtrage de Kalman, nous formulons un test d’hypothèse pour la détection de divergence adapté aux filtres particulaires, que nous mettons en oeuvre grâce à l’algorithme CUSUM [98]. Nous illustrons ensuite les performances du détecteur de divergence sur la problématique du recalage altimétrique par filtrage particulaire et nous évaluons l’apport de la ré-initialisation du filtre en cas de détection de divergence. 5.2 Outils statistiques pour la détection de changement 5.2.1 Test d’hypothèses Dans les applications de détection de pannes ou de contrôle d’intégrité, on s’intéresse à une suite de données suivant un modèle paramétrique dont les paramètres subissent des changements158 5. Test d’intégrité pour le filtrage particulaire : application au recalage radio-altimétrique brusques à des instants inconnus [4] : ces changements indiquent typiquement un évènement anormal (panne, . . . ). L’objectif est alors de déterminer au plus tôt si un changement a eu lieu et éventuellement à quel instant il est survenu. Formellement, c’est un problème de test d’hypothèse qui peut être séquentiel ou non. Soit (uk)k≥1 une suite variables aléatoires de R r , caractéristiques du système que l’on souhaite contrô- ler. On suppose que les uk sont indépendants et distribués selon une loi paramétrique de densité pθ, θ ∈ Θ où Θ est un sous-ensemble de R. Soit Θ0 et Θ1 deux sous-ensembles disjoints de l’espace des paramètres Θ. On souhaite décider entre les hypothèses H0 et H1 définis par    H0 : θ ∈ Θ0 H1 : θ ∈ Θ1 (5.1) Deux cas peuvent se produire : 1. Θ0 = {θ0} et Θ1 = {θ1} avec θ0, θ1 ∈ R. C’est un cas de test d’hypothèses simple. 2. Au moins l’un des ensembles Θi , i = 1, 2 contient plus d’un élément : c’est un test d’hypothèses composites Définition 1. Etant donné un n-échantillon u1, . . . , un, un test statistique entre deux hypothèses H0 et H1 est une application D : R r×n 7→ {0, 1} qui à (u1, . . . , un) 4 = U n 1 associe D(U n 1 ) =    0 si on accepte H0 1 si on accepte H1 D(U n 1 ) est une variable aléatoire appelée règle (ou fonction) de décision. La qualité d’un test d’hypothèses est habituellement évaluée grâce aux erreurs de première et deuxièmes espèces. L’erreur de première espèce α0(θ) est la probabilité de rejeter H0 sachant que H0 est vrai tandis que l’erreur de deuxième espèce α1(θ) est la probabilité de rejeter H1 à tort, i.e. α0 = P(D(U n 1 ) 6= 0|H0) α1 = P(D(U n 1 ) 6= 1|H1) Enfin la puissance d’un test β est définie comme la probabilité d’accepter H1 lorsque θ ∈ Θ1, càd β = 1 − α1. Lorsque l’hypothèse est composite α0 dépend de la valeur inconnue du paramètre θ ∈ Θ0. On définit alors le niveau α du test comme α = supθ∈Θ0 α0(θ). 5.2.2 Test séquentiel entre hypothèses simples L’analyse séquentielle consiste à déterminer un test entre deux hypothèses H0 et H1, lorsque les données (uk)k≥1 sont observées les unes après les autres [119, 4].159 Définition 2. Un test séquentiel entre H0 et H1 est un couple (D, T) où T est un temps d’arrêt et D(U T 1 ) une règle de décision. En général, les test séquentiels exigent une taille de données moindre pour des risques α0 et α1 donnés par rapport aux tests non-séquentiels. Définition 3. Etant donné deux hypothèses simples H0 : θ = θ0 et H1 : θ = θ1, on définit le rapport de vraisemblance Sk = ln pθ1 (U k 1 ) pθ0 (U k 1 ) . (D, T) est un test séquentiel du rapport de probabilités (ou SPRT pour Sequential Probability Ratio Test) entre H0 et H1 lorsque les données (uk)k≥1 sont observées séquentiellement et qu’à l’instant k : − on accepte H0 lorsque Sk ≤ −a − on accepte H1 lorsque Sk ≥ h − on recueille les données et on teste tant que −a < Sk < h où a et h sont des seuils finis. La règle de décision correspondante est D(U T 1 ) =    0 si ST ≤ −a 1 si ST ≥ h (5.2) où T = min {n ≥ 1 | {Sn ≤ −a} ou {Sk ≥ h}} est le temps d’arrêt. 5.2.3 Algorithme CUSUM pour la détection de changement en ligne L’algorithme CUSUM (CUmulative SUM) de Page [98] est un cas particulier de SPRT pour le test de changement de moyenne d’une distribution gaussienne univarié très utilisé en détection de changement. Dans sa version originale, on suppose que la suite de v.a. (uk)k suit une distribution gaussienne de densité pθ où θ est la moyenne et σ 2 la variance. De plus, on suppose qu’à un instant t0 inconnu, le paramètre θ change de valeur,    θ = θ0 si t < t0 θ = θ1 si t ≥ t0 (5.3) L’objectif étant de détecter la présence d’un changement de paramètre, le principe du CUSUM est de tester de manière répétée entre H0 : θ = θ0 et H1 : θ = θ1 en utilisant le SPRT. L’idée de Page est alors de réinitialiser le CUSUM tant que la décision est 0. Dès que la décision vaut 1, la procédure s’arrête et l’instant ta correspondant est le temps d’alarme. Le SPRT nécessite de préciser deux seuils −a et h : Page a montré de manière intuitive que le seuil a optimal est a = 0, ce qui fut démontré de manière plus rigoureuse par Shiryaev [111]. En notant Dk = D(U k 1 ) la règle de décision, celle-ci peut s’exprimer de manière récursive pour une distribution de densité pθ quelconque, comme : Dk =    Dk−1 + ln pθ1 (uk) pθ0 (uk) si Dk−1 + ln pθ1 (uk) pθ0 (uk) > 0 0 sinon (5.4)160 5. Test d’intégrité pour le filtrage particulaire : application au recalage radio-altimétrique Le temps d’arrêt ta est alors défini par ta = inf {k ≥ 1 | Dk ≥ h} (5.5) Dans le cas où pθ est une densité gaussienne de moyenne θ, la fonction de décision se ré-écrit de la manière suivante : Dk = " Dk−1 + θ1 − θ0 σ 2 uk − θ1 + θ0 2 !#+ (5.6) où pour x ∈ R, (x) + = max(0, x). Supposons que le temps de changement t0 soit inconnu mais déterministe. Définition 4 (Temps moyen entre deux fausses alarmes). Le temps moyen T¯ entre deux fausses alarmes est défini par la quantité suivante : T¯ = Eθ0 (ta) (5.7) Définition 5 (Essentiel supremum). Soit (Yi)i∈I , une famille de v.a réelles sur (Ω, F, P), bornée par une autre variable. On dit que Y est l’essentiel supremum et on écrit Y = ess supi∈I Yi si − ∀i ∈ I, P(Yi ≤ Y ) = 1 − pour toute v.a. réelle Z, P(Yi ≤ Y ) = 1 ⇔ P(Y ≤ Z) = 1 Définition 6 (Délai moyen de détection conditionnel). Le délai moyen de détection conditionnel est défini par Et0 (ta − t0 + 1|ta ≥ t0, U t0−1 1 ) (5.8) où Et0 est l’espérance mathématique découlant de P 1 t0 , la distribution des observations u1,. . . ,ut0−1, ut0 ,. . . , uta , lorsque t0 = 1, 2 . . . . Le délai moyen de détection conditionnel permet de donner un sens au pire retard moyen. Le pire retard moyen correspond à une combinaison d’un temps de changement t0 et d’une trajectoire d’observations qui maximisent le délai moyen de détection conditionnel. Définition 7 (Pire retard moyen [78]). Le pire retard moyen τ ∗ est défini par τ ∗ = sup t0≥1 ess sup Et0 h ta − t0 + 1|ta ≥ t0, U t0−1 1 i (5.9) En détection de changement en-ligne, l’analogue de la puissance du test est la fonction ARL (Average Run Length). Définition 8 (Fonction ARL). On définit la fonction ARL comme ARL(θ) = Eθ(ta) (5.10) La fonction ARL est directement liée à deux indicateurs de performances de l’algorithme de détection :161 − Lorsque θ = θ0, ARL(θ0) = Eθ0 (ta) et la fonction ARL indique le temps moyen entre deux fausses alarmes. Idéalement, cette quantité doit être la plus grande possible. − Lorsque θ = θ1, ARL(θ1) = Eθ1 (ta) et la fonction ARL indique le délai moyen de détection, que l’on souhaite le plus petit possible. L’algorithme CUSUM est asymptotiquement optimal au sens où il minimise le pire retard moyen τ ∗ lorsque le temps moyen entre deux fausses alarmes tend vers l’infini [78]. Un résultat non asymptotique de Moustakides [87] montre que le CUSUM minimise le pire retard moyen parmi les algorithmes dont le temps moyen T¯ entre deux fausses alarmes vérifie T >¯ T¯ 0 où T¯ 0 est petit dans la plupart des cas. 5.3 Un aperçu sur les tests d’intégrité pour les filtres de Kalman Rappelons que le filtre de Kalman est le filtre optimal pour le modèle linéaire gaussien défini par :    xk = Fkxk−1 + wk yk = Hkxk + vk (5.11) où wk et vk sont des v.a. décrivant les bruits de dynamique et de mesure, wk et vk sont des bruits blanc centrés de matrices de covariance respectives Qk et Rk, indépendante de la condition initiale x0. Enfin, Fk, Bk, Hk et Dk sont des matrices déterministes et connues. Le filtre de Kalman consiste à calculer récursivement le couple moyenne/covariance prédite (ˆxk|k−1, Pk|k−1) ainsi que la moyenne et covariance corrigée (ˆxk, Pk), pour k ≥ 1 (voir le chapitre 1, section 1.3.1.1). 5.3.1 Définition et causes de divergences pour le filtre de Kalman et ses variantes Dans la littérature sur le filtre de Kalman, la divergence du filtre correspond au fait que la matrice de covariance de l’erreur d’estimation calculée par le filtre devient trop petite par rapport à la vraie matrice de covariance [40, 8]. Pour un modèle effectivement linéaire gaussien, le filtre de Kalman est le filtre optimal. Pour autant, la divergence peut survenir à cause : − d’une méconnaissance des paramètres du modèle (statistiques des bruits de dynamique et de mesure erronées par exemple) − d’erreurs numériques (inversion de matrices mal conditionnées, arrondis, troncature,. . . ) Les deux types d’erreurs peuvent faire que la matrice de covariance calculée par le filtre devient exagérément petite de sorte que les mesures reçues par le filtre n’influencent que marginalement l’estimation du filtre lors de l’étape de correction de Kalman. Les études sur la divergence du filtre de Kalman distinguent la divergence apparente (apparent divergence) et la vraie divergence (true divergence) [40]. La divergence apparente correspond à un filtre dont la matrice de covariance estimée reste bornée mais dont l’erreur associée est très grande. La vraie divergence correspond à une matrice de covariance calculée par le filtre qui162 5. Test d’intégrité pour le filtrage particulaire : application au recalage radio-altimétrique augmente infiniment en norme [40]. Le filtre de Kalman étendu (EKF) et le filtre de Kalman sans parfum (UKF) sont des filtres qui procèdent pour le premier, par une linéarisation des équations du modèle et pour le second, par une approximation des moments a posteriori fondée sur une quadrature de Gauss. Dans le cas où les non-linéarités du système sont importantes au voisinage des états prédits et corrigés, les termes d’ordre 2 et plus ne sont pas toujours négligeables et l’EKF est susceptible de diverger. L’approximation de la moyenne et de la covariance a posteriori fournie par l’UKF est correcte à l’ordre 3 [63], mais cela ne garantit aucunement la stabilité du filtre lorsque la fonction est fortement non-linéaire. 5.3.2 Tests de détection de divergence en filtrage de Kalman Les tests de détection de divergence utilisés pour les filtres de Kalman reposent essentiellement sur les propriétés statistiques du processus d’innovation (k)k≥1 défini comme la différence entre la mesure reçue à l’instant k et la mesure prédite par le filtre yˆk|k−1 : k = yk − yˆk|k−1 (5.12) ce qui peut être ré-écrit sous la forme k = yk − Hkxˆk|k−1 (5.13) L’innovation quantifie l’information apportée par l’observation yk sur l’estimation de xˆk. En théorie, k est un bruit blanc gaussien de matrice de covariance Σk = HkPk|k−1HT k +Rk. Ceci permet de définir des tests d’hypothèses basés sur la distribution de k. L’un des tests les plus couramment utilisés est basé sur le fait que la v.a. rk =  T k Σ −1 k k suit une distribution du khi-deux à m degrés de libertés [8] où m est taille du vecteur des observations : une divergence peut être déclarée lorsque rk dépasse un seuil qα correspondant au quantile d’ordre α = 0.95, 0.99, . . . de la loi du khi-deux à m degrés de libertés. Des tests d’hypothèse vérifiant le caractère "blanc" de l’innovation ont également été proposés [84] : en effet, k est théoriquement un bruit blanc gaussien. Ces tests de blancheur sont basés sur la fonction d’autocorrélation empirique de k. D’un point de vue pratique, les test de divergence précédents ont été largement appliqués, notamment en hybridation GPS/INS par filtrage de Kalman [82, 2, 86, 61]. Un critère similaire relatif à l’EKF a été proposé par [109]. Dans ce critère la mesure prédite yˆk|k−1 est essentiellement approchée par hk(ˆxk|k−1) où hk est la fonction d’observation non-linéaire. [109] définit alors le processus normalisé ηk comme ηk =  yk − hk(ˆxk|k−1 T S −1 k  yk − hk(ˆxk|k−1  , (5.14) où Sk est la matrice approchée de l’innovation obtenue par linéarisation autour de l’état prédit. Sk = ∇T hk(ˆxk|k−1)Pk|k−1∇hk(ˆxk|k−1) + Rk (5.15) La divergence peut alors être détectée de la même manière que pour un filtre de Kalman standard en comparant ηk à un seuil.163 5.4 Détection de divergence en filtrage particulaire Etat de l’art Contrairement au filtre de Kalman, la problématique de détection de divergence en filtrage particulaire n’a pas fait l’objet de beaucoup d’études publiées. Une recherche bibliographique fait apparaitre les travaux de Giremus [49] et Turgut [116]. Les premiers portent sur le filtrage particulaire dans le cadre d’hybridation serrée GPS/INS et les seconds sur la localisation indoor à partir de signaux radio. Dans [49], l’auteur propose en réalité un critère de dégénérescence du filtre basé sur la somme des poids non-normalisés qui permet d’enclencher une procédure de régularisation. Ce n’est donc pas à strictement parler un critère permettant de détecter la divergence du filtre au sens d’une incohérence irrémédiable entre le nuage de particules et l’état vrai. Il est avancé que la taille effective de l’échantillon Nef f est un indicateur peu fiable de la dégénérescence du nuage de particule lorsque toutes les particules ont un poids non normalisé proche d’une valeur commune très faible. Ceci arrive par exemple lorsque le bruit de dynamique est petit, de sorte que les particules occupent une région étroite de l’espace. Ainsi, les vraisemblances sont comparables et par ricochet les poids normalisés aussi. Nef f peut alors être proche du nombre total de particules N, indiquant (à tort) que l’ensemble des particules n’est pas dégénéré. Etant donné l’ensemble des poids non normalisés {ω˜ i k} N i=1, la statistique de test proposée dans [49] est la somme des poids non normalisés Lk : Lk = X N k=1 ω˜ i k (5.16) Lk représente en fait une approximation de la vraisemblance prédite p(yk|y0:k−1) (voir l’équation (2.72), section 2.6.2). Sur la base de simulations, Giremus montre que le processus Lk oscille autour d’une moyenne < Lk > en cas de fonctionnement normal et est soumis à une brusque décroissance lorsque le filtre devient dégénéré. Ce changement de moyenne est détecté au moyen de l’algorithme CUSUM présenté précédemment. La particularité de ce test est qu’il nécessite d’estimer la moyenne en fonctionnement normal (hypothèse H0) en ligne : ceci au fait en prenant la moyenne de Lk sur une fenêtre glissante. A ce stade, nous notons que cette méthode a été utilisée dans [49] comme critère de ré-échantillonnage et régularisation et non pas de divergence au sens où le nuage de particules s’est éloigné irrémédiablement de l’état vrai. Par ailleurs, la statistique proposée n’est pas normalisée ce qui peut rendre son application dans un autre contexte difficile, notamment pour ce qui est du réglage des seuils intervenant dans le test. Dans [116], la méthode de détection proposée repose sur une évaluation de la divergence de Kullback-Leibler (2.21) DKL(p, pˆ) entre la distribution empirique pˆ donnée par le système de particules pondérées et la loi conditionnelle inconnue de densité p. Le cadre d’application étant celui de la localisation indoor d’une cible, l’état à estimer est de dimension deux (position horizontale). Pour évaluer DKL(p, pˆ), les auteurs cherchent une approximation de p, indépendante du filtre. La loi conditionnelle inconnue est exprimée selon la loi de Bayes, comme le produit de la loi a priori et de la fonction de vraisemblance. La loi a priori est représentée par une loi uniforme sur la surface admissible (par exemple, les corridors du bâtiment), tandis que la fonction de164 5. Test d’intégrité pour le filtrage particulaire : application au recalage radio-altimétrique vraisemblance est représentée par une somme pondérée de fonctions constantes sur un domaine rectangulaire. Finalement, la constante de normalisation peut être calculée étant donné que le produit de la loi a priori et de la vraisemblance est « constant par morceaux », les morceaux étant des rectangles du plan. La densité a posteriori p est donc représentée par un histogramme bi-dimensionnel, dans lequel les rectangles sont de taille variable. Afin d’obtenir la divergence de Kullback-Leibler DKL(p, pˆ), les auteurs utilisent une technique analogue à l’intégration de Riemann en deux dimensions. La divergence est détectée lorsque DKL(p, pˆ) dépasse un seuil. L’objectif final est de réinitialiser le filtre une fois que la divergence est détectée. Les auteurs reportent des gains en erreur lorsque le détecteur de divergence est couplée au filtre particulaire, mais affirment que le seuil sur DKL(p, pˆ) doit être réglé précautionneusement de manière à ne ré-initialiser le filtre que lorsque le filtre ne peut plus se recaler lui même. De plus cette méthode n’est applicable que pour un vecteur d’état de dimension inférieure ou égale à 2, étant donné la nature de l’approximation de la divergence de Kullback-Leibler, ce qui restreint son utilisation au recalage altimétrique au cas où l’altitude est supposée connue. 5.5 Formulation d’un test d’hypothèse pour la détection de divergence d’un filtre particulaire Dans cette section, nous définissons un nouveau test d’hypothèse pour la détection de la divergence d’un filtre particulaire quelconque. Comme d’habitude nous considérons le système non-linéaire suivant :    xk = f(xk−1) + wk yk = h(xk) + vk (5.17) avec les hypothèses habituelles présentées au chapitre 2, section 2.2, auxquelles nous rajoutons les hypothèses suivantes : − la densité p(xk|xk−1) du noyau de transition est continue par rapport à xk et xk−1 − la fonction d’observation h est continue et bornée sur R d . Ces hypothèses ne sont pas très restrictives et sont vérifiées dans l’application qui nous inté- resse, puisque la densité du noyau de transition est gaussienne et la fonction h correspond à la hauteur-sol qui est bien sûr bornée. Dans la suite de cette section, sauf mention contraire, nous supposerons par souci de simplicité que les observations (yk)k≥0 sont scalaires et que (vk)k est une suite de v.a. gaussiennes indépendantes de variance σ 2 v . Enfin, l’hypothèse nulle H0 sera celle du fonctionnement normal du filtre, tandis que l’hypothèse alternative de divergence du filtre sera notée H1. En s’inspirant des résultats énoncés précédemment sur le filtre de Kalman, nous allons définir un test statistique basé sur la suite des innovations. L’innovation du filtre particulaire est ici définie comme  N k = yk − yˆ N k|k−1 (5.18)165 où yˆ N k|k−1 = X N i=1 ω i k−1h(x i k ) est la mesure prédite par le filtre. Déterminer la loi de l’innovation pour une fonction d’observation h quelconque semble dif- ficile dans le cas général. Afin de définir le test, nous proposons de calculer la moyenne et la variance de l’innovation  N k sous l’hypothèse de fonctionnement nominal H0 du filtre particulaire et conditionnellement aux mesures passées y0, . . . , yk−1, en approchant ces deux quantités par leur limite lorsque le nombre de particules est infiniment grand. 5.5.1 Approximation de la moyenne de l’innovation particulaire sous l’hypothèse de fonctionnement normal du filtre L’objectif de cette section est de déterminer une valeur approchée de la moyenne conditionnelle de l’innovation particulaire sous l’hypothèse de non-divergence H0, que l’on notera EH0   N k |y0:k−1  . Décomposons l’innovation  N k comme :  N k = yk − yˆ N k|k−1 = yk − yˆk|k−1 + ˆyk|k−1 − yˆ N k|k−1 = k + ˆyk|k−1 − yˆ N k|k−1 (5.19) où yˆk|k−1 = E (yk|y0:k−1) = Z h(xk)p(xk|y0:k−1) dxk est l’observation prédite par le filtre optimal et k = yk − yˆk|k−1 est l’innovation correspondante. On a, E (k|y0:k−1) = 0 (5.20) Soit ζ N k la différence entre la mesure prédite par le filtre optimal et celle prédite par le filtre particulaire. ζ N k = ˆyk|k−1 − yˆ N k|k−1 (5.21) On a : yˆk|k−1 = Z h(xk)p(xk|y0:k−1) dxk = ZZ h(xk)p(xk|xk−1)p(xk−1|y0:k−1) dxkdxk−1 = Z ψk−1 (xk−1) p(xk−1|y0:k−1) dxk−1 (5.22) où la fonction ψk−1 est définie par ψk−1 (x) = Z h(xk)p(xk|xk−1 = x) dxk ζ N k se ré-écrit donc sous la forme ζ N k = Z h(xk) [p(xk|y0:k−1) − pˆ(xk|y0:k−1)] dxk (5.23) = Z ψk−1 (xk−1) [p(xk−1|y0:k−1) − pˆ(xk−1|y0:k−1)] dxk−1 (5.24) = hψk−1, pk−1 − pˆk−1i (5.25)166 5. Test d’intégrité pour le filtrage particulaire : application au recalage radio-altimétrique où pˆk−1 = PN i=1 ωk−1δx i k−1 est l’approximation particulaire de pk−1 = p(xk−1|y0:k−1). ψk−1 est continue d’après le théorème de continuité sous le signe somme étant donné que par hypothèse, l’intégrande xk−1 7→ h(xk)p(xk|xk−1) est continue. ψk−1 est également bornée car ψk−1 (x) = Z h(xk)p(xk|xk−1 = x) dxk ≤ khk∞ Z p(xk|xk−1 = x) dxk = khk∞ D’après le théorème 1 de convergence faible, ζ N k = hψk−1, pk−1 − pˆk−1i −−−−−→ N→+∞ 0 p.s. (5.26) Finalement, comme  N k = k + ζ N k , il vient E   N k |y0:k  = E(k|y0:k−1) + E(ζ N k |y0:k−1) = 0 + ζ N k −−−−−→ N→+∞ 0 p.s. où l’égalité E(ζ N k |y0:k−1) = ζ N k vient du fait que ζ N .