1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche...

102
1

Transcript of 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche...

Page 1: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

1

Page 2: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

2

PROPOSTE DI PROGETTI

HARDWARE

1. Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale vanno a cercare il cibo. Quando una delle due lo trova, accende una luce si fa raggiungere dall’altra e poi va direttamente alla tana. La stessa cosa farà la seconda formica.

1. Descrivere il task2. Descrivere il robot3. Descrivere l’ambiente4. Descrivere le reazioni del robot in risposta all’ambiente5. Raffinare ogni behaviour6. Verificare ogni behaviour7. Verificare i behaviour tutti insieme

Page 3: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

3

PROPOSTE DI PROGETTO

SIMULAZIONE1. Operai – Dato un ambiente con ostacoli fissi di colore blu,

addossati ai muri, contenenente un certo numero di oggetti gialli mobili. Progettare un team di robot (da due a 5 a scelta) che individuano gli oggetti gialli e li spingono (o trasportano insieme) in una prefissata posizione di accumulo.

1. Descrivere il task2. Descrivere il robot3. Descrivere l’ambiente4. Descrivere le reazioni del robot in risposta all’ambiente5. Raffinare ogni behaviour6. Verificare ogni behaviour7. Verificare i behaviour tutti insieme

Page 4: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

4

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:

1. l'ambiente può perdere consistenza temporale e stabilità

2. il sistema sensoriale robotico è adeguato solo al compito specifico

3. può essere difficile localizzare un robot rispetto ad un modello del mondo

4. la conoscenza simbolica rappresentativa del mondo non viene presa in considerazione

Page 5: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

5

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.

Page 6: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

6

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.

Page 7: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

7

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.

Page 8: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

8

Evidenze neuro-psicologiche a sostegno dei sistemi ibridi.

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.

Page 9: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

9

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.

Page 10: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

10

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.

Page 11: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

11

MOTIVAZIONE

ATTENZIONE

CONTROLLOCOSCIENTE

CONTROLLOSUB-CONSCIO

SISTEMAPERCETTIVO SISTEMA

MOTORIO

MO

DU

LA

ZIO

NE

OR

GA

NIZ

ZA

ZIO

NE

SIN

CR

ON

IZZ

AZ

ION

E

Page 12: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

12

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.

Page 13: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

13

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.

Page 14: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

14

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.

Page 15: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

15

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.

Page 16: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

16

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.

Page 17: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

17

Attributi del paradigma ibrido.

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

Page 18: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

18

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.

Page 19: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

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.

Page 20: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

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.

Page 21: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

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

Page 22: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

22

L'organizzazione delle primitive SENS-PLAN-ACT nel paradigma ibrido è concettualmente diviso in una parte reattiva (reattore) e in una parte deliberativa (deliberatore).

Sebbene molte architetture abbiano strati o funzionalità discrete nel reattore e nel deliberatore, ciascuna architettura nel paradigma ibrido ha delle divisioni ovvie fra le funzioni reattive e deliberative.

Page 23: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

23

Connotazioni di behavior reattivi negli ibridi.

Il paradigma ibrido è una estensione del paradigma reattivo e

dalla descrizione precedente appare chiaro che la componente

comportamentale non sembra toccata. Questo non è del tutto

vero.

I behavior nel paradigma ibrido hanno una connotazione

leggermente diversa da quella del paradigma reattivo.

Nel paradigma reattivo un behavior connota behavior

puramente riflessivi.

Nel paradigma ibrido il termine behavior è generalmente più

vicino a quello etologico e include i behavior riflessivi, innati e

appresi. Questo può generare confusione, e alcune volte si usa il

termine skill (capacità) invece di behavior per evitare confusione

con behavior puramente riflessivi.

Page 24: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

24

Anche le implementazioni ibride tendono ad usare

assemblaggi di behavior applicati sequenzialmente, piuttosto

che behavior primitivi.

Poiché le implementazioni ibride sono interessanti per i

behavior emergenti più complessi vi è una maggiore diversità

di metodi per combinare l'uscita di behavior concorrenti.

Page 25: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

25

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.

Page 26: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

26

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.

