* SRA Division CoopIS- September Extending Multi-Agent Cooperation by Overhearing Floriano Zini SRA Division - ITC-irst, Povo (Trento) - Italy Joint work with Paolo Busetta, Luciano Serafini SRA Division - ITC-irst, Povo (Trento) - Italy Dhirendra Singh DISA - University of Trento - Italy
* SRA Division CoopIS- September Contents What is overhearing? The overhearing architecture An experiment
* SRA Division CoopIS- September The Overhearing Pattern The capability (of an agent) to listen to a conversation between two or more parties (other agents) intervene at the right moment by –providing suggestions to the speakers, or –performing actions for them with the aim of improving other agents ’ work, and/or achieving a personal gain and/or satisfying a social obligation...
* SRA Division CoopIS- September Examples “ Give me that pen over there, please! ” “ I ’ ll take it for you ” “ Don ’ t give it away” Susan Mary Peter “ Use mine” Susan ’ s goal is to obtain any pen asap, I ’ m closer to her than Mary, I have a pen. I ’ m closer to the pen than Mary, I ’ m happy to perform the action for her because I need her help in future Susan wants to steal the pen!
* SRA Division CoopIS- September Why Overhearing? achieving extemporary collaboration in a community of artificial agents by means of unobtrusive and unsolicited suggestions In other words: shifting from requested to spontaneous help in agents collaborations
* SRA Division CoopIS- September Contents What is overhearing? The overhearing architecture An experiment
* SRA Division CoopIS- September The Overhearing Architecture Service 1Service 2 Overhearer suggester 1 Suggester subscriptions suggestions notifications communication channel observations
* SRA Division CoopIS- September The Overhearing Architecture Overhearing is performed by two agents that play different roles: Overhearer must be able to – classify the overheard communication according to some criteria – appropriately notify it to the suggesters Suggester must be able to – subscribe for the information it is interested to receive – understand the behavior of the service agents – make appropriate suggestions at the appropriate time point Multiple overhearers, and many suggesters, may be active at the same time
* SRA Division CoopIS- September Interaction Suggester-Overhearer A possibility is Ontological Overhearing (paper at ATAL 2001) A suggester formulates its interests using a formalism inspired by description logics and modal temporal languages –The formalism allows the suggester to specify: the messages ’ content, rather than pure syntax the temporal sequence of communication performatives, i.e. the development of a conversation The overhearer –logs the conversation between services –performs some limited interpretation of the messages passing on the channel using an ontology –notify the suggester according to its interests
* SRA Division CoopIS- September Understanding Agents ’ Behavior Service agents make available a public model of their behavior to help suggesters to understand their current mental state The public model may be described as a state machine M = –S is a set of mental states, s =, s S –T is a set of labeled transitions, T S S L –L is a set of labels, each l L denotes an action or an event
* SRA Division CoopIS- September Understanding Agents ’ behavior The model may be a not fully accurate representation of an agent ’ s behavior: A state contains the representation of the service ’ s mental attitudes it wants to be visible The set T of labels contains the representation of actions and events the service wants to publicise The model may contain transitions that are not observable, because do not correspond to communicative actions or events
* SRA Division CoopIS- September Contents What is overhearing? The overhearing architecture An experiment
* SRA Division CoopIS- September Agent-Search.com “ Give me URL for keyword X ” “ URL for X: Y ” Overhearer Keyword-based subscriptions Topic suggester Cache suggester Queries and URLs subscriptions User Assistant Referencer Synonyms and similarities of X Cached URLs
* SRA Division CoopIS- September Referencer Public Model Ready to receive a request Referencer receives request for searching a keyword K from UA (observable action ) Ready to submit request Answer available Referencer asks HTDIG for searching K (non-observable action) Request submitted Referencer receives additional keyword K from topic suggester (observable event) Referencer receives URL from cache suggestor (observable event) Request submitted Referencer asks HTDIG for searching K 1, …, K n (non-observable action) References receives additional keyword K from topic suggester (observable event) Answer available Referencer receives URL from cache suggestor (observable event) Referencer receives answer from HTDIG (non-observable event) Answer available Referencer sends answer to UA (observable action) Ready to receive a request User Assistant Referencer
* SRA Division CoopIS- September Advantages and Disadvantages Main advantages: flexibility, enhanceability –Overhearers and suggesters can be plugged in into a running system –Particularly suitable for: fine tuning of agents instrumented from the outside; adaptation to specific environments, reuse; additions of certain kinds of functionality: monitoring (including profiling, auditing), recommendations systems,… Costs: observable communication, state recognition, handling of suggestions
* SRA Division CoopIS- September Conclusions and Future Work The overhearing architecture opens up opportunities and challenges in designing and engineering cooperative multi-agent systems In the future we are going to investigate some of the following topics in the context of the presented overhearing architecture –computational model for agents –plan / goal / intention recognition –intention revision –extensions to the language for suggester subscription –engineering of a software platform that supports overhearing
* SRA Division CoopIS- September Acknowledgements We want to thank Antonia Donà for the revision of the paper Srinath Anantharaju for the contribution to the implementation of the demonstrator