Zbiór Mandelbrota

Zbiór Mandelbrota
Zbiór Mandelbrota
Sekwencja zbliżeń ilustrująca zbiór liczb zespolonych nazywany zbiorem Mandelbrota
Przybliżone samopodobieństwo zbioru Mandelbrota

Zbiór Mandelbrota (zwany też żukiem Mandelbrota[1]) – podzbiór płaszczyzny zespolonej, którego brzeg jest jednym z najbardziej znanych fraktali[2][3], „najsłynniejszym obiektem współczesnej matematyki”. Nazwa tego obiektu została wprowadzona dla uhonorowania jego odkrywcy, matematyka Benoit Mandelbrota[2].

Historia odkrycia

W 1982 Mandelbrot spopularyzował geometrię fraktalną, publikując swoje dzieło The Fractal Geometry of Nature. Uświadomiło to społeczeństwu, że fraktale są „wśród nas” i mogą przybierać kształty podobne do tych naturalnych[2]. Oprócz tych rozważań podał też bardzo prostą metodę na utworzenie fraktalu (zbioru) Mandelbrota, który odkryty został dwa lata wcześniej, i w tymże roku udostępnił publicznie efekty swoich badań[2][4]. Mimo że zbiór nosi nazwisko Mandelbrota, tożsamość prawdziwego odkrywcy jest przedmiotem dysput. Dwóch matematyków upierało się, że odkryli ten zbiór niezależnie od siebie mniej więcej w tym samym czasie, natomiast trzeci, John Hubbard z Uniwersytetu Cornella wyjawił fakt, że na początku 1979 roku podczas odwiedzin w IBM pokazał Mandelbrotowi, jak zaprogramować coś co rok później znane było jako zbiór Mandelbrota. Mandelbrot znany był także z tego, że nie kwapił się do ujawniania wkładu innych[5].

Konstrukcja

Zbiór tworzą te punkty p C , {\displaystyle p\in \mathbb {C} ,} dla których ciąg ( z i ) i = 0 {\displaystyle (z_{i})_{i=0}^{\infty }} zdefiniowany równaniem rekurencyjnym[2][3][4]:

