SlideShare una empresa de Scribd logo
1 de 18
Descargar para leer sin conexión
GenAgents
 Storia evolutiva di un progetto di ricerca sulle dinamiche dei comportamenti cooperativi

                                     Gino Martorelli

                               ginomartorelli@virgilio.it

                                  www.learning-path.it




GenAgents è un ambiente di simulazione sviluppato dall’autore per lo studio delle
dinamiche di evoluzione dei comportamenti cooperativi in sistemi sociali artificiali a
“razionalità limitata”.

L’ambiente permette di riprodurre almeno in parte la complessità sistemica delle
dinamiche di relazione tra diversi gruppi di agenti artificiali. Gli agenti, appartenenti a
clan o famiglie con diverse strategie di relazione, si muovono ed interagiscono
spazialmente mettendo in atto le loro logiche di relazione.
Prologo

Due prigionieri sono rinchiusi in celle distinte e separate. Al mattino verranno interrogati
dalla polizia che sta indagando proprio su un crimine che hanno commesso insieme.
Entrambi sanno che se tacciono (cooperano) saranno scarcerati in quanto la polizia,
senza una confessione e con scarsissime prove, potrà accertare nulla o poco a loro
carico.

I poliziotti decidono di introdurre un fattore di squilibrio in questo sistema, qualcosa che
rompa la simmetria di una situazione vantaggiosa: se uno dei due tradisce (defeziona)
dando informazioni preziose sul complice, avrà garantita l’impunità. Non solo, sarà
liberato con una buona ricompensa, mentre il complice riceverà il massimo della pena per
il crimine contestato ed in più dovrà pagare una pesante pena in denaro. Se entrambi
decideranno di confessare (defezionare l’un l’altro) e di denunciare il crimine, otterranno
invece il massimo della pena, senza dover pagare la multa in denaro.

Indicando con Pr. A e Pr. B i due prigionieri, con C e D rispettivamente le azioni di
cooperazione e defezione, e sostituendo gli anni di carcere con dei punteggi, possiamo
rappresentare la situazione attraverso una tabella di payoff generica valida per tutte le
situazioni simili:

                                                         Pr. B
                                           C                               D
                Pr. A   C   Mutua cooperazione 5 punti Figura dello stupido -3 punti

                        D       Tentazione 10 punti              Mutua defezione 0 punti



Cosa faranno dunque i prigionieri? Tradiranno o decideranno di cooperare?

Stando ai presupposti dovrebbero cooperare. Tenere la bocca chiusa e riacquistare la
libertà, sembra essere la soluzione più logica per entrambi. Durante la notte però
ciascuno inizia a riflettere e a chiedersi se e quanto può fidarsi della lealtà dell’altro. La
ricompensa per il tradimento (defezione) costituisce una tentazione troppo forte per
entrambi. Ciascuno sa che l’altro sta pensando esattamente la stessa cosa al riguardo.
Entrambi dunque decidono di parlare e denunciare l’altro. In questo modo, sanno di
ottenere la pena per il crimine commesso, ma almeno eviteranno di fare la parte degli
stupidi ed in più non dovranno pagare una pena in denaro.

Quella che sembrava la soluzione più logica, si è trasformata in una prospettiva da
evitare, portando i due prigionieri all’esito in fondo meno conveniente per entrambi: il
massimo della pena per il crimine commesso.

La situazione narrata in questo episodio, nota nella teoria dei giochi come “dilemma del
prigioniero”, è piuttosto dura ed estrema. Eppure, nella nostra vita quotidiana, in politica,
nelle transazioni commerciali, nei rapporti affettivi ed interpersonali, la struttura di base dello
scenario delineato, il rapporto cioè tra cooperazione e sfiducia, emerge spesso in modo più
prepotente e subdolo di quanto non si possa pensare.
In quali condizioni e perché alcuni organismi, in natura come in società, decidono di
cooperare, di defezionare o di rifiutare una relazione con altri organismi?

Questa è la domanda che molti ricercatori, di discipline a volte radicalmente diverse e
lontane come la biologia, l’economia, la fisica, la filosofia e la cibernetica, si sono posti
per diversi decenni cercando di delineare dei modelli esplicativi e previsionali.

Sul finire degli anni settanta Robert Axelrod, un politologo della Università del Michigan
da molto tempo impegnato negli studi sulla cooperazione, iniziò ad organizzare sul
proprio calcolatore degli strani tornei tra automi deterministici capaci di giocare
iterativamente al dilemma del prigioniero.
Ciascun automa aveva una propria strategia di gioco, alcuni defezionavano
sistematicamente, altri iniziavano cooperando quindi rispondevano pan per focaccia (Tit
for Tat) ad ogni tradimento per poi tornare a cooperare in situazioni di cooperazione, altri
ancora prendevano decisioni in funzione della storia passata in qualche modo
memorizzata.

In poco tempo furono sviluppati ben quattordici tipi di automi, ciascuno con una strategia
diversa, ma il sistema nel suo insieme risultava comunque piuttosto rigido. Data una
tabella di regole, o di payoff, l’esito complessivo dei tornei era spesso piuttosto scontato,
anche in situazioni di iterazione prolungata. La strategia dell’automa Tit for Tat risultò la
migliore, riuscendo ad avere la meglio in quasi tutti gli scenari di partenza.

Nella maggior parte delle simulazioni effettuate da diversi autori la tabella di payoff
rimane invariata e costituisce un vincolo piuttosto forte alla evoluzione del sistema nel
suo insieme. Inoltre, la popolazione di automi resta anch’essa invariata durante le
interazioni, limitandosi spesso a conteggiare per un certo periodo o numero di iterazioni i
punteggi totali guadagnati o persi da ciascun automa o da ciascuna sottopopolazione di
automi. La domande che potremmo iniziare a porci dunque sono:

   i) Cosa accadrebbe in una società virtuale, composta di agenti virtuali in grado di
         muoversi e di interagire spazialmente in modo preferenziale?

   ii) Cosa accadrebbe se facessi in modo che il clan di agenti vincenti in un dato istante
          potessero cambiare le regole di partenza della tabella di payoff?

   iii) Quale evoluzione seguirebbe il sistema se introducessi un principio di vita, di
          morte e riproduzione, per ciascun agente, in funzione dei punteggi di fitness
          guadagnati in ciascuna iterazione ed in funzione del grado di somiglianza con
          degli agenti “archetipo”?

   iv) In quali condizioni dinamiche potrei osservare l’emergenza di nuove strategie e di
          nuovi ordini sociali?

Sulla scia della tradizione di ricerca iniziata da Axelrod, e portata avanti da diversi altri
autori, GenAgents e' il tentativo di mettere in scena sistemi in grado di dare una risposta
alle domande delineate sopra, un ambiente di simulazione dove più agenti artificiali,
appartenenti a famiglie con diverse strategie di relazione, si muovono ed interagiscono
spazialmente mettendo in atto le loro logiche di relazione.
Il sistema, per i vincoli e le caratteristiche, è in grado di mettere in scena le dinamiche di
un ambiente a "razionalità limitata" (bounded rationality) e questo, di per sé, sembra
essere di buon augurio. Per ogni situazione problematica infatti c’è in genere un solo
modo, o al più pochissimi modi, di comportarsi secondo scelte perfettamente razionali.
Esiste invece una infinità di modi diversi di comportarsi, in uno stesso scenario, mettendo
in atto scelte “quasi razionali” o a razionalità limitata come l’ha definita Simon.



INTRODUZIONE AL SISTEMA GENAGENTS

GenAgents è un ambiente di simulazione per lo studio di sistemi sociali artificiali a
“razionalità limitata”.
L’ambiente permette di riprodurre almeno in parte la complessità sistemica delle
dinamiche di relazione tra diversi gruppi di agenti artificiali. Gli agenti, appartenenti a
clan o famiglie con diverse strategie di relazione, si muovono ed interagiscono
spazialmente mettendo in atto le loro logiche di relazione.

Ogni agente è definito dal suo "codice genetico" digitale. I primi tre geni definiscono il
movimento, nel quarto è codificata la scelta relazionale attuata nell'ultimo incontro
(memoria storica a breve termine), il quinto ed il sesto gene codificano la specie o clan di
appartenenza. Dal settimo gene in poi la sequenza genetica è libera e può essere vista
come l'identità dell'agente all'interno del suo clan.




Ad ogni generazione, secondo una logica di tipo autopoietico (vedi l’Appendice ed il
paragrafo sulla dinamica del modello), dal pool genetico emerge un "individuo target"
virtuale (un archetipo) il quale definisce due modelli:

   • uno per la specie o clan
   • uno per il tipo di relazione considerata adattiva per le generazioni successive


A questo "individuo virtuale" possono corrispondere uno o più individui "reali" della
popolazione. Questo tuttavia non è scontato, l'agente virtuale può rappresentare il
target, o l'archetipo a cui tende la popolazione al di là del fatto che ci sia un reale
individuo il cui codice genetico sovrappone perfettamente il codice target.
Sto lavorando affinché ogni clan possa fare riferimento ad un proprio modello archetipico.
Questo dovrebbe rendere il sistema, in qualche modo, più vicino alle reali situazioni che
accadono in natura dove ogni gruppo (clan, specie ecc…) in genere tende ad avere un
proprio modello di riferimento, spesso diverso dagli altri modelli.

Le modalità dinamiche di emergenza e la formalizzazione algoritmica del modello sono
parzialmente descritte nel paragrafo sulla dinamica del modello (vedi sotto).
Ogni individuo interagisce con gli otto agenti che si trovano in corrispondenza del suo
vicinato di Moore :




Naturalmente non è detto che ogni posizione del vicinato sia occupata da qualche agente.
Ogni agente si "guarda intorno”, prende atto di quanti e quali agenti sono presenti nel
suo vicinato quindi interagisce con loro mettendo in atto le scelte relazionali (defezione,
rifiuto, cooperazione) in funzione del clan di appartenenza, dell'agente che ha di fronte e
delle logiche di relazione reciproche.

Il fitness di ogni agente viene quindi calcolato sia in base alla sua somiglianza con i
modelli emergenti "virtuali" (o archetipi) sia in base ai punteggi riportati nelle interazioni
con gli agenti del suo vicinato.

I punteggi riportati dagli agenti in ogni interazione, a loro volta, sono definiti nella tabella
di regole o di payoff che, inizialmente, è possibile caricare, creare e salvare prima di
iniziare la simulazione. La tabella non resta immutata durante le generazioni, il clan
vincente ha la possibilità di cambiare la tabella di regole per le generazioni seguenti, il
sistema dunque è a dinamica evolutiva, nulla rimane “immutato”.

Vediamo i dettagli della dinamica di emergenza del modello “archetipo”. La metodologia
usata, come vedremo, porta alla emergenza di quelli che Holland definì “schemi” e dai
quali ricavò uno dei teoremi fondamentali degli algoritmi genetici.



DINAMICA DEL MODELLO

Il fitness per ogni agente è calcolato in funzione di due fattori:

   1. Il punteggio riportato nelle relazioni con gli agenti del proprio vicinato il quale, a
      sua volta, dipende dalla struttura della Matrice di Payoff;
   2. Il grado di somiglianza con un target o “agente virtuale” che emerge, ad ogni
      generazione, dal pool genetico globale.

