<?xml version="1.0" encoding="UTF-8"?>
<TEI xml:space="preserve" xmlns="http://www.tei-c.org/ns/1.0" 
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
xsi:schemaLocation="http://www.tei-c.org/ns/1.0 https://raw.githubusercontent.com/kermitt2/grobid/master/grobid-home/schemas/xsd/Grobid.xsd"
 xmlns:xlink="http://www.w3.org/1999/xlink">
	<teiHeader xml:lang="en">
		<fileDesc>
			<titleStmt>
				<title level="a" type="main">Programming Electronic Institutions with Utopia</title>
			</titleStmt>
			<publicationStmt>
				<publisher/>
				<availability status="unknown"><licence/></availability>
			</publicationStmt>
			<sourceDesc>
				<biblStruct>
					<analytic>
						<author>
							<persName><forename type="first">Pierre</forename><surname>Schmitt</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Centre de Recherche Public Henri</orgName>
								<orgName type="institution">Tudor Service Science and Innovation Dpt. Luxembourg</orgName>
								<address>
									<region>G.D</region>
									<country>of LUXEMBOURG</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Cédric</forename><surname>Bonhomme</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Centre de Recherche Public Henri</orgName>
								<orgName type="institution">Tudor Service Science and Innovation Dpt. Luxembourg</orgName>
								<address>
									<region>G.D</region>
									<country>of LUXEMBOURG</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Jocelyn</forename><surname>Aubert</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Centre de Recherche Public Henri</orgName>
								<orgName type="institution">Tudor Service Science and Innovation Dpt. Luxembourg</orgName>
								<address>
									<region>G.D</region>
									<country>of LUXEMBOURG</country>
								</address>
							</affiliation>
						</author>
						<author>
							<persName><forename type="first">Benjamin</forename><surname>Gâteau</surname></persName>
							<affiliation key="aff0">
								<orgName type="department">Centre de Recherche Public Henri</orgName>
								<orgName type="institution">Tudor Service Science and Innovation Dpt. Luxembourg</orgName>
								<address>
									<region>G.D</region>
									<country>of LUXEMBOURG</country>
								</address>
							</affiliation>
						</author>
						<title level="a" type="main">Programming Electronic Institutions with Utopia</title>
					</analytic>
					<monogr>
						<imprint>
							<date/>
						</imprint>
					</monogr>
					<idno type="MD5">6F4D01E3B8825BC7041D4A34079130DF</idno>
				</biblStruct>
			</sourceDesc>
		</fileDesc>
		<encodingDesc>
			<appInfo>
				<application version="0.7.2" ident="GROBID" when="2023-03-24T21:53+0000">
					<desc>GROBID - A machine learning software for extracting information from scholarly documents</desc>
					<ref target="https://github.com/kermitt2/grobid"/>
				</application>
			</appInfo>
		</encodingDesc>
		<profileDesc>
			<abstract>
