🎲 Хаотична гра

Хаотична гра (Майкл Барнслі, 1988): почніть де завгодно, багаторазово вибирайте випадкову вершину і стрибайте на частку шляху до неї. Після тисяч ітерацій виникає досконалий фрактальний атрактор — незважаючи на повну випадковість. Частка і правила (наприклад, заборона повторення тієї самої вершини) визначають, який фрактал з'явиться. Це наочний приклад ітерованої функціональної системи (ІФС). 🇬🇧 English

Пресет

Точок намальовано0
Вершин3
Частка стрибка0.50

Чому з хаосу виникає порядок?

Кожна операція «перестрибни на половину» є стискаючим відображенням. За теоремою Банаха про нерухому точку, багаторазові стискання обов'язково збігаються до єдиної нерухомої множини — атрактора ІФС. Трикутник Сьєрпінського з r = 1/2 має фрактальний вимір log(3)/log(2) ≈ 1.585. Зміна r зміщує вимір і змінює атрактор: при r = 2/3 отримаємо суцільний трикутник. Папороть Барнслі використовує чотири різні афінні перетворення з різними ймовірностями: 85% часу папороть виростає листочком, 7% обертається, тощо.

Про гру хаосу та фрактали ІФС

Гра хаосу — це простий, але дивовижний алгоритм генерації самоподібних фракталів: починаємо з випадкової точки, багаторазово стрибаємо на фіксовану частку відстані до випадково обраної вершини або перетворення та відображаємо кожну проміжну точку. Попри випадковість, алгоритм збігається до детермінованого атрактора — фракталу системи ітерованих функцій (ІФС) — бо стискальні афінні перетворення стискають фазовий простір швидше, ніж випадкові стрибки можуть його досліджувати. Трикутник Серпінського виникає лише з трьох вершин із коефіцієнтом стрибка 1/2, а папороть Барнслі використовує чотири афінних перетворення, що імітують самоподібне розгалуження справжнього листка папороті.

Ця симуляція дозволяє вибирати з кількох класичних атракторів ІФС — трикутник Серпінського, папороть Барнслі, крива дракона тощо — регулювати вагові коефіцієнти кожного перетворення та спостерігати, як мільйони точок поступово розкривають фрактальну структуру.

Часті запитання

Що таке система ітерованих функцій (ІФС)?

ІФС — це скінченний набір стискальних афінних відображень {f₁, f₂, ..., fₙ}, кожне у формі f(x) = Ax + b, де A — матриця 2×2, а b — вектор зсуву. Згідно з теоремою Банаха про стиснення, ІФС має єдиний атрактор — компактну множину A, таку що A = ∪fᵢ(A). Багаторазове випадкове застосування відображень збігається до цього атрактора незалежно від початкової точки.

Чому в грі хаосу виникає трикутник Серпінського?

Три перетворення ІФС Серпінського кожне стискає площину в 1/2 по відношенню до однієї з трьох вершин. Атрактором цих трьох стиснень є саме трикутник Серпінського — фрактал з розмірністю Хаусдорфа log(3)/log(2) ≈ 1,585. Гра хаосу досягає цього атрактора, бо після достатньої кількості ітерацій початкова точка стає неважливою, і всі відвідані точки лежать на атракторі.

Що таке афінні перетворення?

Афінне перетворення відображає точку (x, y) на (ax + by + e, cx + dy + f), поєднуючи лінійні операції (масштабування, обертання, зсув) з переносом. Кожне перетворення ІФС має шість вільних параметрів. У папороті Барнслі одне перетворення (що застосовується в 85% випадків) відображає видовження основного стебла, а три інших — ліву пелюстку, праву пелюстку та основу стебла.

Що таке розмірність Хаусдорфа фракталу?

Розмірність Хаусдорфа узагальнює поняття розмірності до нецілих значень. Для самоподібних фракталів вона дорівнює log(N)/log(1/r), де N — кількість самоподібних частин, r — коефіцієнт масштабування. Трикутник Серпінського (N=3, r=1/2) має розмірність ≈1,585; множина Кантора (N=2, r=1/3) — ≈0,631; крива Коха (N=4, r=1/3) — ≈1,261. Фрактали з розмірністю між 1 і 2 можна вважати «більшими за лінію, але меншими за площину».

Який зв'язок між фракталами ІФС і стисненням даних?

Фрактальне стиснення зображень (розроблене Барнслі і Слоаном у 1990-х) зберігає зображення у вигляді параметрів ІФС замість піксельних даних. Оскільки ІФС може описати детальні самоподібні структури з дуже малою кількістю чисел, досягалися коефіцієнти стиснення 10:1 до 50:1. Однак крок кодування (пошук правильного ІФС для довільного зображення) є обчислювально дорогим, і стиснення JPEG/WebP на практиці зазвичай перевершує фрактальні методи.

Чи може гра хаосу генерувати 3D-фрактали?

Так — система ІФС природно розширюється на будь-яку кількість вимірів. Тривимірні версії включають губку Менгера (27 стиснень, що видаляють центральний куб, розмірність ≈2,727) і 3D тетраедр Серпінського (4 стиснення, розмірність = log(4)/log(2) = 2). Гра хаосу у 3D працює ідентично.

Що таке крива дракона?

Крива дракона — фрактал ІФС, що генерується багаторазовим складанням смужки паперу навпіл в одному напрямку і розгортанням під кутом 90°. Її ІФС складається з двох перетворень, кожне з яких обертає на 45° і масштабує на 1/√2. Розмірність Хаусдорфа кривої дракона дорівнює 2 — вона заповнює обмежену область площини — тоді як її межа має розмірність log(4)/log(1+√2) ≈ 1,524.

Чому фрактали зустрічаються в природі?

Природні фрактало-подібні структури виникають із процесів зростання з самоподібними правилами: лист папороті виростає під-листки, що ростуть під-під-листки за тим самим гормональним механізмом; дерево гілкується за тим самим правилом на кожному масштабі; берегова лінія піддається ерозії на кожній довжині хвилі тими самими фізичними процесами. Однак природні фрактали є самоподібними лише в обмеженому діапазоні масштабів (зазвичай 2–4 порядки величини), на відміну від математичних фракталів.

Що таке вагові коефіцієнти в грі хаосу?

Кожному перетворенню ІФС fᵢ призначається ймовірність pᵢ з Σpᵢ = 1. Нерівні ймовірності визначають, які частини атрактора відвідуються щільніше. Для папороті Барнслі перетворення стебла використовує p = 0,85, а основи — p = 0,01, що відповідає відносній «площі», яку кожне перетворення вносить до атрактора. Зміна ймовірностей не змінює форму атрактора, лише щільність точок на кожній його частині.

Яка різниця між фракталом і самоподібною фігурою?

Всі фрактали самоподібні, але не всі самоподібні фігури є фракталами. Квадрат можна поділити на чотири менших квадрати (самоподібний з коефіцієнтом 1/2), але його розмірність точно дорівнює 2 — як і очікується для 2D-фігури. Фрактал має нецілу розмірність Хаусдорфа, що відрізняється від його топологічної розмірності. Трикутник Серпінського топологічно одновимірний (не має внутрішності), але його розмірність Хаусдорфа ≈1,585.