ANT
ALLINEAMENTO
 

L'allineamento con la direzione stimata

Tratterò qui del confronto delle matrici di rappresentazione visiva, reale e dell'homing, e di come sia possibile ricavare da tale confronto l'attivazione reciproca dei motoneuroni (SISTEMA MOTORIO) perchè ANT si allinei con la direzione attesa.

Il confronto delle matrici relative alla DIREZIONE PERCEPITA e dell'HOMING, infatti, si deve tradurre in componenti motorie (SISTEMA MOTORIO), ovvero in un'attivazione dei motoneuroni che faccia muovere l'agente in modo coerente rispetto a tale confronto.

Figura 1. Esempi di rotazione del sistema di riferimento x per allineare la direzione reale (linea continua) con quella attesa (linea tratteggiata).

Analizziamo il problema dal punto di vista formale e consideriamo la figura 1. Allineare la percezione attuale L a quella virtuale A, significa ruotare il sistema di riferimento x di un angolo pari all'angolo formato dalle due direzioni, nel senso opposto a quello di tale angolo (M). In questo modo, nel nuovo sistema di riferimento ruotato x', la percezione reale coincide con quella virtuale nel vecchio sistema di riferimento x.
Se consideriamo il sistema di riferimento x della figura 1 come il sistema di riferimento egocentrico del nostro agente adattivo, possiamo dire che data la percezione reale attuale (matrice binoculare) e quella attesa virtuale (matrice di homing), l'agente deve compiere un movimento che lo faccia ruotare di un angolo pari a quello formato dalle due direzioni percepite. Il senso del movimento sarà quello contrario al verso dell'angolo, orientato dalla direzione reale a quella virtuale, come in figura 1.

Figura 2. Analogia fra la matrice binoculare Bi ed il sistema motorio Mot. d: direzione della luce. d': spostamento dell'agente. sx, dx: componenti "destra" e "sinistra" della matrice binoculare la cui attivazione in relazione ad una direzione della fonte di luce d, è analogica all'attivazione dei neuroni rispettivamente della fila sinistra sx' e destra dx' del pattern motorio in relazione ad un movimento nella stessa direzione della luce, rispetto al sistema di riferimento egocentrico x.

Confronto e determinazione delle componenti motorie

Prima di tutto è necessario trovare un modo di coordinare la percezione visiva con l'attività dei motoneuroni. Osserviamo la figura 2. I tre riquadri mostrano l'analogia fra la matrice binoculare relativa ad una direzione e il pattern motorio. In particolare fra le componenti "destra" (dx) e "sinistra" (sx) di tale matrice le file di motoneuroni sinistra (sx') e destra (dx').
L'analogia è ancora più stretta se si pensa alla definizione dello spostamento in relazione all'attivazione dei motoneuroni di una fila rispetto all'altra: lo spostamento è massimo (90 gradi) quando i motoneuroni di una fila assumono valore uno e quelli dell'altra zero. Come si ricorderà anche la matrice binoculare ha la massima attivazione nella bolla relativa ad una delle direzioni cardinali, quando la fonte di luce proviene da una di queste direzioni, ed il valore di tale attivazione è proprio uno. Si può generalizzare affermando che all'attivazione delle componenti "destra" (dx) e "sinistra" (sx) della matrice binoculare relative ad una determinata direzione d della fonte di luce rispetto al sistema di riferimento egocentrico x, corrisponde rispettivamente un'attivazione della fila sinistra (sx') e destra (dx') del pattern dei motoneuroni, relativa ad un movimento d' nella stessa direzione di d.

Figura 3. Sommando la matrice binoculare Bi, relativa alla direzione della luce attuale così come è percepita, alla matrice dell'homing Mh (attesa) si ottiene una matrice, le cui componenti "destra" (dx) e "sinistra" (sx) sono informative per quello che riguarda il movimento da mettere in atto per allineare L (reale) ad A (attesa).

