☰ Оглавление

Фрактальная размерность

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

Где-то в 1996 меня заинтересовало, что же такое дробная размерность и каков её смысл. Каково же было моё удивление, когда я узнал, что это не такая уж сложная вещь, и понять её может любой школьник.

Я постараюсь изложить здесь популярно, что же такое дробная размерность. Чтобы компенсировать острый дефицит информации по этой теме.

Измерение тел

Сперва небольшое введение, чтобы привести наши бытовые представления об измерении тел в некоторый порядок.

Не стремясь к математической точности формулировок, давайте разберёмся, что же такое размер, мера и размерность.

Размер

Размер объекта можно померить линейкой. В большинстве случаев размер получается малоинформативен. Какая «гора» больше?

Не подобные геометрические фигуры

Если сравнивать высоты, то больше красная, если ширины — зелёная.

Сравнение размеров может быть информативным если предметы подобны друг другу:

Подобные фигуры. Их размеры легко сопоставить.

Теперь какие бы размеры мы ни сравнили: ширину, высоту, сторону, периметр, радиус вписанной окружности или любые другие, всегда получится, что зелёная гора больше.

Далее мы будем говорить о подобных объектах, поэтому размер нам пригодится.

Мера

Мера тоже служит для измерения объектов, но она измеряется не линейкой. О том, как именно она измеряется мы ещё поговорим, а пока отметим её главное свойство — мера аддитивна.

Выражаясь на бытовом языке, при слиянии двух объектов, мера суммы объектов равна сумме мер исходных объектов.

Для одномерных объектов мера пропорциональна размеру. Если вы возьмёте отрезки длиной 1см и 3см, «сложите» их вместе, то «суммарный» отрезок будет иметь длину 4см (1+3=4см).

Для не одномерных тел, мера вычисляется по некоторым правилам, которые подбираются так, чтобы мера сохраняла аддитивность. Например, если вы возьмёте квадраты со сторонами 3см и 4см и «сложите» их (сольёте их вместе), то сложатся площади (9+16=25см²), то есть сторона (размер) результата будет 5см.

Слияние двух квадратов. Сложение площадей.

И слагаемые, и сумма являются квадратами. Они подобны друг другу и мы можем сравнивать их размеры. Оказывается, что размер суммы не равен сумме размеров слагаемых (5≄4+3).

Как же связаны мера и размер?

Размерность

Как раз размерность и позволяет связать меру и размер.

Давайте обозначим размерность — D, меру — M, размер — L. Тогда формула, связывающая эти три величины будет имеют вид:

M = LD

Для привычных нам мер эта формула приобретает всем знакомые обличия. Для двухмерных тел (D=2) мерой (M) является площадь (S), для трёхмерных тел (D=3) — объём (V):

S = L2, V = L3

Внимательный читатель спросит, по какому праву мы написали знак равенства? Ну хорошо, площадь квадрата равна квадрату его стороны, а площадь круга? Работает ли эта формула для любых объектов?

И да и нет. Вы можете заменить равенства на пропорциональности и ввести коэффициенты, а можете считать, что мы вводим размеры тел именно так, чтобы формула работала. Например для круга мы будем называть размером длину дуги равной корень из «пи» радиан. А почему нет?

В любом случае, наличие или отсутствие коэффициентов не изменит суть дальнейших рассуждений. Для простоты, я не буду вводить коэффициенты; если хотите, вы можете их добавить самостоятельно, повторить все рассуждения и убедиться, что они (рассуждения) не утратили своей справедливости.

Итого

Из всего сказанного нам следует сделать один вывод, что если фигуру уменьшить в N раз (отмасштабировать), то она будет укладываться в исходной ND раз.

Действительно, если уменьшить отрезок (D=1) в 5 раз, то он поместится в исходном ровно пять раз (51=5); Если треугольник (D=2) уменьшить в 3 раза, то он уложится в исходном 9 раз (32=9).

Размерность плоского треугольника равна двум

Если куб (D=3) уменьшить в 2 раза, то он уложится в исходном 8 раз (23=8).

Размерность куба равна трём

Верно и обратное: если при уменьшении размера фигуры в N раз, оказалось, что она укладывается в исходной n раз (то есть мера её уменьшилась в n раз), то размерность можно вычислить по формуле:

D = ln(n)/ln(N)

Не очень строго и опуская многие важные детали, мы всё же получили формулу для размерности.

Дробная размерность

Простейший пример

