STOP RIO TINTO
NIKOLA UBAVIĆ

Žulijev i Mandelbrotov skup

Francuski matematičar Gaston Žulija1 je 1918. godine objavio rad Mémoire sur l'itération des fonctions rationnelles u kome je proučio iteracije kompleksnih racionalnih funkcija. Iako Žulija nije bio prvi matematičar koji se bavio iteracijama racionalnih funkcija, Žulija je ovim radom sistematizovao dotadašnje znanje, i time zasnovao novu matematičku oblast, kasnije nazvanu kompleksna dinamika. Važnost Žulijevog doprinosa je prepoznata u matematičkim krugovima, i Žulija je nagrađen nagradom Francuske akademije nauke, što je doprinelo popularnosti kompleksne dinamike među matematičarima.

Ipak, početna zainteresovanost matematičara za kompleksnu dinamiku je polako jenjavala tokom narednih godina, da bi do tridesetih godina prošlog veka, potpuno nestala. Tek će pedeset godina kasnije, Žulijev učenik, Benoa Mandelbrot2 nastaviti tamo gde je njegov učitelj stao.

Mandelbrot je uspeo da zainteresuje naučnu zajednicu za Žulijev skup, i za skup koji će kasnije biti poznat pod imenom Mandelbrotov skup. Zanimljivi oblici navedenih skupova doprineli su njihovoj, sada već velikoj, popularnosti u široj javnosti.

U nastavku ovog teksta biće opisana osnovna svojstva Mandelbrotovog i Žulijevih skupova, kao i nekoliko algoritama za njihovo crtanje. Sadržaj teksta je naveden u narednoj listi. Za opširniji pregled istorije kompleksne dinamike čitaoce upućujemo na [1].

Žulijev skup

Neka je f: funkcija određena polinomom sa kompleksnim koeficijentima, tj. f(z)=anzn+an1zn1++a0. Pitanje koje nas interesuje, ili je barem interesovalo Žuliju, glasi: kakve su osobine funkcije fk kada k teži beskonačnosti (gde fk označava kompoziciju ff sa k članova). Za proučavanje ovakvih iteracija, od izuzetne koristi će nam biti pojmovi koje ćemo u nastavku definisati:

Neka je z0 proizvoljna tačka u kompleksnoj ravni, i neka je f: holomorfna funkcija (ne obavezno polinomska). Orbita tačke z0, u oznaci 𝒪f(z0), je niz (fk(z0))k. Tačka z0 je fiksna tačka preslikavanja f ako je f(z0)=z0. Ako je fp(z0)=z0 za neko prirodno p, tada tačku z0 nazivamo periodičnom tačkom. Najmanje p za koje važi jednakost fp(z0)=z0 je period tačke z0. Jasno, periodična tačka z0 je fiksna ako i samo ako je njen period 1. Orbitu periodične tačke nazivamo cikl. Ako je z0 periodična tačka sa periodom p, izvod (fp)(z0)=λ nazivamo multiplikator, a tačku z0 nazivamo privlačeća, neutralna ili odbijajuća u zavisnosti od toga da li je 0|λ|<1, |λ|=1 ili |λ|>1. Primetimo da multiplikator ne zavisi od izbora tačke cikla, jer po formuli za izvod kompozicije funkcije važi (fp)(z0)=i=0p1f(z0+i). Prema tome za sam cikl možemo da kažemo da je privlačeći, neutralan ili odbijajući u zavisnosti od odgovarajućeg multiplikatora. Ako tačka z0 nije sama periodična, ali se u njenoj orbiti nalazi periodična tačka, za tačku z0 kažemo da je predperiodična.

Izrazi, privlačeća, odnosno odbijajuća, tačka, ukazuju na to kako se ponaša okolina tih tačaka pri iteracijama funkcije f. Tačnije, važe naredne dve teoreme:

Teorema 1. Neka je z0 privlačeća fiksna tačka holomorfne funkcije f. Tada postoji disk D sa centrom u z0 sa sledećom osobinom: ako zD tada fk(z)z0 kad k.

Teorema 2. Neka je z0 odbijajuća fiksna tačka holomorfne funkcije f. Tada postoji disk D sa centrom u z0 sa sledećom osobinom: ako zD i zz0 tada postoji prirodan broj k takav da je fk(z)D.

Dokaz teoreme 1. Kako je |f(z0)|<1 sledi da postoje δ>0 i μ<1 takvi da za svako z za koje je |zz0|<δ važi |f(z)f(z0)zz0|<μ. Ako za disk D uzmemo disk centriran u z0 sa poluprečnikom δ, tada će navedena jednakost biti ispunjena za sve tačke z iz tog diska. Pritom važi |f(z)z0|=|f(z)f(z0)|<μ|zz0|. Ponavljajući navedeni argument k puta, zaključujemo da je |fk(z)z0|<μk|zz0|. Kako je μ<1, sledi da |fk(z)z0|0 kad k, što je i trebalo dokazati. □

Dokaz teoreme 2 je analogan.

Vratimo se sada na pitanje sa početka ovog poglavlja: kakve su osobine polinomske funkcije fk kada k teži beskonačnosti. Ako je f(z)=az+b, tada f predstavlja direktnu konformnu afinu transformaciju kompleksne ravni. Ponašanje ovakvih transformacija je u potpunosti poznato, pa ih u ovom tekstu nećemo proučavati. Ako je funkcija f polinom stepena n2, tada je naredno tvrđenje izuzetno korisno prilikom ispitivanja iteracija funkcije f.

Teorema 3. Ako je f(z)=anzn+an1zn1++a0, gde je an0 i n2, tada postoji realan broj R1 takav da |z|>R povlači fk(z).

Dokaz: Neka je γ>1 proizvoljno, i R=max{1,2|an1|++|a0||an|,(2γ|an|)1n1}.

Neka je |z|>R. Tada, |f(z)||an||z|n(|an1||z|n1++|a1||z|+|a0|)|an||z|n|z|n1(|an1|++|a1|+|a0|)=|z|n(|an||an1|++|a1|+|a0||z|)>|z|n12|an|=12|z||an||z|n1>|z|γ, pa je i |f(z)|>R. Indukcijom sledi |fk(z)|>γk|z|>γkR. Odavde sledi da fk(z) kada k. □

Primetimo da iz gornjeg tvrđenja sledi da za svaku tačku z postoje dve međusobno isključujuće mogućnosti: ili je orbita tačke z ograničena ili fk(z). Zato uvodimo naredne definicije. Ispunjen Žulijev skup 𝒦f funkcije f je skup svih tačaka kompleksne ravni čije orbite ostaju ograničene prilikom iteracije funkcije f. Žulijev skup 𝒥f funkcije f definišemo kao granicu ispunjenog Žulijevog skupa, tj. 𝒥f=𝒦f. Fatuov3 skup f funkcije f definišimo kao \𝒥f. Iz definicije Žulijevog skupa sledi da tačka z pripada Žulijevom skupu ako i samo ako u svakoj njenoj okolini postoje kompleksni brojevi w1 i w2 takvi da fk(w1) i fk(w2)↛.

Primer 1. Utvrdimo za početak Žulijev skup funkcije f(z)=z2. Prelaskom na polarne koordinate, vidimo da je f(z)=r2ei2θ, gde je r=|z| a θ=arg(z), pa je fk(z)=r2kei2kθ. Kako je |r2kei2kθ|=r2k, lako možemo zaključiti šta se dešava sa proizvoljnom tačkom prilikom iteracija funkcije f. Ako je r<1 tada r2k0, pa fk(z)0 kad k. Slično, ako je r>1 tada fk(z) kad k. Konačno ako je r=1 tada se sve tačke orbite 𝒪f(z) nalaze na jediničnoj kružnici. Iz svega navedenog sledi da je 𝒦f funkcije f(z)=z2 jedinični disk centriran u nuli, a 𝒥f jedinična kružnica centrirana u nuli. ▲

Do istog zaključka dolazimo ako posmatramo funkciju f(z)=zn za bilo koje n2. Kao što ćemo videti, za (skoro) sve ostale polinomske funkcije, odgovarajući Žulijevi skupovi će biti mnogo komplikovaniji objekti. Primer jednog takvog skupa je prikazan na figuri 1.

Žulijev skup polinoma četvrtog stepena.
Figura 1. Primer Žulijevog skupa polinomske funkcije četvrtog stepena.

Naredna teorema opisuje osnovne osobine definisanih skupova.

Teorema 4. Neka su 𝒦, 𝒥 i ispunjen Žulijev skup, Žulijev skup i Fatuov skup kompleksne polinomske funkcije f. Tada važe naredna tvrđenja.

  1. 𝒦 i 𝒥 su kompaktni skupovi i važi 𝒥𝒦.
  2. 𝒦 i 𝒥 su neprazni skupovi.
  3. Skup 𝒥 ima prazan interior.
  4. Skup 𝒥 je invarijantan za f i f1.
  5. Za svako prirodno m važi 𝒥fm=𝒥.

Dokaz:

  1. Ako z𝒦 tada fk(z), pa sledi da je fm(z)>R za neko prirodno m, gde je R poluprečnik određen u teoremi 3. Zbog neprekidnosti funkcije fm sledi da postoji dovoljno mali disk Dε(z) takav da za svako wDε(z) važi fm(w)>R, tj. fk(w). Po definiciji ispunjenog Žulijevog skupa sledi da je Dε(z)𝒦=, pa zaključujemo da je skup 𝒦 zatvoren. Samim tim važi da mu pripada njegova granica 𝒥 i da je i ona zatvorena. Iz teoreme 3 sledi i da su skupovi 𝒦 i 𝒥 ograničeni, a kako su i zatvoreni, sledi da su kompaktni.
  2. Jednačina f(z)=z ima barem jedno rešenje, neka je to z0, iz čega sledi da z0𝒦, pa je skup 𝒦 neprazan. Neka je sada z1𝒦f (postojanje ovakvog broja z1 sledi iz teoreme 3). Tada će za neko realno 0λ1 tačka λz0+(λ1)z1 pripadati granici skupa 𝒦. Dakle i 𝒥 je neprazan skup.
  3. Skup 𝒥 kao granica zatvorenog skupa 𝒦 mora imati prazan interior.
  4. Neka z𝒥. Tada fk(z)↛,, ali u svakoj okolini tačke z postoji tačka w takva da fk(w). Odavde sledi da fk(f(z))↛ i fk(f(w)). Zbog neprekidnosti funkcije f, tačke f(z) i f(w) mogu biti proizvoljno bliske, zaključujemo da f(z)𝒥. Dakle f[𝒥]𝒥, iz čega sledi da 𝒥f1[𝒥]. Ako je f(z)=z tada za svako w iz dovoljno male okoline tačke z, postoji w u okolini tačke z takvo da je f(w)=w. Odavde sledi da fk(f(z))↛ i fk(f(w)). Dakle f1[𝒥]𝒥 i 𝒥f[𝒥].
  5. Iz teoreme 3 sledi da fk(z) ako i samo ako (fm)k(z)=fmk(z). Dakle funkcije f i fm imaju iste ispunjene Žulijeve skupove, pa imaju iste i Žulijeve skupove.

