Oscillatore (automa cellulare)

Negli automi cellulari, un oscillatore è uno schema che ritorna, dopo un numero finito di generazioni, allo stesso stato iniziale, ossia con la stessa disposizione e orientazione.[1][2] Un'altra definizione di oscillatore è una configurazione che è predecessore di se stessa (una configurazione è predecessore di un'altra se dalla prima deriva, dopo un determinato numero di generazioni, la seconda). La sequenza di un oscillatore è, pertanto, indefinitamente lunga, in quanto, in mancanza di perturbazioni esterne, essa tende a ripetersi all'infinito.

Ogni oscillatore è caratterizzato da un parametro periodo, che corrisponde al numero di generazioni dopo le quali l'oscillatore si ripresenta con la medesima configurazione. Una configurazione di periodo 1, ovvero "stabile" (perché non muta nel tempo), è chiamata still life; questo tipo di schema non è considerato un oscillatore. Si può quindi dichiarare che il periodo di un oscillatore è un numero intero n, con .

Gioco della vita di Conway

modifica

Gli oscillatori sono oggetti molto comuni nel Gioco della vita, famoso automa cellulare ideato dal matematico inglese John Conway sul finire degli anni sessanta. In esso, sono conosciuti oscillatori di ogni periodo eccetto 19, 23, 38 e 41[3]. Oscillatori di nuovo periodo possono essere creati con l'unione di due o più oscillatori di periodo più basso; questi sono però considerati oscillatori "banali": un oscillatore è considerato invece "non banale" se contiene almeno un gruppo di cellule che oscilla al periodo considerato. Oltre ai quattro periodi citati sopra, non si conoscono oscillatori non banali di periodo 34.

Struttura degli oscillatori

modifica
 
Il vulcano, un oscillatore di periodo 5.

Gli oscillatori sono composti essenzialmente da due parti: un rotore e uno statore[4]; il rotore è la parte di oscillatore composta dalle celle che mutano il proprio stato nel tempo, ossia la parte "oscillante". Lo statore, ossia la parte di oscillatore che rimane immutata, è a sua volta diviso in due parti: il bushing, ossia il "supporto", e il casing, ossia il "rivestimento".

Il bushing è la parte di oscillatore che, pur essendo stabile, è strettamente connessa al rotore, e ne determina il funzionamento; si considera parte del bushing ogni cella viva che si trovi nell'intorno di Moore di una cella del rotore (ossia che abbia in comune con essa un vertice o un angolo).

Il casing è il supporto del bushing, vale a dire ogni cella viva che, pur non trovandosi strettamente vicina al rotore, è indispensabile per evitare il collasso del supporto primario, il bushing.

Funzione di filtro e di repulsore

modifica
 
Fontana (p4) che filtra un flusso di MWSS, dimezzandone il periodo.

Un altro uso degli oscillatori è quello di respingere o deviare alcune navicelle; il cosiddetto "pentadecathlon", ad esempio, viene adoperato per deviare un glider di 90°. Gli oscillatori vengono spesso adoperati come filtro, ossia come strumenti che selezionino e distruggano alcune navicelle di un flusso continuo, ma non tutte; ad esempio, un filtro potrebbe distruggere una navicella su due, e dimezzare così la frequenza (o periodo) del flusso. Per svolgere questa funzione filtrante, si adoperano oscillatori che emettano scintille (sparks), ossia gruppi di una o più celle destinate altrimenti a sparire in breve tempo. Un esempio di oscillatore filtrante è il "vulcano" di cui sopra.

Esempi di oscillatori

modifica
  1. ^ Confronta il glossario del Game of Life.
  2. ^ Oscillator, definizione dalla Eric Weisstein's Life encyclopedia.
  3. ^ Game of Life Status page di Jason Summers.
  4. ^ Rotore e Statore nella Eric Weisstein's Life encyclopedia.
  5. ^ Most seen natural occuring ash objects in Game of Life
  6. ^ LifeWiki su blinker
  7. ^ Esempio di revfuse Archiviato il 10 giugno 2006 in Internet Archive.

Voci correlate

modifica

Collegamenti esterni

modifica
  Portale Informatica: accedi alle voci di Wikipedia che trattano di informatica