Page 27: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

27

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 Nehmzow

Page 28: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

28

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

Page 29: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

29

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

Page 30: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

30

Componenti comuni delle architetture ibride.

Generalmente una architettura ibrida ha i seguenti moduli o

oggetti:

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

Page 31: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

31

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

Page 32: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

32

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

Page 33: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

33

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

Page 34: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

34

5. Un agente Performance Monitoring e Problem Solving che

permette al robot di stabilire se sta facendo progressi

oppure no.

Si noti in questo caso il robot, al limite, dovrebbe esibire una

sorta di auto-coscienza (sapere di sé).

Page 35: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

35

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

Page 36: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

36

Stili di architetture ibride.

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

Page 37: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

37

Stili di architetture ibride.

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.

Page 38: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

38

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.

Page 39: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

39

Architetture manageriali.

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.

Page 40: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

40

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.

Page 41: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

41

AUtonomous Robot Architecture

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.

Page 42: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

42

Page 43: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

43

Il sottosistema pianificatore è diviso in:

•pianificatore di missione, •navigatore,•pilota.

Il pianificatore di missione serve da interfaccia con l'uomo e, l'attuale implementazione diAura, ha una delle più amichevoli interfacce disponibili sul mercato.

Il navigatore lavora con il carto-grafo per elaborare un cammino per il robot e dividerlo in sub-task (sei sulla montagna segui la strada lungo il fiume).

Page 44: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

44

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.

Page 45: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

45

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 conoscenzaspecifica e rappresentazioni in memoria sono permessi all'interno dello schema. Gli schemi motori, comunque, sono ristretti ai campi di potenziale.

Page 46: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

46

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.

Page 47: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

47

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.

Page 48: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

48

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.

Page 49: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

49

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.

Page 50: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

50

La tabella seguente riassume le componenti di AURA.

Page 51: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

51

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.

Page 52: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

52

Da Scientific American - Marzo 2004

Page 53: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

53

Page 54: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

54

Page 55: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

55

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. Questo è

consistente con i behavior reattivi ed anche con

la motivazione per la fusione dei sensori.

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.

Page 56: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

56

Page 57: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

57

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.

Page 58: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

58

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.

Mission planner

Page 59: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

59

Gli agenti software in ogni livello deliberativo sono equivalenti, così come lo sono i behavior, e operano indipendentemente l'uno dall'altro. Ma la natura della deliberazione suggerisce che essi devono negoziare con quelli equivalenti per trovare un insieme di behavior soddisfacente per assolvere il compito corrente.

Page 60: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

60

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.

Page 61: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

61

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.

Page 62: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

62

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.

Page 63: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

63

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

Page 64: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

64

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.

Page 65: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

65

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.

Page 66: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

66

Page 67: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

67

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 .

Page 68: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

68

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.

Page 69: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

69

Anche la componente reattiva è divisa in due strati.

In questo caso uno strato riflette il behavior strategico e l'altro il

behavior tattico.

Come prima detto 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.

Page 70: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

70

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.

Page 71: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

71

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.

Page 72: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

72

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

Page 73: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

73

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 .

Page 74: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

74

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.

Page 75: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

75

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.

Page 76: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

76

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.

Page 77: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

77

Page 78: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

78

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.

Page 79: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

79

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.

Page 80: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

80

Architetture orientate al modello.

Le architetture manageriali provengono direttamente dal

paradigma reattivo al quale i progettisti hanno pensato di

aggiungere maggiori funzionalità cognitive.

Page 81: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

81

La comunità di intelligenza artificiale, particolarmente lo

STANFORD SRI, è stata, invece, favorevole ad architetture top-

down.

Un principio di queste architetture è che esse concentrano la

manipolazione simbolica intorno ad un modello globale del mondo.

Comunque, nonostante molte altre architetture ibride, che creano

un modello globale del mondo in parallelo con specifici behavior

sensoriali, questo modello globale del mondo serve per fornire

percezioni ai behavior (o behavior equivalenti).

In questo caso il modello globale del mondo serve come un sensore

virtuale.

Page 82: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

82

L'uso di un singolo modello globale del mondo per percepire

