b: Participant a: Initiator
cfp (action, precondition)
refuse (reason−1)
not−understood
propose(precondition−2)
reject−proposal(reason−2)
accept−proposal(proposal) inform
failure (reason)
deadline
x
x x
(a)
Figure 4.4: FIPA contract-net protocol adapted from [1].
semi-automatic procedure for converting FIPA interaction protocol to their petri-net representations in search of a better representation of protocol features.
4.4.1.4 Multiagent conversation policies
Another view of agent interactions is to consider a conversational model [59] and to structure interactions as conversations [19] among agents and organise messages into appropriate contextual settings to provide a common guide to all agents. This is done by using conversation policies, CPs. A definition of a conversation policy is given in [98] and current research efforts discussed in [76].
Regarding implementation, while as observed in [162], the definition of conversation policies abstracts from any precise computational model, in practice CPs are modelled too as finite state machines and typically these models are called protocols.
Coloured petri nets [128] have been also used in conversation modelling as discussed in [59].
There have also been proposals for a conversational and coordination language as dis-cussed in [18] and use of such a language in conversation oriented programming is described in [20].
It is worth noting though that conversation policies have limitations of their own. Par-ticular challenges are identified by [162] to be in flexibility and specification of con-versation policies.
4.4.1.5 Commitment-based and dialogue-based protocols
There is also active research directions in exploring the notion of commitments in modelling agent interaction protocols. Commitment are defined through commitment machines (CMs), where a commitment machine defines a range of possible
interac-tions that start in some state (i.e. no initial state is designated as such, this to be contrasted with standard interaction protocols and finite state machines [244]).
Regarding implementation, a commitment machine is a declarative description of states and allowed transitions in a protocol, an example description for the a netbill protocol9[61], is given in [244].
However [251] has shown that given a commitment machine, a finite state machine equivalent representation can be synthesised automatically, and therefore one way to visualise the interactions that are possible with a given commitment machine, is to generate the finite state machine corresponding to the CM as demonstrated by [244].
Finally, there is also active research on the use of dialogue-game based protocols, and there have been proposals for dialogue-game based agent communication languages [41]. An extensive review of these new trends in ACLs and the use of commitment-based and dialogue-commitment-based protocols is given in [162]. Some recent ideas about de-signing and implementation of commitment-based interactions are given in [243] and [244].
4.4.2 Discussion
We observe that the various approaches discussed above though somewhat varied, can with appropriate transformations be converted to their under finite state machine equiv-alents without loss of information for the purposes of the work we want to do in this thesis on termination detection; Indications of possible existence of such transforma-tions is due in part from the fact that some model are derivatransforma-tions of the finite state machine, and in this discussion for example;
1. [245] states that each commitment machine implicitly defines a corresponding
9NetBill is a system for micropayments for information goods on the Internet.
Finite state machine where the states of the FSM correspond to the states of the CM and the transitions are defined by the effects of the actions and [251] has shown that from a declarative description of states and allowed transitions in a protocol, i.e. a commitment machine, a finite state machine representation can be synthesised automatically.
2. AUML specified protocols can be converted to petri nets, and
3. Petri nets can be derived from transition systems [56, 186] and the reverse trans-formations are possible.
4. Conversation policies in practice are implemented as finite state machines [162]
Research Assumptions In our work we make the assumption that agents coordinate using interaction protocols, and that these interaction protocols are finite state machine based or can be reduced or transformed to finite state machine equivalent represen-tations with preserving transformations. This is particularly useful in heterogenous environments where a common underlying representation is useful for interoperabil-ity. Considering the discussion above regarding various ways in which interactions are currently modelled, an assumption of a common underlying finite state machine representation and possibility of implementing transformations is not unreasonable.
To this end, our research makes assumptions that underlying protocols are based on the finite state machine model, and subsequent discussions e.g. in chapter 5, page 66, treats protocols as finite state machines, edge-labelled directed graphs.
4.5 Summary
This chapter has reviewed the evolution of computer protocols, their formal models and techniques for their specification. The chapter then discussed current practices in interaction protocols for multiagent systems, and has shown that current research in this area extends previous work on computer protocols and is progressing towards ap-proaches like conversations policies and declarative descriptions such as commitment machines. Often though particular underlying models for agents are assumed in this approaches.
Various extensions to existing techniques has been proposed, for example the use of colored petri-nets and AUML in modelling interaction protocols. Petri-nets are con-sidered to address the concurrency issues in communication, and AUML is concon-sidered to relate agent-oriented software engineering to the successful and widely accepted UML approach in object oriented systems so as to encourage the uptake of agent de-velopment.
But the finite state machine approach is widely used in modelling and implementing protocols in implemented multiagent systems. Furthermore, in the discussion of other approaches, it is apparent that with appropriate transformations, it is possible to derive finite state model equivalent representations, this observation we propose can help in accommodating heterogeneity in implemented systems.
So in this research we make an explicit assumption that coordination is achieved by the message-centric interaction protocols and that this protocols are based on finite state model as is predominantly the case.
With this background, Chapter 5 in Part II next considers a termination detection model for multiagent systems interactions.