Conversations are sequences of messages exchanged between interacting software agents. For conversations to be meaningful, agents ought to follow conversational principles governing the exchange of messages at any point in a conversation. These principles must be defined in publicly verifiable terms (if they are to be used in open environments) and must allow the composition of flexible conversations (if they are to account for the context in which they occur). The main contribution of this thesis is to define a unified model for conversations for action that fulfills these requirements. The conversational principle in this model is the negotiation of shared social commitments, which entails the adoption and discard of obligations to act. This principle is encoded using conversation policies, which govern the form of conversations according to the observable state of interacting agents. The applicability of this model is illustrated through the modelling of two example conversations: one on the Contract Net Protocol, and the second on an electronic bookstore scenario. |