sabato 5 gennaio 2013

Il gioco della vita

Immaginate un mondo bidimensionale diviso in tanti quadratini uguali che rappresentano la minima unità di spazio e che chiameremo celle; ogni cella può essere piena (nera) o vuota (bianca) e ha otto vicini che confinano con essa per un lato o per un angolo. Immaginate un quadrato di, facciamo, mille celle di lato come campo di gioco.
Definiamo le due uniche leggi fisiche del nostro mondo virtuale, solo e nient'altro che queste:
  1. una cella vuota con tre vicini pieni diventa piena, altrimenti rimane vuota.
  2. una cella piena con due o tre vicini pieni rimane piena, altrimenti diventa vuota.
Se siete portati ad antropomorfizzare, potete intendere la regola 1 come nascita da tre genitori, la regola 2 come morte da isolamento o sovraffollamento.

In questo mondo semplificato il tempo scorre in modo discreto, per istanti successivi, un po' come nei combattimenti nei film di Bruce Lee.
Vediamo come funziona questa cosa che abbiamo creato: se in un istante abbiamo una sola cella nera, questa nell'istante successivo diventerà bianca (o morirà per isolamento) e poi il nulla.
Se abbiamo invece tre celle piene contigue e allineate in orizzontale, nell'istante 1 la cella centrale avrà due vicini pieni, e quindi nell'istante successivo rimarrà piena (regola numero 2), mentre le altre due celle, a destra e a sinistra di quella centrale, avranno un solo vicino nero, e diventeranno bianche (sempre regola numero 2). Di contro le celle sopra e sotto la celle centrale, inizialmente vuote, avranno nell'istante 1 tre vicini neri (le tre celle iniziali) e quindi diventeranno nere nell'istante due (regola numero 1). Semplice no?
Per rendere il tutto più realistico, qui sotto vi propongo la situazione dinamica, una figura chiamata "lampeggiatore" di periodo 2 (ogni due istanti torna alla configurazione iniziale):



Ci sono altri lampeggiatori di periodo 2, come questi:





Ma ci possono essere anche figure cicliche a periodi maggiori di 2.
Ci sono poi figure che rimangono sempre fisse, le più semplici delle quali sono queste (provate ad applicare la regola numero 2 ad ogni cella e vedrete che funziona, in quanto ogni cella nera ha due o tre vicini neri):








