Automi Cellulari  MAS reattivi: definizioni ed esempi

Slides:



Advertisements
Presentazioni simili
Introduzione agli Automi Cellulari
Advertisements

© 2015 Giorgio Porcu - Aggiornamennto 01/12/2015 I STITUTO T ECNICO SECONDO BIENNIO T ECNOLOGIE E P ROGETTAZIONE Rappresentazione dell’ Informazione Sistemi.
Fondamenti di Informatica - D. Talia - UNICAL 1 Fondamenti di Informatica FONDAMENTI DI INFORMATICA Domenico Talia
Fondamenti di Informatica A - Massimo Bertozzi ALBERI E ALBERI BINARI DI RICERCA (BST)
I Paradossi di Zenone I paradossi di Zenone costituiscono forse i primi esempi del metodo di dimostrazione noto come dimostrazione per assurdo, usato.
1 Simulazione Numerica dei Fenomeni di Trasporto Necessità di introduzione dei tensori  11  12  13  23  21  22 Vogliamo descrivere in un modo che.
Elaborazione delle Immagini Operatori Puntuali Luigi Cinque
PSICOLOGIA DELL’ARTE COS’è LA PSICOLOGIA? La psicologia è la disciplina che studia il comportamento degli individui e i loro processi mentali. Tale studio.
.  I tipi di dati non primitivi sono gli array, le struct e le union.  Gli array sono degli aggregati di variabili dello stesso tipo.  La dichiarazione.
La chimica della vita Ogni organismo vivente è una macchina sofisticata, risultato di un complesso insieme di reazioni chimiche. La costruzione e il funzionamento.
Alcune note, dalla rete, sui Sistemi cellulari
Algoritmi Avanzati a.a.2014/2015 Prof.ssa Rossella Petreschi
Simulazioni possibili
Le operazioni relazionali
Algoritmi Avanzati a.a.2013/2014 Prof.ssa Rossella Petreschi
Algoritmi e Strutture dati a.a.2010/2011 Prof.ssa Rossella Petreschi
Algoritmi Avanzati a.a.2014/2015 Prof.ssa Rossella Petreschi
Rielaborato da Atzeni et al., Basi di dati, Mc-Graw Hill
Algoritmi Avanzati a.a.2015/2016 Prof.ssa Rossella Petreschi
Dal problema al processo risolutivo
DISTRIBUZIONI TEORICHE DI PROBABILITA’
13/11/
Antonio Sforza, Claudio Sterle
STORMCHASING di Giorgio Pavan
L’analisi del comportamento delle imprese (seconda parte)
Dal problema al processo risolutivo
L'ILLUSIONE OTTICA.
Modellistica e simulazione1 Esercitazione 3
Cluster Analysis Definizione di Classificazione: operazione concettuale condotta adottando un solo criterio (detto fondamento della divisione) per individuare.
Excel 1 - Introduzione.
Universita’ di Milano Bicocca Corso di Basi di dati 1 in eLearning C
MODELLAZIONE CFD DI MACCHINE VOLUMETRICHE DI TIPO SCROLL
Utilizzo razionale di un vasto numero di ricevitori GPS
Macchine sequenziali Capitolo 4.
V. Di Stefano a, O. Muscato b, W.Wagner c
Algoritmi Avanzati Prof.ssa Rossella Petreschi
I BUS È un insieme di fili conduttori che permette il passaggio di dati tra le varie periferiche del pc.
ALCUNI PRESUPPOSTI DI BASE metamappa delle caratteristiche
L’uomo è parte integrante del processo evolutivo dell’Universo
analizzatore di protocollo
realizzato dal prof.Conti Riccardo
K4 è planare? E K3,3 e K5 sono planari? Sì!
LA SOCIOLOGIA DELL’AMBIENTE
Gli automi.
I numeri relativi DEFINIZIONE. Si dicono numeri relativi tutti i numeri interi, razionali e irrazionali dotati di segno (positivo o negativo). ESEMPI Numeri.
Algoritmi e Strutture Dati
Gli organismi viventi.
Scheduling in Linux (Kernel 2.4 e 2.6)
Teoria sintetica dell’evoluzione
© 2007 SEI-Società Editrice Internazionale, Apogeo
LA RETTA.
Corso di Laurea Ingegneria Informatica Fondamenti di Informatica
Algebra di Boole e Funzioni Binarie
Le Macchine di Turing.
Equazione di Schroedinger dipendente dal tempo
Concorrenza e parallelismo
Esercitazione 8 Laboratorio di Architetture degli Elaboratori I
…la contabilità generale si basa sull’uso del conto.
13/11/
Strategie di progetto Si possono utilizzare le strategie tipiche dello sviluppo di un processo di ingegnerizzazione (es. ingegneria del software). Strategie.
Ing. Maurizio Bassani LOGISTICA - Capitolo 3 - Modulo 1
Analisi e Sintesi di circuiti sequenziali
Matrici e determinanti
Analisi ammortizzata Lezione n°2
Algoritmi.
1Il processo produttivo
Flusso del campo elettrico e teorema di Gauss
Corso di programmazione, Simulazione, ROOT, code, ecc. ecc.
Transcript della presentazione:

