Précédent : Présentation générale et
objectifs Remonter : Projet ALGO, Algorithmes Suivant :
Grands
domaines d'application
Participants : Philippe Dumas , Philippe Flajolet ,
Michèle Soria
Mots-clés : analyse d'Algorithmes, analyse combinatoire,
combinatoire analytique, structures aléatoires discrètes, arbres
d'index, Algorithmes de hachage, algorithmes géométriques, lois
limites
Résumé : L'analyse d'Algorithmes vise à une quantification précise des principaux Algorithmes et structures de données de l'informatique. Elle repose sur une étude approfondie de l'aléa discret. Une approche originale développée dans le projet se fonde sur la ``combinatoire analytique''. Les applications en sont les principaux problèmes de recherche de l'information dans de grands volumes de données et l'Algorithmique de la communication.
L'analyse
d'algorithmes ou de structures de données dépend très étroitement
d'une évaluation et d'une quantification précise de l'aléa
discret. Il s'agit en effet de caractériser le comportement des
principaux paramètres de structures combinatoires d'arbres, de
mots, de graphes ou d'allocations aléatoires. Dans ce domaine,
les travaux du projet ALGOs'appuient
sur une approche originale fondée sur
L'application aux séquences textuelles ou génétiques de ces
idées fait l'objet de la section . L'automatisation de ces méthodes
visant à l'analyse complète de modèles complexes est traitée à la
section
.
Traditionnellement, l'analyse d'Algorithmes propose des prédictions quantitatives de comportement moyen, c'est à dire des analyses d'espérances de coûts. Une évolution importante qui commence au début des années 1990 avec la thèse de doctorat ès-sciences de Michèle Soria consiste à aborder des études en distribution. Ceci permet non seulement de connaître les comportements moyens attendus mais encore de prédire les profils de coûts sous la forme de distributions limites ou de bornes de grandes déviations. En d'autres termes, on parvient depuis peu à quantifier très précisément les compromis de type risque-efficacité. Du point de vue mathématique, les travaux établissent un pont intéressant entre approches probabilistes classiques et approches issues de la combinatoire analytique.
Un travail de synthèse qui est une mini-monographie de 123 pages due à Flajolet et Sedgewick (Princeton) [26] exhibe un ensemble cohérent de trois schémas fondamentaux pour lesquels l'apparition de lois gaussiennes est inéluctable.
Plus généralement, le rapport [26] fait partie d'un programme de recherche visant à établir un corpus cohérent de méthodes pour le domaine de la combinatoire analytique et pour la quantification de l'aléa discret. Les méthodes qui sous-tendent ce programme ont de nombreuses applications en l'analyse d'Algorithmes, parmi lesquelles sont traités spécifiquement dans le projet:
Ces méthodes inspirent également une partie des recherches en
calcul formel (section ) par les problèmes que pose
l'automatisation de la manipulation de grands modèles
combinatoires.
Participants : Frédéric Chyzak , François Morain , Bruno
Salvy
Mots-clés : calcul formel, fonctions spéciales, échelles
asymptotiques, courbes elliptiques, bases de Gröbner
Résumé : Le projet ALGO développe des Algorithmes de calcul formel qui permettent: le traitement de modèles combinatoires récursifs ; l'analyse asymptotique automatique de nombreuses classes de problèmes ; le traitement de fonctions spéciales et de suites combinatoires de manière unifiée, et notamment leur intégration ou leur sommation ; une arithmétique efficace en très grande précision. Ces Algorithmes sont dans la plupart des cas validés par des implantations. Leur développement est motivé par l'automatisation d'une approche combinatoire à l'analyse d'Algorithmes.
Les trois étapes
fondamentales de l'analyse d'Algorithmes telle qu'elle est
pratiquée au projet ALGO sont la
modélisation combinatoire, la manipulation de séries génératrices
et l'analyse asymptotique. Chacune de ces étapes requiert des
capacités de calcul symbolique importantes, tant pour
l'application des méthodes symboliques que pour
l'expérimentation. Ce besoin explique l'importance de l'activité
en calcul formel au sein du projet. L'objectif à long terme est
de systématiser et d'automatiser ces trois étapes.
Au cours des années ont été élaborés de nombreux Algorithmes et programmes. Les domaines mathématiques permettant l'expression et la preuve de nos Algorithmes sont la combinatoire, l'analyse asymptotique, l'algèbre différentielle (corps de Hardy et anneaux de polynômes non-commutatifs) ou les propriétés des courbes elliptiques sur les corps finis. Notre travail en calcul formel est ainsi complémentaire de celui du projet SAFIR consacré aux systèmes polynomiaux.
Comme pour l'analyse d'Algorithmes, l'approche du projet aux algorithmes du calcul formel est globalisante et unificatrice. La résolution d'un problème appliqué de cryptosystèmes, de combinatoire ou d'analyse d'Algorithmes est abordée à un niveau de généralité qui permet le développement d'une Algorithmique à large portée. Ainsi, les travaux sur les cryptosystèmes mettent en jeu des courbes elliptiques et ont des retombées sur la factorisation d'entiers et les tests de primalité ; les travaux sur la combinatoire fournissent des générateurs aléatoires efficaces susceptibles de nombreuses applications ; les travaux sur l'analyse d'Algorithmes ont abouti au développement d'une Algorithmique d'échelles asymptotiques très générale, dont le besoin s'était fait sentir en intégration numérique et en physique mathématique. Les outils développés dans le projet touchent donc maintenant un public assez large d'utilisateurs du calcul formel intéressés tant par la combinatoire que par les manipulations de séries ou par l'analyse asymptotique. La diversité de ce public est encore accrue par la présence de certains de nos programmes dans les bibliothèques du système MAPLE.
On peut distinguer quatre grandes directions de travail dans notre activité en calcul formel: les structures combinatoires ; les suites et fonctions spéciales ; l'asymptotique automatique et l'Algorithmique des nombres.
Un langage de description généralisant les grammaires context-free permet d'exprimer des objets aussi divers que permutations, arbres binaires, arbres généraux, partitions d'entiers ou d'ensembles, graphes fonctionnels ou molécules chimiques, par exemple carbures ou alcools. À partir d'une description de structure décomposable, il est possible de (i) compter efficacement le nombre d'objets d'une certaine taille répondant à la spécification ; (ii) produire des fonctions de génération aléatoire uniforme de faible complexité -- utiles pour des tests statistiques ; (iii) produire des fonctions de génération exhaustive de ces objets -- utiles pour des tests de robustesse de procédures ; (iv) produire des itérateurs, c'est-à-dire des fonctions permettant d'accéder successivement à tous les objets d'une certaine taille, mais sans les stocker tous en mémoire ; (v) calculer des équations satisfaites par les séries génératrices d'énumération de ces objets -- utiles pour la phase d'analyse asymptotique.
Le programme
réalisé au début des années 90 par B. Salvy et
P. Zimmermann fournissait déjà une partie de ces
fonctionnalités, mais sa portabilité et ses fonctionnalités
étaient limités par l'usage de CAML en
conjonction avec MAPLE. Notre objectif est
maintenant de tirer parti de l'expérience acquise avec
pour réaliser une version
(combstruct) entièrement intégrée en MAPLE, en mettant l'accent sur la modularité, la
robustesse et la souplesse d'emploi. La possibilité de produire
des visualisations de grandes structures décomposables est par
ailleurs étudiée au projet EURECA par
P. Zimmermann.
Selon l'origine combinatoire du problème, les séries génératrices que l'on est amené à étudier peuvent être données sous des formes diverses. Elles peuvent être connues sous forme explicite, mais elles peuvent aussi être définies par une ou plusieurs équations, fonctionnelles, différentielles ou aux différences. De même, leurs coefficients peuvent vérifier des récurrences de natures diverses. Manipuler ces fonctions définies implicitement nécessite des innovations théoriques, ainsi qu'un important effort d'implantation. Ce thème de recherche touche aux fondements du calcul symbolique, où il apparaît qu'il est paradoxalement souvent plus facile de traiter une fonction lorsqu'elle est représentée comme solution d'équations que lorsqu'elle est représentée sous forme close. En particulier, les questions de simplification et de formes normales qui sont une des difficultés majeures rencontrées par l'utilisateur trouvent une bien meilleure réponse dans ce contexte.
Le cas des solutions d'équations différentielles ou de récurrences linéaires attire beaucoup l'attention de la communauté de combinatoire et de calcul formel. De nombreuses suites et fonctions spéciales sont définies par de telles équations, qui bénéficient d'une Algorithmique très riche, implantée en grande partie dans le package GFUN développé par B. Salvy et P. Zimmermann (projet EURECA). Le pendant multivarié de ces travaux est extrêmement prometteur, puisqu'il permet d'envisager une approche Algorithmique à de nombreux calculs avec des polynômes orthogonaux, des fonctions spéciales, ou plus généralement des fonctions, suites, séries ou distributions définies par un système d'équations linéaires. Le travail mené par F. Chyzak dans sa thèse considère des systèmes d'opérateurs linéaires qui peuvent être différentiels, aux différences, aux q-différences, ou de nombreux autres types. Il s'avère que les opérations d'addition, de produit, d'intégration ou de sommation peuvent s'effectuer Algorithmiquement par le biais de techniques d'élimination sophistiquées dans des algèbres non commutatives d'opérateurs linéaires. Le package MGFUN développé par F. Chyzak valide et motive les recherches théoriques correspondantes.
Les besoins de la combinatoire analytique en matière de développements asymptotiques dépassent les capacités actuelles des systèmes de calcul formel. En effet, les calculs de coûts moyens et plus encore de variance donnent systématiquement lieu à des annulations non seulement dans les premiers termes des développements mais aussi dans l'ordre de grandeur exponentiel des croissances. La construction automatique des échelles asymptotiques nécessaires et le calcul avec ces échelles pose de nombreux problèmes sur lesquels le calcul formel est en progrès rapide. Les premiers travaux sur ce sujet datent des années 90. En 1988, G. Gonnet et K. Geddes (créateurs du système MAPLE) proposent un modèle permettant de traiter des formules de complexité proche de la formule de Stirling. Puis en 1990, John Shackell (université de Canterbury) publie un Algorithme qui permet de déterminer de manière garantie la limite des fonctions exp-log (fonctions de base de l'asymptotique). L'année suivante, la thèse de B. Salvy propose une première implantation de développements asymptotiques dans des échelles asymptotiques générales. Depuis lors, grâce à une série de travaux en commun de B. Salvy et J. Shackell, des classes de plus en plus vastes de fonctions ont reçu un Algorithme permettant le calcul asymptotique de manière garantie. Ces progrès n'ont pas toujours été suivi d'implantation, mais une nouvelle structure de données pour les développements asymptotiques, les multiséries, a vu le jour récemment. L'Algorithmisation de cette structure de données conduit à revisiter et prolonger les Algorithmes anciens, et mène à la réalisation de prototypes permettant déjà de résoudre des problèmes du niveau de la recherche. Cette structure de données a fait l'objet d'une proposition aux développeurs du système MAPLE. Là encore, on s'attaque à une brique essentielle du système, puisque les séries en MAPLE sont la structure de donnée utilisée pour les polynômes, eux-mêmes base de nombreuses structures de données.
L'arithmétique des grands nombres est la pierre de base de la cryptologie à clefs publiques. C'est un thème de base de l'Algorithmique, et elle bénéficie de l'apport d'autres branches, comme par exemple la complexité et l'analyse d'Algorithmes.
Un axe de recherche récent étudié par F. Morain concerne les aspects Algorithmiques liés à l'utilisation des courbes elliptiques sur les corps finis. Ces objets prennent une importance grandissante dans les applications industrielles liées à la cryptologie et au commerce électronique. Une des retombées intéressantes des progrès faits dans les domaines évoqués précédemment, hors la cryptologie, concerne le calcul formel. Tous les systèmes de calculs symboliques utilisent de l'arithmétique en précision arbitraire, ce qui permet d'empiler ensuite dessus de nombreuses autres couches logicielles (nombres flottants ou réels, rationnels, algébriques, etc.). Un des exemples récents concerne la factorisation de polynômes dans les corps finis, qui a bénéficié de découvertes récentes de Shoup, faites en relation avec des Algorithmes puissants traitant des courbes elliptiques.
F. Morain a pour rattachement principal le LIX (École Polytechnique) dans le cadre duquel sont développés et valorisés les aspects cryptographiques de son action.
Participants : Frédéric Chyzak , Philippe Dumas , Pierre
Nicodème , Mireille Régnier
Mots-clés : combinatoire des mots, séquences, recherche de
motifs, génome
Résumé : L'objet des recherches sur les séquences est la conception de nouveaux Algorithmes, l'obtention de la complexité moyenne des Algorithmes et l'application à l'algorithmique de certains résultats statistiques. Plus généralement, nous développons une théorie analytique de l'information qui s'appuie sur la combinatoire, les probabilités et l'analyse.
L'Algorithmique des
séquences ou objets textuels, couvre des domaines d'application
variés (compression, images, biologie, ...). Ce sujet comprend
d'abord des recherches Algorithmiques. Il s'agit de rechercher
efficacement un motif ou un ensemble de motifs dans un texte. Cet
ensemble peut en particulier être l'ensemble des mots voisins
d'un mot donné, à un nombre d'erreurs près, où le type et le
nombre d'erreurs autorisées sont déterminés par l'application.
Dans certaines applications (biologie, compression de textes), on
recherche des similarités, c'est-à-dire des mots, ou des
ensembles de mots similaires souvent répétés. L'aléa combinatoire
est au coeur de ces problèmes. D'une part, tant du point de vue
de la conception que de l'analyse, la structure des mots, leurs
périodes, apparaît essentielle. Par exemple, tout Algorithme
raisonnable de recherche de motif est conçu pour exploiter
certaines régularités et on relie son domaine d'efficacité à des
structures de langages particulières. D'autre part, dans les
recherches de similarité, des résultats statistiques sur les mots
ou sous-séquences d'un texte sont nécessaires pour évaluer la
pertinence des similarités mises à jour par les Algorithmes.
D'un point de vue méthodologique, des théorèmes probabilistes trouvent des applications naturelles dans l'étude des séquences. Plus précisément, nous avons mis en évidence différents types de processus de renouvellement, la loi limite étant généralement gaussienne; le calcul effectif des paramètres de coût peut être très délicat et les outils combinatoires et analytiques permettent pour cette classe de problèmes les calculs effectifs des distributions. Nous cherchons à développer une théorie analytique de l'information. La ``dépoissonisation analytique'' est un procédé de portée générale (inventé par P. Jacquet et M. Régnier, développé avec W. Szpankowski de l'Université de Purdue) sans analogue probabiliste direct, car il revient à considérer un processus de Poisson de taux complexe. Elle trouve de nombreuses applications en combinatoire statistique car elle permet des développements asymptotiques complets sur des paramètres comme l'entropie et la compressibilité d'un texte qu'il était difficile d'estimer auparavant. Parallèlement, nous développons des outils de calcul dans le modèle probabiliste markovien [29,35]. La complexité des évaluations de performances dans le cas markovien provient du nombre de cas différents à considérer. Nous définissons pour chaque problème des langages caractéristiques dont la contribution au coût total de l'Algorithme est calculable. Ceci équivaut à une agrégation des états de l'automate associé. Les résultats s'appliquent à la compression et à la recherche de motifs avec erreurs ou de motifs exceptionnels dans les textes (DosDNA, reconnaissance de gènes, ...). Ils permettent aussi d'établir les domaines d'efficacité des différents Algorithmes de recherche de similarités dans des bases de données protéiques.
Participants : Jean-François Dantzer , Vincent Dumas ,
Philippe Robert , Jean-Marc Wachter
Mots-clés : grands réseaux, méthodes de renormalisation,
vitesse de convergence
Résumé : L'étude quantitative des modèles probabilistes de réseaux, complexe dès lors que le nombre de noeuds est grand, est envisagée du point de vue des techniques de renormalisation de la physique statistique. L'état du réseau est renormalisé avec un paramètre (la taille, la capacité du réseau, l'intensité du trafic) qui tend vers une valeur critique. Asymptotiquement, l'étude du comportement du réseau se ramène à la résolution d'équations différentielles "quasi-déterministes"
Le cadre général de cette recherche concerne les propriétés de
renormalisation des réseaux de communication. Le processus de
Markov décrivant l'état d'un réseau est en général complexe, même
si la distribution à l'équilibre de celui-ci est connue. La
combinatoire des expressions ne permet pas une évaluation
qualitative de ces réseaux, pour les problèmes de dimensionnement
notamment, lorsque leur nombre de noeuds est significatif. Une
méthode intéressante, issue de la physique des particules,
consiste à renormaliser le processus à la fois en temps et en
espace par un petit paramètre et faire
tendre celui-ci vers 0. Un processus limite ainsi obtenu conserve
les caractéristiques essentielles du réseau, schématiquement la
partie ``bruit'' autour des trajectoires est éliminée. Un
processus limite obtenu de cette façon est quasi-déterministe,
les points de discontinuité de la dynamique conservant une part
d'aléatoire. Toute la difficulté de l'étude consiste à identifier
et caractériser les limites possibles. Il peut y avoir plusieurs
limites et les équations ``limites'' peuvent présenter des
solutions pathologiques qu'il convient d'éliminer (les physiciens
le font avec des arguments d'entropie dans leur cadre). La
renormalisation présente l'intérêt de mettre en évidence les
modes de fonctionnement fondamentaux. Ce programme d'étude a déjà
largement été entamé dans la thèse de
V. Dumas [39],
par J.-F. Dantzer dans une thèse en cours, dans le cadre des
réseaux multi-classe et par J.-M. Wachter dans une thèse en
cours sur des réseaux avec perte.
Les problèmes de vitesse de convergence constituent un aspect
important de notre étude. Ils se situent en amont des questions
de renormalisation. Schématiquement, l'étude d'un système donné
peut se décrire de la façon suivante : étude de la
renormalisation, propriétés gaussiennes autour des trajectoires
renormalisées, existence d'un principe de grandes déviations, et
enfin étude de la convergence à l'équilibre des modèles
considérés. Jusqu'à présent, les résultats obtenus dans ce
domaine sont principalement des estimations du taux de
convergence exponentielle par rapport au temps, pour obtenir des
bornes du type . La constante
, qui
est généralement négligée, joue cependant assez souvent un rôle
majeur dans la convergence à l'équilibre. Par exemple, l'étude de
la seconde valeur propre suggère souvent un temps de relaxation
(le temps pour que la distance à l'équilibre soit
de l'ordre de
.
Il est cependant très fréquent que l'ordre de grandeur du
véritable temps de relaxation soit complètement différent.
L'accumulation de valeurs propres au voisinage de
semble être à l'origine de ces phénomènes encore mal
compris. Notre objectif principal dans ce cadre est de donner des
bornes aussi simples et précises que possible de la
distance entre l'état d'un système à un instant donné et ce même
système à l'équilibre. L'intérêt de tels résultats est de pouvoir
donner une description du comportement transitoire d'un système
qui n'est pas à l'équilibre. Si l'état d'équilibre a, en général,
une expression difficile à utiliser, le cas transitoire est en
revanche pratiquement toujours inconnu. Ce type d'étude a été
mené avec succès, avec des techniques d'analyse de Fourier, dans
le cadre des marches aléatoires sur des graphes ayant une
structure assez régulière, voir par exemple le livre de
Diaconis [38] sur
ce sujet. Les techniques envisagées pour cette étude sont
essentiellement probabilistes. Notre objectif est d'étudier dans
un premier temps des réseaux simples et de dégager des méthodes
d'investigation. Dans ce cadre aussi, nous avons recours à une
variable de renormalisation
qui permet de dégager le
mode majeur de convergence. Outre les bornes explicites sur la
distance à l'équilibre, ce type d'étude permet de définir dans
certaines situations, le temps d'atteinte de l'équilibre
; avant ce temps, il est possible de trouver un
état initial pour lequel la distance est maximale, et après
la distance est nulle.