Поняття фрактал і фрактальна геометрія. з'явилися в кінці 70-х, з середини 80-х міцно увійшли в ужиток математиків і програмістів. Слово фрактал утворене від латинського fractus і в перекладі означає що складається з фрагментів. Воно було запропоновано Бенуа Мандельброт в 1975 році для позначення нерегулярних, але самоподібних структур, якими він займався. Народження фрактальної геометрії прийнято пов'язувати з виходом в 1977 році книги Мандельброта `The Fractal Geometry of Nature '. У його роботах використані наукові результати інших вчених, які працювали в період 1875-1925 років в тій же області (Пуанкаре, Фату, Жюліа, Кантор, Хаусдорф). Але тільки в наш час вдалося об'єднати їх роботи в єдину систему.
Роль фракталів в машинній графіці сьогодні досить велика. Вони приходять на допомогу, наприклад, коли потрібно, за допомогою декількох коефіцієнтів, задати лінії і поверхні дуже складної форми. З точки зору машинної графіки, фрактальна геометрія незамінна при генерації штучних хмар, гір, поверхні моря. Фактично знайдений спосіб легкого представлення складних неевклідових об'єктів, образи яких дуже схожі на природні.
Одним з основних властивостей фракталів є самоподібність. У найпростішому випадку невелика частина фрактала містить інформацію про всіх фрактале.
Визначення фрактала, дане Мандельброт, звучить так: "фракталів називається структура, що складається з частин, які в якомусь сенсі подібні цілому" [3].
2. Класифікація фракталів
Для щоб представити все різноманіття фракталів зручно вдатися до їх загальноприйнятої класифікації [2].
2.1 Геометричні фрактали
Фрактали цього класу самі наочні. У двомірному випадку їх отримують за допомогою деякої ламаної (або поверхні в тривимірному випадку), званої генератором. За один крок алгоритму кожен з відрізків, що становлять ламану, замінюється на ламану-генератор, у відповідному масштабі. В результаті нескінченного повторення цієї процедури, виходить геометричний фрактал.
Рис 1. Побудова триадной кривої Кох.
Розглянемо один з таких фрактальних об'єктів - триадную криву Кох [3]. Побудова кривої починається з відрізка одиничної довжини (рис.1) - це 0-е покоління кривої Кох. Далі кожна ланка (в нульовому поколінні один відрізок) замінюється на який утворює елемент. позначений на рис.1 через n = 1. В результаті такої заміни виходить наступне покоління кривої Кох. У 1-му поколінні - це крива з чотирьох прямолінійних ланок, кожне довжиною по 1/3. Для отримання 3-го покоління проробляються ті ж дії - кожна ланка замінюється на зменшений утворює елемент. Отже, для отримання кожного наступного покоління, все ланки попереднього покоління необхідно замінити зменшеним утворюючим елементом. Крива n -го покоління при будь-якому кінцевому n називається предфракталом. На рис.1 представлені п'ять поколінь кривої. При n прагне до нескінченності крива Кох стає фрактальним об'єктом [3].
Рис 2. Побудова "дракона" Хартера-Хейтуея.
Для отримання іншого фрактального об'єкта потрібно змінити правила побудови. Нехай утворюючим елементом будуть два рівних відрізка, з'єднаних під прямим кутом. У нульовому поколінні замінимо одиничний інтервал на цей утворює елемент так, щоб кут був зверху. Можна сказати, що при такій заміні відбувається зміщення середини ланки. При побудові наступних поколінь виконується правило: найперше зліва ланка замінюється на який утворює елемент так, щоб середина ланки зміщалася вліво від напрямку руху, а при заміні таких ланок, напрямки зміщення центрів відрізків повинні чергуватися. На рис.2 представлені кілька перших поколінь і 11-е покоління кривої, побудованої по вищеописаному принципом. Гранична фрактальна крива (при n прагне до нескінченності) називається драконом Хартера-Хейтуея [3].
У машинній графіці використання геометричних фракталів необхідно при отриманні зображень дерев, кущів, берегової лінії. Двомірні геометричні фрактали використовуються для створення об'ємних текстур (малюнка на поверхні об'єкта) [2,3].
2.2 Алгебраїчні фрактали
Це найбільша група фракталів. Отримують їх за допомогою нелінійних процесів в n -мірних просторах. Найбільш вивчені двомірні процеси. Інтерпретуючи нелінійний ітераційний процес, як дискретну динамічну систему, можна користуватись термінологією теорії цих систем: фазовий портрет. усталений процес. аттрактор і т.д.
Відомо, що нелінійні динамічні системи мають несолько стійкими станами. Той стан, в якому опинилася динамічна система після деякого числа ітерацій, залежить від її початкового стану. Тому кожне стійкий стан (або як кажуть - аттрактор) володіє деякою областю початкових станів, з яких система обов'язково потрапить в розглянуті кінцеві стану. Таким чином фазовий простір системи розбивається на області тяжіння аттракторов. Якщо фазовим є двомірний простір, то фарбуючи області тяжіння різними кольорами, можна отримати колірний фазовий портрет цієї системи (ітераційного процесу). Змінюючи алгоритм вибору кольору, можна отримати складні фрактальні картини з химерними кольоровими візерунками. Несподіванкою для математиків стала можливість за допомогою примітивних алгоритмів породжувати дуже складні нетривіальні структури.
Рис 3. Безліч Мандельброта.
Як приклад розглянемо безліч Мандельброта (див. Pіс.3 і рис.4). Алгоритм його побудови досить простий і заснований на простому итеративном вираженні:
де Z i і C - комплексні змінні. Ітерації виконуються для кожної стартової точки C квадратної або прямокутної області - підмножині комплексній площині. Ітераційний процес продовжується до тих пір, поки Z [i] не вийде за межі кола радіуса 2, центр якої лежить в точці (0,0), (це означає, що аттрактор динамічної системи знаходиться в нескінченності), або після досить великої кількості ітерацій (наприклад 200-500) Z [i] зійдеться до якої-небудь точці кола. Залежно від кількості ітерацій, в перебігу яких Z [i] залишалася всередині кола, можна встановити колір точки C (якщо Z [i] залишається в колі протягом досить великої кількості ітерацій, ітераційний процес припиняється і ця точка растра забарвлюється в чорний колір) .
Рис 4. Ділянка кордону безлічі Мандельброта, збільшений в 200 pаз.
Вищеописаний алгоритм дає наближення до так званого безлічі Мандельброта. Безлічі Мандельброта належать точки, які протягом нескінченного числа ітерацій не йдуть в нескінченність (точки мають чорний колір). Точки належать кордоні безлічі (саме там виникає складні структури) йдуть в нескінченність за кінцеве число ітерацій, а точки лежать за межами безлічі, йдуть в нескінченність через декілька ітерацій (білий фон).
2.3 Стохастичні фрактали
Ще одним відомим класом фракталів є стохастичні фрактали, які виходять в тому випадку, якщо в ітераційне процесі випадковим чином змінювати будь-які його параметри. При цьому виходять об'єкти дуже схожі на природні - несиметричні дерева, порізані берегові лінії і т.д. Двовимірні стохастичні фрактали використовуються при моделюванні рельєфу місцевості і поверхні моря [2].
Існують і інші класифікації фракталів, наприклад розподіл фракталів на детерміновані (алгебраїчні і геометричні) і недетерміновані (стохастичні).
3. Системи ітеріруемих функцій