Žulijev skup polinoma stepena dva.
Figura 2. Slika koja ilustruje činjenicu da je ispunjen Žulijev skup 𝒦f invarijantan za odgovarajuće preslikavanje f. Na slici je prikazan jedan ispunjen Žulijev skup (crna površina). Odgovarajuća funkcija preslikava unutrašnjost plavog, odnosno crvenog, pravougaonika na unutrašnjost plavog, odnosno crvenog, krivolinijskog četvorougla.

Različite funkcije mogu veoma „slično“ delovati na kompleksnu ravan. Bilo bi veoma korisno kada bismo mogli da proučimo svojstva svih polinomskih funkcija, proučavajući svojstva neke manje klase funkcija. Smisao naredne definicije je upravo preciziranje pojma sličnosti među funkcijama.

Neka su f i g dve kompleksne funkcije kompleksne promenljive. Ako postoji bijekcija ϕ: takva da važi ϕf=gϕ, za funkcije f i g reći ćemo da su konjugovane funkcijom ϕ.

Što više finih osobina poseduje funkcija ϕ,, poput neprekidnosti ili holomorfnosti, to će funkcije f i g biti sličnije. Tako na primer, prilikom svake konjugacije, periodične tačke se slikaju u periodične tačke, pri čemu se period čuva, a ako je ϕ konformno preslikavanje, tada se multiplikatori čuvaju. Ako su dve funkcije konjugovane funkcijom oblika ϕ(z)=az+b, njihovi Žulijevi skupovi će biti slični u geometrijskom smislu. Ovo sledi iz činjenice da funkcije oblika ϕ(z)=az+b geometrijski predstavljaju kombinaciju rotacije, homotetije i translacije.

Primer 2. Uz pomoć pojma konjugacije možemo odrediti Žulijev skup funkcije g(z)=z22. Neka je f(z)=z2 i neka je funkcija4 ϕ(z)=z+z1 definisana na komplementu jediničnog diska 𝔻={z||z|>1}. Lako se proverava da je funkcija ϕ injekcija na svom domenu. Naime, ako je ϕ(z)=ϕ(w) tada, iz definicije funkcije ϕ, sledi da je zw=1. Odavde sledi da je |z||w|=1, pa najviše jedan od brojeva z i w može pripadati skupu 𝔻. Dokažimo da funkcija ϕ slika domen 𝔻 na skup \[2,2]. Rešavajući jednačinu w=ϕ(z) po z, dobijamo da je inverzna funkcija funkcije ϕ višeznačna funkcija data sa z±=12(w±w24). Kako je z+z=1, sledi da najviše jedan od brojeva z+ i z može pripadati skupu 𝔻. Ako se z+ i z nalaze na jediničnoj kružnici, tada je ϕ(z+)=ϕ(z)=2cos(arg(z))[2,2]. Prema tome ϕ je bijekcija između skupova 𝔻 i \[2,2].

Jedninična kružnica. Duž koja spaja -1 i 1.
Figura 3. Na prvoj slici je prikazan skup 𝔻, dok je na drugoj slici prikazan skup \[2,2]. Funkcija ϕ slika koncetrične krugove u familiju elipsa sa žižama u 2 i 2, a pramen pravih kroz 0 u familiju hiperbola sa žižama u 2 i 2. Svaka od elipsi je ortogonalna na svaku hiperbolu koju seče.

Direktnim računom se proverava da je ϕf=gϕ odnosno ϕfϕ1=g. Prema tome važi gn=ϕfnϕ1. Neka je sad z\[2,2] proizvoljna tačka. Tada je gn(z)=ϕ(fn(ϕ1(z))). Kako ϕ1(z) pripada skupu 𝔻, iz primera 1 sledi da fn(ϕ1(z)) kad n. Prema tome i gn(z)=ϕ(fn(ϕ1(z))) kad n. Slično se dokazuje da ako z[2,2] tada gn(z)[2,2]. Prema tome, (ispunjen) Žulijev skup funkcije je segment [2,2]. ▲

Mandelbrotov skup

U ovom poglavlju, posvetićemo se polinomskim funkcijama oblika fc(z)=z2+c (i oznaku fc(z) ćemo koristiti isključivo za z2+c). Naredna teorema nam govori da je svaka polinomska funkcija stepena 2 afino konjugovana jednoj funkciji oblika fc(z)=z2+c. Prema tome, za proučavanje Žulijevih skupova svih polinomskih funkcija stepena dva, dovoljno je posmatrati funkcije oblika fc.

Teorema 5. Neka je g(z)=αz2+βz+γ. Tada ϕ(z)=αz+β/2 ostvaruje konjugaciju između g i fc , tj. φg=fcφ, gde je c=12(2ββ2+4αγ).

Takođe, ako su fc1 i fc2 dve afino konjugovane funkcije, tada je c1=c2.

Dokaz: Navedena teorema se direktno dokazuje. □

Žulijev skup polinoma stepena dva. Žulijev skup polinoma stepena dva.
Figura 4. Dva konjugovana Žulijeva skupa. Prvi Žulijev skup je određen funkcijom g(z)=1/4(1i)z2+iz(1.57+1.302i), dok je drugi određen funkcijom f=z20.468+0.567i. Skupovi su prikazani u odgovarajućoj razmeri, i na slici su orijentisani baš kao u kompleksnoj ravni.

Definišimo sada Mandelbrotov skup.

Mandelbrotov skup je skup svih tačaka kompleksne ravni za koje je ispunjen Žulijev skup funkcije fc povezan.

Mandelbrotov skup.
Figura 5. Mandelbrotov skup

Da bismo odredili oblik ispunjenog Žulijevog skupa, a samim tim i odredili da li je on povezan, primenićemo sledeću ideju: Neka je D disk sa centrom u nuli, takav da je 𝒦fcD, i neka je R poluprečnik ovog diska. Posmatrajmo niz indirektnih slika Dk=fck[D]. U skupu Dk nalaze se se svi kompleksni brojevi z takvi da je |fk(z)|R. Prema tome 𝒦fcDk za svako prirodno k. Kako k raste, tako raste i „broj“ tačaka kompleksne ravni z za koje je |fk(z)|>R. Dakle skup Dk se smanjuje, a kako 𝒦fcDk za svako prirodno k, za očekivati je da će Dk „težiti“ ispunjenom Žulijevom skupu 𝒦fc. Na ovaj način ćemo odrediti skup 𝒦fc. Naredne definicije i leme pomoći će nam u formalizaciji navedene ideje.

D D1 D2 D3 D4 D5 D10 D50 D200
Figura 6. Disk D i niz inverznih slika: D1,D2,D3,D4,D5,D10,D50,D200.

Neprekidnu, zatvorenu, prostu, krivu u kompleksnoj ravni nazivamo petlja. Po poznatoj Žordanovoj teoremi, svaka petlja C određuje u ravni dva povezana skupa: jedan neograničen i drugi ograničen. Neograničen skup nazivamo spoljašnjost petlje C, a ograničen skup nazivamo unutrašnjost petlje C. Uniju dve petlje koje imaju tačno jednu zajedničku tačku, nazivamo lemniskata.

Lema 1. Neka je C petlja u kompleksnoj ravni.

  1. Ako c pripada unutrašnjosti petlje C, tada je fc1[C] petlja čija je unutrašnjost inverzna slika unutrašnjosti petlje C.
  2. Ako c pripada petlji C, tada je fc1[C] lemniskata, čija je unutrašnjost inverzna slika unutrašnjosti petlje C.
  3. Ako c pripada spoljašnjosti petlje C, tada je fc1[C] unija dve petlje, a unija njihovih unutrašnjosti je inverzna slika unutrašnjosti petlje C.

Dokaz: Primetimo da su fc1(z)=±zc i (fc1)(z)=±12(zc)12 konačni i različiti od nule za zc. Prema tome, ako C ne sadrži tačku c, tada je fc1 lokalni difeomorfizam u okolini krive C. Označimo sa +fc1 i fc1 dve grane funkcije fc1. Razlikujemo naredna tri slučaja.

  1. Tačka c pripada unutrašnjosti petlje C: Neka je w fiksirana tačka na petlji C. Ako tačka z od tačke w krene da „šeta“ po petlji C, tada će, zbog neprekidnosti funkcije +fc1 u okolini petlje C, tačka +fc1(z) početi da opisuje krivu. Kada z prvi put stigne do w, tačka +fc1(z) će stići do tačke fc1(w), a kada z drugi put stigne do w, tačka +fc1(z) će stići do tačke +fc1(w) zatvarajući krivu fc1(C). Kako je u okolini krive C funkcija +fc1 lokalni difeomorfizam, kriva fc1[C] ne može imati samopreseka. Pošto polinom fc preslikava tačke iz skupa fc1[C], i samo te tačke, na C, fc mora preslikavati unutrašnjost i spoljašnjost petlje fc1[C] na unutrašnjost i spoljašnjost petlje C. Dakle fc1 slika unutrašnjost petlje C na unutrašnjost petlje fc1[C].
  2. Tačka c pripada petlji C: U ovom slučaju, krive, koje opisuju tačke +fc1(z) i fc1(z), će se preseći kada z „stigne“ do c. Zbog toga je skup fc1[C] lemniskata.
  3. Tačka c pripada spoljašnjosti petlje C: U ovom slučaju +fc1(z) može proći samo kroz tačku +fc1(w), a fc1(z) može proći samo kroz tačku fc1(w). Odavde sledi da se fc1[C] sastoji od dve petlje.