In effetti, se si considera il discorso speculare, ad un determinato movimento dell'agente in una direzione corrisponde uno spostamento della fonte di luce in senso opposto, rispetto al sistema di riferimento egocentrico, dato che abbiamo supposto che la sua proiezione sul piano dell'azimut sia fissa. Lo spostamento della direzione della luce rispetto al sistema di riferimento egocentrico è sicuramente coerente con lo spostamento e questo si rifletterà direttamente, in maniera topologica, sulla matrice binoculare.
Abbiamo quindi trovato gli indici che ci servivano: il collegamento fra sistema motorio e sistema visivo sta proprio nell'analogia fra le componenti dx e sx della matrice binoculare e quelle sx' e dx' del sistema motorio (figura 2).
Consideriamo ora la figura 3. Essa illustra la situazione del riquadro a della figura 1, dal punto di vista della matrice binoculare (Bi) e dell'homing (Mh). Si osservi come, in tale condizione, sommando le due matrici e trasferendo successivamente l'attivazione delle componenti "destra" e "sinistra" della matrice risultante rispettivamente sulla fila destra e sinistra dei motoneuroni del sistema motorio Mot, si determina uno spostamento m coerente con l'allineamento della percezione reale L e attesa A, ovvero nella stessa direzione di A rispetto a L, ma in senso opposto. In questo modo lo spostamento m fa in modo di avvicinare la percezione reale della direzione della luce con quella che si dovrebbe avere (attesa). In questo caso, qualsiasi sia la direzione attesa, il pattern motorio si ottiene sommando le due matrici binoculare e dell'homing e trasferendo l'attivazione delle componenti "destra" e "sinistra" della matrice ottenuta, che da ora innanzi chiameremo matrice visuo-motoria, sulle file dei motoneuroni, nel modo descritto sopra.

Figura 4. Riquadro a: situazione che richiede un movimento a sinistra, come in realtà avviene. Riquadro b: situazione che richiederebbe un movimento a destra per allineare L ad A. Invece il movimento dedotto dalle componenti "destra"-"sinistra" della matrice visuo-motoria è lo stesso nei due casi: il caso del riquadro b richiedeva un movimento opposto rispetto a quello del riquadro a.

Le cose cambiano se la percezione attuale della direzione della fonte di luce non è allineata con la x del sistema di riferimento egocentrico, come abbiamo visto sopra. In quel caso, infatti, non è possibile contare sulle componenti "destra" e "sinistra" della matrice visuo-motoria per ottenere un pattern motorio coerente con lo spostamento giusto per allineare la percezione attuale con quella attesa.
Per verificare questo fatto basta osservare la figura 4. Il riquadro a e quello b mostrano due situazioni che richiederebbero movimenti m opposti, in quanto nel primo caso l'angolo fra la direzione della luce attuale e quella attesa è orientato in un senso, nell'altro caso è orientato nel senso opposto. Pertanto l'unica condizione in cui si può valutare il movimento da mettere in atto in base alle componenti "destra"-"sinistra" della matrice visuo-motoria, date le due direzioni da allineare, è quella di figura 3 o di figura 1 riquadro a, in cui la direzione della percezione reale attuale coincide con la x del sistema di riferimento egocentrico, mentre quella attesa è una qualsiasi delle altre direzioni. In effetti in questa situazione sarebbe la matrice dell'homing ad "imporre" le sue componenti, in quanto quelle "destra"-"sinistra" della matrice binoculare sono uguali, essendo la direzione reale della luce "avanti".
Se la percezione attesa è a sinistra, per esempio, viene maggiormente eccitata la fila di sinistra del pattern motorio e si ha un movimento verso destra; il movimento verso destra fa si che la percezione attuale si sposti più a sinistra, nella direzione di quella attesa. Il movimento di spostamento prodotto dall'agente, infatti, ha l'effetto di ruotare il sistema di riferimento egocentrico in modo che la direzione della luce reale venga a coincidere con quella attesa, rispetto a tale sistema di riferimento.
Il modulo di allineamento deve far in modo di ruotare la matrice binoculare in modo che, per qualsiasi direzione della luce attuale, la matrice di confronto per determinare le componenti motorie sia orientata come se la direzione fosse "avanti", o zero gradi, rispetto al sistema di riferimento egocentrico. Deve anche fare in modo che la matrice di homing sia ruotata dello stesso grado, in modo che l'angolo fra le due direzioni rimanga lo stesso.
Per questo scopo è stata progettata una rete neurale ad hoc che verrà incapsulata anch'essa nel modulo dell'allineamento. Il funzionamento di tale rete verrà ora analizzato nel dettaglio.