<div xmlns="http://www.tei-c.org/ns/1.0"><p>In Multi-Agent Systems, Organizations are means to structure cooperation and collaboration between agents. MoiseInst is a normative Organization model giving the possibility to constraint agents behaviour according to four dimensions (structural, functional, contextual and normative). Mabeli as Electronic Institution model allows the supervision of MoiseInst Organizations compliance through an arbitration system. The difficulty is to easily instantiate such Organizations to obtain a dynamic entity in which agents can evolve. In this paper we introduce Utopia, our Institution-oriented and Institution-based programming framework. Utopia permits to easily and automatically set up a MAS thanks to a XML MoiseInst Specification file. The framework convert this file into an innovative mathematical structure namely a recursive graph, and solve several optimization problems in order to compute the most efficient role distribution. We show a concrete application of the prototype through RED, an EUREKA/CELTIC European project use-case.</p></div>
			</abstract>
		</profileDesc>
	</teiHeader>
	<text xml:lang="en">
		<body>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="1">Introduction</head><p>In human societies, Institutions define rules <ref type="bibr" target="#b0">[1]</ref> that enclose all kinds of formal or informal constraints used by human beings to interact. In Multi-Agent System domain, Electronic Institutions have been introduced to model rules with normative systems <ref type="bibr" target="#b1">[2]</ref>. That is why we define Electronic Institutions as a set of agents which behave according to Norms and by taking into account their possible violation (and sanction).</p><p>These last years Electronic Institution platforms have been improved thanks to new services making them able to express cooperation schemes defined by the user with an Organization Modelling Language such as for instance Moise + <ref type="bibr" target="#b2">[3]</ref>, Islander <ref type="bibr" target="#b3">[4]</ref>, OMNI <ref type="bibr" target="#b4">[5]</ref>. The aim of these services is to constraint and supervise agent's actions and interactions in order for them to achieve some global Goals. We call those explicit cooperation schemes Orgazination Specification (OS).</p><p>The model used to specify the organization of an Electronic Institution is Moise Inst <ref type="bibr" target="#b5">[6]</ref>. In this context, the functioning of the agents is supervised and controled with a set of Institution services regrouped in a specific "normative middleware" called Synai on which the agents execute themselves.</p><p>This paper aims at presenting how it is possible to easily implement an Electronic Institution specified with Moise Inst , supervised with Synai and in which standard agents provided with the platform evolve and achieve their Goals. For that, three steps have been needed:</p><p>1. Define the structure of data in which the OS will be stored. 2. Develop a set of agents working in and able to supervise an Organisation Entity (OE) instantiating the OS defined by an user. 3. Develop a template of JADE based agents able to evolve in the OE (i.e. able to play Roles and achieve Goals) by loading specific behaviours provided by the user in order to execute actions achieving the Goals defined in the OS.</p><p>The paper is built as follows: in Section 2 we present rapidly Moise Inst and Synai composing the foundations of our work. Section 3 deals with the implementation of the framework (named Utopia) allowing the implementation of such Electronic Institution. At last, before conclude, the Section 4 illustrates the use of Utopia through an application of security policies deployment developped in the context of European RED project.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="2">Normative Organization Modelling</head><p>Moise Inst <ref type="bibr" target="#b5">[6]</ref> is founded on the Moise + organizational model <ref type="bibr" target="#b2">[3]</ref>. It is composed of the following components that are used to specify an Organisation of agents in terms of structure, functioning, evolution and Norms (see Figure <ref type="figure" target="#fig_0">1</ref>): -A Structural Specification (SS) defines: (i) the Roles that agents will play in the Organization, (ii) the relations between these Roles in terms of authority, communication or accointance, (iii) the Groups, additional structural primitives used to define and organize sets of Roles; -A Functional Specification (FS) defines global business processes that can be executed by the different agents participating to the Organization according to their Roles and Groups;</p><p>-A Contextual Specification (CS) specifies, a priori, the possible evolution of the Organization in terms of a state/transition graph; -A Normative Specification (NS) defines the deontic relations gluing the three independant Specification (SS, FS, CS). This NS clearly states rights and duties of each Roles/Groups of SS on sets of Goals (Missions) of FS, within specific states of CS.</p><p>These four Specifications form the Organizational Specification (OS). The Organizational Entity (OE) is then built by instantiating the OS through the Agent playing roles, achieving goals and respecting active norms in valid contexts. The Synai <ref type="bibr" target="#b6">[7]</ref> middleware manages and controls the functioning of this OE . As depicted on Figure <ref type="figure">2</ref>, Synai is composed by a set of manager agents supervising the actions of agents "Agt" on the OE.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>Fig. 2. Supervision by Synai of an OE</head><p>This layer is in charge of: (i) managing the life cycle of SS as entering/exiting of agents within the Organization, or requesting/leaving of Roles or Groups by the agents, (ii) coordination of the concurrent execution of FS as commitment to Missions or achievement of Goals, etc, (iii) dynamic and evolution of the Organization state through the CS, (iv) the monitoring and supervision of Norms of NS activated/deactivated by the evolution of the Organization.</p><p>While agents evolve inside the organization, agents of Synai have to interpret and "understand" the OS (in order to respect it or to control it). For that, we need to structure the data of the organization and to this end, we chose recursive graph.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="3">Implementation of Utopia</head><p>Recursive graphs are innovative mathematical structures <ref type="bibr" target="#b7">[8]</ref> widely used to have a very generic representation of data. In our case, a recursive graph particularly meets the underlying needs of Moise Inst which is mostly recursive : Groups can include others Groups, Missions can include others Missions, etc... Moreover, the sub recursive graph extraction makes the data sharing more easier.</p><p>Utopia and its architecture using an Electronic Institution paradigm make the essential problematics of setting up a Multi-Agent System easier. Indeed two steps are needed:</p><p>1. Define the OS in a XML file (an authoring tool to specify the OS will be developped later). 2. Develop specific behaviours (in java classes) that the generic agents will load in order to execute actions achieving the goals defined in the OS.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4">Demonstration scenario</head><p>Our use-case is part of a demonstrator set up in the context of the RED project <ref type="bibr" target="#b8">[9]</ref> which defines and designs solutions to enhance the detection/reaction process, improves the overall resilience of IP networks to attacks by embedding means to enrich the alert with better characterized information, and additional information about the origin and the impact of the security incident.</p><p>To provide the detection and reaction functionalities, RED proposes an architecture containing a set of elements, depicted in Figure <ref type="figure" target="#fig_1">3</ref>: </p><formula xml:id="formula_0">-ACE (Alert</formula></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head>RED proposes three different types of reaction based on level of diagnosis required to apply them:</head><p>-Immediate reaction, which is an automatic response with a diagnosis based on the capabilities embedded in the device and decided by the PEP/REP, -Short term reaction, where the diagnosis is done with a limited and local vision of the monitored information system, decided by the RDP based on the information provided by the ACE and which does not instantiate new security policies, A multi-agent system is used to represent RED nodes. Each component is represented by an agent playing a Role (ACE, RDP, PIE, PDP, REP, PEP) of the node which is represented as a Moise Inst Organization. In the following, we will describe the Goals that agents have to achieve in a context of a black-hole attack.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.1">Black-hole attack and countermeasures</head><p>In our scenario Alice and Bob are communicating with help of a VoIP service provided by a SIP server. A Malicious node executes an attack structured in two successive steps. First, the Malicious node changes the ARP tables of Alice, Bob and the SIP Server (ARP poisoning) in order to have all the trafic routed by itself. Then, it carries out a black-hole attack by dropping (not retransmitting) the packets. As a result, the conversation between Alice and Bob cannot progress.</p><p>Once the attack succeeded, an intrusions detection tool detects the attack and sends alerts to the PIE and the RDP through the ACE. The agent playing the Role of RDP have to apply a short term reaction by asking PEP to delete their ARP entries corresponding to the MAC address of the malicious node. The agent playing the Role of PIE aims at implementing new policies forbidding the input and the forward of trafic coming from the malicious node (via its MAC address) and adding static ARP entries binding the real IP addresses and MAC addresses. Then the PIE agent sends these new policies to PDP which transform them into script and/or executable command regarding to PEP's specifications (type, host, OS, etc.). At last, agents playing PEP Role have to execute command and/or scripts on the device they interface. We will see more precisely in the next section how an Organization is implemented with Utopia in order to represent a RED node as an Electronic Institution.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="4.2">Implementation with Utopia</head><p>Utopia make possible to easily deploy a MAS where agents play the appropriate Roles, namely ACE, PIE, PDP and PEP from a simple Structural Specification. Thanks to cardinalities, the MAS composition can respect the RED architecture : ACE, PIE and PDP are played by only one agent and PEP are distributed over the network devices.</p><p>We can handle the agent behaviour after an attack with a simple Functional Specification : four Missions (one for each agent) composed by two Goals run in parallel, one dedicated to messages reception, the other to message sending.</p><p>The following shows Domain Knowledge Specification of the goals binding them to their corresponding java classes that the user have to provide, and the FS coming from the OS XML file. There is no grouping of goals in missions, that's why the FS is so simple.</p><p>&lt;?xml version="1.0" encoding="UTF-8"?&gt; &lt;?xml-stylesheet href="xml/os.xsl" type="text/xsl" ?&gt; &lt;!DOCTYPE OrganizationalSpecification SYSTEM "../xml/os.dtd"&gt; &lt;OrganizationalSpecification id="Red"&gt; &lt;DomainKnowledgeSpecification&gt; &lt;Goal id="gPIESend" class="red.pie.GPIESend"&gt;&lt;/Goal&gt; &lt;Goal id="gACESend" class="red.ace.GACESend"&gt;&lt;/Goal&gt; &lt;Goal id="gPDPListen" class="red.pdp.GPDPListen"&gt;&lt;/Goal&gt; &lt;Goal id="gPEPListen" class="red.pep.GPEPListen"&gt;&lt;/Goal&gt; &lt;Goal id="gPEPIPListen" class="red.pep. The Normative Specification only force the four agents playing the Roles of ACE, PIE, PDP and PEP to do their associated Missions, that is to say, to run two Java Goal implementations. Obviously, each Goal implementation allow the specialization of the agents, and thanks to Utopia's primitive functions, it is very easy to send or receive messages and XML alerts.</p></div>
