Po pierwsze, matematyczne interludium, krótkie i warte twojej uwagi:
Jeśli 0 < a < 4
The funkcja logistyczna f(x) = ax(1-x)
odwzorowuje przedziału [0,1] wewnątrz siebie. Oznacza to, że można grać w grę iteracyjną; na przykład, jeśli a = 2, wartość początkowa 0,3 staje się 0,42, następnie 0,4872 itd.
Wraz ze a
wzrostem parametru funkcja kwadratowa f
staje się bardziej skomplikowana w następującym znaczeniu:
0 < a < 1
wszystkie wartości początkowe iterują w kierunku 0.1 < a < 3
0 odpycha się, ale jest nowy stały punkt (a-1) / a, który przyciąga wszystkie iteracje.3 < a < 1+sqrt(6)
nowy stały punkt odpycha się, ale pojawia się cykl 2 przyciągających punktów.3.44949... < a < 3.54409...
2-cykl staje się odpychający, ale pojawia się cykl 4 punktów przyciągania.- itp.
Feigenbaum zauważył, że długości tych przedziałów parametrów zmniejszać w tempie, że dostaje coraz bliżej 4.6692...
, w stałej Feigenbaum . Cudowne odkrycie polega na tym, że sekwencja rozgałęzienia tego okresu 2 jest ogólnym zjawiskiem wspólnym dla każdej funkcji, która (jak kwadratowa parabola) rośnie, a następnie maleje. Był to jeden z pierwszych raportów na temat powszechności chaosu .
Teraz wyzwanie! Napisz możliwie najkrótszy kod, który oblicza stałą Feigenbaum z wybraną dokładnością. Chodzi o to, nie aby oszukać system kodowania przez szereg że google, ale aby rzeczywiście mieć komputer znaleźć wartość. Dla porównania, tutaj jest stała do 30 cyfr:
4.669201609102990671853203821578
Odpowiedzi:
JavaScript,
141138135131 bajtów, 8 cyfrTo chyba coś. Powinno to być nieco poprawialne. Jeśli ktoś potrzebuje początku: jak obliczyć Feigenbaum . A jeśli wolisz wiedzieć, jak to zrobić kodowo, sprawdź to .
Skopiuj wklej następujący kod do konsoli. Oblicza 4,6692016 68823243 (więc nie bardzo dokładnie).
źródło
Python, 127 bajtów
Podziękowania dla @ThomasW z jego odpowiedzią na javascript.
Dodaj
print(d)
do wyniku 4.669201673141983 . Trwa kilka sekund, ponieważ przed wykonaniem obliczane są długie łańcuchy.źródło
Węgiel drzewny , 84 bajty
Wypróbuj online! Link do pełnego kodu wyjaśniającego.
Używa algorytmu stąd .
Drukuje 4,66920 0975097843 (6 cyfr)
źródło