Il primo fattore non necessita di particolari spiegazioni. Per ogni generazione ad ogni
agente vengono aggiunti o tolti dei punti di fitness in conseguenza del tipo di strategia
che l’agente stesso attua con gli agenti del suo vicinato (se ve ne sono). Ogni specie
infatti interagisce mettendo in atto una particolare strategia (cooperazione, defezione,
rifiuto) la quale, in relazione alla strategia dell’altro e della tabella di payoff, comporta il
guadagno o la perdita di punti.
Per quanto riguarda la tabella di payoff il sistema, nei primi istanti o generazioni, prende
come riferimento una tabella definita esternamente. In seguito, secondo leggi
probabilistiche che non riporteremo in questa sezione, il clan (o i clan) “vincente” ha la
possibilità di cambiare le regole di interazione a parziale vantaggio della propria specie.
La tabella di payoff dunque non è fissa ma emerge ad ogni generazione come
conseguenza delle dinamiche globali del sistema.

Per quanto riguarda il secondo fattore, occorre innanzitutto definire la procedura
attraverso la quale viene generato il prototipo dell’agente virtuale, o target.

La sequenza genetica dell’agente target viene costruita nel modo seguente:

Dal pool genetico della popolazione, per ogni posizione genetica o gene i, viene calcolata
la frequenza cumulativa dell’occorrenza per il gene “1”.

Indicando con str(j,i) il gene i-esimo del                j-esimo agente, definiamo la funzione g(j,i)
come segue:

∀ j,i ∈ Ν     g(j,i) = 1 ⇔ str(j,i) = 1

La frequenza cumulativa della presenza del gene “1”, per ogni posizione genetica i, sarà
allora:

                                                Np

                         Np                     ∑ g ( j, i)
∀ j,i ∈ Ν → Gi = ∑ g ( j , i ) ⇒         Gi =
                                                 j

                         j                           Np

con Np numero totale di agenti della popolazione, mentre la G i è media delle frequenze
per ogni posizione i della sequenza genetica.

Indichiamo ora con G e con σ g rispettivamente la media e la deviazione standard delle
medie parziali calcolate sulle posizioni genetiche, cioè:


   ⎡ Ng ⎤
   ⎢∑ G i ⎥
G= ⎣      ⎦
      i
                per la media ;
       Ng

     ⎡ Ng
         (        )⎤
                   2

     ⎢∑ G − G i    ⎥
     ⎢ i               ⎥
σg = ⎣                 ⎦ per la deviazione standard, con Ng numero totale di geni per ogni agente.
          Ng
Il modello target viene definito dalla funzione T(i) nel seguente modo:

∀ i ∈ Ν si ha:

T(i) = 1     ⇔            (
                   Gi 〉 G + σ g   )
T(i) = 0     ⇔            (
                   Gi 〈 G −σ g    )
T(i) = #      ⇔     (G − σ ) ≤g         (
                                  Gi ≤ G + σ g   )
La funzione T(i) genera il vettore che definisce la sequenza genetica dell’agente target.

Nel caso in cui 0 < i ≤ 10 tale sequenza avrà quindi la forma:

                                      1 0 0 1 # 0 1 # 1 #

Per individuare la funzione di fitness del sistema definiamo la funzione f(j,i):

∀ j,i ∈ Ν → f(j,i) = 1 ⇔ str(j,i) = T(i)

∀ j,i ∈ Ν → f(j,i) = 0 ⇔ str(j,i) ≠ T(i)

con Ti ≠ #


Se indichiamo con payoff il punteggio totale riportato nelle interazioni con gli agenti del
vicinato, la funzione di fitness Fj per il j-esimo agente sarà dunque:

      ⎡ Ng          ⎤
F j = ⎢∑ f ( j , i )⎥ ± payoff
      ⎣ i           ⎦

dove Ng è il numero totale di geni che definiscono l’agente.

Il fitness totale F della popolazione è dato dalla:

    ⎡ Np ⎤
F = ⎢∑ F j ⎥
    ⎣ ji   ⎦

I geni contrassegnati con “#” non contribuiscono al computo della fitness degli agenti e
possono essere visti come i gradi di libertà del sistema globale.

Poiché ad ogni generazione il pool genetico della popolazione può cambiare a causa degli
operatori di mutazione e di crossover, ne consegue che il target stesso può cambiare
dinamicamente.
L’intero sistema è dunque definito in modo autopoietico, la dinamica che ne segue è
caratterizzata dalla ricerca continua di equilibri resi instabili dalle perturbazioni continue
dovute alle interazioni tra agenti, agli operatori di mutazione e crossover ed al
cambiamento del modello di target che emerge dal pool genetico.

Siano F*j ed Fj i punteggi di fitness di due generici agenti, F e σ rispettivamente la
media e la deviazione standard del fitness della popolazione, il crossover tra i due agenti
viene effettuato se, e solo se, sono rispettate le condizioni:

F*j > ( F - σ )
Fj   > (F - σ )

Questo criterio di attuazione per l’operatore di crossover permette di mantenere alta la
biodiversità interna al sistema e di massimizzare il fitness della popolazione evitando
situazioni di “massimi locali”.

Tra le diverse misurazioni effettuate (dimensione di complessità della funzione di fitness
ecc..) vengono calcolati il fitness medio per ogni specie, il fitness medio della popolazione
ed i rispettivi valori di deviazione standard. I criteri di selezione e di accoppiamento tra
gli agenti sono definiti rispetto a questi indicatori.

Le nascite degli individui che andranno a sostituire gli agenti "deceduti" sono realizzate
utilizzando il classico meccanismo di crossover sui codici genetici delle coppie. Il punto di
crossover, per ogni coppia, è definito randomicamente. In questa versione non sono stati
impiegati punti multipli per il crossover.




Ad ogni generazione, a causa delle morti, delle mutazioni e della nascita di nuovi
individui, il pool genico cambia nella sua configurazione globale. Il target o archetipo
emergente muterà quindi in modo dinamico ed autoreferenziale (autopoietico),
costringendo l'intero sistema a cercare una nuova strategia di adattamento e di selezione
(nuovi creodi, nuove morfologie di equilibrio instabile ).
La maggior parte dei modelli ad algoritmi genetici fino ad oggi impiegati per questo tipo
di simulazioni hanno impiegato un criterio di accoppiamento tra agenti che prende in
considerazione solo gli individui il cui fitness è superiore di un qualche delta rispetto alla
media. In sostanza vengono ammessi all’accoppiamento solo gli individui considerati
“migliori”. Questo criterio permette, in genere, di raggiungere livelli di ottimizzazione
della fitness globale piuttosto buoni.

Tuttavia è facile notare che il livello di ottimalità raggiunto non è quasi mai il massimo
consentito teoricamente, in realtà si resta spesso piuttosto al di sotto. La “biodiversità”
del pool genetico inoltre viene notevolmente ridotta nel tempo, con tutto quello che
questo implica in funzione del significato portato da ciascun “gene”.

Il criterio di accoppiamento impiegato in GenAgents è completamente diverso. Non viene
impedito agli agenti “migliori” (anche di clan diversi) di accoppiarsi, questo tuttavia non è
un vincolo per il sistema. Qualsiasi agente con un fitness di energia superiore di un
qualche delta al minimo assoluto (in genere 1/2 della deviazione standard) può
accoppiarsi con qualsiasi altro agente.

Questo criterio aumenta di molto la biodiversità nel tempo e permette, nonostante
minimi locali temporanei, di realizzare livelli di fitness globale della popolazione
decisamente superiori con punte che arrivano a toccare il massimo teorico possibile con
diverse configurazioni ed equilibri tra i clan in gioco.

Questo criterio consente un aumento considerevole della biodiversità nel tempo e
permette, nonostante minimi locali temporanei, di realizzare livelli di fitness globale
decisamente superiori con punte che arrivano a toccare il massimo teorico possibile.

Di seguito è riportato un grafico della evoluzione della biodiversità nel corso di una
simulazione, si consideri che 0.25 è il valore massimo possibile (1/4) per la biodiversità
del sistema.
La tabella di regole scelta per l'assegnazione dei punteggi nelle interazioni (le regole
sociali iniziali del sistema) muta in funzione delle dinamiche emergenti nel sistema. In
estrema sintesi, il clan “vincente” ha la possibilità di cambiare le regole sociali di partenza
secondo un modello probabilistico che, per brevità, non espongo in questo articolo.

In sostanza, il principio che guida tutto il progetto è quello di lasciar emergere i
comportamenti dal basso senza specificare ad alto livello particolari vincoli, cercare
l’emergenza di comportamenti organizzativi in popolazioni di agenti semplici guidati da
vincoli locali e non globali, focalizzare l’attenzione sulle dinamiche più che sugli stati di
equilibrio realizzati dal sistema nel corso delle generazioni.

In accordo alle osservazioni di Holland secondo cui “i sistemi viventi non si stabilizzano
mai”, la dinamica di GenAgents è quella tipica dei sistemi autopoietici, continuamente
perturbati e guidati da creodi e substrati evolutivi alla ricerca di stati stabili, per un
qualche dt diverso da zero, dai quali dipende l'identità stessa del sistema.

Ci sono diverse ipotesi sulle quali sto lavorando circa le dinamiche che permettono il
passaggio a diversi ordinamenti sociali più o meno cooperativi. L’idea principale, in parte
confermata dalle analisi delle dinamiche del sistema, è che si ha un passaggio a nuovo
ordinamento come risposta del sistema a configurazioni globali con un elevato indice di
complessità (dimensione frattale).

In modo un po’ schematico la situazione è la seguente:

1. ogni sistema in natura mantiene la sua identità globale (ciò che permette di vederlo
come sistema stabile nel tempo) fin tanto che è in grado di contenere il livello di entropia
interna (complessità) entro fluttuazioni che non lo costringono alla scissione, cioè a
rinunciare alla sua identità;

2. se la complessità aumenta oltre limite e la scissione non è possibile a causa di vincoli
strutturali e/o culturali (pensiamo ad un organismo o ad un nucleo famigliare ad es.),
quando le fluttuazioni di entropia (complessità interna) superano i livelli di stabilità, il
sistema è costretto a realizzare dinamiche in grado di ridurre il grado di complessità
(entropia) globale;

3. le dinamiche in questione possono essere sostanzialmente raggruppate in due
tipologie:

     • quella che prevede l’ipersemplificazione attraverso la virtualizzazione delle
       differenze interne al sistema

     • quella che prevede l’aumento della connessione e della comunicazione interna tra i
        subsistemi emergenti allo scopo di aumentare il grado di organizzazione
        strutturale e permettere l’integrazione, in un unico sistema, di diverse parti,
        ciascuna con le sue differenze interne e la propria complessità.



