Accueil » Publications » Le Bulletin Vert » Pour chercher et approfondir » Intégration à coups de marteau
  APMEP   Intégration à coups de marteau

Article du bulletin 489

Adhérer ou faire un don

Daniel Reisz

- 2 septembre 2014 -

Résumé : L’article reprend avec des modifications un article paru dans une revue américaine (voir bibliographie). Il s’agit d’un algorithme qui « lisse » une courbe par étapes successives sous la contrainte de maintenir invariante l’aire située sous cette courbe. On retrouve là le problème classique des remblais et déblais.

Que toute vallée soit exhaussée,
que toute montagne et toute colline soient abaissées.
Que tous les coteaux se changent en plaine.

Isaïe 40-4.

Dans un repère orthonormé soit D(f) le domaine défini par le segment [0 ;1], l’axe des ordonnées, la droite d’équation x=1 et la courbe représentative C(f) de la fonction f : xf(x), fonction supposée continue et bornée sur [0 ;1]. Pour que le sens physique des choses apparaisse plus clairement, nous supposerons en outre que f(x) ≥0 sur [0 ;1]. Il en est de même du choix de l’intervalle [0 ;1] à la place d’un intervalle plus général [a ;b]. On désignera par $m_f$ et $M_f$ les bornes inférieure et supérieure de f sur [0 ;1]. Ainsi $f([0 ; 1 ])=[m_f ; M_f]$

Imaginons maintenant une déformation de la courbe C(f) telle que l’aire de D(f) reste invariante, que physiquement D(f) soit incompressible, et exigeons de cette déformation d’aplanir les bosses et les creux comme si on tapait à coups de marteaux sur les bosses (maxima) ce qui les ferait baisser et en faisant remonter du même coup les creux (minima). On peut ainsi espérer, si tout va bien, aplanir la courbe C(f) jusqu’à obtenir un segment horizontal.

Figure 1 : Trois étapes d’aplanissement C($f_ 1$ ), C($f_ 2$ ), C($f_ 3$ ) à partir de la courbe C(f) représentative de la fonction f(x) =0.3(x−1)(3 −4x)(1 −4x).

D’un point de vue plus mathématique, il s’agit de trouver une suite $(f_n)$ de fonctions continues et bornées sur [0 ;1]

$f_0=f, f_1, f_2, …, f_n, …$

telles que

$ \int_{0}^1 f(x) \, \mathrm dx\,=\,\int_{0}^1 f_1 (x) \, \mathrm dx\,=\,\int_{0}^1 f_2 (x) \, \mathrm dx\,=... =\,\int_{0}^1 f_n (x) \, \mathrm dx\,= ... $

avec

$[m_f;M_f] \supset [m_f_1;M_f_1] \supset ... \supset [m_f;M_f] \supset ...$

et avec l’espoir que

$\lim_{n \to \infty} f_n(x)= \lambda$

pour tout x de [0 ;1] où $\lambda=\int_{0}^1 f(x) \, \mathrm dx\,$ est donc la valeur moyenne de la fonction f sur [0 ;1].

Reste maintenant à inventer un tel coup de marteau mathématique respectant les contraintes que nous nous sommes fixées.

Première étape

On associe à la fonction $f_ n$ la fonction $g_ n$ définie sur [0 ;1] par

$g_n (x) = \frac{f_n(x)+\tilde{f}_n(x)}{2} $

où $\tilde{f}_n(x)=f_n(1-x)$

Figure 2 montrant le processus de l’étape 1
(sur la figure h correspond au $\tilde{f}_n$ du texte).

La fonction $g_n$ apparaît donc comme la moyenne arithmétique de $f_ n$ et de $\tilde f_n$ dont les courbes représentatives C($f_n$) et C($\tilde f_n$) et sont symétriques par rapport à la droite d’équation $x= {1 \over 2} $. On a évidemment

$\int_{0}^1 \tilde f_n (x) \, \mathrm dx\,=\int_{0}^1 f_n (1- x) \, \mathrm dx\,=\int_{0}^1 f_n (x) \, \mathrm dx $

d’où

$\int_{0}^1 g_n (x) \, \mathrm dx\,=\int_{0}^1 f_n (x) \, \mathrm dx $

Si on appelle C($g_n$) la courbe représentative de la fonction $g_n$ sur [0 ;1], l’aire du domaine D($g_n$) définie par le segment [0 ;1], l’axe des ordonnées, la droite d’équation $x=1$ et C($g_n$) est donc égale à celle du domaine D($f_n$) et on remarquera qu’en plus (propriété de la moyenne) :

