next up previous
Next: The Fishmarket Up: Applications Previous: Applications

Plural Noos

Noos is an object-centered language based on feature terms [5]. Noos can furnish applications with the reasoning capabilities required by intelligent agents, nonetheless, applications developed in Noos lack communication abilities except for graphical user interface. We are developing Plural, a seamless extension of Noos based on interagents which promotes Noos to an agent-oriented language [12]. On top of the basic mechanism offered by interagents Plural extends Noos with two new constructs with the same nature as the rest of Noos constructs: defforeign and defmobile. These constructs provide Noos with two new ways of constructing feature terms -foreign refinements and mobile refinements- which, in turn, allow an agent to remotely evaluate methods owned by other agent -foreign evaluation- and send methods to other agents to solve problems on its behalf -mobile problem solving methods [14].

In this way, agents in Plural do not communicate directly with one another, instead, they rely on interagents which offer a range of programmable communication and coordination facilities. Each agent has attached its own interagent which constitutes the sole and exclusive means through which a Plural agent interacts. An interagent gives a permanent identity to its user and enforces the conversation protocols (defined for each construct) -thus establishing what messages can be forwarded, to whom and when.

The declarative fashion of the conversation protocols offered by interagents is what allows Plural to incorporate new capabilities which require that agents follow some convention in the exchange of messages. These conventions will be provided to interagents by means of conversation protocols. We have provided interagents with a conversation protocol for each new Plural construct incorporated at the level of the knowledge representation language. For instance, Figure 2 shows the conversation protocol for the foreign evaluation capability of Plural. Interagents allow all the underlying exchange of messages needed by those constructs to be transparent to Plural agents.

The new capabilities embedded into Plural enable agents to adequately communicate and coordinate in order to exchange knowledge. Plural can be thought as an extension of a knowledge representation language with both an agent communication language and an agent coordination language which are provided at the knowledge representation level by means of some new constructs and carried out by interagents. These constructs allow the exchange of knowledge to be performed at the knowledge representation level transparently to the agent communication and coordination languages chosen.

The capabilities that now Plural incorporates are those currently under active research by new programming paradigms, namely distributed state, foreign method invocation, and remote evaluation. In order to provide Noos with such capabilities there was no need to re-write Noos. Thus, interagents shows a way in which legacy software can also profit from mobile code paradigms.

The foreign evaluation and mobile problem solving methods capabilities of Plural have been used to devised two cooperation modes among agents with learning capabilities -Distributed Case-based Reasoning (DistCBR) and Collective Case-based Reasoning (ColCBR)  [18]. These modes of cooperation are based on reusing the experience acquired by other agents. Which agent owns the similarity-based reasoning method used to solve a problem -the sender of the problem or the addressee agent- is the basic difference between both methods [18]. In DistCBR an agent is delegated to solve a task on behalf of another agent. DistCBR is supported by the foreign evaluation capability of Plural. In ColCBR, an agent in addition to the task to be achieved sends the method to solve that task. ColCBR is supported by the mobile methods capability of Plural. Such cooperation modes are being used in CHROMA a distributed system for recommending a plan for the purification of proteins from tissues and cultures [18] and in CoDiT [13], a multi-agent system for therapy recommendation in diabetic patients in the framework of the SMASH project[2].


next up previous
Next: The Fishmarket Up: Applications Previous: Applications

Francisco Martin
Wed Sep 9 13:33:33 MET DST 1998