• Non ci sono risultati.

Sistemi per il Governo dei Robot

N/A
N/A
Protected

Academic year: 2021

Condividi "Sistemi per il Governo dei Robot"

Copied!
91
0
0

Testo completo

(1)

Sistemi per il Governo dei Robot

Silvia Rossi - Lezione 20

(2)

ARCHITETTURE IBRIDE

(3)

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

(4)

Organization: Plan, Sense-Act

(5)

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

(6)

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.

(7)

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.

(8)

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.

(9)

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.

(10)

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.

(11)

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.

(12)

MOTIVAZIONE ATTENZIONE

CONTROLLO COSCIENTE

CONTROLLO SUB-CONSCIO SISTEMA

PERCETTIVO SISTEMA

MOTORIO

MODULAZIONE ORGANIZZAZIONE SINCRONIZZAZIONE

(13)

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.

(14)

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.

(15)

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.

(16)

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.

(17)

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.

(18)

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.

(19)

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.

(20)

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.

(21)

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).

(22)

Sensing Organization

DELIBERATIVE FUNCTIONS

*CAN “EAVESDROP”

*CAN HAVE THEIR OWN SENSORS

*HAVE OUTPUT WHICH LOOKS LIKE A SENSOR OUTPUT TO A BEHAVIOR

(VIRTUAL SENSOR)

(23)

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

(24)

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.

(25)

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.

(26)

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

(27)

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).

(28)

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).

(29)

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.

(30)

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).

(31)

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.

(32)

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.

(33)

Un agente Performance Monitoring e Problem Solving che permette al robot di stabilire se sta facendo progressi oppure no.

(34)

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?

(35)

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)

(36)

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).

(37)

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).

(38)

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.

(39)

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

(40)

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.

(41)

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.

(42)

Mgr Architecture 1:

AuRA (Autonomous Robot Arch.)

RON ARKIN, GEORGIA INSTITUTE OF TECHNOLOGY

(43)

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.

(44)

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.

(45)

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

(46)

AuRA Architectural Layout

CARTOGRAPHER

SEQUENCER

MISSION PLANNER

BEHAVIORAL MANAGER

(MGR+SCHEMAS) PERFORMANCE

MONITORING

EMERGENT BEHAVIOR

(47)

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).

(48)

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.

(49)

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.

(50)

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.

(51)

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.

(52)

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.

(53)

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.

(54)
(55)

Architectures:

Common Functionality

• Mission planner

• Cartographer

• Sequencer agent

• Behavioral manager

• Performance monitor/problem solving agent

(56)

HOW WOULD THIS DO USAR TASK?

(57)

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,

(58)

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

(59)

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

(60)

Mgr. Architecture 2: SFX (Sensor Fusion Effects)

• Focus on sensing

• Biomimetic organization

• deliberative layer consists of managerial agents

reactive layer has tactical behaviors

(61)

SFX (Sensor Fusion Effects)

(62)

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.

(63)

Da Scientific American - Marzo 2004

(64)
(65)
(66)

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.

(67)

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.

(68)

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.

(69)

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.

(70)

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.

(71)

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.

(72)

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).

(73)

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.

(74)

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.

(75)
(76)

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.

(77)

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

(78)

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

(79)

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.

(80)

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.

(81)

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).

(82)

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 .

(83)

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.

(84)

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.

(85)

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.

(86)

Tactical Behaviors

Tactical behaviors subsume strategic behaviors; interaction

of stratregic and tactical behaviors create emergent

behavior

Task typically has 1 strategic, several tactical

behaviors

(87)

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.

(88)

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.

(89)

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

(90)

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

(91)

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

Riferimenti

Documenti correlati

Gli automi a stati finiti sono uno strumento utile per scrivere un programma di controllo coordinato di un behavior astratto e. quindi diventano un buon strumento di programmazione

• Define each of the following terms in one or two sentences: proprioception, exteroception, exproprioception,proximity sensor, logical sensor, false positive, false negative,

La rappresentazione del mondo viene modificata ogni volta che il robot percepisce l’ambiente e il piano delle azioni viene stabilito sulla base di tale rappresentazione..

• P,S-A, deliberation uses global world models, reactive uses behavior-specific or

– Coverage (ex. Spread out to cover as much as possible) – Convergence (ex. Robots meet from different start positions) – Movement-to (ex. Doesn’t require agents to know about

Nelle architetture di controllo reattive l’esecuzione di un compito è suddivisa tra moduli ognuno dei quali ha assegnata una specifica competenza e attua un determinato

 Forward planning simply searches the space of world states from the initial to the goal state... Need for an

network (HTN) planning, uses abstract operators to incrementally decompose a planning problem from a high-level goal statement to a primitive plan network. Primitive