$g_n(x)\in [f_n(x) ;\tilde f_n(x)] $

pour tout x∈[0 ;1], d’où, en particulier,

$[m_g_n ; M_g_n] \subset [m_f_n ; M_f_n] $

On obtient ainsi, par le jeu de la moyenne, un premier « lissage ».

Mais comme $g_n(1 −x) =g_n(x)$ pour tout $x$∈[0 ;1], c’est-à-dire que la courbe $C(g_n)$ admet la droite d’équation $x=\frac {1}{2} $ comme axe de symétrie, l’itération pure et simple de cette procédure ne produira plus aucun effet. D’où la nécessité d’une seconde étape.

Seconde étape

Au vu de la symétrie constatée ci-dessus pour la courbe $C(g_n)$ , on peut envisager de n’utiliser que la moitié de la courbe correspondant à l’intervalle $\left[0 ; \frac{1}{2} \right ]$ et de « l’étirer » sur l’intervalle [0 ;1] par le changement de variable $X =2x$.

Compte tenu de cela on peut alors écrire

$\int_{0}^1 h_n (X) \, \mathrm dX\,=2\,\int_{0}^{\frac{1}{2}} g_n (x) \, \mathrm dx\, =\int_{0}^1 g_n (x) \, \mathrm dx $

$h_n(x)=g_n(\frac{X}{2})$
.

Cette seconde étape ne change évidemment rien aux « creux » (minima) et aux « bosses » (maxima). Elle permet simplement d’itérer de façon opérationnelle la première étape.

Figure 3 : À partir de la courbe C(f), la première étape C(g), puis la seconde étape C(h).

Résumons maintenant analytiquement ces deux étapes. Il s’agit d’une procédure qui substitue à la fonction $f_n$ définie sur [0 ;1], la fonction $f_{n+1}$ définie par

$f_{n+1} (x) = \frac{f_n(\frac{x}{2})+\tilde{f}_n(1- \frac{x}{2})}{2} $

et comme

$[m_f_{n+1} ; M_f_{n+1}] = [m_g_n ; M_g_n] $
.

nous aurons évidemment

$[m_f_{n+1} ; M_f_{n+1}] \subset [m_f_n ; M_f_n] $
.

C’est cette procédure qui constitue notre « coup de marteau ». En l’itérant nous créons ainsi la suite de fonction

$f_0=f, f_1, f_2, …, f_n, …$

Il est possible, mais cela n’est pas certain, qu’il existe un rang k tel que $f_k$ soit une fonction constante sur [0 ;1] :
$f_k(x) =\lambda $

pour tout x∈[0 ;1]. Alors

$f_{k+1} =\frac{\lambda+\lambda}{2}=\lambda$

c’est-à-dire que notre « lissage » est terminé.

Figure 4 : Un exemple où le processus aboutit à un segment horizontal en trois itérations : $f(x) = \left|\frac {(4x-1)(4x-3)}{2}\right|$. On remarquera que ce résultat (segment horizontal en trois coups) n’est plus vrai hors de l’intervalle [0 ; 1].

Si l’existence d’une telle fonction constante $f_k$ n’est pas certaine, celle de λ est par contre assurée : λ n’est rien d’autre que la valeur moyenne de f sur [0 ; 1], c’est-à-dire

$\lambda= \int_{0}^1 f(x) \, \mathrm dx $

Or f, en tant que fonction continue et bornée sur [0 ;1], est intégrable (au sens de Riemann).

Reste alors à montrer que

$\lim_{n \to \infty} f_n(x)= \lambda$

pour tout x de [0 ;1].

On peut déjà remarquer que la suite ($M_f_n$) (resp. ($m_f_n$) ), comme suite d’indice n, est une suite décroissante (resp. croissante) et bornée (par n’importe lequel des $m_f_n$ (resp. $M_f_n$ )), donc convergente. Mais rien n’assure, a priori, que les deux limites vérifient

$\lim_{n \to \infty} M_f_n=\lim_{n \to \infty} m_f_n= \lambda$
.

Pour démontrer ce dernier résultat nous allons quelque peu changer de point de vue. Pour deviner l’idée directrice de la méthode, observons par exemple $f_3(x)$ exprimé en fonction de f(x) :

