The specification of open interaction systems is widely recognized to be a crucial issue, which involves the problem of finding a standard way of specifying: a communication language for the interacting agents, the entities that constitute the context of the interaction, and rules that regulate interactions. An approach to solve these problems consists in modelling open interaction systems as a set of artificial institutions. In this chapter we address this issue by formally defining, in the Event Calculus, a repertoire of abstract concepts (like commitment, institutional power, role, and norm) that can be used to specify every artificial institution. We then show how, starting from the formal definition of these concepts and of application-dependent concepts, it is possible to obtain a formal specification of a system. By using a suitable tool, it is then possible to simulate and monitor the system’s evolution through automatic deduction.
The specification of open interaction systems, which can be dynamically entered and left by heterogeneous, autonomous, and self-interested agents, is widely recognized to be a crucial issue in the development of distributed applications on the Internet. The interacting agents may be heterogeneous because they may be developed by different designers; as a consequence, no assumptions can be made on their internal architecture and it is impossible to access their internal states. Agents may be self-interested because they act on behalf of different human counterparts that, in general, do not share a common goal. Finally, agents are autonomous because they are not centrally controlled, but act on the basis of private strategies.
The specification of such systems involves two main problems: the first is the definition of a standard way of specifying a communication language for the interacting agents and of the context of the interaction; the second, which derives from the assumption of the agents autonomy, is finding a way to regulate interactions so that agents may have reliable expectations on the future development of the system. A possible approach to solve those problems consists in modelling the interaction systems as a set of artificial institutions. By this term we mean the digital counterpart or extension of a human institution, like for example the institution of language, the institution of property, or the institution of auctions.
In our view the definition of a specific artificial institution (Fornara et al., 2008) consists of: (i) a component, called meta-model, which includes the definition of basic entities common to the specification of every institution, like the concepts of commitment, institutional power, role, and norm, and the actions necessary for exchanging messages; (ii) a component specific to the institution in question, which includes the specification of the powers and norms that apply to the agents playing roles in the institution, and the definition of the concepts pertaining to the domain of the interaction (for example the actions of paying or delivering a product, bidding in an auction, etc.). The aim of this chapter is to give a formal definition of the domain-independent component and to illustrate the domain-dependent component through a meaningful example.
Key Terms in this Chapter
Agent Communication Language: A language to be used by software agents for their communicative exchanges. Most proposals are inspired by Speech Act Theory; the best known are KQML (Knowledge Query and Manipulation Language) and FIPA-ACL.
Open Interaction System: A software system that can be dynamically entered and left by heterogeneous, autonomous, and self-interested agents.
Role: A conceptual device that allows one to abstract from individual agents when they interact within an institutional framework. For example, we may have the roles of auctioneer and participant in an auction, boss or employee in a company, debtor and creditor of a commitment, etc. Coherently with these examples, a role may be viewed as a label that can be used in place of the identifier of a specific agent in the design of an institution. Roles connect agents to institutional entities like: a specific institutional agent or organization (e.g., an auction house or a university), an institutional activity (e.g., a run of an auction), or an institutional relationship (e.g., a commitment or a state of ownership).
Norm: A formal specification of a deontic relation that aims at regulating the interactions among software agents and creating expectations on the future development of the system.
Social Commitment: A commitment is a construct that binds a debtor with respect to a creditor to the performance of an action or to the fact that a state of affair holds. Commitment are used in this chapter to express the semantics of a library of communicative acts, to represent active norms, and to monitor the fulfillment or violation of obligations and prohibitions of the various agents at run-time.
Institutional Power: The status that enables certain agent, particularly when act in specific roles, to create or modify institutional facts (i.e., facts that exist hold to the collective agreement of the interacting agents or of their designers).
Artificial Institution: The digital counterpart or extension of a human institution, like for example the institution of language, or the institution of auctions. The definition of a specific artificial institution consists of the definition of basic entities common to the specification of every institution, like the concepts of commitment, institutional power, role, and norm, and of a component specific to the institution in question, which includes the specification of the powers and norms that apply to the agents playing roles in the institution, and the definition of the concepts pertaining to the domain of the interaction.