sembra essere un ritorno al paradigma gerarchico e

concettualmente lo è.

Comunque vi sono quattro differenze.

Prima il modello monolitico del mondo globale è meno ambizioso

nello scopo, e più fortemente organizzato dei primi sistemi.

Il modello del mondo è spesso solo interessato a etichettare

regioni del mondo percepito con simboli del tipo: ingresso, porta,

ufficio, etc. Vedi esempio

Page 83: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

83

Secondo: il processo percettivo è spesso fatto con processi

distribuiti così che routine percettive lente possono girare

asincronamente rispetto a routine più veloci e i behavior hanno

accesso alle informazioni più recenti.

Page 84: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

84

Terzo: gli errori nei sensori e le incertezze possono essere filtrate

usando nel tempo la fusione sensoriale.

Questo può migliorare fortemente la performance del robot.

Quarto: l'aumento della velocità di elaborazione e

l'ottimizzazione dei compilatori hanno mitigato il collo di

bottiglia del calcolo.

Page 85: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

85

Le due architetture migliori, del tipo orientate al modello, sono

l'architettura SAFIRA sviluppata da Kurt Könolige con altre

persone all'SRI e la Task Control Architettura (TCA)

sviluppata da Reid Simmons che è stata estesa per fare

pianificazione multi-task con il sistema Prodigy.

L'architettura SAFIRA è messa sui robot PIONEER della

ActivMedia.

Page 86: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

86

SAPHIRA

L'architettura di Safira mostrata in figura è stata usata al SRI su una varietà di robot inclusi i diretti discendenti di Shakey: Flakey e Erratic.

Page 87: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

87

La motivazione per l'architettura scaturisce dal fatto basilare che

vi sono tre piani per un robot mobile di operare con successo in un

mondo aperto: coordinazione, coerenza e comunicazione.

Un robot deve coordinare i suoi attuatori e sensori (come si è visto

nel paradigma reattivo) ma esso deve anche coordinare i suoi

obiettivi in un certo periodo di tempo (questo non è tenuto in conto

dal paradigma reattivo).

Page 88: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

88

Mentre la motivazione per la coordinazione è compatibile con la

reattività, la coerenza è un'esplicita rottura con il paradigma

reattivo. La coerenza è essenzialmente l'abilità del robot di

mantenere un modello del mondo globale che Könolige e Myers

ritengono sia essenziale per una buona performance

comportamentale e per l’interazione con l'uomo.

Infine la comunicazione è importante perché i robot devono

comunicare con l'uomo e con gli altri robot.

Questo introduce il problema di avere quadri di riferimento

comuni per la comunicazione.

Page 89: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

89

Il cuore dell'architettura è la pianificazione, e SAFIRA usa un tipo di pianificatore reattivo, detto PRS-LITE, per un sistema di ragionamento procedurale. PRS-LITE è capace di ricevere comandi vocali in linguaggio naturale dall'uomo e quindi renderli operativi per compiti di navigazione e per le routine di riconoscimento percettivo. La pianificazione e l'esecuzione si trovano nello Spazio Percettivo Locale cioè il modello centrale del mondo.

Page 90: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

90

Molta elaborazione è rivolta a

mantenere un modello del

mondo accurato basato sulle

percezioni del robot e

sull'assegnazione di etichette

simboliche alle regioni.

SAFIRA divide inoltre le attività

deliberative tra diversi agenti

software. Questo fornisce un

alto grado di flessibilità.

Poiché gli agenti software sono

indipendenti, non è necessario

che essi operino a bordo del

robot che devono controllare.

Page 91: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

91

Page 92: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

92

Le componenti reattive di SAFIRA consistono di behavior. I behavior estraggono input sensoriali virtuali dal modello centrale del mondo, lo Spazio Percettivo Locale. L'uscita dei behavior è gestita da regole FUZZY che sono fuse usando la logica FUZZY in comandi di velocità e sterzate. La logica FUZZY si rivela essere una maniera molto naturale di fondere richieste in competizione ed è meno ad hoc delle regole a logica booleana. I behavior sono gestiti dall'esecutore di piano del pianificatore di navigazione.

