Научная статья на тему 'Построение фракталов'

Построение фракталов Текст научной статьи по специальности «Математика»

CC BY
312
122
i Надоели баннеры? Вы всегда можете отключить рекламу.

Аннотация научной статьи по математике, автор научной работы — Кронин Григорий Вадимович

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

i Надоели баннеры? Вы всегда можете отключить рекламу.
iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.
i Надоели баннеры? Вы всегда можете отключить рекламу.

Текст научной работы на тему «Построение фракталов»

МАСТЕРСКАЯ

Кронин Григорий Вадимович

ПОСТРОЕНИЕ ФРАКТАЛОВ

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

Начнем с самого, пожалуй, знаменитого примера.

Рассмотрим плоскость, а на ней -произвольный отрезок длины 1, концы которого обозначим А°° и А]. Назовем А°А° отрезком нулевого уровня. Разделим его на три равные части точками А11 и А] и построим на внутреннем отрезке равносторонний треугольник (рисунок 1). Заменим в отрезке А°° А" отрезок А] А3] на ломаную А11 А]А3]. Получим ломаную А] А] А] А3 А], где А° = А°°, А] = А1°. Отрезки А] А]+1 (к = 0,1,2,3) назовем отрезками первого уровня. На следующем шаге проделаем с ^ - .. 1 отрезками первого уровня ту же операцию, а именно: разделим каждый отрезок первого уровня на 3 части и надстроим на внутренних отрезках равносторонние треугольники. Получим ломаную А°А12...А126 , отрезки которой назовем отрезками второго уровня, и т.д. На к-м шаге получим ломаную, состоящую из 4к отрезков к-го уровня, каждый из которых имеет длину .

Обозначим ломаную АцА^.А^ через Sk •

Определение. Кривая Кох S - это множество точек x, для которых существует такая последовательность xx ,x2,...,

что x = lim xk , где при всех k: xk е Sk , то

k

есть это предельное положение построенных кривых.

Кох - фамилия шведской женщины-математика, впервые описавшей эту кривую.

Рисунок 2

Итак, что же такое мы ^ определили? Попробуем разобраться.

Во-первых, при всех целых неотрицательных m и I = 0,1, ... ,4m:A1m е S, так как в качестве приближающей последовательности можно взять такую, у которой все точки, начиная с m-ой, совпадают с A™. А есть ли в множестве S еще какие-нибудь точки? Оказывается, есть (и даже «очень много»), но явно указать хотя бы одну из них не очень просто. Вы можете попробовать сделать это самостоятельно, мы же сознательно не станем вдаваться в этот вопрос.

Во-вторых, было бы естественно, если бы ломаные Sk «хорошо приближали» множество S. Из построения ломаных Sk видно, что для любой точки y е Sk+1 существует точка xе Sk такая, что

43 1

d(x,y) <---k+1. (Символом d(x, y) обо-

2 3

значено обычное расстояние между точками x и y.)

Грубо говоря, это значит, что при переходе от S k к Sk+1 точки «сдвигаются» не больше, чем на расстояние

43 1

—---k+1. Применяя много раз неравен-

2 3

ство треугольника, получим, что для любой точки y е Sk+n (n е N) существует такая точка x е S,,, что

d(x,y) <

43

1

,k+1

+ -

1

,k+2

... +

1

<

43

1

k+1

+

3k

Л 43

k+n+1

k+2

4 • 3k

Получилось, что все точки ломаной

(при любом п е N) лежат на рассто-б ^

янии не более чем -г от множества

4 • 3к

. Так как п произвольно, то отсюда по свойству предела получаем, что все точки множества 5 лежат на расстоянии не бо-

43

лее чем

4 • 3k

от множества Sk . В этом

смысле множества действительно «хорошо приближают» кривую Кох. Если мы

Рисунок 3

Рисунок 4

Рисунок 5

Рисунок 6

хотим нарисовать множество Б, например, на экране компьютера, то достаточно нарисовать Бк при достаточно большом к. Чем больше к, тем точнее будет картинка. Любители программирования могут написать соответствующую программу (см. рисунок 2 и приложение).

Мы довольно подробно разобрали этот пример, чтобы в следующих примерах не слишком вдаваться в подробные объяснения. Желающие могут проделать их самостоятельно. Автор отдает себе отчет в том, что не все пояснения к картинкам находятся на высоком уровне строгости. Основная цель другая - показать читателю «зоопарк» интересных примеров и разжечь любопытство. Итак, примеры.

1. Драконова кривая (кривая складок).