Lema 2. Ako je Fn niz kompaktnih povezanih podskupova Hausdorfovog5 prostora6, tada je F=n=1Fn povezan skup.

Dokaz: Pretpostavimo suprotno. Tada postoje disjunktni otvoreni skupovi A i B takvi da je FAB i F sadrži tačke i iz skupa A i iz skupa B. Kako je svaki od skupova Fn povezan, i sadrži tačke i iz A i iz B, sledi da je svaki od skupova AFn neprazan. Štaviše, AFn je opadajući niz kompaktnih skupova, pa po Kantorovoj7 lemi8, presek n=1AFn je neprazan. Kontradikcija. □

Teorema 6. Važi M={cC  |  fck(0)↛,  (k)}.

Dokaz: Neka je C kružnica sa centrom u nuli, sa poluprečnikom R koji je određen iz teoreme 3 za funkciju fc. Ako je orbita 𝒪fc(0) ograničena, tada je tačka c=fc(0) u unutrašnjosti petlje C, pa po lemi 1 sledi da je fc1[C] petlja u unutrašnjosti petlje C. Takođe, fc2(0) pripada unutrašnjosti petlje C, pa po istoj lemi, sledi da f1(fc2(0))=c pripada unutrašnjosti petlje fc1[C]. Primenjujući ponovo lemu 1, zaključujemo da je fc2[C] petlja sadržana u unutrašnjosti petlje fc1[C]. Na ovaj način, dobijamo niz petlji fcn[C] tako da svaka petlja u svojoj unutrašnjosti sadrži narednu. Neka je P=k=1Dk gde je Dk adherencija unutrašnjosti petlje fcn[C]. Tačka z pripada skupu \P ako i samo ako za neko prirodno k važi |fck(z)|>R, tj. ako i samo ako fck(z). Dakle P je ispunjen Žulijev skup funkcije fc. Kako je skup P presek monotonog niza povezanih kompaktnih skupova, iz leme 2 sledi da je i sam povezan.

Ako neka tačka fcp(0) orbite 𝒪fc(0) pripada kružnici C, tada je skup fcp[C], po prethodnoj lemi, lemniskata. Dalje, skup fc(p+1)[C] je unija dve lemniskate sa disjunktnim unutrašnjostima, skup fc(p+2)[C] je unija četiri lemniskate sa disjunktnim unutrašnjostima, itd… Kako u prethodnom delu dokaza, zaključujemo da je 𝒦fc=n=1fcn[C]. Pritom se skup n=1p+mfcn[C] sastoji od 2m1 lemniskate sa disjunktnim unutrašnjostima, pa Žulijev skup u ovom slučaju nije povezan. Zapravo, u ovom slučaju Žulijev skup je homeomorfan Kantorovom skupu9.

Ako orbita 𝒪fc(0) nije ograničena, tada postoji neko najmanje prirodno p za koje važi važi |fcp(z)|>R. Tada se uzastupnom primenom leme 1 dobija da se skup fc(p+k)[C] sastoji od 2k1 petlji sa disjuntktnim unutrašnjostima. I u ovom slučaju Žulijev skup je homeomorfan Kantorovom skupu. □

Tri niza krivih.
Figura 7. Tri slučaja iz dokaza teoreme 4.

Kao što vidimo, u navedenom dokazu je iskorišćen položaj kritične tačke, odnosno tačke z za koju je fc(z)=0. Kod polinoma stepena 2, postoji tačno jedna kritična tačka (za polinome oblika z2+c to je baš z=0). Polinomi stepena većeg od dva mogu imati i više kritičnih tačaka. Analogno se može dokazati da je Žulijev skup tih polinoma povezan ako i samo ako mu pripadaju sve kritične tačke. U slučaju da barem jedna od kritičnih tačaka ne pripada Žulijevom skupu, tada se on sastoji od neprebrojivo mnogo povezanih komponenti, pri čemu te komponente ne moraju biti jednočlani skupovi. Kada se sve kritične tačke nalaze van Žulijevog skupa, tada je svaka od komponenti povezanosti jednočlan skup, i Žulijev skup je homeomorfan Kantorovom skupu.

Nepovezan Žulijev skup polinoma trećeg stepena.
Figura 8. Žulijev skup koji nije homeomorfan Kantorovom skupu, ali nije ni povezan. Ovakvi Žulijevi skupovi ne postoje kod funkcija oblika f(z)=zd+c, jer takve funkcije imaju samo jednu kritičnu tačku.

Vratimo se na polinome stepena 2. Naredna teorema je poboljšanje rezultata teoreme 3:

Teorema 7. Neka je fc(z)=zn+c, n2, gde je c proizvoljna tačka kompleksne ravni. Tada fck(0)↛ kad l ako i samo ako je |fck(0)|21n1 za svaki prirodan broj k.

Dokaz: Za vežbu.

Iz teorema 6 i 7 zaključujemo da tačka c pripada Mandelbrotovom skupu ako i samo ako je orbita {fcn(0)} ograničena kružnicom poluprečnika 2. Ova činjenica će biti od izuzetne koristi prilikom crtanja Mandelbrotovog skupa.

Niz Žulijevih skupova.
Figura 9. Ilustracija koja demonstrira vezu između Mandelbrotovog i Žulijevog skupa. Na ilustraciji su prikazani Žulijevi skupovi, tako da je svaki Žulijev skup 𝒥fc umanjen i centriran u tački c.

Anatomija Mandelbrotovog skupa

Mandelbrotov skup je definisan kao skup svih kompleksnih vrednosti c za koje je Žulijev skup funkcije fc povezan. Iako na prvi pogled deluje da je Mandelbrotov skup vezan samo za specifičnu osobinu Žulijevog skupa, ispostavlja se da Mandelbrotov skup sadrži u sebi mnogo više informacija o Žulijevom skupu. U narednim redovima će biti izneto bez dokaza nekoliko zanimljivih činjenica o vezama Žulijevog i Mandelbrotovog skupa.

Posmatranjem slike Mandelbrotovog skupa, može se uočiti da veliku površinu zauzima figura koja liči na ispunjenu „kardioidu“, za koju su zakačeni manji diskovi. Tačke c u ispunjenoj „kardioidi“ odgovaraju funkcijama fc koji imaju privlačeću fiksnu tačku. Algebarski, ovo se može okarakterisati kao fc(z)=z i |fc(z)|<1. Na samoj „kardioidi“ očekivano bi bilo da važi fc(z)=z i |fc(z)|=1 tj. |fc(z)|=e2πiθ za neko realno 0θ1. Odavde dobijamo sistem z2+c=z2z=e2πit. Rešenje navedenog sistema po c je c(θ)=e2iθ/2e4iθ/4, što nam govori da je „kardioida“ zaista kardioida.

Na sličan način možemo odrediti parametar c za koji Žulijev skup ima periodičnu privlačeću tačku sa periodom dva. Naime, ovo odgovara uslovima fc2(z)=z i |(fc2)(z)|<1. Opet bi bilo očekivano da na granici traženog skupa važi jednakost |(fc2)(z)|=1 umesto navedene nejednakosti, što nas dovodi do sistema (z2+c)2+c=z4z(z2+c)=e2πit, čije rešenje je c(θ)=1+14e2πiθ, što predstavlja parametrizaciju kružnice koja dodiruje kardioidu u tački c=34.

Nastavljanjem opisanog procesa, možemo dobiti10 parametrizaciju dva diska koji sadrže parametre c takve da fc poseduje periodičnu privlačeću tačku sa periodom tri. I ova dva diska dodiruju kardioidu…

Kao što vidimo, skup svih parametara c takvih da polinom fc poseduje periodičnu privlačeću tačku nekog perioda p veoma je interesantan. Ovaj skup označavamo sa H. Za razumevanje skupa H od ključne važnosti je teorema koju je 1905. godine dokazao Fatou, a koju navodimo bez dokaza:

Teorema 8. Svaka privlačeća periodična tačka nekog polinoma privlači barem jednu kritičnu tačku.

Iz teoreme 8 direktno sledi da polinom fc može imati najviše jednu privlačeću tačku, kao i da je H. Takođe, može se dokazati da je skup H otvoren. Prema tome, nameće se odmah pitanje: da li je H=int? Ovo pitanje i dalje nema odgovora.

Povezane komponente skupa H nazivamo hiperboličke komponente ili mu atomi. Svaka hiperbolička komponenta sačinjena je od parametra c za koji odgovarajući Žulijev skup ima privlačeću periodičnu tačku sa periodom p. Zbog toga govorimo o periodu hiperboličke komponente.

Hiperbolička komponenta.
Figura 10. Okolina hiperboličke komponente perioda 5.

U okolini hiperboličke komponente perioda p, a van nje, nalaze se parametri koji određuju Žulijev skup sa periodičnom odbijajućom tačkom perioda p. Na samoj granici hiperboličke komponente nalaze se parametri koji određuju Žulijev skup sa periodičnom neutralnom tačkom perioda p. Što se više približavamo središtu hiperboličke komponente, to će multiplikator odgovarajuće periodične tačke biti manji.

U samom središtu hiperboličke komponente, nalazi se tačka koju nazivamo centar hiperboličke komponente ili nukleus mu atoma, i koja odgovara vrednosti c za koji odgovarajući Žulijev skup ima superprivlačeću periodičnu tačku, odnosno periodičnu tačku čiji multiplikator je 0. Kako je izvod polinoma fc(z) po z jednak 2z, tačka z može biti superprivlačeća ako i samo ako je 0. Odavde sledi da je tačka c nukleus neke hiperboličke komponente sa periodom k ako i samo ako je fck(0)=0. Odavde se dobija niz polinoma: fc1(0)=cfc2(0)=c+c2fc3(0)=c+c2+2c3+c4fc4(0)=c+c2+2c3+5c4+6c5+6c6+4c7+c8 čija rešenja odgovaraju centrima hiperboličkih komponenti.

