Projet :
ALGO

Précédent : Résultats nouveaux Remonter :
Résultats nouveaux
Suivant : Calcul formel
Sous-sections
Analyse d'algorithmes
Participants : Philippe Dumas, Julien Clément, Philippe
Flajolet, Xavier Gourdon, Michèle Soria, Brigitte Vallée.
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
Algorithmes s'appuyent sur une approche originale et systématique
qui a été baptisée ``Combinatoire Analytique''. La combinatoire
analytique repose sur deux ingrédients mathématiques essentiels,
dont le développement a largement pris place dans le Projet
Algorithmes:
- les méthodes symboliques en analyse combinatoire et analyse
d'algorithmes qui permettent de disposer de principes
systématiques de mise en équation par séries
génératrices ;
- les méthodes asymptotiques complexes fondées notamment sur
l'analyse de singularité.
L'exploitation de ces idées dans le domaine des protocoles
de communication est détaillée à la section 6.4 ainsi que dans le rapport
d'activité du projet HIPERCOM tandis que
l'application aux séquences textuelles ou génétiques fait l'objet
de la section 6.3.
Enfin, l'automatisation de ces méthodes visant à l'analyse
complète de modèles complexes est intimement liée au calcul
formel et traitée à la section 6.2.
Un premier lot de travaux conçus ou publiés
en 1998 a trait à l'approfondissement des méthodes fondamentales
de la combinatoire analytique. Ainsi l'article [[23]] propose-t-il un cadre
original pour les nombres de Stirling. Ces ``nombres spéciaux''
apparaissent dans de nombreux modèles d'allocation aléatoire
(hachage, gestion de cache) ou de recherche (arbres de recherche,
arbres quadrants, par exemple). Les identités combinatoires
correspondantes soutendent un grand nombre d'analyse et un cadre
unificateur en est fourni dans l'article [[23]]. Sur le plan des méthodes,
l'article [[25]] montre une extension
de l'analyse de singularité (technologie développée
principalement par Flajolet et Odlyzko d'ATT Research) à une
riche classe de sommes hybrides mêlant quantités combinatoires et
quantités transcendantes. Les résultats s'appliquent notamment à
ce que P. Jacquet et W. Szpankowski nomment ``théorie
analytique de l'information''. Voir également [[24]] pour une combinaison
délicate de techniques mêlant analyse de singularité,
transformation de Mellin, et analyse de col, cela dans le but de
quantifier finement la redondance de certaines sources en théorie
de l'information.
La gestion de tables de hachage en
place s'effectue classiquement par la méthode dite des essais
linéaires (``linear probing hashing''). C'est là sans doute la
méthode de hachage la plus utilisée dans le monde. Flajolet,
Poblete (Chili) et Viola (Uruguay) [[6]] ont résolu une conjecture
de Knuth datant du début des années 1990 et concernant la
dispersion des coûts lors de la construction d'une telle table.
L'analyse repose sur une équation fonctionnelle et aux dérivées
partielle non-linéaire
F(
z,
q) =
F(
z,
q)
.

,
une méthode de moments, et l'utilisation extensive des
méthodes d'analyse de singularité issues du projet. Un phénomène
délicat de transition de phase est décrit où l'on part d'une loi
gaussienne et à faible dispersion des coûts tant que le
remplissage de la table reste faible, et l'on parvient à une
``prise en masse'' de la table caractérisée par une ``loi
d'Airy''. Cette loi se manifeste également dans plusieurs
domaines des structures aléatoires discrètes (connectivité des
graphes, aire des chemins, longueur de cheminement dans les
arbres, par exemple) tout en se reliant à des modèles de physique
statistique très divers.
Les méthodes de combinatoire analytique inspirées de celles
qui sont développées pour les tables de hachage s'avèrent aussi
efficaces dans le domaine de l'évaluation de la sélection et du
tri par distribution. Les algorithmes fondamentaux sont analysés
dans [[26]],
article écrit en collaboration avec l'Université George
Washington et le Projet HIPERCOM.
Sur un autre registre, J. Clément (doctorant de l'Université
de Caen associé au projet), P. Flajolet et B. Vallée
(Caen) [[15]] ont
pu quantifier très précisément le comportement des arbres
digitaux hybrides (``hybrid tries'' ou ``ternary tries'') dus à
Bentley et Sedgewick. Par la concision de son code interne, cette
structure généraliste est sans nul doute l'une des meilleures
manières d'implanter la recherche dans de grands volumes de
données textuelles. Ce fait est validé dans [[15]] à la fois par une
modélisation probabiliste (reposant sur les méthodes symboliques,
modèles poissonniens et transformation de Mellin) et par
confrontation à des données réelles. Par exemple, il est établi,
théoriquement et pratiquement, que de tels arbres présentent des
gains d'efficacité de l'ordre de 3 en temps et 10 en mémoires par
rapport à leurs concurrents immédiats.
Les méthodes de la combinatoire analytique s'appliquent encore
à de nombreuses heuristiques de l'optimisation combinatoires. Un
exemple est fourni par le ``bin packing''; il est montré dans un
travail commun avec E. Coffman et L. Flatto (Bell Labs,
Lucent Technology) ainsi que M. Hofri (Renssler
Polytechnic) [[5]] qu'un principe très
simple d'allocation conduit à un algorithme à la fois efficace
(quasilinéaire) en temps et quasi-optimal en espace perdu.
La combinatoire analytique atteint désormais l'âge mûr. Ses
applications dans les domaines traditionnels des structures de
données s'étendent aux modèles de l'aléa discret en informatique
dans toute leur généralité et l'on en retrouve la trace dans les
analyses de systèmes cryptographiques, la théorie de
l'information et de la communication, l'algorithmique
probabiliste [[9]], ou encore le calcul
formel. Sur ce dernier point voir par exemple la toute première
analyse complète de la chaîne classique de factorisation de
polynômes univariés dans [[22],[18]].
Il convient enfin de souligner l'émergence
sous l'impulsion de B. Vallée (Université de Caen, membre associé
au projet) d'une direction nouvelle. Il s'agit de l'irruption des
opérateurs de transfert dans le domaine de l'analyse
d'algorithmes. Ces opérateurs ont été initialement introduits par
Ruelle pour les besoins de la thermodynamique statistique.
Certains chercheurs (Wirsing, Babenko, Hensley) se sont rendus
compte graduellement de leur rôle dans l'analyse des propriétés
probabilistes et métriques des fractions continues. Puis B.
Vallée en a largement systématisé l'usage à une large classe
d'algorithmes de théorie algorithmique des nombres
(``computational number theory'') résolvant au passage le
problème de l'analyse du PGCD binaire et les conjectures
correspondantes de Brent qui datent de 1976 (voir le Séminaire
Algorithmes, édition 1998). La base de la théorie est exposée
dans [[8]]. Les
méthodes soutendent l'analyse des arbres digitaux hybrides, dès
que les sources de données ont un caractère un peu plus général
que les modèles classiques (de Bernoulli ou Markov). Enfin, ce
domaine se relie naturellement à l'algorithmique de base du
calcul formel, réduction de réseaux, symboles de résidualité
quadratique, comparaison de rationnels et signe du déterminant,
etc.

Précédent : Résultats nouveaux Remonter :
Résultats nouveaux
Suivant : Calcul formel