Построение этой кривой показано на рисунке 3. На первом шаге отрезок А°° А1° длины 1 превращается в «уголок» А] А11 А]; на к-ом шаге каждый из отрезков Агк-1 Ак-1 превращается в «уголок», причем при четном г направляется налево, а при нечетном г - направо (г = 1,2,...,2к). Так же, как и раньше, определим множество D как множество всех предельных точек последовательностей вида у,^2,..., где ^ е Ак = Л^-.^к (см. рисунок 4).

Рисунок 7

Рисунок 8

Рисунок 9

Рисунок 10

У ломаных D есть еще одна интересная интерпретация. Возьмем длинную узкую полоску бумаги и согнем ее пополам в одном и том же направлении к раз. Затем разогнем полоску, оставив в местах сгиба прямые углы. Получится ломаная, подобная ломаной Ак (рисунок 5).

Рисунок 11

Рисунок 12

Г

I I

Рисунок 13

■—1г ■— г"-1! 1 -Ч -1

г!^

I

Рисунок 14

Этим объясняется второе название кривой D - кривая складок. На рисунке 6 изображена граница кривой дракона -тоже весьма любопытное множество. Его

Рисунок 15

А/

Ч Л

У

Рисунок 16

Рисунок 17

можно описать так, как мы определяли кривую Кох и кривую дракона - с помощью «поколений» отрезков, но это описание несколько сложнее, поэтому ограничимся картинкой (рисунок 6).

2. Построение следующего примера видно из рисунка (рисунок 7, 8).

3. Можно указать способ построения целой серии подобных кривых. Для этого достаточно указать лишь первый шаг построения. Примеры приведены на рисунках 9-16.

Призвав на помощь свою фантазию, читатель может придумать много таких примеров. Однако следует быть осторожным: не всякая «схема построения» сходится к какому-нибудь множеству. Для сходимости достаточно, чтобы отрезок на каждом шаге переходил в ломаную, длины звеньев которой меньше длины исходного отрезка (и не обязательно одинаковы!). Например, кривые, построенные по схеме рисунка 17, сходиться не будут (проверьте!).

Рисунок 18

4. Ковер Серпинского. Здесь нам будет удобно использовать декартовы координаты. Рассмотрим квадрат {{х, у,): ° < х < 1, ° < у < 1}. На первом шаге удалим из него середину, то есть квадрат

