Fondamenti di Informatica

Relazione su Artificial Life

Le radici dell'ARTIFICIAL LIFE possono essere rinvenute negli automi cellulari di John Von Neumann e Arthur W. Burks. Von Neuman si chiedeva:
"Quale tipo di organizzazione logica è sufficiente ad un automa per riprodurre se stesso?";
egli aveva in mente il fenomeno naturale dell'autoriproduzione quando la pose, ma non tentò di simulare l'autoriproduzione di un sistema naturale a livello genetico e biochimico. Egli voleva astrarre dal problema naturale dell'autoriproduzione la sua forma logica. Il formalismo che permise lo studio in quest'ambito, fu proposto da un suo collega, Stan Ulam, con il nome di AUTOMA CELLULARE (1962). Un automa cellulare è semplicemente un SISTEMA che può avere un NUMERO FINITO DI STATI ed il cui STATO è determinato dallo stato di altri automi che lo circondano. Il comportamento degli automi cellulari diventa interessante proprio perché formano una RETE DI INTERAZIONI, il cui COMPORTAMENTO GLOBALE, nel tempo, NON è PREVEDIBILE, anche se le LEGGI che governano i passaggi di stato per ogni singolo automa sono SEMPLICI e BEN DETERMINATE. Con gli automi cellulari, Von Neumann impostò un sistema capace di autoreplicarsi e stabilì che, qualunque sistema capace di fare ciò, doveva FARE USO DI INFORMAZIONI contenute nella sua descrizione in due modi fondamentalmente differenti: sia INTERPRETANDO, che NON INTERPRETANDO. INTERPRETATE LE INFORMAZIONI ESSE DOVEVANO TRADURSI IN AZIONI DA COMPIERE per realizzare il replicante, non interpretate dovevano essere soltanto copiate, perché sarebbero state l'analoga descrizione per il replicante. Quando, in seguito, si scoprì la struttura ed il funzionamento del DNA emerse che erano proprio i modi in cui la cellula fa uso delle informazioni contenute in esso durante i suoi processi di trascrizione e traduzione da una parte e replicazione dall'altra. UN AUTOMA DEVE APPRENDERE AD AGIRE IN UN AMBIENTE e, in linea di principio, non fa molta differenza se questo ambiente è REALE O SIMULATO. L'ambiente simulato, però, non deve essere stato progettato in modo da rendere il più semplice possibile "la vita" all'automa. Questa semplificazione spesso finisce per rendere ancora più difficile operare in tale ambiente. Ciò è legato al fatto che quello che è riportato dai sensori, nella vita reale, è sempre molto incerto. Quell'imprecisione che, a prima vista, sembrerebbe un problema, IN REALTA' PORTA AD APPRENDIMENTI PIU' FLESSIBILI IN PARTENZA, porta in maniera più naturale a prendere IL PUNTO DI VISTA DEL ROBOT, INVECE DI FORNIRGLI LA PROPRIA VISIONE DELL'AMBIENTE. Questa è appunto la posizione fondamentale del filone che va sotto il nome di agenti situati. Per quanto riguarda l'apprendimento, possiamo distinguere un apprendimento genetico ed uno individuale, proprio come negli esseri viventi reali. Nelle simulazioni che si fanno in questo campo, si utilizzano in genere alternativamente strategie che possiamo considerare ispirate all'APPRENDIMENTO IN VITA (tramite backpropagation principalmente, ma anche con l'apprendimento competitivo o comunque apprendimenti basati sulla modifica dei valori delle connessioni tra neuroni); oppure all'APPRENDIMENTO SU BASE GENETICA, che si compie di generazione in generazione (algoritmi genetici). Gli ALGORITMI GENETICI consistono fondamentalmente in varie tecniche, che portano alla selezione dei metodi che danno (in base ad un determinato criterio) i risultati migliori ed alla ricombinazione casuale di alcune loro porzioni e/o alla mutazione di alcune loro parti. In genere si parte con una certa popolazione di automi che hanno leggere differenze tra loro e si fanno agire in un ambiente per un certo numero di cicli. In seguito quelli che si saranno comportati meglio avranno la possibilità di riprodursi. Cioè si prenderà, ad esempio, il venti per cento della popolazione che si è comportato nel modo migliore e da questi, con mutazioni casuali e ricombinazioni, si otterrà anche il restante ottanta per cento di automi; con questa nuova popolazione si farà un altra sessione di cicli, al termine dei quali, si ripeterà lo stesso procedimento. Oggi si possono distinguere nell'Artificial Life due grossi filoni che si intrecciano tra loro: quello della robotica e quello delle simulazioni. Un altro tipo di distinzione che si può fare è tra gli approcci che potremmo definire top-down, quali quelli della tradizione cognitiva o dell'Intelligenza Artificiale, e quelli bottom-up nel quale troviamo connessionismo (in particolare il filone degli agenti situati) e automi cellulari.





















































Tutto quanto riportato in questa pagina è a puro scopo informativo personale. Se non ti trovi in accordo con quanto riportato nella pagina, vuoi fare delle precisazioni, vuoi fare delle aggiunte o hai delle proposte e dei consigli da dare, puoi farlo mandando un email. Ogni indicazione è fondamentale per la continua crescita del sito.