Figura 5. Schema della rete neurale di rotazione della matrice di ingresso (In) in base all'esempio (Ex). Il confronto In-Ex determina i pesi di WR in modo tale che, fornendo a tale rete in input la matrice di ingresso, essa computa una matrice coerente con l'esempio Ex.

La rete neurale visuo-motoria

Consideriamo il problema: dobbiamo fare in modo che una matrice sia ruotata in modo da coincidere con quella relativa alla direzione "avanti", ed un'altra matrice, diversa dalla prima, deve essere ruotata dello stesso grado. L'uso di una rete neurale appare quanto mai opportuno. Basterebbe, infatti, calcolare i pesi di rotazione della prima matrice e poi processare la seconda con la stessa rete. Il problema sembra quindi ridotto alla realizzazione di una rete che ruoti una matrice in modo da coincidere con una di direzione standard.
Per fare ciò c'è bisogno di un esempio, un modello preesistente della matrice con la direzione standard in modo che possa avvenire il confronto con quella da processare. La figura 5 illustra tale concetto: la matrice in ingresso In viene confrontata con la matrice di esempio Ex; da tale confronto risulta una determinata matrice dei pesi WR che, partendo dalla matrice in ingresso, computa una matrice di output Out coerente con l'esempio.
Assumere che vi sia una matrice residente, quella che abbiamo chiamato matrice di esempio, con un'attivazione statica e sempre uguale può essere visto come una deroga all'assunto della memoria locale. In effetti, come già sottolineato nel capitolo primo, nel distinguere memoria locale, memoria a lungo termine si è fatto riferimento alle componenti dinamiche. In altre parole la memoria a lungo termine che non implementiamo nel nostro sistema è quella "riscrivibile", il cui contenuto può variare. La matrice di esempio può essere considerata come un pattern di attivazione statico, così come i pesi delle connessioni dei moduli descritti fino ad ora.

Figura 6. Esempio di rotazione della matrice binoculare Bi in base a quella di esempio Ex. Riquadro a: fase uno: determinazione del valore dei pesi. Riquadro b: fase due: trasferimento di tale valore ai pesi con indici proporzionali. La figura si riferisce al caso in cui sia maggiore di zero solo il peso w(3, 0). I pesi con gli indici ad esso proporzionali sono w(0,1), w(1,2) e w( 2,3) (riquadro b).

