Глава 3 О далматинцах и драконах. Линейные фракталы

Мать-природа не посещала уроков геометрии и не читала книг Евклида Александрийского. Ее геометрия полна зазубрин, но с собственной логикой, причем такой, которую легко понять.

Нассим Николас Талеб. Черный лебедь


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

Обычно считается, что пространство и время непрерывны. Некоторые философы также утверждают, что непрерывными являются все процессы в природе. Отсюда и знаменитый афоризм Лейбница: Natura non facit saltus («Природа не делает скачков»). В привычном смысле «непрерывный» означает «непрестанный, происходящий без перерывов». В математике, где точность имеет первостепенное значение, путь к точному определению непрерывности был долог и тернист. Даже определение функции долгое время было связано с понятием непрерывности[19].

В терминах современной математики выразить утверждение, похожее на изречение Лейбница, довольно сложно. В последние годы XVIII в. считалось, что для непрерывных функций бесконечно малое изменение аргумента ведет к бесконечно малому изменению значения функции. В XIX в. ученые отказались от понятия «бесконечно малое»[20], и это определение было заменено другим, где использовалось более точное понятие предела.

Если мы скажем, например, что функция не делает скачков, на языке математики это будет недостаточно точно. В попытках дать более точное определение можно прийти к следующему: график непрерывной функции должен быть связным (то есть его нельзя разделить на два открытых множества, пересечение которых будет пустым множеством), однако, возможно, следует сказать, что он должен быть линейно связным[21] (любые две его точки можно соединить дугой некой кривой).

В действительности понятия функции, непрерывности и дифференцируемости имеют точные определения, которые изучаются в старших классах средней школы. В настоящее время функция называется непрерывной в точке, если односторонние пределы функции в этой точке совпадают с ее значением в этой точке[22]. Однако при изучении функций часто бывает недостаточно анализа одной лишь непрерывности и возникает необходимость в определении каких-то дополнительных свойств. Одним из таких свойств является равномерная непрерывность. Равномерная непрерывность означает, что небольшие изменения аргумента приводят к небольшим изменениям значения функции и, кроме того, величина этих изменений зависит от величины изменений аргумента, а не от самого значения х (отсюда и характеристика «равномерная»). Любая равномерно непрерывная функция является непрерывной, но не наоборот.

Рассмотрим в качестве примера функцию f(х) = 1/х на множестве вещественных чисел. Эта функция является непрерывной, но не является равномерно непрерывной, так как при значениях х, близких к 0, значения f(х) изменяются очень быстро. Существуют и другие дополнительные характеристики непрерывных функций, например абсолютная непрерывность — более строгое ограничение, чем равномерная непрерывность.

Хотя чешский математик Бернард Больцано (1781–1848) предвосхитил появление точного определения непрерывности, длительное время его работы игнорировались. Идея, которая легла в основу современного определения непрерывности (по сути, идентичная идеям Больцано), принадлежит французскому математику

Огюстену Луи Коши (1789–1857), который описал непрерывность функции, использовав понятие предела. Так, согласно Коши, функция f(х) непрерывна в точке а. если справедливо соотношение:

limx->a f(х) = f(а).

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

Однако в 1872 г. Карл Вейерштрасс выступил в Берлинской академии наук с докладом, который потряс все математическое сообщество: он показал, что существует непрерывная функция, не дифференцируемая ни в одной точке. Эта функция определяется как сумма синусоидальных функций и имеет два параметра, а и Ь:



Когда а принимает значения от 0 до 1, функция является непрерывной. Однако Вейерштрасс доказал, что эта функция не имеет производной ни в одной точке, если Ь — нечетное целое число и ab > 1 + 3π/2. Английский математик Готфри Харолд Харди несколько позднее доказал, что достаточно, чтобы выполнялись неравенства ab > 1 и b > 1.



График функции Вейерштрасса при а = 0,7 и b = 9.


