__________________________________________________________________________
6
Pur risultando evidentemente limitato dal punto di vista delle prestazioni, il metodo
più usato per il controllo delle traiettorie di un AGV in ambiente industriale si basa su
sistemi filoguidati: é ancora oggi un problema aperto la realizzazione di un sistema di
localizzazione economico e flessibile, punto essenziale per lo sviluppo di capacità di
navigazione intelligenti e per l’evoluzione della cooperazione tra più AGV autonomi.
Naturalmente un tale sistema di localizzazione non limiterebbe l’uso dei robot alla
sola industria: basta pensare a possibili impieghi di robot in ambienti pericolosi per
l’uomo (centrali nucleari), ospedali (robot-infermiere), musei (robot-cicerone),
aeroporti (robot-hostess), ecc.
Per affrontare queste situazioni è nata la teleoperazione che si occupa di studiare le
modalità e le possibili applicazioni del controllo remoto di agenti mobili. La
combinazione della teleoperazione e delle tecniche utilizzate per rendere i robot
autonomi e in grado di cooperare tra loro è indicata in genere col termine
telerobotica, e il corrispondente robot è chiamato telerobot .
I telerobot possono essere classificati in base al loro ambiente, alle dimensioni e al
compito. L’ambiente può essere terrestre (ad es. ricerca di mine, trasporto e
lavorazione di agenti tossici, sorveglianza, …), marino o sottomarino (ad es. ricerche
subacquee e mappature del fondale), aereo (ad es. ricognizione) o spaziale (ad es.
esplorazione o manutenzione). Le dimensioni possono variare dai micro-robot sino a
raggiungere strutture di grandi dimensioni. I task infine possono essere di tipo attivo
(ad es. assemblaggio) o passivo (ad. es. sorveglianza).
La diffusione di mezzi di trasmissione dati come la rete Internet, combinati alla
massiccia diffusione di satelliti per le telecomunicazioni, garantiscono la base ideale
per il diffondersi di queste nuove tecnologie su scala globale.
L’unico limite, allo stato attuale delle cose, è imposto dal costo ancora relativamente
alto delle flotte di robot mobili, elemento che costringe i ricercatori ad affidarsi ai
simulatori, almeno nelle prime fasi dello sviluppo di nuovi progetti.
Rimane comunque chiaro che nel futuro robot e uomini lavoreranno insieme in modo
armonioso. In tale sistema multi-agente ogni agente dovrà lavorare in modo
autonomo e dovrà essere in grado di cooperare con gli altri agenti per raggiungere il
proprio obiettivo e l’obiettivo dell’intero sistema.
__________________________________________________________________________
7
Capitolo 1
Brevi cenni sulla storia della Robotica Cooperativa
La robotica mobile cooperativa è la disciplina che si occupa di integrare singoli robot
in una società organizzata capace di raggiungere determinati obiettivi e di garantire il
suo funzionamento anche a fronte del danneggiamento di un singolo elemento del
gruppo [Fleisher, 1998].
L’uso di più robot può dare origine a situazioni complesse, ma ci sono molti
potenziali benefici nell’uso di questo sistema. Dudek ed altri [Dudek, 1996] hanno
dimostrato che ci sono compiti che richiedono l’uso di più agenti per essere svolti. Il
lavoro nel campo della cooperazione per la robotica è stata inizialmente divisa tra chi
sosteneva che il controllo dei robot si dovesse basare sulla Symbol System
Hypothesis, secondo cui qualunque tipo di attività intelligente deve necessariamente
appoggiarsi a una rappresentazione simbolica del mondo su cui opera [Nilsson,
1984], e chi credeva che la cosa migliore fosse usare un approccio reattivo, in cui
l’interazione tra diversi comportamenti, o behavior, desse origine a un
comportamento intelligente [Brooks, 1986].
Gli approcci reattivi [Lucarini, 1993; Stilwell, 1993; Doty, 1993; Mataric, 1995]
tendono a vedere gli agenti cooperativi come gruppi decentralizzati di omologhi; ogni
agente segue il suo programma reattivo, e l’intelligenza emerge dall’interazione tra i
singoli agenti. I sistemi reattivi sono molto attraenti per le loro doti di robustezza e
modularità [Mataric, 1995; Mataric, 1992; Stilwell, 1993]. I gruppi di agenti reattivi
cooperativi sono spesso indicati col nome di sciame [Lucarini, 1993; Stilwell, 1993;
Doty, 1993] per ricordare la società degli insetti sulla quale si basano.
Gli approcci simbolici alla cooperazione [Rosenschein, 1994; Ephrati, 1995;
Rosenschein,1993] usano strutture centralizzate o gerarchiche, nelle quali alcuni
agenti guidano gli altri al fine di raggiungere un certo obiettivo. Questi agenti usano
la programmazione logica e una rappresentazione esplicita del mondo per la
pianificazione dei compiti.
Entrambi i metodi hanno i loro difetti. Mentre da un lato i sistemi reattivi sono robusti
e modulari, dall’altro sono in genere inefficienti.
I sistemi simbolici, che in genere presentano una migliore predicibilità dei sistemi
reattivi e il cui comportamento a livello globale è più semplice da capire, hanno però
__________________________________________________________________________
8
molti problemi: non sono robusti e in genere non sono tolleranti ai guasti di un
membro del gruppo coinvolto nello svolgimento di un certo piano. Inoltre un compito
difficile può portare a una drastica riduzione delle prestazioni da parte del sistema
simbolico, anche per il sovraccarico dovuto alla pianificazione dei sotto-obiettivi da
assegnare ai singoli agenti, che può portare al deadlock [Rosenschein,1994; Mataric,
1995].
Tenuto conto di questi aspetti alcuni ricercatori hanno cercato di realizzare sistemi
ibridi in grado di racchiudere in sé gli aspetti positivi di entrambi i sistemi.
Edward Tunstel sottolinea i vantaggi di usare un comportamento reattivo per evitare
gli ostacoli durante la navigazione locale data la sua robustezza e i bassi tempi di
risposta necessari. Viene però anche messo in evidenza il fatto che i comportamenti di
un robot reattivo possono essere insufficienti per decidere quale strada seguire intorno
agli ostacoli. Per questo viene suggerito l’uso di una mappa e viene proposta
un’architettura software che sfrutta a livello più basso le tecniche proprie dei robot
reattivi e a livello più alto le caratteristiche proprie dei sistemi non reattivi, quali la
pianificazione del percorso e degli obiettivi. Altri ricercatori hanno riconosciuto la
praticità di integrare il ragionamento ad alto livello con il comportamento reattivo di
robot mobili al fine di generare mappe utili per la successiva pianificazione del
percorso e la navigazione [Connell, 1992; Miller, 1991; Bou-Ghannam, 1992 ;Lim,
1990].
In questo contesto si inserisce anche il lavoro di Lòpez de Màntaras ed altri
[Màntaras, 1998], i quali si sono impegnati nello sviluppo di robot mobili in grado di
esplorare un ambiente strutturato al fine di generarne una mappa. La loro ricerca ha
dimostrato la fattibilità e l’efficienza di una flotta di robot a basso costo capace di
svolgere un compito complesso e ha messo in risalto i vantaggi di questo approccio.
Innanzi tutto la capacità dei robot di sopperire all’eventuale guasto di uno di loro, e
soprattutto la riduzione del tempo complessivo per l’esecuzione del compito rispetto
all’uso di un singolo robot.
Veniamo ora ad analizzare un altro aspetto della cooperazione tra robot. I due più
importanti assi lungo i quali i sistemi cooperativi differiscono sono la comunicazione
e l’organizzazione. Per comunicazione si intende il metodo che i robot usano per
scambiarsi le informazioni; per organizzazione si intende il tipo di struttura utilizzato:
bottom-up o top-down [Asama, 1994; Gasser, 1989].
__________________________________________________________________________
9
Si parla di sistemi bottom-up quando il comportamento globale emerge
dall’interazione di molti agenti autonomi. Si parla di sistemi top-down quando il
comportamento globale è progettato dal programmatore e rigidamente rafforzato dalla
struttura complessiva del sistema.
Miller è stato tra i primi ad ipotizzare l’applicazione di più robot mobili per missioni
planetarie. In questo lavoro Miller asserisce che gruppi di più robot autonomi hanno
molti vantaggi, come il basso costo, piccole dimensioni, efficacia, rispetto a robot più
grandi. Miller ipotizza per questi robot un’architettura behavior, intravedendo la
necessità dell’uso di riferimenti radio fissi e della selezione di un leader per la
coordinazione del gruppo. Miller insieme ad altri [Arkin, 1993; Parker 1993]
intravide la necessità dell’uso della comunicazione tra i robot al fine di migliorare le
prestazioni del sistema complessivo.
__________________________________________________________________________
10
Capitolo 2
Concetti base
Diamo prima una breve introduzione su alcuni concetti che richiameremo più avanti:
2.1 Il robot industriale
Il robot industriale è costituito da:
-una struttura meccanica o manipolatore che consiste in una serie di corpi rigidi
(bracci) interconnessi tra loro per mezzo di articolazioni (giunti); nel manipolatore si
individuano la struttura portante , che ne assicura la mobilità ,un polso, che conferisce
destrezza , e un organo terminale che ne esegue il compito per cui il robot è utilizzato.
- attuatori che imprimono il movimento al manipolatore attraverso l’azionamento dei
giunti
- sensori che misurano lo stato del manipolatore (sensori propriocettivi) ed
eventualmente lo stato dell’ambiente (sensori esterocettivi)
- una unità di governo con funzioni di controllo e supervisione dei movimenti del
manipolatore.
Da un punto di vista topologico , la catena cinematica viene detta aperta quando vi è
una sola sequenza di bracci a connettere i due stremi della catena .In maniera
alternativa ,un manipolatore contiene una catena cinematica chiusa quando una
sequenza di bracci forma un anello.
La struttura meccanica di un manipolatore è caratterizzata da un numero di gradi di
mobilità che ne determinano la configurazione . Ogni grado di mobilità viene
tipicamente associato a un’articolazione di giunto e costituisce una variabile di
giunto.
__________________________________________________________________________
11
2.2 Cinematica diretta ed inversa
Obiettivo della cinematica diretta è la determinazione di posizione e orientamento
dell’organo terminale del manipolatore ,in funzione dei valori assunti delle variabili
di giunto. x =[p φ]
q = [q
1
,q
2
, ….q
n
]
L’equazione cinematica diretta può scriversi come: x = k(q).
Lo spazio in cui è definito il vettore x è quello rispetto al quale viene tipicamente
specificata l’operazione richiesta al manipolatore pertanto esso viene detto spazio
operativo.
Con spazio dei giunti (o spazio delle configurazioni), invece, ci si riferisce allo spazio
in cui è definito il vettore (n×1) delle variabili di giunto.
Lo spazio di lavoro di un manipolatore è la regione descritta dall’organo terminale
quando ai giunti de manipolatore vengono fatte assumere tutte le possibili
orientazioni .
Inoltre la funzione vettoriale (m×1) K(.) non lineare in generale permette il calcolo
delle variabili nello spazio operativo a partire dalla conoscenza delle variabili nello
spazio dei giunti.
Il problema cinematica inverso riguarda la determinazione delle variabili di giunto
una volta assegnati posizione ed orientazione dell’organo terminale,potremmo però
avere i seguenti problemi:
- le equazioni da risolvere sono in generale equazioni non lineari di cui non sempre è
possibile trovare una soluzione analitica
- si possono avere soluzioni multiple
- si possono avere infinite soluzioni
- possono non esistere soluzioni ammissibili