математика
как искусство

фракталы

К понятию фрактала Б. Мандельброт (Benuit B. Mandelbrot) пришёл, исходя из найденных им решений вполне реальных практических задач. К одной из таких задач относился на первый взгляд довольно простой вопрос: какова длина береговой линии Великобритании? Ясно, что практические измерения зависят от величины мерки и всегда будут приблизительны, тем точнее, чем меньше мерка. Например, если мерить береговую линию циркулем, разведя его ножки на один метр, то результат будет меньше, чем при измерении тем же циркулем, разведённым на 10 см, так как в первом случае будут «перешагиваться» повороты и изгибы, меньшие метра. Чем меньше раствор циркуля, тем больше будет учтено деталей и тем точнее измерение. Можно предположить, что результаты последовательности измерений с применением все меньшей и меньшей мерки будут сходиться к некоторому конечному значению, которое и следует считать ответом на поставленный в задаче вопрос. Если бы береговая линиия имела «правильную» форму, вроде окружности или треугольника, то так бы и было. Однако, Мандельброт показал, что при бесконечном уменьшении мерки длина береговой линии неограниченно растёт. Хорошей математической моделью береговой линии является рассмотренная далее кривая Коха. Вообще, геометрия Евклида оказалась плохо применимой для описания поверхностей таких сложных, неправильных объектов, которые чаще всего и встречаются в реальном мире, — формы растений, облаков, гор и др.

Геометрия различных природных объектов издавна, со времён Евклида и ранее, занимала центральное место в математических моделях этих объектов. Однако, до недавнего времени разработанные математиками идеи и методы, выходящие далеко за рамки «традиционной» геометрии, ввиду их сложности и крайней абстрактности, практически не находили применения в естественных науках. Положение изменилось в 70-х гг. XX в., когда Б. Мандельброт изложил основные идеи теории фрактальных множеств в книге «Фрактальная геометрия природы» (русский перевод — [13]).

Термин фрактал Мандельброт образовал от латинского слова fractus — сломанный, кстати, созвучному английскому fraction — частица, фракция, дробь. Фрактальные множества были введены и применяются с целью описания формы таких природных объектов, как облако, гора, дерево, береговая линия, система кровеносных сосудов, турбулентный водный поток и т. п. — объектов, для моделирования которых классическая геометрия оказалась малопригодна. Характерными чертами фрактальных множеств является их, как правило, дробная размерность — понятие, впервые сформулированное Ф. Хаусдорфом, и самоподобность. Определение, данное самим Мандельбротом [13, стр. 31], таково:

Фракталом называется множество, размерность Хаусдорфа — Безиковича для которого строго больше его топологической размерности.

Позднее им же было сформулировано более узкое определение:

Фракталом называется структура, состоящая из частей, которые в каком-то смысле подобны целому.

Строгого общепринятого определения фракталов в настоящее время не существует, оба приведённых определения во многих физических приложениях оказываются либо слишком ограничительными, либо не совсем полными. Точные определения фрактальных размерностей и всех связанных с ними понятий см., например, в [15].

Для лучшего понимания введённых понятий рассмотрим следующие элементарные построения [14]. Вначале разделим единичный отрезок прямой на $N$ равных частей. Пусть при этом каждый из полученных отрезков меньше исходного в $1/r$ раз, тогда $Nr = 1$. Далее, квадрат со стороной, равной единице, разобъём на $N$ равных квадратов с площадью в $1/r^2$ меньшей площади исходного, при этом $Nr^2 = 1$. Наконец, такую же процедуру проделаем с единичным кубом, получив кубы объёмом в $1/r^3$ меньше исходного. Тогда, очевидно, что \begin{equation} \label{fractal_formula_1} Nr^d = 1, \end{equation} где d — размерность объекта, в рассмотренных выше случаях это — целое положительное число, $d = 1, 2, 3$. Тем не менее, можно построить объект, размерность которого будет выражаться дробным числом. Такое множесто и называют фракталом. Из (\ref{fractal_formula_1}) следует \begin{equation} \label{fract_dimension} d = \frac{\ln N}{\ln 1/r}. \end{equation}

В качестве примера рассмотрим объект, именуемый кривой Коха. Из исходного отрезка $K_0$ на первом этапе построения удалим среднюю его треть и вместо неё построим две стороны равностороннего треугольника. Полученное множество обозначим $K_1$. На каждом отрезке $K_1$ проделаем такое же построение, получив т.о. множество $K_2$, и т.д. На рис. 2 показаны первые три итерации построения.


Кох

Предел последовательности $K_n$ при $n \rightarrow \infty$ называется кривой Коха (такой предел действительно существует, но на доказательстве данного факта мы останавливаться не будем). Заметим, что любое множество $K_n$ самоподобно, т.к. составлено из уменьшенных в три раза четырёх множеств $K_n - 1$ (см. рис. 3.6), следовательно, для него $r = 1/3$, $N = 4$ и размерность кривой есть дробное число $$ d = \frac{\ln 4}{\ln 3} \approx 1{,}2618. $$ Интересно также отметить, что длина кривой Коха равна бесконечности, хотя сама она занимает ограниченный участок плоскости. Действительно, очевидно, что если принять $|K_0| = 1$, то $$ |K_n| = \left( \frac{4}{3} \right)^n \; \Rightarrow \; \lim_{n \rightarrow \infty} |K_n| = \infty. $$

Рассмотрим другой пример — множество Мандельброта $M$, определяемое как множество точек $c$ комплексной плоскости, не уходящих в бесконечность при любом количестве итераций \begin{equation} \label{fract_Mandelbrot} z_{k+1} = z_{k}^2 + c, \quad z_0 = (0,0). \end{equation} Таким образом, $$ M = \{ c \in \mathbb{C}: z_k \not\rightarrow \infty, \; \textrm{при } k \rightarrow \infty \}. $$ Конечно, реально можно построить только приближение к множеству Мандельброта, тем более точное, чем больше итераций в (\ref{fract_Mandelbrot}) будет сделано. Множество Мандельброта, несмотря на очень простое определение, имеет необычайно сложную структуру.


множество Мандельброта

Отметим, что визуализация множества Мандельброта, как и многих других фрактальных объектов, требует довольно большого объёма вычислений и была практически невозможна до появления достаточно мощных компьютеров.

Для иллюстрации сказанного см. программу, строящую множество Мандельброта. Программа позволяет изобразить любой фрагмент множества, увеличив его если нужно, при различном числе итераций и затем сохранить полученные рисунки в файлах. При этом задание большего количества итераций приведёт к более детальному изображению множества Мандельброта, но потребует большего времени на прорисовку.