Sarebbe troppo lungo qui discutere quali forme sociali e/o fisiche possono emergere da
ciascuna delle due tipologie dinamiche. Basterà accennare alle dinamiche di auto ed etero
distruzione nella prima tipologia (in generale tutti i progetti a basso costo energetico di
costruzione e conferma di una identità a spese di un’altra) e a quelle della organizzazione
culturale e biologica nel secondo tipo di dinamiche (in generale tutti i fenomeni di nascita
di nuove morfologie biologiche e culturali, come accade nella fecondazione di un ovulo o
nella nascita di un nuovo modo di fare e vivere la cultura, nei rapporti affettivi ecc…).

In GenAgents è possibile osservare questa danza tra i due attrattori del sistema
(aumento della complessità interna – impossibilità alla scissione) nella emergenza di
nuovi “ordini sociali” e nuovi “archetipi”, nella sincronizzazione dei movimenti degli agenti
che migrano in massa in zone diverse del loro spazio di interazione (virtualizzazione delle
differenze interne rispetto al movimento) o nella emergenza di comportamenti ora
cooperativi, ora competitivi, altre volte coordinativi ecc…

Le dinamiche di transizione (o di emergenza) tra diversi tipi di strategie di interazione
sono ancora oggetto di studio ma si può dire che, tra le diverse dinamiche osservate,
forse la più evidente è quella riportata dalla seguente mappa:
In sostanza, se i comportamenti di defezione crescono, l'unico modo di fronteggiare la
situazione è quello di passare a comportamenti di discriminazione, cioè non cooperare
con chiunque ma solo con quegli agenti che hanno avuto un comportamento di
cooperazione. Questa strategia, qui definita in modo semplice ma in realtà più complessa
nella simulazione, è esattamente quella assunta dagli agenti discriminatori, una sorta di
"guerriglieri", sono loro che combattendo contro il clan dei defezionatori fanno emergere
nel tempo comportamenti e leggi sociali di cooperazione.

Un'ulteriore elemento di perturbazione è dato dal meccanismo di mutazione genetica che,
ad ogni generazione ed in funzione di alcuni parametri, porta alla mutazione una piccola
percentuale di individui.

L'entità delle mutazioni, ed altre dimensioni critiche del sistema, sono definibili
direttamente dallo sperimentatore attraverso alcuni tasti funzione che agiscono su alcune
caratteristiche del sistema durante la simulazione stessa (vedi la lista dei tasti funzione
nel Menù principale del programma). Sia il range di mutazione sul codice che la
probabilità di mutazione possono essere cambiate durante la simulazione attraverso
alcuni tasti funzione (frecce del tastierino numerico).

Sto elaborando una versione di GenAgents nella quale alcuni parametri che regolano
l'entità delle mutazioni sono a loro volta funzioni di altri parametri del sistema quali, ad
esempio, il fitness della popolazione.

I tipi di famiglie implementati in questa versione sono:


DEFEZIONATORE:
Defeziona sistematicamente. Molto efficiente nei sistemi di regole che premiano il
comportamento legato ad un tipo di logica individualista esasperata.

COOPERATORE:
È definito da regole di comportamento che iterativamente lo portano ad adottare
rigidamente relazioni di tipo cooperativo.

DISCRIMINATORE:
Agisce discriminando. Controlla il codice genetico nella posizione che codifica l'ultima
scelta relazionale effettuata dall'agente che incontra. Quindi Coopera con chi ha
cooperato o Defeziona con chi ha defezionato.

CONFORMISTA:
Esplicita il suo comportamento relazionale sulla base di un sistema di regole che
individuano una strategia conservativa confrontando risultati, strategie e modelli
emergenti dell'ultimo incontro. Se ha guadagnato di più e le “condizioni sociali” non sono
mutate allora nel ciclo successivo ripeterà la scelta relazionale fatta. Se invece ha perso
nel ciclo successivo effettuerà la scelta relazionale opposta a quella fatta
precedentemente. In sostanza è un operatore rinforzato positivamente a vincere, a
prescindere dalla strategia considerata “eticamente” corrett.


Dal menù principale si puo accedere alla lista delle tabelle disponibili, agli ambienti di
caricamento e di definizione di nuove tabelle e ad una definizione dei tasti funzione attivi
durante la simulazione.
Qualora si voglia dimensionare il sistema secondo parametri personali lo si può fare
scegliendo l'opzione Dimensiona Sistema del Menù principale. Questa opzione
permette di definire la numerosità della popolazione globale, la lunghezza del codice
genetico, la presenza o l'assenza di vincoli per i modelli emergenti (liberi o a dinamica
emergente) e la logica di accoppiamento tra individui che può essere specie-specifica
(accoppiamento solo tra individui della stessa specie) oppure tra specie (accoppiamento
tra individui di specie diverse).

Si possono anche definire due parametri che ho definito di Dispersione e di Decadimento.
Impostati entro un range di valori tra 0 e 1 rendono il sistema più o meno hamiltoniano
(o conservativo). Il primo parametro stabilisce quanta energia, in termini di fitness perso,
occorre per muoversi nell'ambiente, il secondo parametro definisce invece una costante
di decadimento temporale che agisce su ogni individuo anche se non si muove (in
GenAgents si invecchia e muoversi richiede energia).

Conviene impostare il primo a valori non superiori a 0.5, ed il secondo a valori non
superiori a 0.05. Si può rendere il sistema hamiltoniano (o conservativo) impostando a
zero i due fattori di decadimento (non si invecchia e non ci si stanca: troppo bello per
essere vero!).
Se un agente vuole spostarsi nella posizione occupata da un altro agente questo è
possibile solo se la sua energia (fitness) è superiore di un certo delta (1/2 della
deviazione standard ad esempio) a quella dell’agente “bersaglio”.

Dall’operatore di mutazione è escluso il quarto gene, quello cioè che codifica l'immagine
dell'individuo (ultima azione compiuta). Questo significa che in GenAgents si può mutare
identità ma non si può mascherare o cancellare il proprio passato prossimo … insomma
una specie di “legge karmica” virtuale.

Durante la simulazione alcuni grafici e finestre di stato permettono di avere informazioni
utili sulle dinamiche emergenti: la complessità del sistema globale (dimensione frattale
del segnale di fitness); la condizione di "salute" di ogni famiglia; la coesione spaziale; i
modelli di relazione e di famiglia emergenti ecc...

Un riquadro in basso a destra permette di osservare gli spostamenti e le diverse
configurazioni spaziali che possono formarsi nel corso delle generazioni. In questo
riquadro è interessante notare le diverse configurazioni a reticolo che si sviluppano nel
tempo e l’emergenza di dinamiche di intrusione, invasione, inclusione ecc…


Un pulsante nella form principale consente di aprire due file nei quali verranno
memorizzate le matrici di dati relative a diverse variabili del sistema (numero di individui
per ogni famiglia ad ogni generazione, fitness globale e di ogni specie, dimensione di
complessità del sistema ecc...). Premendo di nuovo lo stesso pulsante si blocca la
registrazione e si chiudono i file (la simulazione, naturalmente, continua). Riporto di
seguito una tipica schermata del sistema:
Poiché i file salvati vengono numerati, è possibile salvare diverse sessioni di dati durante
una stessa simulazione. Questi files potranno essere utilizzati per diversi tipi di analisi dei
dati o per graficare l'evoluzione del sistema durante le generazioni considerate. Se non si
intende dimensionare un proprio ambiente di simulazione, si può lanciare dal menù
principale il sistema di default predefinito.
Se non è possibile effettuare le sperimentazioni su un PC abbastanza veloce è
consigliabile ridurre la numerosità della popolazione, e non superare un’ampiezza di 10
per la lunghezza del gene.

Per qualsiasi altra informazione o per osservazioni da fare puoi mandarmi dei messaggi
via e-mail, saranno graditi.

Gino Martorelli
vertigo@learning-path.it
                                                                              - Appendice -

Sistemi Autopoietici

Breve introduzione
Un sistema vivente, considerato come una unità, può essere visto come un tutto
analizzabile, dotato di proprietà costitutive, oppure come un sistema complesso. In
quest'ultimo caso il sistema realizza la propria unità attraverso i suoi componenti e le
reciproche relazioni tra di essi.
La teoria sui sistemi autopoietici, per opera di F.G. Varela e H.R. Maturana, nasce
come il tentativo di costruzione di un modello in grado di rendere conto della
organizzazione comune che tutti i sistemi devono presentare per essere riconosciuti come
unita "viventi".

Nella loro teoria gli autori sostengono che la riproduzione e la evoluzione non
rappresentano delle caratteristiche costitutive della organizzazione vivente. Essi
ritengono inoltre che non si può rendere conto delle proprietà di un'unità vivente
limitandosi a spiegare le proprietà dei suoi componenti. Nei sistemi autopoietici
l'organizzazione vivente viene dunque caratterizzata specificando la rete di
interazioni, o relazioni, tra i componenti che costituiscono il sistema come una unità.
Più che sulle proprietà l'accento viene spostato sulla organizzazione relazionale,
necessaria e sufficiente, per caratterizzare un sistema come una unità vivente. La
comunicazione tra le unità costitutive si struttura qui come un processo di negoziazione
di identità e topologie.

Possiamo individuare tre fondamentali tipi di relazioni che, strutturando in vario modo lo
spazio di esistenza dei componenti, caratterizzano l'autopoiesi del sistema:

   • Relazioni Costitutive;

   • Relazioni di Specificità;

   • Relazioni d'Ordine.

Qeste relazioni, strutturate secondo caratteristiche di dinamica, di topologia e di identità,
ci permettono di studiare i sistemi autopoietici nell'ambito dei sistemi dinamici complessi
a logica differenziale:

                 RELAZIONI COSTITUTIVE           RELAZIONI DI SPECIFICITÀ   RELAZIONI D'ORDINE

  TOPOLOGIA      Limiti fisici dell'Autopoiesi     Substrato di Esistenza   Potenziali di Esistenza

   IDENTITÀ       Emergenza di Strutture         Proprietà dei componenti    Evento-Emergenza

   DINAMICA      Interazioni tra componenti      Funzione dei Componenti           Processi




Un sistema autopoietico costituisce una unità fin quando può compensare dinamicamente
le perturbazioni che tendono a ristrutturare i suoi Creodi, potenziali di esistenza e di
organizzazione dei suoi componenti. Come conseguenza si ha che più sistemi autopoietici
possono interagire tra loro, senza perdere le rispettive identità, se e solo se le modalità
attraverso le quali realizzano la loro autonomia costituiscono delle perturbazioni
compensabili.
Quando i cambiamenti subiti da un sistema autopoietico lo portano a partecipare alla
realizzazione di un altro sistema, il primo diventa componente del secondo. In questo
modo si possono avere diversi ordini di autopoiesi. Un esempio concreto in biololgia si ha
con la evoluzione del sistema nervoso nei sistemi viventi.

Da un punto di vista fenomenologico l'autopoiesi di un sistema si evidenzia attraverso la
sua autonomia, mentre la realizzazione o l'autoriproduzione dell'organizzazione
autopoietica è il prodotto stesso della sua organizzazione. Sistemi diversi rispetto alla
natura dei loro componenti possono presentare la medesima organizzazione e, rispetto
ad essa, possono quindi essere considerati membri della stessa classe.