Neka je Hp hiperbolička komponenta sa periodom p koja dodiruje kardioidu u tački cp. Zamislimo da se tačka c nalazi u kardioidi, u bliznini komponente Hp i da se kreće prema tački cp. Tada se uočavaju sledeći fenomeni:

  1. Dok je c u unutrašnjosti kardioide, u skupu 𝒥 se nalazi jedna atraktivna fiksna tačka w. Tačke u okolini tačke w „spiralno“ teže ka tački w pri iteracijama funkcije f. Što se više tačka c približava tački cp, to se Žulijev skup više „cepa“ na p komponenti.
  2. Kada c stigne u tačku cp, tada se c nalazi na granici kardioide i komponente Hp. Kako je w neutralna, to je fc(w)=eiθ što znači da fc deluje na okolinu tačke w tako što je rotira za ugao θ. Sada se Žulijev skup sastoji od p komponenti koje se dodiruju u tački w.
  3. Kada c prođe tačku cp, i uđe u hiperboličku komponentu Hp tačka w postaje odbijajuća, i pojavljuje se p privlačećih tačaka w0,wp1 u okolini tačke w, pri čemu su tačke w0,wp1 numerisane na osnovu položaja u odnosu na w, u smeru suprotnom od kazaljke na satu. Skup {w0,wp1} je orbita tačke w0, i važi fc:wiwi+q za neko prirodno q, gde se indeksi uzimaju po modulu p.
Žulijev skup sa jednom privlačećom fiksnom tačkom. Žulijev skup sa jednom fiksnom neutralnom tačkom. Žulijev skup sa fiksnom privlačećom tačkom perioda tri.
Figura 11. Niz slika Žulijevih skupova koji odgovaraju navedenim slučajevima. Na slikama je prikazan slučaj kada c prelazi iz kardioide u hiperboličku komponentu perioda 3. Bojom su istaknute atraktivne tačke.

Svaku hiperboličku komponentu koja „dodiruje“ kardioidu možemo označiti razlomkom q/p, gde je p period hiperboličke komponente, a q „ugao rotacije“ hiperboličke komponente opisan u tački 3 sa prethodne liste.

Na „vrhu“ svake q/p hiperboličke komponente nalazi se antena koja se račva na tačno p grana. Ako granu koja je povezana sa hiperboličkom komponentom obeležimo sa A0, a ostale grane sa oznakama A1,Ap1, krećući se pritom u smeru suprotnom od kazaljke na satu, tada će grana Aq uvek biti najkraća.

Reparametrizacija Mandelbrotovog skupa

U prethodnom delu ovog teksta pokazano je da mnoge osobine Žulijevog skupa 𝒥fc zavise od položaja tačke c u odnosu na Mandelbrotov skup. Iz teoreme 5, sledi da je svaki Žulijev skup kvadratnog polinoma sličan Žulijevom skupu polinoma fc(c) za neki kompleksan broj c. Međutim, kvadratni polinomi nisu morali biti parametrizovani baš familijom polinoma oblika z2+c. Svaka druga familiju polinoma koja zavisi od jednog parametra i za koju važi da je svaki kvadratni polinom afino konjugovan barem jednom polinomu iz te familije, bila bi jednako dobra. I u tom slučaju bi Mandelbrotov skup bio definisan kao skup svih parametara za koje je odgovarajući Žulijev skup povezan, ali bi tada Mandelbrotov skup sasvim drugačije izgledao. U nastavku teksta navedeno je nekoliko alternativnih parametrizacija kvadratnih polinoma, i pokazano je kako u tim parametrizacijama izgleda Mandelbrotov skup.

Alfa parametrizacija je data sa gα(z)=z2+α1. Veza između „standardne“ parametrizacije i alfa parametrizacije je očigledna: tačka w pripada Mandelbrotovom skupu u „standardnoj“ parametrizaciji ako i samo ako tačka w1 pripada Mandelbrotovom skupu u alfa parametrizaciji. Geometrijski gledano, navedena veza između parametara predstavlja kompoziciju inverzije u odnosu na jediničnu kružnicu centriranu u nuli, i konjugacije (osne simetrije u odnosu na realnu pravu). Zbog ovakve veze, kardioioda sa granice Mandelbrotovog skupa u „standardnoj“ parametrizcaiji odgovara krivi oblika suze u alfa parametrizaciji.

Ako se pre inverzije izvrši translacija za 1/4, tada se kardioida slika u parabolu. Ovakvo preslikavanje odgovara beta parametrizaciji datoj sa gβ(z)=z2+1β+1/4.

Mu parametrizacija. Mu parametrizacija.
Figura 12. Dve figure koje ilustruju Mandelbrotove skupove alfa i beta parametrizacije.

Još jedna uobičajena parametrizacija je lambda parametrizacija data sa hλ(z)=λz(1z). Lako se dobija veza parametra c iz „standardne“ parametrizacije Mandelbortovog skupa i parametra λ data sa c=λ2λ24, pa je za ovakvu parametrizaciju Mandelbrotov skup ustvari skup svih kompleksnih parametara λ za koje orbita 𝒪hλ(1/2) ostaje ograničena.

Kako je parametrizacija kardioide na granici Mandelbrotovog skupa data sa eiθ/2e2iθ/4, a parametrizacija jedinične kružnice data sa eiθ, sledi da glavnoj kardioidi Mandelbrotovog skupa u „standardnoj“ parametrizaciji odgovaraju dve11 kružnice u lambda parametrizaciji. Navedene kružnice imaju poluprečnik 1 i centrirane su u tačkama λ=0, odnosno λ=2. Tačka λ=1 u kojoj se kružnice dodiruju odgovara „špicu“ kardioide.

Lambda parametrizacija.
Figura 13. Lambda parametrizacija Mandelbrotovog skupa.

Inverzijeom kompleksne ravni oko jedinične kružnice sa centrom u nuli, jedna od navedenih kružnica ostaje invarijantna, dok se druga slika u njenu unutrašnjost. Na ovaj način se dobija prva od naredne dve figure. Ako se pre inverzije izvrši translacija ulevo za 1, tada se navedene dve kružnice preslikavaju u dve paralelne prave. Na ovaj način se dobija druga od naredne dve figure.

Lambda parametrizacija. Lambda parametrizacija.
Figura 14. Mandelbrotovi skupovi koji odgovaraju parametrizacijama λ1z(1z), odnosno (λ+1)1z(1z).

Zapravo, lambda parametrizacija hλ(z)=λz(1z) je prva parametrizacija koju je Mandelbrot koristio kada je otkrio skup nazvan po njegovom imenu. Mandelbrot je kasnije o svom otkriću, između ostalog, napisao sledeće:

A first test used the quadratic map in the alternative form zλz(1z). After few iteration steps on a rough grid, we saw that the set includes the very crude outline of the two discs |λ|<1 and |λ2|<1. Two lines of algebra confirmed that these discs were to be expected here, and that the method was working. We also saw, on the real line to the right and left of the above discs, the crude outlines of round blobs which I call "atoms" today…

Nije slučajno što je Mandelbrot prvo posmatrao baš lambda parametrizaciju. Čitaoci koji su upoznati sa diferencijalnim jednačinama, vide da je lambda parametrizacija dobro poznata logistička jednačina12.

Multibrot skup

Mandelbrotov skup u sebi krije mnoge zanimljive tajne. I sam oblik Mandelbrotovog skupa je dovoljno zanimljiv i vizuelno privlačan, da bi nas naveo da krenemo da eksperimentišemo sa definicijom Mandelbrotovog skupa u nadi da ćemo pronaći nekakve slične objekte.

Po teoremi 6, Mandelbrotov skup se može definisati kao skup kompleksnih brojeva c za koje niz fc(0),fc2(0),,fck(0) ostaje ograničen, gde je fc polinom z2+c. Pošto smo dovoljno radoznali i želimo da eksperimetišemo, mi možemo promeniti gore navedenu definiciju Mandelbrotovog skupa tako što ćemo posmatrati iteracije polinoma fc,n(z)=zn+c. Time stižemo do definicije multibrot13 skupa. Preciznije, multibrot skup reda n, u oznaci n, definišemo kao Mn={cC|fc,nk(0)↛,  (k)}, gde je fc,n polinom zn+c.

Niz multibrot skupova.
Figura 15. Primeri multibrot skupova n za n{3,4,5,6}

Iscrtavanjem multibrot skupova, vidi se da oni dosta liče na Mandelbrotov skup: u centru skupa dominira velika površina - glavna hiperbolička komponenta (koja odgovara ispunjenoj kardioidi Mandelbrotovog skupa), za koju su zakačene manje hiperboličke komponente.

Glavnu hiperboličku komponentu čine svi parametari c za koje polinom fc,n ima privlačeću tačku perioda 1, odnosno privlačeću fiksnu tačku. Ponovo, na granici hiperboličke komponente, očekivano je da se nalaze parametri koji određuju polinome sa neutralnom fiksnom tačkom. Odavde se dobijaju dva uslova fc,n(z)=z|fc,n(z)|=1.

Koristeći drugi uslov dobijamo da je nzn1=eiθ za neko realno θ, iz čega sledi da je z=k1eiθn1. Zamenjući poslednju jednakost u prvi uslov, odnosno u jednačinu zn+c=z, dobijamo da je c(θ)=(eiθn)1n1(eiθn)nn1.

Pritom, da bi kriva bila zatvorena, njen izvod mora da namota barem jedan krug. Pri gornjoj parametrizaciji to će se desiti ako parametar θ prođe intervalom [0,2nπ]. Linearnom reparametrizacijom, dobijamo malo lepšu parametrizaciju krive c: c(θ)=eiθn1n1einθnnn1θ[0,2π].

Parametrizacija granice glavne hiperboličke komponente može se dalje iskoristiti za pronalaženje najvećeg kruga sa centrom u 0 koji se nalazi unutar hiperboličke komponente, odnosno za pronalaženje upisanog kruga multibrot skupa. Za to je dovoljno samo primetiti da izraz |c(θ)|2=1n2n11nn(n1)2(e(1k)iπ+e(k1)iπ)+1n2nn1 ima minimum 1/n2n12/nn(n1)2+1/n2nn1=(n1n1nnn1)2. Upravo je ovaj minimum kvadrat poluprečnika traženog kruga.

