Liliana Ardissono, Guido Boella, Leonardo Lesmo, Paola Rizzo e Dario Sestero
Dipartimento di Informatica - Università di Torino
Corso Svizzera n.185 - 10149 Torino - Italy
Phone: +39-11-7429111; E-mail: {liliana,guido,lesmo,paola,dario}@di.unito.it
Introduzione
Il nostro progetto è partito dall'analisi dei fenomeni dialogici per caratterizzare le credenze ed i goal di un agente durante le interazioni con gli altri agenti. Il lavoro si colloca nell'ambito dello sviluppo di agenti software che collaborano con gli altri agenti dialogando con loro.
In particolare, vogliamo modellare l'acquisizione di intenzioni da parte di un agente durante le interazioni con gli altri agenti e durante un'attività generale di risoluzione di problemi. La definizione del modello di agente consiste nella rappresentazione di un livello di conoscenza relativa a come gli agenti pianificano ed eseguono le loro azioni, siano esse di dominio o dialogiche. Tale conoscenza, rappresentata mediante ``piani" di comportamento dell'agente, costituisce un metalivello rispetto alla conoscenza su come ``muoversi" nel proprio dominio e rispetto a quella che descrive gli strumenti linguistici (i.e. gli ``speech-acts'') che permettono la comunicazione. I piani descritti rendono conto sia dell'attività autonoma di un agente, che della possibilità di coinvolgere altri agenti in un'attività comune e di richiedere il loro aiuto mediante strumenti linguistici. Essi devono inoltre essere usati dall'agente sia in fase di interpretazione delle intenzioni di un partner che in fase di generazione del proprio comportamento. Vogliamo infatti che lo stesso modello che costituisce la conoscenza dell'agente sul proprio modo di comportarsi diventi lo strumento da ``lui" utilizzato per analizzare il comportamento di un proprio ``simile".
Nell'ambito specifico degli agenti cooperativi, ricostruire i belief e le intenzioni del partner è importante non solo per collaborare al meglio ma anche per decidere se collaborare o meno, nel caso che le intenzioni attribuite al partner siano in conflitto con le proprie aspirazioni.
Rappresentazione del modello di agente
Figure 1: Una porzione della Libreria di Agent Modeling
Per rappresentare la conoscenza sul comportamento di un agente, abbiamo adottato
un formalismo a piani precompilati che indicano quali sequenze di azioni compiere quando si hanno
determinati obiettivi e ci si accinge a soddisfarli. Tali piani sono stati
definiti a priori per evitare di introdurre un ulteriore livello di descrizione
nella modellazione della fase di pianificazione.
Oltre alla specificazione dei passi costituenti un piano (gerarchia decomposizione, d'ora in avanti ``DH''), la libreria di piani di ``Agent modeling" (``AM'') è organizzata in base ad una gerarchia di generalizzazione (``GH'', [12]) che permette di unificare ad un livello di astrazione più alto azioni che si sviluppano in comportamenti diversi a seconda del contesto in cui l'azione si svolge (tale contesto è caratterizzato dalle istanziazioni dei parametri delle azioni).
La Figura 1 riporta una porzione della libreria di Agent Modeling
e mostra l'azione ``satisfy'', il cui scopo è rappresentare i passi
necessari all'agente per il raggiungimento di un goal.
Tale azione ha come precondizione l'intenzione di realizzare il goal (g);
questo costituisce uno degli argomenti dell'azione, assieme all'agente (a) e
ad un eventuale partner (s) con cui si condivide l'obbiettivo; la presenza di
tale partner è legata al fatto che un agente cooperativo può fare
proprio un obiettivo espresso da un altro agente (per esempio, in seguito ad
una richiesta di aiuto) ed operare per raggiungere tale obiettivo. Mantenere
traccia della ``sorgente'' dell'obiettivo è importante per modellare
comportamenti tipici delle interazioni collaborative tra individui, quali la
notifica del fatto di aver eseguito con successo il proprio compito, o di aver
fallito (si veda la nozione di Joint Intention introdotta in
[9]). L'effetto della Satisfy può apparire strano: non
avere più il goal in
questione. Questo si giustifica, pensando alla definizione di goal permanente
introdotta in [8]: un goal permanente è infatti un goal
perseguito da un agente che viene abbandonato solo quando è soddisfatto,
oppure risulta evidente che è un goal impossibile da raggiungere. Pertanto,
nel nostro modello, sia che le azioni dell'agente conducano o meno al successo,
alla fine della Satisfy l'intenzione è superata.
Satisfy si decompone in due passi: scegliere nella libreria di dominio un piano
opportuno per realizzare il goal (``select-feasible-action'') ed eseguirlo
(``do-act''). In particolare, è possibile eseguire il piano scelto da se',
con ``self-act'', o farlo eseguire da un altro agente con
``other-act''.
Nella libreria di AM, il legame tra i due passi della decomposizione di Satisfy e Satisfy stessa viene interpretato dalla procedura che si occupa della modellazione dell'agente come il fatto che se un agente vuol eseguire un piano (di AM) complesso, allora intende eseguire i singoli passi, ovviamente dopo aver controllato che i vincoli di ciascun passo siano veri. Ad esempio prima di eseguire la Try-execute si dovrà verificare che l'agente abbia l'intenzione di eseguire il piano di dominio che ne costituisce l'argomento: come si vede tale intenzione è l'effetto del passo ``select-feasible-action'' di Satisfy.
Ancora una considerazione: i piani di AM sono ``ricorsivi". Ad esempio il passo di controllo dei constraint di una azione di dominio è realizzato da una nuova istanza della Satisfy sul goal di conoscere il valore di verità della condizione. Il soddisfacimento di un tale goal si ottiene mediante l'esecuzione di azioni di dominio e linguistiche che hanno la condizione tra i loro effetti (per esempio, chiedere ad un altro agente, o verificare da se'); poichè le azioni della libreria di dominio non sono ricorsive, non si generano istanze di piani di AM con rami infiniti.
La costruzione della libreria di AM
Come proposto in [2], il dialogo deve essere visto come
una successione di turni la cui coerenza risiede nel fatto che il parlante, per
mezzo di ciascun enunciato, sta perseguendo uno scopo che viene condiviso dai
due interlocutori, oppure l'enunciato è spiegabile come continuazione
di uno dei suoi goal
precedenti. Ma
per ricostruire il collegamento fra goal
è necessario possedere un modello del comportamento di un
agente
. Dati degli esempi di fenomeni dialogici coerenti si individua un
insieme di possibili relazioni fra i goal propri dei due parlanti. Prendiamo il
caso di domande che facciano riferimento a precondizioni di azioni (di dominio
o linguistiche): a seconda del contesto in cui occorrono nel dialogo,
l'intenzione di conoscere il valore di verità della precondizione avrà
una relazione diversa con l'insieme di goal del parlante:
(1) cliente: vorrei una bottiglia di whisky.commesso: sei maggiorenne?
(2) Giovanni: sei in macchina?
Michele: si
Giovanni: non ti spiace darmi un passaggio, vero?
Nell'esempio 1, il commesso, eseguendo l'azione richiesta dal cliente, cioè vendere una bottiglia di whisky, si informa sulla verità di una sua precondizione tramite una domanda.
Nel secondo esempio si controlla ancora una precondizione, ma questa volta
l'azione
sotto esame deve essere eseguita dall'interlocutore: l'enunciato
costituisce infatti
una pre-richiesta, che ha anche lo scopo di far intravedere al proprio
partner
l'intenzione di chiedere un passaggio.
Dall'analisi di questi semplici esempi si evidenziano già alcune caratteristiche che devono avere i piani di AM: infatti il passo di controllo delle precondizioni di una azione deve far parte sia del piano che modella l'esecuzione di una azione di dominio o linguistica, sia della fase che modella il tentativo di ``persuasione" del partner a compiere una azione.
Facendo riferimento ai lavori che utilizzano metapiani nella modellazione del dialogo (ad es. i ``problem solving plans" di [6]) si trovano altre utili distinzioni, quali la possibilità che il controllo di una precondizione (o l'istanziazione di un argomento dell'azione) avvenga in una fase in cui l'agente è ``committed" all'esecuzione di questa, oppure in una fase di valutazione della percorribilità delle diverse alternative. Si ha quindi una ulteriore collocazione del passo di controllo di una precondizione all'interno dell'azione ``select-feasible-action'' nella libreria di AM.
Conclusioni
Il modello di agente qui proposto verrà utilizzato per estendere un sistema di consulenza automatica in un dominio ristretto, un dipartimento di informatica ([3,1,4,2]). Di fronte alle richieste di un utente, il sistema deve collaborare attivamente, cercando non solo di soddisfare i goal che l'interlocutore comunica ma anche fornendo informazioni supplementari per metterlo in grado di raggiungere i propri scopi nel modo migliore.
In una prospettiva più ampia, il nostro modello di agente appare sufficientemente generale da poter essere usato anche in contesti e applicazioni non necessariamente collaborativi, nei quali non valgono la cosiddetta ``master-slave assumption" tipica dei sistemi di interazione uomo-macchina ([10]) o la ``benevolence assumption" tipica di molti sistemi di Distributed AI ([15]). In tali contesti, al fine di decidere se adottare o meno una richiesta di aiuto, un agente verifica la compatibilità fra i propri scopi e quelli dell'agente dal quale riceve la richiesta, e può scegliere di aderire o ignorare la richiesta in base a criteri di utilità personale (v. per es. [16]). In contesti non cooperativi può essere particolarmente interessante includere nel bilancio decisionale dell'agente gli scopi tipici di differenti "personalità'' Il riferimento a caratteristiche di personalità si sta facendo strada nell'ambito della ricerca sui cosiddetti "believable agents" (BA, [5,11]). La ``believability'' si riferisce alle caratteristiche di un agente creato in modo da produrre in uno spettatore l'illusione di avere di fronte a se' un essere ``animato'', capace di pensare, emozionarsi, provare sentimenti per gli altri, etc. Le future applicazioni dei BA riguardano principalmente le interfacce uomo-macchina, i giochi (``interactive entertainment''), la didattica, e alcuni domini artistici. Un ulteriore uso del modello di agente qui proposto riguarderà la realizzazione di believable agents che applicano criteri di decisione, circa la collaboratività nei confronti di un agente umano, funzionali agli scopi caratteristici delle loro personalità. In particolare, saranno considerate personalità (per esempio quella dell'avaro, dell'altruista, del dispettoso, etc.) relative al comportamento di aiuto, per modellare le quali ci si baserà su alcuni studi condotti nell'ambito dei sistemi multi-agente (v. per esempio [7,14]).
Nel nostro lavoro, abbiamo scelto di modellare gli agenti mediante un formalismo a piani per due motivi principali: prima di tutto, le azioni di AM modificano con i loro effetti lo ``stato intenzionale" dell'agente: modellano, per mezzo della DH, i goal che derivano dal fatto di avere una certa intenzione (specificando cosa fare per soddisfarli) e, infine, indicano (per mezzo delle precondizioni) quali vincoli devono essere rispettati per poter passare all'azione. La preferenza accordata a tale formalismo rispetto al più diffuso approccio `logico' (es. [8]) è dovuta sia alla volontà di avere un meccanismo inferenziale specializzato per l'analisi di intenzioni (rispetto agli altri attitudinali, come i belief ed i goal), sia alla scelta di avere una rappresentazione uniforme in ogni piano di analisi, cioè a livello di piani di AM, di piani di dominio e di piani 'comunicativi'. E' così possibile utilizzare un unico ensemble di procedure per effettuare inferenze sui diversi tipi di conoscenza.
Inoltre, l'utilizzazione di azioni per descrivere i cambiamenti dello stato intenzionale di un agente permette di modellare sia l'acquisizione delle intenzioni che il loro superamento, durante la fase di costruzione e di esecuzione dei piani. Questo rappresenta un vantaggio rispetto all'approccio logico alla modellazione degli agenti: infatti, permette di rappresentare in modo esplicito (nelle precondizioni e le postcondizioni delle azioni di AM) la gestione delle intenzioni di un agente mentre, come fa notare Sadek in [17], sorgono difficoltà quando nell'approccio logico si deve rappresentare la transizione da uno stato in cui non si ha una intenzione a quello in cui essa viene adottata.