В своей работе Вейерштрасс упоминает Римана, который, по-видимому, исследовал похожую функцию ранее, в 1861 г., но не опубликовал свои результаты. Функция Римана также представляет собой сумму синусоидальных функций, но не содержит параметров, а индекс n в ней используется иначе:



Построить график функции такого вида непросто. На следующей иллюстрации представлен график функции Римана и колебания курса акций некоего банка в течение года. Этот пример показывает, что подобная кривая может описывать реальные события.



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

В отличие от не дифференцируемых функций, заданных аналитически, из прошлых примеров, функция Больцано определяется как предел последовательности полигональных функций В1(х), В2(х), В3(х)…, первые две из которых представлены на следующих графиках.



Источник: Мария Изабель Бинимелис.


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


Пудинг и палатка

В 1903 г. японец Тейджи Такаги (1875–1960) привел пример непрерывной функции, не дифференцируемой ни в одной точке, которая была проще, чем функция Вейерштрасса. Аналитически она задается очень похожим образом. Главное отличие заключается в том, что ее основным элементом является график функции, имеющий форму палатки в виде перевернутой буквы «V», представленный на иллюстрации:



Функцию Такаги, равно как и функцию Больцано, можно представить в виде суммы ряда полигональных функций. Алгоритм, с помощью которого строятся эти функции, называется «смещение средней точки». Он использовался еще Архимедом для вычисления площади сегмента, ограниченного дугой параболы и ее хордой. На рисунке ниже представлены различные этапы построения графика. Каждому последующему этапу соответствует более тонкая линия.

На первом шаге строятся две копии исходного графика. Затем возьмем первую копию и сместим ее среднюю точку влево в точку с координатами (1/4; 1). Точки ее основания будут иметь координаты (0; 0) и (1/2; 1). Выполним аналогичные действия со второй копией. Ее средняя точка будет иметь координаты (3/4; 1), а крайние точки — (1/2; 1) и (1; 0). Полученный многоугольник станет отправной точкой для второго этапа построения. Аналогично выполняется третий этап, и так до бесконечности. В пределе получим кривую, под которой расположены все кривые, построенные на предыдущих итерациях.



Эта кривая также носит название кривой бланманже за схожесть с французским десертом бланманже — разновидностью пудинга.

Если выполнить это построение в трех измерениях и выбирать смещения случайным образом, то получим изображение, которое будет очень похоже на реальный пейзаж. Подобным способом, например, был создан инопланетный пейзаж в блокбастере «Звездный Путь II. Ярость Хана» (режиссер Николас Мейер, 1982), а также знаменитая Звезда Смерти в фильме «Звездные войны. Эпизод VI; Возвращение джедая» (автор сценария Джордж Лукас, 1983).


Дьявольская лестница

В статье 1884 г., озаглавленной «О свойствах совершенных множеств точек», Георг Кантор описал в высшей степени странную функцию, определенную на единичном квадрате. Эта функция является непрерывной и возрастающей, ее производная равна нулю почти во всех точках, график этой функции от нуля до единицы направлен вверх без «скачков». На этом участке длина кривой, определяемой этой функцией, равна 2. Кроме этого, график функции обладает свойством самоподобия: часть, ограниченную осью абсцисс, можно разделить на шесть равных частей, которые будут иметь ту же форму, что и весь график в целом. Коэффициент сжатия вдоль горизонтальной оси будет равен 1/3, вдоль вертикальной — 1/2. Благодаря этим загадочным свойствам и форме, напоминающей лестницу, график этой функции получил название дьявольской лестницы. Существуют и другие графики с этим названием, но функция, приведенная здесь, была описана раньше других и является наиболее типичной.

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



Первые итерации построения дьявольской лестницы.

(Источник: Мария Изабель Бинимелис.)


Дьявольская лестница — это не просто график некоторой функции с примеча тельными свойствами. Она описывает свойства многих физических систем.


ДЬЯВОЛЬСКИЕ ЛИНЗЫ