Na osnovu teoreme 7 sledi da je multibrot skup n ograničen kružnicom poluprečnika 21n1. Ovakav krug se naziva opisani krug multibrot skupa.

Multibrot skup.
Figura 16. Multibrot skup 7 sa naznačenom granicom glavne hiperboličke komponente (crveno), kao i opisanim (plavo) i upisanim krugom (žuto).

Puštanjem limesa kad n u izraz za parametrizaciju granice glavne hiperboličke komponente i izraz za poluprečnik kružnice koja ograničava multibrotov skup, dobija se da multibrotov skup „teži“ krugu poluprečnika 1.

Odavde se lako može izvesti i jedna gruba procena površine multibrotovog skupa, ako multibrotov skup uopšte ima površinu. Koristeći uobičajan postupak sa Stoksovom teoremom primenjenom na formu xdyydx, dobijamo da je površina glavne hiperboličke komponente H1 data sa A(H1)=Hdxdy=12Hxdyydx=1202π2(n+1)kn+1n1sin2(θ(n1)2)dθ=π(n+1)nn+1n1

Sa druge strane, multibrot n skup je ograničen kružnicom polprečnika 21n1 pa je njegova površina manja od π22n1. Iz svega ovoga sledi gruba procena: π(n+1)kn+1n1A(Mn)π22n1. Tačnost navedene procene se uvećava sa rastom broja n.

Posmatranjem slike skupa n, deluje kao da je taj skup uvek simetričan u odnosu na realnu osu. Ovo se veoma lako dokazuje korišćenjem indukcije: Ako za k-tu iteraciju polinoma f važi fc¯,nk(0)=fc,nk(0)¯, tada je fc¯k+1(0)=(fc¯k(0))n+c¯=(fck(0))n+c¯=fck+1(0)¯. Kako se baza indukcije trivijalno proverava, zaključujemo da za svako prirodno k važi fc¯,nk(0)=fc,nk(0)¯. Kompleksan broj teži beskonačnosti ako i samo ako njegov konjugat takođe teži beskonačnosti, pa po definiciji multibrot skupa zaključujemo da je taj skup simetričan u odnosu na realnu osu.

Analogno se dokazuje da skup n poseduje rotacionu simetriju reda n1.

Čitaoci bi trebalo da imaju na umu da su multibrot skupovi n za n3 u vezi sa Žulijevim skupovima odgovarajućeg stepena, kao što postoji veza Mandelbrotovog skupa =2 i polinoma drugog stepena. Jedina razlika je u tome što, za razliku od polinoma oblika z2+c, nisu svi polinomi stepena n3 afino konjigovani nekom polinomu oblika zn+c.

Potencijal Žulijevog i Mandelbrotovog skupa

Jedan od osnovnih rezultata kompleksne analize je Rimanova teorema o uniformizaciji koja glasi: Svaka prosto povezana Rimanova mnogostrukost je konformno ekvivalentna jednoj od sledeće tri mnogostrukosti

Iz ove teoreme sledi da za prosto povezan kompaktan skup K postoji jedinstven pozitivan broj r i jedinstveno preslikavanje ϕ:\K\𝔻r, takvo da je Φ izometrija sa osobinom da ϕ(z)/z1 kad z. Ovakvo r nazivamo kapacitet skupa K. Navedeni objekti su veoma korisni za proučavanje Žulijevih skupova, što pokazuje sledeća teorema:

Teorema 9. Neka je f: moničan polinom stepena d2, takav da je Žulijev skup 𝒦f povezan. Tada skup 𝒦f ima kapacitet 1 i konformna reparametrizacija ϕf:\Kf\𝔻 konjuguje funkciju f sa funkcijom zzd.

Sama funkcija ϕf iz prethodne teoreme se naziva Betherovim14 preslikavanjem. Linije |ϕf|=const. nazivamo ekvipotencijalne linije, dok linije arg(ϕ(z))=const. nazivamo spoljašnji zraci.

Žulijev skup sa Betherovim koordinatama.
Figura 17. Na slici je prikazano kako ekvipotencijalne linije i spoljašni zraci Žulijevog skupa (crno) polinoma drugog stepena dele Fatuov domen na krivolinijske pravugaonike.

Neka je f(z)=zn++a1z+a0 moničan polinom takav da je Kf povezan skup. Neka je za z\Kf definisan niz zk=fk(z). Iz jednakosti ϕf(zk+1)=(ϕf(zk))n sledi da je preslikavanje ϕf dato beskonačnim proizvodom ϕf(z)=zk=0(1+ad1z++a0zn)1/dk+1. Pritom se u prethodnom izrazu uzima grana funkcije (1+w)1/dk+1 koja 0 šalje u 1. Navedeni proizvod brzo konvergira što se može iskoristiti za crtanje Žulijevog skupa.

Funkcija Gf(z)=log|ϕf(z)| zadovoljava naredne osobine koje se lako proveravaju

  1. Skup vrednosti funkcije Gf je +,
  2. Gf je harmonijska funkcija,
  3. Gf(z)=log|z|+𝒪(1) kad z,
  4. Gf(z)0 kada d(z,Kf)0,
  5. Gf(f(z))=nGf(z), gde je n=degf,

zbog čega se funkcija Gf naziva potencijal15 Žulijevog skupa 𝒦f ili Grinova funkcija16 skupa 𝒦f.

Štaviše, funkcija Gf je u potpunosti određena osobinama (1), (3) i (5). Naime, iz ovih osobina direktno sledi da je Gf(z)=limk1nklog|fk(z)|.

Žulijev skup sa Grinovom funkcijom.
Figura 18. Grinova fukcija Žulijeovog skupa.

Preslikavanje ϕ iz teoreme se može iskoristiti za konstruisanje analognog preslikavanja za Mandelbrotov skup. Tačnije, važi sledeća teorema koju navodimo bez dokaza:

Teorema 10. Neka je Φ:\ definisano sa Φ(c)=ϕfc(c), gde je fc(z)=z2+c. Tada je Φ izomorfizam između \ i \𝔻.

Iz ove teoreme možemo zaključiti da je Mandelbrotov skup povezan skup. I dalje se ne zna da li je Mandelbrotov skup lokalno povezan17 skup?

Crtanje Žulijevog i Mandelbrotovog skupa

Kako su skupovi koji su do sada opisani sačinjeni od beskonačno tačaka, a čovek i računari mogu izvršiti samo konačno mnogo operacija, potrebno je izabrati konačno mnogo tačaka kompleksne ravni da bi se ti skupovi nacrtali. Osnovna ideja svih algoritama za crtanje Žulijevog i Mandelbrotovog skupa je ta da se odabirom što većeg broja tačaka greška prilikom crtanja navedenih skupova smanjuje.

Za crtanje Žulijevog i Mandelbrotovog skupa, na slici dimenzija wh, potrebno je prvo izabrati pravougaouu oblast u kompleksnoj ravni čije se stranice odnose u razmeri w:h, gde su w i h prirodni brojevi. Zatim je potrebno tu oblast izdeliti na wh manjih podudarnih kvadrata (piksela), i iz svakog kvadrata je potrebno izabrati po jednu tačku (na primer gornje levo teme kvadrata, ili sam centar kvadrata). Za fiksirane dimenzije velikog pravougaonika, uvećavanjem rezolucije slike, površina kvadrata će se smanjivati, a samim tim će se i „vernost“ slike uvećavati.

U nastavku ćemo piksele na slici obeležavati sa velikim štampanim slovima, dok ćemo odgovarajuće tačke u kompleksnoj ravni, obeležavati malim pisanim slovima (na primer, pikselu P odgovara tačka p, itd…).

Escape time metod

Najjednostavniji algoritam za crtanje Žulijevog skupa je poznat kao escape time algoritam. Ovaj algoritam se zasniva na teoremi 3, koja kaže da tačka z pripada Žulijevom skupu 𝒥f ako i samo ako njena orbita ostaje ograničena prilikom iteracija funkcije f. Po ovoj teoremi, za svaku polinomsku funkciju f može se izračunati broj R takav da z ako i samo ako postoji prirodno k takvo da je |fk(z)|>R. Ovakvo (i svako veće) R nazivamo poluprečnik izlaska, a kružnicu centriranu u 0 sa poluprečnikom R nazivamo kružnica izlaska.

Ideja escape time algoritma je sledeća: Neka je N fiksiran prirodan broj (na primer neka je N=200), koji označava maksimalan broj iteracija. Neka je Z proizvoljan piksel na slici, a z kompleksan broj određen pikselom Z. Ako je z>R onda sledi da tačka z ne pripada ispunjenom Žulijevom skupu. Ako je zR, tada proveravamo da li je f(z)>R. Ako važi f(z)>R tada ponovo sledi da z ne pripada ispunjenom Žulijevom skupu. U suprotnom, proveravamo da li je f2(z)>R… Ovaj proces ponavljamo sve dok ne stignemo do N-te iteracije tj. dok ne dostignemo maksimalan broj iteracija. Ako fN(z)<R tada smatramo da tačka z pripada Žulijevom skupu, i piksel Z bojimo određenom, unapred zadatom, bojom (na primer crnom). Piksele koji određuju tačke van ispunjenog Žulijevog skupa bojimo nekom drugom bojom (na primer belom). Opisani postupak ponavljamo za svaki piksel na slici.

Za svaki piksel Z u slici, izvrši {
    z = kompleksni broj određen pikselom Z;
    k = 0;
    	
    Za (k=0; k < N; k++) {
        z = f(z);
        Ako je moduo broja z veći od R izađi iz petlje;
    }

    Ako je k = N oboji piksel Z u crno, u suprotnom oboji ga u belo;
}
Pseudokod escape time algoritma. Promenljiva z je kompleksnog tipa. Funkcija f je kompleksni polinom za koji crtamo Žulijev skup. Poluprečnik izlaska R je određen na osnovu teoreme 3. Prirodan broj N je unapred dat.

Odmah se uviđa problem sa ovakvim algoritmom: Ako je fk(z)<R za 1kN, tada ne znači da će fk(z)<R, za svako k. Zbog ovoga, escape time algoritam obeležava neke piksele na slici kao da pripadaju ispunjenom Žulijevom skupu, iako oni zapravo ne pripadaju tom skupu. Povećavanjem maksimalnog broja iteracija, ova greška se smanjuje, ali se vreme izvršavanja algoritma uvećava.

