Słowo to nieodzownie kojarzy się z komputerem i informatyką, jednak swój rodowód ma dużo starszy. Pochodzi prawdopodobnie od nazwiska perskiego matematyka (780-850) Muhammad ibn Mūsā al-Khwārizmī’ego. Około 300 lat p.n.e. znano już algorytm Euklidesa, służący do znalezienia największego wspólnego dzielnika. Definicja algorytmu jest bardzo prosta: algorytm jest to pewien ciąg czynności, który prowadzi do rozwiązania danego problemu. Tę prostą definicję można rozwinąć dokładniej. Algorytm to skończony zbiór dobrze zdefiniowanych czynności koniecznych do wykonania pewnego zadania w skończonej liczbie kroków. Ma on przeprowadzić system z pewnego stanu początkowego do pożądanego stanu końcowego. Algorytm może zostać zaimplementowany w postaci programu komputerowego lub układu elektronicznego. Dla rozważań o fraktalach i ich geometrii najważniejsze będą algorytmy rekurencyjne, iteracyjne oraz losowe. O rekurencji (łac. recurrens - powracający) mówi się wówczas, gdy definicja jakiegoś pojęcia odwołuje się do niego samego. Algorytm rekurencyjny to taki, który odwołuje się do siebie. Aby taki algorytm miał zakończenie, a nie działał w nieskończoność, należy w warunkach początkowych ustalić warunek zakończenia rekurencji. Algorytm iteracyjny to algorytm, który uzyskuje wynik przez powtarzanie danej operacji określoną ilość razy. Można go ogólnie zapisać jako wykonaj CZYNNOŚĆ 1 dokładnie N razy, gdzie N jest z góry ustaloną liczbą powtórzeń. Do tego rodzaju algorytmów należy algorytm IFS. Definiuje się go w przestrzeniach metrycznych zupełnych, tak zwanych przestrzeniach Banacha. Algorytm IFS pozwala na tworzenie skomplikowanych kształtów za pomocą prostych procedur. Kroki tych algorytmów zaczynają się od prostych figur, które po pewnych przekształceniach afinicznych zaczynają tworzyć skomplikowane fraktale. Odmienną grupą algorytmów są algorytmy probabilistyczne, gdzie ich następny krok zależy od prawdopodobieństwa zajścia pewnych zdarzeń. Mowa wtedy o algorytmie losowym. Przykładem wykorzystania tego algorytmu jest „gra w chaos”, za pomocą której można stworzyć trójkąt Sierpińskiego. Rodzajem takich losowych algorytmów są algorytmy IFSP, mające zasadniczą przewagę nad IFS gdyż pochłaniają mniej pamięci. IFSP działa w następujący sposób. Wykorzystano odwzorowania zwężające, np. skalujące, powodujące zmianę rozmiaru figury bądź odcinka. Dodatkowo użyto atraktora skonstruowanego w następujący sposób: na dowolnej płaszczyźnie lub przestrzeni wybiera się punkt, losuje dla niego odwzorowanie, następnie przechodzi do obrazu punktu powstałego w wyniku przekształcenia, rysuje się obraz na monitorze ustawiając kolor zależny od wylosowanego odwzorowania (np. losując kostką do gry, możliwe jest wylosowanie 6 kolorów, oraz 6 odwzorowań), przechodzi się do obrazu punktu, który teraz jest startowym punktem, po czym powtarza się algorytm od punktu losowania odwzorowania.
|