Sistema di funzioni iterate

Un sistema di funzioni iterate (spesso abbreviato in IFS dall'inglese Iterated Function System) è un insieme di trasformazioni affini contrattive (che agiscono cioè sulla scala degli oggetti trattati.[1][2] Pur avendo a che fare più con la teoria degli insiemi che con la geometria frattale[3] vengono più spesso impiegati e citati in quest'ultimo campo.

Esempio di costruzione iterata di un frattale

Definizione formale

modifica

Formalmente, un sistema di funzioni iterate è un insieme finito di applicazione di contrazione   su uno spazio metrico completo. [4]

In formula:

 

è un sistema di funzioni iterato se ogni   è una contrazione sullo spazio metrico completo  .

Normalmente, vengono utilizzati due tipi di algoritmi, la versione deterministica o quella casuale.[2]

L'algoritmo deterministico consiste nel prendere un insieme di punti, che può essere una qualsiasi figura geometrica, e applicarvi ciascuna delle   trasformazioni affini del sistema, per cui otteniamo   serie di punti trasformati. A ognuno di essi riapplichiamo ognuna delle n funzioni, ottenendo   nuove serie di punti. Continuiamo in questo modo iterando sui risultati, fino a quando l'unione di tutti gli insiemi ottenuti nell'ultima iterazione si avvicina sufficientemente alla figura che costituisce l'attrattore del sistema. Arriveremo sempre a questo attrattore, indipendentemente dal set di punti selezionato iniziale. Ogni IFS ha un attrattore caratteristico, che sarà un frattale autosimile, poiché è costruito su copie di se stesso, sempre più piccole. Normalmente, non ci vogliono molte iterazioni per ottenere questo insieme frattale.[2]

L'algoritmo casuale è simile, ma invece di applicare le funzioni a un insieme di punti, li applichiamo a un singolo punto ancora e ancora, disegnando il risultato ogni volta. Assegniamo un valore di probabilità a ciascuna delle trasformazioni di sistema, tenendo conto che la somma totale dei valori di probabilità delle funzioni deve essere 1. In ogni iterazione dell'algoritmo, selezioniamo una delle trasformazioni con probabilità  . Per far questo è sufficiente ottenere un valore casuale compreso tra 0 e 1 e aggiungere le probabilità di ciascuna funzione una alla volta fino a ottenere un risultato maggiore del numero casuale ottenuto. Questa sarà la funzione selezionata.

I primi punti della serie vengono scartati. Poiché di solito sono molto lontani dall'attrattore, il resto viene tracciato fino a ottenere il disegno frattale corrispondente, il che avviene solitamente dopo un numero di iterazioni compreso tra 1000 e 5000.[2]

  1. ^ Architetture della complessità: la geometria frattale tra arte, architettura e territorio - Nicoletta Sala, Gabriele Cappellato, FrancoAngeli edit., 2004
  2. ^ a b c d (EN) Drawing fractals with Iterated Function Systems (IFS), su software-tecnico-libre.es. URL consultato il 22 settembre 2018.
  3. ^ George Winston Zobrist e Chaman Sabharwal, Progress in Computer Graphics: Volume 1, Intellect Books, 1992, p. 135, ISBN 978-0-89391-651-0. URL consultato il 7 maggio 2017.
  4. ^ Michael Barnsley (1988). Frattali ovunque , p.82. Academic Press, Inc. ISBN  9780120790623.

Altri progetti

modifica
Controllo di autoritàGND (DE4343626-2