Di solito, se si dispongono casualmente nello spazio delle celle nere, le configurazioni così create si modificheranno istante per istante per approdare poi ad una situazione statica o all'estinzione. A volte però si può costruire qualcosa di interessante.
Vi consiglio di provare voi stessi a creare delle figure per vedere quanto tempo sopravvivono e se hanno delle caratteristiche particolari. Se, come credo, non vi va di fare i calcoli per conto vostro, sappiate che in rete ci sono decine di programmi, anche online, che lo faranno per voi (ad esempio questo o quest'altro, o se siete ipadizzati ci sono alcune Apps da scaricare), visto che questo mondo artificiale è ben famoso, è stato ideato e poi sviluppato dal matematico britannico John Conway già dall'inizio degli anni settanta, e si chiama "The Game of Life", o semplicemente Life.
Lo scopo iniziale di Conway era mostrare come da un mondo semplice con basilari leggi fisiche (due, nel nostro caso) fosse possibile ottenere comportamenti simili alla vita.

Se questo obiettivo vi sembra esagerato provate a giocarci un po' e scoprirete che ci sono delle figure che si modificano riempiendo celle verso un lato e svotandone altre nel senso opposto e che quindi pare si muovano.
Ad esempio questo è un aliante, la più sempice struttura semovente:



e questa una nave spaziale



Se andiamo verso una maggiore complessità, possiamo trovare delle strutture che ne mangiano altre, che si uniscono a formarne una più grande, o che emettono impulsi informativi verso l'esterno, come il cosidetto "cannone di Gosper", che spara alianti (sono le figurette che vanno verso sudest).



Life avuto moltissimo successo tra studiosi e semplici curiosi in tutto il mondo: sono stati elaborati programmi per PC per simulare a forti velocità le evoluzioni delle figure più complesse, sono state progettate nuove proprietà, sono nati forum per discutere delle figure migliori, persino organizzate battaglie tra creature per trovare la più resistente, la più adatta, in una sorta di evoluzione darwiniana. Vi consiglio di andare a sbirciare su You Tube alcune delle panoramiche più rappresentative (a mo' di esempio vi indico questa, davvero strabiliante).
Life è stato utilizzato anche per provare a simulare la vita artificiale. Ad esempio è stata progettata una figura che è capace di replicare se stessa, una sorta di DNA virtuale. Abbiamo tra le mani un giocattolone in cui, partendo da elementi semplicissimi e regole minime, se si riesce a raggiungere un livello di aggregazione sufficientemente complesso, si giunge a meccanismi che sembrano fuori della portata delle iniziali e semplicissime regole ed elementi, e che sembrano addirittura creati da intelligenze superiori, sembrano avere una vita propria (se avete dato un'occhiata agli esempi su You Tube quest'affermazione non vi sembrerà così assurda), mentre invece sono solo organizzazioni complesse di elementi semplici che seguono un algoritmo, una regola fisica, nient'altro. Qualcuno potrebbe dire che in Life un'intelligenza superiore c'è, ed è quella del demiurgo che inventa la figura e la deposita sul piano di gioco, ma a ben vedere l'apporto del demiurgo è più che altro per simulare una disposizione casuale delle celle che potrebbe verificarsi anche spontaneamente, se solo avessimo a disposizione il tempo necessario e una regola che ogni tanto fornisce un errore, tipo la replicazione non sempre perfetta del DNA.
Prendiamo ad esempio l'aliante. È una figura molto semplice, viene fuori autonomamente dopo pochissimi tentativi ed errori. Ed è il fondamento di tutto il resto su Life, del movimento, dell'informazione che passa da una struttura all'altra. In linea teorica è stato dimostrato che sarebbe possibile creare su Life una macchina di Turing universale, con le informazioni che passano al suo interno grazie ad un nastro di alianti, e quindi svolgere ogni tipo di calcolo (sulla rete ci sono parecchie macchine universali di Turing costruite su Life, ma non so se funzionano davvero). Per alcuni ciò significa che potenzialmente, raggiungendo la necessaria complessità, si potrebbe creare artificialmente una mente, una coscienza. È stato calcolato che una struttura del genere dovrebbe essere sufficientemente complessa (servirebbero 10 alla tredicesima celle, un quadrato di circa tre milioni di celle di lato) ma non c'è da meravigliarsi delle dimensioni teoriche di questo "mostro", considerato che anche con queste dimensioni non sarebbe più grande rispetto ai suoi mattoni fondamentali di quanto un organismo semplice lo è rispetto ai suoi atomi (1).

Che piaccia o meno, fenomeni come questo mostrano il nocciolo della potenza dell'idea darwiniana. Un minuscolo brandello di meccanismi molecolari, impersonali, irriflessivi, automatici e privi di una mente è il fondamento ultimo di tutta l'azione, e quindi di tutto il significato, e quindi di tutta la coscienza, dell'universo.

Vi lascio con un magnifico esempio delle potenzialità di Life: un mega-schema dove, con i meccanismi atomici di Life, viene riprodotto a dimensioni estremamente maggiori Life stesso. In poche parole un Life frattale, sottolineato dall'azzeccatissimo commento audio, una nota che sembra continuamente crescente ma a ben vedere è ciclica, a suo modo una nota frattale.






Note:
  1. Per chi volesse approfondire, consiglio l'ottima trattazione dei significati evolutivi del Game of Life di Conway come viene esposta nel libro di Daniel Dennett, L'Idea Pericolosa di Darwin, dal quale è anche tratto il corsivo finale.

9 commenti:

  1. La differenza la fa guardare i video su you tube. Infatti conoscevo Game of life, ma non mi ero mai reso conto di quanto potesse diventare strepitoso. A ben pensarci ora mi chiedo come mai il sig. tacchino non ne avesse ancora parlato prima d'oggi.

    RispondiElimina
    Risposte
    1. Ha ragione sig. pdb, ho letto il libro di Dennett almeno tre anni fa, e al tempo il Game of Life mi aveva acchiappato parecchio. Ma non avevo un blog.

      Elimina
  2. Ora non riesco a fare il link, ma se provate ad andare su You Tube e digitare "life in life conway" il primo video che vi si propone ha dell'incredibile: un life frattale, con potenzialità pressocchè infinite...

    RispondiElimina
    Risposte
    1. Sono andato a vederlo: fantastico; e sottolineo anche la raffinatezza dell'accompagnamento musicale costituito da una scala eternamente ascendente che in realtà non sale affatto

      Elimina
    2. Ok, sono riuscito finalmente a inserire il filmato nel post, non me ne vorrà se ne ho approfittato per sfruttare la sua intuizione sulla nota ciclica.

      Elimina
  3. Anonimo6/1/13

    Dalla semplicità nasce la vita e la complessità. Il punto è: chi o cosa è così geniale da creare così semplicemente le basi di questa complessità e completezza?Il caso? Risposta troppo banale e complessa per essere coerente con questa semplicità e bellezza. Devopensarcisu.

    RispondiElimina
  4. Fico! Io che sono ignorante invece non ne avevo mai sentito parlare.
    Grazie mr.pennuto.

    RispondiElimina
  5. Mi associo a e. nell'ignoranza e aggiungere che con ancora il cotechino natalizio nella pancia, non puoi chiedere ai miei neuroni cotale sforzo nel seguire i tuoi lucidi ragionamenti

    RispondiElimina
  6. Life è stato un gioco strepitoso, scoperto (da me) a metà anni '80 su LeScienze. Avevo scritto un Life in assembler Z80, che girava sul video di un sistema di sviluppo HP 64000A. Rischiavo di non lavorare più, a furia di provare combinazioni, e far girare nottetempo le simulazioni più lunghe.

    RispondiElimina