|
Diviser pour régner Comportement asymptotique |
|
| Introduction |
| Une idée fondamentale |
| Complexité et récurrences |
| Suites 2-rationnelles |
| Comportement asymptotique |
| Références |
L'asymptotique des suites diviser pour régner est fondamentale en algorithmique puisque l'efficacité d'un algorithme est donnée par son comportement sur des données de grande taille. On peut distinguer deux approches : une approche élémentaire et une approche sophistiquée.
Approche élémentaire. Commençons par l'approche élémentaire. C'est celle qui est employée dans la quasi-totalité des ouvrages sur le sujet, [6, p. 117], [9, chap. 4], [19, p. 546]. Les résultats indiqués sont souvent démontrés de façon expéditive; à l'occasion il sont faux par manque de précison dans les hypothèses. Il est impossible de traiter tous les cas de figure et il semble plus intéressant d'énoncer des résultats clairs, valables dans une classe bien déterminées de récurrences. Ce cadre fournira une heuristique pour les exemples rencontrés dans la pratique et ceux-ci seront traités par une méthode ad hoc si le besoin s'en fait sentir.
Les suites (Tn) qui satisfont la récurrence
![]()
Une heuristique fréquemment utilisée pour déterminer le comportement d'une suite diviser pour régner consiste à l'évaluer sur les puissances de 2. Dans l'optique des suites 2-rationnelles cette démarche est naturelle : une telle suite traduisant une série rationnelle au sens de la théorie des langages, une sous-suite associée aux entiers dont l'écriture binaire est de la forme (uvk)2, où u et v sont deux motifs fixés, a une série génératrice rationnelle au sens ordinaire; cette sous-suite vérifie donc une relation de récurrence linéaire à coefficients constants de type classique. La suite étant évaluée sur les puissances de 2 on peut ensuite, moyennant des hypothèses de monotonie et de régularité [19, p. 565], étendre la comparaison à tous les entiers.
Le résultat simple que nous avons indiqué fournit la complexité de plusieurs algorithmes diviser pour régner. La multiplication d'entiers par la méthode de Karatsuba, la multiplication de polynômes, la multiplication de matrices par la méthode de Strassen ont des coûts majorés par des suites qui vérifient
![]()
Pour le tri-fusion les coûts dans le cas moyen et dans le cas le pire satisfont tous les deux une récurrence de la forme
![]()
On pourrait donner bien d'autres illustrations; nous renvoyons le lecteur à [7, pp. 23-24], [9, §28.5],[9, § 29.3.2], [9, §35.4], [14, p. 172], [20, §5.1.7], [24, p. 190], [27, p. 27], [32, pp. 153, 164]), [33, § 10.2], [34, chap. 28]. On consultera aussi [18], [26, §4.6.3], [28] ainsi que [13].
Approche sophistiquée.
Abordons maintenant l'approche sophistiquée. Les suites diviser pour
régner que l'on rencontre en analyse d'algoritmes ont un
comportement polynomial c'est-à-dire en
. C'est par
exemple le cas de toutes les suites 2-rationnelles; en effet une
telle suite (un) s'exprime par
![]()
![]()
Une telle majoration permet de considérer la série de Dirichlet associée à la suite,
![]()
![]()
![]()
![]()
![]()
Le point remarquable de ces résultats est la mise en évidence de
fluctuations périodiques en échelle logarithmique. On le constate
dans le dessin ci-dessous où l'on a représenté la suite des
points
l'entier n allant de 1
à 1024. Sur ce domaine on peut consulter [16],
[15], [2], [3].

La stratégie diviser pour régner apparaît ainsi comme une méthode d'obtention d'algorithmes efficaces. De plus elle conduit à une vaste classe de récurrences. Leur étude algébrique montre des liens avec la théorie des automates et plus généralement les séries rationnelles de la théorie des langages formels. D'autre part leur asymptotique fine repose sur des méthodes de la théorie analytique des nombres, qui permettent d'expliquer les fluctuations que l'on observe expérimentalement.
| Page précédente : | Suites 2-rationnelles |
| Page suivante : | Références |