Automi Cellulari  MAS reattivi: definizioni ed esempi Giuseppe Vizzari 7 aprile 2005

Automi Cellulari NUOVI PARADIGMI COMPUTAZIONALI PER TRATTARE FENOMENI COMPLESSI DIFFICILMENTE TRATTABILI CON APPROCCI PIU’ TRADIZIONALI (“A New Kind of Science” – S. Wolfram 2002) (traffico automobilistico e pedonale, percolazione, fluidodinamica, morfogenesi, sistema immunitario, dinamiche di popolazioni, formazione di pattern, localizzazione, crescita urbana, distretti industriali, visione artificiale, arte, fenomeni auto-organizzanti,....) FISICA, BIOLOGIA, ECONOMIA, SOCIOLOGIA, ...

Un automa cellulare è un sistema dinamico discreto Automi Cellulari Un automa cellulare è un sistema dinamico discreto Sistema: insieme di entità individuali interagenti (automi a stati finiti + regola di transizione di stato + parallelismo sincrono) Dinamico: evoluzione temporale su un’asse discreta di istanti Discreto: tutti i suoi elementi sono finiti e numerabili (automi, stati, tempo, spazio)

Automi Cellulari Ogni automa è rappresentato come cella in una griglia spaziale regolare. Una relazione di adiacenza tra celle definisce la geometria d’interazione tra celle Dimensione: 1D, 2D, 3D (?nD?) Geometria: Quadrata, triangolare, esagonale (verso geomentrie non regolari) GEOMETRIA + DIMENSIONE = ------------------- VICINATO Es: 2D, quadrata Von Neuman Moore raggio

Automi Cellulari La transizione di stato avvienne secondo una regola di aggiornamento locale: lo stato di una cella in un dato istante attuale dipende dallo stato della cella stessa e dagli stati delle celle vicine all’istante precedente.

Automi Cellulari Gli stati di tutte le celle sono aggiornati contemporaneamente in maniera sincrona L’insieme degli stati delle celle compongono lo stato dell’automa Quindi lo stato globale dell’automa evolve in passi temporali discreti Un sistema viene rappresentato come composto da tanti semplici elementi individuali; ognuno di questi elementi per evolvere ha una propria regola interna ed interagisce solo con gli elementi vicini Il comportamento globale del sistema emerge dal comportamento locale di ogni elemento

Sito web con breve descrizione CA ed esempi di simulazioni http://cui.unige.ch/~chopard/CA/Animations/img-root.html

Automi cellulari (CA) Un automa cellulare è un raggruppamento di componenti elementari identiche (celle), ciascuna delle quali evolve in passi discreti di tempo secondo una determinata regola di transizione Ciascuna cella è caratterizzata da uno stato appartenente ad un insieme finito di stati possibili Le celle sono disposte nello spazio a formare una struttura regolare, generalmente mono, bi, o tridimensionale Celle adiacenti nello spazio interagiscono e cambiano il proprio stato di conseguenza Cella  tipo di agente reattivo Non può mutare la propria posizione nello spazio Può interagire unicamente con gli agenti vicini

CA – Caratteristiche fondamentali Discretizzazione dello spazio: l'insieme delle celle è disposto a formare un reticolo discreto Discretizzazione del tempo: le celle cambiano il loro stato in modo sincrono (simultaneamente) in passi discreti Località: la regola di aggiornamento di una cella dipende dallo stato della cella stessa e dallo stato delle celle adiacenti (interazione locale) Stati finiti: l'insieme degli stati possibili è finito Uniformità: la regola di aggiornamento e l’insieme degli stati sono gli stessi per ogni cella