Kako Žulijev skup sadrži neograničeno fine detalje, uvećavanje maksimalnog broja iteracija dovodi i do pojave šuma18, na samom Žulijevom skupu. Šum se može izbeći ako se slika iscrta u nekoliko puta većoj rezoluciji od željene, a zatim se umanji na željenu rezoluciju uz pomoć nekog naprednijeg algoritma za umanjenje slika.

U praksi je potrebno eksperimentalno doći do maksimalnog broja iteracija koji daje zadovoljavajuće rezultate.

Deo Žulijevog skupa. Deo Žulijevog skupa. Deo Žulijevog skupa.
Figura 19. Tri slike koje prikazuju isti detalj ispunjenog Žulijevog skupa. Prva slika je kreirana sa 20 iteracija, dok je druga slika kreirana sa 150 iteracija, što je dovelo bo bolje definisanog Žulijevog skupa ali i do pojave šuma. Treća slika je takođe kreirana sa 150 iteracija, ali sa osam puta većom rezolucijom.

Teoreme 6 i 7 daju osnovu escape time algoritma za Mandelbrotov skup. Ideja se sastoji u tome da se za svaki piksel C posmatra niz fc(0),fc2(0),fc3(0),,fcM(0), gde je c kompleksan broj određen pikselom C, a N maksimalan broj iteracija. Ako je navedeni niz ostao ograničen kružnicom poluprečnika 2, tada smatramo da tačka c pripada Mandelbrotovom skupu. U suprotnom smo sigurni da ona ne pripada Mandelbrotovom skupu.

Za svaki piksel C u slici, izvrši {
    c = kompleksni broj određen pikselom C;
    z = 0
    k = 0;
    	
    Za (k=0; k < N; k++) {
        z = f(z, c);
        Ako je moduo broja z veći od 2 izađi iz petlje;
    }

    Ako je k = N oboji piksel C u crno, u suprotnom oboji ga u belo;
}
Pseudokod escape time algoritma za Mandelbrotov skup. Promenljive c i z su kompleksnog tipa. Funkcija f je parametrizovani kompleksna funkcija (drugi argument je parametar).

I za ovaj algoritam važe isti komentari o maksimalnom broju iteracija kao i za prethodni algoritam.

Opisani algoritam za crtanje Mandelbrotovog skupa se direktno može preneti i na slučaj multibrot skupa. Dovoljno je samo umesto funkcije f(z,c)=z2+c, koristiti funkciju f(z,c)=zn+c.

Jasno je da su navedeni escape time algoritmi za iscrtavanje ispunjenog Žulijevog skupa odnosno Mandelbrotovog skupa skoro pa isti. Zbog toga ćemo se u nastavku ove sekcije posvetiti proučavanju algoritma za iscrtavanje Žulijevog skupa. Sve što se do kraja ove sekcije bude reklo o escape time algoritmu za iscrtavanje ispunjenog Žulijevog skupa može se direktno preneti na slučaj escape time algoritma za iscrtavanje Mandelbrotovog skupa…

U svim navedenim escape time algoritmima najviše vremena se utroši na tačke koje pripadaju ispunjenom Žulijevom odnosno Mandelbrotovom skupu (jer ove tačke prolaze kroz maksimalan broj iteracija). Postoje dva jednostavna načina da se navedeni algoritmi optimizuju.

Slike koje se dobijaju uz pomoć navedenog algoritma su jednobitne predstave ispunjenog Žulijevog skupa. Ovakve slike su odlične za primenu algoritma za detekciju ivica u naknadnoj obradi, čime se dobijaju slike Žulijevog skupa.

Najednostavnija modifikacija escape time algoritma, sastoji se u tome da tačke (tj. odgovarajuće piksele) Fatuovog domena bojimo na osnovu toga koliko im je iteracija bilo potrebno da izađu van kružnice izlaska. Jedina razlika novog algoritma u odnosu na prethodni je u poslednjoj liniji:

Ako je k = N oboji piksel Z u crno, u suprotnom oboji ga u L(k);

Za implementaciju ovakvog bojenja potrebno je definisati funkciju L koja u zavisnosti od prirodnog broja i vraća boju. Najjednostavniji izbor ovakve funkcije je linearna interpolacija dve boje: L(i)=iNB1+(1iN)B2

U gornjem izrazu N je maksimalan broj iteracija, a B1 i B2 su unapred definisane boje19.

Drugi najjednostavniji izbor funkcije L je L(k)=paleta_boja[k%B], gde je paleta_boja niz od B boja.

Rezultat ovakvog algoritma je slika poput naredne.

Žulijev skup.
Figura 20. Fatuov domen obojen navedenom modifikacijom escape time algoritma.

Kod ovakvog bojenja uočljive su jednobojne trake oko ispunjenog Žulijevog i Mandelbrotovog skupa. Ove trake se javljaju zbog toga što se za bojenje piksela koristi jedna celobrojna vrednost. Svim tačkama koje pripadaju jednoj traci bio je potreban isti broj iteracija da bi izašle van kružnice izlaska20.

Iako su slike dobijene na ovaj način veoma zanimljive, bilo bi poželjno neprekidno obojiti Fatuov domen. Za ovakvo bojenje biće potreban broj iteracija i kroz koji je tačka prošla, kao i jedan realan broj λ[0,1] koji će u nastavku biti određen.

Za određivanje vrednosti λ može se iskoristiti moduo poslednje iteracije kao dodatnu informaciju. Primetimo da što veći moduo ima tačka z to će se vrednost f(z)=anzn+an1zn1++a0 sve više ponašati kao anzn, jer zn raste brže od ostalih sabiraka u navedenom izrazu. Zbog toga se može smatrati da važi fk(z)ankzkn za tačke z sa dovoljno velikim moduom.

Fiksirajmo sada neko realno T dovoljno veliko da procena iz prethodnog pasusa važi. Možemo pretpostaviti da je ovo T veće od poluprečnika izlaska koje nam garantuje teorema 3. Sve tačke koje izađu van kružnice izlaska u nekoj iteraciji izaći će i van diska sa poluprečnikom T u nekoj od narednih iteracija. Ako tačka z ne pripada ispunjenom Žulijevom skupu tada postoji najveći prirodan broj i takav da važi |fi1(z)|<T. Kako je T veliko, po prethodnom pasusu zaključujemo da važi21 procena T|fi(z)|<Tn. Sada, vrednost λ možemo odrediti formulom λ=Tn|fi(z)|TnT

Funkcija μ=i+1λ se može iskoristiti za definisanje funkcije bojenja L. Sa ovakvom funkcijom se dobijaju slike poput naredne.

Žulijev skup.
Figura 21. Neprekidno bojenje Fatuovog domena.

Ipak navedena funkcija nije diferencijabilna u tačkama22 z za koje važi |fi(z)|=T. Da bi se glatko obojio Fatuov domen, dovoljno je koristiti parametar λ definisan sa λ=lognlog|fi(z)|, gde je n stepen polinoma f. Uz pomoć glatkog bojenja, dobija se slika poput naredne.

Žulijev skup.
Figura 22. Glatko bojenje Fatuovog domena.

Izgled slike u mnogome zavisi i od izbora palete koja se koristi za bojenje. Jasno je da je broj mogućih paleta skoro pa beskonačan.

Žulijev skup.
Figura 23. Žulijev skup kompleksnog polinoma četvrtog stepena.

Potpuna ista funkcija glatkog bojenja se može iskoristiti za bojenje komplementa Mandelbrotovog skupa, što je prikazano na narednoj slici.

Mandelbrotov skup.
Figura 24. Detalj Mandelbrotovog skupa.

Suština navedena tri algoritma za bojenje Fatuovog skupa, je u tome da se tačka Fatuovog skupa oboji na osnovu udaljenosti njene i-te iteracije od 0, gde je sa i, kao i do sada, označen najmanji broj iteracija potrebnih da bi tačka z izašla van kružnice izlaska. Ipak, za bojenje Fatuovog domena se može iskoristi i neku drugi podatak o i-toj iteraciji. Na primer, to može biti i argument i-te iteracije. U praksi, dovoljno je izmeniti osnovni algoritam za crtanje Žulijevog skupa, tako što će se za funkciju bojenja uzeti neka funkcija koja zavisi samo od argumenta „poslednje“ iteracije.

Žulijev skup.
Figura 25. Na slici je prikazan Žulijev skup polinoma f drugog stepena (crno). Crvenom bojom su obojene tačke z za koje je (fi(z)(z))0 dok su belom bojom obojene tačke z za koje je (fi(z)(z))<0.

Kao što se vidi na prethodnoj figuri, pri ovakvom bojenju su prisutni „prelomi“ boja na mestu ekvipotencijalnih linija. Ovi prelomi su prisutni na slici jer nisu sve tačke prošle kroz isti broj iteracija. Tačkama koje su bliže Žulijevom skupu, bio je potreban veliki broj iteracija da bi izašle van kružnice izlaska. Zbog toga su prilikom tih iteracija takve tačke puno puta „namotane“ oko 0, što je dovelo do toga da se bojenje ovih tačaka učestalo smenjuje. S druge strane, tačkama koje se nalaze dalje od Žulijevog skupa, potrebno je samo par iteracija da bi izašle van kružnice izlaska, zbog čega se bojenje tih tačaka smenjuje samo par puta.

Jednostavan način da se izbegne navedeni efekat, je da se iz algoritma obriše naredba koja prekida iteracije u slučaju da tačka izađe van kružnice izlaska. Na ovaj način će sve tačke sa slike proći kroz isti broj iteracija. Pseudokod sada izgleda ovako:

Za svaki piksel Z u slici, izvrši
{
    z = kompleksni broj određen pikselom Z;
    k = 0;
    	
    Za (k=0; k < N; k++) {
        z = f(z);
    }

    Ako je k = N oboji piksel Z u crno, u suprotnom oboji ga u L(Arg(z));
}
Funkcija L je neka funkcija koja dodeljuje boju na osnovu broja (ugla) iz intervala [0,2π].

Štaviše, na opisani način možemo obojiti i ispunjen Žulijev skup. Dovoljno je samo poslednju liniju u prethodnom pseudokodu zameniti linijom

