 En 1953, le physicien Freemond Dyson présente fièrement à Enrico Fermi ses résultats en électronique quantique. Fermi fait la fine bouche et lui rétorque alors que son modèle comporte bien trop de paramètres inutiles. Comme le disait selon lui John von Demann, avec 4 paramètres je peux faire une bonne approximation d'un éléphant, et avec un cinquième je peux lui faire bouger la trompe. Autrement dit, avec suffisamment de paramètres arbitraires on peut dessiner n'importe quoi. Plus récemment, l'artiste Jagari Kinn a tweeté un gif montrant comment avec une centaine de cercles on peut dessiner à la jeune fille à la perle de Vermeer. Ce n'est pas sans rappeler cette vidéo de Santiago Ginobili, dessinant les traits de Homer Simpson. La clé de tous ces dessins, ce sont les approximations par des séries de fourrier. Et j'espère que vous aimez la trigonométrie et les nombreux complexes, parce que ça tombe bien, j'ai 2 minutes pour en parler. Prenons un cercle, puis prenons un point tournoiant sur le périmètre de ce cercle, que je vais appeler point numéro 1. Très bien. Maintenant, prenons un deuxième cercle, dont le centre est le point tournoiant, et prenons un autre point, que j'appellerai sans surprise point numéro 2, en rotation sur le pourtour de ce deuxième cercle. Suivons alors la trajectoire suivie par ce point numéro 2. Cette courbe que l'on découvre alors, avec ses feuilles régulièrement espacées, est ce que l'on appelle une épicycloïde. Historiquement, ces courbes sont apparus pour la première fois en astronomie. En effet, si on considère que le premier cercle décrit la rotation du soleil autour de la Terre, et que le deuxième décrit la rotation d'une planète autour du Soleil, alors les épicycloïdes correspondent aux trajectoires des planètes dans un modèle où la Terre serait au centre de l'univers. Quand l'astronome de l'Antiquité Ptolemé étudia les mouvements des astres depuis son modèle géocentrique, c'est donc en étudiant des épicycloïdes qui l'est parvenu à calculer par exemple la date de certaines éclipses. En choisissant les bons rayons et les bonnes vitesses de rotation, on obtient toute une galerie d'épicycloïdes. On peut obtenir la cardioïde, courbe en forme de coeur, la néphroïde, courbe en forme de rein, ou bien la renonculoïde, courbe en forme, comme son nom l'indique, de renoncule. Oui, pour nommer une épicycloïde, on regarde vaguement la forme de la courbe et on ajoute hoïde à la fin. J'aurais aussi pu évoquer la deltoïde en forme de la lettre grecque delta, ou bien l'astroïde en forme d'astre. Ne nous arrêtons pas en si bon chemin. Et si, autour du point numéro 2, on faisait orbiter un point supplémentaire que l'on pourrait appeler point numéro 3. Cette trajectoire suivie par ce point est particulièrement esthétique. Officiellement, cette courbe porte toujours le nom d'épicycloïde, mais je préfère parler d'épicycloïde même si je suis le seul à utiliser cette terminologie. Bien sûr, j'ai choisi les rayons et les vitesse de rotation pour que le résultat avaye le coup d'œil. Je vous rassure, il est parfaitement possible de trouver des échafaudages de cercles tournoiants qui tracent des épicycloïdes particulièrement l'aide. Dès lors, il n'y a plus de raison de se restreindre sur le nombre de cercles pour tracer mon épicycloïde. Voici donc huit cercles orbitant les uns autour des autres. Qu'obtiens-t-on si on suit la trajectoire du point numéro 8 ? Eh bien, c'est une épicycloïde remarquable puisqu'il s'agit d'une éléphantoïde. Mais comment ce pachyterme a-t-il bien pu se retrouver là ? Pour le comprendre, on va devoir mettre en équation toutes ces épicycloïdes, et c'est là que la trigonométrie va rentrer en jeu. Forcément, ça va être un peu technique, mais je vais essayer de vous prouver que la trigo ça peut être cool, même si j'espère que pour vous ça ne sera pas trop douloureux. Reprenons un cercle, disons de centre haut et de rayons 10 et un point P1 sur ce cercle. En notant T, l'angle formé entre le rayon haut P1 et l'horizontale, la trigonométrie nous indique que le vecteur haut P1 et donc le point P1 ont pour abscise 10 cos T et pour ordonner 10 sin T. Maintenant, on ajoute un nouveau cercle centré sur P1, disons de rayon 4. Sur ce cercle, on a un point P2 qui tourne deux fois plus vite que P1. Cela signifie que l'angle formé entre le rayon P1, P2 et l'horizontale est deux fois plus grand que le premier angle, et vaut donc de T. Le vecteur P1, P2 a donc pour coordonner 4 cos T, 4 sin T, si bien que le point P2 a pour abscise 10 cos T plus 4 cos T et pour ordonner 10 sin T plus 4 sin T. Bref, on a finalement l'équation paramétrique de l'épicycloïde. En généralisant la construction, on peut voir que l'équation paramétrique de ces cycloïdes pourront s'écrire sous la forme de somme de fonctions cosineuses de différentes fréquences pour les abscises et d'une somme de sinus de différentes fréquences pour les ordonner. Dans cette équation, les nombres réels A correspondent au rayon des cercles et les nombres anti-n sont les vitesses de rotation des cercles. Si on connaît cette équation, on peut donc retrouver tous les éléments pour construire avec des cercles roulants l'épicycloïde qui nous intéresse. Mais le problème qui se pose à nous est plutôt le problème opposé. Comment calculer la taille des cercles qui permettent de tracer une épicycloïde que l'on aurait soulné ? Prenons par exemple cette courbe une superbe n-spineuroïde. Comment vais-je pouvoir procéder pour la dessiner façon spirographe ? Une première idée, c'est de chercher une équation paramétrique, c'est-à-dire l'expression de l'absice x et de l'ordonnée y en fonction du temps t que met un point à parcourir la courbe. On prend donc un point ici en violet qui suit l'épicycloïde, ce qui nous donne en bleu l'absice en fonction du temps t et en rouge l'ordonnée en fonction du temps t. On va s'intéresser seulement à x2t pour l'instant. Puisque mon épicycloïde est une courbe fermée, la fonction x est périodique d'une période taux égales de pi. Ça tombe bien, on connaît justement toute une tripotée de fonctions pas trop compliquées de période taux égales de pi. Il y a la fonction cosineus et la fonction sinus, ainsi que toute leur variante, de période taux sur 2, taux sur 3, taux sur 4, etc. Faisons alors l'hypothèse que x2t peut s'écrire sous la forme d'une combinaison linéaire de toutes les fonctions de période t que l'on vient de lister, parce qu'après tout, pourquoi pas ? Cela veut dire qu'à priori, on pourrait écrire x2t égal à 0 plus à 1 cos t plus à 2 cos 2t plus etc, plus b1 sin t plus b2 sin 2t plus etc. Je vous passe la théorie qui nous dit que la fonction x est un point dans un espace vectoriel muni d'un produit scalaire ou fscalergé et définit par l'intégrale entre 0 et taux de f de tg de tdt et je passe à la conclusion. Si x2t peut s'écrire sous cette forme que l'on veut, alors les coefficients ak et bk peuvent être calculés et ce à l'aide d'intégrale. Ces nombres sont ce que l'on appelle les coefficients de fourriers réels de la fonction x, du nom de Joseph Fourier, qui au début du 19e siècle a utilisé cette décomposition pour résoudre une histoire d'équation de propagation de la chaleur. En fait, il ne s'est pas contenté d'utiliser cette décomposition pour les équations de la chaleur mais il a montré qu'elle pouvait s'appliquer à n'importe quelle fonction. À l'époque tout ça manquait de rigueur mais la théorie de fourriers venait de naître donnant un nouveau champ d'investigation pour des générations de mathématiciens après lui et je ne parle pas de la flopée d'applications concrètes. Bref, faisons les calculs dans le cas de la compte qui nous intéresse. Pour x2t, on trouve 6 cos t plus 1,5 cos 2t plus 2 cos 4t plus 2,6 sin 2t et pour y on trouve une équation du même style. Petite déconvenue puisque ces équations ne correspondent pas vraiment aux équations générales des épicies clouides que l'on a trouvé tout à l'heure. Déjà parce que x2t ne devrait être une somme que de cos sinus et y2t que de sinus, ce qui n'est pas ici le cas. En jouant un peu avec les mal aimés formules de trigo, on peut malgré tout se ramener à une forme un peu plus intéressante avec seulement des cos sinus ou seulement des sinus. On introduit alors une phase à nos fonctions. Oui en fait j'ai menti tout à l'heure quand j'ai parlé de l'équation paramétrique d'une épicie clouide quelconque puisqu'il faut aussi prendre en compte la phase de chaque cercle. Je m'explique. J'ai en effet pré-supposé que lorsque l'angle t est égal à 0, les rayons des cercles étaient tous horizontaux ce qui n'a aucune raison d'être le cas. On peut supposer par exemple que dans la position initiale le rayon du premier cercle n'est pas horizontal mais formerait un angle de 30 degrés. Ce 30 degrés c'est la phase du premier cercle et en prenant cela en compte on obtient une paramétrisation des épicies clouides un peu plus correctes. Dans ces formules les coefficients a sont les rayons des cercles, les coefficients theta leur phase et les coefficients n leur vitesse de rotation. Il reste malgré tout un autre problème c'est que les coefficients de x2t que l'on vient de calculer devraient être égaux à ceux de y2t ce qui n'est pas vraiment le cas ici. En fait l'expression de x2t nous donne les caractéristiques de la construction d'une épicie clouide et celle de y2t donne les caractéristiques d'une autre et celle ci semble n'avoir aucun rapport avec la groupe que je cherche à construire. En fait si si je prends l'absence du point traceur de la première et l'ordonner de la deuxième on retrouve mon unspinneroid. Ce n'est pas la construction que l'on espérait mais on va s'en contenter dans un premier temps. J'ai donc à priori tout ce qu'il faut pour fabriquer un système de cercles qui me permettrait de dessiner n'importe quel courbe comme une toile de mètre à la façon jagarikine. Passons donc à un cas pratique. Mets-t-il possible de trouver deux épicies clouides qui permettent de tracer une courbe qui ressemblerait à cet éléphant par exemple. Bien sûr il suffit de calculer les intégrales de tout à l'heure mais si je veux faire ça j'ai besoin d'avoir les coordonnées des points de la silhouette afin d'obtenir les fonctions x et y. Pour les déterminer un petit logiciel de dessin vectoriel fera l'affaire et pour le calcul des coefficients une approximation des intégrales par la méthode direct-angue sera suffisante. Ça demande beaucoup de calculs et il existe des algorithmes qui permettent de le faire assez rapidement mais j'aime contenter ici des formules les plus simples à appliquer. Bref la théorie de fourrier me donne l'équation paramétrique de la courbe et quelques manipulations supplémentaires permettent de confirmer qu'avec les bons échafotages de cercles tourniquetants on peut dessiner ce que l'on veut la preuve avec ce bon pachidère. A ce propos le moteur de calcul wolf ramalfin possède dans sa base de données un grand nombre d'équations de courbes notamment un nombre impressionnant de pokémonoid dont les équations paramétriques pleines de fonctions trigonométriques permettent d'affirmer que la théorie de fourrier n'est pas très loin. Ce qui est également sympa c'est qu'on peut calculer plus ou moins de coefficients suivant la précision que l'on souhaite obtenir. L'éléphant ici présent est construit à partir de deux épicycloïdes à 25 cercles mais on peut en réduire le nombre pour calculer l'essence de ce qu'est un éléphant et ça c'est quand même cool. Mais il reste un petit goût de pas terminer. Avoir deux ensembles de cercles qui tracent un dessin c'est bien mais moi je n'en voulais qu'un seul. On a dû se fourvoyer quelque part. Revenons au moment où nous cherchions l'équation d'une épicycloïde. Il y a une autre façon de décrire par une équation la position de leur point. Plutôt que d'utiliser les coordonnées cartesiennes on va considérer que l'on est dans le plan complexe. On reprend un cercle de rayon 10 et un point P1 qui gravite sur ce cercle. En notant T l'angle formé entre OP1 et l'axe horizontal on peut dire que P1 appourra fixe complexe 10 exponentiel IT. Si à présent on ajoute un point P2 qui tourne sur un cercle de rayon 4 autour de P1 et deux fois plus vite on peut voir que le point aura pour affix 10 exponentiel IT plus 4 exponentiel 2IT. En poursuivant la construction on peut obtenir une paramétrisation des points des épicycloïdes sous la forme d'une somme d'exponentiel complexe. Cette somme c'est ce que l'on appelle la décomposition en série de fourriers complexes de l'équation de la courbe. Les coefficients anti-relatifs n indiquent les vitesses de rotation des cercles et les coefficients complexes A nous fournissent le rayon des cercles ainsi que leur phase. Je vous passe une nouvelle fois les détails mais il est possible étant donné un dessin quelconque de calculer ces coefficients à l'aide d'un bon calcul intégral. Passons plutôt à la pratique. Je prends un éléphant, j'échantillonne son profil, je calcule les coefficients de fourriers, j'en déduis les caractéristiques des cercles, je trace l'épicycloïde qui en résulte épaf, j'obtiens un éléphant. Alors bon c'est une version approximative du dessin original mais il y a de bonnes raisons à cela. Déjà j'ai échantillonné la silhouette de l'éléphant avec à peine 250 points, ce qui est beaucoup mais malgré tout pas énorme vu sa complexité. Mais ce qui rend mon dessin approximatif c'est plutôt le nombre de cercles utilisé. Vu que mon éléphant n'est pas vraiment une épicycloïde il faudrait calculer un nombre infini de coefficients pour avoir la précision maximale. En pratique c'est bien sûr impossible donc j'ai dû me limiter. Avec 50 cercles la précision est plutôt bonne et avec 80 je considère que la courbe est parfaite pour le dessin que je souhaitais obtenir. Pour une meilleure précision il suffit donc d'augmenter mon nombre de cercles, c'est à dire calculer davantage de coefficients de fourriers. Dans la vidéo où l'épicycloïde trace les traits de Homer Simpson, l'auteur a utilisé pas moins de 1000 cercles, forcément la précision est incroyable. Bref grâce aux coefficients de fourriers, il m'a été possible de très bien résumer mon éléphant en utilisant seulement 80 paramètres complexes là où un dessin point par point avec des segments aurait demandé pas moins de 250 points. On peut d'ailleurs réduire le nombre de cercles en supprimant les plus petites entre eux et s'entropaire dans précision dans le tracé. C'est une excellente manière de compresser des données. C'est d'ailleurs pour cette raison que la théorie de fourriers, entre autres, est utilisée dans la compression de fichiers, notamment des photos avec le format JPEG ou de la musique avec le format MP3. Mais ce n'est pas là dessus que je veux insister, il y a en effet trop de choses à raconter sur les transformations de fourriers pour être exhaustives dans une vidéo qui ne cherche qu'à en fait dessiner de millions d'éléphants. La véritable question, c'est plutôt comment dessiner notre nouvel animal préféré comme Fermi et Von Neumann prétendent être capables de le faire, avec pas plus de 4 paramètres. En 1975, le chimiste James Way a pris le pari de réaliser cette poèce, mais à l'amontablement échoué puisque son dessin d'éléphant demande tout de même 30 paramètres. Il a fallu attendre 2009 et pas moins d'une équipe de 3 biologistes pour obtenir le plus léger des éléphants. Grâce à la technique de décomposition de fourriers en somme de sinus et cocinus, Meyer, Kerry et Howard ont pu dessiner cette courbe. Un peu cartoon, oui, mais il s'agit bien d'un éléphant, surtout si on rajoute un point au coordonnée 20-20. L'oréquation fait apparaître 8 paramètres réels, ce qu'une pirouette mathématique ramène à seulement 4 paramètres complexes. Von Neumann avait raison, avec seulement 4 paramètres, on peut approximer la silhouette d'un éléphant. Un cinquième paramètre est utilisé pour faire bouger la trompe ou plus précisément pour indiquer l'absence du point d'attache au corps. Le détail des mouvements de cette trompe n'est cependant pas explicité dans le papier, d'autant également que c'est ce cinquième paramètre qui code la position de l'oeil. Bref, pari réussit. Bien sûr, cette histoire d'éléphant de Fermi et Von Neumann est anecdotique et le papier de Way, comme celui de Meyer, Kerry et Howard, ont été rédigés au second degré. Il n'empêche que cette blague de théoricien a traversé les âges pour une bonne raison. Si on peut retrouver l'allure d'un éléphant avec seulement 4 paramètres, cela veut dire qu'il faut toujours faire très attention à la façon dont on détermine l'ajustement d'une série statistique. Une régression affine demande 2 paramètres, une régression parabolique en demande 3 et il semble qu'une régression pas chidermique en demande 4. C'est ce que l'on appelle le problème de l'overfitting, mal traduit en français par surapprentissage et je vous renvoie au vidéo de Lé de la chaîne Science for All pour détailler toutes ces notions. En attendant, je vous laisse dessiner n'importe quoi avec des hippies cycloïdes. Sous-titres réalisés par la communauté d'Amara.org