Kanske en av de kändaste fraktalerna och den mest ikoniska bilden inom matematiken är Mandelbrotmängden. Det finns så mycket att säga om den här fraktalen, men för att inte göra denna artikel superlång kommer jag att hoppa över allt annat som inte kopplar direkt till Mandelbrotmängden. Det första som man behöver veta om fraktalen är den algoritm eller regel som används.
Ovan står algoritmen som ligger bakom all den komplexitet som finns i Mandelbrotmängden. Vem hade kunnat tro att en så enkel formel kan bära så mycket information? Den simpla naturen hos algoritmens utseende är dock bara ytlig, eftersom man behöver förstå hur denna regel faktiskt ska implementeras. Välj fritt vilket nummer som helst; för enkelhetens skull väljer jag talet 1. Det tal du har valt kommer nu att vara talet i c våra beräkningar. Vi börjar med att sätta z0= 0, så z1= c eller i mitt fall 1. Nu vill jag att du kvadrerar det talet och adderar det med c (samma tal som du kvadrerade); i mitt fall får jag 12 + 1, vilket blir 2. Nu vill jag att du tar det resultat som du har fått och utför samma beräkning som innan; i mitt fall får jag nu 22 + 1, vilket blir 5. Om du fortsätter att utföra samma process ett antal gånger märker du snart att antingen växer ditt tal snabbt mot oändligheten, eller så pendlar det mellan olika nummer. För det tal som jag har valt ser sekvensen efter 5 ut att vara 26, 677, 458330 osv. mot oändligheten. För att konstruera Mandelbrotmängden måste vi exkludera alla tal som går mot oändligheten och inkludera alla tal som går emot ett ändligt slutvärde. Testa dig fram och försök hitta några sekvenser som uppfyller regeln själv innan du fortsätter läsa!
Det finns faktiskt en till sak som krävs för att nå den maximala potentialen hos den ovanstående formeln. Det räcker inte med att bara använda positiva och negativa nummer, det vill säga tal som går till höger och vänster (endimensionella tal som det också kallas). Vi behöver faktiskt en ny riktning, alltså tal som går upp och ner (tvådimensionella tal). För det har matematikern kommit på ett väldigt användbart tal, men som har det sämsta namnet någonsin, nämligen det imaginära talet i. Förutom det knepiga namnet behöver du bara komma ihåg att talet i har egenskapen i2 = -1. Så nu kan vi utföra algoritmen på sådana tal, men även mer generellt på kombinationer av dessa tal och de gamla talen som vi känner till! Ta till exempel talet 1 + i . Om vi kvadrerar talet och adderar det med samma tal får vi (1+i)2 + (1+i), vilket, om du använder kvadreringsregeln från gymnasiet, blir 1 + 2i + i2 + 1 + i och förenklas till 1 + 3i . Är du bekväm med koordinatsystem så har dessa tal samma plats som y-axeln (uppåt och nedåt), medan våra vanliga tal ligger på x-axeln (vänster och höger). Nu har vi konstruerat ett så kallat plan, och från detta plan kan vi skapa en bild där vi väljer att fylla alla punkter som inte växer mot oändligheten med färgen svart.
Det här är Mandelbrotmängden, ett sätt att visualisera alla möjliga tal som uppfyller den regel vi etablerade för några rader sedan. Ta en sekund för att absorbera hur en så enkel regel kan generera dessa mystiska strukturer. Det är som att det finns två stora öar som kopplas till mindre öar med en oändligt tunn brygga, som även kopplar till ännu mindre öar. Man kanske undrar över beräkningskraften som krävs för att generera ovanstående bild. Med papper och penna skulle en sådan bild med denna skärpa ta flera hundra år att kontrollera att varje unik punkt i planet inte växer till oändligheten. Med hjälp av datorer kan sådana enkla beräkningar utföras mycket snabbt och transformera vad som skulle ha tagit år till bara några minuter. Det kan till exempel räcka med att kontrollera om talen i en specifik sekvens överstiger 2. Anledningen till detta är att man har funnit att punkten med störst avstånd från origo i Mandelbrotmängden är -2. Om vi utför algoritmen på det talet får vi sekvensen -2, 2, 2, 2, 2, 2 osv. (testa!). Såklart räcker det även att upprepa processen ett ändligt antal gånger för att göra sin kontroll. För den ovanstående bilden tog det drygt 200 iterationer att kontrollera att varenda punkt inte överstiger 2.
Att stanna här hade varit ett brott mot mänskligheten. Ovanstående bild är bara en liten del av den komplexitet som kommer med Mandelbrotmängden. För att få tillgång till den riktiga mäktigheten hos denna fraktal måste vi göra en liten ändring i regeln vi har använt. Istället för att utesluta alla punkter som överstiger 2 kan vi registrera antalet iterationer det tar för varje punkt på skärmen att överstiga 2, där antalet iterationer motsvarar en specifik färg. Med andra ord, om det tar 50 iterationer för en punkt att överstiga 2, så motsvarar det en viss färg på skärmen, medan 51 iterationer motsvarar en annan färg.
Det är nu allting faller på plats. Vad som först såg ut som några konstiga blobbar gömmer faktiskt en helt annan värld av komplexitet bakom sig. Från Mandelbrotöarna till mindre öar, till sjöhästar och till sist en exakt kopia av Mandelbrotmängden. Detta är återigen självlikformighet och skalinvarians i praktiken. För att generera den sista bilden av Mandelbrotmängden med den största förstorningsnivån krävs det drygt 1000 iterationer per punkt, vilket naturligtvis tar lite längre tid.
Som sagt finns det mycket att säga om Mandelbrotmängden. Nu när fraktalen inte är exakt självlikformig överallt, hur kan man beräkna dimensionen? Kan man med samma formel generera andra typer av fraktaler, så kallade Juliamängder? Finns det en koppling till andra områden inom matematiken? Är Mandelbrotmängden sammanhängande överallt? Så många frågor, men inte tillräckligt med ord för att besvara dem alla.
Medverkande
Hasan Al-Husieni
Senast uppdaterad
2024/08/25