Collection Mémoires et thèses électroniques
Accueil À propos Nous joindre

Chapter 2 Agent Communication

Table des matières

In this chapter, we present and discuss some proposals in the domain of agent communication. We briefly present three main languages developed in this domain. We discuss their semantics and philosophical foundations. Finally, we highlight their limitations which we address in detail in the next chapters.

An interesting characteristic of multi-agent systems is the principle that agents can function more effectively in groups. Agents are designed to autonomously collaborate with each other in order to satisfy both their internal goals and the shared external demands generated by virtue of their participation in agent societies. This type of collaboration depends on a sophisticated system of inter-agent communication. The language used by agents for this communication is the Agent Communication Language (ACL). The main objective of an ACL is to model a suitable framework that allows heterogeneous agents to interact and to communicate with meaningful statements that convey information about their environment or knowledge (Kone, 2000).

Over the last decade, two main ACLs have been proposed: the Knowledge Query and Manipulation Language (KQML) (Finin et al., 1995) and the Foundation for Intelligent Physical Agents’ Agent Communication Language (FIPA-ACL). FIPA-ACL is in turn based on the ARTIMIS Communication Language (ARCOL). The formal specifications and the semantics of these languages are based upon the philosophical foundation provided by Speech Act Theory . The purpose of this chapter is to introduce these languages and their philosophical foundations.

The rest of this chapter is organized as follows. In Sections 2.2, 2.3 and 2.4, we present KQML, ARCOL and FIPA-ACL respectively. In Section 2.5, we discuss a taxonomy of ACL semantics. Section 2.6 introduces the notion of conversation protocols. The philosophical foundations of ACLs are explained in Section 2.7. The final discussion (Section 2.8) evaluates the limits of these ACLs and establishes the link with the next chapters of this dissertation.

KQML arose from work sponsored by the American Government’s Defense Advanced Research Projects Agency (DARPA). It is the result of research done by the Knowledge Sharing Effort (KSE), an initiative that aims at developing a foundation for software systems interaction and interoperability. Three working groups compose this consortium: the interlingua group, the shared and reusable knowledge base group, and the external interface group. The first group designed the Knowledge Interchange Format (KIF) as a common language for describing a message content. This format is an extension of first-order logic. The second group worked on the content of sharable knowledge bases. This group examined the problem of sharing the content of formally represented knowledge. The approach focused on common ontologies. Every knowledge-based system relies on some conceptualization of the world (objects, qualities, distinctions and relationships that matter when performing some task) that is embodied in concepts, distinctions, etc. using a formal representation. The group worked on the construction of ontologies for various domains. Each ontology, written in KIF, defines a set of classes, functions, and objects for some domain of discourse, and includes an axiomatization to constrain the interpretation. The third group produced the KQML language and looked at interactions of system components.

The language’s primitives are called performatives . As the term suggests, the concept is related to speech act theory (Austin, 1962). Performatives define the permissible actions (operations) that agents may attempt when communicating with each other. KQML consists of a set of communication primitives aiming to support interaction between agents. In this language, an agent’s mental attitudes (belief, intention, and desire) are expressed in the label of a message that represents a communicative act. A KQML message is conceptually divided into three levels (Labrou et al., 1999): (1) the communicative level which specifies the sender and receiver agents; (2) the message level which mainly specifies the type of performatives (affirmation, question, etc.), the language (KIF, Prolog, etc.) and the used ontology; (3) the content level, which specifies the message content. An example of KQML message is the following:

The goal of the tell KQML performative is to convey to some receiving agent that the sending agent believes that a particular proposition (contained in the content field) is true. The example indicates that agent X answers a message of agent Y about the price of a software. It uses the Prolog language to describe the content and a particular ontology (Software) which indicates the significance of "MathType" and the currency associated with the value "150".

Initially, KQML was proposed without a defined semantics. This criticism led researchers to define a new language: the FIPA-ACL. The early version of KQML presented some confusions and ambiguities in the usage of the performatives. Later on, its authors gave it a semantics and limited the use of some performatives in order to avoid some of these problems. The new semantics is defined in terms of: 1) preconditions on the mental states of the sender and the receiver before the communication of the message, 2) postconditions that should hold after the message is sent and 3) completion conditions that indicate when the perlocutionary effect has been fulfilled. However, this semantics provides no semantic model for mental attitudes.