{ z 0 = 0 , z n + 1 = z n 2 + p . {\displaystyle {\begin{cases}z_{0}=0,\\z_{n+1}=z_{n}^{2}+p.\end{cases}}}

nie dąży do nieskończoności[2][3][4]:

lim n z n . {\displaystyle \lim _{n\to \infty }z_{n}\neq \infty .}

Można wykazać, że jest to równoważne z[3]:

n N | z n | < 2. {\displaystyle \forall _{n\in \mathbb {N} }|z_{n}|<2.}

Podsumowując jednym zdaniem:

M = { p C : n N | z n | < 2 } . {\displaystyle M=\{p\in \mathbb {C} :\forall _{n\in \mathbb {N} }|z_{n}|<2\}.}

Alternatywnie zbiór Mandelbrota definiuje się jako punkty, które w rodzinie zbiorów Julii dają zbiory spójne.

Samopodobieństwo

Zbiór Mandelbrota nie jest samopodobny[2][3], co zostało dowiedzione przez chińską matematyczkę Tan Lei, łącznie z faktem, że lokalnie jest podobny do odpowiedniego zbioru Julii.

Obrazy przybliżone

Przybliżony (128 pierwszych wyrazów ciągu) obraz zbioru (czarny)
Dokładniejszy obraz (2048 pierwszych wyrazów ciągu)

Za pomocą komputera można wykreślić przybliżone obrazy zbioru Mandelbrota. Obrazy takie przedstawiają zamieszczone rysunki.

Aby uzyskać taki obraz, dla każdego punktu p {\displaystyle p} oblicza się pewną liczbę początkowych wyrazów ciągu z n . {\displaystyle z_{n}.} Decyduje się, że punkt należy do zbioru, jeżeli dla wszystkich (w szczególności dla ostatniego) wyrazów tego podciągu spełniony jest warunek | z n | < 2. {\displaystyle |z_{n}|<2.} Jest to tym samym obraz przybliżony. Okazuje się jednak, że efekt przybliżenia jest widoczny tylko w dużych powiększeniach. Zbiór Mandelbrota zawiera się w (jest podzbiorem) każdym przybliżeniu. Dla każdego z punktów nie należących do zbioru można określić liczbę m : {\displaystyle m{:}}

n m | z n | < 2. {\displaystyle \forall _{n\leqslant m}|z_{n}|<2.}

Jest to liczba początkowych wyrazów ciągu z n , {\displaystyle z_{n},} które spełniają powyższy warunek. Ponieważ podczas wyznaczania obrazu przybliżonego liczba m {\displaystyle m} jest uzyskiwana niejako „za darmo”, często wykorzystuje się ją do zabarwiania punktów nie należących do zbioru Mandelbrota. Każdej z wartości m {\displaystyle m} przyporządkowuje się pewien kolor.

Brzeg składowych zbioru Mandelbrota dla okresów 1-6
Punkty centralne składowych zbioru Mandelbrota dla okresów 1-8

Przykładowy program

Skrypt napisany w Matlabie generujący zbiór Mandelbrota podobny jak na górze strony:

%Zbiór Mandelbrota

%zakres układu współrzędnych:
x_min = -2.5;
x_max = 1.5;
y_max = 1.25;
y_min = -1.25;

iterations = 50;
m = input('podaj szerokość:\n'); %program wygeneruje obrazek o szerokości m pikseli i proporcji zależnej od zakresu układu wsp.
n = floor(m * (y_max - y_min)/(x_max - x_min));
unit = (x_max - x_min)/m;
Mal = zeros(n,m,3);

C_0 = x_min + 1i*y_max;
C = C_0;

%Tutaj zaczynają się parametry kolorowania
w1 = 50;
w2 = 50;
w3 = 50;

p1 = 2.2;
p2 = 2.2;
p3 = 2.2;

c1 = 1/4;
c2 = 1/2;
c3 = 3/4;

f1 = @(x) exp(-w1*abs(x-c1).^p1);
f2 = @(x) exp(-w2*abs(x-c2).^p2);
f3 = @(x) exp(-w3*abs(x-c3).^p3);
%koniec kolorowania

for i = 1:n
    C = C - real(C) + real(C_0);
    for j = 1:m
        c = checkC(0, C, iterations) / iterations;
        Mal(i,j,1) = f1(c);
        Mal(i,j,2) = f2(c);
        Mal(i,j,3) = f3(c);
        %Mal(i,j:) = c; %gdy chcemy zbiór czarno biały
        C = C + unit;
    end
    C = C - 1i*unit;
end

imshow(Mal);

Użyta w skrypcie funkcja sprawdzająca zbieżność ciągu:

function [ it_used ] = checkC(z_0, C, it_max )

    for i = 0:it_max
        z_1 = z_0^2 + C;
        if abs(z_1) >= 2
            break;
        end
        z_0 = z_1;
    end

    it_used = i;
end

Zobacz też

  • mnich Mandelbrota
  • MPSolve – obliczanie punktów centralnych składowych zbioru Mandelbrota
  • płonący statek

Przypisy

  1. Zbiór Mandelbrota, [w:] Encyklopedia PWN [dostęp 2017-09-09] .
  2. a b c d e f g Białynicki-Birula i Białynicka-Birula 2002 ↓, s. 68–69.
  3. a b c d e Gdzie jest zbiór Mandelbrota? | Granice nauki [online], www.granicenauki.pl [dostęp 2017-06-20] [zarchiwizowane z adresu 2018-03-23] .
  4. a b c TomaszT. Lubiński TomaszT., Zbiór Mandelbrot’a – Algorytmy i Struktury Danych [online], www.algorytm.org [dostęp 2017-06-20]  (pol.).
  5. Banerjee i Darling 2020 ↓, s. 82.

Bibliografia

  • Agnijo Banerjee, David Darling: Dziwna matematyka. Helion S.A., 2020. ISBN 83-283-5687-2.
  • Iwo Białynicki-Birula, Iwona Białynicka-Birula: Modelowanie rzeczywistości. Warszawa: Prószyński i S-ka SA, 2002. ISBN 83-7255-103-0.

Linki zewnętrzne

Zobacz galerię związaną z tematem: Zbiór Mandelbrota
Polskojęzyczne
  • Informacje o fraktalu i kod w różnych językach programowania
Anglojęzyczne
  • Eric W.E.W. Weisstein Eric W.E.W., Mandelbrot Set, [w:] MathWorld, Wolfram Research [dostęp 2020-12-12]  (ang.).
  • publikacja w otwartym dostępie – możesz ją przeczytać Decoding Math's Most Famous Fractal: The Mandelbrot Set, kanał Quanta Magazine na YouTube, 27 stycznia 2024 [dostęp 2024-01-28].
  • Generator żuka Mandelbrota napisany w HTML5 i JavaScript
  • FractalTS Generator zbiorów mandelbrota, płonącego statku oraz odpowiadających zbiorów julii
  • Fragment żuka Mandelbrota wyświetlony przy ograniczeniu do 500 iteracji[martwy link] lub 2000 iteracji[martwy link].
  • PWN: 3937122
  • Britannica: topic/Mandelbrot-set
  • DSDE: Mandelbrotmængden