Oboji piksel Z u L(Arg(z));

Uz ovakav algoritam se slabije uočava oblik (ispunjenog) Žulijevog skupa, ali se odlično uočava kako se itracije polinoma dejstvuju na kompleksnu ravan.

Žulijev skup.
Figura 26. Kompozicija dve slike. Prva slika se sastoji od plavih pruga koje označavaju sve tačke z kompleksne ravni takve da je (fc5(z))>0 (ovakva slika je dobijena opisanim algoritmom). Na drugoj slici je crnom bojom označen Žulijev skup funkcije fc.

Kako je i sama funkcija Arg:*𝕊1 neprekidna, lako se može implementirati i neprekidno bojenje na osnovu argumenta poslednje iteracije, što je prikazano na sledećoj slici.

Žulijev skup.
Figura 27. Tačke kompleksne ravni z obojene na osnovu vrednosti Arg(f4(z)) gde je f polinom trećeg stepena.

Koristeći i moduo i argument „poslednje“ iteracije, možemo izdeliti Fatuov skup na krivolinijske pravugaonike u kojima uvodimo lokalni koordinatni sistem. To činimo na sledeći način: neka je zproivoljna tačka Fatuovog skupa, i i broj iteracija potreban da bi tačka z izašla van kruga izlaska. Tada tački z dodeljujemo koordinate (logd(logR|fi(z)|),Arg(fi(z))2π).

Ove koordinate se dalje mogu iskoristiti za „popločavanje“ Fatuovog domena nekom željenom slikom.

Žulijev skup.
Figura 28. Fatuov skup polinoma drugog stepena ispunjen slikama.

Sličan efekat „popločavanja“ Fatuovog domena se može izvesti i uz pomoć Betherove funkcije.

Metod određivanja udaljenosti

Pretpostavimo da postoji glatko preslikavanje F:n takvo da je skup F1(0) jedna kriva. Često je korisno je pronaći udaljenost proizvoljne tačke prostora od ove krive. Ovaj zadatak je često i nemoguć zbog komplikovanih izraza koji se javljaju u računu, ali postoji jedna jednostavna aproksimacija rešenja. Neka je y tačka takva da je F(y)0, i neka je x tačka koja pripada krivoj F1(0). Tada po Tejlorovoj formuli važi 0=F(x)=F(y)+F(y)(xy)+(xy). Ako su tačke x i y dovoljno blizu, tada možemo zanemariti sabirak (xy) pa jednostavnim računom dobijamo da je xy=|F(y)|F(y).

Ako ovaj metod primenimo da Grinovu funkciju Žulijevog skupa 𝒦f (uz ogovarajuću identifikaciju sa 2), dobijamo formulu d𝒦f(z)=limk|fk(z)|log|fk(z)||(fk)(z)|.

U praksi, funkciju d𝒦f računamo kao d𝒦f(z)=|fN(z)|log|fN(z)||(fN)(z)|, gde je N veliki prirodan broj. Pritom, izvod (fN) lako možemo izračunati pravilom za izvod kompozicije funkcija. Tako dobijamo naredni algoritam:

Za svaki piksel Z u slici, izvrši {
    z = kompleksni broj određen pikselom Z;
    dz = 1; 
    k = 0;
    	
    Za (k=0; k < N; k++) {
        z = f(z);
        dz = dz * f'(z);
    }

    Ako je |z| veće od R {
    	d = |z| * log(|z|) / dz;
    	Oboji piksel Z u nijansu određenu brojem d;
    } u suprotnom {
        Oboji piksel Z u crno;
    }
}
Pseudokod metoda za određivanje udaljenosti.

Neznatnom modifikacijom navedenog algoritma dobija se algoritam koji crta Mandelbrotov skup metodom određivanja udaljenosti.

Mandelbrotov skup.
Figura 29. Nijansa sive (odnosno crne) boje ukazuje na udaljenost od Mandelbrotovog skupa. Crvene površine na slici, predstavljaju sam Mandelbrotov skup.

Na slikama iscrtanim sa ovom metodom bolje se uočavaju fini detalji Žulijevog i Mandelbrotovog skupa, nego što je to slučaj kod slika dobijenih sa escape time tehnikom.

Budabrot metod

Budabrot (eng. buddhabrot) je naziv tehnike crtanja orbita koje se javljaju u Mandelbrotovom skupu pri iteracijama polinoma. Tačnije, budabrot tehnikom se crtaju orbite tačaka koje se ne nalaze u Mandelbrotovom skupu. Uz pomoć ove tehnike se dobijaju slike poput naredne.

Mandelbrotov skup.
Figura 30. Budabrot slika rotirana za 90 stepeni u smeru kazaljke na satu.

Budabrot tehniku je prvi put upotrebila Melinda Grin 1993. godine [5]. Crtež koji se dobija uz pomoć budabrot tehnike, podesća na Budu23 koji sedi, po čemu je ova tehnika dobila ime.

Postupak za crtanje budabrot slike je sledeći: Prvo se kreira niz celobrojnih brojača odgovaraju pikselima na slici koja se crta. Zatim se nasumično odabira tačka c iz kompleksne ravni, za koju se, uz pomoć escape time algoritma, proverava da li pripada Mandelbrotovom skupu. Ako c pripada Mandelbrotovom skupu, tada se ponovo bira tačka c. Ako tačka c ne pripada Mandelbrotovom skupu, tada se na osnovu njene orbite uvećavaju odgovarajući brojači, tako što se za svako pojavljivanje tačke w iz orbite, uveća brojač odgovarajućeg piksela W. Kada se dovoljno nasumičnih tačaka odabere, opisani postupak se prekida, a zatim se kreira grayscale slika tako što se svaki piksel boji u nijansu sive koja se određuje na osnovu broja u njemu odgovarajućem brojaču.

Nijansa sive se najjednostavnije može odrediti prostom linearnom formulom i=n/M, gde je i intenzitet sive nekog piksela, n odgovarajući broj u brojaču, a M najveći od brojeva koji se nalaze u brojačima. Nešto složenija formula koja se često koristi je i=(nM)γ, gde je γ pozitivan realan broj. Menjanjem vrednosti γ mogu se izraziti neki detalji u budabrot slici koji nisu vidljivi prilikom korišćenja linearne funkcije.

Pseudokod budabrot algoritma izgleda jednostavno:

M = broj odabranih nasumičnih tačaka; 
N = maksimalan broj iteracija;
brojaci = niz od visina_slike x širina_slike brojača;

Ponavljaj M puta {
    c = nasumičan kompleksan broj;
    z = 0;

    Ako c ne pripada Mandelbrotovom skupu {
        Za (i=0; i < N; z++) {
            z = f(z, c);
            Ako je moduo broja z veći od 2 izađi iz petlje;
            Uvećaj brojač koji odgovara tački z za 1;
        }
    }
}

Za svaki piksel C u slici {
    C = T(brojaci[C]);
}
Pseudokod budabrot algoritma. Konstantan prirodan broj M određuje broj nasumičnih tačaka koje se uzimaju za crtanje budabrot slike. Funkcija T je funkcija bojenja (npr. linearna ili eksponencijalna funkcija koju smo naveli), a brojaci[C] je brojač određen pikselom C.

Kvalitet budabrot slike najviše zavisi od tri parametra: dimenzije slike, broja odabranih nasumičnih tačaka i maksimalnog broja iteracija. Kvalitet slike se poboljšava pri uvećavanju maksimalnog broja iteracija kod budabrot algoritma što je prikazano na narednoj figuri.

Mandelbrotov skup.
Figura 31. Dve budabrot slike kreirane sa različitim maksimalnim brojem iteracija. Gornja slika je kreirana sa malim brojem iteracija (20), dok je donja slika kreirana sa izuzetno velikim brojem iteracija (50.000).

Broj odabranih nasumičnih tačaka utiče potpuno drugačije na kvalitet slike generisane budabrot algoritmom. Ako algoritam koristi premalo nasumičnih tačaka, tada će postojati mnogo piksela na slici kroz koje nijedna orbita nije „prošla“. Između obojenih piksela će biti previše praznog prostora i budabrot slika će izgledati zrnasto. Ako se broj nasumično odabranih tačaka dovoljno uveća24 tada će kroz većinu piksela proći barem nekoliko orbita, pa će se i prazan prostor između piksela smanjiti (u najboljem slučaju će i u potpunosti nestati). Pritom će i kroz svaki piksel proći mnogo više orbita, pa će svaki od piksela moći i finije da se oboji. Iz navedenog se vidi da optimalan broj nasumično odabranih tačaka mnogo zavisi od dimenzija i rezolucije slike. Kreiranje slika sa većim zoom faktorom je praktično neizvodljivo sa osnovnim budabrot algoritmom, jer se zumiranjem drastično smanjuje verovatnoća da će neka od orbita proći kroz region koji se crta.

Postoji nekoliko jednostavnijih načina da se budabrot algoritam ubrza:

Iako se sa opisanim algoritmom dobijaju grayscale slike, postoji sasvim jednostavan način da se uz pomoć istog algoritma dobiju color slike. Ideja je da se isti region kompleksne ravni nacrta tri puta sa budabrot algoritmom, ali svaki put sa različitim maksimalnim brojem iteracija. Zatim se tri dobijene slike spoje u jednu tako što se svaka od slika interpretira kao jedan od color kanala (R, G ili B). Ovakav način kolorizacije slike se često koristi u astro fotografiji da bi se nevidljivi delovi elektromagnetnog spektra nekog nebeskog objekta pretvorili u vidljive delove spektra. I same budabrot slike kolorizovane na ovaj način podsećaju na nebule25, zbog čega je ova tehnika dobila naziv nebulabrot.

Mandelbrotov skup.
Figura 32. Nebulabrot slika multibrot skupa 4.

Ako se budabrot algoritam pomeni tako da se umesto orbite tačaka koje ne pripadaju Mandelbrotovom skupu, crtaju orbite tačaka koje pripadaju Mandelbrotovom skupu, dobija se takzvani antibudabrot algoritam, koji takođe može dati zanimljive rezultate.

Metod inverzne iteracije