Nei sistemi allopoietici, contrariamente a quanto accade nell'autopoiesi,
l'organizzazione è tale che in essi non vi è produzione di componenti e di processi che li
realizzano come unità, si può dire cioè che i processi che determinano la realizzazione di
un sistema allopoietico non fanno parte della sua organizzazione. In questi sistemi
meccanicistici il prodotto del loro funzionamento è sempre qualcosa di diverso
dall'identità ed unità del sistema.
Si può notare che, in quanto fenomeno emergente, un sistema autopoietico non si
realizza in modo lineare, sequenziale o graduale. Esso piuttosto prende forma attraverso
la relazione parallela e sincrona dei suoi componenti, nonché attraverso la loro
organizzazione topologica.

Más contenido relacionado

Destacado

Elenchi laboratori di progettazione - Rionero
Elenchi laboratori di progettazione - RioneroElenchi laboratori di progettazione - Rionero
Elenchi laboratori di progettazione - RioneroAndrea Quaranta
 
I profili più richiesti nel centro-sud
I profili più richiesti nel centro-sudI profili più richiesti nel centro-sud
I profili più richiesti nel centro-sudPage Personnel Italia
 
Pubblicità 2 e 4 ruote
Pubblicità 2 e 4 ruotePubblicità 2 e 4 ruote
Pubblicità 2 e 4 ruoteFraGhelli
 
Quella Carezza Della Sera C
Quella Carezza Della Sera CQuella Carezza Della Sera C
Quella Carezza Della Sera CCinzia Racca
 
Apprendimento linguistico ematematico dsa
Apprendimento linguistico ematematico dsaApprendimento linguistico ematematico dsa
Apprendimento linguistico ematematico dsaiva martini
 
Il no-profit adotta la rete ?
Il no-profit adotta la rete ?Il no-profit adotta la rete ?
Il no-profit adotta la rete ?Barbara Tiveron
 
Da vivaldi a tiziano ferro vb2
Da vivaldi a tiziano ferro vb2Da vivaldi a tiziano ferro vb2
Da vivaldi a tiziano ferro vb2giomatta
 
Workshop ITERR-COST - 25 Marzo 2011 - Certosa Monumentale di Calci
Workshop ITERR-COST - 25 Marzo 2011 - Certosa Monumentale di CalciWorkshop ITERR-COST - 25 Marzo 2011 - Certosa Monumentale di Calci
Workshop ITERR-COST - 25 Marzo 2011 - Certosa Monumentale di CalciBTO Educational
 
5 Interventi Genere
5 Interventi Genere5 Interventi Genere
5 Interventi Genererzampolini
 
30 giorni per installare una nuova abitudine potenziante demo
30 giorni per installare una nuova abitudine potenziante   demo30 giorni per installare una nuova abitudine potenziante   demo
30 giorni per installare una nuova abitudine potenziante demoAlexander Reif
 
Rogacien Anna Teresa e Temperilli Luigi. Impatto della Malnutrizione in Osped...
Rogacien Anna Teresa e Temperilli Luigi. Impatto della Malnutrizione in Osped...Rogacien Anna Teresa e Temperilli Luigi. Impatto della Malnutrizione in Osped...
Rogacien Anna Teresa e Temperilli Luigi. Impatto della Malnutrizione in Osped...Gianfranco Tammaro
 

Destacado (16)

11 dicembre
11 dicembre 11 dicembre
11 dicembre
 
Elenchi laboratori di progettazione - Rionero
Elenchi laboratori di progettazione - RioneroElenchi laboratori di progettazione - Rionero
Elenchi laboratori di progettazione - Rionero
 
I profili più richiesti nel centro-sud
I profili più richiesti nel centro-sudI profili più richiesti nel centro-sud
I profili più richiesti nel centro-sud
 
Tecnoalimenti - comunicato stampa
Tecnoalimenti - comunicato stampaTecnoalimenti - comunicato stampa
Tecnoalimenti - comunicato stampa
 
Vedere il tempo
Vedere il tempoVedere il tempo
Vedere il tempo
 
Pubblicità 2 e 4 ruote
Pubblicità 2 e 4 ruotePubblicità 2 e 4 ruote
Pubblicità 2 e 4 ruote
 
Quella Carezza Della Sera C
Quella Carezza Della Sera CQuella Carezza Della Sera C
Quella Carezza Della Sera C
 
Apprendimento linguistico ematematico dsa
Apprendimento linguistico ematematico dsaApprendimento linguistico ematematico dsa
Apprendimento linguistico ematematico dsa
 
Il no-profit adotta la rete ?
Il no-profit adotta la rete ?Il no-profit adotta la rete ?
Il no-profit adotta la rete ?
 
Da vivaldi a tiziano ferro vb2
Da vivaldi a tiziano ferro vb2Da vivaldi a tiziano ferro vb2
Da vivaldi a tiziano ferro vb2
 
Workshop ITERR-COST - 25 Marzo 2011 - Certosa Monumentale di Calci
Workshop ITERR-COST - 25 Marzo 2011 - Certosa Monumentale di CalciWorkshop ITERR-COST - 25 Marzo 2011 - Certosa Monumentale di Calci
Workshop ITERR-COST - 25 Marzo 2011 - Certosa Monumentale di Calci
 
5 Interventi Genere
5 Interventi Genere5 Interventi Genere
5 Interventi Genere
 
Manovra Gelmini
Manovra GelminiManovra Gelmini
Manovra Gelmini
 
IL PAESE NICHILISTA
IL PAESE NICHILISTAIL PAESE NICHILISTA
IL PAESE NICHILISTA
 
30 giorni per installare una nuova abitudine potenziante demo
30 giorni per installare una nuova abitudine potenziante   demo30 giorni per installare una nuova abitudine potenziante   demo
30 giorni per installare una nuova abitudine potenziante demo
 
Rogacien Anna Teresa e Temperilli Luigi. Impatto della Malnutrizione in Osped...
Rogacien Anna Teresa e Temperilli Luigi. Impatto della Malnutrizione in Osped...Rogacien Anna Teresa e Temperilli Luigi. Impatto della Malnutrizione in Osped...
Rogacien Anna Teresa e Temperilli Luigi. Impatto della Malnutrizione in Osped...
 

Similar a Gen Agents Project

Semplice Complicato Complesso
Semplice Complicato ComplessoSemplice Complicato Complesso
Semplice Complicato ComplessoValerio Eletti
 
RECIPROCITÀ di Luigino BRUNI
RECIPROCITÀ di Luigino BRUNIRECIPROCITÀ di Luigino BRUNI
RECIPROCITÀ di Luigino BRUNIRaffaele Nappi
 
Organizzazione e Complessità
Organizzazione e Complessità Organizzazione e Complessità
Organizzazione e Complessità Domenico Fama
 
Il Machine Learning illustrato
Il Machine Learning illustratoIl Machine Learning illustrato
Il Machine Learning illustratoAndrea Boero
 
Istruzione, formazione e mondo del lavoro (notiziario snfia n.70)
Istruzione, formazione e mondo del lavoro (notiziario snfia n.70)Istruzione, formazione e mondo del lavoro (notiziario snfia n.70)
Istruzione, formazione e mondo del lavoro (notiziario snfia n.70)Carla Spandonaro
 
Teoria complessità
Teoria complessitàTeoria complessità
Teoria complessitàimartini
 
Teoria complessità
Teoria complessitàTeoria complessità
Teoria complessitàimartini
 
Mediares - Semestrale sulla Mediazione - Gennaio-Dicembre 2011
Mediares - Semestrale sulla Mediazione - Gennaio-Dicembre 2011Mediares - Semestrale sulla Mediazione - Gennaio-Dicembre 2011
Mediares - Semestrale sulla Mediazione - Gennaio-Dicembre 2011virtualmediationlab
 
Freeconomics la dimensione economica del dono tra antropologia filosofica, s...
Freeconomics  la dimensione economica del dono tra antropologia filosofica, s...Freeconomics  la dimensione economica del dono tra antropologia filosofica, s...
Freeconomics la dimensione economica del dono tra antropologia filosofica, s...Sergio Guida
 
Connessione Irridescente...
Connessione Irridescente...Connessione Irridescente...
Connessione Irridescente...MPag
 
Complexity Literacy Meeting 2023 - Riassemblare il sociale di B. Latour - Pre...
Complexity Literacy Meeting 2023 - Riassemblare il sociale di B. Latour - Pre...Complexity Literacy Meeting 2023 - Riassemblare il sociale di B. Latour - Pre...
Complexity Literacy Meeting 2023 - Riassemblare il sociale di B. Latour - Pre...Complexity Institute
 
SCIENZA,TECNOLOGIA E COSCIENZA: UN EQUILIBRIO ASSAI FRAGILE
SCIENZA,TECNOLOGIA E COSCIENZA: UN EQUILIBRIO ASSAI FRAGILESCIENZA,TECNOLOGIA E COSCIENZA: UN EQUILIBRIO ASSAI FRAGILE
SCIENZA,TECNOLOGIA E COSCIENZA: UN EQUILIBRIO ASSAI FRAGILEFausto Intilla
 
Presentazione FP Convegno UNIBA Accountability 2014
Presentazione FP Convegno UNIBA Accountability 2014Presentazione FP Convegno UNIBA Accountability 2014
Presentazione FP Convegno UNIBA Accountability 2014Francesco Pellecchia
 
Rischio
Rischio Rischio
Rischio annalf
 
Riva Milano 12 Ottobre 07
Riva Milano 12 Ottobre 07Riva Milano 12 Ottobre 07
Riva Milano 12 Ottobre 07Riva Giuseppe
 

Similar a Gen Agents Project (20)

Semplice Complicato Complesso
Semplice Complicato ComplessoSemplice Complicato Complesso
Semplice Complicato Complesso
 
RECIPROCITÀ di Luigino BRUNI
RECIPROCITÀ di Luigino BRUNIRECIPROCITÀ di Luigino BRUNI
RECIPROCITÀ di Luigino BRUNI
 
Organizzazione e Complessità
Organizzazione e Complessità Organizzazione e Complessità
Organizzazione e Complessità
 
Il Machine Learning illustrato
Il Machine Learning illustratoIl Machine Learning illustrato
Il Machine Learning illustrato
 
Istruzione, formazione e mondo del lavoro (notiziario snfia n.70)
Istruzione, formazione e mondo del lavoro (notiziario snfia n.70)Istruzione, formazione e mondo del lavoro (notiziario snfia n.70)
Istruzione, formazione e mondo del lavoro (notiziario snfia n.70)
 
Lezione 3
Lezione 3Lezione 3
Lezione 3
 
Lezione 3
Lezione 3Lezione 3
Lezione 3
 
Lezione 3
Lezione 3Lezione 3
Lezione 3
 
Lezione 3
Lezione 3Lezione 3
Lezione 3
 
Teoria complessità
Teoria complessitàTeoria complessità
Teoria complessità
 
Teoria complessità
Teoria complessitàTeoria complessità
Teoria complessità
 
Mediares - Semestrale sulla Mediazione - Gennaio-Dicembre 2011
Mediares - Semestrale sulla Mediazione - Gennaio-Dicembre 2011Mediares - Semestrale sulla Mediazione - Gennaio-Dicembre 2011
Mediares - Semestrale sulla Mediazione - Gennaio-Dicembre 2011
 
