1. Solved Problem
OMNI specifies global goals of the system independently from those of the specific agents that populate the system. Both the norms that regulate interaction between agents, as well as the contextual meaning of those interactions are important aspects when specifying the organizational structure. Omni integrates all this aspects in one framework.
OMNI is an integrated framework for modelling a whole range of MAS, from closed systems with fixed participants and interaction protocols, to open, flexible systems that allow and adapt to the participation of heterogeneous agents with different agendas.
2. How to solve
The OMNI Framework
Figure1 The OMNI framework
Abstract Level: where the statutes of the organization to be modeled are defined in a high level of abstraction. This step is similar to a first step in the requirement analysis. It also contains the definition of terms that are generic for any organization (that is, that are incontextual) and the ontology of the model itself.
Concrete Level: where all the analysis and design process is carried on, starting from the abstract values defined in the previous level, refining their meaning in terms of norms and rules, roles, landmarks and concrete ontological concepts.
Implementation Level: where the design in the Normative and Organizational dimensions is implemented in a given multi-agent architecture, including the mechanisms for role enactment and for norm enforcement.
The Abstract Level
Statutes indicate, at the most abstract level, the main objective of the organization, the values that direct the fulfilling of this objective and they also point to the context where the organization will have to perform its activities.
In the conference scenario, we can take as example a research consortium such as the IFMAS (International Foundation for Multi-Agent Systems). The statutes state: “IFMAS is a non-profit corporation whose purpose is to promote science and technology. In pursuit of its purposes, IFMAS will engage in activities including, but not limited to: (1) Coordinating and arranging seminars on artificial intelligence and multi-agent systems; (2)...”. In this statement we can find:
1. the objectives: the main objective of this organization is to promote science and technology. Another objective is the organization of seminars.
2. the context : IFMAS states that it operates in the area of artificial intelligence and multi-agent systems.
3. the values: The IFMAS is a non-profit organization. Implicit in the latter part, it also says that sharing is also a value of the organization.
The Organizational Dimension
The Organizational Abstract Level
The abstract level of the Organizational Dimension describes which are the aims and concerns of the organization with respect to the social system.
A common way to express the objectives of an organization is in terms of its expected functionality. The determination of the overall objectives of the society follows a process of elicitation of functional (what) and interaction (how) requirements. For example, how should a conference be organized, in terms of program, location, co-located workshops, etc. To identify the objectives of an organization, it is important to characterize the different stakeholders (who) of the organization, their requirements, expectations, constraints and relationships to each other. Stakeholders in the conference scenario are researchers, organizers, etc. Stake holders are the basis for the identification of roles in the concrete level of specification of an organization
The Organizational Concrete Level
The Concrete Level of the organizational dimension specifies the means to achieve the objectives identified in the the abstract level as an Organizational Model (OM). Organizational characteristics of an agent society are specified in the OM in terms of its Social and Interaction Structures.
The Social Structure
It consists of a list of role definitions, Roles (including their objectives, rights and requirements), such as PC-member, program chair, author, etc.; a list of role groups’ definitions, Groups; the relations between roles by a Role Hierarchy graph, and a Role Dependencies graph.
Roles are the main element of the Social Structure. The definition of a role consists of an identifier, a set of role objectives, possibly sets of sub-objectives per objective, a set of role rights, a set of norms and the type of role.
Table1 PC member role description
Groups provide means to collectively refer to a set of roles. Groups are defined by means of an identifier, a non-empty set of roles, and the group norms. An example of a group in the conference scenario is the organizing team consisting of the roles program chair, local organizer, and general chair.
The distribution of objectives in roles is defined by means of the Role Hierarchy. A role can be refined by decomposing it in sub-roles that, together, fulfill the objectives of the given role. This refinement of roles defines Role Dependencies. Nodes in the graph are roles in the society. Arcs are labelled with the objectives of the parent role for whose realization the parent role depends on the child role.
Figure2 Role dependencies in a conference
For example, the arc between nodes PC-Chair and PC-member represents the dependency . The way the objective g in a dependency relation is actually passed between r1 and r2 depends on the coordination type of the society, defined in the Architectural Templates. In OMNI, we identify three types of role dependencies: bidding, request and delegation.
The Interaction Structure
Interaction is structured in a set of meaningful scenes that follow pre-defined abstract scene scripts.
Table2 Script for the Review Process scene
Figure3 Landmarks pattern for review process
The relation between scenes is represented by the Interaction Structure.
Figure4 Interaction Structure in the Conference scenario
The Organizational Implementation Level
Social Model
Agent populations of the organizational model are described in the social model (SM) in terms of commitments regulating the enactment of roles by individual agents.
When an agent applies, and is accepted, for a role, it will commit itself to the realization of the role goals and to act within the society according to the role constraints. The commitments are specified as social contracts. A social contract describes the conditions and rules applying to an agent enacting role(s) in the agent society.
where a is an agent, r ∈ roles(S) is a role, and CC is a set of contract clauses (including (1) the time period the contract holds -either from date to date, or until certain states hold; (2) specific agreements and conditions governing the role enactment, and (3) the sanctions to take when norms are violated).
Interaction Model
where the set of agents A = {a ∈ Agents : rea(a, r, s)|r ∈ roles(s)} represents the set of all agents enacting reas participating in interaction scene s, CC is a set of contract clauses, that is, possible conditions and deadlines concerning the results and interaction patterns of scene s, and P is the protocol to be followed. Protocols describe the actual interaction between reas. A rea interaction protocol describes a communication pattern for reas that fulfills the scene script landmarks.
The Normative Dimension
The Normative Abstract Level
We define ANorms (the language for abstract norms) to be a deontic logic that is temporal, relativized (in terms of roles and groups) and conditional, i.e., an obligation to perform an action or reach a state can be conditional on some state of affairs to hold, it is also meant for a certain type (or role) of agents and should be fulfilled before a certain point in time. For instance, the following norm might hold: “The authors should submit their contributions before the deadline”,
The Normative Concrete Level
The Norm Level
The norms at this level are described in CNorms (the language for concrete norms), which we assume for the moment to be equal to ANorms, but which might use different predicates. In addition we define a function I: ANorms → CNorms which is a mapping from the abstract norms to the concrete ones. For each abstract norm I indicates how it can be fulfilled by fulfilling concrete norms within the context of this organization.
Abstract actions: Actions that can be implemented in many ways. For example: “submitting a paper”. The translation in this case is a kind of definition of the abstract action in terms of concrete ones:
Temporal abstractness: Often there is an implicit deadline for obligations. E.g., the obligation of reviewing the paper occurs only if the paper is assigned, and if so the review should be done before the deadline:
The Rule Level
The translation from norms to rules in Omni marks a transition from a normative perspective to a more descriptive one. Such translation also implies a change in the language, from deontic logic to a Propositional Dynamic Logic (a language more suitable to express actions and time constraints).
Each norm can be translated into:
b) a precedence expression: ,the first:” once action β is performed, it should always be the case that action α has been done”;the second:” if action α has not been done, once action β is performed it always is the case that violation V occurs”
Table3 Formal specification of PC member role
As an example, let us take one of the rules identified for the PC member role in table 3:
we can create the condition for violation V 4 by stating that the action inside [ ] has been done while the other preconditions are true. Then we should also add the sanction (the actions carried against the violator), the side-effects (the actions to be done to counter-act the violation) and the enforcing roles (the role or roles that have the responsibility to detect this type of violations):
The Normative Implementation Level
There are two main approaches to implement the rules in the rule level: a) creating a rule interpreter that any agent entering the organization will incorporate, and b) translating the rules into protocols to be included in the interaction contracts.
The Ontological Dimension
The main challenge of coordination and collaboration in open environments is that of mutual understanding. Communication mechanisms include both the representation of domain knowledge (what are we talking about) and protocols for communication (how are we talking).
In OMNI, the Ontological Dimension describes both the content and the language for communication, at three different levels of abstraction. At the Abstract Level, the Model Ontology can be seen as a meta-ontology that defines all the concepts of the framework itself, such as norms, rules, roles, groups, violations, sanctions and landmarks.
The content aspects of communication, or domain knowledge, are specified by Domain Ontologies. In Omni abstract concepts can be iteratively defined and refined in terms of more concrete concepts. The Concrete Domain Ontology includes all the predicates and elements that appear during the design of the Organizational and Normative Structure, and the Procedural Domain Ontology, with the terms from the domain that will be finally used in the implemented system.
Communication Acts define the language for communication, including the performatives and the protocols. At the Concrete Level, Generic Communication Acts define the interactions languages used in the Organizational Model, while the Specific Communication Acts covers the communication languages actually used by the agents as they agree in the interaction contracts.
参考文献:
[1] J Hübner, J Sichman, O Boissier. A model for the structural, functional, and deontic specification of organizations in multiagent systems. Advances in Artificial Intelligence, 2002.