Scendiamo nei dettagli e andiamo a vedere come avviene il confronto fra la matrice di ingresso e quella di esempio per la determinazione dei pesi.
L'osservazione dei sistemi biologici, come sempre, ci viene in aiuto. Nel 1949 HEBB propose l'esistenza di particolari sinapsi, denominate in seguito sinapsi di Hebb. Il principio è quello per cui la forza della connessione aumenta se coincidono le attività dei neuroni connessi. Più formalmente , secondo la regola di Hebb, dati due neuroni i e j di attivazione ai ed aj rispettivamente, la forza della connessione wi,j è: wij = ai * aj
Supponiamo di avere fra la matrice di input, che sarà chiamata matrice di base, e la matrice di esempio uno strato totalmente connesso. Si considereranno 4 unità di input e 4 di esempio; ognuna di queste unità avrà l'attivazione della componente spaziale della matrice corrispondente. La matrice di esempio avrà la sola unità corrispondente alla componente spaziale "avanti" attivata, di valore uno. Si considerino i pesi delle connessioni fra le unità della matrice di base e l'unica unità attiva della matrice di esempio: tali pesi funzionano come le sinapsi di Hebb: se esiste un'attivazione sia del neurone di input, sia di quello di esempio tale peso assume il valore dell'attivazione del neurone di input moltiplicata per l'attivazione di quello di esempio. Se il neurone di esempio è attivato e quello di input no il valore del peso è zero.
In questo modo i pesi maggiori di zero sono quelli fra le componenti attive della matrice di input e quella attiva della matrice di esempio ed il valore di tali pesi è direttamente proporzionale all'attivazione dei neuroni implicati. Trasferendo il valore di tali pesi a quelli con indici proporzionali ad essi, si completa il processo.
Il procedimento è diviso sostanzialmente in due fasi. Consideriamo l'esempio di figura 6. Nella prima fase si confronta l'attivazione dei neuroni della matrice di base con l'attivazione del neurone attivo della matrice di esempio, in pratica i pesi delle connessioni fra i quattro neuroni della matrice di base con il neurone con indice 0 della matrice di esempio w(1, 0), w(2, 0), w(3, 0), w(0, 0) Secondo il principio di Hebb, la connessione attiva è quella che corrisponde a due neuroni entrambi attivati. Nell'esempio semplificato di figura 6 (riquadro a), secondo tale principio, l'unico peso attivo è w(3, 0), corrispondente alla connessione fra il neurone identificato con 3 sulla matrice di base Bi e il neurone 0 di quella di esempio Ex. Il valore del peso attivo è uguale al prodotto dell'attivazione dei due neuroni.
La seconda fase consiste nel trasferire l'attivazione dai pesi attivi agli altri pesi della rete in base al principio seguente: il valore di un peso attivo va anche a quelli il cui rapporto fra gli indici è lo stesso del peso di partenza. Nell'esempio di figura 6 il valore del peso w(3, 0) attivo nella prima fase viene trasferito ai pesi w(0, 1), w(1, 2) e w(2, 3) (figura 4.6 riquadro b). Come si può osservare essi si riferiscono sempre alla connessione di un neurone della matrice di base con il successivo, in termini di indice, della matrice di esempio.
Processando successivamente la matrice di input per mezzo delle connessioni così formate, si ha in output una matrice molto simile a quella di esempio, ma la cosa più importante è che processando una matrice diversa per mezzo della stessa rete, si ha in output una matrice ruotata dello stessa quantità della prima. La differenza di direzione che rappresentavano le due matrici prima e dopo il processamento è la stessa, ma ora una è orientata secondo la direzione standard di quella di esempio (figura 7). Le caratteristiche principali di questa rete, che per comodità verrà chiamata rete visuo-motoria, sono schematizzate nella scheda riassuntiva.

Figura 7. Il riquadro b illustra le stesse matrici del riquadro a processate dalla rete descritta nel testo. Si osservi che la differenza assoluta fra l'attivazione delle due matrici è la stessa.

Abbiamo trovato il modo per far si che tutte le possibili coppie di matrici binoculare e dell'homing siano confrontabili tra di loro, nel senso che il risultato di tale confronto sono le componenti motorie di un movimento coerente, che porti la percezione attuale a coincidere con quella attesa. Infatti le componenti motorie sono ottenute direttamente dalle componenti "destra" (90 gradi) e "sinistra" (-90 gradi) della matrice di homing ruotata in base alla rotazione della matrice binoculare rispetto alla matrice di esempio, come abbiamo visto sopra.

