Vai alla Home Page About me Courseware Federica Living Library Federica Federica Podstudio Virtual Campus 3D Le Miniguide all'orientamento Gli eBook di Federica La Corte in Rete
 
I corsi di Scienze Matematiche Fisiche e Naturali
 
Il Corso Le lezioni del Corso La Cattedra
 
Materiali di approfondimento Risorse Web Il Podcast di questa lezione

Ernesto Burattini » 22.Sistemi ibridi - 2


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

Organizzazione di un sistema ibrido reattivo

Organizzazione di un sistema ibrido reattivo


Attributi del paradigma ibrido (segue)

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 PIANIFICA e poi PERCEPISCI-AGISCI deriva da due ipotesi del paradigma ibrido.

Attributi del paradigma ibrido (segue)

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.

Attributi del paradigma ibrido (segue)

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.

Attributi del paradigma ibrido (segue)

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

Si noti come la World Map può ricevere informazioni sia dai sensori che dai behavior ed eventualmente restituire a questi altri dati.

Organizzazione dei sensori nel paradigma ibrido.

Organizzazione dei sensori nel paradigma ibrido.


Attributi del paradigma ibrido (segue)

L’organizzazione delle primitive PERCEPISCI-PIANIFICA-AGISCI 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.

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.

Connotazioni di behavior reattivi negli ibridi (segue)

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.

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 rappresentare nei behavior reattivi.

Connotazioni di globale (segue)

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.

Connotazioni di globale (segue)

Analogamente, controllare la performance per vedere se il robot sta facendo progressi per raggiungere il goal o la soluzione del problema, è una attività globale.

Si noti che un programma che controlla se il robot si muove in avanti è un problema che riguarda il suolo e/o un sensore (per es. gli shaft-encoders non ci dicono se le ruote girano correttamente).

Per fare la diagnosi, il programma deve sapere che cosa il behavior stava cercando di fare, e verificare se vi sono altri sensori o sorgenti di conoscenza che possono corroborare le ipotesi.

Quindi una funzione deliberativa può non avere bisogno di un modello globale del mondo ma può aver bisogno di stabilire lo stato interno del robot su una scala globale oppure stabilire con quali altri moduli o capacità deliberative il programma dovrebbe interagire

Aspetti architetturali

Le varie architetture ibride deliberative-reattive si distinguono sulla base di come esse rispondono alle questioni seguenti:

  • Come fa l’architettura a distinguere fra reazione e deliberazione?
  • Come organizza le responsabilità nella parte deliberativa?
  • Come fa a far emergere il comportamento?

La differenza fra reazione e deliberazione è un problema critico per costruire una buona e riutilizzabile implementazione orientata agli oggetti.

Questo determina quali funzionalità vanno in quale modulo, quali moduli hanno accesso alla conoscenza globale (che porta a specificare classi public and friend in C++), in quale dovrebbe essere la conoscenza globale (strutture dati condivise).

Aspetti architetturali (segue)

Analogamente, è importante suddividere la parte deliberativa in moduli o oggetti.

Una buona scomposizione assicura portabilità e riusabilità. Mentre le architetture ibride sono ben note per come incorporano la deliberazione nei robot mobili, esse introducono anche alcuni cambiamenti nella maniera con cui è organizzata la reazione.

Molti ricercatori hanno trovato che le due principali maniere di combinare i behavior reattivi, sussunzione e campi di potenziale, sono limitate.

Di qui almeno altri tre meccanismi sono stati introdotti:

  • voting (DAMN),
  • fuzzy logic (SAPHIRA),
  • filtering (SFX).

Componenti comuni 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.

Componenti comuni delle architetture ibride (segue)

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 fare rilevazioni ad una distanza sufficiente, la visione stereo può contribuire ad un aggiornamento veloce per ottenere la velocità desiderata del robot, e i sonar hanno potenza sufficiente per produrre letture affidabili entro certi range.

Nelle architetture reattive le risorse per un behavior sono spesso hard-coded/wired al contrario l’uomo è capace di usare in maniera alternativa i sensori e gli effettori (aprire la porta con una mano piuttosto che con l’altra).

Componenti comuni delle architetture ibride (segue)

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.

Componenti comuni delle architetture ibride (segue)

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.

Componenti comuni delle architetture ibride (segue)

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

  • Contenuti protetti da Creative Commons
  • Feed RSS
  • Condividi su FriendFeed
  • Condividi su Facebook
  • Segnala su Twitter
  • Condividi su LinkedIn
Progetto "Campus Virtuale" dell'Università degli Studi di Napoli Federico II, realizzato con il cofinanziamento dell'Unione europea. Asse V - Società dell'informazione - Obiettivo Operativo 5.1 e-Government ed e-Inclusion