$f_3(x)=\frac{1}{8}\left[ f(\frac{x}{8})+f(\frac{1}{4}-\frac{x}{8})+f(\frac{1}{4}+\frac{x}{8})+f(\frac{1}{2}-\frac{x}{8})$

$+f(\frac{1}{2}+\frac{x}{8}+f(\frac{3}{4}-\frac{x}{8})+f(\frac{3}{4}+\frac{x}{8})+f(1-\frac{x}{8})\right] $.

Si nous regardons cette expression de plus près, à l’aune de la subdivision régulière de pas $\frac{1}{2^3}$ :

$\left\{ 0 ;\frac{1}{2^3}=\frac{1}{8}; \frac{2}{2^3}=\frac{1}{4};\frac{3}{2^3}=\frac{3}{8};\frac{4}{2^3}=\frac{1}{2};\frac{5}{2^3}=\frac{5}{8};\frac{6}{2^3}=\frac{3}{4};\frac{7}{2^3}=\frac{7}{8};\frac{8}{2^3}=1 \right\}$

Figure 5 : La subdivision

on constate, sachant que x∈[0 ;1], que

$\frac {x}{8} \in \left[ 0 ; \frac {1}{8} \right] \, ,\frac{1}{4}- \frac {x}{8} \in \left[ \frac{1}{8} ; \frac {1}{4} \right] \, , \frac{1}{4}+ \frac {x}{8} \in \left[ \frac{1}{4} ; \frac {3}{8} \right] \, .....$

$\frac{3}{4}+ \frac {x}{8} \in \left[ \frac{3}{4} ; \frac {7}{8} \right] \, , 1- \frac {x}{8} \in \left[ \frac{7}{8} ; 1 \right] $

On peut donc regarder

$f_3(x)=\frac{1}{8}\left[ f(\frac{x}{8})+f(\frac{1}{4}-\frac{x}{8})+f(\frac{1}{4}+\frac{x}{8})+f(\frac{1}{2}-\frac{x}{8})$

$+f(\frac{1}{2}+\frac{x}{8}+f(\frac{3}{4}-\frac{x}{8})+f(\frac{3}{4}+\frac{x}{8})+f(1-\frac{x}{8})\right] $

comme une somme de Riemann.

Cette étude de $f_3 (x)$ se généralise à $f _n (x)$, même si le courage me manque pour l’écrire explicitement. (Je procède là comme d’illustres anciens : on étudie, on explicite un cas particulier avec l’assurance tranquille que cela est encore vrai dans le cas général !)

L’intégrabilité de f(x) permet alors de conclure :

$\lim_{n \to \infty} f_n(x)=\int_{0}^1 f (x) \, \mathrm dx\,= \lambda\, $,

ce qui garantit le bon fonctionnement de l’algorithme « coup de marteau ».

Quelques exemples

On trouvera ci-dessous quelques exemples graphiques où la procédure est appliquée trois ou quatre fois à partir d’une courbe initiale C(f) en trait vert plein, le dernier état présenté du lissage étant en trait tireté vert.

Figure 6 : $f(x)=\left| x^2+\sin {10x}\right|$

Figure 7 : $f(x)=\sin (e^{3x})+1$

Figure 8 : $f(x)=\left|e^x\ \sin{12x}\right|$ .

Figure 9 : $f(x)= \frac{1}{1+x^2}$ dont l’intégrale entre 0 et1 vaut $\frac{\pi}{4}$ (formule de Leibniz).

Figure 10 : $f(x)=\left|\sin \frac{1}{x}\right|$, fonction qui ne remplit pas les conditions initiales (en 0 !) mais où on voit (mal) que le lissage graphique fonctionne quand même !

Conclusion

Je ne pense pas qu’il s’agisse là d’une véritable méthode d’intégration numérique ou graphique, opérationnelle dans la pratique. Les calculs des termes successifs de la suite de fonctions $(f_n)$ peuvent rapidement devenir très complexes : ce n’est pas parce que les courbes C ($f_n$) se lissent que l’expression algébrique des fonctions $f_n (x)$ se simplifie !

L’intérêt réside simplement dans la mise en place d’une jolie procédure de lissage de courbe sous contrainte (invariance de l’aire). C’est donc plus une curiosité qu’un véritable outil.

Bibliographie

Rendons à César…… Cet article doit énormément à un article de Henry F. Ahmer, « Sledge-Hammer Integration » paru dans le volume 40, N°1, janvier 2009, de la revue « The college mathematics journal », éditée par The Mathematical Association of America.

(Article mis en ligne par Annie LE LOUS)
 Accueil   Plan du site   Haut de la page   Page précédente