The ARTIMIS agent technology developed by France Telecom is a generic framework for instantiating communicating agents. This technology is based on the proposal of Sadek et al. (1997). In ARTIMIS, an agent can cooperatively interact with humans as well as with other agents. Agents’ communicative acts are modeled as rational actions. Agents can reason about knowledge and actions pertaining to their communicative acts. ARCOL (ARTIMIS Communication Language) is the ACL used in ARTIMIS. An ARCOL expression relies on a semantic language SL for the definition of its semantics. SL, in turn, uses the language SCL (Semantic Content Language) to describe the semantics content of a communicative act. ARCOL includes the following set of primitives:

Inform : An agent uses the assertive act Inform to convey a message to another agent provided that it believes the content of this message.

Request : The directive act request enables an agent to demand an action from another agent provided that it has the capabilities to perform that action.

Confirmation : When the sender believes that the receiver is uncertain about the information being transmitted, this communicative act can be used to confirm it.

Inform referent : This communicative act enables an agent to inform another agent of the value of a referent with a given description.

The most important characteristic of the ARCOL language is its formal semantics as a reliable support for interoperability. However, ARCOL’s fixed context with the sender agent required to be sincere is an impediment to heterogeneity.

FIPA-ACL arose from attempts to develop an industry standard for agent communication. Its formal model and semantic language draw from the ARCOL Language. Conceptually, FIPA-ACL distinguishes two levels in communication messages. At the inner level, the content of messages can be expressed in any logical language. The outer level describes the locutions that agents can use in their communication. The content of messages is wrapped in these locutions. FIPA-ACL specifies 22 locutions (FIPA-ACL, 2001b). Here we mention some of them:

Accept Proposal : The action of accepting a previously submitted proposal to perform an action.

Agree : The action of agreeing to perform some action, possibly in the future.

Call for Proposal : The action of calling for proposals to perform a given action.

Confirm : The sender informs the receiver that a given proposition is true, where the receiver is known to be uncertain about the proposition.

Inform : The sender informs the receiver that a given proposition is true.

Not Understood : The sender informs the receiver that it received a message that it does not recognize or it is unable to process the content of this message.

Propose : The action of submitting a proposal to perform a certain action, given certain preconditions.

Query If : The action of asking another agent whether or not a given proposition is true.

Request : The sender requests the receiver to perform some action or a communicative act.

FIPA-ACL is an agent communication language whose developpement involved several parties in industry and academia. It lays out the practical components of agent communication and cooperation and a well-defined formal semantics. However, some practical applications pointed out several limitations of the FIPA standard (Kone, 2000). For example, this standard provides no support for real-time and performance requirements of telecommunication applications. In addition, FIPA-ACL semantics rests only on the belief states of communicative agents. In this context, the sender does not guarantee the actual accomplishment of the expected outcome at the destination because the semantics offers no mechanism on how to infer the mental state of the receiving end.

As stated by McBurney (2002), when considering formal languages, different semantics can be defined viewing them as a mathematical logic. A semantics is a relationship between the language and a space of mathematical structures, called models . A statement in the language specifies a subset of Such a statement is said to be true in a particular model if A statement is said to be logically valid if it is true in every model, i.e., if

Another type of semantics is derived from linguistics. As expressed by the linguist Morris (1938), the syntax of a language is the formal relation of signs to one another and the semantics of the language defines the relations of signs to the objects to which the signs are applicable . Thus, it makes sense to speak of the truth of a sign, since this indicates that the sign has a relationship to external objects in the world (McBurney, 2002).

Because ACLs are formal languages, their semantics can be defined as in mathematical logic. However, because they are also intended as communication mechanisms, a linguistics-based semantics can be defined. In this section, we are only interested by formal semantics defined from mathematical logic. We can distinguish five formal semantics: axiomatic semantics, operational semantics, denotational semantics, game-theoretic semantics, and tableau semantics [1] .

Axiomatic semantics is defined by a set of assertions about properties of a system and how they are affected by program execution. For ACLs, this semantics defines each locution in terms of the preconditions which must be fulfilled before the locution can be uttered, and in terms of the post-conditions which must become true after the production of the utterance. We distinguish between public and private axiomatic semantics. In public axiomatic semantics, the pre-conditions and post-conditions describe states or conditions of the dialogue which can be observed by all participants. In private axiomatic semantics, pre and post-conditions describe states or conditions which are internal to one or more of the participants and thus are not directly observable by the others.  For example, the semantics defined for FIPA-ACL and KQML are private axiomatic semantics. For example, the Inform FIPA-ACL act, in which one agent tells another some proposition, may only be uttered if the first agent believes the proposition to be true. This is termed a sincerity condition. This semantic approach, based on mental notions such as beliefs and intentions, will be detailed in Chapter 4. On the other hand, the semantics provided for argument-based ACLs is a public axiomatic semantics (Amgoud et al., 2002). For example, according to this semantics, an agent a which asserts a proposition p is supposed to have an argument in favor of it. Thus, if this proposition is attacked by another agent, agent a must defend it.