<div xmlns="http://www.tei-c.org/ns/1.0"><head n="5">Conclusion</head><p>In this paper we described an Electronic Institution programming framework named Utopia based on Moise Inst for the Organization Specification and on recursive graph for the Organization representation. Thanks to a recursive graph, all the homogeneous data are stored in an unique recursive structure, allowing us to easily distribute the shared information between agents of Utopia using concepts such as sub-recursive graphs.</p><p>With the RED use-case we showed how easily the essential problematics of setting up a Multi-Agent System could be solved with Utopia and its powerful architecture using an Electronic Institution paradigm. Actually Utopia allows to simply deploy a MAS without any need of network programming (as Socket coding or thread management). Furthermore, with this kind of network abstraction, the implementation of RED is completely reusable: we can run the system on many different networks. Moreover, it is far easier to brings into the MAS development many security specialists, as Electronic Institution permits to clearly separate the different system Goals and thus, the different security problematics.</p><p>Despite the easiness of implementing a working Electronic Institution that Utopia brings, as demonstrated in a real use-case, some improvements can be considered. Actually, the way of managers and supervisor to control the functionning of the organization is basically a centralized arbitration system. However the multi-agent system principles advocate decentralization. As a consequence, a first evolution could be done in order to obtain an Electronic Institution allowing the distribution of the OE and Synai without putting the optimization of the role distribution aside. Moreover, the agents' decision taking mechanisms could be improved to exhibit a smarter behaviour in order to choose the right Goals to achieve at the right time more efficiently.</p></div><figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_0"><head>Fig. 1 .</head><label>1</label><figDesc>Fig. 1. Moise Inst , a normative Organization Specification model</figDesc></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" xml:id="fig_1"><head>Fig. 3 .</head><label>3</label><figDesc>Fig. 3. RED architecture</figDesc><graphic coords="5,177.96,66.89,259.25,155.03" type="bitmap" /></figure>
<figure xmlns="http://www.tei-c.org/ns/1.0" type="table" xml:id="tab_0"><head></head><label></label><figDesc>Correlation Engine): this element is in charge to receive alerts from network nodes, and enhances the detection of attacks by combining several diagnosis combinations. -PIE (Policy Instantiation Engine): this element receives the information about attacks from the ACE and instantiates new security policies to react to the attack in a high level reaction loop. This paper is focused on this element. -PDP (Policy Decision Point): this element receives the new security policies defined by the PIE and deploies them in the enforcement points. -RDP (Reaction Decision Point): this element receives the information about attacks from the ACE and decides of how to act in a mid level reaction loop.</figDesc><table /><note>-PEP/REP (Policy Enforcement Point/Reaction Enforcement Point): This component, outside the RED node, enforces the security policies provided by the PDP and the reaction provided by the RDP. It also performs an immediate low level reaction.</note></figure>
		</body>
		<back>

			<div type="acknowledgement">
