Sistemi per il Governo dei Robot
Silvia Rossi - Lezione 20
ARCHITETTURE IBRIDE
Motivating Example for Deliberation: USAR
• Worker places robot at entrance to unstable building, loads in
the floor plan, contextual
knowledge and tells robot to
look for survivors efficiently and map out safe routes for workers to pass through
• contextual knowledge includes probability of where people are more likely to be
WHAT CAN A REACTIVE ARCHITECTURE DO? WHAT CAN’T IT DO?
PATH PLANNING, HANDLING DETOURS DUE TO BLOCKAGE, MAP MAKING, LEARN FROM PAST RESCUES
Organization: Plan, Sense-Act
Perchè fare sistemi ibridi?
Abbiamo visto che i sistemi reattivi possono avere performance robuste in domini complessi e
dinamici.
Nel caso di sistemi puramente reattivi noi assumiamo che:
l'ambiente può perdere consistenza temporale e stabilità
il sistema sensoriale robotico è adeguato solo al compito specifico può essere difficile localizzare un robot rispetto ad un modello del mondo
la conoscenza simbolica rappresentativa del mondo non viene presa in considerazione
In alcune situazioni queste assunzioni possono non essere strettamente vere.
In situazioni dove il mondo può essere modellato
accuratamente, l'incertezza diminuisce e allora i metodi deliberativi sono preferiti.
In un mondo reale, in cui agiscono esseri viventi, le condizioni che favoriscono i pianificatori puramente deliberativi non esistono.
Per realizzare macchine che si comportano come un uomo o un animale sono necessari sistemi reattivi.
Molti ricercatori comunque ritengono che sistemi ibridi, capaci di incorporare ragionamento deliberativo e
comportamento basato su behavior, sono necessari.
I sistemi deliberativi usano la rappresentazione della conoscenza a scopi di pianificazione prima della esecuzione dell’azione.
Questa conoscenza potenzialmente interessante può assumere diverse forme:
comportamenti e strategie percettive possono essere rappresentate come moduli e progettate per corrispondere a diverse missioni e
ambienti, con una certa versatilità
una conoscenza a priori del mondo quando è disponibile e stabile può essere usata per configurare o riconfigurare i behavior efficientemente modelli del mondo acquisiti dinamicamente possono essere usati per prevenire certi fallimenti ai quali i metodi non rappresentazionali sono soggetti.
Le architetture ibride deliberativo-reattive combinano gli aspetti dei modelli simbolici della IA tradizionale con la robustezza e flessibilità dei sistemi puramente reattivi, mediante una rappresentazione della conoscenza
simbolica, mantenendo l'obiettivo di tempo utile.
Le architetture ibride permettono la riconfigurazione dei sistemi di controllo reattivi basata sulla conoscenza
disponibile del mondo attraverso la loro capacità di
ragionare sulle componenti comportamentali sottostanti.
La costruzione di tali sistemi ibridi, comunque, richiede dei compromessi tra i due estremi. Per altro la natura dei confini tra deliberazioni e esecuzione reattiva non è ancora ben chiara.
Evidenze neuro-psicologiche
Modelli di comportamento psicologici e neurologici danno una prova della esistenza di strategie che coinvolgono
elementi di ragionamento deliberativo e di controllo basati su comportamenti.
Così come molti psicologi si sono spostati dal behaviorismo alla psicologia cognitiva per fornire una descrizione
accettabile della elaborazione umana dell’informazione, anche le ricerche sull'uso dei sistemi ibridi hanno incluso molti concetti provenienti da questa scuola di pensiero.
Shiffrin e Schneider (1977) hanno indicato l'esistenza di due distinti modi di comportamento: volontario e automatico.
Norman e Shallice (1986) hanno modellato la coesistenza di due distinti sistemi concernenti il comportamento umano.
Il primo sistema modella il comportamento automatico ed è molto vicino ad un sistema reattivo. Questo sistema manipola l’esecuzione automatica dell’azione senza coscienza, parte senza l’attenzione, e consiste di attività multiple indipendenti e parallele (schemi).
Il secondo sistema controlla il comportamento volontario e fornisce una interfaccia tra il controllo cosciente e il sistema automatico. La figura mostra questo modello.
Questa ricerca ha caratterizzato i task che richiedono controllo volontario nell'uomo e coinvolgono risorse deliberative e di
attenzione quali:
pianificazione o decisione problemi e dubbi
azioni nuove o poco conosciute azioni pericolose o difficili
abitudini sopravvenute o tentazioni
Altri task sono tipicamente automatici e possono essere perseguiti senza far uso dell’attenzione.
Nello schema di Norman e Shallice (1986) le connessioni orizzontali possono tranquillamente essere comparate alla sussunzione.
L’aspetto deliberativo è introdotto laddove si hanno più behavior da eseguire e quindi è necessario realizzare una loro modulazione,
organizzazione o sincronizzazione, cioè una pianificazione.
MOTIVAZIONE ATTENZIONE
CONTROLLO COSCIENTE
CONTROLLO SUB-CONSCIO SISTEMA
PERCETTIVO SISTEMA
MOTORIO
MODULAZIONE ORGANIZZAZIONE SINCRONIZZAZIONE
Dalla fine del 1980 la tendenza in robotica è stata la progettazione con il paradigma reattivo. Questo paradigma permette al robot di operare in tempo utile usando processori senza memoria,
economici e disponibili sul mercato.
L’assenza di deliberazione significa che un robot potrebbe non pianificare una traiettoria ottimale, fare mappe, controllare il suo comportamento o ancora selezionare i comportamenti migliori da usare per eseguire un compito (pianificazione generale).
Si noti che non tutte queste funzioni coinvolgono la pianificazione per sè, fare mappe prevede la gestione di incertezze, mentre
controllare la performance (e di cosa fare in presenza di
performance degradate) coinvolge la soluzione di problemi e l'apprendimento.
Al fine di distinguere queste funzioni più cognitive della
pianificazione di un percorso, è stato coniato il termine deliberativo.
Il paradigma reattivo a volte non è accettato perché molte persone trovano che progettare comportamento o
comportamenti emergenti sia un'arte e non una scienza.
Le tecniche per ordinare o per assemblare behavior, per produrre un sistema capace di raggiungere una serie di sottogoal, è fortemente dipendente dal progettista.
Non potrebbero i robot essere tanto intelligenti da
selezionare i comportamenti necessari per un particolare compito e generare come dovrebbero essere eseguiti nel tempo?
La nuova sfida per la robotica IA agli inizi del 1990 è stata come introdurre la pianificazione e la deliberazione nei
robot senza perdere il vantaggio del controllo reattivo.
Si convenne che il controllo dei behavior era la strada corretta per realizzare i controlli di basso livello.
Nel 1988 Arkin iniziò a proporre di aggiungere più funzioni cognitive ai sistemi reattivi nel sistema
AURA (AUtonomous Robot Architecture).
Molti robotici cercarono di aggiungere strati più elevati e più funzioni cognitive ai loro sistemi
comportamentali emulando l'evoluzione dell'intelligenza.
Vedremo tre esempi di questo approccio: AURA, SFX, SAPHIRA.
Inizialmente l'ibrido fu visto come un artificio di ricerca, senza alcun interesse per le
implementazioni robotiche.
Fu allora raccomandato di progettare robot reattivi in ambienti non strutturati.
Per ambienti ben conosciuti si suggeriva il paradigma gerarchico.
Si riteneva che il paradigma ibrido fosse il
peggiore dei due perché rallentava i tempi di
esecuzione con grandi difficoltà per lo sviluppo del modello gerarchico.
Attualmente la comunità robotica ritiene che gli ibridi sono la migliore soluzione architetturale per molte ragioni.
Primo, l'uso di tecniche di elaborazione asincrona (multitasking) permette l'esecuzione di funzioni deliberative indipendentemente dal comportamento reattivo.
Un pianificatore può calcolare lentamente il prossimo goal mentre il robot naviga reattivamente verso il goal attuale ad una buona
velocità.
Secondo una buona modularità software permette che
sottosistemi o oggetti nelle architetture ibride vengano frammisti per applicazioni specifiche.
Applicazioni che favoriscono comportamenti puramente reattivi possono usare solo quel sottoinsieme di architetture reattive
necessarie, mentre problemi cognitivamente più importanti possono usare l'intera architettura.
Attributi del paradigma
L'organizzazione di un sistema ibrido deliberativo-reattivo può essere descritta come: plan, e sense-act.
Il box Plan include tutte le deliberazioni e il modello globale del mondo, non solo pianificazione di compiti o percorsi.
Il robot dovrebbe prima pianificare come eseguire una missione (usando il modello globale del mondo) o un
compito, e quindi instanziare o rivolgersi ad un insieme di comportamenti (sense-act) per eseguire il piano (o una
porzione del piano).
I comportamenti vengono eseguiti fin quando il piano non è completato. A questo punto il pianificatore dovrebbe rendere disponibile un nuovo insieme di comportamenti e così via.
L'idea del PLAN e poi SENS-ACT deriva da due ipotesi del paradigma ibrido.
Primo: la pianificazione copre un orizzonte di lungo tempo e richiede una conoscenza globale, pertanto, dovrebbe essere disaccoppiata dalla esecuzione in tempo reale secondo il principio di coerenza
dell'ingegneria del software (funzioni diverse dovrebbero essere poste in oggetti diversi).
Questa è una buona strategia per proporre obiettivi e selezionare metodi, ma non per prendere decisioni a grana fine.
Un'altra maniera di dire ciò è che la deliberazione lavora con i simboli cioè lo scopo è di prendere la lattina di coca cola, mentre la reazione lavora con i sensori e gli
attuatori, ad esempio il percetto è una macchia rossa che esercita un campo attrattivo.
Secondo: gli algoritmi di pianificazione e modellazione globale sono computazionalmente costosi, quindi dovrebbero essere disaccoppiati dalla esecuzione in tempo reale altrimenti rallenterebbero il tempo di reazione.
L'organizzazione dei sensori nelle architetture ibride è più complessa.
I behavior dei sensori rimangono come nel paradigma reattivo: locali e specifici del comportamento.
La pianificazione e la deliberazione richiedono modelli del mondo globale e quindi le funzioni di pianificazione hanno accesso a un modello globale del mondo.
Il modello è costruito da processi indipendenti dalle percezioni specifiche dei behavior.
Comunque, sia gli schemi percettivi per i behavior, sia per i processi di modellazione, possono condividere gli stessi sensori.
Inoltre i processi di modellazione possono condividere i percetti creati dagli schemi percettivi dei behavior
oppure possono avere sensori che sono destinati a fornire osservazioni per modellare il mondo ma non
sono usati per nessun behavior attivo (percetti virtuali).
Sensing Organization
DELIBERATIVE FUNCTIONS
*CAN “EAVESDROP”
*CAN HAVE THEIR OWN SENSORS
*HAVE OUTPUT WHICH LOOKS LIKE A SENSOR OUTPUT TO A BEHAVIOR
(VIRTUAL SENSOR)
Deliberation vs. Reaction as a function of TIME
• Past, Present, Future
• Reactive
–exists in the PRESENT (will a bit of duration)
• Deliberative
–can reason about the PAST –can project into the FUTURE
Connotazioni di globale
Il termine globale è usato come sinonimo di deliberativo mentre locale di reattivo.
Questo può portare a confusioni perché globale non è sempre veramente globale negli ibridi. La parte deliberativa di una architettura ibrida
contiene moduli e funzioni per cose che non sono facili da rapresentare nei behavior reattivi.
Alcune di queste funzioni richiedono chiaramente un modello del mondo globale:
pianificazione del percorso e realizzazione di mappe sono probabilmente gli esempi migliori.
Ma altre attività richiedono una conoscenza globale di natura differente. La gestione comportamentale
(stabilire quale behavior usare) richiede la conoscenza di qualche cosa circa la missione corrente o prevista e lo stato dell'ambiente.
Questa è conoscenza globale in quanto richiede che il modulo conosca qualche cosa fuori di sé, confrontato a un behavior reattivo che può funzionare senza sapere se vi sono altri behavior in esecuzione.
Analogamente controllare la performance per vedere se il robot sta facendo progressi per raggiungere il goal o la soluzione del problema, è una attività globale.
Si noti che un programma che controlla se il robot si muove in
avanti è un problema che riguarda il suolo e/o un sensore (per es.
gli shaft-encoders non ci dicono se le ruote girano correttamente).
Per fare la diagnosi, il programma deve sapere che cosa il behavior stava cercando di fare, e verificare se vi sono altri sensori o sorgenti di conoscenza che possono corroborare le ipotesi.
Quindi una funzione deliberativa può non avere bisogno di un modello globale del mondo ma può aver bisogno di stabilire lo stato interno del robot su una scala globale oppure stabilire con quali altri moduli o capacità deliberative il programma
dovrebbe interagire
Aspetti architetturali
Le varie architetture ibride deliberative-reattive si distinguono sulla base di come esse rispondono alle questioni seguenti:
Come fa l'architettura a distinguere fra reazione e deliberazione?
Come organizza le responsabilità nella parte deliberativa?
Come fa a far emergere il comportamento?
La differenza fra reazione e deliberazione è un problema critico per costruire una buona e riutilizzabile implementazione
orientata agli oggetti.
Questo determina quali funzionalità vanno in quale modulo,
quali moduli hanno accesso alla conoscenza globale (che porta a specificare classi public and friend in C++), in quale dovrebbe essere la conoscenza globale (strutture dati condivise).
Analogamente è importante suddividere la parte deliberativa in moduli o oggetti.
Una buona scomposizione assicura portabilità e riusabilità.
Mentre le architetture ibride sono ben note per come incorporano la deliberazione nei robot mobili, esse introducono anche alcuni cambiamenti nella maniera con cui è organizzata la reazione.
Molti ricercatori hanno trovato che le due principali maniere di
combinare i behavior reattivi, sussunzione e campi di potenziale, sono limitate.
Di qui almeno altri tre meccanismi sono stati introdotti:
voting (DAMN),
fuzzy logic (SAPHIRA), filtering (SFX).
Componenti comuni
Generalmente una architettura ibrida ha i seguenti moduli o oggetti:
Un agente Sequencer che genera insiemi di behavior da attivare per realizzare un subtask, determinando tutte le condizioni di sequenze di attivazione.
La sequenza è generalmente rappresentata come una rete di dipendenza o una macchina a stati
finiti, e il sequenziatore dovrebbe o generare questa struttura o essere capace di adattarla dinamicamente.
Un resource manager che distribuisce le risorse ai behavior inclusa la selezione delle librerie o schemi.
Per esempio un robot può avere visione stereo, sonar, sensori IR, i quali tutti sono capaci di rilevare distanze.
Il gestore di behavior dovrebbe accertare se i sensori IR possono rilevare ad una distanza sufficiente, la visione stereo può aggiornare abbastanza velocemente per
ottenere la velocità desiderata del robot, e i sonar hanno potenza sufficiente per produrre letture affidabili.
Nelle architetture reattive le risorse per un behavior sono spesso hard-coded/wired nonostante l’abilità dell'uomo ad usare in maniera alternativa i sensori e gli effettori
(aprire la porta con una mano piuttosto che con l'altra).
Un Cartographer che è responsabile della
creazione, memorizzazione e mantenimento di mappe o informazioni spaziali e in più di metodi per l'accesso ai dati. Il Cartographer spesso
contiene un modello globale del mondo e una
rappresentazione della conoscenza anche se non è una mappa.
Un Mission planner che interagisce con l'uomo, rende operativi i comandi del robot, e costruisce un piano della missione.
Ad esempio l'assistente robot ideale potrebbe ricevere un comando, "vai alla polizia". Il pianificatore di missione
dovrebbe interpretare questo comando in primo luogo in
termini di andare a cercare una persona, riconoscerla come un poliziotto dall'uniforme, attirare la sua attenzione e
quindi condurlo indietro al punto di partenza. Il pianificatore di missione dovrebbe avere accesso alle informazioni e
molto probabilmente sapere se il poliziotto è nel suo ufficio, al bar, oppure nell'ultimo posto dove lo ha visto.
Il piano deve essere elaborato prima di andare all'ufficio della polizia.
Un agente Performance Monitoring e Problem Solving che permette al robot di stabilire se sta facendo progressi oppure no.
Architectures: Key Questions
• How does the architecture distinguish between reaction and deliberation?
• How does it organize responsibilities in the deliberative portion?
• How does overall behavior emerge?
Architectures:
Common Functionality
• Mission planner – interacts with human, puts commands into robot terms, constructs mission
• Cartographer – creates, stores, maintains map or world model, knowledge;
• Sequencer agent – generates set of behaviors to use to accomplish task
• Behavioral/resource manager – allocates resources (schemas, etc.) to behaviors
• Performance monitor/problem solving agent (fairly rare)
Stili di architetture ibride
Gli stili architetturali si possono dividere in tre categorie.
Stile manageriale: divide la parte deliberativa in strati basati sullo scopo del controllo o sulle
responsabilità manageriali di ciascuna funzione deliberativa. Un modulo di mission planning
dovrebbe essere capace di dirigere altri moduli come la navigazione (dove andare) perché è più astratto del path planning (come arrivarci).
Gerarchie di stato: usano la conoscenza dello
Stato del robot per distinguere fra attività reattive e deliberative. I behavior reattivi sono visti come
non avere uno stato, non avere auto-coscienza e funzionare solo nel presente. Le funzioni
deliberative possono essere divise in quelle che richiedono conoscenza dello stato passato del robot (cioè di una sequenza di comandi) e del futuro (pianificazione della missione e del
percorso).
Model oriented styles: sono più nebulose. Esse sono caratterizzate da behavior che hanno
accesso a parti del modello del mondo, spesso ad un punto tale che sembra di ritornare al modello
globale del mondo gerarchico.
Architectures: 3 Styles
• Managerial (division of responsibilities looks like in business)
– AuRA, SFX
• State Hierarchies (strictly by time scope)
– 3T
• Model-Oriented (models serve as virtual sensors)
– Saphira, TCA
Architetture manageriali
Gli stili manageriali di architetture ibride sono riconoscibili dalla loro scomposizione di
responsabilità simile alla gestione d'affari.
In cima ci sono agenti che fanno pianificazione a alto livello, quindi passano il piano ai subordinati, che rifiniscono il piano e procurano le risorse e
passano queste ai lavoratori di livello più basso i behavior reattivi.
Gli agenti di livello più alto possono vedere i
risultati degli agenti subordinati di livello più basso e possono dare indicazioni.
Come nella sussunzione un livello può influire sul livello sottostante.
Nello stile manageriale ciascun livello cerca di eseguire le proprie direttive, di identificare i
problemi, di correggerli localmente. Solo quando un agente non può risolvere un suo problema
chiede aiuto a un agente superiore.
Mgr Architecture 1:
AuRA (Autonomous Robot Arch.)
RON ARKIN, GEORGIA INSTITUTE OF TECHNOLOGY
AUtonomous Robot Architecture
AURA è uno dei robot ibridi più antichi.
Esso è stato progettato è realizzato da Arkin nello stesso periodo in cui Brooks iniziava a pubblicare il suo lavoro sulla sussunzione.
Aura è basato sullo schema theory e consiste di cinque sottosistemi equivalenti, a classi orientate agli oggetti.
Due sottosistemi comprendono la parte deliberativa: il pianificatore e il cartografo.
Il pianificatore è responsabile della pianificazione della missione e del task.
Il cartografo contiene tutte le funzioni per leggere le mappe necessarie per la navigazione. Il
cartografo può anche avere una mappa a priori.
Le tre componenti del pianificatore possono
interagire con il cartografo attraverso metodi per ottenere un cammino da seguire suddiviso in
segmenti.
AuRA Architectural Layout
REACTIVE DELIBERA TIVE
INTERFACES WITH HUMAN COMPUTES PATH, BREAKS INTO SUBTASKS
GENERATES BEHAVIORS FOR SUBTASKS
USES POTENTIAL FIELDS
CHANGES GAINS OF BEHAVIORS’
POTENTIAL FIELDS
AuRA Architectural Layout
CARTOGRAPHER
SEQUENCER
MISSION PLANNER
BEHAVIORAL MANAGER
(MGR+SCHEMAS) PERFORMANCE
MONITORING
EMERGENT BEHAVIOR
Il sottosistema pianificatore è diviso in:
pianificatore di missione, navigatore,
pilota.
Il pianificatore di missione serve da interfaccia con l'uomo e, l'attuale implementazione di Aura, ha
una delle più amichevoli interfacce disponibili sul mercato.
Il navigatore lavora con il cartografo per elaborare un cammino per il robot e dividerlo in sub-task (sei sulla montagna segui la strada lungo il fiume).
Il pilota prende il primo sub-task e procura le informazioni necessarie (terreno, tipo di foglie etc) per generare il
comportamento. La parte pilota del sottosistema di
pianificazione interagisce con il manager dello schema motore nel sottosistema motore dandogli la lista dei
behavior di cui ha bisogno per realizzare il task corrente.
Il manager dello schema motore compone ogni behavior esaminando le librerie degli schemi percettivi nel
sottosistema percettivo e gli schemi motori nel sottosistema motore.
Lo schema motore rappresenta le azioni con i campi di potenziale e il behavior finale emerge dalla somma dei vettori.
I sottosistemi motore e i sensori rappresentano la parte reattiva dell’architettura.
Queste classi contengono librerie di schemi percettivi e
motori, e formano gli schemi dei comportamenti. Gli schemi stessi possono consistere di assemblaggi di schemi primitivi, coordinati da macchine a stati finiti.
Gli schemi possono condividere informazione, se necessario, attraverso collegamenti del manager dello schema motore.
I behavior non sono ristretti all'essere puramente riflessivi.
Behavior con una conoscenza specifica e rappresentazioni in memoria sono permessi all'interno dello schema.
Gli schemi motori, comunque, sono ristretti ai campi di potenziale.
Il quinto sottosistema, controllo omeostatico,
ricade nell'area grigia fra deliberativo e reattivo.
Lo scopo del controllo omeostatico e di modificare le relazioni fra i behavior cambiando il guadagno in funzione della “salute” del robot o di altri vincoli.
Ad esempio si consideri una macchina planetaria che opera su un pianeta roccioso.
Il robot deve fisicamente prendere pietre in giro sul pianeta e portarle al veicolo madre.
La data per il ritorno del veicolo sulla terra è fissata indipendentemente da quello che accade.
Ora il veicolo può essere fornito di un behavior di conservazione. Esso prevede che il robot deve stare sempre lontano due metri da ogni
ostacolo. All'inizio della missione questo behavior di conservazione appare ragionevole. Ora si consideri cosa accade quando il tempo per il ritorno del veicolo si avvicina. Se il robot è vicino al veicolo di ritorno egli potrebbe voler sfiorare gli angoli e ridurre il margine per il quale evita gli ostacoli per consegnare in tempo il suo carico.
Il robot potrebbe voler fare l'equivalente di un sacrificio della propria vita per il bene della missione.
Il problema diventa come renderlo omeostatico.
Molti aspetti di Aura sono ispirati dalla biologia e il controllo omeostatico non è un'eccezione.
Piuttosto che immettere un modulo nella parte
deliberativa per esplicitare il ragionamento su come cambiare il behavior complessivo del robot, la
biologia suggerisce che gli animali cambiano
inconsciamente i loro behavior tutte le volte che è necessario sulla base di necessità interne.
Per esempio un animale che ha bisogno di mangiare aumenta man mano la sua attenzione a cercare
cibo.
Il behavior umano cambia in risposta all'insulina.
Fortunatamente il cambio del behavior emergente è possibile nella rappresentazione dei behavior a campi di potenziale, poiché il vettore di uscita
prodotto da ogni behavior può essere scalato con un termine di guadagno.
Ritornando al caso del veicolo planetario che corre per fare l'ultima consegna, il guadagno del
behavior move-to-goal che attrae il veicolo verso la casa madre dovrebbe aumentare mentre il
guadagno del behavior avoid-obstacle dovrebbe diminuire in funzione del tempo di lancio.
Architectures:
Common Functionality
• Mission planner
• Cartographer
• Sequencer agent
• Behavioral manager
• Performance monitor/problem solving agent
HOW WOULD THIS DO USAR TASK?
Motivating Example for Deliberation: USAR
• Worker places robot at entrance to unstable building, loads in
the floor plan, contextual
knowledge and tells robot to
look for survivors efficiently and map out safe routes for workers to pass through
• contextual knowledge includes probability of where people are more likely to be
WHAT CAN A REACTIVE ARCHITECTURE DO? WHAT CAN’T IT DO?
PATH PLANNING, HANDLING DETOURS DUE TO BLOCKAGE, MAP MAKING,
Motivating Example for Deliberation: USAR
• Worker places robot at entrance to unstable building, loads in
the floor plan, contextual
knowledge and tells robot to
look for survivors efficiently and map out safe routes for workers to pass through
• contextual knowledge includes probability of where people are more likely to be
Example USAR (overlay)
• Cartographer accepts the map
• Navigator uses path planning algorithm to visit nodes in
order of likelihood of survivors
• Pilot determines the list of behaviors, Motor Schema
Manager instantiates them (MS
& PS) and waits for termination
• Homeostatic might notice that robot is running out of power, so opportunistically picks up low probability room on way back to home
Mgr. Architecture 2: SFX (Sensor Fusion Effects)
• Focus on sensing
• Biomimetic organization
• deliberative layer consists of managerial agents
• reactive layer has tactical behaviors
SFX (Sensor Fusion Effects)
SFX Sensor Fusion Effects
Un altro stile manageriale di architettura è SFX (Murphy), che è partito come una estensione di AURA incorporando i
sensori per i cammini.
L'estensione consiste nell'aggiungere moduli per specificare come la percezione, incluso la funzione dei sensori e la
diagnosi dei guasti dei sensori, sono gestiti.
Nel tempo SFX ha riorganizzato le componenti reattiva e
deliberativa di AURA sebbene le due architetture rimangano filosoficamente identiche.
SFX è uno esempio di come può essere introdotta la robustezza in un’architettura.
SFX è stata usata su 8 robot per la navigazione all'interno di uffici, per seguire le strade all’aperto, e per la ricerca e il
salvataggio in ambito urbano.
Da Scientific American - Marzo 2004
Nella fig. si mostra un modello neuro- fisiologico della percezione basato su quella dei gatti.
Il modello suggerisce che il processo sensoriale è inizialmente locale a
ciascun sensore, e può avere il suo proprio campo recettivo dipendente dal sensore.
L'elaborazione sensoriale sembra
quindi ramificarsi attraverso duplicati verso il collicolo superiore (una
struttura a metà cervello responsabile dei behavior motori) e verso la
corteccia cerebrale (responsabile di
funzioni più cognitive). La ramificazione permette allo stesso gruppo di sensori di essere usato contemporaneamente in molte maniere.
In SFX le funzioni
equivalenti nel collicolo superiore sono
implementate nello strato reattivo e le attività corticali nello strato deliberativo.
La ramificazione delle percezioni è ottenuta attraverso l'uso di
whiteboard comuni in numerosi sistemi di
intelligenza artificiale come strutture dati globali
cognitive.
La componente deliberativa è divisa in moduli o classi di oggetti, ciascuno dei quali è in realtà un agente software, cioè un programma software
autocontenuto che è specializzato in alcune aree di competenza e può interagire con altri agenti.
L'agente dominante è chiamato pianificatore di missione.
Questo agente serve per interagire con l'uomo e
specificare i vincoli della missione agli altri agenti nel livello deliberativo. Gli agenti nel livello deliberativo cercano di trovare e mantenere un insieme di
behavior che permetta di compiere la missione nel rispetto dei vincoli.
Gli agenti software in ogni livello deliberativo sono equivalenti, così come lo sono i behavior, e operano indipendentemente l'uno dall'altro.
La natura della deliberazione suggerisce che essi devono negoziare con quelli equivalenti per trovare un insieme di behavior soddisfacente per assolvere il compito corrente.
Una maniera di pensare a questa suddivisione è che il
pianificatore di missione agisce come un presidente di una grande compagnia dando le direttive mentre i behavior
sono i lavoratori.
Gli agenti al livello deliberativo più basso sono il
management medio, pianificano come organizzare i compiti dei lavoratori, controllano la produttività e modificano i
compiti se necessario.
A livello deliberativo il Task Manager, il Sensor e
l’Effector funzionano come risorse manageriali. Le funzioni delle risorse manageriali sono divise fra i manager perché il tipo di conoscenza e gli
algoritmi sono differenti per gestire percezioni e azioni.
I manager usano pianificazione AI, scheduling e tecniche di problem solving per determinare la
migliore sistemazione dell'effettore e percepire le risorse da un insieme di schemi percettivi e motori di comportamento.
Ai manager non è permesso di rilassare alcun vincolo specificato dal pianificatore di missione.
In questa maniera essi sanno essenzialmente che cosa il robot deve fare, ma solo il pianificatore di missione sa perché.
Il vantaggio di questo livello di classe media è che rende più semplici le tecniche di AI necessarie per il management comportamentale.
Il sensor manager in SFX è importante perché è esplicitamente dedicato a controllare la
performance e a risolvere problemi.
Esso ha due agenti software per monitorare sia la performance dei compiti sia se l'ambiente è
cambiato (in questo caso è probabile che si abbia una perdita di performance).
Se un behavior fallisce o uno schema percettivo rileva che i valori dei sensori non sono consistenti o ragionevoli allora il sensor manager è allertato e può individuare schemi percettivi alternativi
oppure behavior per sostituire il behavior problematico.
Si immagini un convoglio di robot che trasportano cibo alla tana.
Se un robot ha un problema ad un sensore, esso non dovrebbe immediatamente fermarsi e pensare a
risolverlo. Invece dovrebbe ricorrere ad un piano
sostitutivo oppure camminare lentamente mentre cerca un piano alternativo.
Altrimenti l'intero convoglio si fermerebbe e ci sarebbero scontri. Dopo di che, lavorando in
background, il manager sensoriale può tentare di diagnosticare la causa del problema e correggerla.
In una dimostrazione un robot che usava SFX è riuscito a liberarsi di una camicia che copriva la sua telecamera.
Il cartografo è responsabile della produzione di
mappe e della pianificazione del percorso, mentre gli agenti della performance cercano di osservare il
progresso del robot verso il suo goal quando il robot non ci riesce.
Un esempio è quando il robot si infila in una pozzanghera di una strada sporca.
Il behavior follow-path è eseguito correttamente; esso sta guardando la strada e sta dando correttamente i comandi agli attuatori.
I sensori di rotazione mostrano che le ruote stanno girando.
Ma non avanza. Allora è necessario un qualche altro processo, più cosciente di un behavior reattivo, per accorgersi che il robot non si sta muovendo.
Ad esempio in questo caso se il robot si muovesse la visione dovrebbe cambiare nel tempo non rimanere la stessa.
SFX (Sensor Fusion Effects)
BEHAVIORS
(USING DIRECT PERCEPTION, FUSION)
SENSE SENSE
SENSE SENSE
MUSCLE MUSCLE
MUSCLE
ACTUATORS DELIBERATIVE
LAYER MANAGERS
SENSE SENSE
SENSE SENSOR SENSE
SENSE
SENSERECEPTIVE FIELD
CHOICE OF BEHAVIORS, RESOURCE ALLOCATION, MOTIVATION, CONTEXT
FOCUS OF ATTENTION, RECALIBRATION
SENSOR
WHITEBOARD
BEHAVIORAL
WHITEBOARD
DEL
IBERA TIVE L
AY
ER
REACTIVE LAYER
PARAMETERS TO BEHAVIORS, SENSOR FAILURES, TASK PROGRESS
ACTIONS
SUPERIOR COLLICULUS-LIKE
FUNCTIONS CEREBRAL CORTEX-LIKE
FUNCTIONS
CARTOGRAPHER
(MODEL/MAP MAKING)
RECOGNITION PERCEPTION
CARTOGRAPHER
SFX Implementation
SENSOR MGR
TASK PLANNER
INTERFACE MGR
BEHAVIORSBEHAVIORSBEHAVIORS SENSORS
SENSORS SENSORS SENSORS
SENSORS
ACUATORS ACUATORS
ACUATORS EFFECTOR MGR
LISPC++ BEHAVIORS USE, FUSE INFORMATION DIRECTS SENSING
INTERACTS WITH HUMAN, SPECIFIES
CONSTRAINTS MANAGERS ARE INDEPENDENT
AGENTS; NEGOTIATE; USE AI PLANNING, SCHEDULING,
PROBLEM SOLVING TO ALLAOCATE EFFECTOR AND
SENSOR RESOURCES TO ACCOMPLISH TASK
MONITORS TASK
PERFORMANCE AND WHETHER
HABITAT HAS CHANGED
MAP MAKING, PATH PLANNING
LAYERED INTO STRATEGIC AND TACTICAL BEHAVIORS
Anche la componente reattiva è divisa in due strati.
In questo caso uno strato riflette il behavior strategico e l'altro il behavior tattico.
Ogni architettura ibrida ha un suo proprio metodo di combinazioni dei behavior nella parte reattiva.
AURA usa la combinazione di campi di potenziali, mentre SFX usa un metodo di filtri.
La filosofia di SFX è simile alla sussunzione; vi sono alcuni behavior fondamentali che dovrebbero
sovrapporsi agli altri comportamenti.
La differenza è che in SFX è il behavior tattico più
basso che fa la sussunzione e non quello strategico più alto.
L'idea di un behavior tattico è meglio illustrata da un esempio.
Si ricordi il caso di evitare gli ostacoli con i campi di potenziale. L'uso di un campo repulsivo era semplice ma avrebbe potuto condurre a minimi globali dove la repulsione avrebbe potuto annullare qualunque altro campo come quello di muovere verso l'obiettivo.
La soluzione NAts era quello di utilizzare il vettore creato dagli altri campi come input per il campo avoid-obstacle.
Questo vettore potrebbe portare un campo tangenziale in aggiunta al campo repulsivo, risultando un campo
avoid-obstacle che fornisce un comando strategico;
come un generale che dice alle truppe di muovere avanti.
Il campo avoid-obstacle è come un fante; esso sta
cercando di andare nella direzione indicata dal generale ma non capisce nulla. Il behavior avoid-obstacle filtra la direzione strategica (data da move-to-goal) con la
situazione tattica immediata (la presenza di un ostacolo).
Un altro esempio di behavior tattico in SFX è il controllo di velocità.
Il controllo di velocità in AURA e in molte
architetture è il prodotto incrociato dei meccanismi usati per combinare comportamenti.
La velocità emergente in AURA è la grandezza del vettore ottenuto dalla somma delle attività dei
behavior .
In SFX il controllo di velocità è considerato come un behavior separato. Una corretta velocità di un robot dipende da molti fattori.
Se il robot non può girare sul posto (cioè gira come un'automobile), è necessario che esso si muova a bassa velocità per evitare di capovolgersi.
Analogamente può avere necessità di andare lentamente se sale o scende pendii. Queste
influenze derivano dai sensori e l'azione è una
conseguenza (il robot cammina sempre lentamente lungo i pendii), così che il controllo di velocità è un behavior legittimo.
Ma altri behavior possono avere una qualche influenza sulla velocità.
Ad esempio behavior strategici forniscono una
velocità strategica al behavior controllo di velocità.
Se la velocità strategica è minore della velocità di sicurezza calcolata sulla base delle informazioni tattiche allora la velocità di uscita è la velocità strategica.
Ma se la velocità di sicurezza tattica è più bassa allora la velocità di uscita per l'attuatore è la
velocità tattica.
I behavior tattici servono come filtri per i comandi strategici per assicurare che il robot agisca in
maniera sicura in accordo quanto possibile con gli scopi strategici.
L'interazione di behavior strategici e tattici è considerato un behavior emergente.
Tactical Behaviors
Tactical behaviors subsume strategic behaviors; interaction
of stratregic and tactical behaviors create emergent
behavior
Task typically has 1 strategic, several tactical
behaviors
Un risultato della separazione strategico tattico è stata la scoperta che ogni compito da fare può
essere fatto con un behavior strategico e alcuni behavior tattici.
Questo significa che la necessità di combinare
behavior non capita spesso, e così il meccanismo di combinazione non è molto importante.
Comunque bisogna mettere in evidenza che i
behavior strategici sono spesso assemblati sotto forma di scripts.
Vi sono molti behavior strategici, ma essi sono
esplicitamente coordinati e controllati in accordo con la conoscenza specifica del behavior. La
tabella riassume SFX in termini di componenti comuni e di behavior emergenti.
Motivating Example for Deliberation: USAR
• Worker places robot at entrance to unstable building, loads in
the floor plan, contextual
knowledge and tells robot to
look for survivors efficiently and map out safe routes for workers to pass through
• contextual knowledge includes probability of where people are more likely to be
Example USAR (overlay)
• Cartographer accepts the map
• Task Planner agent asks for path, requests behaviors, passes to
managerial layer
• Sensing and Effector Mgrs negotiate allocation
• Behaviors run until terminate or
encounter exception (either preset condition by mgrs or through
monitoring)
• Mgrs can see “below” but not above-- cannot relax constraint of Planner/
Boss
Summary:
Managerial Architectures
• How does the architecture distinguish between reaction and deliberation?
– Deliberation: global knowledge or world models, projection forward or backward in time
– Reaction: behaviors which have some past/persistence of perception and external state
• How does it organize responsibilities in the deliberative portion?
– hierarchy of managerial responsibility, managers may be peer software agents
• How does overall behavior emerge?
– From interactions of a set of behaviors dynamically instantiated and modified by the deliberative layer