Searching for Compact Hierarchical Structures in DNA by means of the Smallest Grammar Problem - TEL - Thèses en ligne
Theses Year : 2011

Searching for Compact Hierarchical Structures in DNA by means of the Smallest Grammar Problem

Abstract

Motivated by the goal of discovering hierarchical structures inside DNA sequences, we address the Smallest Grammar Problem, the problem of finding a smallest context-free grammar that generates exactly one sequence. This NP-Hard problem has been widely studied for applications like Data Compression, Structure Discovery and Algorithmic Information Theory. From the theoretical point of view, our contributions to this problem is a new formalisation of the Smallest Grammar Problem based on two complementary optimisation problems: the choice of constituents of the final grammar and the choice of how to parse the sequence with these constituents. We give a polynomial time solution for this last problem, which me named the ''Minimal Grammar Parsing" problem. This decomposition allows us to define a new complete and correct search space for the Smallest Grammar Problem. Based on this search space, we propose new algorithms able to return grammars 10\% smaller than the state of the art on complete genomes. Regarding efficiency, we study different equivalence classes of repeats and introduce an efficient in-place schema to update the suffix array data structure used to compute these words. We conclude this thesis analysing the applications. For Structure Discovery, we consider the impact of the non-uniqueness of smallest grammars. We prove that the number of smallest grammars can be exponential in the size of the sequence and then analyse the stability of the discovered structures between minimal grammars for real-life examples. With respect to Data Compression, we extend our algorithms to use rigid patterns as words and achieve compression rate up to 25\% better compared to the previous best DNA grammar-based coder.
Motivé par la découverte automatique de la structure hiérarchique de séquences d'ADN, nous nous intéressons au probléme classique de la recherche de la plus petite grammaire algébrique générant exactement une séquence donnée. Ce probléme NP-dur a été largement étudié pour des applications comme la compression de données, la découverte de structure et la théorie algorithmique de l'information. Nous proposons de décomposer ce probléme en deux problémes d'optimisation complémentaires. Le premier consiste á choisir les chaînes de la séquence qui seront les constituants de la grammaire finale alors que le second, que nous appelons ''analyse grammaticale minimale'', consiste á trouver une grammaire de taille minimale permettant l'analyse syntaxique de ces constituants. Nous donnons une solution polynomiale au probléme d' ''analyse grammaticale minimale'' et montrons que cette décomposition permet de définir un espace de recherche complet pour le probléme de la plus petite grammaire algébrique. Nous nous intéressons aux algorithmes praticables permettant de retourner une approximation du probléme en un temps suffisamment raisonnable pour être appliqués á de grandes séquences telles que les séquences génomiques. Nous analysons l'impact de l'utilisation de classes différentes de maximalité de répétitions pour le choix des constituants et le compromis entre l'efficacité et la taille de la grammaire finale. Nous présentons des avancées algorithmiques pour une meilleure efficacité des algorithmes hors-ligne existants, dont notamment la mise á jour incrémentale de tableaux de suffixes en cours de recodage. Enfin, la nouvelle décomposition du probléme nous permet de proposer de nouveaux algorithmes génériques permettant de trouver des grammaires 10\% plus petites que l'état de l'art. Enfin, nous nous intéressons á l'impact de ces idées sur les applications. En ce qui concerne la découverte de structures, nous étudions le nombre de grammaires minimales et montrons que ce nombre peut être exponentiel dans le pire cas. Nos expérimentations sur des jeux de séquences permettent cependant de montrer une certaine stabilité de structure au sein des grammaires minimales obtenues á partir d'un ensemble de constituants. En ce qui concerne la compression des données, nous contribuons dans chacune des trois étapes de la compression á base de grammaires. Nous définissons alors un nouvel algorithme qui optimise la taille de la chaine de bits finale au lieu de la taille de la grammaire. En l'appliquant sur les séquences d'ADN, nos expérimentations montrent que cet algorithme surpasse tout autre compresseur spécifique d'ADN á base de grammaire. Nous améliorons ce résultat en utilisant des répétitions inexactes et arrivons á améliorer les taux de compression de 25\% par rapport aux meilleurs compresseurs d'ADN á base de grammaire. Outre l'obtention de taux de compression plus performants, cette approche permet également envisager des généralisations intéressantes de ces grammaires.
Fichier principal
Vignette du fichier
thesis.pdf (4.17 Mo) Télécharger le fichier
presentation.pdf (4.86 Mo) Télécharger le fichier
Format Other

Dates and versions

tel-00595494 , version 1 (24-05-2011)

Identifiers

  • HAL Id : tel-00595494 , version 1

Cite

Matthias Gallé. Searching for Compact Hierarchical Structures in DNA by means of the Smallest Grammar Problem. Modeling and Simulation. Université Rennes 1, 2011. English. ⟨NNT : ⟩. ⟨tel-00595494⟩
1056 View
1469 Download

Share

More