Metod inverzne iteracije (Inverse iteration method, IMM) je metod crtanja Žulijevog skupa. Za razliku od prethodno opisanih metoda, pri ovoj metodi se posmatraju inverzne iteracije funkcije f za koju crtamo Žulijev skup.

Žulijev skup
Figura 33. Žulijev skup polinomske funkcije drugog stepena, iscrtan IMM algoritmom.

Za ovu metodu je od ključne važnosti naredna teorema:

Teorema 11. Neka je f proizvoljna polinomska funkcija, i neka je z0 periodična odbijajuća tačka funkcije f. Tada z0 pripada Žulijevom skupu funkcije f.

Dokaz. Pretpostavimo suprotno, da se periodična odbijajuća tačka z0 perioda n nalazi van skupa 𝒥f. Kako je tačka z0 periodična, ona ne može težiti beskonačnosti pri iteracijama funkcije f, pa sledi da se z0 mora nalaziti u interioru ispunjenog Žulijevog skupa 𝒦f. Neka je sada r poluprečnik, takav da se disk D radijusa r centriran u z0, sadrži ceo u skupu 𝒦f. Neka je λ multiplikator tačke z0. Kako je i fn polinom, po teoremi 3, postoji R>0 takav da za svako zD važi |fkn(z)|<R za svako prirodno k. Po Košijevoj nejednakosti, važi |(fnk)(z0)|<R/r. Ali, |(fnk)(z0)|=λk. Kontradikcija. □

Ako posmatramo (lokalnu) inverznu funkciju f1 tada odbijajuće fiksne tačke funkcije f postaju privlačeće fiksne tačke, jer je (f1)(z)=1/f(f1(z)).

Na osnovu teoreme 11 se lako konstruiše IIM algoritam: Neka je f kompleksan polinom stepena d. Odaberimo nasumično kompleksan broj z0. Sa {f1(z0)} označimo skup svih rešenja jednačine f(z)=z0. Kako je f polinom stepena d, skup f1(z0) nema više od d elemenata. Kako je Žulijev skup 𝒥f sadrži sve privlačeće tačke funkcije f1, sve tačke iz skupa {f1(z0)} su se „približile“ skupu 𝒥f. Sada opisani postupak možemo ponoviti za sve tačke iz skupa {f1(z0)}. Na taj način dobijamo ne više od d2 tačaka koje su još bliže skupu 𝒥f. Ovaj postupak ponavljamo N puta, čime dobijamo skup od najviše dN tačaka koje zatim crtamo.

n = maksimalan broj inverznih iteracija;
W = lista od d kompleksnih brojeva;
T = lista kompleksnih brojeva;

funkcija izračunaj_inverzne_iteracije(z, n) {
    ako je n = N {
        dodaj z u T;
        vrati se;
    }

    W = nađi_korene(z);
    za svako w u W {
        izračunaj_inverzne_iteracije(w, n+1);
    }
}
z0 = nasumično odabrana tačka;
izračunaj_inverzne_iteracije(z0, 0);

Za svako z iz T {
    Nacrtaj z na slici;
}
Pseudokod IIM algoritma.

Jasno je da je za implementaciju IIM algoritma potrebna funkcija koja vraća nule kompleksnog polinoma. U slučaju kada je taj polinom drugog stepena (eventualno trećeg ili četvrtog), tada je moguće lako isprogramirati takvu funkciju. Međutim za rešavanje proizvoljnog polinoma stepena većeg od pet, neizbežne su metode numeričke matematike koje mogu biti veoma složene za programiranje. Zbog toga je u takvim situacijama poželjno koristiti biblioteke koje poseduju neophonde numeričke algoritme.

Žulijev skup.
Figura 34. Žulijev skup polinomske funkcije petog stepena iscrtan IMM algoritmom.

U praksi se ispostavlja da je metoda inverzne iteracije uglavnom veoma brz način za dobijanje kvalitetnih slika Žulijevih skupova. Ipak, postoje polinomske funkcije za koje se malo teže dobijaju kvalitetne slike sa metodom inverzne iteracije. To su funkcije koje poseduju odbijajuće fiksne tačke čiji multiplikator je po modulu veoma blizak jedinici. Takve fiksne tačke sporije privlače ostale tačke pri inverznim iteracijama (videti dokaz teoreme 1), što dovodi do toga da na slici oko njih ostane prazan prostor. Taj problem se može prevazići na nekoliko načina:

Za detaljniju analizu oba pristupa, pogledati rad [9].

Epilog

Ovde se ovaj tekst o osnovnim informacijama o Žulijevom i Mandelbrotovom skupu završava. Mnogo drugih, zanimljivih, tema vezanih za kompleksnu dinamiku, ostavljeno je za neke naredne tekstove koji će se pojaviti na ovim sajtu. Te teme nisu ušle u ovaj uvodni tekst o kompleksnoj dinamici zbog njihove kompleksnosti. Zainteresovani čitalac lako može sam započeti dublje istraživanje po mnogobrojnoj literaturi. Kao početna tačka u tom istraživanju može mu pomoći spisak korišćene literature koji je naveden u nastavku.

Sve slike koje se pojavljuju u ovom tekstu iscrtane su uz pomoć malog C programa kog sam napisao. Slike su dodatno umanjene i kompresovane uz pomoć Adobe Photoshop programa i odlične opcije Save to Web.


  1. Gaston Maurice Julia (1893–1978), francuski matematičar. 
  2. Benoit B. Mandelbrot (1924–2010), američki matematičar, poljskog porekla. 
  3. Pierre Joseph Louis Fatou (1878–1929), francuski matematičar i astronom. 
  4. Funkcija Z(z)=12(z+1z) se naziva funkcija Žukovskog. Ova funkcija poseduje mnoga zanimljiva geometrijska svojstva. 
  5. Felix Hausdorff (1868–1942), nemački matematičar. 
  6. Topološki prostor je Hausdorfov (T2), ako za svake dve različite tačke x i y tog prostora postoje dva otvorena disjunktna skupa X i Y, takva da xX i yY
  7. Georg Ferdinand Ludwig Philipp Cantor (1845–1918), nemački matematičar. 
  8. Kantorova lema glasi: U Hausdorfovom prostoru svaki opadajući niz nepraznih kompaktnih skupova ima neprazan presek. 
  9. Kantorov skup se definiše kao 𝒞=[0,1]n=1k=03n1(3k+13n+1,3k+23n+1)
  10. Jednačine koje se tom prilikom dobijaju nije uvek moguće direktno rešiti, već je potrebno koristiti metode numeričke matematike. 
  11. Kružnice su dve, jer svakoj vrednosti parametra c u opštem slučaju odgvaraju dve vrednosti parametra λ
  12. Logistička jednačina je (realna) obična diferencijalna jednačina prvog reda x=(1x)x. Ova jednačina (između ostalog) opisuje populaciju neke jedninke koja ima ograničene izvore hrane u svom staništu 
  13. Reč multibrot je kovanica nastala od reči multiple i Mandelbrot
  14. Lucjan Emil Böttcher (1872–1937), poljski matematičar. 
  15. Kada bi Žulijev skup bio uniformno naelektrisan, a Fatuov domen vakuum, tada bi elektrostatički potencijal bio dat funkcijom G
  16. George Green (1793–1841), engleski matematičar. 
  17. Skup je lokalno povezan ako svaka njegova njegova tačka ima povezanu okolinu. Postoje skupovi koji su povezani ali nisu lokalno povezani (takav skup je na primer topolška sinusoida). 
  18. Uvećavanjem broja iteracija, mi dobijamo sve precizniju procenu Žulijevog skupa., a samim tim počinjemo da „vidimo“ sve finije i finije detalje. Ako su detalji sitniji od površine koju pokriva jedan piksel, tada taj piksel ne može verno predstaviti površinu ravni koju pokriva (jer mi bojimo piksel samo na osnovu informacije o jednoj tački koja se nalazi u pomenutoj površini). 
  19. Boja se može posmatrati kao trodimenzionalni realni vektor koji pripada skupu [0,1]3 
  20. Prema tome, zajedničke granice među ovim trakama su krive C,f1[C],f2[C],, gde je C kružnica čiji je poluprečnik baš poluprečnik izlaska R koji smo koristili za crtanje. 
  21. Kako je navedena nejednakost samo procena, postojaće neke tačke za koje ona ne važi. Ponekad se na slici mogu uočiti ovakve tačke kao površine u kojima bojenje nije neprekidno. Tada je dovoljno uvećati parametar T tako da se broj takvih tačaka dovoljno smanji da se ne primete na slici. 
  22. Ovo su upravo granice traka koje se uočavaju u osnovnom bojenju 
  23. Sidarta Gautama (5. vek p.n.e) - osnivač budističke religije. 
  24. U naprednijim algoritmima za crtanje budabrot slika, tačke se ne biraju potpuno nasumično već se tačkama u blizini granice Mandelbrotovog daje prednost pri izboru. Tačkama u blizini granice Mandelbrotovog skupa biće potrebno veoma mnogo iteracija da bi izašle van kružnice izlaska, zbog čega njihove iteracije uvećavaju mnogo brojača. Ovo ima isti efekat kao uvećavanje broja nasumično odabranih tačaka. 
  25. Maglina (lat. nebula - oblak) je međuzvezdani oblak sačinjen od prašine i gasova. 

Literatura

  1. Daniel S. Alexander, A History of Complex Dynamics
  2. Bodil Branner, The Mandelbrot Set
  3. Adrien Douady, John H. Hubbard, Étude dynamique des polynômes complexes
  4. Evgeny Demidov, The Mandelbrot and Julia sets Anatomy
  5. Kenneth Falconer, Fractal geometry: mathematical foundations and applications
  6. Melinda Green, The Buddhabrot Technique
  7. John Horgan, Who Discovered the Mandelbrot Set?
  8. Linda Keen, Julia Sets
  9. Benoit Mandelbrot, The Fractal Geometry of Nature
  10. Mark McClure, Basic real and complex dynamics: A computational approach
  11. Mark McClure, Inverse iteration algorithms for Julia sets
  12. John Milnor, Dynamics in one complex variable
  13. Íñigo Quílez, Area of the main bulb of the Mandelbrot set
  14. Íñigo Quílez, The symmetry of the Mandelbrot set
  15. Linas Vepstas, Renormalizing the Mandelbrot Escape