[/ > 1 2 1 21 1 ( ■' 3 < х < 3.3 < У < 3 г. Оставшаяся

фигура есть объединение восьми квадра-1

тов со стороной 3 (рисунок 18).

У каждого из этих квадратов тоже удалим середину. Оставшееся множество есть объединение 64 квадратов со сторо-1

ной 9. Продолжим до бесконечности. То

множество, которое останется, называется ковром Серпинского (рисунок 19).

Можно было бы сказать иначе: ковер Серпинского - это множество таких

точек квадрата [°Д]х[°,1], у которых хотя бы одна из координат х и у имеет разложение в троичную дробь, не содержащее цифры 1.

Постараемся осознать, что объединяет все эти примеры.

■ 1 ■ ■ ■ ■ ■ ■ ■■■■■■■в ■ ■ м ■ ■■■

iНе можете найти то, что вам нужно? Попробуйте сервис подбора литературы.

■ ■ ■ ■ ■ ■ ■ ■

■ ■■■■■■II ■ ■ н ■ ■ ■ ■

■ 1 ■ ■ ■■■ ■■■ ■ ■ ■ ■■

■ ■ ■ ■ ■ ■ ■ ■

■ 1 ■ ■ ■■■ ■■■ ■ ■ ■ ■■

■ 1 ■ ■ ■ ■ ■ ■ ■■■■■■■в н ш н ш ■■■

■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■ ■

■ 1 ■ ■■■■ ■ ■■■■■■II ■ ■ ■ ■ ■■■

-----

ш ■ ■■■■ ■ ■ нв ■■■

■ I ■ ■ ■ ■■

■ ■ ■ ■

■ I ■ ■■

■ ■■■■ ■ ■ ™ ■ ■■■

■ ■ ■

■ ■ ■ ■ ■■■

■ 1 ■ ■ ■ ■ ■ ■ ■■■■■■■в ■ ■ н ■ ■ ■ ■

■ 1 ■ ■ ■■■ ■■■ ■ ■ ■ ■■

■ ■ ■ ■ ■ ■ ■ ■ ■

■ 1 ■ ■ ■■■ ■!■ ■ ■ ■ ■■

Рисунок 19

Во-первых, бросается в глаза, что «под микроскопом» эти кривые выглядят так же, как «без микроскопа», - это следует из самого принципа построения. Такое свойство в математике называется самоподобием.

Во-вторых, множества, которые мы построили, «очень сильно изломаны», и этим они разительно отличаются от привычных нам множеств: кругов, отрезков, графиков дифференцируемых функций и т.п.

Оказывается, можно ввести числовую характеристику «изломанности» множества. Она называется размерностью.

Пусть А - множество на плоскости. Как найти его площадь? Ответ известен: покрыть множество достаточно маленькими квадратиками и сложить их площади, потом взять инфимум сумм площадей (то есть наименьшую из сумм, а если таковой нет, то предельное значение суммы) по всем возможным покрытиям.

А что, если складывать не площади, а длины сторон? Или длины сторон, возведенные в некоторую степень й? Оказывается, для каждого множества существует и единственно такое неотрицательное число й, что измерение «площади» с возведением стороны квадрата в степень й приведет к осмысленному результату. Это число й называется размерностью множества А.

Размерность обладает следующими свойствами:

1. Размерность подмножества не превышает размерность содержащего его множества.

2. Размерность множества на плоскости находится в пределах от 0 до 2.

3. Размерность отрезка равна 1.

4. Размерность квадрата равна 2.

5. Размерность множества не изменяется при преобразованиях подобия.

6. Размерность объединения двух множеств равна большей размерности объединяемых множеств.

К сожалению, мы не в состоянии здесь строго вычислить размерности множеств из примеров 1-4. Приведем их без обоснования.

0. Размерность кривой Кох равна

^34 »1,26186 .

1. Размерность кривой дракона равна 2, так как она содержит некоторый квадрат. А размерность ее границы равна

21о§2А » 1,52363 , где

1 = 3 (l + V28W783 + ^28 -л/783

- ко-

рень уравнения 1 _12 = 2 (довольно страшный ответ, особенно если не знать, как он получен).

2, 3. Размерности кривых на рисунках 8, 10, 12, 14, 16 равны соответственно log35 » 1,46497 , log618 »1,61315 ,

33

log35 , 2 , 2 .

4. Размерность ковра Серпинского равна log38 » 1,89279 .

Для кривых, построенных по указанной схеме, то есть заменой отрезка на ломаную, состоящую из звеньев одинаковой длины, существует простой, но не всегда верный способ вычисления размерности. Пусть отрезок длины 1 заменяется ломаной, состоящей из n отрезков длины

1/а. Тогда размерность множества, которое получится по этой схеме, равна log an . Это верно для всех кривых из примеров

0-3, а в некоторой модификации и для ковра Серпинского, но в общем случае верно не всегда. Грубо говоря, эта формула верна тогда, когда у кривой «не слишком много самопересечений».

Множества, имеющие дробную размерность, называют фракталами (от английского fraction - дробь).

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

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

Другой пример - облака. Они тоже принимают самые замысловатые формы, сходные с фракталами. В США даже проводилось исследование с целью определить «размерность облаков». С помощью аэрофотосъемки был накоплен большой материал, проанализировав который, ученые пришли к выводу, что средняя размерность облаков над севером США -

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

Массу других примеров фрактальных структур дает биология. Это листья и кроны деревьев, кровеносная система, кораллы, некоторые морские водоросли и т.п.

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

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

Если Вас заинтересовали фракталы - можете обратиться к книгам из нижеследующего списка, далеко не полного.

Кронин Григорий Вадимович, научный сотрудник представительства компании «Patentica Ltd.» в Санкт-Петербурге.

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

Литература.

1. Mandelbrot, Benoit B, The fractal geometry of nature, Freeman, San Francisco, 1982.

2. Barnsley, Michael Fielding, Fractals everywhere, Acad. press, Boston etc., 1988.

3. Федер, Енс. Фракталы, M.: «Мир», 1981.

4. Х.-О. Пайтген, П.Х. Рихтер. «Красота фракталов», М.: «Мир», 1993.

Приложение.

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

Описание преобразования. Отрезку AB с координатами A (x0, y0) и B (xp yx) сопоставляются три отрезка PQ, QR, RS, где P (x0, y0) Q (x0+d, y0+f) R (x1-d, y 1—f S (x1, y1), здесь

d = 0.25*[(x1-x0)-(y1-y0)] f = 0.25*[(x1-x0)+(y1-y0)]

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

Для произвольного отрезка r0: W: r0 ® r1[0], r1[1], r1[2] W: r1[0], r1[1], r1[2] ® r2[0], r2[1], ..., r2[8] и т.д.

На n-м шаге после применения преобразования W получаем набор из 3n отрезков. Объединение этих отрезков обозначим Vn. Это и есть n-ое приближение самоподобной кривой.

© Наши авторы, 2001. Our authors, 2001.

i Надоели баннеры? Вы всегда можете отключить рекламу.