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

Материал из Википедии — свободной энциклопедии
(перенаправлено с «Множество мандельброта»)
Перейти к навигации Перейти к поиску
Множество Мандельброта

Мно́жество Мандельбро́та — множество точек c на комплексной плоскости, для которых рекуррентное соотношение при задаёт ограниченную последовательность. Иными словами, это множество таких c, для которых существует такое действительное R, что неравенство выполняется при всех натуральных n. Определение и название принадлежат французскому математику Адриену Дуади  (англ.), в честь математика Бенуа Мандельброта[1].

Множество Мандельброта является одним из самых известных фракталов, в том числе за пределами математики, благодаря своим цветным визуализациям[⇨]. Его фрагменты не строго подобны исходному множеству, но при многократном увеличении определённые части всё больше похожи друг на друга.

Точное значение площади множества Мандельброта неизвестно. На 2012 год она оценивалась как 1,506 591 884 9 ± 2,8×10−9. Точная координата центра масс (расположенного на оси абсцисс) тоже неизвестна и оценивается как −0,286 768 420 48 ± 3,35×10−9[2].

Расширенное определение[править | править код]

Вышеуказанная последовательность может быть раскрыта для каждой точки на комплексной плоскости следующим образом:

и так далее.

Если переформулировать эти выражения в виде итеративной последовательности значений координат комплексной плоскости , то есть заменив на , а на , мы получим:

Визуально внутри множества Мандельброта можно выделить бесконечное количество элементарных фигур, причём самая большая в центре представляет собой кардиоиду. Также есть набор овалов, касающихся кардиоиды, размер которых постепенно уменьшается, стремясь к нулю. Каждый из этих овалов имеет свой набор меньших овалов, диаметр которых также стремится к нулю и т. д. Этот процесс продолжается бесконечно, образуя фрактал. Также важно, что эти процессы ветвления фигур не исчерпывают полностью множество Мандельброта: если рассмотреть с увеличением дополнительные «ветки», то в них можно увидеть свои кардиоиды и круги, не связанные с главной фигурой. Самая большая фигура (видимая при рассматривании основного множества) из них находится в области от −1,78 до −1,75 на отрицательной оси действительных значений.

История множества Мандельброта[править | править код]

Впервые множество Мандельброта было описано в 1905 году Пьером Фату (фр. Pierre Fatou), французским математиком, работавшим в области аналитической динамики комплексных чисел. Фату изучал рекурсивные процессы вида

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

Фату нашел, что орбита для начального условия при этом преобразовании показывает достаточно сложное и интересное поведение. Существует бесконечное множество таких преобразований — своё для каждого значения c. В те времена компьютеров ещё не было, и Фату, конечно, не мог построить орбиты всех точек плоскости, ему приходилось всё делать вручную. Основываясь на своих расчётах, он доказал, что орбита точки, лежащей на расстоянии больше 2 от начала координат, всегда уходит в бесконечность.

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

Фракталы были описаны Мандельбротом в 1975 году в его книге «Les Objets Fractals: Forme, Hasard et Dimension» («Фрактальные объекты: форма, случайность и размерность»). В этой книге Мандельброт впервые использовал термин «фрактал» для обозначения математического феномена, демонстрирующего столь непредсказуемое и удивительное поведение. Эти феномены рождались при использовании рекурсивного алгоритма для получения какой-либо кривой или множества. Множество Мандельброта — один из таких феноменов, названный по имени своего исследователя.

В 1978 году фрактал был определён и нарисован Робертом У. Бруксом и Питером Мательским как часть исследования групп Клейна[3]. 1 марта 1980 года Бенуа Мандельброт первым увидел визуализации множества[4]. Математическое исследование множества Мандельброта началось с работы математиков Адриана Дуади (Adrien Douady) и Джона Х. Хаббарда (John H. Hubbard), которые установили многие из его фундаментальных свойств[1].

Множество Мандельброта стало известно в середине 1980-х годов при демонстрации компьютерной графики, когда персональные компьютеры стали достаточно мощными, чтобы построить и отобразить множество в высоком разрешении[5].

Построение множества[править | править код]

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

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

Изображение, полученное таким способом, является лишь приближением к реальному множеству Мандельброта. Более качественные результаты можно получать, увеличивая максимальное количество итераций, однако при этом пропорционально вырастает и время расчётов.

Цветные варианты[править | править код]

Фрагмент границы множества Мандельброта в цветном варианте

Строго математически, изображения множеств Мандельброта и Жюлиа должны быть чёрно-белыми — точка либо принадлежит множеству, либо нет. Но были предложены варианты сделать изображения цветными. Самым распространённым способом является окрашивание точек около внешней границы множества в зависимости от количества итераций, за которое становится очевидным, что точка не принадлежит множеству (за которое начинает выполняться критерий ).