La figura 8 mostra lo schema globale dell'architettura del modulo di allineamento MA: esso riceve in ingresso la matrice binoculare Bi relativa alla direzione della fonte di luce attuale percepita e la matrice di homing Hom, relativa alla direzione attesa e restituisce le componenti motorie da applicare al pattern di motoneuroni Mot in modo che il movimento sia coerente con l'allineamento delle due matrici.
Riassumiamo il principio generale di funzionamento del modulo di allineamento, prestando attenzione alla figura 9. Il confronto fra la matrice binoculare Bi, relativa alla direzione della fonte di luce percepita rispetto al sistema di riferimento egocentrico, viene confrontata con la matrice di esempio Ex. Tale confronto permette di determinare i pesi di rotazione Pesi. Questi vengono trasferiti alla rete neurale WR, la quale processa la matrice di homing Hom ruotandola dello stesso grado della rotazione della matrice binoculare Bi rispetto alla matrice di esempio Ex. Le componenti "sinistra" (-90 gradi) e "destra" (90 gradi) della matrice di homing costituiscono le componenti per un movimento che porti la percezione attuale ad allinearsi con quella attesa.

Figura 9. Architettura del modulo di allineamento MA. Hom: matrice di homing. Bi: matrice binoculare. WR: rete neurale visuo-motoria. Conf: determinazione dei pesi di rotazione mediante confronto fra la matrice binoculare e quella di esempio Ex. Mot: pattern motorio.

A questo proposito si osservi che il valore delle componenti "destra" e "sinistra" non sono trasferibili direttamente su quelle del pattern motorio. Infatti il valore delle componenti è variabile a seconda della distanza, mentre quello delle file dei motoneuroni è zero da una parte e varia da zero ad uno dall'altra a seconda dell'orientamento dell'angolo di rotazione in ogni istante a prescindere dalla distanza. Per evitare che vi sia confusione fra i due formati è necessario quindi che le componenti computate dal modulo di allineamento si inibiscano reciprocamente. In tal modo quella minore sarà uguale a zero mentre quella maggiore sarà uguale alla differenza fra le due.

SCHEDA RIASSUNTIVA. La rete neurale visuo-motoria
La struttura di base è quella di una rete neurale ad uno strato, totalmente connessa, con 4 unità di input e 4 di output. Il principio di funzionamento di base si sviluppa sulle caratteristiche delle sinapsi di Hebb: quando l'attivazione del neurone presinaptico coincide con l'attivazione di quello postsinaptico, la forza della connessione è massima e, aggiungiamo noi, proporzionale all'attivazione dei due neuroni. Di seguito viene presentato l'algoritmo di apprendimento.
1
Si presenta in ingresso alla rete una matrice, che chiameremo matrice di base. L'attivazione di ogni componente spaziale della matrice verrà mappata su un neurone di input: in tal modo si avranno 4 neuroni in ingresso ini ognuno dei quali sta per una componente della matrice di input;
2
si confronta la matrice di base con un'altra matrice, che chiameremo di esempio. La matrice di esempio sarà anch'essa di 4 unità (2*2): ogni unità ex(j) sta per una componente spaziale. L'unica componente spaziale attiva, per definizione, è ex(j)=1;
3

si determinano i pesi w(i, 0) nel modo seguente: la dove l'attivazione del neurone della matrice di esempio coincide con quella del neurone della matrice di base, il peso è positivo ed ha valore proporzionale alle due attivazioni (regola di Hebb):

w(i, 0)=in(i) * ex(j)

se, invece, l'unità ini ha attivazione nulla, il peso sarà zero;

4
si trasferisce il valore dei pesi w(i, 0) a tutti gli altri pesi in modo da rispettare un principio: stessa attivazione a pesi con indici la cui differenza è equivalente. L'attivazione del peso w(0, 0) verrà propagata ai pesi w(1, 1), w(2, 2), w(3, 3), quella del peso w(1, 0) verrà propagata ai pesi w(2, 1), w(3, 2), w(0, 3), quella del peso w(2, 0) andrà propagata ai pesi w(3, 1), w(0, 2), w(1, 3) , quella del peso w(3, 0) andrà propagata ai pesi w(0, 1), w(1, 2), w(2, 3).
 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

   
© 2011 Emernet