Evoluzione di un CA Configurazione iniziale: ogni cella è in uno stato appartenente all'insieme degli stati possibili Aggiornamento: ogni cella esamina lo stato delle celle adiacenti, e cambia il proprio stato di conseguenza Il passo di aggiornamento viene eseguito simultaneamente (in parallelo) da tutte le celle Calcolatori tradizionali: un unico processore che esegue operazioni complesse Automa cellulare: una “rete” di processori che eseguono operazioni molto semplici

Descrizione ‘formale’ di un CA Definizione di una funzione di transizione  (per tutte le celle): (s0, s1, ......, sn) = s’0 s0: è lo stato della cella al tempo t-1 si: sono gli stati delle celle adiacenti allo stesso istante s’0: è lo stato della cella al tempo t Come rete di Petri Funzioni di transizione delle celle come transizioni che modificano lo stato corrente delle celle e propagano il nuovo stato a tutte le celle vicine Gli input della transizione sono gli stati al tempo t-1 delle celle vicine Le celle devono essere sincronizzate, perchè funzionino allo stesso tempo

CA – Breve storia Introdotti per la prima volta negli anni '50 da John von Neumann per studiare la complessità dei fenomeni biologici e i meccanismi di riproduzione degli esseri viventi Studiati successivamente da Stanislaw Ulam (1962) Crescita di strutture morfologiche a due o tre dimensioni, generate a partire da uno stato iniziale Somiglianza tra le simulazioni e particolari fenomeni fisici naturali Gli automi cellulari di von Neumann erano universali: se programmati opportunamente, sono in grado di eseguire qualsiasi computazione eseguibile da un calcolatore tradizionale Game of Life (1970): insieme di stati minimo (due stati possibili) e regole semplici di aggiornamento davano vita ad un sistema dall'evoluzione complessa  area di ricerca autonoma

The Game of Life (Conway, 1970) Automa cellulare bidimensionale Ogni cella ha due stati possibili: contiene un individuo vivo (1) oppure è vuota (0) Regole di transizione di stato: Nascita: in una cella nasce un individuo se esattamente 3 celle adiacenti sono occupate da individui Sopravvivenza: un individuo sopravvive solo se le celle adiacenti contengono esattamente due o tre individui [Morte per solitudine: un individuo muore se le celle adiacenti non contengono almeno due individui] [Morte per sovraffollamento: un individuo muore se le celle adiacenti contengono più di tre individui] Indirizzi: psoup.math.wisc.edu/Life32.html http://hensel.lifepatterns.net

Esempio 1D Automa cellulare monodimensionale Due stati possibili per ciascuna cella: 0 e 1 Regola: guarda le celle vicine a destra e a sinistra Se esattamente una di queste celle ha lo stato a 1, il tuo prossimo stato sarà 1 Altrimenti, il tuo stato sarà 0 Stato iniziale: la cella al centro dell'automa è nello stato 1, tutte le altre sono a zero

CA monodimensionali e numerazione delle regole Nell'esempio precedente Le tre celle coinvolte danno origine ad 8 combinazioni possibili: 000, 001, 010, 011, 100, 101, 110, 111 La regola era: 000 001 010 011 100 101 110 111 0 1 0 1 1 0 1 0 La seconda riga (nuovo stato della cella centrale per ciascuna delle 8 combinazioni) è la rappresentazione binaria del numero 90 (regola 90) La regola “11”, convertita in binario, è la regola “00001011” e il suo comportamento è il seguente 000 001 010 011 100 101 110 111 0 0 0 0 1 0 1 1 L’evoluzione dell'automa dipende comunque dalla configurazione iniziale

CA monodimensionali e numerazione delle regole Modifichiamo leggermente la regola dell'esempio precedente: Se sei 1, e i tuoi vicini sono 1, diventa 0 Altrimenti, se hai uno o due vicini a 1, il tuo prossimo stato è 1 Altrimenti, il tuo prossimo stato sarà 0 000 001 010 011 100 101 110 111 0 1 1 1 1 0 1 0