В отличие от обычных, или преломляющих, линз, дифракционные линзы фокусируют лучи благодаря явлению дифракции, которое возникает при взаимодействии света с физической структурой линзы в форме концентрических колец различной плотности и (или) светопроницаемости. Существует разновидность дифракционных линз, известных как дьявольские линзы, которые обладают повышенной глубиной резкости и меньшими хроматическими аберрациями. Несмотря на зловещее название, эти линзы не содержат чего-то колдовского или сверхъестественного, что подтверждают их создатели: «Эти линзы получили такое название благодаря особому профилю, который был разработан по образцу фрактальной структуры, известной в математике под названием „дьявольская лестница"».

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



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

Они также могут быть имплантированы внутрь глаза при операциях по удалению катаракты.


Что общего у губок, пылинок и снежинок?

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

Кривая Коха, о которой мы рассказали в прошлой главе, обладает свойством самоподобия, так как состоит из нескольких (четырех) частей, подобных всей кривой в целом. Чтобы получить первую часть кривой (расположенную слева), нужно всего.\ишь уменьшить всю кривую в три раза и совместить левый конец кривой с левым концом полученной уменьшенной копии.

Чтобы получить вторую часть, нужно опять-таки уменьшить всю кривую в три раза, повернуть ее на 60° относительно горизонтальной оси и совместить ее левый конец с правым концом первой части кривой. Здесь мы используем параллельный перенос, сжатие и поворот — все эти преобразования являются преобразованиями подобия.

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

Добавим к повороту и симметрии два новых преобразования: одно из них позволяет изменять ширину и высоту фигуры в разных пропорциях, другое — поворачивать оси координат на разные углы. Получим множество преобразований, которые называются аффинными преобразованиями плоскости. Первое из этих двух преобразований позволяет трансформировать квадрат в треугольник, а с помощью второго, которое называется сжатием, можно превратить квадрат в ромб. Фрактальные структуры, которые можно получить с помощью подобных преобразований, называются самоаффинными. К ним относится очень известный «папоротник Барнсли», открытый британским ученым Майклом Барнсли. Можно заметить, что для его построения требуется четыре аффинных преобразования, одно из которых заключается в сжатии по ширине до нуля (так формируется стебель), второе, примененное трижды, — комбинация сжатия и поворота (представлено на рисунке), с помощью которого получаются ветви.



Папоротник Барнсли и его различные аффинные преобразования.


Используя эти преобразования, можно построить множество различных фракталов, которые называются линейными фракталами или системами итерируемых функций (от английского IFS — Iterated Function Systems). Эти системы получаются путем применения ряда преобразований к некоему множеству. Согласно формулировке, введенной Барнсли в книге «Фракталы повсюду», система итерируемых функций — это система функций, задающих определенное преобразование, которое затем выполняется на протяжении множества итераций. Результатом применения этих преобразований является так называемый аттрактор. Другими словами, аттрактор системы итерируемых функций — это форма, к которой стремится фрактал, когда указанные преобразования повторяются достаточно большое число раз. Может показаться удивительным, но аттрактор не зависит от изначально выбранной исходной фигуры, на которой строится фрактал. Все фракталы, о которых мы рассказали в этой книге, можно построить, используя это множество преобразований.

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

В случае с отрезком будем для простоты считать его длину равной единице. Сначала уменьшим отрезок в 1/√2 раз и повернем его на 45° против часовой стрелки. Поместим левый конец отрезка в точку с координатами (0, 0). Затем снова уменьшим исходный отрезок в 1/√2 раз и повернем его на 135° снова против часовой стрелки, поместив правый конец полученного отрезка в точку с координатами (1,1).

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



Кривая дракона, построенная на основе отрезка.

(Источник: Мария Изабель Бинимелис.)


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



Кривая дракона, построенная на основе изображения далматинца.

(Источник: Мария Изабель Бинимелис.)


Коллаж для воссоздания любого изображения

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

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

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



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

Загрузка...