Formalization, implementation and validation of conversation policies using a protocol operational semantics
Coordination is crucial to the efficiency of multiagent systems. As it is traditionally achieved through message passing, agent communication languages (ACL) have become a major issue in the field. Yet, existing standard technologies, like KQML, are too rigid, and make too strong assumptions when defining their semantics. More importantly, they only allow the specification of individual messages, but hardly permit to deal with sequences of message exchangesin other words conversationswhich is unavoidable if one wants complex and yet efficient interactions to take place. Conversation policies should thus be heavily integrated with ACLs. We present a framework called POS (Protocol Operational Semantics), which is a unification and generalization of existing work on interaction protocols. It does allow the design (syntax and semantics) of dedicated ACLs together with policies or constraints over the use of messages. It is both powerful and particularly easy to implement. It is general enough to allow different types and granularities of constraints. Its similarity with traditional programming languages semantic specifications provides a basis for powerful validation of syntactic and semantic properties, some of which we present in this paper. As an illustration, we give an extended example of the formalization, implementation and validation of a non-trivial protocol, together with its dedicated ACL. Strangely enough, even though conversation policies is a hot topic in multiagent systems (numerous workshops are dedicated to this theme), very few papers deal with protocol validation. This paper makes an inventory of both syntactic and semantic properties conversation policies may satisfy and gives their possible definition. In order to highlight some of those properties we provide an application example and discuss related simulations.
formalisms conversation policies semantics messages agent communication languages interaction protocols properties agent conversation