Tout d'abord, un intermède mathématique, court et qui en vaut la peine:
Si 0 < a < 4
, la fonction logistique f(x) = ax(1-x)
mappe l'intervalle [0,1] à l'intérieur d'elle-même. Cela signifie que l'on peut jouer au jeu d'itération; par exemple, si a = 2, la valeur initiale 0,3 devient 0,42, puis 0,4872, etc.
À mesure que le paramètre a
augmente, la fonction quadratique f
se complique dans le sens suivant:
0 < a < 1
toutes les valeurs initiales itèrent vers 0.1 < a < 3
0 devient repoussant, mais il y a un nouveau point fixe (a-1) / a qui attire toutes les itérations.3 < a < 1+sqrt(6)
le nouveau point fixe devient repoussant, mais un cycle de 2 points d'attraction apparaît.3.44949... < a < 3.54409...
le cycle 2 devient repoussant, mais un cycle de 4 points d'attraction apparaît.- etc.
Feigenbaum a remarqué que les longueurs de ces intervalles de paramètres diminuent à un rythme qui se rapproche de plus en plus de 4.6692...
la constante de Feigenbaum . La merveilleuse découverte est que cette séquence de bifurcation de la période 2 est un phénomène général partagé par toute fonction qui (comme la parabole quadratique) augmente, puis diminue. Ce fut l'un des premiers rapports sur l' universalité du chaos .
Maintenant pour le défi! Écrivez le code le plus court possible qui calcule la constante de Feigenbaum avec une précision de votre choix. Le point ici n'est pas de tromper le système en encodant un nombre que vous avez googlé, mais de faire en sorte que l'ordinateur trouve la valeur. Pour référence, voici la constante à 30 chiffres:
4.669201609102990671853203821578