Freeconomics la dimensione economica del dono tra antropologia filosofica, s...
Freeconomics  la dimensione economica del dono tra antropologia filosofica, s...Freeconomics  la dimensione economica del dono tra antropologia filosofica, s...
Freeconomics la dimensione economica del dono tra antropologia filosofica, s...
 
Connessione Irridescente...
Connessione Irridescente...Connessione Irridescente...
Connessione Irridescente...
 
Complexity Literacy Meeting 2023 - Riassemblare il sociale di B. Latour - Pre...
Complexity Literacy Meeting 2023 - Riassemblare il sociale di B. Latour - Pre...Complexity Literacy Meeting 2023 - Riassemblare il sociale di B. Latour - Pre...
Complexity Literacy Meeting 2023 - Riassemblare il sociale di B. Latour - Pre...
 
SCIENZA,TECNOLOGIA E COSCIENZA: UN EQUILIBRIO ASSAI FRAGILE
SCIENZA,TECNOLOGIA E COSCIENZA: UN EQUILIBRIO ASSAI FRAGILESCIENZA,TECNOLOGIA E COSCIENZA: UN EQUILIBRIO ASSAI FRAGILE
SCIENZA,TECNOLOGIA E COSCIENZA: UN EQUILIBRIO ASSAI FRAGILE
 
Presentazione FP Convegno UNIBA Accountability 2014
Presentazione FP Convegno UNIBA Accountability 2014Presentazione FP Convegno UNIBA Accountability 2014
Presentazione FP Convegno UNIBA Accountability 2014
 
Rischio
Rischio Rischio
Rischio
 
Riva Milano 12 Ottobre 07
Riva Milano 12 Ottobre 07Riva Milano 12 Ottobre 07
Riva Milano 12 Ottobre 07
 
9. Stereotipi E Schemi
9. Stereotipi E Schemi9. Stereotipi E Schemi
9. Stereotipi E Schemi
 

Más de Gino Martorelli

Velocità Dinamismo Simultaneità
Velocità Dinamismo SimultaneitàVelocità Dinamismo Simultaneità
Velocità Dinamismo SimultaneitàGino Martorelli
 
Emozionalità e stili di significato personale alla luce di un sistema ai
Emozionalità e stili di significato personale alla luce di un sistema aiEmozionalità e stili di significato personale alla luce di un sistema ai
Emozionalità e stili di significato personale alla luce di un sistema aiGino Martorelli
 
Tesi corso di specializzazione ECONA - “Psicologia Cognitiva e Reti Neurali”
Tesi corso di specializzazione ECONA - “Psicologia Cognitiva e Reti Neurali”Tesi corso di specializzazione ECONA - “Psicologia Cognitiva e Reti Neurali”
Tesi corso di specializzazione ECONA - “Psicologia Cognitiva e Reti Neurali”Gino Martorelli
 
Disturbo Ossessivo-Compulsivo
Disturbo Ossessivo-CompulsivoDisturbo Ossessivo-Compulsivo
Disturbo Ossessivo-CompulsivoGino Martorelli
 
Problem solving-seminario-01
Problem solving-seminario-01Problem solving-seminario-01
Problem solving-seminario-01Gino Martorelli
 
Genitorialità e Sviluppo Infantile - seminario - 01
Genitorialità e Sviluppo Infantile - seminario - 01Genitorialità e Sviluppo Infantile - seminario - 01
Genitorialità e Sviluppo Infantile - seminario - 01Gino Martorelli
 
Mindfulness e Tradizioni Meditative
Mindfulness e Tradizioni MeditativeMindfulness e Tradizioni Meditative
Mindfulness e Tradizioni MeditativeGino Martorelli
 

Más de Gino Martorelli (9)

Velocità Dinamismo Simultaneità
Velocità Dinamismo SimultaneitàVelocità Dinamismo Simultaneità
Velocità Dinamismo Simultaneità
 
Emozionalità e stili di significato personale alla luce di un sistema ai
Emozionalità e stili di significato personale alla luce di un sistema aiEmozionalità e stili di significato personale alla luce di un sistema ai
Emozionalità e stili di significato personale alla luce di un sistema ai
 
Tesi corso di specializzazione ECONA - “Psicologia Cognitiva e Reti Neurali”
Tesi corso di specializzazione ECONA - “Psicologia Cognitiva e Reti Neurali”Tesi corso di specializzazione ECONA - “Psicologia Cognitiva e Reti Neurali”
Tesi corso di specializzazione ECONA - “Psicologia Cognitiva e Reti Neurali”
 
Disturbo Ossessivo-Compulsivo
Disturbo Ossessivo-CompulsivoDisturbo Ossessivo-Compulsivo
Disturbo Ossessivo-Compulsivo
 
Problem solving-seminario-01
Problem solving-seminario-01Problem solving-seminario-01
Problem solving-seminario-01
 
Genitorialità e Sviluppo Infantile - seminario - 01
Genitorialità e Sviluppo Infantile - seminario - 01Genitorialità e Sviluppo Infantile - seminario - 01
Genitorialità e Sviluppo Infantile - seminario - 01
 
Mindfulness e Tradizioni Meditative
Mindfulness e Tradizioni MeditativeMindfulness e Tradizioni Meditative
Mindfulness e Tradizioni Meditative
 
Emotioning 01
Emotioning 01Emotioning 01
Emotioning 01
 
Perdita e Lutto
Perdita e LuttoPerdita e Lutto
Perdita e Lutto
 

Último

Iuzzolino Nuria-lavoro scienzeeeeee.pptx
Iuzzolino Nuria-lavoro scienzeeeeee.pptxIuzzolino Nuria-lavoro scienzeeeeee.pptx
Iuzzolino Nuria-lavoro scienzeeeeee.pptxnuriaiuzzolino1
 
ModelliAtomici.pptx studente liceo scientifico
ModelliAtomici.pptx studente liceo scientificoModelliAtomici.pptx studente liceo scientifico
ModelliAtomici.pptx studente liceo scientificoyanmeng831
 
relazione laboratorio_Stefano Afferrante.docx
relazione laboratorio_Stefano Afferrante.docxrelazione laboratorio_Stefano Afferrante.docx
relazione laboratorio_Stefano Afferrante.docxlorenzodemidio01
 
CamploneAlessandro_ArcheoBatteri (1).pptx
CamploneAlessandro_ArcheoBatteri (1).pptxCamploneAlessandro_ArcheoBatteri (1).pptx
CamploneAlessandro_ArcheoBatteri (1).pptxcamplonealex26
 
Mari, Manuela. - L'età ellenistica. Società, polica, cultura [ocr] [2019].pdf
Mari, Manuela. - L'età ellenistica. Società, polica, cultura [ocr] [2019].pdfMari, Manuela. - L'età ellenistica. Società, polica, cultura [ocr] [2019].pdf
Mari, Manuela. - L'età ellenistica. Società, polica, cultura [ocr] [2019].pdffrank0071
 
propagazione vegetativa delle piante.pptx
propagazione vegetativa delle piante.pptxpropagazione vegetativa delle piante.pptx
propagazione vegetativa delle piante.pptxPietroFanciulli
 
Oman_Raffaele_Progetto_scienze_Eubatteri - Copia (1).pptx
Oman_Raffaele_Progetto_scienze_Eubatteri - Copia (1).pptxOman_Raffaele_Progetto_scienze_Eubatteri - Copia (1).pptx
Oman_Raffaele_Progetto_scienze_Eubatteri - Copia (1).pptxraffaeleoman
 
I Modelli Atmoci_FilippoLuciani bohr.pptx
I Modelli Atmoci_FilippoLuciani bohr.pptxI Modelli Atmoci_FilippoLuciani bohr.pptx
I Modelli Atmoci_FilippoLuciani bohr.pptxfilippoluciani9
 
Imodelli_atomici_stefano_afferrante.pptx
Imodelli_atomici_stefano_afferrante.pptxImodelli_atomici_stefano_afferrante.pptx
Imodelli_atomici_stefano_afferrante.pptxlorenzodemidio01
 
I Modelli Atomici: Bhor, Rutherford, Dalton, Thomson.pptx
I Modelli Atomici: Bhor, Rutherford, Dalton, Thomson.pptxI Modelli Atomici: Bhor, Rutherford, Dalton, Thomson.pptx
I Modelli Atomici: Bhor, Rutherford, Dalton, Thomson.pptxtecongo2007
 
matematicaesempio--power point provaaaaa
matematicaesempio--power point provaaaaamatematicaesempio--power point provaaaaa
matematicaesempio--power point provaaaaanuriaiuzzolino1
 

Último (11)

Iuzzolino Nuria-lavoro scienzeeeeee.pptx
Iuzzolino Nuria-lavoro scienzeeeeee.pptxIuzzolino Nuria-lavoro scienzeeeeee.pptx
Iuzzolino Nuria-lavoro scienzeeeeee.pptx
 
ModelliAtomici.pptx studente liceo scientifico
ModelliAtomici.pptx studente liceo scientificoModelliAtomici.pptx studente liceo scientifico
ModelliAtomici.pptx studente liceo scientifico
 
relazione laboratorio_Stefano Afferrante.docx
relazione laboratorio_Stefano Afferrante.docxrelazione laboratorio_Stefano Afferrante.docx
relazione laboratorio_Stefano Afferrante.docx
 
CamploneAlessandro_ArcheoBatteri (1).pptx
CamploneAlessandro_ArcheoBatteri (1).pptxCamploneAlessandro_ArcheoBatteri (1).pptx
CamploneAlessandro_ArcheoBatteri (1).pptx
 
Mari, Manuela. - L'età ellenistica. Società, polica, cultura [ocr] [2019].pdf
Mari, Manuela. - L'età ellenistica. Società, polica, cultura [ocr] [2019].pdfMari, Manuela. - L'età ellenistica. Società, polica, cultura [ocr] [2019].pdf
Mari, Manuela. - L'età ellenistica. Società, polica, cultura [ocr] [2019].pdf
 
propagazione vegetativa delle piante.pptx
propagazione vegetativa delle piante.pptxpropagazione vegetativa delle piante.pptx
propagazione vegetativa delle piante.pptx
 
Oman_Raffaele_Progetto_scienze_Eubatteri - Copia (1).pptx
Oman_Raffaele_Progetto_scienze_Eubatteri - Copia (1).pptxOman_Raffaele_Progetto_scienze_Eubatteri - Copia (1).pptx
Oman_Raffaele_Progetto_scienze_Eubatteri - Copia (1).pptx
 
I Modelli Atmoci_FilippoLuciani bohr.pptx
I Modelli Atmoci_FilippoLuciani bohr.pptxI Modelli Atmoci_FilippoLuciani bohr.pptx
I Modelli Atmoci_FilippoLuciani bohr.pptx
 
Imodelli_atomici_stefano_afferrante.pptx
Imodelli_atomici_stefano_afferrante.pptxImodelli_atomici_stefano_afferrante.pptx
Imodelli_atomici_stefano_afferrante.pptx
 