Page 93: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

93

Il ragionamento cosiddetto sfumato dei sistemi fuzzy riguarda ipotesi o fatti che non sono mai completamente veri nè completamente falsi ma hanno un loro "grado di verità” che incide sulla credibilità della regola applicata e quindi sulla conseguenza che ne scaturisce.

Il grado di verità dell’ipotesi è in realtà il grado di appartenenza del valore di input a un determinato range di valori che descrivono ad esempio una qualità o una misura (es: temperatura calda).

Questi range non sono nettamente separati ma si sovrappongono con funzioni di appartenenza normalmente di tipo triangolare/trapezoidale, per cui un valore di una variabile di input potrebbe appartenere a due range con due differenti gradi di credibilità.

Page 94: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

94

Il valore 25 gradi della temperatura appartiene alla classe tiepida con un degree of membership (grado di appartenenza) pari a 0.8 e alla classe fredda con un grado di appartenenza uguale 0.4. Definendo delle classi triangolari o trapezoidali (le più usate) si hanno dei gradi di appartenenza che diminuiscono verso gli estremi delle classi costruendo così un inizio di quello che è un ragionamento sfumato.

dato preciso temp=25 gradi centigradidato fuzzy temp =tiepida con credibilità 0.8temp = fredda con credibilità 0.4

Page 95: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

95

Una volta noti i dati fuzzy questi possono essere utilizzati da regole del tipo:

if (input n appartiene alla classe k) then output m appartiene a classe j

Avere dei dati fuzzy in uscita serve a poco, perciò si rende necessario trasformare i dati che derivano dalla valutazione delle regole in dati numerici reali: questo processo è il processo opposto alla fuzzyficazione dell’ input e si chiama defuzzyficazione dell’ output.

Page 96: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

96

regola 1: if (A&B) then X con forza yregola 2: if (C&D) then X con forza z

La forza delle premesse della regola 1 è data da min(a,b) dove a e b sono gradi di appartenenza.

La forza delle premesse della regola 2 data da min(c,d) dove c e d sono gradi di appartenenza.

y= forza della regola 1 in termini di grado di appartenenzaz= forza della regola 2 in termini di grado di appartenenza

Il grado di appartenenza dell’output X è dato da

x=max(forza regola 1,forza regola 2) = max(min(a,b), min(c,d))

Page 97: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

97

In presenza di regole che conducono alle stesse conclusioni ma con gradi di appartenenza diversi, vengono adoperati vari metodi di calcolo per ottenere il grado di appartenenza finale.Es.regola 1: if (A&B) then X con forza yregola 2: if (C&D) then X con forza z

Se i gradi di appartenenza degli output X sono quelli in fig. (b per la regola 1 e c per la regola 2) un metodo consiste nel moltiplicare ciascun gda per il centro delle aree di appartenenza, farne la somma e dividere il totale per la somma dei gda.

(f1*c1+f2*c2+…)/(f1+f2…)

Page 98: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

98

moltochiaro

chiaro scuro moltoscuro

nanometri

Page 99: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

99

vicino abbastanza vicino

lontano moltolontano

cm

distanze

10 20 30 40 50 60 70 80 90 100 110 120 130 140

moltochiaro

chiaro scuro moltoscuro

nanometri

Web cam

700 600 500 400 300

Sonar

Page 100: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

100

Il meccanismo della logica FUZZY per combinare behavior produce essenzialmente gli stessi risultati della metodologia a campi di potenziale (v. Könolige e Myers). Lo spazio percettivo locale può migliorare la qualità complessiva dei behavior del robot poiché esso può attenuare gli errori dei sensori. Nonostante che questa elaborazione centrale introduca una penalità computazionale, l’aumento della potenza di calcolo e della velocità di clock hanno reso i costi accettabili.

Page 101: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

101

La tabella riassume SAFIRA in termini di componenti comuni e stili dei behavior emergenti.

Page 102: 1. 2 PROPOSTE DI PROGETTI HARDWARE 1.Cataglyphis. Simulare il comportamento di due formiche Cataglyphis. Entrambe partono dalla tana e in maniera casuale.

102