Frattali

Ricorsione e frattali

06/06/2011
By Ephel
spacer

Turandot non è certo la regina di questa storiella, ma quest'immagine è troppo bella per essere esclusa dal post.

Oggi voglio parlare di un argomento molto legato ai frattali: la ricorsione.
Una regola ricorsiva è necessaria alla creazione di un frattale, ma non basta che qualcosa sia ricorsivo perché sia anche frattale.

Perché la ricorsione non è sufficiente?

Un esempio è la famosa storiella:

C’era una volta un re, seduto su un sofà, che disse alla regina “Raccontami una storia!”. E la regina incominciò:

“C’era una volta un re, seduto su un sofà, che disse alla regina “Raccontami una storia!”. E la regina incominciò:

“C’era una volta un re, seduto su un sofà, che disse alla regina “Raccontami una storia!”. E la regina incominciò:

“C’era una volta un re, seduto su un sofà, che disse alla regina “Raccontami una storia!”. E la regina incominciò:

“C’era una volta un re, seduto su un sofà, che disse alla regina “Raccontami una storia!”. E la regina incominciò:

…”

E’ difficile immaginarsi qualcosa di più ricorsivo, ma è comunque decisamente impossibile considerare questa storiella “frattale”.

Ciò che manca è il trovare, rimpicciolito, il tutto nella parte.

Consideriamo il mio precedente post su alberi e frattali. Lì viene dato il seguente schema per creare un semplice albero frattale.

  1. Disegna un ramo in verticale (il tronco)
  2. In cima ad ogni ramo (da cui non partano già altri rami) disegna due rami lunghi e spessi la la metà del ramo originario, separati fra loro da un angolo di 40°
  3. Ritorna alla istruzione 2. e continua da lì

Mentre nella nostra storia lo schema è:

  1. C’era una volta un re, seduto su un sofà, che disse alla regina “Raccontami una storia!”. E la regina incominciò:
  2. Apri virgolette e inserisci il punto 1.

Vediamo che la differenza fra questi due set di istruzioni è proprio la mancanza del rimpicciolimento.

Perché la ricorsione è necessaria?

spacer La ricorsione è necessaria perché vogliamo arrivare a raggiungere, almeno in una direzione, l’infinito: infatti, se ogni parte può essere ingrandita per diventare uguale al tutto (e contenere quindi se stessa), allora non solo la ricorsione è la soluzione ovvia: (un albero dentro un albero dentro un albero…), ma è anche l’unica possibile.

Raggiungere l’infinito non è semplice. L’unico modo per farlo (e ovviamente solo in teoria, non nella pratica) è avere una o più istruzioni e ripeterle, a loro volta, all’infinito.
[Ora che ho scritto questo passerà di qui un matematico e mi correggerà... la matematica pura ha davvero degli strumenti strani]
La magia dei frattali sta proprio in cosa può nascere da regole semplici, se queste vengono applicate più e più volte allo stesso oggetto. E la magia dei frattali non sta solo nel loro bellissimo aspetto, ma in come possono aiutarci a descrivere fenomeni complessi e caotici.

Il modo in cui i frattali compaiono nello studio dei sistemi dinamici e nella teoria del caos sarà materia di altri post in futuro. Datemi solo il tempo di riordinare gli appunti dell’anno scorso!

spacer spacer spacer spacer spacer spacer spacer spacer Share/Bookmark
Nessun Commento... Puoi essere il primo a commentare!

Vecchi ricordi frattali

31/05/2011
By Lorenzo

Forme affascinanti e colori vagamente psichedelici, così fu il mio primo incontro con i frattali.

Era il lontano (sigh) 1996 e con la scusa di un esame di fondamenti di informatica avevo appena acquistato il mio primo pc, un bellissimo 486 DX2 (ah, i suoi splendidi 66 MHz!).

Assieme a Borland Turbo Pascal, uno dei primi programmi che installai fu un piccolo shareware (o freeware? uhm… non ricordo proprio) capace di generare bellisse immagini frattali. Per anni immagini come questa:

spacer
Mi fecero da wallpaper, appunto forme affascinanti e colori vagamente psichedelici.

Ho cercato invano, nella miniera di oggetti che è diventata la “sala computer” di casa mia, il prezioso floppino, certo tra l’altro che i problemi di compatibilità avrebbero reso decisamente difficile l’esecuzione del piccolo programma.
Fortunatamente ho scoperto in rete un altro programma, ben più recente, da cui tra l’altro è tratta l’immagine qui sopra: uno splendido freeware che per “spirito” e semplicità oltre che per risultati meramente visivi da l’idea del mio primo incontro con i frattali.

Apophysis – Freeware fractal flame editor for Windows
Apophysis è rilasciato sotto licenza GPL e il suo codice sorgente è disponibile su sourceforge.