Про дробную размерность обычно рассказывают на примерах различных ломаных. Я не буду изобретать велосипед и обращусь к звезде Коха.

Процедура её построения показана на рисунке (снизу вверх):

Построение фрактала «звезда Коха»

В начале берётся отрезок, делится на три равные части и средняя часть заменяется на два отрезка, равных изъятому. Получается ломаная из четырёх равных отрезков.

На втором шаге действия повторятся с каждым из четырёх отрезков и получается ломаная из 16 отрезков.

Эти построения повторяются бесконечное число раз и в конце концов у нас получается ломаная, состоящая из бесконечного числа отрезков. Сколько бы мы её не масштабировали, мы всё равно будем получать одно и тоже.

Бесконечное масштабирование звезды Коха

Это и есть звезда Коха.

Строго говоря, полученное множество точек уже нельзя называть ломаной. По определению, ломаная должна состоять из конечного числа отрезков. Но я буду использовать слово «ломаная» в «нестрогом» смысле для краткости.

Давайте теперь воспользуемся нашим приёмом, чтобы определить её размерность.

Из построения и рисунка видно, что звезду можно разбить на четыре равные части, при этом размер (скажем, длина исходного отрезка) каждой части будет равен трети размера исходной фигуры. То есть будучи уменьшена в три раза, она уложится в себе четыре раза:

Разбиение звезды Коха на четыре равные части

По аналогии с нашими предыдущими рассуждениями получаем, что размерность равна

D = ln(4)/ln(3) ≈ 1.26185950714291487419

То есть это уже не просто отрезок или ломаная (длина звезды Коха бесконечна), но и не плоская фигура, полностью покрывающая некоторую площадь.

Если мы слегка модифицируем алгоритм построения и будем извлекать не 1/3 отрезка, а 1/9, то ломаная получится более плотной:

Модифицированная звезда Коха

Какова же её размерность? Теперь фигура уложится сама в себе четыре раза после уменьшения в 9/4 раза, то есть размерность можно вычислить по той же формуле:

D = ln(4)/ln(9/4) ≈ 1.70951129135145477696

Как видите, «плотность» покрытия сразу отразилась на размерности.

Чуть сложнее

Давайте теперь получим более общую формулу для вычисления размерности. Для этого снова рассмотрим пример:

Фрактал с двумя факторами масштабирования

Итерации снова начинаются с одного отрезка. На каждом шаге итерации количество отрезков удваивается. Каждый порождает два новых: один в 0.88 раз меньше (или, вернее больше) родителя, второй — в 0.41 раз. В пределе получается следующее множество:

Полностью построенный фрактал

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

Части фрактала, образованные из разных отрезков

Если принять, что размер полного фрактала 1, то размер зелёной части (полученной из большего отрезка) будет 0.88, а размер красной (полученной из меньшего) — 0.41.

Та формула, которой мы располагаем, уже не годится, так как мы имеем не один, а два коэффициента масштабирования. Но мы можем воспользоваться нашими знаниями о свойства меры, размера и размерности. Мера, как мы помним, аддитивна, то есть мера полного фрактала, равна сумме мер его частей:

M0 = M1 + M2

И сам фрактал, и его части имеют одинаковую размерность (D) и мы можем выразить меры, через размеры:

L0D = L1D + L2D

А размеры мы знаем. То есть для размерности нашего фрактала мы можем написать уравнение:

1D = 0.88D + 0.41D

или просто

1 = 0.88D + 0.41D

Решить это уравнение аналитически невозможно, но «приблизительный» ответ можно «подобрать». В нашем случае

D ≈ 1.7835828288192

Можете проверить на калькуляторе.

1 ≈ 0.881.78358 + 0.411.78358

Таким образом, если фрактал образован из N подобных элементов, с коэффициентами подобия k1, k2 ... kN, то его размерность можно найти из уравнения:

1 = k1D + k2D + ... + kND

По этой формуле уже можно рассчитать размерность многих итерационных систем.

Обратите внимание, что, если все коэффициенты равны, то наша формула превращается в уже известную простую формулу:

1 = kD + kD + ... + kD = N * kD

1/N = kD

D = ln(1/N)/ln(k)

или

D = ln(N)/ln(1/k)

Последнее выражение есть наша первая простая формула для вычисления размерности простейших самоподобных фракталов.

В заключение

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



комментарии (экспериментальная возможность)

Ваше имя:
Ваше сообщение: