По-перше, математична інтермедія, коротка і варта вашого часу:
Якщо 0 < a < 4
, то логістична функція f(x) = ax(1-x)
відображає інтервал [0,1] всередині себе. Це означає, що можна грати в ітераційну гру; наприклад, якщо a = 2, початкове значення 0,3 стає 0,42, то 0,4872 і т.д.
Зі a
збільшенням параметра квадратична функція f
ускладнюється в наступному сенсі:
0 < a < 1
всі початкові значення повторюються до 0.1 < a < 3
0 стає відштовхуючим, але з'являється нова фіксована точка (a-1) / a, яка приваблює всі ітерації.3 < a < 1+sqrt(6)
нова фіксована точка стає відштовхувальною, але з'являється цикл з 2 приваблюючих точок.3.44949... < a < 3.54409...
2-цикл стає відштовхуючим, але з'являється цикл із 4 приваблюючих точок.- тощо.
Фейгенбаум зауважив , що довжини цих інтервалів параметрів зменшується зі швидкістю , яка стає ближче і ближче до 4.6692...
, з постійною Фейгенбаума . Чудове відкриття полягає в тому, що в цей період 2 біфуркаційні послідовності є загальним явищем, яке поділяється будь-якою функцією, яка (як квадратична парабола) збільшується, а потім зменшується. Це була одна з перших доповідей про універсальність хаосу .
Тепер для виклику! Напишіть найкоротший можливий код, який обчислює константу Фейгенбаума з точністю на ваш вибір. Сенс тут не в тому, щоб обдурити систему, кодуючи номер, який ви гуглили, а в тому, щоб комп'ютер насправді знаходив значення. Для довідки, ось константа до 30 цифр:
4.669201609102990671853203821578