<div xmlns="http://www.tei-c.org/ns/1.0"><p>Acknowledgment This work has been funded by Luxembourger FNR-CORE project TITAN (C08/IS/21).</p></div>
			</div>

			<div type="references">

				<listBibl>

<biblStruct xml:id="b0">
	<monogr>
		<author>
			<persName><forename type="first">D</forename><forename type="middle">C</forename><surname>North</surname></persName>
		</author>
		<title level="m">Institutions, Institutional Change and Economic Performance</title>
				<imprint>
			<publisher>Cambridge University Press</publisher>
			<date type="published" when="1990-10-26">October 26 1990</date>
		</imprint>
	</monogr>
	<note>Political Economy of Institutions and Decisions</note>
</biblStruct>

<biblStruct xml:id="b1">
	<analytic>
		<title level="a" type="main">Deontic logic and contrary-to-duties</title>
		<author>
			<persName><forename type="first">A</forename><surname>Jones</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Carmo</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Handbook of Philosophical Logic</title>
				<imprint>
			<publisher>Kluwer</publisher>
			<date type="published" when="2001">2001</date>
			<biblScope unit="page" from="203" to="279" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b2">
	<analytic>
		<title level="a" type="main">A model for the structural, functional, and deontic specification of organizations in multiagent systems</title>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">F</forename><surname>Hübner</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">S</forename><surname>Sichman</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><surname>Boissier</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">SBIA&apos;02. Number 2507 in LNAI</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2002">2002</date>
			<biblScope unit="page" from="118" to="128" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b3">
	<analytic>
		<title level="a" type="main">Ameli: An agent-based middleware for electronic institutions</title>
		<author>
			<persName><forename type="first">M</forename><surname>Esteva</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>Rosell</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">A</forename><surname>Rodriguez-Aguilar</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><forename type="middle">L</forename><surname>Arcos</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">AAMAS&apos;2004</title>
				<meeting><address><addrLine>New York City, USA</addrLine></address></meeting>
		<imprint>
			<publisher>ACM Press</publisher>
			<date type="published" when="2004-07-23">19-23 July 2004</date>
			<biblScope unit="page" from="236" to="243" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b4">
	<analytic>
		<title level="a" type="main">Omni: Introducing social structure, norms and ontologies into agent organizations</title>
		<author>
			<persName><forename type="first">V</forename><surname>Dignum</surname></persName>
		</author>
		<author>
			<persName><forename type="first">J</forename><surname>Vazquez-Salceda</surname></persName>
		</author>
		<author>
			<persName><forename type="first">F</forename><surname>Dignum</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">ProMAS International Workshop 2004</title>
				<meeting><address><addrLine>New York, USA</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2004">2004</date>
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b5">
	<analytic>
		<title level="a" type="main">Controlling an interactive game with a multi-agent based normative organizational model</title>
		<author>
			<persName><forename type="first">B</forename><surname>Gâteau</surname></persName>
		</author>
		<author>
			<persName><forename type="first">O</forename><surname>Boissier</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Khadraoui</surname></persName>
		</author>
		<author>
			<persName><forename type="first">E</forename><surname>Dubois</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">COIN II</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="2007">2007. 2007</date>
			<biblScope unit="volume">4386</biblScope>
			<biblScope unit="page" from="86" to="100" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b6">
	<monogr>
		<author>
			<persName><forename type="first">B</forename><surname>Gâteau</surname></persName>
		</author>
		<title level="m">Modélisation et supervision d&apos;institution multi-agent</title>
				<imprint>
			<date type="published" when="2007">2007</date>
		</imprint>
		<respStmt>
			<orgName>ENS Mines Saint-Etienne</orgName>
		</respStmt>
	</monogr>
	<note type="report_type">PhD thesis</note>