Molto recentemente è stato inaugurato un forum (in inglese) a sostituzione di una precedente mailing list, e sembrerebbe abbastanza attivo… Non ci sono tantissimi messaggi, è vero, ma è stato aperto soltanto a metà marzo di quest’anno.
Sembra che tramite tale forum venga dato un ottimo supporto al programma: ogni domanda trova risposta in poche ore.

Il programma è bello “denso” di opzioni e parametri, perfetto per chi desidera “smanettare” alla ricerca di una resa visiva piacevole, e vagamente psichedelica direi. Mi riprometto, in un momento meno denso di impegni, di studiarmi un po’ questa bella applicazione (ah come va di moda il termine “applicazione”) e pubblicare qualche immagine e qualche consiglio sul programma stesso.
Se volete provare anche voi, sembra che ci siano diversi tutorial a cui potete fare riferimento, prima di controllare il forum.
Per certo penso proprio che presto avrò un nuovo wallpaper… e poi qualcuno dice che la matematica è fredda vero?

spacer spacer spacer spacer spacer spacer spacer spacer Share/Bookmark
1 Commento

Alberi e frattali

12/05/2011
By Ephel

E’ difficile evitare di parlare di frattali senza tirare in ballo alberi, fiocchi di neve e conchiglie, quindi per iniziare partiremo da uno di questi tre temi: gli alberi (come avrete già capito dal titolo).
Un frattale è essenzialmente un’oggetto fatto in modo tale che, se ne ingrandisci una parte, ottieni una copia esatta del “tutto” da cui quella parte è stata presa. Ovviamente, questo avviene solo in matematica: ci sono dei precisi limiti, sia fisici che biologici, per i quali in realtà questa parte ingrandita sarà solo una riproduzione semplificata dell’oggetto da cui è stata presa.

spacer

Un ramo?

spacer

Un albero?

Negli alberi questo si può vedere nel fatto che molto spesso un ramo ha una forma identica a quella di un alberello della stessa specie. Considerate le due immagini in nero ai lati: sono la stessa, riuscireste a dire se ritrae un albero oppure un ramo?

Ovviamente in natura la crescita dei rami di un albero non riproduce con esattezza la forma dello stesso albero che li genera: condizioni climatiche e di luce (come anche tagli o parassiti) fanno sì che ogni ramo cresca diverso dagli altri. Ciò che però non cambia sono le leggi secondo cui crescono.

Si possono anche creare figure frattali estremamente simili ad alberi, per quanto stilizzati.

A questo proposito ho trovato uno splendido testo del professore Stefano Berardi dell’Università di Torino sugli alberi ricorsivi.
Per chi non volesse leggerlo per intero, riporto una delle regole più note e chiare riguardo alla creazione di “alberi” con metodi ricorsivi e alcune immagini… Vi consiglio comunque di andare al sito del corso anche solo per guardare le immagini che si riescono a ottenere con metodi ricorsivi.

 

spacer

Prendiamo una linea retta, il nostro tronco, e facciamola separare in due linee rette, i rami principali. Ripetiamo questo procedimento  rendendo sempre più corte e sottili le linee (mantenendo insomma le proporzioni dei due rami principali rispetto al tronco) e abbiamo già un semplice albero…

Continuiamo il procedimento finché la precisione dell’immagine ce lo consente. Ci sono molti programmi che ci permettono di fare questo con poche istruzioni ricorsive, vale a dire qualcosa di simile a:

  1. Disegna un ramo in verticale (il tronco)
  2. In cima ad ogni ramo (da cui non partano già altri rami) disegna due rami lunghi e spessi la la metà del ramo originario, separati fra loro da un angolo di 40°
  3. Ritorna alla seconda istruzione e continua da lì

spacer

Il terzo punto è ciò che rende queste istruzioni ricorsive: fa sì che le ultime due istruzioni vengano ripetute all’infinito… Va notato che se il computer ripetesse veramente queste istruzioni all’infinito allora si pianterebbe o rallenterebbe molto tutte le altre prestazioni. In realtà molti programmi pensati apposta per la creazione di frattali fermano la ricorsione quando ormai si stanno iniziando a costruire oggetti troppo piccoli per potere essere visualizzati con successo sul computer, ma in altri casi è meglio dire esplicitamente al computer di fermarsi dopo un certo numero di iterazioni.

Un programma simile può anche fare sfumare poco a poco i colori dell’albero, passando dal marrone del tronco al verde delle foglie. Le immagini che vedete qui accanto in bianco e nero sono disponibili a colori nel sito di cui vi sto parlando. Ecco qui lo stesso albero a colori:

spacer

spacer spacer spacer spacer spacer spacer spacer spacer Share/Bookmark
Nessun Commento... Puoi essere il primo a commentare!

Cerca nel sito:

Ricevi aggiornamenti via e-mail!

For the Win

spacer

Traduzioni

gipoco.com is neither affiliated with the authors of this page nor responsible for its contents. This is a safe-cache copy of the original web site.