THOMAS: An Agent Platform For Supporting Normative
Multi-Agent Systems
Natalia Criado, Estefania Argente, Vicente Botti1
Grupo de Tecnologı́a Informática - Inteligencia Artificial
Departamento de Sistemas Informáticos y Computación
Universidad Politécnica de Valencia
Camino de Vera S/N 46022 Valencia (Spain)
Abstract
Open Multi-Agent Systems (MAS) are formed by autonomous and heterogeneous agents that
may pursue different and even conflicting goals. Therefore, no assumption can be a priori made
about their behaviours. Thus, it is needed to constrain the potential excesses of agent autonomous
behaviour by means of regulation of agent interaction. Because of this, “social” notions, such as
organizations, institutions and norms, have been introduced in the MAS research as coordination
and cooperation mechanisms. However, there is still a need to define frameworks which take
these organizational abstractions into account. With this aim, this work describes a model of
norms for agent organizations that covers both institutional and interaction levels, as well as
different types of norms (i.e. constitutive, regulative and procedural norms). This model of
norms has been implemented in a specific multi-agent platform, named THOMAS (Methods,
Techniques and Tools for Open Multi-Agent Systems), which provides a suitable framework for
the management of agent organizations.
Key words: Multi-Agent Systems, Norms, Open Systems, Virtual Organizations.
1. Introduction
Normative Theory has traditionally been developed inside research fields such as law, sociology, psychology, etc. Early approaches that tackled norms from the perspective of the Artificial
Intelligence (AI) field attempted to model normative concepts in a formal way so as to evaluate
and analyse normative systems in a computable way. They sought to provide a computational approach to challenges belonging to the jurisprudence domain. These proposals made a significant
contribution on classical areas of AI such as expert systems, knowledge representation, casebased reasoning, argumentation and negotiation and so on [1]. In the multi-agent system (MAS)
Email address: ncriado@dsic.upv.es, eargente@dsic.upv.es, vbotti@dsic.upv.es (Natalia Criado,
Estefania Argente, Vicente Botti)
1 This work is supported by TIN2005-03395 and TIN2006-14630-C03-01 projects of the Spanish government,
GVPRE/2008/070 project, FEDER funds and CONSOLIDER-INGENIO 2010 under grant CSD2007-00022, FPU grant
AP-2007-01256 awarded to N.Criado.
Preprint submitted to Elsevier
May 27, 2010
field, norms have been proposed as a formal specification of deontic statements that aim at regulating the life of software agents and the interactions among them [2]. Thus, norms allow legal
issues to be modelled in electronic institutions and electronic commerce, MAS organizations,
etc. Early proposals on employing normative concepts in MAS tried to establish a link between
previous works on norms from a sociological, a logical and a legal perspective and Agent Theory
[3]. However, research focus has evolved from studies aimed at addressing logical and representational issues to approaches focused on agent decision making, norm dynamics, legislator roles,
among other issues [4].
Normative systems [5] have been redefined in the computer science field as ”systems in the
behaviour of which norms play a role and which need normative concepts in order to be described
or specified” [6]. Therefore, “a normative multi-agent system (NMAS) is a MAS organized by
means of mechanisms to represent, communicate, distribute, detect, create, modify, and enforce
norms, and mechanisms to deliberate about norms and detect norm violation and fulfilment”
[7]. Thus NMAS have been defined as the research field formed by the intersection between
the normative system theory and the MAS area [8]; they combine models for normative systems
(dealing with obligations, permissions and prohibitions, for example) with models for MAS.
NMAS provide a promising model for human and artificial agent co-ordination, because they
integrate norms and individual intelligence. They are a prime example of the use of sociological
theories such as sociology, philosophy, economics, legal science in the MAS field [7]. Social
factors in MAS are also becoming more and more important to coordinate interactions in dynamic open worlds, were to constraint agent autonomous behaviour is needed. New approaches
are necessary to support the infrastructure evolution and facilitate their growth and adaptation
through execution time, due to the characteristics of these open environments [9].
The main features of open agent societies are: (i) they are populated by heterogeneous agents
which can enter or leave the system dynamically; and (ii) they are situated in virtual environments. The notion of virtual environment defines an electronic environment in which components come and go. Agent societies, also named Agent Organizations [10] can be understood
as ”complex entities where a multitude of agents interact, within a structured environment aiming at some global purpose”. Agent organizations are also called Virtual Organizations (VOs)
in other works, which are ”a cooperation of legally independent enterprises, institutions or individuals, which provide a service on the basis of a common understanding of business. The
cooperating units mainly contribute to their core competences and they act to externals as a single corporation” [11]. Thus, they are open systems formed by the grouping and collaboration
among heterogeneous entities and there is a separation between form and function that requires
defining how behaviour will take place. Agent societies or Virtual Organizations have been recently used as a paradigm for developing open agent systems [12, 13] (see [10] for a survey of
organizational approaches to agent systems). Organisational modelling and design has to take
into account not only the specification of the organisation structure and its normative behaviour,
but also how the software engineer must translate the specific properties of the VOs, which are
specified in the analysis and design models, into executable code for agent platforms. The main
problem for obtaining executable code for VOs is the lack of agent platforms that give support to
systems of this kind. Therefore, the definition and development of support platforms that allow
implementing a secure and optimized management of VOs is mandatory.
The present paper represents a step forward on these open issues. In concrete, normative abstractions have been implemented by an agent platform specifically designed for the execution of
VOs. This work is part of the THOMAS project (Methods, Techniques and Tools for Open Multi2
Agent Systems)2 , whose main objective consists of researching and developing MAS technologies necessary for the development of virtual organizations which support open environments. In
particular, a multi-agent system architecture suitable for the generation of virtual organisations
in open environments has been proposed in [14]. In addition, a support platform that will allow
these systems to be implemented has also been developed [14].
This paper is structured as follows: the next section contains an overview of the related
proposals which constitute the background of our work. In Section 3 the developed model of VO
is explained in detail. Section 4 describes how this conceptual model has been implemented in
the THOMAS platform. Finally conclusions and future works are detailed in Section 5.
2. Related Work
In this section a review of proposals on NMAS is shown. These works have been classified into: formal models for the representation of norms (section 2.1); and issues related to the
implementation of NMAS (section 2.2).
2.1. Formal Models of Norms
In order to employ norms to represent agent rights, duties and commitments as members of
a society, a formal model of norms is needed. The work described in [15] proposes the classification of the norms that govern the behaviour of autonomous agents on three normative levels:
(i) the Institutional level, with institutional norms explicitly promulgated by the institution (or a
representative); (ii) the Interaction level, with agreed norms that emerge from agent interactions
and negotiation processes; and (iii) the Private level, with private norms self-imposed by agents
that guide their behaviour. One of the first institutional normative models was the Social Law
approach [16]. It is aimed at representing norms which are imposed to the society members by
an authority. Regarding norms that emerge as a result of the agent interaction, in [17] a model
of agent commitment is proposed. A commitment is defined as a set of conditions that should
be satisfied as a consequence of an agent agreement. Finally, in [15] the formalization of private
norms following a BDI [18] representation of a mental state is proposed. More specifically, all of
the norms are represented as preferences. Following on with the inclusion of normative concepts
in the BDI agent architecture, the proposal contained in [19] presents an extension of the classic
BDI architecture for considering norms. The main drawbacks of these initial works are: (i) they
offer support to only one normative level; (ii) the set of norms or rules are defined off-line in a
static way by the system designer; and (iii) they do not consider the existence of different types
of norms, such as norms for describing legal aspects of facts or practical connections between a
regulation and its consequences.
Recently, new proposals on normative models have been made in order to design complex
and dynamic agent societies. For example, the formal model of norms proposed in [20, 21] considers dynamic aspects of norms. This approach distinguishes between substantive norms and
procedural norms. Substantive norms define the legal relationships between the members of the
society and the normative system itself in terms of regulative and constitutive norms. Regulative norms define the expected contributions to the social system. More specifically, regulative
norms describe the ideal behaviour and varying degrees of sub-ideal behaviour of a system by
means of obligations, prohibitions and permissions [21]. These norms regulate activities which
2 http://bisite2.fis.usal.es/thomas-tin/
3
can exist independently of the norm. An example of a regulative norm is ”It is forbidden for
students to cheat”. Constitutive norms introduce new classifications of abstract facts and entities, called institutional facts [22]. They do not define restrictions on behaviours, but provide
an abstraction mechanism that details the ontology used for defining the behaviour of the system [20]. An example of a constitutive norm is ”Looking at a book count-as cheating in an
exam”. Finally, procedural norms are an instrumental approach, i.e. they are aimed at achieving
social order specified in terms of substantive norms. In this sense, there is no logical connection
between a regulative norm and a sanction or reward. Therefore, procedural norms define a practical connection between a regulation and its consequences [21]. Procedural norms define how
rewards, costs and risks are allocated within a social system. An example of a procedural norm is
”Teachers are obliged to fail students in their tests whenever they have violated the cheating prohibition”; which obliges teachers to enforce the cheating prohibition by failing dishonest students
as sanction. The substantive and procedural norms are complementary. The procedural norms
are the mechanism by which the rights and duties, which are specified by substantive norms, are
defended and enforced. One interesting application of this model of norms is the consideration
of both the NMAS and agents as autonomous entities with capabilities for taking their decisions
[23]. In this sense NMAS, as agents, pursue a concrete goal (i.e. the maintenance of a certain
social order) and have bounded capabilities for achieving it.
Finally, one of the most complete, and most referred to, model of norms for open societies
is formulated in [24]. It defines two main concepts: (i) an autonomous normative agent, which
is described as an autonomous agent whose behaviour is influenced by a set of norms and; (ii)
a norm, which specifies how an agent should behave in the society. More specifically, a norm
defines its addresses and beneficiaries (i.e. the responsible and beneficiary agents of the fulfilment
of the norm, respectively); the normative goals; the norm activation and exception states; and the
related rewards and punishments. In this approach norms are classified into: general norms,
which describe the ideal behaviour of agents in terms of their responsibilities, rights and duties;
legislative norms, which define the way in which the normative set can be dynamically modified
by agents; and enforcement norms, which include sanctions and rewards, and are defined in order
to convince agents to respect the norms. The main contributions of this model are: (i) it takes
dynamical features of norms into account, since it allows the definition of norms that control the
norm change; and (ii) it gives support to the definition of enforcement norms in order to face
with agent autonomy.
The above mentioned models present some disadvantages when supporting open MAS. As a
consequence of the virtual environment, in which components may come and go, together with
the heterogeneity and autonomy of the participant agents, this type of societies needs of specific
mechanisms in order to deal with the inherent uncertain agent behaviours and the adaptation and
modification of the normative context. In addition, the complexity of this kind of society may
require a complex model of norms which covers the three different norm levels (i.e. institutional,
interaction and private) and supports the different types of norms (i.e. substantive and procedural norms). Moreover, this representation of norms must allow both the individual agents and
the system designer to reason about the normative system. In section 3 (see subsection 3.2) a
conceptual model of norms is proposed, which tries to handle all these issues.
2.2. Norm Implementation
Most of the above mentioned proposals tackle the study of NMAS from a theoretical perspective. However, works on norms from a more practical point of view have recently arisen.
4
They are focused on giving a computational interpretation of norms in order to employ them in
the design and execution of MAS software applications.
In the existing literature about norm implementation there are several proposals on normative
languages for representing constraints on agent behaviour. In [25] a normative language of general purpose was presented. This language has been employed as a reference for other proposals
on normative languages (e.g. in [26] an extension of this language to define norms in Electronic
Institutions (EI) is proposed).
The codification of norms by means of the above mentioned languages is too abstract to
be implemented in a society. Therefore, societies require mechanisms for ensuring norm compliance. In this sense, norms must be interpreted or translated into operational norms which are
meaningful for the society [27]. In [25] authors make a study about operational aspects of norms;
this work is mainly focused on analysing verifiability issues directly related to norm compliance.
Methods for providing an operational interpretation to norms are classified in two categories
(see Figure 1) [28, 27]: (i) regimentation mechanisms, which consist of making the violation
of norms impossible, since these mechanisms prevent agents from performing actions that are
forbidden by a norm; and (ii) enforcement mechanisms, which are applied after the detection
of the violation of some norm, reacting upon it. In a recent work [29], a taxonomy of different
techniques for implementing effectively norms is proposed. On the one hand, the regimentation of norms can be achieved by two processes: (i) mediation, in which both the resources and
communication channel are accessed through a reliable entity which controls agent behaviours
and prevents agents from deviating from ideal behaviour (e.g. governors in Electronic Institutions [30]); and (ii) hard-wiring, assuming that the agents’ mental states are accessible and can
be modified in accordance with norms (e.g. the KAoS proposal [31] employs this compliance
ensuring process). On the other hand, norm enforcement techniques are classified according to
both the observer entity and the enforcer entity. Norms are self-enforced when agents observe
their own behaviours and sanctions themselves. Thus, norm compliance is both observed and
enforced without the need of any additional party. In situations in which those agents involved
by a transaction are responsible for detecting norm compliance (i.e. second-party observability)
norms can be enforced by: (i) the second-party which applies sanctions and rewards as retaliation and reciprocation, respectively; and (ii) a third entity which is an authority and acts as an
arbiter in the dispute resolution process [32]. In the case of third-party observability two different mechanisms for ensuring norm compliance can be defined according to the entity which is
in charge of norm enforcing: (i) social norms are defended by the society as a whole [33]; (ii)
in assisted enforcement the sanctions are applied by an authority which acts as a judge in the
grievance process. Finally, in infrastructural enforcement there are infrastructural entities which
are authorities in charge of monitoring and applying sanctions and rewards [34].
The great majority of the works on a computational implementation of norms are based on
the Electronic Institution (EI) proposal. In [35] a formalism based on rules for representing
and reasoning about constraints on agent behaviours is presented. This rule-based language has
been employed in order to regiment norms that govern EIs [26]. The EIs provide a framework
for heterogeneous agent cooperation. However, they are not a fully open environment, because
agents interact inside the institution through the infrastructure provided by the EI. The behaviour
of external agents is completely controlled by the institution, which allows or forbids agents
to pronounce certain illocutions. Thus, norms are regimented or pre-imposed on agents. The
definition of NMAS is more similar to Partially Controlled MAS (PAC) [36]. A PAC is an open
MAS in which there are two types of agents: controllable agents, which are directly controlled
by the system designer; and uncontrollable agents, which are not under the designer’s direct
5
3%#456,#,-+'
)*+,$*-.%/"-'
7*4,%/"-'
!"#$%&'("#$'
8*&150-1"#2*$*-.'
)*.%,&%/"-'
0-1"#2*$*-.'
8*2"-459%#.:'0-1"#2*$*-.'
)*2,9#"2%/"-'
;<,#459%#.:'0-1"#2*$*-.'
=#>,.*#'?'@A4+*'
8"2,%&'8%-2/"-'
B-C/.A/"-%&'8%-2/"-'
!"#$%&'(%)*
+,")#,#(-%&'(*
Figure 1: Operational Interpretation of Norms
control. Thus, uncontrollable agents may deviate from ideal behaviour. As a consequence, there
has to be an enforcing mechanism delegated into some controllable agents which act as norm
supervisors. Our proposed multi-agent framework, named THOMAS (Methods, Techniques and
Tools for Open Multi-Agent Systems) is more related to the notion of PAC, since it does not have
any mediator layer. On the contrary, in THOMAS agents are allowed to interact freely. In this
way, a conceptual model of norms has been designed (explained in the following section) that
allows describing norms with enforcing mechanisms. Section 4 illustrates details related to the
implementation of our conceptual model of norms into the THOMAS platform.
Throughout this section, a short overview of the most relevant works on normative models
and norm implementation has been given. These proposals have been evaluated taking as a
reference the main challenges of open MAS. After analysing the concrete challenges of open
MAS and considering the current normative models, a new model of norms for VOs is proposed
in the next section.
3. Virtual Organization Model
As previously stated, VOs have been employed as an abstraction for modelling open agent
societies. In this sense, they allow systems to be modelled at a high level of abstraction. VOs
include the integration of organizational and individual perspectives and also the dynamic adaptation of models to organizational and environmental changes [37]. Based on the Human Organization Theory [38], the work described in [39] consists of a Virtual Organization Model (VOM)
which allows the main aspects of an organization to be described. The main contribution of VOM
is that it is aimed at modelling open societies in which heterogeneous and autonomous agents
work together, focused on the integration of both Web Services and MAS technologies. This section contains a general overview of the proposed model together with a theoretical definition of
the main components of a VO (Section 3.1). In concrete, the definition of norms for controlling
6
the VO performance is explained in Section 3.2.
3.1. Virtual Organization Definition
The VOM approach takes into account the four main aspects of a VO: (i) the Structural
dimension, which describes components of the system and their relationships; (ii) the Functional dimension, that details the system functionality; (iii) the Normative dimension, that defines mechanisms employed by a society in order to influence its member behaviour; and (iv) the
Environmental dimension, which describes the environment in terms of its resources and how
agents can perceive and act on them. A complete description of this model can be found in [39].
Taking the main concepts and relationships of VOM as a reference, a VO is formally defined as
follows:
Definition 3.1 (Virtual Organization). A Virtual Organization (VO) is defined as a tuple VO =
hA, R, OU, N, S , ER, Ac, F, roles, playsi where:
• A = {a1 , ..., am } is the set containing all agent labels. Agent labels (ai ) are constants that
identify members of the VO by a unique name;
• R is the set of labels identifying roles which have been defined in the VO;
• OU = {ou0 , ou1 , ...} is the set of organizational units which has been defined in the VO,
where each organizational unit is a partition of A (oui ∈ P(A));
• N is the normative context of the VO, i.e. the set of norms that control the operations
carried out in the VO (see definition 3.2);
• S is the set of services defined inside the VO, which represent tasks and protocols. Each
service is identified by a unique label;
• ER is the set of resources located in the VO environment;
• Ac is a set of primary individual actions. Since functionalities are represented as services,
actions in our model are related to the service access:
(∀s ∈ S : S erve(s) ∈ Ac ∧ Request(s) ∈ Ac ∧ Register(s) ∈ Ac)
where S erve(s) means that service s is provided, Request(s) represents a request of functionality s and Register(s) implies that a new service s is registered in a directory.
In addition, actions for accessing the environment are also considered. The set Ac is
defined as follows:
(∀r ∈ ER : Act(r) ∈ Ac ∧ Percept(r) ∈ Ac)
where Act(r) implies a change in the parameters of resource r and Percept(r) represents
that some of the parameters of r has been read.
• F is the set of basic facts. It covers facts related to the execution of actions Dom (a) ,
Donem (a). More explicitly: ∀a ∈ Ac ∧ ∀m ∈ A : Dom (a) ∈ F ∧ Donem (a) ∈ F;
• roles : OU → 2R is a function that maps each organizational unit with the set of roles that
can be played by agents belonging to this unit;
7
• plays : A × OU → 2R is a function that maps each agent and unit with the set of roles
played by the agent inside this specific unit.
This theoretical definition of a VO allows defining:
• The Structural Dimension; i.e. the set of agents (A), roles (R) and organizational units
(OU) which form a VO. An Organizational Unit (OU) is a basic social entity that represents the minimum set of agents that carry out specific and differentiated activities or
tasks, following a predefined pattern of cooperation and communication [40, 41]. An OU
includes a set of roles (R) that can be played by its members.
• The Functional Dimension; i.e. the set of services (S ) defined by the VO. Services represent the functionality that entities offer to others, independently of the concrete one that
makes use of it. VOM allows describing agent functionality in terms of services, by means
of OWL-S [42] ontology, highly standardized and popular in the Web Service domain.
Any entity, both agents and OUs, is capable of offering, publishing or requesting some
specific functionality. Thus, the request (Request), publication (Register) and provision
(S erve) of services are valid actions of agents in a VO.
• The Environment Dimension; i.e. the resources (ER) located in the VO environment. Our
purpose is focused on describing environmental resources, perceptions and acts on these
elements. Therefore, the actuation (Act) and perception (Percept) of these environmental
resources belong to the set of valid actions (Ac).
• The Normative Dimension of VOM (N) is a coordination mechanism that attempts to: (i)
promote behaviours that are satisfactory to the organization, i.e. actions that contribute to
achievement of global goals; and (ii) avoid harmful actions, i.e. actions that prompt the
system to be unsatisfactory or unstable.
This definition of VO extends the traditional models of MAS, with the normative context (N)
of the society. Therefore, this theoretical model of VO is mainly focused on the definition of
norms which control agent behaviours. Next, a complete definition of these normative concepts
is provided.
3.2. Normative Context Definition
Along this section, the normative dimension of a VO is formally defined by means of a
conceptual model of norms whose full description can be found in [43]. It is based on previous
proposals of computational norm models [20, 24, 15] and takes its inspiration from human legal
systems [44, 45]. Following, a formal description of its main components is provided. More
concretely, it defines normative context as follows:
Definition 3.2 (Normative Context). The Normative Context (N) of a VO covers the set of
norms defined by the organization itself as well as the norms derived from agent interactions.
More formally, N = I ∪ C where:
• I are the institutional norms (I = IConstitutive ∪ IRegulative ∪ IProcedural );
• C are the interactional norms, i.e. the set of norms which have been created as a consequence of the interactions among agents (C = CConstitutive ∪ CRegulative ∪ C Procedural ).
8
Taking the previously cited norm levels [15] as a reference, the normative context is formed
by a set of norms belonging to institutional and interactional levels, thus they can be defined
by the institution or organization (I) or derived from agent interactions (C). The private level
(i.e. internal norms of agents) has not been considered in this work, since this model is focused
on the social dimension of norms. Table 1 summarises the main differences among institutional
and interactional norms in our approach. For example, an interactional norm is created by two
agents, one of them is responsible for fulfilling the commitment and the other one benefits from
it, for a specific period of time. On the contrary, an institutional norm states permanently an
agent responsibility, right or duty which benefits the overall society. However, the existence of
an institutional norm does not imply its acceptance by the addressee.
Beneficiaries
Addressee
Legislator
Validity
Institutional Level (I)
Society
Agent
Institution
Undefined
Interaction Level (C)
Grantee Agent
Committed Agent
Agents involved by the agreement
Known Period of Validity
Table 1: Norm Levels
In addition, these two set of norms are classified into three other categories [21]: Constitutive,
Regulative and Procedural norms. The constitutive norms (NConstitutive = IConstitutive ∪ CConstitutive )
allow giving an abstract meaning to facts, environmental elements, etc. They introduce new
classifications of facts and terms, called abstract facts. The regulative norms (NRegulative =
IRegulative ∪ CRegulative ) describe the ideal behaviour of a system by means of obligations, prohibitions and permissions. Finally, the procedural norms (NProcedural = IProcedural ∪ C Procedural )
are an instrumental approach, i.e. they define the enforcing mechanisms in terms of punishments
and rewards carried out by representative agents of the VO. Therefore, procedural norms define a
practical connection between a regulation and its consequences [21]. Next, the formal definition
of each type of norm is described in detail.
3.2.1. Constitutive Norms
This kind of norms is employed inside the VO at the interaction and institutional levels for
the definition of new categories, concepts and facts in terms of which the ideal behaviour of the
system is defined.
Definition 3.3 (Constitutive Norm). A constitutive norm (nc ∈ Nconstitutive ) is defined as a tuple
nc = hx, y, ci where:
• x represents a basic concept or set of basic concepts. It is an expression formed as a
conjunction of literals belonging to the set of basic facts F;
• y represents the new abstract concept.
• c represents the context in which the basic term x can be abstracted as the concept y.
The set of constitutive norms is formed by the set of constitutive norms formulated by the VO
as well as those defined in the context of an agreement among agents (NConstitutive = IConstitutive ∪
9
CConstitutive ). Therefore, two set of facts are defined through the constitutive norms: institutional facts (IConstitutive ) and agreed facts defined in the context of an agreement among agents
(CConstitutive ).
For example, the next expression contains a constitutive norm (nconstitutive ∈ Nconstitutive ) which
defines what is considered as valid register inside a chat unit:
nconstitutive = hDoneId (S erve(logging(NickName))),
register(NickName), registerAutority ∈ plays(chat, Id)i
It defines that if the logging service is provided by any agent (DoneId (S erve(logging(NickName)))),
then it will be considered as a valid register (register(NickName)) if, and only if, the provider
agent (identified as Id) plays the registerAutority role in the chat unit (plays(chat, Id)). As defined above, plays is a function that maps each agent and unit with the set of roles played by the
agent in this specific unit.
3.2.2. Regulative Norms
In this work, we take as a basis the formalization of norms made in [46]. In this proposal
a regulative norm is a rule that defines an action as obliged, permitted and prohibited. The
conditions under which regulative norms are instantiated and enforced are defined in terms of
procedural norms (see Section 3.2.3). Regulative norms allow the definition of the legal behaviour of the system at different levels: from an institutional perspective or from the interaction
level. Next, the formalization of regulative norms belonging to each one of these two levels of
norms is described.
• Institutional Level: they are the normative sentences through which the organization itself
determines rights and responsibilities of the society members. This approach distinguishes
between the general norms, which control the behaviour of all agents belonging to the
NMAS; and rules addressed at a specific set of agents which are playing a certain role
inside a group.
– Definition 3.4 (General Norm). A General Norm (gn ∈ GN) is defined by a tuple
hD, Ci where:
∗ D ∈ {F , P, O} is the deontic modality [47], which define the norm type. In
this work obligations (O) and prohibitions (F ) impose constraints on agent behaviours, whereas permissions (P) are operators that define exceptions to the
activation of more general obligations or prohibitions;
∗ C is a logic formula that represents the norm condition; i.e. the actions (Ac)
that must be carried out in case of obligations, that must be avoided in case of
prohibitions or that can be freely carried out in case of permissions.
For example, the following norm (ngn ∈ GN) defines as mandatory for any agent to
provide some functionality:
ngn = hO, Register(S erviceId))i
Therefore, all agents are obliged to register themselves as providers of one service
(S erviceId) at least.
– Definition 3.5 (Rule). A rule (r ∈ Rule) is defined as a tuple r = hD, C, T i, where:
10
∗ D ∈ {F , P, O} is the deontic modality;
∗ C is the norm condition;
∗ T is a pair (r, g) where r ∈ R is the role at which the norm is directly addressed
and g ∈ OU is the group inside of which the norm can be applied.
Next an example of an rule (nrule ∈ Rule) is provided:
nrule = hO, Register(logging), (registerAutority, chat)i
It defines that all agents that play the registerAutority role inside the chat are obliged
to register their own logging service.
In summary, the set of institutional regulative norms is formed by the general norms and
the rules which deal with controlling a specific role (IRegulative = GN ∪ Rule).
• Interaction Level: they are normative prescriptions that emerge as a result of the interaction among agents. Therefore, this level of norms is formed by the commitments reached
by agents along their execution. This proposal distinguishes two types of commitments:
those which have been informally defined (agreements) and those which have been formalized at the institutional level (contracts). Therefore, those agreements which have
been formalized by some legal representative of the VO are named contracts.
– Definition 3.6 (Agreement). An agreement (cRegulative ∈ CRegulative ) is defined as
cRegulative = hD, C, i, ji where:
∗ D ∈ {F , P, O} is the deontic modality;
∗ C is the norm condition;
∗ i, j ∈ (A ∪ OU) represent the two agents or organizational units involved in the
agreement.
Thus, they are deontic expressions which define the rights and responsibilities derived of the agreement. In particular, rights are defined as permissions whereas responsibilities are formalized by means of obligations and prohibitions.
As an example, nagreement ∈ CRegulative defines that an agent (a) could be authorized to
employ other’s resources (Act(rb )) as a consequence of a negotiation process among
them:
nagreement = hP Act(rb ), a, bi
– Definition 3.7 (Contract). A contract is defined as an agreement recognized by the
organization.
Therefore, the set of contracts (Contract) is a subset of agreements (Contract ⊆
CRegulative ).
As an example of a contract agreed by agents, ncontract ∈ Contract defines that a seller
agent (s) is obliged to deliver certain item (Provide(delivery(item)) to a buyer agent
(b):
ncontract = hO, Provide(delivery(item)), s, bi
In conclusion the set of regulative norms is defined as the union between institutional and
interactional regulations (NRegulative = IRegulative ∪ CRegulative ). Next, Table 2 summarizes the main
features of each type of regulative norms defined in the proposed model. These features of norms
11
are based on the well known works on norm typologies [48] [49]. The main features of a norm
are related to its formalization, distribution, evaluation, enforcement and learning. A norm is
formalized if it has been recognised as a norm by the institution. Regarding the distribution
feature of a norm, it represents the extent of knowledge of the norm; i.e. whether the norm
is distributed to all the society members, to some group of them or if it is not distributed. The
learning process by which an agent internalizes a norm can be: primary, if the agent should know
the norm as a result of being a society member; secondary, if the agent should know the norm
when it assumes a concrete position inside the society; and the result of an agent interaction.
The evaluation feature of a norm determines whether norm compliance can be observed by all
the society members (third-party) or only by those agents affected by an interaction (secondparty). Finally, the enforcement property has been divided into two attributes: the enforcement
mechanisms employed for achieving norm fulfilment; and the enforcement entity, i.e. the type of
entity in charge of norm enforcing, explained in previous section 2.2.
Formalized Distribution Learning
General Norm
Rule
Contract
Yes
Yes
Yes
All
Group
No
Agreement
No
No
Evaluation Enforcement
Enforcement
Mechanism
Entity
Primary Third-party
Sanction
Authority(Judge)
Secondary Third-party
Sanction
Authority(Judge)
Interaction Second-party Sanction Authority (Arbiter)
Reward
Second-party
Interaction Second-party Sanction
Second-party
Reward
Second-party
Table 2: Characterization of Regulative Norms
For example, a legal contract is a norm which is not necessarily known by all the organization
members. Contracts are stated when a representative of the institution recognises an agreement
among agents. In addition, the fulfilment of a contract is evaluated by the affected agents privately, not by the whole society. Regarding enforcement mechanisms, contracts can define both
sanctions, for punishing agents which do not respect the agreement; and rewards, as an incentive
for the accomplishment of the contract. Since contracts have been given an institutional meaning
by a representative of the legal system (authority); then an authority of the legal system would
be in charge of applying the defined punishments in case of contract violation.
3.2.3. Procedural Norms
This kind of norms determines the way in which regulative norms are applied in the VO.
More concretely, they allow agents in charge of controlling a norm to detect its violation and to
carry out the appropriate actions in response.
Definition 3.8 (Procedural Norm). A Procedural Norm (nProcedural ∈ NProcedural ) links a regulative norm with the mechanisms that allow its application. Thus, it is defined as: nProcedural =
hnRegulative , A, E, S , Ri where:
• nRegulative ∈ (NRegulative = IRegulative ∪ CRegulative ) represents the substantive norm controlled
by the procedural norm.
12
• A, E are boolean conditions defined over terms belonging to F, which is the set of basic
facts (see definition 3.1). They define the activation and expiration conditions of a regulative norm, respectively.
• S , R ∈ NRegulative are normative expressions which describe the actions that will be carried
out in case of norm violation or fulfilment, respectively. This type of expressions is defined
as regulative norms.
Regarding an example of a procedural norm, n procedural ∈ NProcedural defines that a seller agent
(s) which is obliged to deliver certain item (Provide(delivery(item)) to a buyer agent (b) will be
paid 100 euros (hO, b, Provide(Payment(100))i):
n procedural = hhO, Provide(delivery(item)), s, bi, −, −, hO, b, Provide(Payment(100))ii
3.2.4. Summary of Norms
Next, Table 3 contains a summary of the normative concepts defined before. It details the
main elements which characterise each category and the norm types belonging to each category
of norms. For example, constitutive norms define a new abstract concept in terms of a conjunction formed by basic facts. Constitutive norms are classified into: legislative norms, which
define the process by which the normative system is dynamically modified by agents; and norms
for defining new categories of institutional and agreed facts (i.e. Institutional Definition and
Agreed Definition).
Norm Category
Regulative
Norm Elements
Deontic Modality
Norm Condition
Beneficiaries
Target
Norm Types
Institutional Regulations
Agreements
Constitutive
Abstract Fact
Basic Fact
Legislative Norm
Institutional Definition
Agreed Definition
Procedural
Regulative Norm
Activation
Expiration
Sanction
Reward
Enforcement Norm
(Sanction and Reward Norms)
Table 3: Summary of Norms
In this section a formal definition of VO for supporting the design of open MAS has been
given, which includes normative descriptions that can be employed in enforcement mechanisms
that help ensuring global coordination in open systems, taking into account the impossibility of
controlling (the majority of) agents directly. This formal definition takes the previous proposals
(Section 2.1) as a starting point and extends them by adding dynamical features to the normative
model and covering both the different norm levels and types. The next section illustrates how
this theoretical model has been implemented inside the THOMAS platform.
13
4. The THOMAS Approach
The aim of the THOMAS project is to advance and contribute solutions in the development
of a MAS architecture suitable for the generation of VOs in open environments, as well as a
support platform which allows these systems to be implemented. More specifically, our aim is to
develop mechanisms based on organizational structures and VOs that optimise and regulate the
coordination of services in open multi-agent systems.
This section contains an overview of the THOMAS approach together with a detailed description of how the normative model proposed in the previous section has been applied into the
THOMAS platform.
4.1. THOMAS Platform
THOMAS [14] is an open agent platform that employs a service-based approach as the basic
building blocks for creating a suitable platform for intelligent agents grouped in VOs. It feeds
on the FIPA3 architecture, but extends its main components —the Agent Management System
(AMS) and the Directory Facilitator (DF) — into an Organization Management System and a
Service Facilitator, respectively. Therefore, the two main components of the THOMAS approach
are:
• Service Facilitator (SF) [50], which is a service manager that registers services provided
by external entities and facilitates service discovery for potential clients. Thus, the SF
copes with the limitations of the traditional DF, considering semantic information, service composition as well as service roles, goals and durations, following Service Oriented
Architectures guidelines.
• Organization Management System (OMS) [51], which is responsible for the management
of VOs, taking control of their underlying structure, the roles played by the agents inside
the organization and the norms that rule the system behaviour. More specifically, the OMS
component is in charge of controlling how organizational units (OUs) are created; which
entities are participating inside; how these entities are related to each other and which roles
they play through time.
4.2. Norm Representation in the THOMAS Architecture
As described in section 3.2, our VO model classifies norms into three main groups: constitutive, regulative and procedural norms. Below, the deontic language for representing these kinds
of norms inside the THOMAS platform is explained in detail. The motivation for the explicit
representation of norms is to prevent a too general notion of norms. Calling every requirement a
norm makes the concept empty and useless [4]. In addition, the explicit representation of norms
might allow agents to reason about them and even propose changes of those norms.
4.2.1. Representation of Constitutive Norms
In general, constitutive norms are used to create new abstract concepts which allow regulative norms to be defined in a general way. Following the contextual ontology proposal [52]; in
THOMAS constitutive norms are represented as COUNT-AS [53]. Next, syntax, semantics and
an example of a constitutive norm are provided.
3 http://www.fipa.org
14
Constitutive Norm Syntax. Table 2 shows the BNF notation of the grammar for representing
constitutive norms in THOMAS. On the one hand, <fact> represents both the set of basic facts
and the new category defined by the norm. On the other hand, a <condition> is defined as a
boolean condition defined over state predicates.
<constitutive norm>
::=
<fact> COUNT-AS <fact> IN <condition>
Figure 2: BNF syntax of constitutive norms
Constitutive Norm Example. As an example of an abstract concept agreed by agents, Norm
1 defines which action is considered as a contract fulfilment. It claims that if a seller agent
(s) carries out the action corresponding to the delivery (deliver(item, d)) of an item (item) in a
specific date (d) before the committed delivery date (d <= cd), then it will be considered as a
fulfilled contract (done s ( f ul f illContract)).
do s (deliver(item, d)) COUNT-AS done s ( f ul f illContract)
IN ∃cd : done s (signContract(item, cd)) ∧ d <= cd
(1)
Constitutive Norm Semantics. The meaning of a constitutive norm expressed by means of first
order logic [54] is:
x COUNT-AS y IN c ≡ c ∧ x → y
The rule represents that if the condition c holds then the basic concept x can be redefined as the
abstract concept y.
4.2.2. Representation of Regulative Norms
In our approach, agent actions are related to service controlling and resource management
processes. Thus, a normative language which makes possible the definition of constraints on
agent behaviours in terms of this type of actions has been described in [55]. The main contributions of the proposed language are: (i) it gives support to organizational concepts such as roles
or organizational units; and (ii) the definition of agents’ functionality as standard semantic web
services increases norm expressiveness since the actions controlled by norms are described in a
more elaborated way.
Regulative Norm Syntax. Table 3 shows the normative language syntax which allows regulative
norms to be expressed. A regulative norm is defined by means of a deontic operator (<deontic modality>), an addressed entity and an action. These actions may be related to service or
resource access. Regarding service access norms (<service action>) they are related to the publication, provision or usage of services. Resource control norms (<resource action>) define
authorizations for perceiving and acting over resources.
As previously mentioned, the specification of functionalities by semantic services allows
functionality to be defined in a more sophisticated way. In this sense, it allows representing
service inputs, outputs, preconditions and effects. Furthermore, there could be additional parameters in a service description, which are independent of the service functionality (non-functional
parameters), such as quality of service, deadlines and security protocols. Taking into account
15
that THOMAS works with semantic services, another important data is the ontology used in the
service. Thus, when the service description is accessed, any entity will have all needed information in order to interact with the service and make an application that can use this service. Such
a description can also be employed for pre-compiled services, in which the process model of the
service is composed of the sequence of the elementary services that will be executed, instead of
the internal processes of this service [56]. The global functionalities are described as complex
services that are composed of atomic services, so a complex service specification describes how
agent behaviours are orchestrated. Moreover, functionality is detailed in two ways: services that
entities perform and services that entities need. Thus, Service Oriented Computing concepts such
as ontologies, process models, choreography, facilitators, service level agreements and quality
of service measures can be applied to MAS. OWL-S [42] is the chosen language to represent
semantic services in the SF component of the THOMAS framework.
Regulative Norm Examples. As an example of an institutional general norm, Norm 2 authorizes
any agent to request acquisition of the Subordinated role.
PERMIT T ED ADDRES S EE ANY REQUES T AcquireRole
MES S AGE(CONT ENT (RoleID “S ubordinated′′ ))
(2)
Norm 3 contains an example of a norm which has been created as a result of an agreement
between two agents; agenta and agentb agents, respectively. This norm determines that the
addressee agent is obliged to provide the SearchService service to the beneficiary agent.
OBLIGED ADDRES S EE agenta BENEFICIARY agentb
S ERV E S earchS ervice
MES S AGE((S ENDER agentb ) CONT ENT (QueryIn f o ?q))
(3)
Regulative Norm Semantics. Regulative norms have been defined in the previous section as rules
that constrain allowed actions of agents. In this sense, actions play a crucial role in the semantics
of regulative norms. Next, their semantics is given by means of dynamic logic [47]:
FORBIDDEN a α
OBLIGED a α
PERMITTED a α
≡
≡
≡
[Donea (α)]V
[¬Donea (α)]V
[Donea (α)]¬V
V is the well-known predicate for representing violation states; α represents an action; a
represents an entity to which the norm is addressed to. The predicate Donea (α) represents an
action α that has been performed by an entity (a) (see Definition 3.1). The interpretation of this
predicate depends on the entity which is affected by the norm. In case of a general norm, which
controls behaviours of all the members of the VO, Donea is defined as ∀m ∈ A (Donem (α)). In
case of a rule that controls agents which are playing a specific role r inside a unit u, the predicate
Donea (α) represents ∀m ∈ A (r ∈ plays(ou, m) ∧ Donem (α)); where plays is a function which
maps an agent to the roles it plays inside an organizational unit to which it belongs.
16
<regulative norm>
::=
<deontic modality> <addressee> [<beneficiary>]
<action>
<addressee>
::=
ADDRESSEE <entity>
<beneficiary>
::=
BENEFICIARY <entity>
<deontic modality>
::=
OBLIGED | FORBIDDEN | PERMITTED
<entity>
<agent>
<role>
<unit>
::=
::=
::=
::=
<agent> | <role> − <unit> | ANY
?variable | agent id
?variable | role id
?variable | unit id
<action>
::=
<resource action> | <service action>
<resource action>
::=
ACT(resource id) | PERCEPT(resource id)
<service action>
::=
<service publication> | <service provision>| <service usage>
<service publication>
::=
REGISTER service name PROFILE <profile desc>
[PROCESS<process desc>]
<service provision>
::=
SERVE service name PROCESS <process desc>
[MESSAGE(<msg cont>)]
<service usage>
::=
REQUEST service name MESSAGE(<msg cont>)
Figure 3: BNF syntax of regulative norms
17
4.2.3. Representation of Procedural Norms
Returning to the definition of procedural norms given in the previous section (see Definition
3.8), they define the way in which the VO implements norms, i.e. they establish a connection
between a norm and its consequences. In order to represent procedural norms, our normative
language has been extended with syntactical rules for representing the violation and exception
conditions, the validity interval and sanctions as well as rewards.
Procedural Norm Syntax. Figure 4 defines BNF syntax of procedural norms. More specifically,
a procedural norm is defined by a regulative norm, whose syntax is contained in Figure 3; and
a time interval which specifies its validity period ([START <event>] [END <event>]). Usually, procedural norms define sanctions and rewards as persuasive methods; they are represented
through regulative norms which oblige some empowered agent to act as norm defender or promoter.
<procedural norm>
::=
<regulative norm> [START <event>] [END <event>]
[SANCTION <regulative norm>] [REWARD <regulative norm>]
Figure 4: Procedural norm BNF syntax
Procedural Norm Example. For example, norm 4 obliges a Supervisor agent to request AddUnit
service; if the Supervisor agent does not respect the norm, then it will be expelled from the organization by the OMS as sanction. Norm 4 contains an exception state condition and a validity
condition also. In this case, these conditions indicate that the agent is obliged to request AddUnit service before 10 seconds (END(10′′ )) if it is the only Supervisor inside the organization
(Quantity(“S upervisor′′ ) > 1).
?agent : S upervisor OBLIGED REQUES T AddUnit
EXCEPT ION Quantity(“S upervisor′′ ) > 1
END(10′′ )
S ANCT ION oms OBLIGED PROV IDE Expulse
MES S AGE(CONT ENT (?agent, “S upervisor′′ ))
(4)
Procedural Norm Semantics. As previously argued, procedural norms define the process by
which norms are implemented by the VO. The representation of a procedural norm has the following form:
regulativenorm START startevent END endevent
SANCTION sanctionnorm REWARD rewardnorm
where regulativenorm is the regulation controlled by the procedural norm; startevent and endevent
define the activation interval of the norm; and finally sanctionnorm and rewardnorm represent the
norms which define responsibilities of the norm enforcer entities. The semantics of procedural
norms given by means of inference rules [54] is described as:
18
startevent → regulativenorm
endevent ∧ regulativenorm ∧ ¬V → ¬regulativenorm ∧ rewardnorm
endevent ∧ regulativenorm ∧ V → ¬regulativenorm ∧ sanctionnorm
The first inference rule defines a regulative norm (regulativenorm ) as active after occurrence
of the start event (startevent ). The regulative norm determines the occurrence of the violation
condition. Finally, the last two inference rules detect norm deactivation (endevent ) and retract the
regulative norm from the active norm set (¬regulativenorm ). If the norm has not been violated,
then the reward norm is activated. On the contrary, the sanction will be active if the norm has
been violated (sanctionnorm ). These inference rules provide a basic interpretation of procedural
norms and their relationship with regulative norms. The following section illustrates how each
kind of norms has been implemented in the THOMAS platform.
4.3. Norm Control in the THOMAS Architecture
Once the general characteristics of our proposed deontic language have been described, some
aspects related to the management of norms are commented in this section. In Open NMAS,
internal states of agents are not accessible. Therefore, norms cannot be imposed as agent beliefs
or goals. On the contrary, norms have to be implemented in the society. Therefore, this section
focuses on the implementation mechanisms employed in THOMAS in order to let norms have
an effective influence on agent behaviours.
4.3.1. Operational Interpretation of Norms
As previously argued, the THOMAS platform does not have any mediator layer. Thus, there
is not a centralized entity that controls all the interactions carried out by agents. Therefore, only
the norms that regulate access to the THOMAS services (i.e. the services provided by the SF and
the OMS components) are controlled by the platform.
The set of controllable norms in THOMAS is the set of norms which define permissions,
prohibitions and obligations concerning the access to THOMAS services. On the one hand,
permission and prohibition norms are controllable, since the THOMAS services check whether
the service client agent is allowed to perform such request before providing it. More specifically,
these norms have been regimented. On the other hand, obligation norms cannot be imposed,
since the SF and OMS components have not capabilities to force agents to carry out any action.
However, they can monitor the agent behaviour in order to detect the violation and fulfilment of
obligation norms and react to them. Thus, controllable obligation norms have been enforced in
the THOMAS platform. The rest of norms that can be defined in THOMAS (i.e. all those ones
that do not concern specific THOMAS services) cannot be controlled directly by the platform,
since it is an open system in which heterogeneous and unknown agents can interact freely without
any mediation. As a consequence, they must be controlled by additional mechanisms such as:
social enforcement, arbitration, etc.
Next, some details about the operational of controllable norms are explained [51]. In particular, operational semantics of controllable norms have been expressed as Event-Condition-Rules
(ECA-rules) [57] since they can be used in rule engines for implementing knowledge-based systems and expert systems. Therefore, ECA-rules have been selected for providing an operational
19
semantics to norms since they can give a better understanding of how norms have been effectively implemented by means of a rule-based system (this implementation will be described in
Section 4.3.2).
• Service access norms. They allow the definition of prohibitions and permissions concerning the use of both OMS and SF services. Next, the semantics of both a permission and
prohibition norm are given:
on startevent do ⊕permitted(a)
on a if permitted(a) do ⊕provided(a)
(5)
on endevent do ⊖permitted(a)
on startevent do ⊕ f orbidden(a)
on a if f orbidden(a) do ⊕notAllowed(a)
on endevent do ⊖ f orbidden(a)
(6)
The first three ECA-rules (5) describe how a permission norm has been regimented,
whereas the last three ones represent a prohibition norm semantics (6). According to this, a
general service access norm is controlled by means of the definition of three new rules. The
first rule detects norm activation and asserts the permission (⊕permitted(a)) or prohibition
(⊕ f orbidden(a)). If the action (a) occurs and a is allowed, then the service is provided
(⊕provided(a)). On the contrary, if a is forbidden, then notAllowed fact is asserted. The
last rule retracts the norm from the expert system when the norm is deactivated, i.e. when
the completion event is detected (endevent ).
• Obligation norms. These norms are enforced by the THOMAS platform. Thus, it might
persuade agents to behave correctly by performing sanctions and rewards. Following, a
formal description of obligation semantics is shown:
on startevent do ⊕expected(a)
on a if expected(a) do ⊖expected(a) • reward
(7)
on endevent if expected(a) do ⊖expected(a) • sanction
Thus, the implementation of obligation norms involves controlling the activation of the
obligation. Then the THOMAS infrastructure waits for the fulfilment of the expected
action (a), i.e. a new expectation (⊕expected(a)) is asserted. If the action is performed
before the deadline (endevent ) then the reward is carried out. Otherwise the sanction will be
performed.
4.3.2. Norm Implementation
The operational interpretation of norms, described above, provides a computational meaning
to norms. However, these operational norms are too abstract for being translated into a software
implementation. Next, a description concerning the computational implementation of norms
inside the THOMAS platform is given.
The process of normative management covers: i) maintenance of the organizational state; ii)
performance of the enforcement actions (sanctions and rewards); and iii) determination of the
20
allowed actions according to the normative context and the organizational state. These functionalities have been implemented as internal services of THOMAS, by means of a rule-based
system implemented in Jess4 that maintains a fact base representing the organizational state and
it also detects norm activation. Figure 5 shows a schematic view of this process. This rule-based
system is accessed by the THOMAS services through two different services: a query service
which allows determining whether an agent is allowed to request a service; and an updating
service which is in charge of adding and deleting facts into the rule system in order to register
the organizational current state. In addition, this system monitors agent behaviours and carries
out sanctions and rewards related to controllable obligation norms. Each one of its four main
components is briefly explained as follows [58]:
Figure 5: Overview of the Norm Implementation
1. Norm Interpretation (Figure 5 Item 1). The formal specification of a norm (described with
our BNF syntax defined in section 4.2) is translated into a normative fact or norm instance
(defined with ECA-rules) which can be managed by a rule-based system. As stated before, constitutive norms create new categories of facts which make up the (institutional)
ontology employed when general norms are defined. Therefore, it is necessary to translate
abstract norms into concrete norms according to the normative ontology in order to make
norms computable.
2. Norm Activation Detection (Figure 5 Item 2). A new fact corresponding to the new norm
is asserted into the belief base. As previously argued, norms are not active at all times. In
fact, the activation of norms might be defined in terms of state and temporal conditions.
As a consequence, a set of rules for detecting the activation and deactivation of norms are
needed [26, 59]. These rules are the codification in Jess of the operational semantics of
norms provided in Section 4.3.1.
4 http://herzberg.ca.sandia.gov/
21
3. Norm Enforcement (Figure 5 Item 3). This norm management process is informed by
the THOMAS services of both the organizational changes and the occurrence of events
related to the usage of THOMAS functionalities through the update service. Therefore,
it is able to monitor the way in which agents interact with the THOMAS infrastructure.
Consequently, the THOMAS platform acts as a norm promoter and defender by carrying
out sanctions and rewards related to controllable obligation norms.
4. Norm Regimentation (Figure 5 Item 4). When a new request for a THOMAS service s is
sent to the OMS or the SF, they register this fact in the organizational rule-based system
using the update service. Then, using the query service, the normative context is analysed
in order to determine whether the client agent is allowed to request this service s according
to the organizational state. If so, then the requested service s is provided. The determination of the allowed actions to a client agent that requests a certain THOMAS service
s offered by the OMS or the SF is made through the query functionality provided by the
rule system. This function follows a criterion for norm precedence known as lex specialis
[60], which states that the most specific norm precedes the rest of norms. Therefore, the
query service begins with checking permissive norms addressed to the agent. If there is
not any norm, prohibition norms are taken into consideration, since permissive norms are
defined as exceptions to a more general prohibition norm. In the last case, permissive and
prohibition norms addressed to the roles played by the client agent are checked. If no norm
is found, the service is considered as permitted by default.
Along this section, details concerning the implementation of our normative model for VO
(proposed in Section 3.2) have been described. This implementation of norms covers: i) the definition of a normative language for allowing an explicit representation of norms; ii) the software
implementation of the normative control in the THOMAS platform.
5. Conclusions
VOs have been employed as a support in the design of open multi-agent systems. These complex scenarios require an extended concept of norm in order to face with the heterogeneity and
dynamic features of both the participants and the environment. Therefore, current agent architectures and platforms must integrate these concepts to allow designers to employ higher abstractions when modelling and implementing these complex systems. With this aim, the THOMAS
platform has been implemented as a support platform suitable for the generation of VOs.
Contributions of this paper can be summarised as follows:
• The definition of a model of norms for controlling VOs (Section 3.2). The main advantages of our normative model for VOs are:(i) it covers the different norm levels which have
a social meaning, i.e. interaction and institutional levels; (ii) the different types of norms
are considered, i.e. constitutive, regulative and procedural norms; (iii) it is a general normative model, since it does not define the logical constitution of norms; (iv) it allows a
structured definition of the normative system; and (v) it offers mechanisms for the creation
and derogation of norms, by means of constitutive norms which define the dynamics of the
legal system.
• In addition, this work describes how norms have been given a computational interpretation in the THOMAS platform (Section 4). In order to allow both agents and the system
22
designers to represent each type of norms a formal deontic language has been described
in Section 4.2. However, norms defined through this language are too abstract to be computationally implemented. In this sense, the THOMAS platform has been extended with a
normative management process (Section 4.3) which consists of a rule-base system for implementing norms. This rule-based implementation allows norms which regulate an agent
organization to be modified at run-time, allowing the VO performance to be adapted in
response to the environmental changes.
As future work, we plain to extend this proposal by providing a BDI agent architecture [18] in
which the different types of norms defined by our normative model are represented. Therefore,
normative agents will be able to consider their adopted norms in their decision making processes.
Preliminary results of this ongoing work can be found in [61, 62]. The possibility of developing
agents which are able to reason about norms will allow some legal responsibilities of the VO to
be delegated into certain agents which will act as legislators or judges in the agent platform.
References
[1] E. L. Rissland, K. D. Ashley, R. P. Loui, AI and law: A fruitful synergy, Artificial Intelligence 150 (1-2) (2003)
1–15.
[2] R. Rubino, G. Sartor, Preface, Journal of Artificial Intelligence and Law 16 (1) (2008) 1–5.
[3] R. Conte, R. Falcone, G. Sartor, Introduction: Agents and norms: How to fill the gap?, Artificial Intelligence and
Law 7 (1) (1999) 1–15.
[4] G. Boella, G. Pigozzi, L. van der Torre, Normative systems in computer science - ten guidelines for normative
multiagent systems, in: G. Boella, P. Noriega, G. Pigozzi, H. Verhagen (Eds.), Normative Multi-Agent Systems,
no. 09121 in Dagstuhl Seminar Proceedings, Dagstuhl, Germany, 2009.
[5] C. E. Alchourrón, E. Bulygin, Normative Systems, Springer, 1971.
[6] J.-J. C. Meyer, R. J. Wieringa (Eds.), Deontic Logic in Computer Science. Normative System Specification. 1st Int.
Workshop on Deontic Logic in Computer Science (DEON ’91), Dec. 11-13, 1991, Amsterdam, Chichester, 1993.
[7] G. Boella, L. van der Torre, H. Verhagen, Introduction to the special issue on normative multiagent systems,
Autonomous Agents and Multi-Agent Systems 17 (2008) 1–10.
[8] G. Boella, L. van der Torre, H. Verhagen, Introduction to normative multiagent systems, in: Normative Multi-agent
Systems, no. 07122 in Dagstuhl Seminar Proceedings, Internationales Begegnungs- und Forschungszentrum für
Informatik (IBFI), Schloss Dagstuhl, Germany, Dagstuhl, Germany, 2007.
[9] M. Luck, P. McBurney, O. Shehory, S. Willmott, Agent technology: Computing as interaction: A roadmap for
agent-based computing, Tech. rep., Agentlink (2005).
[10] V. Dignum (Ed.), Handbook of Research on Multi-Agent Systems: Semantics and Dynamics of Organizational
Models, IGI Global, 2009.
[11] M. T. Martinez, P. Fouletier, K. H. Park, J. Favrel, Virtual enterprise - organisation, evolution and control, International Journal of Production Economics 74 (1-3) (2001) 225–238.
[12] O. Boissier, J. A. Padget, V. Dignum, G. Lindemann, E. T. Matson, S. Ossowski, J. S. Sichman, J. Vázquez-Salceda
(Eds.), Coordination, Organizations, Institutions, and Norms in Multi-Agent Systems, AAMAS 2005 International
Workshops on Agents, Norms and Institutions for Regulated Multi-Agent Systems, ANIREM 2005, and Organizations in Multi-Agent Systems, OOOP 2005, Utrecht, The Netherlands, July 25-26, 2005, Revised Selected Papers,
Vol. 3913 of Lecture Notes in Computer Science, Springer, 2006.
[13] J. Ferber, F. Michel, J.-A. Báez-Barranco, AGRE: Integrating environments with organizations, in: E4MAS, Vol.
3374 of Lecture Notes in Computer Science, Springer, 2004, pp. 48–56.
[14] C. Carrascosa, A. Giret, V. Julian, M. Rebollo, E. Argente, V. Botti, Service oriented multi-agent systems: An open
architecture, in: 8th International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS 09),
ACM, 2009, pp. 1–2.
[15] F. Dignum, Autonomous agents with norms., Artificial Intelligence and Law 7 (1) (1999) 69–79.
[16] Y. Moses, M. Tennenholtz, Artificial social systems, Computers and Artificial Intelligence 14 (6) (1995) 533–562.
[17] M. P. Singh, An ontology for commitments in multiagent systems, Artificial Intelligence and Law 7 (1) (1999)
97–113.
[18] A. S. Rao, M. P. Georgeff, Modeling rational agents within a BDI-architecture, Tech. Rep. 14, Australian AI
Institute, Carlton, Australia (1991).
23
[19] F. Dignum, D. Morley, L. Sonenberg, L. Cavedon, Towards socially sophisticated BDI agents, in: 4th International
Conference on Multi-Agent Systems (ICMAS’00), IEEE Computer Society, Boston, USA, 2000, pp. 111–118.
[20] G. Boella, L. van der Torre, Regulative and constitutive norms in normative multiagent systems, in: KR2004:
Principles of Knowledge Representation and Reasoning, AAAI Press, Menlo Park, California, 2004, pp. 255–265.
[21] G. Boella, L. van der Torre, Substantive and procedural norms in normative multiagent systems, Journal of Applied
Logic 6 (2) (2008) 152–171.
[22] J. R. Searle, What is an institution?, Journal of Institutional Economics 1 (01) (2005) 1–22.
[23] G. Boella, J. Hulstijn, L. W. N. van der Torre, Virtual organizations as normative multiagent systems, in: Hawaii
Int. Conf. on System Sciences (HICSS’05), IEEE Computer Society, 2005, pp. 192c–192c.
[24] F. López y López, M. Luck, Modelling norms for autonomous agents, in: ENC, IEEE Computer Society, 2003, pp.
238–245.
[25] J. Vázquez-Salceda, H. Aldewereld, F. Dignum, Implementing norms in multiagent systems, in: Multiagent System
Technologies, Second German Conference, MATES 2004, Erfurt, Germany, September 29-30, 2004, Proceedings,
Vol. 3187 of Lecture Notes in Computer Science, Springer, 2004, pp. 313–327.
[26] A. Garcı́a-Camino, P. Noriega, J. A. Rodrı́guez-Aguilar, Implementing norms in electronic institutions, in: 4th
International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS’2005) , 2005, pp. 667–
673.
[27] D. Grossi, H. Aldewered, F. Dignum, Ubi lex, ibi poena: Designing norm enforcement in e-institutions, in: Coordination, organizations, institutions, and norms in agent systems II. Revised Selected Papers, Vol. LNAI: 4386,
Springer, 2007, pp. 101–114.
[28] N. Fornara, M. Colombetti, Specifying and enforcing norms in artificial institutions, in: Proceedings of the 7th
international joint conference on Autonomous agents and multiagent systems (AAMAS08), Vol. 3, ACM, 2008,
pp. 1481–1484.
[29] T. Balke, A taxonomy for ensuring institutional compliance in utility computing, in: G. Boella, P. Noriega,
G. Pigozzi, H. Verhagen (Eds.), Normative Multi-Agent Systems, no. 09121 in Dagstuhl Seminar Proceedings,
Schloss Dagstuhl - Leibniz-Zentrum fuer Informatik, Germany, Dagstuhl, Germany, 2009.
[30] M. Esteva, J. A. Rodrı́guez-Aguilar, C. Sierra, P. Garcia, J. L. Arcos, On the formal specifications of electronic
institutions, in: Agent Mediated Electronic Commerce, The European AgentLink Perspective, Vol. 1991 of Lecture
Notes in Computer Science, Springer, 2001, pp. 126–147.
[31] J. Bradshaw, S. Dutfield, B. Carpenter, R. Jeffers, T. Robinson, KAoS: A generic agent architecture for aerospace
applications, in: Proceedings of the CIKM’95 Workshop on Intelligent Information Agents, Baltimore, Maryland,
1995.
[32] T. Balke, T. Eymann, Using institutions to bridge the trust-gap in utility computing markets-an extended “trust
game”, in: Proceedings of the 9. Internationale Tagung Wirtschaftsinformatik, Vol. 2, Vienna, 2009, pp. 213–222.
[33] S. Sen, S. Airiau, Emergence of norms through social learning, in: Proceedings of the Twentieth International Joint
Conference on Artificial Intelligence, 2007, pp. 1507–1512.
[34] A. Artikis, M. Sergot, Executable specification of open multi-agent systems, Logic Journal of IGPL 18 (1) (2010)
31.
[35] A. Garcı́a-Camino, J. A. Rodrı́guez-Aguilar, C. Sierra, W. W. Vasconcelos, Norm-oriented programming of electronic institutions, in: 5th International Joint Conference on Autonomous Agents and Multiagent Systems (AAMAS’06), ACM, 2006, pp. 670–672.
[36] M. T. R. I. Brafman, On partially controlled multi-agent systems, Journal of Artificial Intelligence Research 4
(1996) 477–507.
[37] V. Dignum, F. Dignum., A landscape of agent systems for the real world, Tech. rep., Inst. Information and Computing Sciences, Utrecht University (2006).
[38] R. Daft, Organization Theory and Design, South-Western College, 2003.
[39] N. Criado, E. Argente, V. Julian, V. Botti, Designing virtual organizations, in: 8th International Conference on
Practical Applications of Agents and Multi-Agent Systems (PAAMS 09), Vol. 55 of Advances in Soft Computing,
2009, pp. 440–449.
[40] E. Argente, V. Julian, V. Botti, Mas modelling based on organizations, in: 9th Int. Workshop on Agent Oriented
Software Engineering (AOSE08), 2008, pp. 1–12.
[41] E. Argente, J. Palanca, G. Aranda, V. Julian, V. Botti, A. Garcı́a-Fornes, A. Espinosa, Supporting agent organizations, in: 5th International Central and Eastern European Conference on Multi-Agent Systems (CEEMAS’07), Vol.
4696 of LNAI, Springer, 2007, pp. 236–245.
[42] S. Profile, OWL-S applications and issues (Mar. 08 2004).
[43] N. Criado, E. Argente, V. Botti, A normative model for open agent organizations, in: International Conference on
Artificial Intelligence (ICAI), Vol. 1, CSREA Press, 2009, pp. 101–107.
[44] M. Mittag, A legal theoretical approach to criminal procedure law: The structure of rules in the german code of
criminal procedure, German Law Journal 7 (8) (2006) 637–646.
24
[45] C. Alchourrón, On law and logic, Ratio Juris 9 (4) (1996) 331–348.
[46] N. Oren, S. Panagiotidi, J. Vázquez-Salceda, S. Modgil, M. Luck, S. Miles, Towards a formalisation of electronic
contracting environments, Coordination, Organizations, Institutions and Norms in Agent Systems IV (2009) 156–
171.
[47] P. McNamara, Deontic logic, in: E. N. Zalta (Ed.), The Stanford Encyclopedia of Philosophy, summer 2010 Edition,
2010.
[48] R. T. Morris, A typology of norms, American Sociological Review 31 (1956) 610–613.
[49] J. Gibbs, Norms: The problem of definition and classification, The American Journal of Sociology 70 (1965)
586–594.
[50] E. D. Val, N. Criado, M. Rebollo, E. Argente, V. Julian, Service-oriented framework for virtual organizations, in:
International Conference on Artificial Intelligence (ICAI), Vol. 1, CSREA Press, 2009, pp. 108–114.
[51] N. Criado, V. Julian, V. Botti, E. Argente, A norm-based organization management system, in: AAMAS Workshop
on Coordination, Organization, Institutions and Norms in Agent Systems (COIN), 2009, pp. 1–16.
[52] D. Grossi, H. Aldewereld, J. Vázquez-salceda, F. Dignum, Ontological aspects of the implementation of norms
in agent-based electronic institutions, in: Computational and Mathematical Organization Theory, AISB, 2005, pp.
104–116.
[53] J. R. Searle, The Construction of Social Reality, Free Press, 1995.
[54] S. Shapiro, Classical logic, in: E. N. Zalta (Ed.), The Stanford Encyclopedia of Philosophy, winter 2009 Edition,
2009.
[55] E. Argente, N. Criado, V. Botti, V. Julian, Norms for agent service controlling, in: EUMAS, 2008, pp. 1–15.
[56] A. Giret, V. Julian, M. Rebollo, E. Argente, C. Carrascosa, V. Botti, An Open Architecture for Service-Oriented
Virtual Organizations, in: 7th International Workshop on Programming Multi-Agent Systems (PROMAS 2009)
Post-Proceedings, Springer, 2010, pp. 1–15.
[57] K. Dittrich, S. Gatziu, A. Geppert, The active database management system manifesto: A rulebase of ADBMS
features, Rules in Database Systems (1995) 1–17.
[58] N. Criado, V. Julian, E. Argente, Towards the implementation of a normative reasoning process, in: 8th International
Conference on Practical Applications of Agents and Multi-Agent Systems (PAAMS 09), Vol. 55, 2009, pp. 319–
328.
[59] V. T. da Silva, From the specification to the implementation of norms: an automatic approach to generate rules from
norms to govern the behavior of agents, Autonomous Agents and Multi-Agent Systems 17 (1) (2008) 113–155.
[60] G. Boella, L. van der Torre, Permissions and obligations in hierarchical normative systems, in: Proc. of 9th International Conference on Artificial Intelligence and Law (ICAIL 03), Edinburgh, Scotland, 2003, pp. 109–118.
[61] N. Criado, E. Argente, V. Botti, Rational Strategies for Autonomous Norm Adoption, in: 9th International Workshop on Coordination, Organization, Institutions and Norms in Multi-Agent Systems (COIN@AAMAS2010),
2010, pp. 9–16.
[62] N. Criado, E. Argente, V. Botti, A BDI Architecture for Normative Decision Making (Extended Abstract), in: 9th
Int. Conf. on Autonomous Agents and Multiagent Systems (AAMAS 2010), 2010, pp. 1383–1384.
25