Operational semantics is defined by a set of rules specifying how the state of an abstract machine changes while executing a set of instructions. Each rule specifies certain preconditions on the contents of states and their new contents after the application of the rule. In the context of ACLs, operational semantics considers the locutions as instructions which operate successively on the states of some abstract machine. This semantics defines the locutions in terms of the transitions they apply on the states of this machine. van Eijk and his colleagues (2000) studied operational semantics for ACLs on the basis of an agent communication programming language which is a formal framework that identifies basic aspects of agent communication. The formal semantics of this language is given by means of transition rules that describe its operational behavior. Moreover, the operational semantics closely follows the syntactic structure of the language, and hence gives rise to an abstract machine to interpret the language.

Denotational semantics is a technique for describing the meaning of programs in terms of mathematical functions. Programs are translated into functions whose properties can be proved. In denotational semantics, each element of the language syntax attributes a relationship to an abstract mathematical entity, its denotation. The possible world semantics related to modal languages is an example of such semantics (Hintikka, 1962) (Kripke, 1963). For example, the semantics of the necessarily and possibly modal connectives are given by introducing an accessibility relation into models for the language. This relation defines what worlds are considered accessible from every other world. A formula is necessarily true if it is true in every world accessible from the current world, and it is possibly true if it is true in at least one world accessible from the current world. An example of this semantics is given in Chapter 7 of this dissertation. Another example is given by Parsons (1997). In this semantics, argumentation systems are connected to qualitative probabilistic networks. Propositions correspond to nodes in these networks and arguments between propositions correspond to the associated nodes. In order to use the denotational semantics approach, we must be able to derive the semantic meaning of a statement expressed in the language from the semantic meaning of its elements, this property is called compositionality.

In game-theoretic semantics, each well formed formula in a language is associated with a formal game between two players: a protagonist and an antagonist. A statement is considered to be true when and only when a winning strategy exists for the protagonist in the associated game. McBurney (2002) proposed a game-theoretic semantics for an inquiry dialogue protocol. In this semantics, a winning strategy for a player is a set of rules enabling the player to move in such a way that executing these moves guarantees that the player can win the game, no matter which moves are made by the opposing player.

Tableau semantics is based on the use of assertions and proof rules. The proof rules are inference rules aiming to prove the truth or falsity of the assertions. Unlike traditional proof systems which are bottom-up approaches, tableau semantics uses a top-down or goal-oriented approach. Proof rules are used in order to prove a certain formula by inferring when a state in a Kripke structure satisfies such a formula. According to this semantics, we start from a goal, and we apply a proof rule and determine the sub-goals to be proven. The proof rules are designed so that the goal is true if all the sub-goals are true. In ACLs, this semantics can be used to give the meaning of communicative acts by considering them as goals, and then determining the sub-goals by applying a set of proof-rules. To our knowledge, the only tableau semantics defined in the context of agent communication is the one that we propose in Chapter 8 of this dissertation.

When conversing, agents do not exchange isolated messages, but a sequence of interdependent messages. To take into account this aspect, FIPA proposes to use conversation protocols (also called conversation policies). Conversation protocols are general constraints on the sequences of semantically coherent messages leading to a goal (Greaves et al., 2000). The coherence of messages is ensured by these constraints. These protocols are specified as static structures which define in a deterministic way the order in which communicative acts are connected. Like protocols used in distributed systems, these structures are generally modeled using finite state machines (Winograd and Flores, 1986) (Barbuceanu and Fox, 1995), Petri nets (traditional or extended) (Cost et al., 2000) or UML sequence diagrams. The idea of protocols is to facilitate the task of computing the possible answers to a given message. Request Interaction Protocol , Contract Net Interaction Protocol , and English Auction Interaction Protocol (FIPA, 1997, 1999, 2001a) are examples of such protocols.

As outlined by Greaves and his colleagues (2000) and Vongkacem and Chaib-draa (2000), conversation protocols must address two fundamental issues:

Flexibility : The aim of conversation protocols is basically to constrain the conversational behavior of the participants while taking into account the fact that agents are autonomous. These protocols must find equilibrium between the normative aspect ensured by the constraints and the flexibility expected in multi-agent communications.

Specification : Conversation protocols must be specified while taking into account the computational complexity of reasoning about them. For example, this specification must avoid the state-explosion problem when analyzing a sequence of utterances in order to decide which locution to utter next. In addition, these protocols should be designed in such a way that a formal verification is possible. The verification of some properties in these protocols, for example, deadlock, termination, correctness, etc. is extremely important in open environments.

The specifications of KQML, ARCOL, and FIPA-ACL are based on a philosophical theory called speech act theory . This theory is due originally to a philosopher of language, Austin (1962), and extended by Searle (1969, 1983) and Searle and Vanderveken (1985). It considers human utterances as actions, in that they may change the state of the world. Speech is not just used to designate something, it actually does something. This explains the use of the word "act" in the description of ARCOL and FIPA-ACL locutions. According to Searle, to understand language, one must understand the speaker’s intention. Since language is intentional behavior, it should be treated like a form of action. Thus, Searle refers to utterances as speech acts. The speech act is the basic unit of language used to express meaning, an utterance that expresses an intention. In general, speech acts are acts of communication. To communicate is to express a certain attitude, and the type of speech act being performed corresponds to the type of attitude being expressed. For example, a statement expresses a belief, a request expresses a desire, and an apology expresses a regret. As a communicative act, a speech act succeeds if the audience identifies, in accordance with the speaker's intention, the attitude being expressed.

Speech act theory identifies three distinct levels of action beyond the act of utterance itself. It distinguishes the act of saying something (the " locutionary " act), what one does in saying it (the " illocutionary " act), and what one does by saying it (the " perlocutionary " act). Speech acts, being perlocutionary as well as illocutionary, generally have some ulterior purpose, but they are distinguished primarily by their illocutionary type, such as asserting , requesting , promising and apologizing , which in turn are distinguished by the type of attitude expressed. The perlocutionary act is a matter of trying to get the hearer to form some correlative attitude and in some cases to act in a certain way. For example, a statement expresses a belief and normally has the further purpose of getting the addressee form the same belief. A request expresses a desire for the addressee to do a certain thing and normally aims for the addressee to intend to and, indeed, actually do that thing. A promise expresses the speaker's firm intention to do something, together with the belief that by his utterance he is obligated to do it, and normally aims further for the addressee to expect, and to feel entitled to expect, the speaker to do it.

As outlined by Vanderveken (2001), speech act theory tends to study isolated illocutionary acts performed by using sentences in single context of utterance. However, it is clear that speech acts are seldom performed alone. Speakers perform their illocutionary acts within entire conversations in order to achieve common goals such as discussing news, coordinating their joint actions or negotiating. For this reason, Vanderveken proposed a theory of discourse enriching Speech Act Theory. The purpose of this theory is to analyze the structure of conversations whose type is provided with an internal discursive purpose and to provide a taxonomy of these conversations. This taxonomy is based on the fact that there are only four possible discursive goals that speakers can attempt to achieve by way of conversing: the descriptive , deliberative , declarative , and expressive goals. These goals correspond to one of the four possible directions of fit between words and things. Using these directions, the four conversation types can be described as follow:

1. Conversations with the words-to-things direction of fit have the descriptive goal : They serve to describe what is happening in the world. Such are descriptions, debates on a question, persuasions, arguments, explications, interrogations, etc.

2. Conversations with the things-to-words direction of fit have the deliberative goal : They serve to deliberate on which future actions speakers and hearers should commit themselves to in the world. Such are deliberations, negotiations, bargaining sessions, a compromise or the signing of a contract, auctions, etc.

3. Conversations with the double direction of fit have the declarative goal : They serve to transform the world by way of doing what one says. Such are official declarations like declarations of war or of independence, nominations, appointments, etc.

4. Conversations with the empty direction of fit have the expressive goal : They serve to express common attitudes of their speakers. Such are the exchanges of greetings, welcomes, congratulations, etc.

Another taxonomy of dialogues was proposed by two philosophers of argumentation, Walton and Krabbe (1995). In their book: Commitment in Dialogue , Basic Concepts of Interpersonal Reasoning , Walton and Krabbe distinguish six main types of dialogues:

1. Persuasion , which is centered around conflicting points of view.

2. Negotiation , in which participants aim to achieve a settlement that is particularly advantageous for individual parties.