I Modelli Atomici: Bhor, Rutherford, Dalton, Thomson.pptx
I Modelli Atomici: Bhor, Rutherford, Dalton, Thomson.pptxI Modelli Atomici: Bhor, Rutherford, Dalton, Thomson.pptx
I Modelli Atomici: Bhor, Rutherford, Dalton, Thomson.pptx
 
matematicaesempio--power point provaaaaa
matematicaesempio--power point provaaaaamatematicaesempio--power point provaaaaa
matematicaesempio--power point provaaaaa
 

Gen Agents Project

  • 1. GenAgents Storia evolutiva di un progetto di ricerca sulle dinamiche dei comportamenti cooperativi Gino Martorelli ginomartorelli@virgilio.it www.learning-path.it GenAgents è un ambiente di simulazione sviluppato dall’autore per lo studio delle dinamiche di evoluzione dei comportamenti cooperativi in sistemi sociali artificiali a “razionalità limitata”. L’ambiente permette di riprodurre almeno in parte la complessità sistemica delle dinamiche di relazione tra diversi gruppi di agenti artificiali. Gli agenti, appartenenti a clan o famiglie con diverse strategie di relazione, si muovono ed interagiscono spazialmente mettendo in atto le loro logiche di relazione.
  • 2. Prologo Due prigionieri sono rinchiusi in celle distinte e separate. Al mattino verranno interrogati dalla polizia che sta indagando proprio su un crimine che hanno commesso insieme. Entrambi sanno che se tacciono (cooperano) saranno scarcerati in quanto la polizia, senza una confessione e con scarsissime prove, potrà accertare nulla o poco a loro carico. I poliziotti decidono di introdurre un fattore di squilibrio in questo sistema, qualcosa che rompa la simmetria di una situazione vantaggiosa: se uno dei due tradisce (defeziona) dando informazioni preziose sul complice, avrà garantita l’impunità. Non solo, sarà liberato con una buona ricompensa, mentre il complice riceverà il massimo della pena per il crimine contestato ed in più dovrà pagare una pesante pena in denaro. Se entrambi decideranno di confessare (defezionare l’un l’altro) e di denunciare il crimine, otterranno invece il massimo della pena, senza dover pagare la multa in denaro. Indicando con Pr. A e Pr. B i due prigionieri, con C e D rispettivamente le azioni di cooperazione e defezione, e sostituendo gli anni di carcere con dei punteggi, possiamo rappresentare la situazione attraverso una tabella di payoff generica valida per tutte le situazioni simili: Pr. B C D Pr. A C Mutua cooperazione 5 punti Figura dello stupido -3 punti D Tentazione 10 punti Mutua defezione 0 punti Cosa faranno dunque i prigionieri? Tradiranno o decideranno di cooperare? Stando ai presupposti dovrebbero cooperare. Tenere la bocca chiusa e riacquistare la libertà, sembra essere la soluzione più logica per entrambi. Durante la notte però ciascuno inizia a riflettere e a chiedersi se e quanto può fidarsi della lealtà dell’altro. La ricompensa per il tradimento (defezione) costituisce una tentazione troppo forte per entrambi. Ciascuno sa che l’altro sta pensando esattamente la stessa cosa al riguardo. Entrambi dunque decidono di parlare e denunciare l’altro. In questo modo, sanno di ottenere la pena per il crimine commesso, ma almeno eviteranno di fare la parte degli stupidi ed in più non dovranno pagare una pena in denaro. Quella che sembrava la soluzione più logica, si è trasformata in una prospettiva da evitare, portando i due prigionieri all’esito in fondo meno conveniente per entrambi: il massimo della pena per il crimine commesso. La situazione narrata in questo episodio, nota nella teoria dei giochi come “dilemma del prigioniero”, è piuttosto dura ed estrema. Eppure, nella nostra vita quotidiana, in politica, nelle transazioni commerciali, nei rapporti affettivi ed interpersonali, la struttura di base dello scenario delineato, il rapporto cioè tra cooperazione e sfiducia, emerge spesso in modo più prepotente e subdolo di quanto non si possa pensare.
  • 3. In quali condizioni e perché alcuni organismi, in natura come in società, decidono di cooperare, di defezionare o di rifiutare una relazione con altri organismi? Questa è la domanda che molti ricercatori, di discipline a volte radicalmente diverse e lontane come la biologia, l’economia, la fisica, la filosofia e la cibernetica, si sono posti per diversi decenni cercando di delineare dei modelli esplicativi e previsionali. Sul finire degli anni settanta Robert Axelrod, un politologo della Università del Michigan da molto tempo impegnato negli studi sulla cooperazione, iniziò ad organizzare sul proprio calcolatore degli strani tornei tra automi deterministici capaci di giocare iterativamente al dilemma del prigioniero. Ciascun automa aveva una propria strategia di gioco, alcuni defezionavano sistematicamente, altri iniziavano cooperando quindi rispondevano pan per focaccia (Tit for Tat) ad ogni tradimento per poi tornare a cooperare in situazioni di cooperazione, altri ancora prendevano decisioni in funzione della storia passata in qualche modo memorizzata. In poco tempo furono sviluppati ben quattordici tipi di automi, ciascuno con una strategia diversa, ma il sistema nel suo insieme risultava comunque piuttosto rigido. Data una tabella di regole, o di payoff, l’esito complessivo dei tornei era spesso piuttosto scontato, anche in situazioni di iterazione prolungata. La strategia dell’automa Tit for Tat risultò la migliore, riuscendo ad avere la meglio in quasi tutti gli scenari di partenza. Nella maggior parte delle simulazioni effettuate da diversi autori la tabella di payoff rimane invariata e costituisce un vincolo piuttosto forte alla evoluzione del sistema nel suo insieme. Inoltre, la popolazione di automi resta anch’essa invariata durante le interazioni, limitandosi spesso a conteggiare per un certo periodo o numero di iterazioni i punteggi totali guadagnati o persi da ciascun automa o da ciascuna sottopopolazione di automi. La domande che potremmo iniziare a porci dunque sono: i) Cosa accadrebbe in una società virtuale, composta di agenti virtuali in grado di muoversi e di interagire spazialmente in modo preferenziale? ii) Cosa accadrebbe se facessi in modo che il clan di agenti vincenti in un dato istante potessero cambiare le regole di partenza della tabella di payoff? iii) Quale evoluzione seguirebbe il sistema se introducessi un principio di vita, di morte e riproduzione, per ciascun agente, in funzione dei punteggi di fitness guadagnati in ciascuna iterazione ed in funzione del grado di somiglianza con degli agenti “archetipo”? iv) In quali condizioni dinamiche potrei osservare l’emergenza di nuove strategie e di nuovi ordini sociali? Sulla scia della tradizione di ricerca iniziata da Axelrod, e portata avanti da diversi altri autori, GenAgents e' il tentativo di mettere in scena sistemi in grado di dare una risposta alle domande delineate sopra, un ambiente di simulazione dove più agenti artificiali, appartenenti a famiglie con diverse strategie di relazione, si muovono ed interagiscono spazialmente mettendo in atto le loro logiche di relazione.
  • 4. Il sistema, per i vincoli e le caratteristiche, è in grado di mettere in scena le dinamiche di un ambiente a "razionalità limitata" (bounded rationality) e questo, di per sé, sembra essere di buon augurio. Per ogni situazione problematica infatti c’è in genere un solo modo, o al più pochissimi modi, di comportarsi secondo scelte perfettamente razionali. Esiste invece una infinità di modi diversi di comportarsi, in uno stesso scenario, mettendo in atto scelte “quasi razionali” o a razionalità limitata come l’ha definita Simon. INTRODUZIONE AL SISTEMA GENAGENTS GenAgents è un ambiente di simulazione per lo studio di sistemi sociali artificiali a “razionalità limitata”. L’ambiente permette di riprodurre almeno in parte la complessità sistemica delle dinamiche di relazione tra diversi gruppi di agenti artificiali. Gli agenti, appartenenti a clan o famiglie con diverse strategie di relazione, si muovono ed interagiscono spazialmente mettendo in atto le loro logiche di relazione. Ogni agente è definito dal suo "codice genetico" digitale. I primi tre geni definiscono il movimento, nel quarto è codificata la scelta relazionale attuata nell'ultimo incontro (memoria storica a breve termine), il quinto ed il sesto gene codificano la specie o clan di appartenenza. Dal settimo gene in poi la sequenza genetica è libera e può essere vista come l'identità dell'agente all'interno del suo clan. Ad ogni generazione, secondo una logica di tipo autopoietico (vedi l’Appendice ed il paragrafo sulla dinamica del modello), dal pool genetico emerge un "individuo target" virtuale (un archetipo) il quale definisce due modelli: • uno per la specie o clan • uno per il tipo di relazione considerata adattiva per le generazioni successive A questo "individuo virtuale" possono corrispondere uno o più individui "reali" della popolazione. Questo tuttavia non è scontato, l'agente virtuale può rappresentare il target, o l'archetipo a cui tende la popolazione al di là del fatto che ci sia un reale individuo il cui codice genetico sovrappone perfettamente il codice target. Sto lavorando affinché ogni clan possa fare riferimento ad un proprio modello archetipico. Questo dovrebbe rendere il sistema, in qualche modo, più vicino alle reali situazioni che accadono in natura dove ogni gruppo (clan, specie ecc…) in genere tende ad avere un proprio modello di riferimento, spesso diverso dagli altri modelli. Le modalità dinamiche di emergenza e la formalizzazione algoritmica del modello sono parzialmente descritte nel paragrafo sulla dinamica del modello (vedi sotto).
  • 5. Ogni individuo interagisce con gli otto agenti che si trovano in corrispondenza del suo vicinato di Moore : Naturalmente non è detto che ogni posizione del vicinato sia occupata da qualche agente. Ogni agente si "guarda intorno”, prende atto di quanti e quali agenti sono presenti nel suo vicinato quindi interagisce con loro mettendo in atto le scelte relazionali (defezione, rifiuto, cooperazione) in funzione del clan di appartenenza, dell'agente che ha di fronte e delle logiche di relazione reciproche. Il fitness di ogni agente viene quindi calcolato sia in base alla sua somiglianza con i modelli emergenti "virtuali" (o archetipi) sia in base ai punteggi riportati nelle interazioni con gli agenti del suo vicinato. I punteggi riportati dagli agenti in ogni interazione, a loro volta, sono definiti nella tabella di regole o di payoff che, inizialmente, è possibile caricare, creare e salvare prima di iniziare la simulazione. La tabella non resta immutata durante le generazioni, il clan vincente ha la possibilità di cambiare la tabella di regole per le generazioni seguenti, il sistema dunque è a dinamica evolutiva, nulla rimane “immutato”. Vediamo i dettagli della dinamica di emergenza del modello “archetipo”. La metodologia usata, come vedremo, porta alla emergenza di quelli che Holland definì “schemi” e dai quali ricavò uno dei teoremi fondamentali degli algoritmi genetici. DINAMICA DEL MODELLO Il fitness per ogni agente è calcolato in funzione di due fattori: 1. Il punteggio riportato nelle relazioni con gli agenti del proprio vicinato il quale, a sua volta, dipende dalla struttura della Matrice di Payoff; 2. Il grado di somiglianza con un target o “agente virtuale” che emerge, ad ogni generazione, dal pool genetico globale. Il primo fattore non necessita di particolari spiegazioni. Per ogni generazione ad ogni agente vengono aggiunti o tolti dei punti di fitness in conseguenza del tipo di strategia che l’agente stesso attua con gli agenti del suo vicinato (se ve ne sono). Ogni specie infatti interagisce mettendo in atto una particolare strategia (cooperazione, defezione, rifiuto) la quale, in relazione alla strategia dell’altro e della tabella di payoff, comporta il guadagno o la perdita di punti.
  • 6. Per quanto riguarda la tabella di payoff il sistema, nei primi istanti o generazioni, prende come riferimento una tabella definita esternamente. In seguito, secondo leggi probabilistiche che non riporteremo in questa sezione, il clan (o i clan) “vincente” ha la possibilità di cambiare le regole di interazione a parziale vantaggio della propria specie. La tabella di payoff dunque non è fissa ma emerge ad ogni generazione come conseguenza delle dinamiche globali del sistema. Per quanto riguarda il secondo fattore, occorre innanzitutto definire la procedura attraverso la quale viene generato il prototipo dell’agente virtuale, o target. La sequenza genetica dell’agente target viene costruita nel modo seguente: Dal pool genetico della popolazione, per ogni posizione genetica o gene i, viene calcolata la frequenza cumulativa dell’occorrenza per il gene “1”. Indicando con str(j,i) il gene i-esimo del j-esimo agente, definiamo la funzione g(j,i) come segue: ∀ j,i ∈ Ν g(j,i) = 1 ⇔ str(j,i) = 1 La frequenza cumulativa della presenza del gene “1”, per ogni posizione genetica i, sarà allora: Np Np ∑ g ( j, i) ∀ j,i ∈ Ν → Gi = ∑ g ( j , i ) ⇒ Gi = j j Np con Np numero totale di agenti della popolazione, mentre la G i è media delle frequenze per ogni posizione i della sequenza genetica. Indichiamo ora con G e con σ g rispettivamente la media e la deviazione standard delle medie parziali calcolate sulle posizioni genetiche, cioè: ⎡ Ng ⎤ ⎢∑ G i ⎥ G= ⎣ ⎦ i per la media ; Ng ⎡ Ng ( )⎤ 2 ⎢∑ G − G i ⎥ ⎢ i ⎥ σg = ⎣ ⎦ per la deviazione standard, con Ng numero totale di geni per ogni agente. Ng
  • 7. Il modello target viene definito dalla funzione T(i) nel seguente modo: ∀ i ∈ Ν si ha: T(i) = 1 ⇔ ( Gi 〉 G + σ g ) T(i) = 0 ⇔ ( Gi 〈 G −σ g ) T(i) = # ⇔ (G − σ ) ≤g ( Gi ≤ G + σ g ) La funzione T(i) genera il vettore che definisce la sequenza genetica dell’agente target. Nel caso in cui 0 < i ≤ 10 tale sequenza avrà quindi la forma: 1 0 0 1 # 0 1 # 1 # Per individuare la funzione di fitness del sistema definiamo la funzione f(j,i): ∀ j,i ∈ Ν → f(j,i) = 1 ⇔ str(j,i) = T(i) ∀ j,i ∈ Ν → f(j,i) = 0 ⇔ str(j,i) ≠ T(i) con Ti ≠ # Se indichiamo con payoff il punteggio totale riportato nelle interazioni con gli agenti del vicinato, la funzione di fitness Fj per il j-esimo agente sarà dunque: ⎡ Ng ⎤ F j = ⎢∑ f ( j , i )⎥ ± payoff ⎣ i ⎦ dove Ng è il numero totale di geni che definiscono l’agente. Il fitness totale F della popolazione è dato dalla: ⎡ Np ⎤ F = ⎢∑ F j ⎥ ⎣ ji ⎦ I geni contrassegnati con “#” non contribuiscono al computo della fitness degli agenti e possono essere visti come i gradi di libertà del sistema globale. Poiché ad ogni generazione il pool genetico della popolazione può cambiare a causa degli operatori di mutazione e di crossover, ne consegue che il target stesso può cambiare dinamicamente.
  • 8. L’intero sistema è dunque definito in modo autopoietico, la dinamica che ne segue è caratterizzata dalla ricerca continua di equilibri resi instabili dalle perturbazioni continue dovute alle interazioni tra agenti, agli operatori di mutazione e crossover ed al cambiamento del modello di target che emerge dal pool genetico. Siano F*j ed Fj i punteggi di fitness di due generici agenti, F e σ rispettivamente la media e la deviazione standard del fitness della popolazione, il crossover tra i due agenti viene effettuato se, e solo se, sono rispettate le condizioni: F*j > ( F - σ ) Fj > (F - σ ) Questo criterio di attuazione per l’operatore di crossover permette di mantenere alta la biodiversità interna al sistema e di massimizzare il fitness della popolazione evitando situazioni di “massimi locali”. Tra le diverse misurazioni effettuate (dimensione di complessità della funzione di fitness ecc..) vengono calcolati il fitness medio per ogni specie, il fitness medio della popolazione ed i rispettivi valori di deviazione standard. I criteri di selezione e di accoppiamento tra gli agenti sono definiti rispetto a questi indicatori. Le nascite degli individui che andranno a sostituire gli agenti "deceduti" sono realizzate utilizzando il classico meccanismo di crossover sui codici genetici delle coppie. Il punto di crossover, per ogni coppia, è definito randomicamente. In questa versione non sono stati impiegati punti multipli per il crossover. Ad ogni generazione, a causa delle morti, delle mutazioni e della nascita di nuovi individui, il pool genico cambia nella sua configurazione globale. Il target o archetipo emergente muterà quindi in modo dinamico ed autoreferenziale (autopoietico), costringendo l'intero sistema a cercare una nuova strategia di adattamento e di selezione (nuovi creodi, nuove morfologie di equilibrio instabile ).
  • 9. La maggior parte dei modelli ad algoritmi genetici fino ad oggi impiegati per questo tipo di simulazioni hanno impiegato un criterio di accoppiamento tra agenti che prende in considerazione solo gli individui il cui fitness è superiore di un qualche delta rispetto alla media. In sostanza vengono ammessi all’accoppiamento solo gli individui considerati “migliori”. Questo criterio permette, in genere, di raggiungere livelli di ottimizzazione della fitness globale piuttosto buoni. Tuttavia è facile notare che il livello di ottimalità raggiunto non è quasi mai il massimo consentito teoricamente, in realtà si resta spesso piuttosto al di sotto. La “biodiversità” del pool genetico inoltre viene notevolmente ridotta nel tempo, con tutto quello che questo implica in funzione del significato portato da ciascun “gene”. Il criterio di accoppiamento impiegato in GenAgents è completamente diverso. Non viene impedito agli agenti “migliori” (anche di clan diversi) di accoppiarsi, questo tuttavia non è un vincolo per il sistema. Qualsiasi agente con un fitness di energia superiore di un qualche delta al minimo assoluto (in genere 1/2 della deviazione standard) può accoppiarsi con qualsiasi altro agente. Questo criterio aumenta di molto la biodiversità nel tempo e permette, nonostante minimi locali temporanei, di realizzare livelli di fitness globale della popolazione decisamente superiori con punte che arrivano a toccare il massimo teorico possibile con diverse configurazioni ed equilibri tra i clan in gioco. Questo criterio consente un aumento considerevole della biodiversità nel tempo e permette, nonostante minimi locali temporanei, di realizzare livelli di fitness globale decisamente superiori con punte che arrivano a toccare il massimo teorico possibile. Di seguito è riportato un grafico della evoluzione della biodiversità nel corso di una simulazione, si consideri che 0.25 è il valore massimo possibile (1/4) per la biodiversità del sistema.
  • 10. La tabella di regole scelta per l'assegnazione dei punteggi nelle interazioni (le regole sociali iniziali del sistema) muta in funzione delle dinamiche emergenti nel sistema. In estrema sintesi, il clan “vincente” ha la possibilità di cambiare le regole sociali di partenza secondo un modello probabilistico che, per brevità, non espongo in questo articolo. In sostanza, il principio che guida tutto il progetto è quello di lasciar emergere i comportamenti dal basso senza specificare ad alto livello particolari vincoli, cercare l’emergenza di comportamenti organizzativi in popolazioni di agenti semplici guidati da vincoli locali e non globali, focalizzare l’attenzione sulle dinamiche più che sugli stati di equilibrio realizzati dal sistema nel corso delle generazioni. In accordo alle osservazioni di Holland secondo cui “i sistemi viventi non si stabilizzano mai”, la dinamica di GenAgents è quella tipica dei sistemi autopoietici, continuamente perturbati e guidati da creodi e substrati evolutivi alla ricerca di stati stabili, per un qualche dt diverso da zero, dai quali dipende l'identità stessa del sistema. Ci sono diverse ipotesi sulle quali sto lavorando circa le dinamiche che permettono il passaggio a diversi ordinamenti sociali più o meno cooperativi. L’idea principale, in parte confermata dalle analisi delle dinamiche del sistema, è che si ha un passaggio a nuovo ordinamento come risposta del sistema a configurazioni globali con un elevato indice di complessità (dimensione frattale). In modo un po’ schematico la situazione è la seguente: 1. ogni sistema in natura mantiene la sua identità globale (ciò che permette di vederlo come sistema stabile nel tempo) fin tanto che è in grado di contenere il livello di entropia interna (complessità) entro fluttuazioni che non lo costringono alla scissione, cioè a rinunciare alla sua identità; 2. se la complessità aumenta oltre limite e la scissione non è possibile a causa di vincoli strutturali e/o culturali (pensiamo ad un organismo o ad un nucleo famigliare ad es.),
  • 11. quando le fluttuazioni di entropia (complessità interna) superano i livelli di stabilità, il sistema è costretto a realizzare dinamiche in grado di ridurre il grado di complessità (entropia) globale; 3. le dinamiche in questione possono essere sostanzialmente raggruppate in due tipologie: • quella che prevede l’ipersemplificazione attraverso la virtualizzazione delle differenze interne al sistema • quella che prevede l’aumento della connessione e della comunicazione interna tra i subsistemi emergenti allo scopo di aumentare il grado di organizzazione strutturale e permettere l’integrazione, in un unico sistema, di diverse parti, ciascuna con le sue differenze interne e la propria complessità. Sarebbe troppo lungo qui discutere quali forme sociali e/o fisiche possono emergere da ciascuna delle due tipologie dinamiche. Basterà accennare alle dinamiche di auto ed etero distruzione nella prima tipologia (in generale tutti i progetti a basso costo energetico di costruzione e conferma di una identità a spese di un’altra) e a quelle della organizzazione culturale e biologica nel secondo tipo di dinamiche (in generale tutti i fenomeni di nascita di nuove morfologie biologiche e culturali, come accade nella fecondazione di un ovulo o nella nascita di un nuovo modo di fare e vivere la cultura, nei rapporti affettivi ecc…). In GenAgents è possibile osservare questa danza tra i due attrattori del sistema (aumento della complessità interna – impossibilità alla scissione) nella emergenza di nuovi “ordini sociali” e nuovi “archetipi”, nella sincronizzazione dei movimenti degli agenti che migrano in massa in zone diverse del loro spazio di interazione (virtualizzazione delle differenze interne rispetto al movimento) o nella emergenza di comportamenti ora cooperativi, ora competitivi, altre volte coordinativi ecc… Le dinamiche di transizione (o di emergenza) tra diversi tipi di strategie di interazione sono ancora oggetto di studio ma si può dire che, tra le diverse dinamiche osservate, forse la più evidente è quella riportata dalla seguente mappa:
  • 12. In sostanza, se i comportamenti di defezione crescono, l'unico modo di fronteggiare la situazione è quello di passare a comportamenti di discriminazione, cioè non cooperare con chiunque ma solo con quegli agenti che hanno avuto un comportamento di cooperazione. Questa strategia, qui definita in modo semplice ma in realtà più complessa nella simulazione, è esattamente quella assunta dagli agenti discriminatori, una sorta di "guerriglieri", sono loro che combattendo contro il clan dei defezionatori fanno emergere nel tempo comportamenti e leggi sociali di cooperazione. Un'ulteriore elemento di perturbazione è dato dal meccanismo di mutazione genetica che, ad ogni generazione ed in funzione di alcuni parametri, porta alla mutazione una piccola percentuale di individui. L'entità delle mutazioni, ed altre dimensioni critiche del sistema, sono definibili direttamente dallo sperimentatore attraverso alcuni tasti funzione che agiscono su alcune caratteristiche del sistema durante la simulazione stessa (vedi la lista dei tasti funzione nel Menù principale del programma). Sia il range di mutazione sul codice che la probabilità di mutazione possono essere cambiate durante la simulazione attraverso alcuni tasti funzione (frecce del tastierino numerico). Sto elaborando una versione di GenAgents nella quale alcuni parametri che regolano l'entità delle mutazioni sono a loro volta funzioni di altri parametri del sistema quali, ad esempio, il fitness della popolazione. I tipi di famiglie implementati in questa versione sono: DEFEZIONATORE: Defeziona sistematicamente. Molto efficiente nei sistemi di regole che premiano il comportamento legato ad un tipo di logica individualista esasperata. COOPERATORE:
  • 13. È definito da regole di comportamento che iterativamente lo portano ad adottare rigidamente relazioni di tipo cooperativo. DISCRIMINATORE: Agisce discriminando. Controlla il codice genetico nella posizione che codifica l'ultima scelta relazionale effettuata dall'agente che incontra. Quindi Coopera con chi ha cooperato o Defeziona con chi ha defezionato. CONFORMISTA: Esplicita il suo comportamento relazionale sulla base di un sistema di regole che individuano una strategia conservativa confrontando risultati, strategie e modelli emergenti dell'ultimo incontro. Se ha guadagnato di più e le “condizioni sociali” non sono mutate allora nel ciclo successivo ripeterà la scelta relazionale fatta. Se invece ha perso nel ciclo successivo effettuerà la scelta relazionale opposta a quella fatta precedentemente. In sostanza è un operatore rinforzato positivamente a vincere, a prescindere dalla strategia considerata “eticamente” corrett. Dal menù principale si puo accedere alla lista delle tabelle disponibili, agli ambienti di caricamento e di definizione di nuove tabelle e ad una definizione dei tasti funzione attivi durante la simulazione.
  • 14. Qualora si voglia dimensionare il sistema secondo parametri personali lo si può fare scegliendo l'opzione Dimensiona Sistema del Menù principale. Questa opzione permette di definire la numerosità della popolazione globale, la lunghezza del codice genetico, la presenza o l'assenza di vincoli per i modelli emergenti (liberi o a dinamica emergente) e la logica di accoppiamento tra individui che può essere specie-specifica (accoppiamento solo tra individui della stessa specie) oppure tra specie (accoppiamento tra individui di specie diverse). Si possono anche definire due parametri che ho definito di Dispersione e di Decadimento. Impostati entro un range di valori tra 0 e 1 rendono il sistema più o meno hamiltoniano (o conservativo). Il primo parametro stabilisce quanta energia, in termini di fitness perso, occorre per muoversi nell'ambiente, il secondo parametro definisce invece una costante di decadimento temporale che agisce su ogni individuo anche se non si muove (in GenAgents si invecchia e muoversi richiede energia). Conviene impostare il primo a valori non superiori a 0.5, ed il secondo a valori non superiori a 0.05. Si può rendere il sistema hamiltoniano (o conservativo) impostando a zero i due fattori di decadimento (non si invecchia e non ci si stanca: troppo bello per essere vero!).
  • 15. Se un agente vuole spostarsi nella posizione occupata da un altro agente questo è possibile solo se la sua energia (fitness) è superiore di un certo delta (1/2 della deviazione standard ad esempio) a quella dell’agente “bersaglio”. Dall’operatore di mutazione è escluso il quarto gene, quello cioè che codifica l'immagine dell'individuo (ultima azione compiuta). Questo significa che in GenAgents si può mutare identità ma non si può mascherare o cancellare il proprio passato prossimo … insomma una specie di “legge karmica” virtuale. Durante la simulazione alcuni grafici e finestre di stato permettono di avere informazioni utili sulle dinamiche emergenti: la complessità del sistema globale (dimensione frattale del segnale di fitness); la condizione di "salute" di ogni famiglia; la coesione spaziale; i modelli di relazione e di famiglia emergenti ecc... Un riquadro in basso a destra permette di osservare gli spostamenti e le diverse configurazioni spaziali che possono formarsi nel corso delle generazioni. In questo riquadro è interessante notare le diverse configurazioni a reticolo che si sviluppano nel tempo e l’emergenza di dinamiche di intrusione, invasione, inclusione ecc… Un pulsante nella form principale consente di aprire due file nei quali verranno memorizzate le matrici di dati relative a diverse variabili del sistema (numero di individui per ogni famiglia ad ogni generazione, fitness globale e di ogni specie, dimensione di complessità del sistema ecc...). Premendo di nuovo lo stesso pulsante si blocca la registrazione e si chiudono i file (la simulazione, naturalmente, continua). Riporto di seguito una tipica schermata del sistema:
  • 16. Poiché i file salvati vengono numerati, è possibile salvare diverse sessioni di dati durante una stessa simulazione. Questi files potranno essere utilizzati per diversi tipi di analisi dei dati o per graficare l'evoluzione del sistema durante le generazioni considerate. Se non si intende dimensionare un proprio ambiente di simulazione, si può lanciare dal menù principale il sistema di default predefinito. Se non è possibile effettuare le sperimentazioni su un PC abbastanza veloce è consigliabile ridurre la numerosità della popolazione, e non superare un’ampiezza di 10 per la lunghezza del gene. Per qualsiasi altra informazione o per osservazioni da fare puoi mandarmi dei messaggi via e-mail, saranno graditi. Gino Martorelli vertigo@learning-path.it - Appendice - Sistemi Autopoietici Breve introduzione
  • 17. Un sistema vivente, considerato come una unità, può essere visto come un tutto analizzabile, dotato di proprietà costitutive, oppure come un sistema complesso. In quest'ultimo caso il sistema realizza la propria unità attraverso i suoi componenti e le reciproche relazioni tra di essi. La teoria sui sistemi autopoietici, per opera di F.G. Varela e H.R. Maturana, nasce come il tentativo di costruzione di un modello in grado di rendere conto della organizzazione comune che tutti i sistemi devono presentare per essere riconosciuti come unita "viventi". Nella loro teoria gli autori sostengono che la riproduzione e la evoluzione non rappresentano delle caratteristiche costitutive della organizzazione vivente. Essi ritengono inoltre che non si può rendere conto delle proprietà di un'unità vivente limitandosi a spiegare le proprietà dei suoi componenti. Nei sistemi autopoietici l'organizzazione vivente viene dunque caratterizzata specificando la rete di interazioni, o relazioni, tra i componenti che costituiscono il sistema come una unità. Più che sulle proprietà l'accento viene spostato sulla organizzazione relazionale, necessaria e sufficiente, per caratterizzare un sistema come una unità vivente. La comunicazione tra le unità costitutive si struttura qui come un processo di negoziazione di identità e topologie. Possiamo individuare tre fondamentali tipi di relazioni che, strutturando in vario modo lo spazio di esistenza dei componenti, caratterizzano l'autopoiesi del sistema: • Relazioni Costitutive; • Relazioni di Specificità; • Relazioni d'Ordine. Qeste relazioni, strutturate secondo caratteristiche di dinamica, di topologia e di identità, ci permettono di studiare i sistemi autopoietici nell'ambito dei sistemi dinamici complessi a logica differenziale: RELAZIONI COSTITUTIVE RELAZIONI DI SPECIFICITÀ RELAZIONI D'ORDINE TOPOLOGIA Limiti fisici dell'Autopoiesi Substrato di Esistenza Potenziali di Esistenza IDENTITÀ Emergenza di Strutture Proprietà dei componenti Evento-Emergenza DINAMICA Interazioni tra componenti Funzione dei Componenti Processi Un sistema autopoietico costituisce una unità fin quando può compensare dinamicamente le perturbazioni che tendono a ristrutturare i suoi Creodi, potenziali di esistenza e di organizzazione dei suoi componenti. Come conseguenza si ha che più sistemi autopoietici possono interagire tra loro, senza perdere le rispettive identità, se e solo se le modalità attraverso le quali realizzano la loro autonomia costituiscono delle perturbazioni compensabili.
  • 18. Quando i cambiamenti subiti da un sistema autopoietico lo portano a partecipare alla realizzazione di un altro sistema, il primo diventa componente del secondo. In questo modo si possono avere diversi ordini di autopoiesi. Un esempio concreto in biololgia si ha con la evoluzione del sistema nervoso nei sistemi viventi. Da un punto di vista fenomenologico l'autopoiesi di un sistema si evidenzia attraverso la sua autonomia, mentre la realizzazione o l'autoriproduzione dell'organizzazione autopoietica è il prodotto stesso della sua organizzazione. Sistemi diversi rispetto alla natura dei loro componenti possono presentare la medesima organizzazione e, rispetto ad essa, possono quindi essere considerati membri della stessa classe. Nei sistemi allopoietici, contrariamente a quanto accade nell'autopoiesi, l'organizzazione è tale che in essi non vi è produzione di componenti e di processi che li realizzano come unità, si può dire cioè che i processi che determinano la realizzazione di un sistema allopoietico non fanno parte della sua organizzazione. In questi sistemi meccanicistici il prodotto del loro funzionamento è sempre qualcosa di diverso dall'identità ed unità del sistema. Si può notare che, in quanto fenomeno emergente, un sistema autopoietico non si realizza in modo lineare, sequenziale o graduale. Esso piuttosto prende forma attraverso la relazione parallela e sincrona dei suoi componenti, nonché attraverso la loro organizzazione topologica.