Порядок определения, принадлежит ли точка множеству (традиционно закрашиваемого чёрным цветом) или нет (закрашивается цветом, зависящим от «скорости удаления») следующий: на каждой итерации вычисляется текущее расстояние — значение модуля , которое затем сравнивается с «критерием бесконечности» (обычно берётся значение, равное 2). Значительно уменьшить количество вычислений можно за счёт отказа от вычисления квадратного корня — проверять не , а .

Таким образом, если , то точка окрашивается в цвет, который предварительно был выбран для  — номера итерации, на которой выполнился критерий (может служить индексом в таблице цветов или использоваться как параметр в более сложном алгоритме). Если при максимальном для данного построения числе итераций критерий не достигнут, тогда точка считается принадлежащий множеству и её цвет чёрный.

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

Оптимизация[править | править код]

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

Таким образом, для точки необходимо вычислить

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

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

Связь с множеством Жюлиа[править | править код]

Фрагмент множества Мандельброта, лежащий в районе его границы
Фрактал Жюлиа
Увеличение на границе множества Мандельброта формирует изображения, аналогичные множеству Жюлиа

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

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

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

Вариации множества Мандельброта[править | править код]

Зачастую под названием «Множество Мандельброта» понимается только множество, описанное выше. Однако любая функция комплексной переменной имеет соответствующее множество Мандельброта, которое также характеризуется наличием или отсутствием связного множества Жюлиа. Например, можно положить fc(z) = z3 + c. Тогда для каждого значения c проверяется связность множества Жюлиа функции fc и при наличии связности считается, что c принадлежит множеству Мандельброта. В описанном случае связность можно проверить тем же способом, что и для fc(z) = z2 + c.

Эти утверждения можно обобщить и на множества Жюлиа, определяемые больше, чем двумя числами. Например, множество Жюлиа, определяемое тремя действительными числами, имеет соответствующее трёхмерное множество Мандельброта.

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

Применение множества Мандельброта[править | править код]

Множество Мандельброта находит применение для анализа возникновения турбулентности в физике плазмы и термодинамике, развития бифуркаций и т. д.[источник не указан 1926 дней]

Применение в искусстве[править | править код]

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

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

Математические факты о множестве Мандельброта[править | править код]

Дауди и Хаббард доказали, что множество Мандельброта является связным, хотя в это и трудно поверить, глядя на хитрые системы мостов, соединяющие различные его части. Связность множества Мандельброта следует из того, что оно является пересечением вложенных связных компактных множеств.

Однако неизвестно, является ли оно локально связным. Эта известная гипотеза в комплексной динамике получила название MLC (англ. Mandelbrot locally connected). Многие математики прилагают усилия к её доказательству. Жан-Кристоф Иокко (Jean-Christophe Yoccoz) доказал, что гипотеза верна во всех точках с конечной ренормализацией, затем многие другие математики доказывали справедливость гипотезы во многих отдельных точках множества Мандельброта, но общая гипотеза остается недоказанной.

Мицухиро Шишикура (Mitsuhiro Shishikura) доказал, что размерность Хаусдорфа границы множества Мандельброта равна 2. Но остается неизвестным ответ на вопрос, имеет ли граница множества Мандельброта положительную меру Лебега на плоскости.

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

Литература[править | править код]

  • Бенуа Мандельброт, Ричард Л. Хадсон. (Не)послушные рынки: фрактальная революция в финансах = The Misbehavior of Markets. — М.: «Вильямс», 2005. — С. 400. — ISBN 5-8459-0922-8.

См. также[править | править код]

Примечания[править | править код]

  1. 1 2 Adrien Douady and John H. Hubbard, Etude dynamique des polynômes complexes, Prépublications mathémathiques d’Orsay 2/4 (1984 / 1985)
  2. Pixel Counting Архивная копия от 10 августа 2019 на Wayback Machine (англ.).
  3. Robert Brooks and Peter Matelski, The dynamics of 2-generator subgroups of PSL(2,C), in Irwin Kra. Riemann Surfaces and Related Topics: Proceedings of the 1978 Stony Brook Conference (англ.) / Irwin Kra. — Princeton University Press, 1981. — ISBN 0-691-08267-7. Архивировано 28 июля 2019 года. Архивированная копия. Дата обращения: 11 октября 2019. Архивировано из оригинала 28 июля 2019 года.
  4. R.P. Taylor & J.C. Sprott. Biophilic Fractals and the Visual Journey of Organic Screen-savers. Nonlinear Dynamics, Psychology, and Life Sciences, Vol. 12, No. 1. Society for Chaos Theory in Psychology & Life Sciences (2008). Дата обращения: 1 января 2009. Архивировано 28 августа 2008 года.
  5. Pountain, Dick. Turbocharging Mandelbrot (неопр.) // Byte. — 1986. — September.

Ссылки[править | править код]