3. Inquiry , in which the aim is to collectively discover more information, as well as to destroy incorrect information.

4. Deliberation , which is driven by the need to take a collective decision.

5. Information-seeking , in which one party asks for information known by another.

6. Eristic , in which two parties combat each other in a quarrel.

While Vanderveken’s classification is based on directions of fit between words and things, Walton and Krabbe’s classification is based upon two factors: the initial situation and the goal of the dialogue. Table 2.1 illustrates these factors.

These six types may be refined into subtypes, simply by specifying more elaborate conditions on the dialogues (e.g. the type of conflict or the degree of rigidity of the rules). For example, a dispute is a subtype of persuasion, where each participant tries to defend its point of view. In addition, this taxonomy is based on an argumentation vision and it coincides with the dialectical systems proposed by Hamblin (1970). These systems will be discussed in detail in Chapter 4, Section 4.4.2.

Walton and Krabbe introduced the notion of dialectical shift to capture the change in the context of dialogue during a conversation from one type of dialogue to another. Indeed, dialogues are usually not of a single type from their beginning to their end. For instance, it is common to start an inquiry dialogue, to realize during the dialogue that there is a controversial issue at stake, to enter in a dispute sub-dialogue, and to eventually resume the inquiry dialogue when the issue has been resolved. This notion allows us to construct complex dialogues by combining different types.

Vanderveken’s classification can be regarded as more general than Walton and Krabbe’s one in the sense that the dialogue types discussed by Walton and Krabbe are subtypes of the four types proposed by Vanderveken. Persuasion, Inquiry, and Information-seeking are conversations with a descriptive goal, negotiation and deliberation are conversations with a deliberative goal, and Eristic is a conversation with an expressive goal.

KQML, ARCOL, and FIPA-ACL have the advantage of being based on a theory largely studied by philosophers of language. They are also formally specified using a modal logic. However, their private axiomatic semantics does not provide any technique for checking the agents’ compliance to this semantics. In other words, it is not possible to verify whether or not the agents’ communicative behavior matches their mental states. To remedy this, the semantics must also take into account the public (the observable) attitudes and the argumentative considerations. Such considerations enable us to explain the reasons behind the performance of communicative acts and how an agent can decide about the next act to be performed. In Chapter 5, we show how a combined approach (mental, social and argumentative approach) can resolve this problem.

Although FIPA protocols are practically interesting and can successfully be used in simple applications, they are not flexible enough to be used by autonomous agents in flexible and complex conversations such as persuasions, argumentative negotiations, deliberations, etc. When the allowed communicative acts are limited and the purpose of the communication is just to exchange some messages, rigid protocols provide an interesting solution and there is no need to define supplementary mechanisms. However, when agents must participate in complex conversations, for example in order to persuade each other, to negotiate, to deliberate, etc., they should act autonomously in the sense that they must be able to make decisions and to take initiatives. In this case, rigid protocols are not suitable. This is due to the fact that agents must follow the whole protocol in order to communicate and it is not clear how agents can make choices between several possible actions. For this reason, it is preferable to use small conversation protocols that can be put together to construct complex protocols. The combination rules must be formally specified and agents must be able to reason about these protocols in order to be able to use them flexibly. In the next chapter, we discuss dialogue game protocols aiming to address this issue. In Chapter 6, we propose a framework enabling agents to reason about their communicative acts and in Chapter 9, we show how this framework can be used to specify a flexible dialogue game protocol.

On the other hand, KQML and FIPA-ACL grew from efforts by DARPA to develop technologies for knowledge sharing (Labrou et al., 1999). Such a conceptual paradigm explains why several communicative acts seek to request or send information (e.g. Inform , Inform-if , Conform , Query ). Despite this, these languages have not been designed with the possibility that such information may be questioned or challenged. An agent receiving an Inform ( ) message who is unsure about the truth of its content or who does not hold the belief that is true, has few options to express these views. In addition, these languages have been developed without thinking that an agent can justify or defend its beliefs, or seek to persuade another to change its beliefs. This is due to the absence of a logic of argumentation in the specification of these languages. Such a logic is extremely useful for capturing the agents’ reasoning. In Chapters 3 and 4, we present some proposals using this type of logic. In Chapters 5 and 6, we present our proposal based on this logic and in Chapter 7, we present a modal semantics capturing this logic and its relation to the social approach.

[1] McBurney (2002) only distinguished four formal semantics: axiomatic semantics, operational semantics, denotational semantics, and game-theoretic semantics.

© Jamal Bentahar, 2005