</biblStruct>

<biblStruct xml:id="b7">
	<analytic>
		<title level="a" type="main">Towards a theory of recursive structures</title>
		<author>
			<persName><forename type="first">D</forename><surname>Harel</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">International Symposium on Mathematical Foundations of Computer Science</title>
				<imprint>
			<publisher>Springer</publisher>
			<date type="published" when="1998">1998</date>
			<biblScope unit="volume">1450</biblScope>
			<biblScope unit="page" from="36" to="53" />
		</imprint>
	</monogr>
</biblStruct>

<biblStruct xml:id="b8">
	<analytic>
		<title level="a" type="main">Business governance based policy regulation for security incident response</title>
		<author>
			<persName><forename type="first">C</forename><surname>Feltus</surname></persName>
		</author>
		<author>
			<persName><forename type="first">D</forename><surname>Khadraoui</surname></persName>
		</author>
		<author>
			<persName><forename type="first">B</forename><surname>De Remont</surname></persName>
		</author>
		<author>
			<persName><forename type="first">A</forename><surname>Rifaut</surname></persName>
		</author>
	</analytic>
	<monogr>
		<title level="m">Crisis&apos;07</title>
				<meeting><address><addrLine>Marrakech, Morocco</addrLine></address></meeting>
		<imprint>
			<date type="published" when="2007-07-05">2-5 July 2007</date>
		</imprint>
	</monogr>
</biblStruct>

				</listBibl>
			</div>
		</back>
	</text>
</TEI>