CA monodimensionali Wolfram ha studiato in dettaglio le 32 possibili regole legali (tra le 28=256 possibili), osservando che a partire da una configurazione iniziale casuale portano a quattro diversi tipi di evoluzione Porta ad uno stato omogeneo (da un certo passo in poi, nessuna cella cambia più stato) Genera pattern stabili o periodici (come nell'esempio della regola 90) Porta a configurazioni disorganizzate o caotiche, anche se la percentuale di celle in un dato stato tende ad un valore limite fissato È completamente caotica

Dall’effetto alla causa? Negli esempi mostrati finora, gli automi cellulari evolvevano a partire da una data configurazione iniziale (Approccio Forward) Approccio Backward Data una configurazione finale di un automa, è possibile trovare la regola che permette di ottenere la configurazione data? È possibile definire un insieme di regole locali in grado di riprodurre l’andamento globale di un sistema apparentemente caotico? Esempi: fluidodinamica, simulazione di processi di percolazione, generazione di pattern

Qual’è il CA (struttura, stati, regola) che produce questo pattern a partire da un’unica cella occupata localizzata al centro della griglia?

Soluzione Automa cellulare bidimensionale Vicinato: N, S, E, W, NE, NW, SE, SW Stati possibili: 0 e 1 Regola: Se sei 0, diventa 1 se le celle adiacenti contengono un numero dispari di 1 Se sei 1, rimani 1

Pattern bidimensionali Generare pattern bidimensionali in modo da riprodurre Grani di caffè macinato Granelli di sabbia Aggregati di carbon black In tutti i tre i casi, i letti di percolazione contengono pattern di forma approssimativamente circolare Come generare pattern leggermente diversi di forma circolare con un’unica regola?

Automi cellulari probabilistici Due stati possibili: cella piena o vuota Il pattern viene formato da celle adiacenti piene Come nell'esempio già visto, la forma può essere generata a partire da un seme (unica cella occupata) Idea: il seme si espande, occupando celle adiacenti vuote, fino a raggiungere la forma desiderata Come è possibile ottenere questo effetto?

Generazione di pattern bidimensionali Al seme iniziale viene associato un dato numero di capacità riproduttive Ogni cella è suddivisa in quattro porzioni Le capacità riproduttive vengono suddivise tra le quattro porzioni in modo probabilistico (diversa probabilità è associata a ciascuna porzione) Se la cella a nord del seme iniziale è libera, e la parte nord del seme contiene capacità riproduttive, la cella a nord diventa occupata, ed una capacità viene utilizzata per la “riproduzione” L’operazione del punto precedente viene eseguita anche per le tre rimanenti direzioni di crescita N E S W

Generazione di pattern bidimensionali Le celle occupate dall’espansione del seme ereditano le capacità riproduttive contenute nella porzione corrispondente Le capacità riproduttive ereditate vengono suddivise nelle quattro porzioni della cella in base alle rispettive probabilità Una cella occupata che ha ereditato capacità riproduttive dal seme iniziale può riprodursi a sua volta in celle adiacenti non occupate con la stessa regola

Generazione di pattern bidimensionali Le probabilità associate alle quattro porzioni delle celle influiscono sulla crescita del pattern e sulla forma finale Se le probabilità sono uguali nelle quattro direzioni, la crescita è omogenea nelle quattro direzioni, con un risultato approssimativamente circolare Dal momento che la regola di aggiornamento è probabilistica, la distribuzione delle capacità riproduttive nelle porzioni delle celle può produrre risultati differenti Ciascuna evoluzione dell'automa produce quindi pattern leggermente differenti, ma di forma simile La crescita del seme si arresta quando tutte le capacità riproduttive sono state utilizzate per occupare celle vuote, e nessuna nuova cella può essere più occupata

Generazione di pattern bidimensionali Se a due direzioni opposte si assegnano probabilità più alte, il risultato è il seguente: In questo caso, le probabilità associate alle porzioni nord/sud sono leggermente maggiori di quelle associate a est/ovest Se la differenza tra le probabilità nord/sud ed est/ovest è maggiore si ottiene un risultato quasi lineare

Generazione di letti di percolazione Il modello di generazione probabilistico è stato applicato alla generazione di letti di percolazione artificiali per la simulazione dei processi di percolazione Esempio di letto di percolazione composto da grani di limo, utilizzato per la simulazione della percolazione dei pesticidi nel suolo Tutti i grani sono di forma approssimativamente circolare

Generazione di letti di percolazione Lo stesso approccio è stato applicato alla generazione di letti di carbon black In questo caso, le forme osservate per gli aggregati di carbon black possono essere classificate in quattro categorie

Uso di CA come modello computazionale per la simulazione Ambiente discretizzazione di tempo e spazio stati possibili delle celle  entità come particolari elementi dello stato di una cella evoluzione delle celle  cattura/modella anche le specifiche comportamentali delle entità Applicazioni CA Modellazione/simulazione traffico Modellazione/simulazione folle

CA e modellazione traffico Strade come insiemi di ‘bit stream’ sezioni di spazio che possono contenere o meno un veicolo corsie unidirezionali, sorpassi non rappresentati Regola di transizione genera l’illusione del movimento una cella precedentemente occupata si svuota, mentre una adiacente diventa occupata

Esempio di regola di transizione: Wolfram 184 1 1

Possibili raffinamenti Arricchimento della rappresentazione: non solo occupato/vuoto ma anche velocità corrente del veicolo Maggior realismo delle regole possibilità di definire modalità di accelerazione/frenata Possibilità di estendere la rappresentazione spaziale più corsie, incroci, rotonde...

Esempi avanzati

Traffico e CA Vantaggi Limiti rappresentazione e gestione di informazione spaziale semplicità del modello, efficienza Limiti omogeneità delle entità regola di transizione globale tutte le entità aderiscono alla regola (gli incidenti accadono solo se previsti nella regola stessa !)

CA e modellazione folle Griglia dell’automa come discretizzazione di un ambiente fisico Presenza di entità come particolare stato delle celle Comportamento delle entità rappresentato dalla regola di transizione dell’automa Illusione del movimento generata analogamente al caso della modellazione di traffico automobilistico

Generazione di movimento: corsie Tre stati ammissibili vuoto occupato da una persona diretta a sinistra occupato da una persona diretta a destra Regola di transizione prevede l’avanzamento ove possibile, e il cambiamento di corsia in caso di conflitti Si ingenerano nel tempo delle vere e proprie corsie e sensi di direzione

Generazione movimento: obiettivi La transizione di uno stato occupato predilige celle con un valore del ‘campo’ più elevato Possibile far sì che la presenza di una persona lasci una traccia nella cella anche dopo la transizione occupatolibero della cella stessa

Folle e CA Vantaggi Limiti rappresentazione e gestione di informazione spaziale semplicità del modello, efficienza Limiti omogeneità delle entità regola di transizione globale tipicamente il modello di base viene esteso, in modo anche molto profondo, ad es. per consentire effetti a distanza

CA e MAS Gli CA offrono un framework computazionale per modellare e simulare fenomeni naturali e artificiali che includono lo spazio CA (Wolfram, 1983) Discrete time model of a dynamic system Spatial representation as interacting cells The evolution of each cell state is based on a local, simple, fixed rule Each cell state at time tn+1 depends on the state of the adjacent cells (neighbourhood) at time tn Simultaneous and synchronous evolution of the state of the cells

CA e MAS Un MAS è un tipo di CA? ... ... o un CA è un tipo di MAS? Se l'ambiente dei MASs può essere facilmente rappresentato nella forma di griglia di celle, non si può dire lo stesso per gli agenti, che sono entità autonome capaci di modificare la loro posizione conservando la loro identità ... o un CA è un tipo di MAS? CA come un MAS ‘degenere’, in cui ogni cella è occupata da un agente CA come un modello per la rappresentazione della dinamica dell’ambiente

CA come MAS Esplicita struttura spaziale dell’ambiente in cui gli agenti sono situati Regolare e uniforme Rappresentazione degli agenti implicita nella descrizione della cella Densa e omogenea Gli agenti non si possono muovere Evoluzione sincrona delle entità che costituiscono il sistema (MAS)

CA come “buon modello per l’ambiente del MAS” Approccio combinati di MAS e CA E.g. Applicato per l’analisi della dinamica dei sistemi urbani e delle folle Cellular Space  dinamica dell’infrastruttura urbana MAS  dinamica delle entità autonome e interagenti che popolano l’infrastruttura