ANT
EFFETTORI
   

Il sistema motorio e propriocettivo

L'agente adattivo ANT, come si è detto, si muove su un piano bidimensionale (quello che abbiamo chiamato il piano dell'azimut). Per muoversi in tale ambiente deve avere un sistema locomotore che gli permetta di compiere traiettorie rettilinee e curvilinee, per evitare ostacoli e raggiungere luoghi significativi, in altre parole, per essere attivamente coinvolto nel processo interattivo che si sviluppa con l'ambiente. Ancora una volta il sistema adattivo biologico ci viene in aiuto per poter definire strutturalmente il sistema locomotore. Osservando un organismo semplice, come una formica, si nota che essa ha sei zampe: tre da un lato del corpo e tre dall'altro. Il suo movimento dipende dall'attività di taluna di queste zampe ma, in generale, l'attività principale è quella sincrona delle tre zampe di un lato rispetto a quelle dell'altro. Semplificando, se l'attività delle tre zampe di destra è maggiore di quelle di sinistra, lo spostamento sarà a sinistra, mentre se l'attività delle tre zampe di sinistra è maggiore di quelle di destra lo spostamento sarà a destra; se l'attività delle tre zampe di un lato coincide con quella delle tre zampe dell'altro lato non ci sarà alcuno spostamento e l'agente si muoverà dritto avanti a sé. Il movimento sarebbe simile a quello di un trattore a cingoli, nel quale la differenza di velocità di rotazione di un cingolo rispetto all'altro determina gli spostamenti e le traiettorie. Questa versione notevolmente semplificata del movimento delle formiche, ci è estremamente utile per costruire un sistema effettore che consenta al nostro agente adattivo artificiale di muoversi nel suo ambiente.

Il sistema motorio

Figura 1. Sistema motorio. x: sistema di riferimento egocentrico. Mot: motoneuroni.

 

Il sistema motorio del nostro agente adattivo artificiale è costituito da una doppia fila di motoneuroni, tre per parte rispetto all'asse del corpo dell'agente (la x del sistema di riferimento egocentrico - figura 1): questi saranno i motoneuroni del sistema e la loro attività corrisponde all'attività degli organi effettori ad essi collegati. In realtà, dato che non ci occupiamo in questa ricerca di robots che si muovono in ambiente reale, ma solo di un agente che si muove in un ambiente simulato (per ora), si ometterà volontariamente la descrizione di tali organi effettori. Si assumerà che ad una maggiore attività del motoneurone corrisponda una maggiore attività dell'organo effettore corrispondente, sia esso un cingolo, una ruota o una zampa. Inoltre si considererà sempre l'attività dei motoneuroni riferita ad istanti equivalenti. In altre parole si considerano istanti discreti di tempo tutti equivalenti (t0...tn) e si valuta l'attività dei motoneuroni come riferita ad ogni istante. Questo ci consente di studiare il movimento dell'agente come distinto in due momenti separati: un tratto rettilineo, caratterizzato da uno spostamento lineare e una rotazione su sé stesso, caratterizzato da uno spostamento angolare. I due momenti sono riferiti ad istanti alternati in modo che vi sia un tratto rettilineo, uno spostamento, un'altro tratto rettilineo e così via. L'attivazione dei motoneuroni di destra è equivalente a quelli di sinistra nel tratto rettilineo, mentre in occasione dello spostamento, a seconda della direzione dello spostamento, una fila avrà attivazione zero e l'altra attivazione variabile in base all'entità dello spostamento. Infatti, essendo gli istanti equivalenti, nel tratto rettilineo l'attivazione dei motoneuroni è direttamente proporzionale alla velocità lineare, mentre nel momento dello spostamento l'attivazione dei motoneuroni della fila attiva è direttamente proporzionale alla velocità angolare.
Si stabilisce arbitrariamente che la velocità lineare possa essere di sei livelli, da zero a cinque, a seconda del valore dell'attivazione dei motoneuroni (da zero a cinque appunto) e che lo spostamento sia di 90 gradi al massimo, con il valore dei neuroni di una fila uguale ad uno e quelli dell'altra zero, a seconda della direzione, e sia di zero gradi quando tutti i motoneuroni hanno attivazione zero. Per motivi computazionali l'unità di spostamento minima è di 4,5 gradi: in questo modo l'agente può andare in 20 direzioni diverse a destra o a sinistra (0; 4,5; 9; 13,5; ... ; 90 gradi).
Una volta costruito un sistema con queste caratteristiche, basta far tendere gli istanti t a zero ed il comportamento mostrato è del tutto simile a quello osservato nei sistemi biologici come le formiche.
L'attivazione dei motoneuroni proviene direttamente dai moduli del sistema nei termini e nelle modalità che saranno esplicitati più avanti, quando si parlerà di tali moduli.

Il sistema propriocettivo

Il sistema propriocettivo permette al nostro agente adattivo di avere un feed-back del movimento che ha appena messo in atto. Tale feed-back deve essere analogico all'attivazione dei motoneuroni per quel che riguarda il tratto rettilineo, in modo da informare il sistema della velocità in quell'istante. Inoltre, durante lo spostamento, deve informare il sistema delle caratteristiche spaziali di tale spostamento. In questo modo il sistema adattivo ha la possibilità di utilizzare tale informazione sullo stato attuale in tempo reale. Le modalità di utilizzo di tale informazione saranno esplicitate in seguito.
Il sistema propriocettivo è così costituito: una copia dell'attivazione dei motoneuroni ritorna come ingresso al sistema adattivo. Il pattern di attivazione dei motoneuroni viene processato da una rete neurale di Kohonen (figura 2 Wp) precedentemente addestrata con i quattro pattern di attivazione di figura 2 P e mappato su una matrice di 16 (4*4) neuroni, che rappresentano l'output dell'elaborazione della rete neurale. Le caratteristiche della rete neurale di Kohonen e soprattutto la qualità topologica e la quantità analogica dell'informazione delle matrici di Kohonen fanno pensare che essa sia adeguata sia per mappare la velocità (l'attivazione dei motoneuroni), sia le caratteristiche spaziali dello spostamento (l'angolazione).

Figura 2. Pattern di addestramento per la rete neurale di Kohonen Wp. Gli elementi in nero hanno valore 1, quelli bianchi 0. d: direzioni cui si riferiscono i pattern in esame. x: sistema di riferimento egocentrico.

 

Le caratteristiche della matrice di Kohonen mantiene le aspettative. Consideriamo la figura 2. I neuroni del pattern di addestramento P1 hanno tutti valore di attivazione 1 e forma una bolla di attivazione sulla matrice K corrispondente (la parte nera) il cui valore è esattamente quello dei motoneuroni del pattern (in questo caso 1, ma se l'attivazione dei neuroni fosse stata 2, il valore della bolla di attivazione corrispondente sarebbe stato 2). In tal modo tale bolla è un'ottima informazione disponibile per il sistema adattivo: il feed-back della propria velocità istantanea.
Allo stesso modo le matrici di Kohonen mappano l'informazione spaziale in modo topologico. Osservando i pattern P2 e P3 della figura 2 si nota come la bolla di attivazione delle matrici K sono topologiche al cambiamento di direzione reale dell'agente dato quel pattern motorio (si ricorda che attivazione dei motoneuroni a destra equivale ad uno spostamento a sinistra e viceversa). Il valore delle bolle delle matrici corrispondenti a tali pattern è proporzionale all'angolo di spostamento. Questa volta il feed-back è relativo a tale angolo.

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

   
© 2011 Emernet